Merge branch 'master' into staging-next

Reverted https://github.com/NixOS/nixpkgs/pull/115228 for kodi to avoid conflict.

It does not look like unzip would be used but not investigating now to speed up merge conflict resolution.

+1950 -1053
+49 -1
nixos/doc/manual/release-notes/rl-2105.xml
··· 36 now point to an externally wrapped by default derivations, that allow you to 37 also add `extraPythonPackages` to the Python interpreter used by GNURadio. 38 Missing environmental variables needed for operational GUI were also added 39 - (<link xlink:href="https://github.com/NixOS/nixpkgs/issues/75478">#7547</link>). 40 </para> 41 </listitem> 42 <listitem> ··· 55 <xref linkend="opt-services.privoxy.settings"/> 56 (See <link xlink:href="https://github.com/NixOS/rfcs/blob/master/rfcs/0042-config-option.md">RFC 0042</link> 57 for the motivation). 58 </para> 59 </listitem> 60 </itemizedlist> ··· 575 have been removed. You should set your own according to the 576 <link xlink:href="https://kafka.apache.org/documentation/#java">upstream documentation</link> 577 for your Kafka version. 578 </para> 579 </listitem> 580 </itemizedlist>
··· 36 now point to an externally wrapped by default derivations, that allow you to 37 also add `extraPythonPackages` to the Python interpreter used by GNURadio. 38 Missing environmental variables needed for operational GUI were also added 39 + (<link xlink:href="https://github.com/NixOS/nixpkgs/issues/75478">#75478</link>). 40 + </para> 41 + </listitem> 42 + <listitem> 43 + <para> 44 + <link xlink:href="https://www.gnuradio.org/">GNURadio</link> has a 45 + <code>pkgs</code> attribute set, and there's a <code>gnuradio.callPackage</code> 46 + function that extends <code>pkgs</code> with a <code>mkDerivation</code>, and a 47 + <code>mkDerivationWith</code>, like Qt5. Now all <code>gnuradio.pkgs</code> are 48 + defined with <code>gnuradio.callPackage</code> and some packages that depend 49 + on gnuradio are defined with this as well. 50 </para> 51 </listitem> 52 <listitem> ··· 65 <xref linkend="opt-services.privoxy.settings"/> 66 (See <link xlink:href="https://github.com/NixOS/rfcs/blob/master/rfcs/0042-config-option.md">RFC 0042</link> 67 for the motivation). 68 + </para> 69 + </listitem> 70 + <listitem> 71 + <para> 72 + <link xlink:href="https://kodi.tv/">Kodi</link> has been updated to version 19.0 "Matrix". See 73 + the <link xlink:href="https://kodi.tv/article/kodi-190-matrix-release">announcement</link> for 74 + further details. 75 </para> 76 </listitem> 77 </itemizedlist> ··· 592 have been removed. You should set your own according to the 593 <link xlink:href="https://kafka.apache.org/documentation/#java">upstream documentation</link> 594 for your Kafka version. 595 + </para> 596 + </listitem> 597 + <listitem> 598 + <para> 599 + The <package>kodi</package> package has been modified to allow concise addon management. Consider 600 + the following configuration from previous releases of NixOS to install <package>kodi</package>, 601 + including the <package>kodiPackages.inputstream-adaptive</package> and <package>kodiPackages.vfs-sftp</package> 602 + addons: 603 + 604 + <programlisting> 605 + environment.systemPackages = [ 606 + pkgs.kodi 607 + ]; 608 + 609 + nixpkgs.config.kodi = { 610 + enableInputStreamAdaptive = true; 611 + enableVFSSFTP = true; 612 + }; 613 + </programlisting> 614 + 615 + All Kodi <literal>config</literal> flags have been removed, and as a result the above configuration 616 + should now be written as: 617 + 618 + <programlisting> 619 + environment.systemPackages = [ 620 + (pkgs.kodi.withPackages (p: with p; [ 621 + inputstream-adaptive 622 + vfs-sftp 623 + ])) 624 + ]; 625 + </programlisting> 626 </para> 627 </listitem> 628 </itemizedlist>
+16 -4
nixos/modules/services/misc/mautrix-telegram.nix
··· 6 dataDir = "/var/lib/mautrix-telegram"; 7 registrationFile = "${dataDir}/telegram-registration.yaml"; 8 cfg = config.services.mautrix-telegram; 9 - # TODO: switch to configGen.json once RFC42 is implemented 10 - settingsFile = pkgs.writeText "mautrix-telegram-settings.json" (builtins.toJSON cfg.settings); 11 12 in { 13 options = { ··· 15 enable = mkEnableOption "Mautrix-Telegram, a Matrix-Telegram hybrid puppeting/relaybot bridge"; 16 17 settings = mkOption rec { 18 - # TODO: switch to types.config.json as prescribed by RFC42 once it's implemented 19 - type = types.attrs; 20 apply = recursiveUpdate default; 21 default = { 22 appservice = rec { 23 database = "sqlite:///${dataDir}/mautrix-telegram.db"; ··· 124 after = [ "network-online.target" ] ++ cfg.serviceDependencies; 125 126 preStart = '' 127 # generate the appservice's registration file if absent 128 if [ ! -f '${registrationFile}' ]; then 129 ${pkgs.mautrix-telegram}/bin/mautrix-telegram \ ··· 159 --config='${settingsFile}' 160 ''; 161 }; 162 }; 163 }; 164
··· 6 dataDir = "/var/lib/mautrix-telegram"; 7 registrationFile = "${dataDir}/telegram-registration.yaml"; 8 cfg = config.services.mautrix-telegram; 9 + settingsFormat = pkgs.formats.json {}; 10 + settingsFileUnsubstituted = settingsFormat.generate "mautrix-telegram-config-unsubstituted.json" cfg.settings; 11 + settingsFile = "${dataDir}/config.json"; 12 13 in { 14 options = { ··· 16 enable = mkEnableOption "Mautrix-Telegram, a Matrix-Telegram hybrid puppeting/relaybot bridge"; 17 18 settings = mkOption rec { 19 apply = recursiveUpdate default; 20 + inherit (settingsFormat) type; 21 default = { 22 appservice = rec { 23 database = "sqlite:///${dataDir}/mautrix-telegram.db"; ··· 124 after = [ "network-online.target" ] ++ cfg.serviceDependencies; 125 126 preStart = '' 127 + # Not all secrets can be passed as environment variable (yet) 128 + # https://github.com/tulir/mautrix-telegram/issues/584 129 + [ -f ${settingsFile} ] && rm -f ${settingsFile} 130 + old_umask=$(umask) 131 + umask 0277 132 + ${pkgs.envsubst}/bin/envsubst \ 133 + -o ${settingsFile} \ 134 + -i ${settingsFileUnsubstituted} 135 + umask $old_umask 136 + 137 # generate the appservice's registration file if absent 138 if [ ! -f '${registrationFile}' ]; then 139 ${pkgs.mautrix-telegram}/bin/mautrix-telegram \ ··· 169 --config='${settingsFile}' 170 ''; 171 }; 172 + 173 + restartTriggers = [ settingsFileUnsubstituted ]; 174 }; 175 }; 176
+2 -1
nixos/modules/services/monitoring/prometheus/exporters.nix
··· 31 "dovecot" 32 "fritzbox" 33 "json" 34 "keylight" 35 "knot" 36 "lnd" ··· 130 inherit name port; 131 } // extraOpts); 132 } ({ config, ... }: mkIf config.openFirewall { 133 - firewallFilter = mkOptionDefault "-p tcp -m tcp --dport ${toString config.port}"; 134 })]; 135 internal = true; 136 default = {};
··· 31 "dovecot" 32 "fritzbox" 33 "json" 34 + "jitsi" 35 "keylight" 36 "knot" 37 "lnd" ··· 131 inherit name port; 132 } // extraOpts); 133 } ({ config, ... }: mkIf config.openFirewall { 134 + firewallFilter = mkDefault "-p tcp -m tcp --dport ${toString config.port}"; 135 })]; 136 internal = true; 137 default = {};
+40
nixos/modules/services/monitoring/prometheus/exporters/jitsi.nix
···
··· 1 + { config, lib, pkgs, options }: 2 + 3 + with lib; 4 + 5 + let 6 + cfg = config.services.prometheus.exporters.jitsi; 7 + in 8 + { 9 + port = 9700; 10 + extraOpts = { 11 + url = mkOption { 12 + type = types.str; 13 + default = "http://localhost:8080/colibri/stats"; 14 + description = '' 15 + Jitsi Videobridge metrics URL to monitor. 16 + This is usually /colibri/stats on port 8080 of the jitsi videobridge host. 17 + ''; 18 + }; 19 + interval = mkOption { 20 + type = types.str; 21 + default = "30s"; 22 + example = "1min"; 23 + description = '' 24 + How often to scrape new data 25 + ''; 26 + }; 27 + }; 28 + serviceOpts = { 29 + serviceConfig = { 30 + ExecStart = '' 31 + ${pkgs.prometheus-jitsi-exporter}/bin/jitsiexporter \ 32 + -url ${escapeShellArg cfg.url} \ 33 + -host ${cfg.listenAddress} \ 34 + -port ${toString cfg.port} \ 35 + -interval ${toString cfg.interval} \ 36 + ${concatStringsSep " \\\n " cfg.extraFlags} 37 + ''; 38 + }; 39 + }; 40 + }
+23
nixos/tests/prometheus-exporters.nix
··· 233 ''; 234 }; 235 236 json = { 237 exporterConfig = { 238 enable = true;
··· 233 ''; 234 }; 235 236 + jitsi = { 237 + exporterConfig = { 238 + enable = true; 239 + }; 240 + metricProvider = { 241 + systemd.services.prometheus-jitsi-exporter.after = [ "jitsi-videobridge2.service" ]; 242 + services.jitsi-videobridge = { 243 + enable = true; 244 + apis = [ "colibri" "rest" ]; 245 + }; 246 + }; 247 + exporterTest = '' 248 + wait_for_unit("jitsi-videobridge2.service") 249 + wait_for_open_port(8080) 250 + wait_for_unit("prometheus-jitsi-exporter.service") 251 + wait_for_open_port(9700) 252 + wait_until_succeeds( 253 + 'journalctl -eu prometheus-jitsi-exporter.service -o cat | grep -q "key=participants"' 254 + ) 255 + succeed("curl -sSf 'localhost:9700/metrics' | grep -q 'jitsi_participants 0'") 256 + ''; 257 + }; 258 + 259 json = { 260 exporterConfig = { 261 enable = true;
+2 -2
pkgs/applications/audio/rosegarden/default.nix
··· 3 , liblo, libsamplerate, libsndfile, lirc ? null, lrdf, qtbase }: 4 5 stdenv.mkDerivation (rec { 6 - version = "20.06"; 7 pname = "rosegarden"; 8 9 src = fetchurl { 10 url = "mirror://sourceforge/rosegarden/${pname}-${version}.tar.bz2"; 11 - sha256 = "1i9x9rkqwwdrk77xl5ra8i48cjirbc7fbisnj0nnclccwaq0wk6r"; 12 }; 13 14 patchPhase = ''
··· 3 , liblo, libsamplerate, libsndfile, lirc ? null, lrdf, qtbase }: 4 5 stdenv.mkDerivation (rec { 6 + version = "20.12"; 7 pname = "rosegarden"; 8 9 src = fetchurl { 10 url = "mirror://sourceforge/rosegarden/${pname}-${version}.tar.bz2"; 11 + sha256 = "sha256-iGaEr8WFipV4I00fhFGI2xMBFPf784IIxNXs2hUTHFs="; 12 }; 13 14 patchPhase = ''
+2 -2
pkgs/applications/display-managers/lightdm-mini-greeter/default.nix
··· 2 3 stdenv.mkDerivation rec { 4 pname = "lightdm-mini-greeter"; 5 - version = "0.5.0"; 6 7 src = fetchFromGitHub { 8 owner = "prikhi"; 9 repo = "lightdm-mini-greeter"; 10 rev = version; 11 - sha256 = "sha256-cVOnd3k+9hFQjROiwPpxZcCxD2NiH1eclJHF88eV6BM="; 12 }; 13 14 nativeBuildInputs = [ autoreconfHook pkg-config wrapGAppsHook ];
··· 2 3 stdenv.mkDerivation rec { 4 pname = "lightdm-mini-greeter"; 5 + version = "0.5.1"; 6 7 src = fetchFromGitHub { 8 owner = "prikhi"; 9 repo = "lightdm-mini-greeter"; 10 rev = version; 11 + sha256 = "sha256-Pm7ExfusFIPktX2C4UE07qgOVhcWhVxnaD3QARpmu7Y="; 12 }; 13 14 nativeBuildInputs = [ autoreconfHook pkg-config wrapGAppsHook ];
+1 -3
pkgs/applications/graphics/photoflare/default.nix
··· 19 20 NIX_CFLAGS_COMPILE = "-I${graphicsmagick}/include/GraphicsMagick"; 21 22 - enableParallelBuilding = true; 23 - 24 meta = with lib; { 25 description = "A cross-platform image editor with a powerful features and a very friendly graphical user interface"; 26 homepage = "https://photoflare.io"; 27 maintainers = [ maintainers.omgbebebe ]; 28 - license = licenses.gpl3; 29 platforms = platforms.linux; 30 }; 31 }
··· 19 20 NIX_CFLAGS_COMPILE = "-I${graphicsmagick}/include/GraphicsMagick"; 21 22 meta = with lib; { 23 description = "A cross-platform image editor with a powerful features and a very friendly graphical user interface"; 24 homepage = "https://photoflare.io"; 25 maintainers = [ maintainers.omgbebebe ]; 26 + license = licenses.gpl3Plus; 27 platforms = platforms.linux; 28 }; 29 }
+7 -4
pkgs/applications/misc/pueue/default.nix
··· 1 - { lib, rustPlatform, fetchFromGitHub, installShellFiles }: 2 3 rustPlatform.buildRustPackage rec { 4 pname = "pueue"; 5 - version = "0.12.0"; 6 7 src = fetchFromGitHub { 8 owner = "Nukesor"; 9 repo = pname; 10 rev = "v${version}"; 11 - sha256 = "sha256-yOUVDq/wRY35ZQjQVwTLYHKukkKpoggN51wBDdZnhI4="; 12 }; 13 14 - cargoSha256 = "sha256-56jJ8IjxWTBlaDd1CVit4RP659Mgw2j2wMWcSDYVihM="; 15 16 nativeBuildInputs = [ installShellFiles ]; 17 18 checkFlags = [ "--skip=test_single_huge_payload" "--skip=test_create_unix_socket" ]; 19 ··· 27 meta = with lib; { 28 description = "A daemon for managing long running shell commands"; 29 homepage = "https://github.com/Nukesor/pueue"; 30 license = licenses.mit; 31 maintainers = [ maintainers.marsam ]; 32 };
··· 1 + { stdenv, lib, rustPlatform, fetchFromGitHub, installShellFiles, SystemConfiguration, libiconv }: 2 3 rustPlatform.buildRustPackage rec { 4 pname = "pueue"; 5 + version = "0.12.1"; 6 7 src = fetchFromGitHub { 8 owner = "Nukesor"; 9 repo = pname; 10 rev = "v${version}"; 11 + sha256 = "sha256-wcOF34GzlB6YKISkjDgYgsaN1NmWBMIntfT23A6byx8="; 12 }; 13 14 + cargoSha256 = "sha256-7SJjtHNSabE/VqdiSwKZ/yNzk6GSMNsQLaSx/MjN5NA="; 15 16 nativeBuildInputs = [ installShellFiles ]; 17 + 18 + buildInputs = lib.optionals stdenv.isDarwin [ SystemConfiguration libiconv ]; 19 20 checkFlags = [ "--skip=test_single_huge_payload" "--skip=test_create_unix_socket" ]; 21 ··· 29 meta = with lib; { 30 description = "A daemon for managing long running shell commands"; 31 homepage = "https://github.com/Nukesor/pueue"; 32 + changelog = "https://github.com/Nukesor/pueue/raw/v${version}/CHANGELOG.md"; 33 license = licenses.mit; 34 maintainers = [ maintainers.marsam ]; 35 };
+6 -4
pkgs/applications/networking/browsers/asuka/default.nix
··· 1 - { lib, stdenv, rustPlatform, fetchurl, pkg-config, ncurses, openssl, Security }: 2 3 rustPlatform.buildRustPackage rec { 4 pname = "asuka"; 5 version = "0.8.1"; 6 7 - src = fetchurl { 8 - url = "https://git.sr.ht/~julienxx/${pname}/archive/${version}.tar.gz"; 9 - sha256 = "07i80qmdpwfdgwrk1gzs10wln91v23qjrsk0x134xf5mjnakxc06"; 10 }; 11 12 cargoSha256 = "0p0x4ch04kydg76bfal5zqzr9hvn5268wf3k2v9h7g8r4y8xqlhw";
··· 1 + { lib, stdenv, rustPlatform, fetchFromSourcehut, pkg-config, ncurses, openssl, Security }: 2 3 rustPlatform.buildRustPackage rec { 4 pname = "asuka"; 5 version = "0.8.1"; 6 7 + src = fetchFromSourcehut { 8 + owner = "~julienxx"; 9 + repo = pname; 10 + rev = version; 11 + sha256 = "1y8v4qc5dng3v9k0bky1xlf3qi9pk2vdsi29lff4ha5310467f0k"; 12 }; 13 14 cargoSha256 = "0p0x4ch04kydg76bfal5zqzr9hvn5268wf3k2v9h7g8r4y8xqlhw";
+3 -3
pkgs/applications/networking/cluster/terragrunt/default.nix
··· 2 3 buildGoModule rec { 4 pname = "terragrunt"; 5 - version = "0.28.9"; 6 7 src = fetchFromGitHub { 8 owner = "gruntwork-io"; 9 repo = pname; 10 rev = "v${version}"; 11 - sha256 = "sha256-sqwR+bXx5ab5OsmW44C5MIXjzQFM1QsBvsM0R3pL3H8="; 12 }; 13 14 - vendorSha256 = "sha256-9DBCP/4mp/Gr2ie0nk7WGfL+M7snMEztdHZzxdIFbzM="; 15 16 doCheck = false; 17
··· 2 3 buildGoModule rec { 4 pname = "terragrunt"; 5 + version = "0.28.11"; 6 7 src = fetchFromGitHub { 8 owner = "gruntwork-io"; 9 repo = pname; 10 rev = "v${version}"; 11 + sha256 = "sha256-qlmiQ73MRXcdXXC50pewUMt9YFbzXIbjnZTV5gIcvGs="; 12 }; 13 14 + vendorSha256 = "sha256-SVrDBDGK809O+RaE3gOa9U1agY6hSGI/k3FUCgm+5PA="; 15 16 doCheck = false; 17
+6 -4
pkgs/applications/networking/mailreaders/aerc/default.nix
··· 1 - { lib, buildGoModule, fetchurl 2 , ncurses, notmuch, scdoc 3 , python3, w3m, dante 4 }: ··· 7 pname = "aerc"; 8 version = "0.5.2"; 9 10 - src = fetchurl { 11 - url = "https://git.sr.ht/~sircmpwn/aerc/archive/${version}.tar.gz"; 12 - sha256 = "h7kiRA5TuZ8mDSMymWU33stFLIOMd06TQLYzKW+faO4="; 13 }; 14 15 runVend = true;
··· 1 + { lib, buildGoModule, fetchFromSourcehut 2 , ncurses, notmuch, scdoc 3 , python3, w3m, dante 4 }: ··· 7 pname = "aerc"; 8 version = "0.5.2"; 9 10 + src = fetchFromSourcehut { 11 + owner = "~sircmpwn"; 12 + repo = pname; 13 + rev = version; 14 + sha256 = "1ja639qry8h2d6y7qshf62ypkzs2rzady59p81scqh8nx0g9bils"; 15 }; 16 17 runVend = true;
+19 -13
pkgs/applications/radio/gnss-sdr/default.nix
··· 1 - { lib, stdenv, fetchFromGitHub 2 , armadillo 3 - , boost 4 , cmake 5 , glog 6 , gmock 7 , openssl 8 , gflags 9 - , gnuradio 10 , orc 11 , pkg-config 12 - , pythonPackages 13 , uhd 14 , log4cpp 15 , blas, lapack ··· 18 , protobuf 19 }: 20 21 - stdenv.mkDerivation rec { 22 pname = "gnss-sdr"; 23 version = "0.0.13"; 24 ··· 29 sha256 = "0a3k47fl5dizzhbqbrbmckl636lznyjby2d2nz6fz21637hvrnby"; 30 }; 31 32 - nativeBuildInputs = [ cmake pkg-config ]; 33 buildInputs = [ 34 armadillo 35 - boost.dev 36 glog 37 gmock 38 - openssl.dev 39 gflags 40 - gnuradio 41 orc 42 - pythonPackages.Mako 43 - pythonPackages.six 44 - 45 # UHD support is optional, but gnuradio is built with it, so there's 46 # nothing to be gained by leaving it out. 47 - uhd 48 log4cpp 49 blas lapack 50 matio 51 pugixml 52 protobuf 53 ]; 54 55 cmakeFlags = [
··· 1 + { lib 2 + , fetchFromGitHub 3 , armadillo 4 , cmake 5 + , gmp 6 , glog 7 , gmock 8 , openssl 9 , gflags 10 + , gnuradio3_8 11 + , libpcap 12 , orc 13 , pkg-config 14 , uhd 15 , log4cpp 16 , blas, lapack ··· 19 , protobuf 20 }: 21 22 + gnuradio3_8.pkgs.mkDerivation rec { 23 pname = "gnss-sdr"; 24 version = "0.0.13"; 25 ··· 30 sha256 = "0a3k47fl5dizzhbqbrbmckl636lznyjby2d2nz6fz21637hvrnby"; 31 }; 32 33 + nativeBuildInputs = [ 34 + cmake 35 + gnuradio3_8.unwrapped.python 36 + gnuradio3_8.unwrapped.python.pkgs.Mako 37 + gnuradio3_8.unwrapped.python.pkgs.six 38 + ]; 39 + 40 buildInputs = [ 41 + gmp 42 armadillo 43 + gnuradio3_8.unwrapped.boost 44 glog 45 gmock 46 + openssl 47 gflags 48 orc 49 # UHD support is optional, but gnuradio is built with it, so there's 50 # nothing to be gained by leaving it out. 51 + gnuradio3_8.unwrapped.uhd 52 log4cpp 53 blas lapack 54 matio 55 pugixml 56 protobuf 57 + gnuradio3_8.pkgs.osmosdr 58 + libpcap 59 ]; 60 61 cmakeFlags = [
+22 -33
pkgs/applications/radio/gnuradio/3.7.nix
··· 5 # Remove gcc and python references 6 , removeReferencesTo 7 , pkg-config 8 , cppunit 9 , swig 10 , orc ··· 43 minor = "14"; 44 patch = "0"; 45 } 46 - , fetchSubmodules ? true 47 }: 48 49 let 50 - sourceSha256 = "1nh4f9dmygprlbqybd3j1byg9fsr6065n140mvc4b0v8qqygmhrc"; 51 featuresInfo = { 52 # Needed always 53 basic = { ··· 61 }; 62 volk = { 63 cmakeEnableFlag = "VOLK"; 64 }; 65 doxygen = { 66 native = [ doxygen ]; ··· 213 qt = qt4; 214 gtk = gtk2; 215 }); 216 inherit (shared) 217 version 218 src 219 - hasFeature # function 220 nativeBuildInputs 221 buildInputs 222 disallowedReferences 223 postInstall 224 - passthru 225 doCheck 226 dontWrapPythonPrograms 227 meta 228 ; 229 cmakeFlags = shared.cmakeFlags 230 # From some reason, if these are not set, libcodec2 and gsm are 231 # not detected properly (slightly different then what's in ··· 235 "-DLIBCODEC2_INCLUDE_DIR=${codec2}/include" 236 "-DLIBGSM_LIBRARIES=${gsm}/lib/libgsm.so" 237 "-DLIBGSM_INCLUDE_DIR=${gsm}/include/gsm" 238 ] 239 ; 240 stripDebugList = shared.stripDebugList ··· 250 + lib.optionalString (hasFeature "gnuradio-companion" features) '' 251 sed -i 's/.*pygtk_version.*/set(PYGTK_FOUND TRUE)/g' grc/CMakeLists.txt 252 '' 253 - # If python-support is disabled, don't install volk's (git submodule) 254 - # volk_modtool - it references python. 255 - # 256 - # NOTE: The same is done for 3.8, but we don't put this string in 257 - # ./shared.nix since on the next release of 3.8 it won't be needed there, 258 - # but it will be needed for 3.7, probably for ever. 259 - + lib.optionalString (!hasFeature "python-support" features) '' 260 - sed -i -e "/python\/volk_modtool/d" volk/CMakeLists.txt 261 - '' 262 ; 263 patches = [ 264 # Don't install python referencing files if python support is disabled. ··· 272 sha256 = "2Pitgu8accs16B5X5+/q51hr+IY9DMsA15f56gAtBs8="; 273 }) 274 ]; 275 - in 276 - 277 - stdenv.mkDerivation rec { 278 - inherit 279 - pname 280 - version 281 - src 282 - nativeBuildInputs 283 - buildInputs 284 - cmakeFlags 285 - preConfigure 286 - # disallowedReferences 287 - stripDebugList 288 - patches 289 - postInstall 290 - passthru 291 - doCheck 292 - dontWrapPythonPrograms 293 - meta 294 - ; 295 }
··· 5 # Remove gcc and python references 6 , removeReferencesTo 7 , pkg-config 8 + , volk 9 , cppunit 10 , swig 11 , orc ··· 44 minor = "14"; 45 patch = "0"; 46 } 47 + # We use our build of volk and not the one bundled with the release 48 + , fetchSubmodules ? false 49 }: 50 51 let 52 + sourceSha256 = "BiUDibXV/5cEYmAAaIxT4WTxF/ni4MJumF5oJ/vuOyc="; 53 featuresInfo = { 54 # Needed always 55 basic = { ··· 63 }; 64 volk = { 65 cmakeEnableFlag = "VOLK"; 66 + runtime = [ 67 + volk 68 + ]; 69 }; 70 doxygen = { 71 native = [ doxygen ]; ··· 218 qt = qt4; 219 gtk = gtk2; 220 }); 221 + inherit (shared) hasFeature; # function 222 + in 223 + 224 + stdenv.mkDerivation rec { 225 + inherit pname; 226 inherit (shared) 227 version 228 src 229 nativeBuildInputs 230 buildInputs 231 disallowedReferences 232 postInstall 233 doCheck 234 dontWrapPythonPrograms 235 meta 236 ; 237 + 238 + passthru = shared.passthru // { 239 + # Deps that are potentially overriden and are used inside GR plugins - the same version must 240 + inherit boost volk; 241 + } // lib.optionalAttrs (hasFeature "gr-uhd" features) { 242 + inherit uhd; 243 + }; 244 cmakeFlags = shared.cmakeFlags 245 # From some reason, if these are not set, libcodec2 and gsm are 246 # not detected properly (slightly different then what's in ··· 250 "-DLIBCODEC2_INCLUDE_DIR=${codec2}/include" 251 "-DLIBGSM_LIBRARIES=${gsm}/lib/libgsm.so" 252 "-DLIBGSM_INCLUDE_DIR=${gsm}/include/gsm" 253 + ] 254 + ++ lib.optionals (hasFeature "volk" features && volk != null) [ 255 + "-DENABLE_INTERNAL_VOLK=OFF" 256 ] 257 ; 258 stripDebugList = shared.stripDebugList ··· 268 + lib.optionalString (hasFeature "gnuradio-companion" features) '' 269 sed -i 's/.*pygtk_version.*/set(PYGTK_FOUND TRUE)/g' grc/CMakeLists.txt 270 '' 271 ; 272 patches = [ 273 # Don't install python referencing files if python support is disabled. ··· 281 sha256 = "2Pitgu8accs16B5X5+/q51hr+IY9DMsA15f56gAtBs8="; 282 }) 283 ]; 284 }
+284
pkgs/applications/radio/gnuradio/3.8.nix
···
··· 1 + { lib, stdenv 2 + , fetchFromGitHub 3 + , fetchpatch 4 + , cmake 5 + # Remove gcc and python references 6 + , removeReferencesTo 7 + , pkg-config 8 + , volk 9 + , cppunit 10 + , swig 11 + , orc 12 + , boost 13 + , log4cpp 14 + , mpir 15 + , doxygen 16 + , python 17 + , codec2 18 + , gsm 19 + , fftwFloat 20 + , alsaLib 21 + , libjack2 22 + , CoreAudio 23 + , uhd 24 + , SDL 25 + , gsl 26 + , cppzmq 27 + , zeromq 28 + # Needed only if qt-gui is disabled, from some reason 29 + , icu 30 + # GUI related 31 + , gtk3 32 + , pango 33 + , gobject-introspection 34 + , cairo 35 + , qt5 36 + , libsForQt5 37 + # Features available to override, the list of them is in featuresInfo. They 38 + # are all turned on by default. 39 + , features ? {} 40 + # If one wishes to use a different src or name for a very custom build 41 + , overrideSrc ? {} 42 + , pname ? "gnuradio" 43 + , versionAttr ? { 44 + major = "3.8"; 45 + minor = "2"; 46 + patch = "0"; 47 + } 48 + # We use our build of volk and not the one bundled with the release 49 + , fetchSubmodules ? false 50 + }: 51 + 52 + let 53 + sourceSha256 = "SFDjtyQRp0fXijZukpLYtISpx8imxedlYN9mRibv1eA="; 54 + featuresInfo = { 55 + # Needed always 56 + basic = { 57 + native = [ 58 + cmake 59 + pkg-config 60 + orc 61 + ]; 62 + runtime = [ 63 + boost 64 + log4cpp 65 + mpir 66 + ] 67 + # when gr-qtgui is disabled, icu needs to be included, otherwise 68 + # building with boost 1.7x fails 69 + ++ lib.optionals (!(hasFeature "gr-qtgui" features)) [ icu ]; 70 + pythonNative = with python.pkgs; [ 71 + Mako 72 + six 73 + ]; 74 + }; 75 + volk = { 76 + cmakeEnableFlag = "VOLK"; 77 + runtime = [ 78 + volk 79 + ]; 80 + }; 81 + doxygen = { 82 + native = [ doxygen ]; 83 + cmakeEnableFlag = "DOXYGEN"; 84 + }; 85 + sphinx = { 86 + pythonNative = with python.pkgs; [ sphinx ]; 87 + cmakeEnableFlag = "SPHINX"; 88 + }; 89 + python-support = { 90 + pythonRuntime = [ python.pkgs.six ]; 91 + native = [ 92 + swig 93 + python 94 + ]; 95 + cmakeEnableFlag = "PYTHON"; 96 + }; 97 + testing-support = { 98 + native = [ cppunit ]; 99 + cmakeEnableFlag = "TESTING"; 100 + }; 101 + gnuradio-runtime = { 102 + cmakeEnableFlag = "GNURADIO_RUNTIME"; 103 + }; 104 + gr-ctrlport = { 105 + # Thrift support is not really working well, and even the patch they 106 + # recommend applying on 0.9.2 won't apply. See: 107 + # https://github.com/gnuradio/gnuradio/blob/v3.8.2.0/gnuradio-runtime/lib/controlport/thrift/README 108 + cmakeEnableFlag = "GR_CTRLPORT"; 109 + native = [ 110 + swig 111 + ]; 112 + }; 113 + gnuradio-companion = { 114 + pythonRuntime = with python.pkgs; [ 115 + pyyaml 116 + Mako 117 + numpy 118 + pygobject3 119 + ]; 120 + runtime = [ 121 + gtk3 122 + pango 123 + gobject-introspection 124 + cairo 125 + ]; 126 + cmakeEnableFlag = "GRC"; 127 + }; 128 + gr-blocks = { 129 + cmakeEnableFlag = "GR_BLOCKS"; 130 + }; 131 + gr-fec = { 132 + cmakeEnableFlag = "GR_FEC"; 133 + }; 134 + gr-fft = { 135 + runtime = [ fftwFloat ]; 136 + cmakeEnableFlag = "GR_FFT"; 137 + }; 138 + gr-filter = { 139 + runtime = [ fftwFloat ]; 140 + cmakeEnableFlag = "GR_FILTER"; 141 + }; 142 + gr-analog = { 143 + cmakeEnableFlag = "GR_ANALOG"; 144 + }; 145 + gr-digital = { 146 + cmakeEnableFlag = "GR_DIGITAL"; 147 + }; 148 + gr-dtv = { 149 + cmakeEnableFlag = "GR_DTV"; 150 + }; 151 + gr-audio = { 152 + runtime = [] 153 + ++ lib.optionals stdenv.isLinux [ alsaLib libjack2 ] 154 + ++ lib.optionals stdenv.isDarwin [ CoreAudio ] 155 + ; 156 + cmakeEnableFlag = "GR_AUDIO"; 157 + }; 158 + gr-channels = { 159 + cmakeEnableFlag = "GR_CHANNELS"; 160 + }; 161 + gr-qtgui = { 162 + runtime = [ qt5.qtbase libsForQt5.qwt ]; 163 + pythonRuntime = [ python.pkgs.pyqt5 ]; 164 + cmakeEnableFlag = "GR_QTGUI"; 165 + }; 166 + gr-trellis = { 167 + cmakeEnableFlag = "GR_TRELLIS"; 168 + }; 169 + gr-uhd = { 170 + runtime = [ uhd ]; 171 + cmakeEnableFlag = "GR_UHD"; 172 + }; 173 + gr-utils = { 174 + cmakeEnableFlag = "GR_UTILS"; 175 + }; 176 + gr-modtool = { 177 + pythonRuntime = with python.pkgs; [ 178 + click 179 + click-plugins 180 + ]; 181 + cmakeEnableFlag = "GR_MODTOOL"; 182 + }; 183 + gr-video-sdl = { 184 + runtime = [ SDL ]; 185 + cmakeEnableFlag = "GR_VIDEO_SDL"; 186 + }; 187 + gr-vocoder = { 188 + runtime = [ codec2 gsm ]; 189 + cmakeEnableFlag = "GR_VOCODER"; 190 + }; 191 + gr-wavelet = { 192 + cmakeEnableFlag = "GR_WAVELET"; 193 + runtime = [ gsl ]; 194 + }; 195 + gr-zeromq = { 196 + runtime = [ cppzmq zeromq ]; 197 + cmakeEnableFlag = "GR_ZEROMQ"; 198 + }; 199 + }; 200 + shared = (import ./shared.nix { 201 + inherit 202 + stdenv 203 + lib 204 + python 205 + removeReferencesTo 206 + featuresInfo 207 + features 208 + versionAttr 209 + sourceSha256 210 + overrideSrc 211 + fetchFromGitHub 212 + fetchSubmodules 213 + ; 214 + qt = qt5; 215 + gtk = gtk3; 216 + }); 217 + inherit (shared) hasFeature; # function 218 + in 219 + 220 + stdenv.mkDerivation rec { 221 + inherit pname; 222 + inherit (shared) 223 + version 224 + src 225 + nativeBuildInputs 226 + buildInputs 227 + disallowedReferences 228 + stripDebugList 229 + doCheck 230 + dontWrapPythonPrograms 231 + dontWrapQtApps 232 + meta 233 + ; 234 + passthru = shared.passthru // { 235 + # Deps that are potentially overriden and are used inside GR plugins - the same version must 236 + inherit boost volk; 237 + } // lib.optionalAttrs (hasFeature "gr-uhd" features) { 238 + inherit uhd; 239 + } // lib.optionalAttrs (hasFeature "gr-qtgui" features) { 240 + inherit (libsForQt5) qwt; 241 + }; 242 + cmakeFlags = shared.cmakeFlags 243 + # From some reason, if these are not set, libcodec2 and gsm are not 244 + # detected properly. NOTE: qradiolink needs libcodec2 to be detected in 245 + # order to build, see https://github.com/qradiolink/qradiolink/issues/67 246 + ++ lib.optionals (hasFeature "gr-vocoder" features) [ 247 + "-DLIBCODEC2_LIBRARIES=${codec2}/lib/libcodec2.so" 248 + "-DLIBCODEC2_INCLUDE_DIRS=${codec2}/include" 249 + "-DLIBCODEC2_HAS_FREEDV_API=ON" 250 + "-DLIBGSM_LIBRARIES=${gsm}/lib/libgsm.so" 251 + "-DLIBGSM_INCLUDE_DIRS=${gsm}/include/gsm" 252 + ] 253 + ++ lib.optionals (hasFeature "volk" features && volk != null) [ 254 + "-DENABLE_INTERNAL_VOLK=OFF" 255 + ] 256 + ; 257 + 258 + postInstall = shared.postInstall 259 + # This is the only python reference worth removing, if needed (3.7 doesn't 260 + # set that reference). 261 + + lib.optionalString (!hasFeature "python-support" features) '' 262 + ${removeReferencesTo}/bin/remove-references-to -t ${python} $out/lib/cmake/gnuradio/GnuradioConfig.cmake 263 + '' 264 + ; 265 + patches = [ 266 + # Don't install python referencing files if python support is disabled. 267 + # See: https://github.com/gnuradio/gnuradio/pull/3839 268 + (fetchpatch { 269 + url = "https://github.com/gnuradio/gnuradio/commit/4a4fd570b398b0b50fe875fcf0eb9c9db2ea5c6e.diff"; 270 + sha256 = "xz2E0ji6zfdOAhjfPecAcaVOIls1XP8JngLkBbBBW5Q="; 271 + }) 272 + (fetchpatch { 273 + url = "https://github.com/gnuradio/gnuradio/commit/dbc8ad7e7361fddc7b1dbc267c07a776a3f9664b.diff"; 274 + sha256 = "tQcCpcUbJv3yqAX8rSHN/pAuBq4ueEvoVo7sNzZGvf4="; 275 + }) 276 + # Needed to use boost 1.7x, see: 277 + # https://github.com/gnuradio/gnuradio/issues/3720 278 + # https://github.com/gnuradio/gnuradio/pull/3967 279 + (fetchpatch { 280 + url = "https://github.com/gnuradio/gnuradio/commit/cbcb968358fad56f3646619b258f18b0e6693a07.diff"; 281 + sha256 = "1ajf4797f869lqv436xw61s29qdbn7f01i0970kfxv3yahd34p9v"; 282 + }) 283 + ]; 284 + }
-53
pkgs/applications/radio/gnuradio/ais.nix
··· 1 - { lib 2 - , stdenv 3 - , fetchFromGitHub 4 - , cmake 5 - , pkg-config 6 - , boost 7 - , gnuradio 8 - , makeWrapper 9 - , cppunit 10 - , gr-osmosdr 11 - , log4cpp 12 - , pythonSupport ? true 13 - , python 14 - , swig 15 - , fetchpatch 16 - }: 17 - 18 - stdenv.mkDerivation { 19 - pname = "gr-ais"; 20 - version = "2015-12-20"; 21 - 22 - src = fetchFromGitHub { 23 - owner = "bistromath"; 24 - repo = "gr-ais"; 25 - rev = "cdc1f52745853f9c739c718251830eb69704b26e"; 26 - sha256 = "1vl3kk8xr2mh5lf31zdld7yzmwywqffffah8iblxdzblgsdwxfl6"; 27 - }; 28 - 29 - patches = [ 30 - (fetchpatch { 31 - url = "https://github.com/bistromath/gr-ais/commit/8502d0252a2a1a9b8d1a71795eaeb5d820684054.patch"; 32 - sha256 = "1cwalphldvf6dbhzwz1gi53z0cb4921qsvlz4138q7m6dxccvssg"; 33 - }) 34 - ]; 35 - 36 - nativeBuildInputs = [ cmake makeWrapper pkg-config ]; 37 - buildInputs = [ boost gnuradio cppunit gr-osmosdr log4cpp ] 38 - ++ lib.optionals pythonSupport [ python swig ]; 39 - 40 - postInstall = '' 41 - for prog in "$out"/bin/*; do 42 - wrapProgram "$prog" --set PYTHONPATH $PYTHONPATH:$(toPythonPath "$out") 43 - done 44 - ''; 45 - 46 - meta = with lib; { 47 - description = "Gnuradio block for ais"; 48 - homepage = "https://github.com/bistromath/gr-ais"; 49 - license = licenses.gpl3Plus; 50 - platforms = platforms.linux ++ platforms.darwin; 51 - maintainers = with maintainers; [ mog ]; 52 - }; 53 - }
···
+64 -89
pkgs/applications/radio/gnuradio/default.nix
··· 5 # Remove gcc and python references 6 , removeReferencesTo 7 , pkg-config 8 , cppunit 9 - , swig 10 , orc 11 , boost 12 , log4cpp ··· 22 , uhd 23 , SDL 24 , gsl 25 , cppzmq 26 , zeromq 27 # GUI related 28 , gtk3 29 , pango ··· 38 , overrideSrc ? {} 39 , pname ? "gnuradio" 40 , versionAttr ? { 41 - major = "3.8"; 42 - minor = "2"; 43 patch = "0"; 44 } 45 - # Should be false on the release after 3.8.2.0 46 - , fetchSubmodules ? true 47 }: 48 49 let 50 - sourceSha256 = "1mnfwdy7w3160vi6110x2qkyq8l78qi8771zwak9n72bl7lhhpnf"; 51 featuresInfo = { 52 # Needed always 53 basic = { ··· 57 orc 58 ]; 59 runtime = [ 60 boost 61 log4cpp 62 mpir 63 - ]; 64 pythonNative = with python.pkgs; [ 65 Mako 66 six 67 ]; 68 }; 69 - # NOTE: Should be removed on the release after 3.8.2.0, see: 70 - # https://github.com/gnuradio/gnuradio/commit/80c04479d 71 - volk = { 72 - cmakeEnableFlag = "VOLK"; 73 - }; 74 doxygen = { 75 native = [ doxygen ]; 76 cmakeEnableFlag = "DOXYGEN"; 77 }; 78 - sphinx = { 79 - pythonNative = with python.pkgs; [ sphinx ]; 80 - cmakeEnableFlag = "SPHINX"; 81 - }; 82 python-support = { 83 pythonRuntime = [ python.pkgs.six ]; 84 native = [ 85 - swig 86 python 87 ]; 88 cmakeEnableFlag = "PYTHON"; ··· 90 testing-support = { 91 native = [ cppunit ]; 92 cmakeEnableFlag = "TESTING"; 93 }; 94 gnuradio-runtime = { 95 cmakeEnableFlag = "GNURADIO_RUNTIME"; 96 }; 97 gr-ctrlport = { 98 # Thrift support is not really working well, and even the patch they 99 # recommend applying on 0.9.2 won't apply. See: 100 - # https://github.com/gnuradio/gnuradio/blob/v3.8.2.0/gnuradio-runtime/lib/controlport/thrift/README 101 cmakeEnableFlag = "GR_CTRLPORT"; 102 - native = [ 103 - swig 104 - ]; 105 }; 106 gnuradio-companion = { 107 pythonRuntime = with python.pkgs; [ ··· 110 numpy 111 pygobject3 112 ]; 113 runtime = [ 114 gtk3 115 pango 116 gobject-introspection 117 cairo 118 ]; 119 cmakeEnableFlag = "GRC"; 120 }; ··· 160 cmakeEnableFlag = "GR_TRELLIS"; 161 }; 162 gr-uhd = { 163 - runtime = [ uhd ]; 164 cmakeEnableFlag = "GR_UHD"; 165 }; 166 gr-utils = { ··· 173 ]; 174 cmakeEnableFlag = "GR_MODTOOL"; 175 }; 176 gr-video-sdl = { 177 runtime = [ SDL ]; 178 cmakeEnableFlag = "GR_VIDEO_SDL"; 179 }; 180 - gr-vocoder = { 181 - runtime = [ codec2 gsm ]; 182 - cmakeEnableFlag = "GR_VOCODER"; 183 - }; 184 gr-wavelet = { 185 cmakeEnableFlag = "GR_WAVELET"; 186 - runtime = [ gsl ]; 187 }; 188 gr-zeromq = { 189 runtime = [ cppzmq zeromq ]; 190 cmakeEnableFlag = "GR_ZEROMQ"; 191 }; 192 }; 193 shared = (import ./shared.nix { 194 inherit ··· 207 qt = qt5; 208 gtk = gtk3; 209 }); 210 inherit (shared) 211 version 212 src 213 - hasFeature # function 214 nativeBuildInputs 215 buildInputs 216 disallowedReferences 217 stripDebugList 218 - passthru 219 doCheck 220 dontWrapPythonPrograms 221 dontWrapQtApps 222 meta 223 ; 224 - cmakeFlags = shared.cmakeFlags 225 - # From some reason, if these are not set, libcodec2 and gsm are not 226 - # detected properly. NOTE: qradiolink needs libcodec2 to be detected in 227 - # order to build, see https://github.com/qradiolink/qradiolink/issues/67 228 - ++ lib.optionals (hasFeature "gr-vocoder" features) [ 229 - "-DLIBCODEC2_LIBRARIES=${codec2}/lib/libcodec2.so" 230 - "-DLIBCODEC2_INCLUDE_DIRS=${codec2}/include" 231 - "-DLIBCODEC2_HAS_FREEDV_API=ON" 232 - "-DLIBGSM_LIBRARIES=${gsm}/lib/libgsm.so" 233 - "-DLIBGSM_INCLUDE_DIRS=${gsm}/include/gsm" 234 - ] 235 - ; 236 237 postInstall = shared.postInstall 238 - # This is the only python reference worth removing, if needed (3.7 doesn't 239 - # set that reference). 240 + lib.optionalString (!hasFeature "python-support" features) '' 241 ${removeReferencesTo}/bin/remove-references-to -t ${python} $out/lib/cmake/gnuradio/GnuradioConfig.cmake 242 - '' 243 - ; 244 - preConfigure = "" 245 - # If python-support is disabled, don't install volk's (git submodule) 246 - # volk_modtool - it references python. 247 - # 248 - # NOTE: on the next release, volk will always be required to be installed 249 - # externally (submodule removed upstream). Hence this hook will fail and 250 - # we'll need to package volk while able to tell it to install or not 251 - # install python referencing files. When we'll be there, this will help: 252 - # https://github.com/gnuradio/volk/pull/404 253 - + lib.optionalString (!hasFeature "python-support" features) '' 254 - sed -i -e "/python\/volk_modtool/d" volk/CMakeLists.txt 255 '' 256 - ; 257 - patches = [ 258 - # Don't install python referencing files if python support is disabled. 259 - # See: https://github.com/gnuradio/gnuradio/pull/3839 260 - (fetchpatch { 261 - url = "https://github.com/gnuradio/gnuradio/commit/4a4fd570b398b0b50fe875fcf0eb9c9db2ea5c6e.diff"; 262 - sha256 = "xz2E0ji6zfdOAhjfPecAcaVOIls1XP8JngLkBbBBW5Q="; 263 - }) 264 - (fetchpatch { 265 - url = "https://github.com/gnuradio/gnuradio/commit/dbc8ad7e7361fddc7b1dbc267c07a776a3f9664b.diff"; 266 - sha256 = "tQcCpcUbJv3yqAX8rSHN/pAuBq4ueEvoVo7sNzZGvf4="; 267 - }) 268 - ]; 269 - in 270 - 271 - stdenv.mkDerivation rec { 272 - inherit 273 - pname 274 - version 275 - src 276 - nativeBuildInputs 277 - buildInputs 278 - cmakeFlags 279 - preConfigure 280 - # disallowedReferences 281 - stripDebugList 282 - patches 283 - postInstall 284 - passthru 285 - doCheck 286 - dontWrapPythonPrograms 287 - dontWrapQtApps 288 - meta 289 ; 290 }
··· 5 # Remove gcc and python references 6 , removeReferencesTo 7 , pkg-config 8 + , volk 9 , cppunit 10 , orc 11 , boost 12 , log4cpp ··· 22 , uhd 23 , SDL 24 , gsl 25 + , libsodium 26 + , libsndfile 27 + , libunwind 28 , cppzmq 29 , zeromq 30 + # Needed only if qt-gui is disabled, from some reason 31 + , icu 32 # GUI related 33 , gtk3 34 , pango ··· 43 , overrideSrc ? {} 44 , pname ? "gnuradio" 45 , versionAttr ? { 46 + major = "3.9"; 47 + minor = "0"; 48 patch = "0"; 49 } 50 + , fetchSubmodules ? false 51 }: 52 53 let 54 + sourceSha256 = "ZjQzioAuWrd8jsYOnLNH1mK4n9EbrjgvPX3mTzVFdLk="; 55 featuresInfo = { 56 # Needed always 57 basic = { ··· 61 orc 62 ]; 63 runtime = [ 64 + volk 65 boost 66 log4cpp 67 mpir 68 + ] 69 + # when gr-qtgui is disabled, icu needs to be included, otherwise 70 + # building with boost 1.7x fails 71 + ++ lib.optionals (!(hasFeature "gr-qtgui" features)) [ icu ]; 72 pythonNative = with python.pkgs; [ 73 Mako 74 six 75 ]; 76 }; 77 doxygen = { 78 native = [ doxygen ]; 79 cmakeEnableFlag = "DOXYGEN"; 80 }; 81 python-support = { 82 pythonRuntime = [ python.pkgs.six ]; 83 native = [ 84 python 85 ]; 86 cmakeEnableFlag = "PYTHON"; ··· 88 testing-support = { 89 native = [ cppunit ]; 90 cmakeEnableFlag = "TESTING"; 91 + }; 92 + post-install = { 93 + cmakeEnableFlag = "POSTINSTALL"; 94 }; 95 gnuradio-runtime = { 96 cmakeEnableFlag = "GNURADIO_RUNTIME"; 97 + pythonRuntime = [ 98 + python.pkgs.pybind11 99 + ]; 100 }; 101 gr-ctrlport = { 102 # Thrift support is not really working well, and even the patch they 103 # recommend applying on 0.9.2 won't apply. See: 104 + # https://github.com/gnuradio/gnuradio/blob/v3.9.0.0/gnuradio-runtime/lib/controlport/thrift/README 105 + runtime = [ 106 + libunwind 107 + ]; 108 cmakeEnableFlag = "GR_CTRLPORT"; 109 }; 110 gnuradio-companion = { 111 pythonRuntime = with python.pkgs; [ ··· 114 numpy 115 pygobject3 116 ]; 117 + native = [ 118 + python.pkgs.pytest 119 + ]; 120 runtime = [ 121 gtk3 122 pango 123 gobject-introspection 124 cairo 125 + libsndfile 126 ]; 127 cmakeEnableFlag = "GRC"; 128 }; ··· 168 cmakeEnableFlag = "GR_TRELLIS"; 169 }; 170 gr-uhd = { 171 + runtime = [ 172 + uhd 173 + ]; 174 cmakeEnableFlag = "GR_UHD"; 175 }; 176 gr-utils = { ··· 183 ]; 184 cmakeEnableFlag = "GR_MODTOOL"; 185 }; 186 + gr-blocktool = { 187 + cmakeEnableFlag = "GR_BLOCKTOOL"; 188 + }; 189 gr-video-sdl = { 190 runtime = [ SDL ]; 191 cmakeEnableFlag = "GR_VIDEO_SDL"; 192 }; 193 + # codec2 and gsm support is broken with gr3.9: https://github.com/gnuradio/gnuradio/issues/4278 194 + # gr-vocoder = { 195 + # runtime = [ codec2 gsm ]; 196 + # cmakeEnableFlag = "GR_VOCODER"; 197 + # }; 198 gr-wavelet = { 199 cmakeEnableFlag = "GR_WAVELET"; 200 + runtime = [ gsl libsodium ]; 201 }; 202 gr-zeromq = { 203 runtime = [ cppzmq zeromq ]; 204 cmakeEnableFlag = "GR_ZEROMQ"; 205 }; 206 + gr-network = { 207 + cmakeEnableFlag = "GR_NETWORK"; 208 + }; 209 }; 210 shared = (import ./shared.nix { 211 inherit ··· 224 qt = qt5; 225 gtk = gtk3; 226 }); 227 + inherit (shared) hasFeature; # function 228 + in 229 + 230 + stdenv.mkDerivation rec { 231 + inherit pname; 232 inherit (shared) 233 version 234 src 235 nativeBuildInputs 236 buildInputs 237 + cmakeFlags 238 disallowedReferences 239 stripDebugList 240 doCheck 241 dontWrapPythonPrograms 242 dontWrapQtApps 243 meta 244 ; 245 + passthru = shared.passthru // { 246 + # Deps that are potentially overriden and are used inside GR plugins - the same version must 247 + inherit boost volk; 248 + } // lib.optionalAttrs (hasFeature "gr-uhd" features) { 249 + inherit uhd; 250 + } // lib.optionalAttrs (hasFeature "gr-qtgui" features) { 251 + inherit (libsForQt5) qwt; 252 + }; 253 254 postInstall = shared.postInstall 255 + # This is the only python reference worth removing, if needed. 256 + # Even if python support is enabled, and we don't care about this 257 + # reference, pybind's path is not properly set. See: 258 + # https://github.com/gnuradio/gnuradio/issues/4380 259 + lib.optionalString (!hasFeature "python-support" features) '' 260 ${removeReferencesTo}/bin/remove-references-to -t ${python} $out/lib/cmake/gnuradio/GnuradioConfig.cmake 261 + ${removeReferencesTo}/bin/remove-references-to -t ${python} $(readlink -f $out/lib/libgnuradio-runtime.so) 262 + ${removeReferencesTo}/bin/remove-references-to -t ${python.pkgs.pybind11} $out/lib/cmake/gnuradio/gnuradio-runtimeTargets.cmake 263 '' 264 ; 265 }
-37
pkgs/applications/radio/gnuradio/gsm.nix
··· 1 - { lib, stdenv, fetchFromGitHub, cmake, pkg-config, boost, gnuradio, log4cpp 2 - , makeWrapper, cppunit, libosmocore, gr-osmosdr 3 - , pythonSupport ? true, python, swig 4 - }: 5 - 6 - assert pythonSupport -> python != null && swig != null; 7 - 8 - stdenv.mkDerivation { 9 - pname = "gr-gsm"; 10 - version = "2016-08-25"; 11 - 12 - src = fetchFromGitHub { 13 - owner = "ptrkrysik"; 14 - repo = "gr-gsm"; 15 - rev = "3ca05e6914ef29eb536da5dbec323701fbc2050d"; 16 - sha256 = "13nnq927kpf91iqccr8db9ripy5czjl5jiyivizn6bia0bam2pvx"; 17 - }; 18 - 19 - nativeBuildInputs = [ cmake pkg-config ]; 20 - buildInputs = [ 21 - boost gnuradio makeWrapper cppunit libosmocore gr-osmosdr log4cpp 22 - ] ++ lib.optionals pythonSupport [ python swig ]; 23 - 24 - postInstall = '' 25 - for prog in "$out"/bin/*; do 26 - wrapProgram "$prog" --set PYTHONPATH $PYTHONPATH:${gr-osmosdr}/lib/${python.libPrefix}/site-packages:$(toPythonPath "$out") 27 - done 28 - ''; 29 - 30 - meta = with lib; { 31 - description = "Gnuradio block for gsm"; 32 - homepage = "https://github.com/ptrkrysik/gr-gsm"; 33 - license = licenses.gpl3Plus; 34 - platforms = platforms.linux; 35 - maintainers = with maintainers; [ mog ]; 36 - }; 37 - }
···
-38
pkgs/applications/radio/gnuradio/limesdr.nix
··· 1 - { lib, stdenv, fetchFromGitHub, cmake, pkg-config, boost, gnuradio 2 - , pythonSupport ? true, python, swig, limesuite, log4cpp 3 - } : 4 - 5 - assert pythonSupport -> python != null && swig != null; 6 - 7 - let 8 - version = "2.0.0"; 9 - 10 - in stdenv.mkDerivation { 11 - pname = "gr-limesdr"; 12 - inherit version; 13 - 14 - src = fetchFromGitHub { 15 - owner = "myriadrf"; 16 - repo = "gr-limesdr"; 17 - rev = "v${version}"; 18 - sha256 = "0ldqvfwl0gil89l9s31fjf9d7ki0dk572i8vna336igfaz348ypq"; 19 - }; 20 - 21 - nativeBuildInputs = [ 22 - cmake 23 - pkg-config 24 - ] ++ lib.optionals pythonSupport [ swig ]; 25 - 26 - buildInputs = [ 27 - boost gnuradio limesuite log4cpp 28 - ] ++ lib.optionals pythonSupport [ python ]; 29 - 30 - 31 - meta = with lib; { 32 - description = "Gnuradio source and sink blocks for LimeSDR"; 33 - homepage = "https://wiki.myriadrf.org/Gr-limesdr_Plugin_for_GNURadio"; 34 - license = licenses.mit; 35 - platforms = platforms.linux; 36 - maintainers = [ maintainers.markuskowa ]; 37 - }; 38 - }
···
-37
pkgs/applications/radio/gnuradio/nacl.nix
··· 1 - { lib, stdenv, fetchFromGitHub, cmake, pkg-config, boost, gnuradio, uhd 2 - , makeWrapper, libsodium, cppunit, log4cpp 3 - , pythonSupport ? true, python, swig 4 - }: 5 - 6 - assert pythonSupport -> python != null && swig != null; 7 - 8 - stdenv.mkDerivation { 9 - pname = "gr-nacl"; 10 - version = "2017-04-10"; 11 - 12 - src = fetchFromGitHub { 13 - owner = "stwunsch"; 14 - repo = "gr-nacl"; 15 - rev = "15276bb0fcabf5fe4de4e58df3d579b5be0e9765"; 16 - sha256 = "018np0qlk61l7mlv3xxx5cj1rax8f1vqrsrch3higsl25yydbv7v"; 17 - }; 18 - 19 - nativeBuildInputs = [ cmake pkg-config ]; 20 - buildInputs = [ 21 - boost gnuradio uhd makeWrapper libsodium cppunit log4cpp 22 - ] ++ lib.optionals pythonSupport [ python swig ]; 23 - 24 - postInstall = '' 25 - for prog in "$out"/bin/*; do 26 - wrapProgram "$prog" --set PYTHONPATH $PYTHONPATH:$(toPythonPath "$out") 27 - done 28 - ''; 29 - 30 - meta = with lib; { 31 - description = "Gnuradio block for encryption"; 32 - homepage = "https://github.com/stwunsch/gr-nacl"; 33 - license = licenses.gpl3Plus; 34 - platforms = platforms.linux ++ platforms.darwin; 35 - maintainers = with maintainers; [ mog ]; 36 - }; 37 - }
···
-45
pkgs/applications/radio/gnuradio/osmosdr.nix
··· 1 - { lib, stdenv, fetchgit, cmake, pkg-config, makeWrapper 2 - , boost 3 - , pythonSupport ? true, python, swig 4 - , airspy 5 - , gnuradio 6 - , hackrf 7 - , libbladeRF 8 - , rtl-sdr 9 - , soapysdr-with-plugins 10 - , uhd 11 - , log4cpp 12 - }: 13 - 14 - assert pythonSupport -> python != null && swig != null; 15 - 16 - stdenv.mkDerivation rec { 17 - pname = "gr-osmosdr"; 18 - version = "0.1.5"; 19 - 20 - src = fetchgit { 21 - url = "git://git.osmocom.org/gr-osmosdr"; 22 - rev = "v${version}"; 23 - sha256 = "0bf9bnc1c3c4yqqqgmg3nhygj6rcfmyk6pybi27f7461d2cw1drv"; 24 - }; 25 - 26 - nativeBuildInputs = [ cmake makeWrapper pkg-config ]; 27 - buildInputs = [ 28 - boost log4cpp airspy gnuradio hackrf libbladeRF rtl-sdr uhd 29 - ] ++ lib.optionals stdenv.isLinux [ soapysdr-with-plugins ] 30 - ++ lib.optionals pythonSupport [ python swig python.pkgs.cheetah ]; 31 - 32 - postInstall = '' 33 - for prog in "$out"/bin/*; do 34 - wrapProgram "$prog" --set PYTHONPATH $PYTHONPATH:$(toPythonPath "$out") 35 - done 36 - ''; 37 - 38 - meta = with lib; { 39 - description = "Gnuradio block for OsmoSDR and rtl-sdr"; 40 - homepage = "https://sdr.osmocom.org/trac/wiki/GrOsmoSDR"; 41 - license = licenses.gpl3Plus; 42 - platforms = platforms.linux ++ platforms.darwin; 43 - maintainers = with maintainers; [ bjornfor ]; 44 - }; 45 - }
···
-36
pkgs/applications/radio/gnuradio/rds.nix
··· 1 - { lib, stdenv, fetchFromGitHub, cmake, pkg-config, boost, gnuradio, log4cpp 2 - , makeWrapper, pythonSupport ? true, python, swig 3 - }: 4 - 5 - assert pythonSupport -> python != null && swig != null; 6 - 7 - stdenv.mkDerivation rec { 8 - pname = "gr-rds"; 9 - version = "1.1.0"; 10 - 11 - src = fetchFromGitHub { 12 - owner = "bastibl"; 13 - repo = "gr-rds"; 14 - rev = "v${version}"; 15 - sha256 = "0jkzchvw0ivcxsjhi1h0mf7k13araxf5m4wi5v9xdgqxvipjzqfy"; 16 - }; 17 - 18 - nativeBuildInputs = [ cmake pkg-config ]; 19 - buildInputs = [ 20 - boost gnuradio makeWrapper log4cpp 21 - ] ++ lib.optionals pythonSupport [ python swig ]; 22 - 23 - postInstall = '' 24 - for prog in "$out"/bin/*; do 25 - wrapProgram "$prog" --set PYTHONPATH $PYTHONPATH:$(toPythonPath "$out") 26 - done 27 - ''; 28 - 29 - meta = with lib; { 30 - description = "Gnuradio block for radio data system"; 31 - homepage = "https://github.com/bastibl/gr-rds"; 32 - license = licenses.gpl2Plus; 33 - platforms = platforms.linux ++ platforms.darwin; 34 - maintainers = with maintainers; [ mog ]; 35 - }; 36 - }
···
+4 -5
pkgs/applications/radio/gnuradio/shared.nix
··· 85 ; 86 postInstall = "" 87 # Gcc references 88 - + lib.optionalString (hasFeature "volk" features) '' 89 - ${removeReferencesTo}/bin/remove-references-to -t ${stdenv.cc} $(readlink -f $out/lib/libvolk.so) 90 - '' 91 + lib.optionalString (hasFeature "gnuradio-runtime" features) '' 92 ${removeReferencesTo}/bin/remove-references-to -t ${stdenv.cc} $(readlink -f $out/lib/libgnuradio-runtime.so) 93 '' ··· 103 features 104 featuresInfo 105 python 106 - qt 107 - gtk 108 ; 109 }; 110 # Wrapping is done with an external wrapper 111 dontWrapPythonPrograms = true;
··· 85 ; 86 postInstall = "" 87 # Gcc references 88 + lib.optionalString (hasFeature "gnuradio-runtime" features) '' 89 ${removeReferencesTo}/bin/remove-references-to -t ${stdenv.cc} $(readlink -f $out/lib/libgnuradio-runtime.so) 90 '' ··· 100 features 101 featuresInfo 102 python 103 ; 104 + } // lib.optionalAttrs (hasFeature "gr-qtgui" features) { 105 + inherit qt; 106 + } // lib.optionalAttrs (hasFeature "gnuradio-companion" features) { 107 + inherit gtk; 108 }; 109 # Wrapping is done with an external wrapper 110 dontWrapPythonPrograms = true;
+86 -39
pkgs/applications/radio/gnuradio/wrapper.nix
··· 1 { lib 2 , stdenv 3 , unwrapped 4 , makeWrapper 5 # For lndir 6 , xorg 7 # For Emulating wrapGAppsHook 8 , gsettings-desktop-schemas 9 , glib ··· 37 [] 38 ) 39 ) unwrapped.featuresInfo) 40 - ++ lib.optionals (unwrapped.hasFeature "python-support" unwrapped.features) [ 41 - # Add unwrapped itself as a python module 42 - (unwrapped.python.pkgs.toPythonModule unwrapped) 43 - ] 44 ; 45 - python3Env = unwrapped.python.withPackages(ps: pythonPkgs); 46 47 name = (lib.appendToName "wrapped" unwrapped).name; 48 makeWrapperArgs = builtins.concatStringsSep " " ([ ··· 88 (if unwrapped.versionAttr.major == "3.8" then 89 [ 90 "--prefix" "QT_PLUGIN_PATH" ":" 91 - "${lib.getBin unwrapped.qt.qtbase}/${unwrapped.qt.qtbase.qtPluginPrefix}" 92 "--prefix" "QML2_IMPORT_PATH" ":" 93 - "${lib.getBin unwrapped.qt.qtbase}/${unwrapped.qt.qtbase.qtQmlPrefix}" 94 ] 95 else 96 - # TODO: Add here qt4 related environment for 3.7? 97 [ 98 99 ] 100 ) 101 ++ extraMakeWrapperArgs 102 ); 103 - in 104 - stdenv.mkDerivation { 105 - inherit name; 106 107 - buildInputs = [ 108 - makeWrapper 109 - xorg.lndir 110 - ]; 111 - 112 - passthru = { 113 - inherit python3Env pythonPkgs unwrapped; 114 }; 115 - 116 - buildCommand = '' 117 - mkdir $out 118 - cd $out 119 - lndir -silent ${unwrapped} 120 - for i in $out/bin/*; do 121 - if [[ ! -x "$i" ]]; then 122 - continue 123 - fi 124 - cp -L "$i" "$i".tmp 125 - mv -f "$i".tmp "$i" 126 - if head -1 "$i" | grep -q ${unwrapped.python}; then 127 - substituteInPlace "$i" \ 128 - --replace ${unwrapped.python} ${python3Env} 129 - fi 130 - wrapProgram "$i" ${makeWrapperArgs} 131 - done 132 - ''; 133 - 134 - inherit (unwrapped) meta; 135 - }
··· 1 { lib 2 , stdenv 3 + # The unwrapped gnuradio derivation 4 , unwrapped 5 + # If it's a minimal build, we don't want to wrap it with lndir and 6 + # wrapProgram.. 7 + , wrap ? true 8 + # For the wrapper 9 , makeWrapper 10 # For lndir 11 , xorg 12 + # To define a the gnuradio.pkgs scope 13 + , newScope 14 # For Emulating wrapGAppsHook 15 , gsettings-desktop-schemas 16 , glib ··· 44 [] 45 ) 46 ) unwrapped.featuresInfo) 47 + ++ lib.optionals 48 + (unwrapped.hasFeature "python-support" unwrapped.features) 49 + ( 50 + # Add unwrapped itself as a python module 51 + [ (unwrapped.python.pkgs.toPythonModule unwrapped) ] 52 + # Add all extraPackages as python modules 53 + ++ (builtins.map unwrapped.python.pkgs.toPythonModule extraPackages) 54 + ) 55 ; 56 + pythonEnv = unwrapped.python.withPackages(ps: pythonPkgs); 57 58 name = (lib.appendToName "wrapped" unwrapped).name; 59 makeWrapperArgs = builtins.concatStringsSep " " ([ ··· 99 (if unwrapped.versionAttr.major == "3.8" then 100 [ 101 "--prefix" "QT_PLUGIN_PATH" ":" 102 + "${ 103 + lib.makeSearchPath 104 + unwrapped.qt.qtbase.qtPluginPrefix 105 + (builtins.map lib.getBin [ 106 + unwrapped.qt.qtbase 107 + unwrapped.qt.qtwayland 108 + ]) 109 + }" 110 "--prefix" "QML2_IMPORT_PATH" ":" 111 + "${ 112 + lib.makeSearchPath 113 + unwrapped.qt.qtbase.qtQmlPrefix 114 + (builtins.map lib.getBin [ 115 + unwrapped.qt.qtbase 116 + unwrapped.qt.qtwayland 117 + ]) 118 + }" 119 ] 120 else 121 + # Add here qt4 related environment for 3.7? 122 [ 123 124 ] 125 ) 126 ++ extraMakeWrapperArgs 127 ); 128 129 + packages = import ../../../top-level/gnuradio-packages.nix { 130 + inherit lib stdenv newScope; 131 + gnuradio = unwrapped; 132 + }; 133 + passthru = unwrapped.passthru // { 134 + inherit 135 + pythonEnv 136 + pythonPkgs 137 + unwrapped 138 + ; 139 + pkgs = packages; 140 }; 141 + self = if wrap then 142 + stdenv.mkDerivation { 143 + inherit name passthru; 144 + buildInputs = [ 145 + makeWrapper 146 + xorg.lndir 147 + ]; 148 + buildCommand = '' 149 + mkdir $out 150 + cd $out 151 + lndir -silent ${unwrapped} 152 + ${lib.optionalString 153 + (extraPackages != []) 154 + (builtins.concatStringsSep "\n" 155 + (builtins.map (pkg: '' 156 + if [[ -d ${lib.getBin pkg}/bin/ ]]; then 157 + lndir -silent ${pkg}/bin ./bin 158 + fi 159 + '') extraPackages) 160 + ) 161 + } 162 + for i in $out/bin/*; do 163 + if [[ ! -x "$i" ]]; then 164 + continue 165 + fi 166 + cp -L "$i" "$i".tmp 167 + mv -f "$i".tmp "$i" 168 + if head -1 "$i" | grep -q ${unwrapped.python}; then 169 + substituteInPlace "$i" \ 170 + --replace ${unwrapped.python} ${pythonEnv} 171 + fi 172 + wrapProgram "$i" ${makeWrapperArgs} 173 + done 174 + ''; 175 + inherit (unwrapped) meta; 176 + } 177 + else 178 + unwrapped.overrideAttrs(_: { 179 + inherit passthru; 180 + }) 181 + ; 182 + in self
+30 -6
pkgs/applications/radio/gqrx/default.nix
··· 1 - { lib, fetchFromGitHub, cmake, qtbase, qtsvg, gnuradio, boost, gr-osmosdr 2 - , mkDerivation 3 # drivers (optional): 4 - , rtl-sdr, hackrf 5 , pulseaudioSupport ? true, libpulseaudio 6 }: 7 8 assert pulseaudioSupport -> libpulseaudio != null; 9 10 - mkDerivation rec { 11 pname = "gqrx"; 12 version = "2.14.4"; 13 ··· 18 sha256 = "sha256-mMaxu0jq2GaNLWjLsJQXx+zCxtyiCAZQJJZ8GJtnllQ="; 19 }; 20 21 - nativeBuildInputs = [ cmake ]; 22 buildInputs = [ 23 - qtbase qtsvg gnuradio boost gr-osmosdr rtl-sdr hackrf 24 ] ++ lib.optionals pulseaudioSupport [ libpulseaudio ]; 25 26 postInstall = ''
··· 1 + { lib 2 + , fetchFromGitHub 3 + , cmake 4 + , pkg-config 5 + , qt5 6 + , gnuradio3_8Minimal 7 + , log4cpp 8 + , mpir 9 + , fftwFloat 10 + , alsaLib 11 + , libjack2 12 # drivers (optional): 13 + , rtl-sdr 14 + , hackrf 15 , pulseaudioSupport ? true, libpulseaudio 16 }: 17 18 assert pulseaudioSupport -> libpulseaudio != null; 19 20 + gnuradio3_8Minimal.pkgs.mkDerivation rec { 21 pname = "gqrx"; 22 version = "2.14.4"; 23 ··· 28 sha256 = "sha256-mMaxu0jq2GaNLWjLsJQXx+zCxtyiCAZQJJZ8GJtnllQ="; 29 }; 30 31 + nativeBuildInputs = [ 32 + cmake 33 + pkg-config 34 + qt5.wrapQtAppsHook 35 + ]; 36 buildInputs = [ 37 + log4cpp 38 + mpir 39 + fftwFloat 40 + alsaLib 41 + libjack2 42 + gnuradio3_8Minimal.unwrapped.boost 43 + qt5.qtbase 44 + qt5.qtsvg 45 + gnuradio3_8Minimal.pkgs.osmosdr 46 + rtl-sdr 47 + hackrf 48 ] ++ lib.optionals pulseaudioSupport [ libpulseaudio ]; 49 50 postInstall = ''
+9 -10
pkgs/applications/radio/inspectrum/default.nix
··· 1 { lib 2 - , mkDerivation 3 , fetchFromGitHub 4 , pkg-config 5 , cmake 6 - , boost 7 , fftwFloat 8 - , gnuradio 9 , liquid-dsp 10 - , qtbase 11 - , wrapQtAppsHook 12 }: 13 14 - mkDerivation rec { 15 pname = "inspectrum"; 16 version = "0.2.3"; 17 ··· 22 sha256 = "1x6nyn429pk0f7lqzskrgsbq09mq5787xd4piic95add6n1cc355"; 23 }; 24 25 - nativeBuildInputs = [ cmake pkg-config wrapQtAppsHook ]; 26 buildInputs = [ 27 fftwFloat 28 - boost 29 - gnuradio 30 liquid-dsp 31 - qtbase 32 ]; 33 34 meta = with lib; {
··· 1 { lib 2 + , gnuradio3_8Minimal 3 , fetchFromGitHub 4 , pkg-config 5 , cmake 6 , fftwFloat 7 + , qt5 8 , liquid-dsp 9 }: 10 11 + gnuradio3_8Minimal.pkgs.mkDerivation rec { 12 pname = "inspectrum"; 13 version = "0.2.3"; 14 ··· 19 sha256 = "1x6nyn429pk0f7lqzskrgsbq09mq5787xd4piic95add6n1cc355"; 20 }; 21 22 + nativeBuildInputs = [ 23 + cmake 24 + qt5.wrapQtAppsHook 25 + pkg-config 26 + ]; 27 buildInputs = [ 28 fftwFloat 29 liquid-dsp 30 + qt5.qtbase 31 ]; 32 33 meta = with lib; {
+44 -24
pkgs/applications/radio/qradiolink/default.nix
··· 1 - { lib, stdenv, fetchFromGitHub, alsaLib, boost 2 - , qt4, libpulseaudio, codec2, libconfig 3 - , gnuradio, gr-osmosdr, gsm 4 - , libopus, libjpeg, protobuf, qwt, speex 5 - } : 6 - 7 - let 8 - version = "0.5.0"; 9 10 - in stdenv.mkDerivation { 11 pname = "qradiolink"; 12 - inherit version; 13 14 src = fetchFromGitHub { 15 - owner = "kantooon"; 16 repo = "qradiolink"; 17 rev = version; 18 - sha256 = "0xhg5zhjznmls5m3rhpk1qx0dipxmca12s85w15d0i7qwva2f1gi"; 19 }; 20 21 preBuild = '' 22 - cd ext 23 protoc --cpp_out=. Mumble.proto 24 protoc --cpp_out=. QRadioLink.proto 25 - cd .. 26 qmake 27 ''; 28 29 installPhase = '' 30 - mkdir -p $out/bin 31 - cp qradiolink $out/bin 32 ''; 33 34 buildInputs = [ 35 - qt4 36 - alsaLib 37 - boost 38 - libpulseaudio 39 codec2 40 libconfig 41 gsm 42 - gnuradio 43 - gr-osmosdr 44 libopus 45 libjpeg 46 protobuf 47 - speex 48 - qwt 49 ]; 50 51 enableParallelBuilding = true;
··· 1 + { lib 2 + , fetchFromGitHub 3 + , libpulseaudio 4 + , libconfig 5 + # Needs a gnuradio built with qt gui support 6 + , gnuradio3_8 7 + # Not gnuradioPackages' 8 + , codec2 9 + , log4cpp 10 + , gmp 11 + , gsm 12 + , libopus 13 + , libjpeg 14 + , libsndfile 15 + , libftdi 16 + , protobuf 17 + , speex 18 + , speexdsp 19 + }: 20 21 + gnuradio3_8.pkgs.mkDerivation rec { 22 pname = "qradiolink"; 23 + version = "0.8.5-2"; 24 25 src = fetchFromGitHub { 26 + owner = "qradiolink"; 27 repo = "qradiolink"; 28 rev = version; 29 + sha256 = "MgHfKR3AJW3pIN9oCBr4BWxk1fGSCpLmMzjxvuTmuFA="; 30 }; 31 32 preBuild = '' 33 + cd src/ext 34 protoc --cpp_out=. Mumble.proto 35 protoc --cpp_out=. QRadioLink.proto 36 + cd ../.. 37 qmake 38 ''; 39 40 installPhase = '' 41 + install -D qradiolink $out/bin/qradiolink 42 + install -Dm644 src/res/icon.png $out/share/pixmaps/qradiolink.png 43 + install -Dm644 qradiolink.desktop $out/share/applications/qradiolink.desktop 44 ''; 45 46 buildInputs = [ 47 + gnuradio3_8.unwrapped.boost 48 codec2 49 + log4cpp 50 + gmp 51 + libpulseaudio 52 libconfig 53 gsm 54 + gnuradio3_8.pkgs.osmosdr 55 libopus 56 libjpeg 57 + speex 58 + speexdsp 59 + gnuradio3_8.qt.qtbase 60 + gnuradio3_8.qt.qtmultimedia 61 + libftdi 62 + libsndfile 63 + gnuradio3_8.qwt 64 + ]; 65 + nativeBuildInputs = [ 66 protobuf 67 + gnuradio3_8.qt.qmake 68 + gnuradio3_8.qt.wrapQtAppsHook 69 ]; 70 71 enableParallelBuilding = true;
+159
pkgs/applications/radio/uhd/3.5.nix
···
··· 1 + { lib 2 + , stdenv 3 + , fetchurl 4 + , fetchFromGitHub 5 + , cmake 6 + , pkg-config 7 + # See https://files.ettus.com/manual_archive/v3.15.0.0/html/page_build_guide.html for dependencies explanations 8 + , boost 9 + , enableLibuhd_C_api ? true 10 + # requires numpy 11 + , enableLibuhd_Python_api ? false 12 + , python3 13 + , enableExamples ? false 14 + , enableUtils ? false 15 + , enableLiberio ? false 16 + , liberio 17 + , libusb1 18 + , enableDpdk ? false 19 + , dpdk 20 + # Devices 21 + , enableOctoClock ? true 22 + , enableMpmd ? true 23 + , enableB100 ? true 24 + , enableB200 ? true 25 + , enableUsrp1 ? true 26 + , enableUsrp2 ? true 27 + , enableX300 ? true 28 + , enableN230 ? true 29 + , enableN300 ? true 30 + , enableN320 ? true 31 + , enableE300 ? true 32 + , enableE320 ? true 33 + }: 34 + 35 + let 36 + onOffBool = b: if b then "ON" else "OFF"; 37 + inherit (lib) optionals; 38 + in 39 + 40 + stdenv.mkDerivation rec { 41 + pname = "uhd"; 42 + # UHD seems to use three different version number styles: x.y.z, xxx_yyy_zzz 43 + # and xxx.yyy.zzz. Hrmpf... style keeps changing 44 + version = "3.15.0.0"; 45 + 46 + src = fetchFromGitHub { 47 + owner = "EttusResearch"; 48 + repo = "uhd"; 49 + rev = "v${version}"; 50 + sha256 = "0jknln88a69fh244670nb7qrflbyv0vvdxfddb5g8ncpb6hcg8qf"; 51 + }; 52 + # Firmware images are downloaded (pre-built) from the respective release on Github 53 + uhdImagesSrc = fetchurl { 54 + url = "https://github.com/EttusResearch/uhd/releases/download/v${version}/uhd-images_${version}.tar.xz"; 55 + sha256 = "1fir1a13ac07mqhm4sr34cixiqj2difxq0870qv1wr7a7cbfw6vp"; 56 + }; 57 + 58 + cmakeFlags = [ 59 + "-DENABLE_LIBUHD=ON" 60 + "-DENABLE_USB=ON" 61 + "-DENABLE_TESTS=ON" # This installs tests as well so we delete them via postPhases 62 + "-DENABLE_EXAMPLES=${onOffBool enableExamples}" 63 + "-DENABLE_UTILS=${onOffBool enableUtils}" 64 + "-DENABLE_LIBUHD_C_API=${onOffBool enableLibuhd_C_api}" 65 + "-DENABLE_LIBUHD_PYTHON_API=${onOffBool enableLibuhd_Python_api}" 66 + "-DENABLE_LIBERIO=${onOffBool enableLiberio}" 67 + "-DENABLE_DPDK=${onOffBool enableDpdk}" 68 + # Devices 69 + "-DENABLE_OCTOCLOCK=${onOffBool enableOctoClock}" 70 + "-DENABLE_MPMD=${onOffBool enableMpmd}" 71 + "-DENABLE_B100=${onOffBool enableB100}" 72 + "-DENABLE_B200=${onOffBool enableB200}" 73 + "-DENABLE_USRP1=${onOffBool enableUsrp1}" 74 + "-DENABLE_USRP2=${onOffBool enableUsrp2}" 75 + "-DENABLE_X300=${onOffBool enableX300}" 76 + "-DENABLE_N230=${onOffBool enableN230}" 77 + "-DENABLE_N300=${onOffBool enableN300}" 78 + "-DENABLE_N320=${onOffBool enableN320}" 79 + "-DENABLE_E300=${onOffBool enableE300}" 80 + "-DENABLE_E320=${onOffBool enableE320}" 81 + ] 82 + # TODO: Check if this still needed 83 + # ABI differences GCC 7.1 84 + # /nix/store/wd6r25miqbk9ia53pp669gn4wrg9n9cj-gcc-7.3.0/include/c++/7.3.0/bits/vector.tcc:394:7: note: parameter passing for argument of type 'std::vector<uhd::range_t>::iterator {aka __gnu_cxx::__normal_iterator<uhd::range_t*, std::vector<uhd::range_t> >}' changed in GCC 7.1 85 + ++ [ (lib.optionalString stdenv.isAarch32 "-DCMAKE_CXX_FLAGS=-Wno-psabi") ] 86 + ; 87 + 88 + # Python + Mako are always required for the build itself but not necessary for runtime. 89 + pythonEnv = python3.withPackages (ps: with ps; [ Mako ] 90 + ++ optionals (enableLibuhd_Python_api) [ numpy setuptools ] 91 + ++ optionals (enableUtils) [ requests six ] 92 + ); 93 + 94 + nativeBuildInputs = [ 95 + cmake 96 + pkg-config 97 + ] 98 + # If both enableLibuhd_Python_api and enableUtils are off, we don't need 99 + # pythonEnv in buildInputs as it's a 'build' dependency and not a runtime 100 + # dependency 101 + ++ optionals (!enableLibuhd_Python_api && !enableUtils) [ pythonEnv ] 102 + ; 103 + buildInputs = [ 104 + boost 105 + libusb1 106 + ] 107 + # However, if enableLibuhd_Python_api *or* enableUtils is on, we need 108 + # pythonEnv for runtime as well. The utilities' runtime dependencies are 109 + # handled at the environment 110 + ++ optionals (enableLibuhd_Python_api || enableUtils) [ pythonEnv ] 111 + ++ optionals (enableLiberio) [ liberio ] 112 + ++ optionals (enableDpdk) [ dpdk ] 113 + ; 114 + 115 + doCheck = true; 116 + 117 + # Build only the host software 118 + preConfigure = "cd host"; 119 + # TODO: Check if this still needed, perhaps relevant: 120 + # https://files.ettus.com/manual_archive/v3.15.0.0/html/page_build_guide.html#build_instructions_unix_arm 121 + patches = if stdenv.isAarch32 then ./neon.patch else null; 122 + 123 + postPhases = [ "installFirmware" "removeInstalledTests" ] 124 + ++ optionals (enableUtils) [ "moveUdevRules" ] 125 + ; 126 + 127 + # UHD expects images in `$CMAKE_INSTALL_PREFIX/share/uhd/images` 128 + installFirmware = '' 129 + mkdir -p "$out/share/uhd/images" 130 + tar --strip-components=1 -xvf "${uhdImagesSrc}" -C "$out/share/uhd/images" 131 + ''; 132 + 133 + # -DENABLE_TESTS=ON installs the tests, we don't need them in the output 134 + removeInstalledTests = '' 135 + rm -r $out/lib/uhd/tests 136 + ''; 137 + 138 + # Moves the udev rules to the standard location, needed only if utils are 139 + # enabled 140 + moveUdevRules = '' 141 + mkdir -p $out/lib/udev/rules.d 142 + mv $out/lib/uhd/utils/uhd-usrp.rules $out/lib/udev/rules.d/ 143 + ''; 144 + 145 + meta = with lib; { 146 + description = "USRP Hardware Driver (for Software Defined Radio)"; 147 + longDescription = '' 148 + The USRP Hardware Driver (UHD) software is the hardware driver for all 149 + USRP (Universal Software Radio Peripheral) devices. 150 + 151 + USRP devices are designed and sold by Ettus Research, LLC and its parent 152 + company, National Instruments. 153 + ''; 154 + homepage = "https://uhd.ettus.com/"; 155 + license = licenses.gpl3Plus; 156 + platforms = platforms.linux ++ platforms.darwin; 157 + maintainers = with maintainers; [ bjornfor fpletz tomberek ]; 158 + }; 159 + }
+9 -8
pkgs/applications/radio/uhd/default.nix
··· 1 - { lib, stdenv 2 , fetchurl 3 , fetchFromGitHub 4 , cmake ··· 8 , enableLibuhd_C_api ? true 9 # requires numpy 10 , enableLibuhd_Python_api ? false 11 - , python3 ? null 12 , enableExamples ? false 13 , enableUtils ? false 14 , enableLiberio ? false 15 - , liberio ? null 16 - , libusb1 ? null 17 , enableDpdk ? false 18 - , dpdk ? null 19 # Devices 20 , enableOctoClock ? true 21 , enableMpmd ? true ··· 40 pname = "uhd"; 41 # UHD seems to use three different version number styles: x.y.z, xxx_yyy_zzz 42 # and xxx.yyy.zzz. Hrmpf... style keeps changing 43 - version = "3.15.0.0"; 44 45 src = fetchFromGitHub { 46 owner = "EttusResearch"; 47 repo = "uhd"; 48 rev = "v${version}"; 49 - sha256 = "0jknln88a69fh244670nb7qrflbyv0vvdxfddb5g8ncpb6hcg8qf"; 50 }; 51 # Firmware images are downloaded (pre-built) from the respective release on Github 52 uhdImagesSrc = fetchurl { 53 url = "https://github.com/EttusResearch/uhd/releases/download/v${version}/uhd-images_${version}.tar.xz"; 54 - sha256 = "1fir1a13ac07mqhm4sr34cixiqj2difxq0870qv1wr7a7cbfw6vp"; 55 }; 56 57 cmakeFlags = [
··· 1 + { lib 2 + , stdenv 3 , fetchurl 4 , fetchFromGitHub 5 , cmake ··· 9 , enableLibuhd_C_api ? true 10 # requires numpy 11 , enableLibuhd_Python_api ? false 12 + , python3 13 , enableExamples ? false 14 , enableUtils ? false 15 , enableLiberio ? false 16 + , liberio 17 + , libusb1 18 , enableDpdk ? false 19 + , dpdk 20 # Devices 21 , enableOctoClock ? true 22 , enableMpmd ? true ··· 41 pname = "uhd"; 42 # UHD seems to use three different version number styles: x.y.z, xxx_yyy_zzz 43 # and xxx.yyy.zzz. Hrmpf... style keeps changing 44 + version = "4.0.0.0"; 45 46 src = fetchFromGitHub { 47 owner = "EttusResearch"; 48 repo = "uhd"; 49 rev = "v${version}"; 50 + sha256 = "NCyiI4pIPw0nBRFdUGpgZ/x2mWz+Qm78ZGACUnSbGSs="; 51 }; 52 # Firmware images are downloaded (pre-built) from the respective release on Github 53 uhdImagesSrc = fetchurl { 54 url = "https://github.com/EttusResearch/uhd/releases/download/v${version}/uhd-images_${version}.tar.xz"; 55 + sha256 = "Xfx0bsHUQ5+Dp+xk0sVWWP83oyXQcUH5AX4PNEE7fY4="; 56 }; 57 58 cmakeFlags = [
+12 -248
pkgs/applications/video/kodi/default.nix
··· 1 - { stdenv, lib, fetchFromGitHub, autoconf, automake, libtool, makeWrapper 2 - , pkg-config, cmake, gnumake, yasm, python3Packages 3 - , libgcrypt, libgpgerror, libunistring 4 - , boost, avahi, lame 5 - , gettext, pcre-cpp, yajl, fribidi, which 6 - , openssl, gperf, tinyxml2, taglib, libssh, swig, jre_headless 7 - , gtest, ncurses, spdlog 8 - , libxml2, systemd 9 - , alsaLib, libGLU, libGL, fontconfig, freetype, ftgl 10 - , libjpeg, libpng, libtiff 11 - , libmpeg2, libsamplerate, libmad 12 - , libogg, libvorbis, flac, libxslt 13 - , lzo, libcdio, libmodplug, libass, libbluray 14 - , sqlite, libmysqlclient, nasm, gnutls, libva, libdrm 15 - , curl, bzip2, zip, unzip, glxinfo 16 - , libcec, libcec_platform, dcadec, libuuid 17 - , libcrossguid, libmicrohttpd 18 - , bluez, doxygen, giflib, glib, harfbuzz, lcms2, libidn, libpthreadstubs, libtasn1 19 - , libplist, p11-kit, zlib, flatbuffers, fmt, fstrcmp, rapidjson 20 - , lirc 21 - , x11Support ? true, libX11, xorgproto, libXt, libXmu, libXext, libXinerama, libXrandr, libXtst, libXfixes, xdpyinfo, libXdmcp 22 - , dbusSupport ? true, dbus ? null 23 - , joystickSupport ? true, cwiid ? null 24 - , nfsSupport ? true, libnfs ? null 25 - , pulseSupport ? true, libpulseaudio ? null 26 - , rtmpSupport ? true, rtmpdump ? null 27 - , sambaSupport ? true, samba ? null 28 - , udevSupport ? true, udev ? null 29 - , usbSupport ? false, libusb-compat-0_1 ? null 30 - , vdpauSupport ? true, libvdpau ? null 31 - , useWayland ? false, wayland ? null, wayland-protocols ? null 32 - , waylandpp ? null, libxkbcommon ? null 33 - , useGbm ? false, mesa ? null, libinput ? null 34 - , buildPackages 35 - }: 36 - 37 - assert dbusSupport -> dbus != null; 38 - assert nfsSupport -> libnfs != null; 39 - assert pulseSupport -> libpulseaudio != null; 40 - assert rtmpSupport -> rtmpdump != null; 41 - assert sambaSupport -> samba != null; 42 - assert udevSupport -> udev != null; 43 - assert usbSupport -> libusb-compat-0_1 != null && ! udevSupport; # libusb-compat-0_1 won't be used if udev is avaliable 44 - assert vdpauSupport -> libvdpau != null; 45 - assert useWayland -> wayland != null && wayland-protocols != null && waylandpp != null && libxkbcommon != null; 46 - assert useGbm || useWayland || x11Support; 47 - 48 let 49 - kodiReleaseDate = "20210219"; 50 - kodiVersion = "19.0"; 51 - rel = "Matrix"; 52 - 53 - kodi_src = fetchFromGitHub { 54 - owner = "xbmc"; 55 - repo = "xbmc"; 56 - rev = "${kodiVersion}-${rel}"; 57 - sha256 = "097dg6a7v4ia85jx1pmlpwzdpqcqxlrmniqd005q73zvgj67zc2p"; 58 - }; 59 - 60 - ffmpeg = stdenv.mkDerivation rec { 61 - pname = "kodi-ffmpeg"; 62 - version = "4.3.1"; 63 - src = fetchFromGitHub { 64 - owner = "xbmc"; 65 - repo = "FFmpeg"; 66 - rev = "${version}-${rel}-Beta1"; 67 - sha256 = "1c5rwlxn6xj501iw7masdv2p6wb9rkmd299lmlkx97sw1kvxvg2w"; 68 - }; 69 - preConfigure = '' 70 - cp ${kodi_src}/tools/depends/target/ffmpeg/{CMakeLists.txt,*.cmake} . 71 - sed -i 's/ --cpu=''${CPU}//' CMakeLists.txt 72 - sed -i 's/--strip=''${CMAKE_STRIP}/--strip=''${CMAKE_STRIP} --ranlib=''${CMAKE_RANLIB}/' CMakeLists.txt 73 - ''; 74 - cmakeFlags = lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ 75 - "-DCROSSCOMPILING=ON" 76 - "-DCPU=${stdenv.hostPlatform.parsed.cpu.name}" 77 - "-DOS=${stdenv.hostPlatform.parsed.kernel.name}" 78 - "-DPKG_CONFIG_EXECUTABLE=pkg-config" 79 - ]; 80 - buildInputs = [ libidn libtasn1 p11-kit zlib libva ] 81 - ++ lib.optional vdpauSupport libvdpau; 82 - nativeBuildInputs = [ cmake nasm pkg-config gnutls ]; 83 - }; 84 - 85 - # We can build these externally but FindLibDvd.cmake forces us to build it 86 - # them, so we currently just use them for the src. 87 - libdvdcss = fetchFromGitHub { 88 - owner = "xbmc"; 89 - repo = "libdvdcss"; 90 - rev = "1.4.2-${rel}-Beta-5"; 91 - sha256 = "0j41ydzx0imaix069s3z07xqw9q95k7llh06fc27dcn6f7b8ydyl"; 92 - }; 93 - 94 - libdvdnav = fetchFromGitHub { 95 - owner = "xbmc"; 96 - repo = "libdvdnav"; 97 - rev = "6.0.0-${rel}-Alpha-3"; 98 - sha256 = "0qwlf4lgahxqxk1r2pzl866mi03pbp7l1fc0rk522sc0ak2s9jhb"; 99 - }; 100 - 101 - libdvdread = fetchFromGitHub { 102 - owner = "xbmc"; 103 - repo = "libdvdread"; 104 - rev = "6.0.0-${rel}-Alpha-3"; 105 - sha256 = "1xxn01mhkdnp10cqdr357wx77vyzfb5glqpqyg8m0skyi75aii59"; 106 - }; 107 - 108 - kodi_platforms = 109 - lib.optional useGbm "gbm" ++ 110 - lib.optional useWayland "wayland" ++ 111 - lib.optional x11Support "x11" 112 - ; 113 - 114 - in stdenv.mkDerivation { 115 - name = "kodi-${lib.optionalString useWayland "wayland-"}${kodiVersion}"; 116 - 117 - src = kodi_src; 118 - 119 - buildInputs = [ 120 - gnutls libidn libtasn1 nasm p11-kit 121 - libxml2 python3Packages.python 122 - boost libmicrohttpd 123 - gettext pcre-cpp yajl fribidi libva libdrm 124 - openssl gperf tinyxml2 taglib libssh 125 - gtest ncurses spdlog 126 - alsaLib libGL libGLU fontconfig freetype ftgl 127 - libjpeg libpng libtiff 128 - libmpeg2 libsamplerate libmad 129 - libogg libvorbis flac libxslt systemd 130 - lzo libcdio libmodplug libass libbluray 131 - sqlite libmysqlclient avahi lame 132 - curl bzip2 zip glxinfo 133 - libcec libcec_platform dcadec libuuid 134 - libgcrypt libgpgerror libunistring 135 - libcrossguid libplist 136 - bluez giflib glib harfbuzz lcms2 libpthreadstubs 137 - ffmpeg flatbuffers fmt fstrcmp rapidjson 138 - lirc 139 - ] 140 - ++ lib.optional x11Support [ 141 - libX11 xorgproto libXt libXmu libXext.dev libXdmcp 142 - libXinerama libXrandr.dev libXtst libXfixes 143 - ] 144 - ++ lib.optional dbusSupport dbus 145 - ++ lib.optional joystickSupport cwiid 146 - ++ lib.optional nfsSupport libnfs 147 - ++ lib.optional pulseSupport libpulseaudio 148 - ++ lib.optional rtmpSupport rtmpdump 149 - ++ lib.optional sambaSupport samba 150 - ++ lib.optional udevSupport udev 151 - ++ lib.optional usbSupport libusb-compat-0_1 152 - ++ lib.optional vdpauSupport libvdpau 153 - ++ lib.optionals useWayland [ 154 - wayland 155 - waylandpp.dev 156 - wayland-protocols 157 - # Not sure why ".dev" is needed here, but CMake doesn't find libxkbcommon otherwise 158 - libxkbcommon.dev 159 - ] 160 - ++ lib.optional useGbm [ 161 - libxkbcommon.dev 162 - mesa.dev 163 - libinput.dev 164 - ]; 165 - 166 - nativeBuildInputs = [ 167 - cmake 168 - doxygen 169 - makeWrapper 170 - which 171 - pkg-config gnumake 172 - autoconf automake libtool # still needed for some components. Check if that is the case with 19.0 173 - jre_headless yasm gettext python3Packages.python flatbuffers 174 - 175 - # for TexturePacker 176 - giflib zlib libpng libjpeg lzo 177 - ] ++ lib.optionals useWayland [ wayland-protocols waylandpp.bin ]; 178 - 179 - depsBuildBuild = [ 180 - buildPackages.stdenv.cc 181 - ]; 182 - 183 - cmakeFlags = [ 184 - "-DAPP_RENDER_SYSTEM=${if useGbm then "gles" else "gl"}" 185 - "-Dlibdvdcss_URL=${libdvdcss}" 186 - "-Dlibdvdnav_URL=${libdvdnav}" 187 - "-Dlibdvdread_URL=${libdvdread}" 188 - "-DGIT_VERSION=${kodiReleaseDate}" 189 - "-DENABLE_EVENTCLIENTS=ON" 190 - "-DENABLE_INTERNAL_CROSSGUID=OFF" 191 - "-DENABLE_OPTICAL=ON" 192 - "-DLIRC_DEVICE=/run/lirc/lircd" 193 - "-DSWIG_EXECUTABLE=${buildPackages.swig}/bin/swig" 194 - "-DFLATBUFFERS_FLATC_EXECUTABLE=${buildPackages.flatbuffers}/bin/flatc" 195 - "-DPYTHON_EXECUTABLE=${buildPackages.python3Packages.python}/bin/python" 196 - ] ++ lib.optional useWayland [ 197 - "-DWAYLANDPP_SCANNER=${buildPackages.waylandpp}/bin/wayland-scanner++" 198 - ]; 199 - 200 - # 14 tests fail but the biggest issue is that every test takes 30 seconds - 201 - # I'm guessing there is a thing waiting to time out 202 - doCheck = false; 203 - 204 - preConfigure = '' 205 - cmakeFlagsArray+=("-DCORE_PLATFORM_NAME=${lib.concatStringsSep " " kodi_platforms}") 206 - '' + lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) '' 207 - # Need these tools on the build system when cross compiling, 208 - # hacky, but have found no other way. 209 - CXX=${stdenv.cc.targetPrefix}c++ LD=ld make -C tools/depends/native/JsonSchemaBuilder 210 - cmakeFlags+=" -DWITH_JSONSCHEMABUILDER=$PWD/tools/depends/native/JsonSchemaBuilder/bin" 211 - 212 - CXX=${stdenv.cc.targetPrefix}c++ LD=ld make EXTRA_CONFIGURE= -C tools/depends/native/TexturePacker 213 - cmakeFlags+=" -DWITH_TEXTUREPACKER=$PWD/tools/depends/native/TexturePacker/bin" 214 - ''; 215 - 216 - postPatch = '' 217 - substituteInPlace xbmc/platform/posix/PosixTimezone.cpp \ 218 - --replace 'usr/share/zoneinfo' 'etc/zoneinfo' 219 - ''; 220 - 221 - postInstall = '' 222 - for p in $(ls $out/bin/) ; do 223 - wrapProgram $out/bin/$p \ 224 - --prefix PATH ":" "${lib.makeBinPath ([ python3Packages.python glxinfo ] ++ lib.optional x11Support xdpyinfo ++ lib.optional sambaSupport samba)}" \ 225 - --prefix LD_LIBRARY_PATH ":" "${lib.makeLibraryPath 226 - ([ curl systemd libmad libvdpau libcec libcec_platform libass ] 227 - ++ lib.optional nfsSupport libnfs 228 - ++ lib.optional rtmpSupport rtmpdump)}" 229 - done 230 - 231 - substituteInPlace $out/share/xsessions/kodi.desktop \ 232 - --replace kodi-standalone $out/bin/kodi-standalone 233 - ''; 234 - 235 - doInstallCheck = true; 236 - 237 - installCheckPhase = "$out/bin/kodi --version"; 238 - 239 - passthru = { 240 - pythonPackages = python3Packages; 241 }; 242 - 243 - meta = with lib; { 244 - description = "Media center"; 245 - homepage = "https://kodi.tv/"; 246 - license = licenses.gpl2; 247 - platforms = platforms.linux; 248 - maintainers = with maintainers; [ titanous edwtjo peterhoeg sephalon ]; 249 - }; 250 - }
··· 1 + { callPackage, ... } @ args: 2 let 3 + unwrapped = callPackage ./unwrapped.nix (removeAttrs args [ "callPackage" ]); 4 + kodiPackages = callPackage ./packages.nix { kodi = unwrapped; }; 5 + in 6 + unwrapped.overrideAttrs (oldAttrs: { 7 + passthru = oldAttrs.passthru // { 8 + packages = kodiPackages; 9 + withPackages = func: callPackage ./wrapper.nix { 10 + kodi = unwrapped; 11 + addons = kodiPackages.requiredKodiAddons (func kodiPackages); 12 + }; 13 }; 14 + })
+78 -75
pkgs/applications/video/kodi/plugins.nix pkgs/applications/video/kodi/packages.nix
··· 1 { lib, stdenv, callPackage, fetchFromGitHub 2 - , cmake, kodiPlain, libcec_platform, tinyxml, pugixml 3 , steam, udev, libusb1, jsoncpp, libhdhomerun, zlib 4 , python3Packages, expat, glib, nspr, nss, openssl 5 , libssh, libarchive, lzma, bzip2, lz4, lzo }: ··· 8 9 let self = rec { 10 11 - pluginDir = "/share/kodi/addons"; 12 rel = "Matrix"; 13 14 - kodi = kodiPlain; 15 16 # Convert derivation to a kodi module. Stolen from ../../../top-level/python-packages.nix 17 - toKodiPlugin = drv: drv.overrideAttrs(oldAttrs: { 18 # Use passthru in order to prevent rebuilds when possible. 19 passthru = (oldAttrs.passthru or {})// { 20 - kodiPluginFor = kodi; 21 - requiredKodiPlugins = requiredKodiPlugins drv.propagatedBuildInputs; 22 }; 23 }); 24 25 - # Check whether a derivation provides a Kodi plugin. 26 - hasKodiPlugin = drv: drv ? kodiPluginFor && drv.kodiPluginFor == kodi; 27 28 - # Get list of required Kodi plugins given a list of derivations. 29 - requiredKodiPlugins = drvs: let 30 - modules = filter hasKodiPlugin drvs; 31 - in unique (modules ++ concatLists (catAttrs "requiredKodiPlugins" modules)); 32 - 33 - kodiWithPlugins = func: callPackage ./wrapper.nix { 34 - inherit kodi; 35 - plugins = requiredKodiPlugins (func self); 36 - }; 37 38 kodi-platform = stdenv.mkDerivation rec { 39 project = "kodi-platform"; ··· 48 }; 49 50 nativeBuildInputs = [ cmake ]; 51 - buildInputs = [ kodiPlain libcec_platform tinyxml ]; 52 }; 53 54 - mkKodiPlugin = { plugin, namespace, version, sourceDir ? null, ... }@args: 55 - toKodiPlugin (stdenv.mkDerivation ({ 56 - name = "kodi-plugin-${plugin}-${version}"; 57 58 dontStrip = true; 59 60 extraRuntimeDependencies = [ ]; 61 62 installPhase = '' 63 - ${if sourceDir == null then "" else "cd $src/$sourceDir"} 64 - d=$out${pluginDir}/${namespace} 65 mkdir -p $d 66 sauce="." 67 [ -d ${namespace} ] && sauce=${namespace} 68 cp -R "$sauce/"* $d 69 ''; 70 - } // args)); 71 72 - mkKodiABIPlugin = { plugin, namespace, version, extraBuildInputs ? [], 73 - extraRuntimeDependencies ? [], extraInstallPhase ? "", ... }@args: 74 - toKodiPlugin (stdenv.mkDerivation ({ 75 - name = "kodi-plugin-${plugin}-${version}"; 76 77 dontStrip = true; 78 79 nativeBuildInputs = [ cmake ]; 80 - buildInputs = [ kodiPlain kodi-platform libcec_platform ] ++ extraBuildInputs; 81 82 inherit extraRuntimeDependencies; 83 ··· 86 "-DOVERRIDE_PATHS=1" 87 ]; 88 89 - # kodi checks for plugin .so libs existance in the addon folder (share/...) 90 # and the non-wrapped kodi lib/... folder before even trying to dlopen 91 # them. Symlinking .so, as setting LD_LIBRARY_PATH is of no use 92 installPhase = let n = namespace; in '' 93 make install 94 - ln -s $out/lib/addons/${n}/${n}.so.${version} $out${pluginDir}/${n}/${n}.so.${version} 95 ${extraInstallPhase} 96 ''; 97 - } // args)); 98 99 - advanced-launcher = mkKodiPlugin rec { 100 101 - plugin = "advanced-launcher"; 102 namespace = "plugin.program.advanced.launcher"; 103 version = "2.5.8"; 104 105 src = fetchFromGitHub { 106 owner = "edwtjo"; 107 - repo = plugin; 108 rev = version; 109 sha256 = "142vvgs37asq5m54xqhjzqvgmb0xlirvm0kz6lxaqynp0vvgrkx2"; 110 }; ··· 127 128 }; 129 130 - advanced-emulator-launcher = mkKodiPlugin rec { 131 132 - plugin = "advanced-emulator-launcher"; 133 namespace = "plugin.program.advanced.emulator.launcher"; 134 version = "0.9.6"; 135 ··· 175 }; 176 177 mkController = controller: { 178 - ${controller} = mkKodiPlugin rec { 179 - plugin = pname + "-" + controller; 180 namespace = "game.controller." + controller; 181 sourceDir = "addons/" + namespace; 182 inherit version src meta; ··· 209 broken = true; # requires port to python3 210 }; 211 in { 212 - service = mkKodiPlugin { 213 - plugin = pname + "-service"; 214 version = "1.2.1"; 215 namespace = "service.hyper.launcher"; 216 inherit src meta; 217 }; 218 - plugin = mkKodiPlugin { 219 - plugin = pname; 220 namespace = "plugin.hyper.launcher"; 221 - inherit version src meta; 222 }; 223 }; 224 225 - joystick = mkKodiABIPlugin rec { 226 namespace = "peripheral.joystick"; 227 version = "1.7.1"; 228 - plugin = namespace; 229 230 src = fetchFromGitHub { 231 owner = "xbmc"; ··· 243 extraBuildInputs = [ tinyxml udev ]; 244 }; 245 246 - simpleplugin = mkKodiPlugin rec { 247 - plugin = "simpleplugin"; 248 namespace = "script.module.simpleplugin"; 249 version = "2.3.2"; 250 ··· 263 }; 264 }; 265 266 - svtplay = mkKodiPlugin rec { 267 268 - plugin = "svtplay"; 269 namespace = "plugin.video.svtplay"; 270 version = "5.1.12"; 271 272 src = fetchFromGitHub { 273 - name = plugin + "-" + version + ".tar.gz"; 274 owner = "nilzen"; 275 - repo = "xbmc-" + plugin; 276 rev = "v${version}"; 277 sha256 = "04j1nhm7mh9chs995lz6bv1vsq5xzk7a7c0lmk4bnfv8jrfpj0w6"; 278 }; ··· 292 293 }; 294 295 - steam-controller = mkKodiABIPlugin rec { 296 namespace = "peripheral.steamcontroller"; 297 version = "0.11.0"; 298 - plugin = namespace; 299 300 src = fetchFromGitHub { 301 owner = "kodi-game"; ··· 314 315 }; 316 317 - steam-launcher = mkKodiPlugin { 318 319 - plugin = "steam-launcher"; 320 namespace = "script.steam.launcher"; 321 version = "3.5.1"; 322 ··· 343 }; 344 }; 345 346 - pdfreader = mkKodiPlugin rec { 347 - plugin = "pdfreader"; 348 namespace = "plugin.image.pdf"; 349 version = "2.0.2"; 350 ··· 362 }; 363 }; 364 365 - pvr-hts = mkKodiABIPlugin rec { 366 367 - plugin = "pvr-hts"; 368 namespace = "pvr.hts"; 369 version = "8.2.2"; 370 ··· 384 385 }; 386 387 - pvr-hdhomerun = mkKodiABIPlugin rec { 388 389 - plugin = "pvr-hdhomerun"; 390 namespace = "pvr.hdhomerun"; 391 version = "7.1.0"; 392 ··· 408 409 }; 410 411 - pvr-iptvsimple = mkKodiABIPlugin rec { 412 413 - plugin = "pvr-iptvsimple"; 414 namespace = "pvr.iptvsimple"; 415 version = "7.4.2"; 416 ··· 432 extraBuildInputs = [ zlib pugixml ]; 433 }; 434 435 - osmc-skin = mkKodiPlugin rec { 436 437 - plugin = "osmc-skin"; 438 namespace = "skin.osmc"; 439 version = "18.0.0"; 440 ··· 454 }; 455 }; 456 457 - yatp = python3Packages.toPythonModule (mkKodiPlugin rec { 458 - plugin = "yatp"; 459 namespace = "plugin.video.yatp"; 460 version = "3.3.2"; 461 ··· 482 }; 483 }); 484 485 - inputstream-adaptive = mkKodiABIPlugin rec { 486 487 - plugin = "inputstream-adaptive"; 488 namespace = "inputstream.adaptive"; 489 version = "2.6.7"; 490 ··· 500 extraRuntimeDependencies = [ glib nspr nss stdenv.cc.cc.lib ]; 501 502 extraInstallPhase = let n = namespace; in '' 503 - ln -s $out/lib/addons/${n}/libssd_wv.so $out/${pluginDir}/${n}/libssd_wv.so 504 ''; 505 506 meta = { ··· 511 }; 512 }; 513 514 - vfs-sftp = mkKodiABIPlugin rec { 515 namespace = "vfs.sftp"; 516 version = "2.0.0"; 517 - plugin = namespace; 518 519 src = fetchFromGitHub { 520 owner = "xbmc"; ··· 533 extraBuildInputs = [ openssl libssh zlib ]; 534 }; 535 536 - vfs-libarchive = mkKodiABIPlugin rec { 537 namespace = "vfs.libarchive"; 538 version = "2.0.0"; 539 - plugin = namespace; 540 541 src = fetchFromGitHub { 542 owner = "xbmc";
··· 1 { lib, stdenv, callPackage, fetchFromGitHub 2 + , cmake, kodi, libcec_platform, tinyxml, pugixml 3 , steam, udev, libusb1, jsoncpp, libhdhomerun, zlib 4 , python3Packages, expat, glib, nspr, nss, openssl 5 , libssh, libarchive, lzma, bzip2, lz4, lzo }: ··· 8 9 let self = rec { 10 11 + addonDir = "/share/kodi/addons"; 12 rel = "Matrix"; 13 14 + inherit kodi; 15 16 # Convert derivation to a kodi module. Stolen from ../../../top-level/python-packages.nix 17 + toKodiAddon = drv: drv.overrideAttrs(oldAttrs: { 18 # Use passthru in order to prevent rebuilds when possible. 19 passthru = (oldAttrs.passthru or {})// { 20 + kodiAddonFor = kodi; 21 + requiredKodiAddons = requiredKodiAddons drv.propagatedBuildInputs; 22 }; 23 }); 24 25 + # Check whether a derivation provides a Kodi addon. 26 + hasKodiAddon = drv: drv ? kodiAddonFor && drv.kodiAddonFor == kodi; 27 28 + # Get list of required Kodi addons given a list of derivations. 29 + requiredKodiAddons = drvs: let 30 + modules = filter hasKodiAddon drvs; 31 + in unique (modules ++ concatLists (catAttrs "requiredKodiAddons" modules)); 32 33 kodi-platform = stdenv.mkDerivation rec { 34 project = "kodi-platform"; ··· 43 }; 44 45 nativeBuildInputs = [ cmake ]; 46 + buildInputs = [ kodi libcec_platform tinyxml ]; 47 }; 48 49 + buildKodiAddon = 50 + { name ? "${attrs.pname}-${attrs.version}" 51 + , namespace 52 + , sourceDir ? "" 53 + , ... } @ attrs: 54 + toKodiAddon (stdenv.mkDerivation ({ 55 + name = "kodi-" + name; 56 57 dontStrip = true; 58 59 extraRuntimeDependencies = [ ]; 60 61 installPhase = '' 62 + cd $src/$sourceDir 63 + d=$out${addonDir}/${namespace} 64 mkdir -p $d 65 sauce="." 66 [ -d ${namespace} ] && sauce=${namespace} 67 cp -R "$sauce/"* $d 68 ''; 69 + } // attrs)); 70 71 + buildKodiBinaryAddon = 72 + { name ? "${attrs.pname}-${attrs.version}" 73 + , namespace 74 + , version 75 + , extraBuildInputs ? [] 76 + , extraRuntimeDependencies ? [] 77 + , extraInstallPhase ? "", ... } @ attrs: 78 + toKodiAddon (stdenv.mkDerivation ({ 79 + name = "kodi-" + name; 80 81 dontStrip = true; 82 83 nativeBuildInputs = [ cmake ]; 84 + buildInputs = [ kodi kodi-platform libcec_platform ] ++ extraBuildInputs; 85 86 inherit extraRuntimeDependencies; 87 ··· 90 "-DOVERRIDE_PATHS=1" 91 ]; 92 93 + # kodi checks for addon .so libs existance in the addon folder (share/...) 94 # and the non-wrapped kodi lib/... folder before even trying to dlopen 95 # them. Symlinking .so, as setting LD_LIBRARY_PATH is of no use 96 installPhase = let n = namespace; in '' 97 make install 98 + ln -s $out/lib/addons/${n}/${n}.so.${version} $out${addonDir}/${n}/${n}.so.${version} 99 ${extraInstallPhase} 100 ''; 101 + } // attrs)); 102 103 + advanced-launcher = buildKodiAddon rec { 104 105 + pname = "advanced-launcher"; 106 namespace = "plugin.program.advanced.launcher"; 107 version = "2.5.8"; 108 109 src = fetchFromGitHub { 110 owner = "edwtjo"; 111 + repo = pname; 112 rev = version; 113 sha256 = "142vvgs37asq5m54xqhjzqvgmb0xlirvm0kz6lxaqynp0vvgrkx2"; 114 }; ··· 131 132 }; 133 134 + advanced-emulator-launcher = buildKodiAddon rec { 135 136 + pname = "advanced-emulator-launcher"; 137 namespace = "plugin.program.advanced.emulator.launcher"; 138 version = "0.9.6"; 139 ··· 179 }; 180 181 mkController = controller: { 182 + ${controller} = buildKodiAddon rec { 183 + pname = pname + "-" + controller; 184 namespace = "game.controller." + controller; 185 sourceDir = "addons/" + namespace; 186 inherit version src meta; ··· 213 broken = true; # requires port to python3 214 }; 215 in { 216 + service = buildKodiAddon { 217 + pname = pname + "-service"; 218 version = "1.2.1"; 219 namespace = "service.hyper.launcher"; 220 inherit src meta; 221 }; 222 + plugin = buildKodiAddon { 223 namespace = "plugin.hyper.launcher"; 224 + inherit pname version src meta; 225 }; 226 }; 227 228 + joystick = buildKodiBinaryAddon rec { 229 + pname = namespace; 230 namespace = "peripheral.joystick"; 231 version = "1.7.1"; 232 233 src = fetchFromGitHub { 234 owner = "xbmc"; ··· 246 extraBuildInputs = [ tinyxml udev ]; 247 }; 248 249 + simpleplugin = buildKodiAddon rec { 250 + pname = "simpleplugin"; 251 namespace = "script.module.simpleplugin"; 252 version = "2.3.2"; 253 ··· 266 }; 267 }; 268 269 + svtplay = buildKodiAddon rec { 270 271 + pname = "svtplay"; 272 namespace = "plugin.video.svtplay"; 273 version = "5.1.12"; 274 275 src = fetchFromGitHub { 276 + name = pname + "-" + version + ".tar.gz"; 277 owner = "nilzen"; 278 + repo = "xbmc-" + pname; 279 rev = "v${version}"; 280 sha256 = "04j1nhm7mh9chs995lz6bv1vsq5xzk7a7c0lmk4bnfv8jrfpj0w6"; 281 }; ··· 295 296 }; 297 298 + steam-controller = buildKodiBinaryAddon rec { 299 + pname = namespace; 300 namespace = "peripheral.steamcontroller"; 301 version = "0.11.0"; 302 303 src = fetchFromGitHub { 304 owner = "kodi-game"; ··· 317 318 }; 319 320 + steam-launcher = buildKodiAddon { 321 322 + pname = "steam-launcher"; 323 namespace = "script.steam.launcher"; 324 version = "3.5.1"; 325 ··· 346 }; 347 }; 348 349 + pdfreader = buildKodiAddon rec { 350 + pname = "pdfreader"; 351 namespace = "plugin.image.pdf"; 352 version = "2.0.2"; 353 ··· 365 }; 366 }; 367 368 + pvr-hts = buildKodiBinaryAddon rec { 369 370 + pname = "pvr-hts"; 371 namespace = "pvr.hts"; 372 version = "8.2.2"; 373 ··· 387 388 }; 389 390 + pvr-hdhomerun = buildKodiBinaryAddon rec { 391 392 + pname = "pvr-hdhomerun"; 393 namespace = "pvr.hdhomerun"; 394 version = "7.1.0"; 395 ··· 411 412 }; 413 414 + pvr-iptvsimple = buildKodiBinaryAddon rec { 415 416 + pname = "pvr-iptvsimple"; 417 namespace = "pvr.iptvsimple"; 418 version = "7.4.2"; 419 ··· 435 extraBuildInputs = [ zlib pugixml ]; 436 }; 437 438 + osmc-skin = buildKodiAddon rec { 439 440 + pname = "osmc-skin"; 441 namespace = "skin.osmc"; 442 version = "18.0.0"; 443 ··· 457 }; 458 }; 459 460 + yatp = python3Packages.toPythonModule (buildKodiAddon rec { 461 + pname = "yatp"; 462 namespace = "plugin.video.yatp"; 463 version = "3.3.2"; 464 ··· 485 }; 486 }); 487 488 + inputstream-adaptive = buildKodiBinaryAddon rec { 489 490 + pname = "inputstream-adaptive"; 491 namespace = "inputstream.adaptive"; 492 version = "2.6.7"; 493 ··· 503 extraRuntimeDependencies = [ glib nspr nss stdenv.cc.cc.lib ]; 504 505 extraInstallPhase = let n = namespace; in '' 506 + ln -s $out/lib/addons/${n}/libssd_wv.so $out/${addonDir}/${n}/libssd_wv.so 507 ''; 508 509 meta = { ··· 514 }; 515 }; 516 517 + vfs-sftp = buildKodiBinaryAddon rec { 518 + pname = namespace; 519 namespace = "vfs.sftp"; 520 version = "2.0.0"; 521 522 src = fetchFromGitHub { 523 owner = "xbmc"; ··· 536 extraBuildInputs = [ openssl libssh zlib ]; 537 }; 538 539 + vfs-libarchive = buildKodiBinaryAddon rec { 540 + pname = namespace; 541 namespace = "vfs.libarchive"; 542 version = "2.0.0"; 543 544 src = fetchFromGitHub { 545 owner = "xbmc";
+242
pkgs/applications/video/kodi/unwrapped.nix
···
··· 1 + { stdenv, lib, fetchFromGitHub, autoconf, automake, libtool, makeWrapper 2 + , pkg-config, cmake, gnumake, yasm, python3Packages 3 + , libgcrypt, libgpgerror, libunistring 4 + , boost, avahi, lame 5 + , gettext, pcre-cpp, yajl, fribidi, which 6 + , openssl, gperf, tinyxml2, taglib, libssh, swig, jre_headless 7 + , gtest, ncurses, spdlog 8 + , libxml2, systemd 9 + , alsaLib, libGLU, libGL, fontconfig, freetype, ftgl 10 + , libjpeg, libpng, libtiff 11 + , libmpeg2, libsamplerate, libmad 12 + , libogg, libvorbis, flac, libxslt 13 + , lzo, libcdio, libmodplug, libass, libbluray 14 + , sqlite, libmysqlclient, nasm, gnutls, libva, libdrm 15 + , curl, bzip2, zip, unzip, glxinfo 16 + , libcec, libcec_platform, dcadec, libuuid 17 + , libcrossguid, libmicrohttpd 18 + , bluez, doxygen, giflib, glib, harfbuzz, lcms2, libidn, libpthreadstubs, libtasn1 19 + , libplist, p11-kit, zlib, flatbuffers, fmt, fstrcmp, rapidjson 20 + , lirc 21 + , x11Support ? true, libX11, xorgproto, libXt, libXmu, libXext, libXinerama, libXrandr, libXtst, libXfixes, xdpyinfo, libXdmcp 22 + , dbusSupport ? true, dbus 23 + , joystickSupport ? true, cwiid 24 + , nfsSupport ? true, libnfs 25 + , pulseSupport ? true, libpulseaudio 26 + , rtmpSupport ? true, rtmpdump 27 + , sambaSupport ? true, samba 28 + , udevSupport ? true, udev 29 + , usbSupport ? false, libusb-compat-0_1 30 + , vdpauSupport ? true, libvdpau 31 + , waylandSupport ? false, wayland, wayland-protocols 32 + , waylandpp ? null, libxkbcommon 33 + , gbmSupport ? false, mesa, libinput 34 + , buildPackages 35 + }: 36 + 37 + assert usbSupport -> !udevSupport; # libusb-compat-0_1 won't be used if udev is avaliable 38 + assert gbmSupport || waylandSupport || x11Support; 39 + 40 + let 41 + kodiReleaseDate = "20210219"; 42 + kodiVersion = "19.0"; 43 + rel = "Matrix"; 44 + 45 + kodi_src = fetchFromGitHub { 46 + owner = "xbmc"; 47 + repo = "xbmc"; 48 + rev = "${kodiVersion}-${rel}"; 49 + sha256 = "097dg6a7v4ia85jx1pmlpwzdpqcqxlrmniqd005q73zvgj67zc2p"; 50 + }; 51 + 52 + ffmpeg = stdenv.mkDerivation rec { 53 + pname = "kodi-ffmpeg"; 54 + version = "4.3.1"; 55 + src = fetchFromGitHub { 56 + owner = "xbmc"; 57 + repo = "FFmpeg"; 58 + rev = "${version}-${rel}-Beta1"; 59 + sha256 = "1c5rwlxn6xj501iw7masdv2p6wb9rkmd299lmlkx97sw1kvxvg2w"; 60 + }; 61 + preConfigure = '' 62 + cp ${kodi_src}/tools/depends/target/ffmpeg/{CMakeLists.txt,*.cmake} . 63 + sed -i 's/ --cpu=''${CPU}//' CMakeLists.txt 64 + sed -i 's/--strip=''${CMAKE_STRIP}/--strip=''${CMAKE_STRIP} --ranlib=''${CMAKE_RANLIB}/' CMakeLists.txt 65 + ''; 66 + cmakeFlags = lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ 67 + "-DCROSSCOMPILING=ON" 68 + "-DCPU=${stdenv.hostPlatform.parsed.cpu.name}" 69 + "-DOS=${stdenv.hostPlatform.parsed.kernel.name}" 70 + "-DPKG_CONFIG_EXECUTABLE=pkg-config" 71 + ]; 72 + buildInputs = [ libidn libtasn1 p11-kit zlib libva ] 73 + ++ lib.optional vdpauSupport libvdpau; 74 + nativeBuildInputs = [ cmake nasm pkg-config gnutls ]; 75 + }; 76 + 77 + # We can build these externally but FindLibDvd.cmake forces us to build it 78 + # them, so we currently just use them for the src. 79 + libdvdcss = fetchFromGitHub { 80 + owner = "xbmc"; 81 + repo = "libdvdcss"; 82 + rev = "1.4.2-${rel}-Beta-5"; 83 + sha256 = "0j41ydzx0imaix069s3z07xqw9q95k7llh06fc27dcn6f7b8ydyl"; 84 + }; 85 + 86 + libdvdnav = fetchFromGitHub { 87 + owner = "xbmc"; 88 + repo = "libdvdnav"; 89 + rev = "6.0.0-${rel}-Alpha-3"; 90 + sha256 = "0qwlf4lgahxqxk1r2pzl866mi03pbp7l1fc0rk522sc0ak2s9jhb"; 91 + }; 92 + 93 + libdvdread = fetchFromGitHub { 94 + owner = "xbmc"; 95 + repo = "libdvdread"; 96 + rev = "6.0.0-${rel}-Alpha-3"; 97 + sha256 = "1xxn01mhkdnp10cqdr357wx77vyzfb5glqpqyg8m0skyi75aii59"; 98 + }; 99 + 100 + kodi_platforms = lib.optional gbmSupport "gbm" 101 + ++ lib.optional waylandSupport "wayland" 102 + ++ lib.optional x11Support "x11"; 103 + 104 + in stdenv.mkDerivation { 105 + pname = "kodi"; 106 + version = kodiVersion; 107 + 108 + src = kodi_src; 109 + 110 + buildInputs = [ 111 + gnutls libidn libtasn1 nasm p11-kit 112 + libxml2 python3Packages.python 113 + boost libmicrohttpd 114 + gettext pcre-cpp yajl fribidi libva libdrm 115 + openssl gperf tinyxml2 taglib libssh 116 + gtest ncurses spdlog 117 + alsaLib libGL libGLU fontconfig freetype ftgl 118 + libjpeg libpng libtiff 119 + libmpeg2 libsamplerate libmad 120 + libogg libvorbis flac libxslt systemd 121 + lzo libcdio libmodplug libass libbluray 122 + sqlite libmysqlclient avahi lame 123 + curl bzip2 zip unzip glxinfo 124 + libcec libcec_platform dcadec libuuid 125 + libgcrypt libgpgerror libunistring 126 + libcrossguid libplist 127 + bluez giflib glib harfbuzz lcms2 libpthreadstubs 128 + ffmpeg flatbuffers fmt fstrcmp rapidjson 129 + lirc 130 + ] 131 + ++ lib.optional x11Support [ 132 + libX11 xorgproto libXt libXmu libXext.dev libXdmcp 133 + libXinerama libXrandr.dev libXtst libXfixes 134 + ] 135 + ++ lib.optional dbusSupport dbus 136 + ++ lib.optional joystickSupport cwiid 137 + ++ lib.optional nfsSupport libnfs 138 + ++ lib.optional pulseSupport libpulseaudio 139 + ++ lib.optional rtmpSupport rtmpdump 140 + ++ lib.optional sambaSupport samba 141 + ++ lib.optional udevSupport udev 142 + ++ lib.optional usbSupport libusb-compat-0_1 143 + ++ lib.optional vdpauSupport libvdpau 144 + ++ lib.optionals waylandSupport [ 145 + wayland 146 + waylandpp.dev 147 + wayland-protocols 148 + # Not sure why ".dev" is needed here, but CMake doesn't find libxkbcommon otherwise 149 + libxkbcommon.dev 150 + ] 151 + ++ lib.optional gbmSupport [ 152 + libxkbcommon.dev 153 + mesa.dev 154 + libinput.dev 155 + ]; 156 + 157 + nativeBuildInputs = [ 158 + cmake 159 + doxygen 160 + makeWrapper 161 + which 162 + pkg-config gnumake 163 + autoconf automake libtool # still needed for some components. Check if that is the case with 19.0 164 + jre_headless yasm gettext python3Packages.python flatbuffers 165 + 166 + # for TexturePacker 167 + giflib zlib libpng libjpeg lzo 168 + ] ++ lib.optionals waylandSupport [ wayland-protocols waylandpp.bin ]; 169 + 170 + depsBuildBuild = [ 171 + buildPackages.stdenv.cc 172 + ]; 173 + 174 + cmakeFlags = [ 175 + "-DAPP_RENDER_SYSTEM=${if gbmSupport then "gles" else "gl"}" 176 + "-Dlibdvdcss_URL=${libdvdcss}" 177 + "-Dlibdvdnav_URL=${libdvdnav}" 178 + "-Dlibdvdread_URL=${libdvdread}" 179 + "-DGIT_VERSION=${kodiReleaseDate}" 180 + "-DENABLE_EVENTCLIENTS=ON" 181 + "-DENABLE_INTERNAL_CROSSGUID=OFF" 182 + "-DENABLE_OPTICAL=ON" 183 + "-DLIRC_DEVICE=/run/lirc/lircd" 184 + "-DSWIG_EXECUTABLE=${buildPackages.swig}/bin/swig" 185 + "-DFLATBUFFERS_FLATC_EXECUTABLE=${buildPackages.flatbuffers}/bin/flatc" 186 + "-DPYTHON_EXECUTABLE=${buildPackages.python3Packages.python}/bin/python" 187 + ] ++ lib.optional waylandSupport [ 188 + "-DWAYLANDPP_SCANNER=${buildPackages.waylandpp}/bin/wayland-scanner++" 189 + ]; 190 + 191 + # 14 tests fail but the biggest issue is that every test takes 30 seconds - 192 + # I'm guessing there is a thing waiting to time out 193 + doCheck = false; 194 + 195 + preConfigure = '' 196 + cmakeFlagsArray+=("-DCORE_PLATFORM_NAME=${lib.concatStringsSep " " kodi_platforms}") 197 + '' + lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) '' 198 + # Need these tools on the build system when cross compiling, 199 + # hacky, but have found no other way. 200 + CXX=${stdenv.cc.targetPrefix}c++ LD=ld make -C tools/depends/native/JsonSchemaBuilder 201 + cmakeFlags+=" -DWITH_JSONSCHEMABUILDER=$PWD/tools/depends/native/JsonSchemaBuilder/bin" 202 + 203 + CXX=${stdenv.cc.targetPrefix}c++ LD=ld make EXTRA_CONFIGURE= -C tools/depends/native/TexturePacker 204 + cmakeFlags+=" -DWITH_TEXTUREPACKER=$PWD/tools/depends/native/TexturePacker/bin" 205 + ''; 206 + 207 + postPatch = '' 208 + substituteInPlace xbmc/platform/posix/PosixTimezone.cpp \ 209 + --replace 'usr/share/zoneinfo' 'etc/zoneinfo' 210 + ''; 211 + 212 + postInstall = '' 213 + for p in $(ls $out/bin/) ; do 214 + wrapProgram $out/bin/$p \ 215 + --prefix PATH ":" "${lib.makeBinPath ([ python3Packages.python glxinfo ] 216 + ++ lib.optional x11Support xdpyinfo ++ lib.optional sambaSupport samba)}" \ 217 + --prefix LD_LIBRARY_PATH ":" "${lib.makeLibraryPath 218 + ([ curl systemd libmad libvdpau libcec libcec_platform libass ] 219 + ++ lib.optional nfsSupport libnfs 220 + ++ lib.optional rtmpSupport rtmpdump)}" 221 + done 222 + 223 + substituteInPlace $out/share/xsessions/kodi.desktop \ 224 + --replace kodi-standalone $out/bin/kodi-standalone 225 + ''; 226 + 227 + doInstallCheck = true; 228 + 229 + installCheckPhase = "$out/bin/kodi --version"; 230 + 231 + passthru = { 232 + pythonPackages = python3Packages; 233 + }; 234 + 235 + meta = with lib; { 236 + description = "Media center"; 237 + homepage = "https://kodi.tv/"; 238 + license = licenses.gpl2Plus; 239 + platforms = platforms.linux; 240 + maintainers = with maintainers; [ titanous edwtjo peterhoeg sephalon ]; 241 + }; 242 + }
+6 -13
pkgs/applications/video/kodi/wrapper.nix
··· 1 - { lib, makeWrapper, buildEnv, kodi, plugins }: 2 3 - let 4 - drvName = builtins.parseDrvName kodi.name; 5 - in buildEnv { 6 - name = "${drvName.name}-with-plugins-${drvName.version}"; 7 8 - paths = [ kodi ] ++ plugins; 9 pathsToLink = [ "/share" ]; 10 11 buildInputs = [ makeWrapper ]; ··· 15 for exe in kodi{,-standalone} 16 do 17 makeWrapper ${kodi}/bin/$exe $out/bin/$exe \ 18 - --prefix PYTHONPATH : ${kodi.pythonPackages.makePythonPath plugins} \ 19 --prefix KODI_HOME : $out/share/kodi \ 20 --prefix LD_LIBRARY_PATH ":" "${lib.makeLibraryPath 21 (lib.concatMap 22 - (plugin: plugin.extraRuntimeDependencies or []) plugins)}" 23 done 24 ''; 25 - 26 - meta = kodi.meta // { 27 - description = kodi.meta.description 28 - + " (with plugins: ${lib.concatMapStringsSep ", " (x: x.name) plugins})"; 29 - }; 30 }
··· 1 + { lib, makeWrapper, buildEnv, kodi, addons }: 2 3 + buildEnv { 4 + name = "${kodi.name}-env"; 5 6 + paths = [ kodi ] ++ addons; 7 pathsToLink = [ "/share" ]; 8 9 buildInputs = [ makeWrapper ]; ··· 13 for exe in kodi{,-standalone} 14 do 15 makeWrapper ${kodi}/bin/$exe $out/bin/$exe \ 16 + --prefix PYTHONPATH : ${kodi.pythonPackages.makePythonPath addons} \ 17 --prefix KODI_HOME : $out/share/kodi \ 18 --prefix LD_LIBRARY_PATH ":" "${lib.makeLibraryPath 19 (lib.concatMap 20 + (plugin: plugin.extraRuntimeDependencies or []) addons)}" 21 done 22 ''; 23 }
+2 -2
pkgs/data/fonts/twitter-color-emoji/default.nix
··· 14 }: 15 16 let 17 - version = "13.0.1"; 18 19 twemojiSrc = fetchFromGitHub { 20 name = "twemoji"; 21 owner = "twitter"; 22 repo = "twemoji"; 23 rev = "v${version}"; 24 - sha256 = "0acinlv2l3s1jga2i9wh16mvgkxw4ipzgvjx8c80zd104lpdpgd9"; 25 }; 26 27 pythonEnv =
··· 14 }: 15 16 let 17 + version = "13.0.2"; 18 19 twemojiSrc = fetchFromGitHub { 20 name = "twemoji"; 21 owner = "twitter"; 22 repo = "twemoji"; 23 rev = "v${version}"; 24 + sha256 = "069pyq09jfzwp3xla8vmhbyyam32x2iyp0s29xcxlkj22p99bg6d"; 25 }; 26 27 pythonEnv =
+45
pkgs/development/gnuradio-modules/ais/default.nix
···
··· 1 + { lib 2 + , stdenv 3 + , mkDerivation 4 + , fetchFromGitHub 5 + , cmake 6 + , pkg-config 7 + , python 8 + , boost 9 + , cppunit 10 + , log4cpp 11 + , osmosdr 12 + }: 13 + 14 + mkDerivation rec { 15 + pname = "gr-ais"; 16 + version = "2015-12-20"; 17 + src = fetchFromGitHub { 18 + owner = "bistromath"; 19 + repo = "gr-ais"; 20 + rev = "cdc1f52745853f9c739c718251830eb69704b26e"; 21 + sha256 = "1vl3kk8xr2mh5lf31zdld7yzmwywqffffah8iblxdzblgsdwxfl6"; 22 + }; 23 + disabledForGRafter = "3.8"; 24 + 25 + nativeBuildInputs = [ 26 + cmake 27 + pkg-config 28 + python 29 + ]; 30 + 31 + buildInputs = [ 32 + cppunit 33 + osmosdr 34 + boost 35 + log4cpp 36 + ]; 37 + 38 + meta = with lib; { 39 + description = "Gnuradio block for ais"; 40 + homepage = "https://github.com/bistromath/gr-ais"; 41 + license = licenses.gpl3Plus; 42 + platforms = platforms.unix; 43 + maintainers = with maintainers; [ mog ]; 44 + }; 45 + }
+48
pkgs/development/gnuradio-modules/gsm/default.nix
···
··· 1 + { lib 2 + , mkDerivation 3 + , fetchFromGitHub 4 + , cmake 5 + , pkg-config 6 + , cppunit 7 + , swig 8 + , boost 9 + , log4cpp 10 + , python 11 + , libosmocore 12 + , osmosdr 13 + }: 14 + 15 + mkDerivation { 16 + pname = "gr-gsm"; 17 + version = "2016-08-25"; 18 + src = fetchFromGitHub { 19 + owner = "ptrkrysik"; 20 + repo = "gr-gsm"; 21 + rev = "3ca05e6914ef29eb536da5dbec323701fbc2050d"; 22 + sha256 = "13nnq927kpf91iqccr8db9ripy5czjl5jiyivizn6bia0bam2pvx"; 23 + }; 24 + disabledForGRafter = "3.8"; 25 + 26 + nativeBuildInputs = [ 27 + cmake 28 + pkg-config 29 + swig 30 + python 31 + ]; 32 + 33 + buildInputs = [ 34 + cppunit 35 + log4cpp 36 + boost 37 + libosmocore 38 + osmosdr 39 + ]; 40 + 41 + meta = with lib; { 42 + description = "Gnuradio block for gsm"; 43 + homepage = "https://github.com/ptrkrysik/gr-gsm"; 44 + license = licenses.gpl3Plus; 45 + platforms = platforms.linux; 46 + maintainers = with maintainers; [ mog ]; 47 + }; 48 + }
+61
pkgs/development/gnuradio-modules/limesdr/default.nix
···
··· 1 + { lib 2 + , mkDerivation 3 + , fetchFromGitHub 4 + , gnuradio 5 + , cmake 6 + , pkg-config 7 + , doxygen 8 + , swig 9 + , python 10 + , log4cpp 11 + , mpir 12 + , boost 13 + , gmp 14 + , icu 15 + , limesuite 16 + }: 17 + 18 + let 19 + version = { 20 + "3.7" = "2.0.0"; 21 + "3.8" = "3.0.1"; 22 + "3.9" = null; 23 + }.${gnuradio.versionAttr.major}; 24 + src = fetchFromGitHub { 25 + owner = "myriadrf"; 26 + repo = "gr-limesdr"; 27 + rev = "v${version}"; 28 + sha256 = { 29 + "3.7" = "0ldqvfwl0gil89l9s31fjf9d7ki0dk572i8vna336igfaz348ypq"; 30 + "3.8" = "ffs+8TU0yr6IW1xZJ/abQ1CQWGZM+zYqPRJxy3ZvM9U="; 31 + "3.9" = null; 32 + }.${gnuradio.versionAttr.major}; 33 + }; 34 + in mkDerivation { 35 + pname = "gr-limesdr"; 36 + inherit version src; 37 + disabledForGRafter = "3.9"; 38 + 39 + nativeBuildInputs = [ 40 + cmake 41 + pkg-config 42 + swig 43 + python 44 + ]; 45 + buildInputs = [ 46 + log4cpp 47 + mpir 48 + boost 49 + gmp 50 + icu 51 + limesuite 52 + ]; 53 + 54 + meta = with lib; { 55 + description = "Gnuradio source and sink blocks for LimeSDR"; 56 + homepage = "https://wiki.myriadrf.org/Gr-limesdr_Plugin_for_GNURadio"; 57 + license = licenses.mit; 58 + platforms = platforms.linux; 59 + maintainers = [ maintainers.markuskowa ]; 60 + }; 61 + }
+25
pkgs/development/gnuradio-modules/mkDerivation.nix
···
··· 1 + { lib 2 + , unwrapped 3 + }: 4 + 5 + mkDerivation: 6 + 7 + args: 8 + 9 + # Check if it's supposed to not get built for the current gnuradio version 10 + if (builtins.hasAttr "disabledForGRafter" args) && 11 + (lib.versionAtLeast unwrapped.versionAttr.major args.disabledForGRafter) then 12 + let name = args.name or "${args.pname}"; in 13 + throw "Package ${name} is incompatible with GNURadio ${unwrapped.versionAttr.major}" 14 + else 15 + 16 + let 17 + args_ = { 18 + enableParallelBuilding = args.enableParallelBuilding or true; 19 + nativeBuildInputs = (args.nativeBuildInputs or []); 20 + # We add gnuradio and volk itself by default - most gnuradio based packages 21 + # will not consider it a depenency worth mentioning and it will almost 22 + # always be needed 23 + buildInputs = (args.buildInputs or []) ++ [ unwrapped unwrapped.volk ]; 24 + }; 25 + in mkDerivation (args // args_)
+46
pkgs/development/gnuradio-modules/nacl/default.nix
···
··· 1 + { lib 2 + , mkDerivation 3 + , fetchFromGitHub 4 + , cmake 5 + , pkg-config 6 + , cppunit 7 + , swig 8 + , boost 9 + , log4cpp 10 + , python 11 + , libsodium 12 + }: 13 + 14 + mkDerivation { 15 + pname = "gr-nacl"; 16 + version = "2017-04-10"; 17 + src = fetchFromGitHub { 18 + owner = "stwunsch"; 19 + repo = "gr-nacl"; 20 + rev = "15276bb0fcabf5fe4de4e58df3d579b5be0e9765"; 21 + sha256 = "018np0qlk61l7mlv3xxx5cj1rax8f1vqrsrch3higsl25yydbv7v"; 22 + }; 23 + disabledForGRafter = "3.8"; 24 + 25 + nativeBuildInputs = [ 26 + cmake 27 + pkg-config 28 + swig 29 + python 30 + ]; 31 + 32 + buildInputs = [ 33 + cppunit 34 + log4cpp 35 + boost 36 + libsodium 37 + ]; 38 + 39 + meta = with lib; { 40 + description = "Gnuradio block for encryption"; 41 + homepage = "https://github.com/stwunsch/gr-nacl"; 42 + license = licenses.gpl3Plus; 43 + platforms = platforms.linux ++ platforms.darwin; 44 + maintainers = with maintainers; [ mog ]; 45 + }; 46 + }
+86
pkgs/development/gnuradio-modules/osmosdr/default.nix
···
··· 1 + { lib 2 + , mkDerivation 3 + , fetchgit 4 + , gnuradio 5 + , cmake 6 + , pkg-config 7 + , log4cpp 8 + , mpir 9 + , boost 10 + , gmp 11 + , fftwFloat 12 + , python 13 + , swig 14 + , uhd 15 + , icu 16 + , airspy 17 + , hackrf 18 + , libbladeRF 19 + , rtl-sdr 20 + , soapysdr-with-plugins 21 + }: 22 + 23 + let 24 + version = { 25 + "3.7" = "0.1.5"; 26 + "3.8" = "0.2.2"; 27 + "3.9" = null; 28 + }.${gnuradio.versionAttr.major}; 29 + src = fetchgit { 30 + url = "git://git.osmocom.org/gr-osmosdr"; 31 + rev = "v${version}"; 32 + sha256 = { 33 + "3.7" = "0bf9bnc1c3c4yqqqgmg3nhygj6rcfmyk6pybi27f7461d2cw1drv"; 34 + "3.8" = "HT6xlN6cJAnvF+s1g2I1uENhBJJizdADlLXeSD0rEqs="; 35 + "3.9" = null; 36 + }.${gnuradio.versionAttr.major}; 37 + }; 38 + in mkDerivation { 39 + pname = "gr-osmosdr"; 40 + inherit version src; 41 + disabledForGRafter = "3.9"; 42 + 43 + buildInputs = [ 44 + log4cpp 45 + mpir 46 + boost 47 + fftwFloat 48 + gmp 49 + icu 50 + airspy 51 + hackrf 52 + libbladeRF 53 + rtl-sdr 54 + soapysdr-with-plugins 55 + ] ++ lib.optional (gnuradio.hasFeature "gr-uhd" gnuradio.features) [ 56 + uhd 57 + ]; 58 + cmakeFlags = [ 59 + (if (gnuradio.hasFeature "python-support" gnuradio.features) then 60 + "-DENABLE_PYTHON=ON" 61 + else 62 + "-DENABLE_PYTHON=OFF" 63 + ) 64 + ]; 65 + nativeBuildInputs = [ 66 + cmake 67 + pkg-config 68 + swig 69 + ] ++ lib.optionals (gnuradio.hasFeature "python-support" gnuradio.features) [ 70 + (if (gnuradio.versionAttr.major == "3.7") then 71 + python.pkgs.cheetah 72 + else 73 + python.pkgs.Mako 74 + ) 75 + python 76 + ] 77 + ; 78 + 79 + meta = with lib; { 80 + description = "Gnuradio block for OsmoSDR and rtl-sdr"; 81 + homepage = "https://sdr.osmocom.org/trac/wiki/GrOsmoSDR"; 82 + license = licenses.gpl3Plus; 83 + maintainers = with maintainers; [ bjornfor ]; 84 + platforms = platforms.unix; 85 + }; 86 + }
+59
pkgs/development/gnuradio-modules/rds/default.nix
···
··· 1 + { lib 2 + , mkDerivation 3 + , fetchFromGitHub 4 + , gnuradio 5 + , cmake 6 + , pkg-config 7 + , swig 8 + , python 9 + , log4cpp 10 + , mpir 11 + , boost 12 + , gmp 13 + , icu 14 + }: 15 + 16 + let 17 + version = { 18 + "3.7" = "1.1.0"; 19 + "3.8" = "3.8.0"; 20 + "3.9" = null; 21 + }.${gnuradio.versionAttr.major}; 22 + src = fetchFromGitHub { 23 + owner = "bastibl"; 24 + repo = "gr-rds"; 25 + rev = "v${version}"; 26 + sha256 = { 27 + "3.7" = "0jkzchvw0ivcxsjhi1h0mf7k13araxf5m4wi5v9xdgqxvipjzqfy"; 28 + "3.8" = "+yKLJu2bo7I2jkAiOdjvdhZwxFz9NFgTmzcLthH9Y5o="; 29 + "3.9" = null; 30 + }.${gnuradio.versionAttr.major}; 31 + }; 32 + in mkDerivation { 33 + pname = "gr-rds"; 34 + inherit version src; 35 + disabledForGRafter = "3.9"; 36 + 37 + buildInputs = [ 38 + log4cpp 39 + mpir 40 + boost 41 + gmp 42 + icu 43 + ]; 44 + 45 + nativeBuildInputs = [ 46 + cmake 47 + pkg-config 48 + swig 49 + python 50 + ]; 51 + 52 + meta = with lib; { 53 + description = "Gnuradio block for radio data system"; 54 + homepage = "https://github.com/bastibl/gr-rds"; 55 + license = licenses.gpl2Plus; 56 + platforms = platforms.unix; 57 + maintainers = with maintainers; [ mog ]; 58 + }; 59 + }
+3
pkgs/development/libraries/iniparser/default.nix
··· 36 cp libiniparser.a $out/lib 37 cp libiniparser.so.1 $out/lib 38 ln -s libiniparser.so.1 $out/lib/libiniparser.so 39 ''; 40 41 meta = with lib; {
··· 36 cp libiniparser.a $out/lib 37 cp libiniparser.so.1 $out/lib 38 ln -s libiniparser.so.1 $out/lib/libiniparser.so 39 + 40 + mkdir -p $out/lib/pkgconfig 41 + substituteAll ${./iniparser.pc.in} $out/lib/pkgconfig/iniparser.pc 42 ''; 43 44 meta = with lib; {
+12
pkgs/development/libraries/iniparser/iniparser.pc.in
···
··· 1 + prefix=@out@ 2 + exec_prefix=@out@ 3 + libdir=${exec_prefix}/lib 4 + includedir=${prefix}/include 5 + datarootdir=${prefix}/share 6 + datadir=${datarootdir} 7 + 8 + Name: libiniparser 9 + Description: Iniparser library 10 + Version: @version@ 11 + Libs: -L${libdir} -liniparser 12 + Cflags: -I${includedir}
+2 -2
pkgs/development/libraries/libdigidocpp/default.nix
··· 2 , xercesc, xml-security-c, pkg-config, xsd, zlib, xalanc, xxd }: 3 4 stdenv.mkDerivation rec { 5 - version = "3.14.4"; 6 pname = "libdigidocpp"; 7 8 src = fetchurl { 9 url = "https://github.com/open-eid/libdigidocpp/releases/download/v${version}/libdigidocpp-${version}.tar.gz"; 10 - sha256 = "1x72icq5lp5cfv6kyxqc3863wa164s0g41nbi6gldr8syprzdk1l"; 11 }; 12 13 nativeBuildInputs = [ cmake pkg-config xxd ];
··· 2 , xercesc, xml-security-c, pkg-config, xsd, zlib, xalanc, xxd }: 3 4 stdenv.mkDerivation rec { 5 + version = "3.14.5"; 6 pname = "libdigidocpp"; 7 8 src = fetchurl { 9 url = "https://github.com/open-eid/libdigidocpp/releases/download/v${version}/libdigidocpp-${version}.tar.gz"; 10 + sha256 = "sha256-PSrYoz5ID88pYs/4rP2kz0NpI0pK6wcnx62HokE0g20="; 11 }; 12 13 nativeBuildInputs = [ cmake pkg-config xxd ];
+2 -2
pkgs/development/libraries/libhandy/default.nix
··· 22 23 stdenv.mkDerivation rec { 24 pname = "libhandy"; 25 - version = "1.0.3"; 26 27 outputs = [ "out" "dev" "devdoc" "glade" ]; 28 outputBin = "dev"; 29 30 src = fetchurl { 31 url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; 32 - sha256 = "sha256-VZuzrMLDYkiJF+ty7SW9wYH0riaslNF3Y0zF00yGf3o="; 33 }; 34 35 nativeBuildInputs = [
··· 22 23 stdenv.mkDerivation rec { 24 pname = "libhandy"; 25 + version = "1.2.0"; 26 27 outputs = [ "out" "dev" "devdoc" "glade" ]; 28 outputBin = "dev"; 29 30 src = fetchurl { 31 url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; 32 + sha256 = "sha256-OfWQriCRDnb+HAYHsuvliXUPRWENau7Fww4u5gKiCyU="; 33 }; 34 35 nativeBuildInputs = [
+2 -2
pkgs/development/libraries/libisoburn/default.nix
··· 2 3 stdenv.mkDerivation rec { 4 pname = "libisoburn"; 5 - version = "1.5.2"; 6 7 src = fetchurl { 8 url = "http://files.libburnia-project.org/releases/${pname}-${version}.tar.gz"; 9 - sha256 = "1v4hanapr02wf2i6rncc62z8cyc18078nb2y6q4hp3hxa74hnwnc"; 10 }; 11 12 buildInputs = [ attr zlib libburn libisofs ];
··· 2 3 stdenv.mkDerivation rec { 4 pname = "libisoburn"; 5 + version = "1.5.4"; 6 7 src = fetchurl { 8 url = "http://files.libburnia-project.org/releases/${pname}-${version}.tar.gz"; 9 + sha256 = "sha256-LYmEbUOIDxf6WRxTs76kL/uANijk5jDGgPwskYT3kTI="; 10 }; 11 12 buildInputs = [ attr zlib libburn libisofs ];
+2 -2
pkgs/development/libraries/liblinear/default.nix
··· 4 soVersion = "4"; 5 in stdenv.mkDerivation rec { 6 pname = "liblinear"; 7 - version = "2.42"; 8 9 src = fetchFromGitHub { 10 owner = "cjlin1"; 11 repo = "liblinear"; 12 rev = "v${builtins.replaceStrings ["."] [""] version}"; 13 - sha256 = "0p0hpjajfkskhd7jiv5zwhfa8hi49q3mgifjlkqvy99xspv98ijj"; 14 }; 15 16 postPatch = ''
··· 4 soVersion = "4"; 5 in stdenv.mkDerivation rec { 6 pname = "liblinear"; 7 + version = "2.43"; 8 9 src = fetchFromGitHub { 10 owner = "cjlin1"; 11 repo = "liblinear"; 12 rev = "v${builtins.replaceStrings ["."] [""] version}"; 13 + sha256 = "sha256-qcSMuWHJgsapWs1xgxv3fKSXcx18q8cwyIn3E4RCGKA="; 14 }; 15 16 postPatch = ''
+2 -2
pkgs/development/libraries/libofx/default.nix
··· 3 4 stdenv.mkDerivation rec { 5 pname = "libofx"; 6 - version = "0.10.0"; 7 8 src = fetchFromGitHub { 9 owner = "LibOFX"; 10 repo = pname; 11 rev = version; 12 - sha256 = "sha256-gdLh5ZUciN4FCJwTCaJSKJ5RjXgNDXnDOUWkyTZwf2c="; 13 }; 14 15 preConfigure = "./autogen.sh";
··· 3 4 stdenv.mkDerivation rec { 5 pname = "libofx"; 6 + version = "0.10.1"; 7 8 src = fetchFromGitHub { 9 owner = "LibOFX"; 10 repo = pname; 11 rev = version; 12 + sha256 = "sha256-QIasZKwSD9YCidHCxT/HOThxE5HEQWD0I2/loDP6mlU="; 13 }; 14 15 preConfigure = "./autogen.sh";
+2 -2
pkgs/development/libraries/oneDNN/default.nix
··· 5 # https://github.com/oneapi-src/oneDNN#oneapi-deep-neural-network-library-onednn 6 stdenv.mkDerivation rec { 7 pname = "oneDNN"; 8 - version = "2.1"; 9 10 src = fetchFromGitHub { 11 owner = "oneapi-src"; 12 repo = "oneDNN"; 13 rev = "v${version}"; 14 - sha256 = "sha256-PZ8r1eNfz4dVxlbtQJSrxiw/Hk6E6wSDapkMy7ux9fI="; 15 }; 16 17 outputs = [ "out" "dev" "doc" ];
··· 5 # https://github.com/oneapi-src/oneDNN#oneapi-deep-neural-network-library-onednn 6 stdenv.mkDerivation rec { 7 pname = "oneDNN"; 8 + version = "2.1.2"; 9 10 src = fetchFromGitHub { 11 owner = "oneapi-src"; 12 repo = "oneDNN"; 13 rev = "v${version}"; 14 + sha256 = "sha256-8nXzsY4+XnhKbuYyDWehiWqQEWoEcDBF4KagOg1WlN8="; 15 }; 16 17 outputs = [ "out" "dev" "doc" ];
+51
pkgs/development/libraries/volk/default.nix
···
··· 1 + { stdenv 2 + , lib 3 + , fetchFromGitHub 4 + , fetchpatch 5 + , cmake 6 + , cppunit 7 + , python3 8 + , enableModTool ? true 9 + , removeReferencesTo 10 + }: 11 + 12 + stdenv.mkDerivation rec { 13 + pname = "volk"; 14 + version = "2.4.1"; 15 + 16 + src = fetchFromGitHub { 17 + owner = "gnuradio"; 18 + repo = pname; 19 + rev = "v${version}"; 20 + sha256 = "fuHJ+p5VN4ThdbQFbzB08VCuy/Zo7m/I1Gs5EQGPeNY="; 21 + fetchSubmodules = true; 22 + }; 23 + 24 + patches = [ 25 + # Fixes a failing test: https://github.com/gnuradio/volk/pull/434 26 + (fetchpatch { 27 + url = "https://github.com/gnuradio/volk/pull/434/commits/bce8531b6f1a3c5abe946ed6674b283d54258281.patch"; 28 + sha256 = "OLW9uF6iL47z63kjvYqwsWtkINav8Xhs+Htqg6Kr4uI="; 29 + }) 30 + ]; 31 + cmakeFlags = lib.optionals (!enableModTool) [ "-DENABLE_MODTOOL=OFF" ]; 32 + postInstall = '' 33 + ${removeReferencesTo}/bin/remove-references-to -t ${stdenv.cc} $(readlink -f $out/lib/libvolk.so) 34 + ''; 35 + 36 + nativeBuildInputs = [ 37 + cmake 38 + python3 39 + python3.pkgs.Mako 40 + ]; 41 + 42 + doCheck = true; 43 + 44 + meta = with lib; { 45 + homepage = "http://libvolk.org/"; 46 + description = "The Vector Optimized Library of Kernels"; 47 + license = licenses.gpl3Plus; 48 + maintainers = with maintainers; [ doronbehar ]; 49 + platforms = platforms.all; 50 + }; 51 + }
+16 -7
pkgs/development/python-modules/Rtree/default.nix
··· 1 - { lib, stdenv, buildPythonPackage, fetchPypi, libspatialindex, numpy }: 2 3 buildPythonPackage rec { 4 pname = "Rtree"; ··· 9 sha256 = "be8772ca34699a9ad3fb4cfe2cfb6629854e453c10b3328039301bbfc128ca3e"; 10 }; 11 12 - propagatedBuildInputs = [ libspatialindex ]; 13 14 patchPhase = '' 15 - substituteInPlace rtree/core.py --replace \ 16 "find_library('spatialindex_c')" "'${libspatialindex}/lib/libspatialindex_c${stdenv.hostPlatform.extensions.sharedLibrary}'" 17 ''; 18 19 - # Tests appear to be broken due to mysterious memory unsafe issues. See #36760 20 - doCheck = false; 21 - checkInputs = [ numpy ]; 22 23 meta = with lib; { 24 description = "R-Tree spatial index for Python GIS"; 25 homepage = "https://toblerity.org/rtree/"; 26 - license = licenses.lgpl21; 27 maintainers = with maintainers; [ bgamari ]; 28 }; 29 }
··· 1 + { lib, 2 + stdenv, 3 + buildPythonPackage, 4 + fetchPypi, 5 + libspatialindex, 6 + numpy, 7 + pytestCheckHook 8 + }: 9 10 buildPythonPackage rec { 11 pname = "Rtree"; ··· 16 sha256 = "be8772ca34699a9ad3fb4cfe2cfb6629854e453c10b3328039301bbfc128ca3e"; 17 }; 18 19 + buildInputs = [ libspatialindex ]; 20 21 patchPhase = '' 22 + substituteInPlace rtree/finder.py --replace \ 23 "find_library('spatialindex_c')" "'${libspatialindex}/lib/libspatialindex_c${stdenv.hostPlatform.extensions.sharedLibrary}'" 24 ''; 25 26 + checkInputs = [ 27 + numpy 28 + pytestCheckHook 29 + ]; 30 + pythonImportsCheck = [ "rtree" ]; 31 32 meta = with lib; { 33 description = "R-Tree spatial index for Python GIS"; 34 homepage = "https://toblerity.org/rtree/"; 35 + license = licenses.mit; 36 maintainers = with maintainers; [ bgamari ]; 37 }; 38 }
+3 -3
pkgs/development/python-modules/convertdate/default.nix
··· 9 10 buildPythonPackage rec { 11 pname = "convertdate"; 12 - version = "2.3.0"; 13 14 disabled = isPy27; 15 ··· 17 src = fetchFromGitHub { 18 owner = "fitnr"; 19 repo = pname; 20 - rev = "v${version}"; 21 - sha256 = "17j188zlp46zmq8qyy4z4f9v25l3zibkwzj8wp4fxqgimjnfj2nr"; 22 }; 23 24 propagatedBuildInputs = [
··· 9 10 buildPythonPackage rec { 11 pname = "convertdate"; 12 + version = "2.3.1"; 13 14 disabled = isPy27; 15 ··· 17 src = fetchFromGitHub { 18 owner = "fitnr"; 19 repo = pname; 20 + rev = version; 21 + sha256 = "1g8sgd3xc9viy0kb1i4xp6bdn1hzwhrnk8kmismla88scivrhq32"; 22 }; 23 24 propagatedBuildInputs = [
+1
pkgs/development/python-modules/cryptography/default.nix
··· 42 43 nativeBuildInputs = lib.optionals (!isPyPy) [ 44 cffi 45 rustPlatform.cargoSetupHook 46 setuptools-rust 47 ] ++ (with rustPlatform; [ rust.cargo rust.rustc ]);
··· 42 43 nativeBuildInputs = lib.optionals (!isPyPy) [ 44 cffi 45 + ] ++ [ 46 rustPlatform.cargoSetupHook 47 setuptools-rust 48 ] ++ (with rustPlatform; [ rust.cargo rust.rustc ]);
+2 -2
pkgs/development/tools/analysis/tfsec/default.nix
··· 2 3 buildGoPackage rec { 4 pname = "tfsec"; 5 - version = "0.39.5"; 6 7 src = fetchFromGitHub { 8 owner = "tfsec"; 9 repo = pname; 10 rev = "v${version}"; 11 - sha256 = "sha256-RDvwZyltPD21CQwZISOrLPVgQeRmPQc6/yssptS4XMw="; 12 }; 13 14 goPackagePath = "github.com/tfsec/tfsec";
··· 2 3 buildGoPackage rec { 4 pname = "tfsec"; 5 + version = "0.39.6"; 6 7 src = fetchFromGitHub { 8 owner = "tfsec"; 9 repo = pname; 10 rev = "v${version}"; 11 + sha256 = "sha256-2P+/y3iP/eMGGc0W1lHWWxO+uMy5gvlvjKzZ/8maJ9o="; 12 }; 13 14 goPackagePath = "github.com/tfsec/tfsec";
+3 -3
pkgs/development/tools/misc/terraform-ls/default.nix
··· 2 3 buildGoModule rec { 4 pname = "terraform-ls"; 5 - version = "0.14.0"; 6 7 src = fetchFromGitHub { 8 owner = "hashicorp"; 9 repo = pname; 10 rev = "v${version}"; 11 - sha256 = "sha256-p9q+cSnMN6Na+XZoYSHfE4SCNYOEavXE+eWIaxcD73k="; 12 }; 13 - vendorSha256 = "sha256-XOIs5Ng0FYz7OfwbrNiVN3GTIABqxlO8ITKGfnC+kWo="; 14 15 # tests fail in sandbox mode because of trying to download stuff from releases.hashicorp.com 16 doCheck = false;
··· 2 3 buildGoModule rec { 4 pname = "terraform-ls"; 5 + version = "0.15.0"; 6 7 src = fetchFromGitHub { 8 owner = "hashicorp"; 9 repo = pname; 10 rev = "v${version}"; 11 + sha256 = "sha256-/g62LSlaIK67oY6dI8S3Lni85eBBI6piqP2Fsq3HXWQ="; 12 }; 13 + vendorSha256 = "sha256-U0jVdyY4SifPWkOkq3ohY/LvfGcYm4rI+tW1QEm39oo="; 14 15 # tests fail in sandbox mode because of trying to download stuff from releases.hashicorp.com 16 doCheck = false;
+3 -3
pkgs/servers/minio/default.nix
··· 2 3 buildGoModule rec { 4 pname = "minio"; 5 - version = "2021-03-10T05-11-33Z"; 6 7 src = fetchFromGitHub { 8 owner = "minio"; 9 repo = "minio"; 10 rev = "RELEASE.${version}"; 11 - sha256 = "sha256-YwlVZE7TO9qr/8lwLXdZqjxy4NGxTkmLyKFDVlTZPqQ="; 12 }; 13 14 - vendorSha256 = "sha256-E+j+ysBKKSyTITmJwHieBcpXdF3+rtt4YS7OVPMC6vI="; 15 16 doCheck = false; 17
··· 2 3 buildGoModule rec { 4 pname = "minio"; 5 + version = "2021-03-12T00-00-47Z"; 6 7 src = fetchFromGitHub { 8 owner = "minio"; 9 repo = "minio"; 10 rev = "RELEASE.${version}"; 11 + sha256 = "sha256-7KHEmnrTw6SBhsImMjcv+b1wvFEg8AXgsuZTGp5iVis="; 12 }; 13 14 + vendorSha256 = "sha256-tMt6XRj1dd+AHqWA6WGm5GBFGx+IsP1ijYCj8cmUXy0="; 15 16 doCheck = false; 17
+2 -2
pkgs/servers/monitoring/loki/default.nix
··· 2 }: 3 4 buildGoModule rec { 5 - version = "2.1.0"; 6 pname = "grafana-loki"; 7 8 src = fetchFromGitHub { 9 rev = "v${version}"; 10 owner = "grafana"; 11 repo = "loki"; 12 - sha256 = "O/3079a67j1i9pgf18SBx0iJcQPVmb0H+K/PzQVBCDQ="; 13 }; 14 15 vendorSha256 = null;
··· 2 }: 3 4 buildGoModule rec { 5 + version = "2.2.0"; 6 pname = "grafana-loki"; 7 8 src = fetchFromGitHub { 9 rev = "v${version}"; 10 owner = "grafana"; 11 repo = "loki"; 12 + sha256 = "sha256-mEu9z3lhHSE0NMXXViX4OBbIiNba7/RPr+AFmIM77g4="; 13 }; 14 15 vendorSha256 = null;
+23
pkgs/servers/monitoring/prometheus/jitsi-exporter.nix
···
··· 1 + { lib, buildGoModule, fetchgit, nixosTests }: 2 + 3 + buildGoModule rec { 4 + pname = "jitsiexporter"; 5 + version = "0.2.18"; 6 + 7 + src = fetchgit { 8 + url = "https://git.xsfx.dev/prometheus/jitsiexporter"; 9 + rev = "v${version}"; 10 + sha256 = "1cf46wp96d9dwlwlffcgbcr0v3xxxfdv6il0zqkm2i7cfsfw0skf"; 11 + }; 12 + 13 + vendorSha256 = null; 14 + 15 + passthru.tests = { inherit (nixosTests.prometheus-exporters) jitsi; }; 16 + 17 + meta = with lib; { 18 + description = "Export Jitsi Videobridge metrics to Prometheus"; 19 + homepage = "https://git.xsfx.dev/prometheus/jitsiexporter"; 20 + license = licenses.mit; 21 + maintainers = with maintainers; [ petabyteboy ]; 22 + }; 23 + }
+3 -3
pkgs/servers/rtsp-simple-server/default.nix
··· 5 6 buildGoModule rec { 7 pname = "rtsp-simple-server"; 8 - version = "0.14.2"; 9 10 src = fetchFromGitHub { 11 owner = "aler9"; 12 repo = pname; 13 rev = "v${version}"; 14 - sha256 = "sha256-pnMUUxV4DM2YClwc24l+5Ehh5zc+qEOLTtiqh7c+8PI="; 15 }; 16 17 - vendorSha256 = "sha256-oWWUEPEpMLqXucQwUvM6fyGCwttTIV6ZcCM2VZXnKuM="; 18 19 # Tests need docker 20 doCheck = false;
··· 5 6 buildGoModule rec { 7 pname = "rtsp-simple-server"; 8 + version = "0.15.0"; 9 10 src = fetchFromGitHub { 11 owner = "aler9"; 12 repo = pname; 13 rev = "v${version}"; 14 + sha256 = "sha256-U0wZ0NrvCQjMLDDjO6Jf6uu5FlHar7Td2zhoU2+MMkM="; 15 }; 16 17 + vendorSha256 = "sha256-dfAuq4iw3NQ4xaabPv7MQ88CYXgivRBeyvbmJ3SSjbI="; 18 19 # Tests need docker 20 doCheck = false;
+3 -3
pkgs/tools/admin/clair/default.nix
··· 2 3 buildGoModule rec { 4 pname = "clair"; 5 - version = "4.0.2"; 6 7 src = fetchFromGitHub { 8 owner = "quay"; 9 repo = pname; 10 rev = "v${version}"; 11 - sha256 = "sha256-uGvcr7TG/NCi0YoYZnQU11zOxXDhFTnCmLQVxOqmXLY="; 12 }; 13 14 - vendorSha256 = "sha256-CO4U8uSQeHXLPj5PH/SsOI/LjT2Rs/mBHsvNTudx72I="; 15 16 doCheck = false; 17
··· 2 3 buildGoModule rec { 4 pname = "clair"; 5 + version = "4.0.3"; 6 7 src = fetchFromGitHub { 8 owner = "quay"; 9 repo = pname; 10 rev = "v${version}"; 11 + sha256 = "sha256-ztp3t55EOUQqTAEUZtHvHK8nTTVOAmYR9vN2hXLhpVw="; 12 }; 13 14 + vendorSha256 = "sha256-+0jp/TvUjpeJJxEs2drVkUb/ua9qqqxome4M9TkpfP4="; 15 16 doCheck = false; 17
+2 -2
pkgs/tools/filesystems/reiser4progs/default.nix
··· 1 {lib, stdenv, fetchurl, libaal}: 2 3 - let version = "2.0.1"; in 4 stdenv.mkDerivation rec { 5 pname = "reiser4progs"; 6 inherit version; 7 8 src = fetchurl { 9 url = "mirror://sourceforge/reiser4/reiser4-utils/${pname}-${version}.tar.gz"; 10 - sha256 = "1r7m95mnp6xmp1j5k99jhmz6g9y2qq7cghlmdxsfbr3xviqfs45d"; 11 }; 12 13 buildInputs = [libaal];
··· 1 {lib, stdenv, fetchurl, libaal}: 2 3 + let version = "2.0.4"; in 4 stdenv.mkDerivation rec { 5 pname = "reiser4progs"; 6 inherit version; 7 8 src = fetchurl { 9 url = "mirror://sourceforge/reiser4/reiser4-utils/${pname}-${version}.tar.gz"; 10 + sha256 = "sha256-WmIkISnRp5BngSfPEKY95HVEt5TBtPKu+RMBwlLsnuA="; 11 }; 12 13 buildInputs = [libaal];
+7 -4
pkgs/tools/graphics/resvg/default.nix
··· 1 - { lib, rustPlatform, fetchFromGitHub }: 2 3 rustPlatform.buildRustPackage rec { 4 pname = "resvg"; 5 - version = "0.13.1"; 6 7 src = fetchFromGitHub { 8 owner = "RazrFalcon"; 9 repo = pname; 10 rev = "v${version}"; 11 - sha256 = "sha256-Jo+dx4+3GpEwOoE8HH0YahBmPvT9Oy2qXMvCJ/NZhF0="; 12 }; 13 14 - cargoSha256 = "sha256-8Es9NZYsC/9PZ6ytWZTAH42U3vxZtJERPSsno1s4TEc="; 15 16 doCheck = false; 17 18 meta = with lib; { 19 description = "An SVG rendering library"; 20 homepage = "https://github.com/RazrFalcon/resvg"; 21 license = licenses.mpl20; 22 maintainers = [ maintainers.marsam ]; 23 };
··· 1 + { stdenv, lib, rustPlatform, fetchFromGitHub, libiconv }: 2 3 rustPlatform.buildRustPackage rec { 4 pname = "resvg"; 5 + version = "0.14.0"; 6 7 src = fetchFromGitHub { 8 owner = "RazrFalcon"; 9 repo = pname; 10 rev = "v${version}"; 11 + sha256 = "sha256-fd97w6yd9ZX2k8Vq+Vh6jouufGdFE02ZV8mb+BtA3tk="; 12 }; 13 14 + cargoSha256 = "sha256-LlEYfjUINQW/YrhNp/Z+fdLQPcvrTjNFtDAk1gyAuj0="; 15 + 16 + buildInputs = lib.optionals stdenv.isDarwin [ libiconv ]; 17 18 doCheck = false; 19 20 meta = with lib; { 21 description = "An SVG rendering library"; 22 homepage = "https://github.com/RazrFalcon/resvg"; 23 + changelog = "https://github.com/RazrFalcon/resvg/raw/v${version}/CHANGELOG.md"; 24 license = licenses.mpl20; 25 maintainers = [ maintainers.marsam ]; 26 };
+2 -2
pkgs/tools/inputmethods/ibus-engines/ibus-anthy/default.nix
··· 13 14 stdenv.mkDerivation rec { 15 pname = "ibus-anthy"; 16 - version = "1.5.11"; 17 18 src = fetchurl { 19 url = "https://github.com/ibus/ibus-anthy/releases/download/${version}/${pname}-${version}.tar.gz"; 20 - sha256 = "1zwgswpibh67sgbza8kvg03v06maxc08ihkgm5hmh333sjq9d5c0"; 21 }; 22 23 buildInputs = [
··· 13 14 stdenv.mkDerivation rec { 15 pname = "ibus-anthy"; 16 + version = "1.5.12"; 17 18 src = fetchurl { 19 url = "https://github.com/ibus/ibus-anthy/releases/download/${version}/${pname}-${version}.tar.gz"; 20 + sha256 = "sha256-6edY3dRq4pI3bqsXEYf6jyBjDwpXzRKKQSCP3N/fV7s="; 21 }; 22 23 buildInputs = [
+2 -2
pkgs/tools/inputmethods/ibus-engines/ibus-table/default.nix
··· 5 6 stdenv.mkDerivation rec { 7 pname = "ibus-table"; 8 - version = "1.12.3"; 9 10 src = fetchFromGitHub { 11 owner = "kaio"; 12 repo = "ibus-table"; 13 rev = version; 14 - sha256 = "sha256-iVbct7p+i8ifSQzOFUUnJU0RHX36cFiTlv7p79iawj8="; 15 }; 16 17 postPatch = ''
··· 5 6 stdenv.mkDerivation rec { 7 pname = "ibus-table"; 8 + version = "1.12.4"; 9 10 src = fetchFromGitHub { 11 owner = "kaio"; 12 repo = "ibus-table"; 13 rev = version; 14 + sha256 = "sha256-2qST5k2+8gfSf1/FaxXW4qwSQgNw/QKM+1mMWDdrjCU="; 15 }; 16 17 postPatch = ''
+3 -3
pkgs/tools/misc/direnv/default.nix
··· 2 3 buildGoModule rec { 4 pname = "direnv"; 5 - version = "2.27.0"; 6 7 src = fetchFromGitHub { 8 owner = "direnv"; 9 repo = "direnv"; 10 rev = "v${version}"; 11 - sha256 = "05vvn59xd2q4yjizh5fprjib5xqq58by80d5avsm8nb1qxf383b1"; 12 }; 13 14 - vendorSha256 = "084x7d7sshcsyim76d6pl6127nlqacgwwnm965srl9y5w5nqzba6"; 15 16 # we have no bash at the moment for windows 17 BASH_PATH =
··· 2 3 buildGoModule rec { 4 pname = "direnv"; 5 + version = "2.28.0"; 6 7 src = fetchFromGitHub { 8 owner = "direnv"; 9 repo = "direnv"; 10 rev = "v${version}"; 11 + sha256 = "sha256-iZ3Lf7Yg+N9BWyLLF+MrT2gpPT9BTcp6pNMpfqwcZXo="; 12 }; 13 14 + vendorSha256 = "sha256-P8NLY1iGh86ntmYsTVlnNh5akdaM8nzcxDn6Nfmgr84="; 15 16 # we have no bash at the moment for windows 17 BASH_PATH =
+2 -2
pkgs/tools/networking/minio-client/default.nix
··· 2 3 buildGoModule rec { 4 pname = "minio-client"; 5 - version = "2021-03-10T05-59-20Z"; 6 7 src = fetchFromGitHub { 8 owner = "minio"; 9 repo = "mc"; 10 rev = "RELEASE.${version}"; 11 - sha256 = "sha256-IoCM2FA6oNiNT6zWspMEqgq4hZ8tAQVEAqouRlBe/ts="; 12 }; 13 14 vendorSha256 = "sha256-aoRdtv/Q7vjn0M7iSYAuyu/3pEH30x6D39xTHqQPvuo=";
··· 2 3 buildGoModule rec { 4 pname = "minio-client"; 5 + version = "2021-03-12T03-36-59Z"; 6 7 src = fetchFromGitHub { 8 owner = "minio"; 9 repo = "mc"; 10 rev = "RELEASE.${version}"; 11 + sha256 = "sha256-aIJjr7KaT4E4Q1Ho4D0emduJWFxdCXCodq7J43r0DMQ="; 12 }; 13 14 vendorSha256 = "sha256-aoRdtv/Q7vjn0M7iSYAuyu/3pEH30x6D39xTHqQPvuo=";
+3 -3
pkgs/tools/package-management/emplace/default.nix
··· 2 3 rustPlatform.buildRustPackage rec { 4 pname = "emplace"; 5 - version = "1.2.0"; 6 7 src = fetchFromGitHub { 8 owner = "tversteeg"; 9 repo = pname; 10 rev = "v${version}"; 11 - sha256 = "sha256-vA+Y4j9Flcrizqh61+4X70FzF5/wK2WVHQRsAUQzKnU="; 12 }; 13 14 - cargoSha256 = "sha256-zGdjMpB7h+/RdM+wXffUuAyHnks6umyJmzUrANmqAS8="; 15 16 meta = with lib; { 17 description = "Mirror installed software on multiple machines";
··· 2 3 rustPlatform.buildRustPackage rec { 4 pname = "emplace"; 5 + version = "1.2.1"; 6 7 src = fetchFromGitHub { 8 owner = "tversteeg"; 9 repo = pname; 10 rev = "v${version}"; 11 + sha256 = "sha256-5t47QrYWbm8A4E1GhqZwME7rmSfU1SYVniRGSrcRpvk="; 12 }; 13 14 + cargoSha256 = "sha256-/GFpjovPGEgkfJ53+wR8CBDXiQQPDCiIaRG2Ka71dhQ="; 15 16 meta = with lib; { 17 description = "Mirror installed software on multiple machines";
+3 -3
pkgs/tools/security/age/default.nix
··· 2 3 buildGoModule rec { 4 pname = "age"; 5 - version = "1.0.0-beta6"; 6 - vendorSha256 = "sha256-FTByNpLkWWHAWe5wVDRBGtKap/5+XGHeBMQAIdlPCkA="; 7 8 src = fetchFromGitHub { 9 owner = "FiloSottile"; 10 repo = "age"; 11 rev = "v${version}"; 12 - sha256 = "sha256-1LCcCEf2/R0am0jpA8yKl44+AoUFkbepxp9V6/nZkBQ="; 13 }; 14 15 meta = with lib; {
··· 2 3 buildGoModule rec { 4 pname = "age"; 5 + version = "1.0.0-rc.1"; 6 + vendorSha256 = "1qx6pkhq00y0lsi6f82g8hxxh65zk1c0ls91ap6hdlj7ch79bhl2"; 7 8 src = fetchFromGitHub { 9 owner = "FiloSottile"; 10 repo = "age"; 11 rev = "v${version}"; 12 + sha256 = "1n25wip4qnd3v9ial1apc2ybx10b9z6lwz7flyss6kvj3x5g9jd1"; 13 }; 14 15 meta = with lib; {
+3 -3
pkgs/tools/security/teler/default.nix
··· 5 6 buildGoModule rec { 7 pname = "teler"; 8 - version = "1.0.3"; 9 10 src = fetchFromGitHub { 11 owner = "kitabisa"; 12 repo = "teler"; 13 rev = "v${version}"; 14 - sha256 = "sha256-6OeGlpimQtw4w26HRzw2wmd3wjASY199p8XXPD/JMy8="; 15 }; 16 17 - vendorSha256 = "sha256-L+wjurURpesCA2IK0r1sxvOUvNJT1wiRp75kpe6LH5s="; 18 19 # test require internet access 20 doCheck = false;
··· 5 6 buildGoModule rec { 7 pname = "teler"; 8 + version = "1.1.0"; 9 10 src = fetchFromGitHub { 11 owner = "kitabisa"; 12 repo = "teler"; 13 rev = "v${version}"; 14 + sha256 = "sha256-0tx/oyHl6s1mj7NyWMZGCJoSuOeB+BMlBrnGY4IN/i4="; 15 }; 16 17 + vendorSha256 = "sha256-KvUnDInUqFW7FypgsppIBQZKNu6HVsEeHtGwdqYtoys="; 18 19 # test require internet access 20 doCheck = false;
+3 -3
pkgs/tools/security/terrascan/default.nix
··· 5 6 buildGoModule rec { 7 pname = "terrascan"; 8 - version = "1.3.3"; 9 10 src = fetchFromGitHub { 11 owner = "accurics"; 12 repo = pname; 13 rev = "v${version}"; 14 - sha256 = "sha256-mPd4HsWbPUNJTUNjQ5zQztoXZy2b9iLksdGKAjp0A58="; 15 }; 16 17 - vendorSha256 = "sha256-eNQTJHqOCOTAPO+vil6rkV9bNWZIdXxGQPE4IpETFtA="; 18 19 # tests want to download a vulnerable Terraform project 20 doCheck = false;
··· 5 6 buildGoModule rec { 7 pname = "terrascan"; 8 + version = "1.4.0"; 9 10 src = fetchFromGitHub { 11 owner = "accurics"; 12 repo = pname; 13 rev = "v${version}"; 14 + sha256 = "sha256-YUrvdleH332fWDgq8AwUdXkFC7m9ap+OVuQhKlxZfII="; 15 }; 16 17 + vendorSha256 = "sha256-CzJ83MsBetrzbBT+fmz8F8MjdrManJAd4xpykh/2938="; 18 19 # tests want to download a vulnerable Terraform project 20 doCheck = false;
+6 -4
pkgs/tools/typesetting/scdoc/default.nix
··· 1 - { lib, stdenv, fetchurl }: 2 3 stdenv.mkDerivation rec { 4 pname = "scdoc"; 5 version = "1.11.1"; 6 7 - src = fetchurl { 8 - url = "https://git.sr.ht/~sircmpwn/scdoc/archive/${version}.tar.gz"; 9 - sha256 = "007pm3gspvya58cwb12wpnrm9dq5p28max2s0b2y9rq80nqgqag5"; 10 }; 11 12 postPatch = ''
··· 1 + { lib, stdenv, fetchFromSourcehut }: 2 3 stdenv.mkDerivation rec { 4 pname = "scdoc"; 5 version = "1.11.1"; 6 7 + src = fetchFromSourcehut { 8 + owner = "~sircmpwn"; 9 + repo = pname; 10 + rev = version; 11 + sha256 = "1g37j847j3h4a4qbbfbr6vvsxpifj9v25jgv25nd71d1n0dxlhvk"; 12 }; 13 14 postPatch = ''
+6 -4
pkgs/tools/wayland/wev/default.nix
··· 1 { lib 2 , stdenv 3 - , fetchurl 4 , pkg-config 5 , scdoc 6 , wayland ··· 12 pname = "wev"; 13 version = "1.0.0"; 14 15 - src = fetchurl { 16 - url = "https://git.sr.ht/~sircmpwn/wev/archive/${version}.tar.gz"; 17 - sha256 = "0vlxdkb59v6nb10j28gh1a56sx8jk7ak7liwzv911kpmygnls03g"; 18 }; 19 20 nativeBuildInputs = [ pkg-config scdoc wayland ];
··· 1 { lib 2 , stdenv 3 + , fetchFromSourcehut 4 , pkg-config 5 , scdoc 6 , wayland ··· 12 pname = "wev"; 13 version = "1.0.0"; 14 15 + src = fetchFromSourcehut { 16 + owner = "~sircmpwn"; 17 + repo = pname; 18 + rev = version; 19 + sha256 = "0l71v3fzgiiv6xkk365q1l08qvaymxd4kpaya6r2g8yzkr7i2hms"; 20 }; 21 22 nativeBuildInputs = [ pkg-config scdoc wayland ];
+6 -4
pkgs/tools/wayland/wlsunset/default.nix
··· 1 - { lib, stdenv, fetchurl, meson, pkg-config, ninja, wayland 2 , wayland-protocols 3 }: 4 ··· 6 pname = "wlsunset"; 7 version = "0.1.0"; 8 9 - src = fetchurl { 10 - url = "https://git.sr.ht/~kennylevinsen/wlsunset/archive/${version}.tar.gz"; 11 - sha256 = "0g7mk14hlbwbhq6nqr84452sbgcja3hdxsqf0vws4njhfjgqiv3q"; 12 }; 13 14 nativeBuildInputs = [ meson pkg-config ninja wayland ];
··· 1 + { lib, stdenv, fetchFromSourcehut, meson, pkg-config, ninja, wayland 2 , wayland-protocols 3 }: 4 ··· 6 pname = "wlsunset"; 7 version = "0.1.0"; 8 9 + src = fetchFromSourcehut { 10 + owner = "~kennylevinsen"; 11 + repo = pname; 12 + rev = version; 13 + sha256 = "12snizvf49y40cirhr2brgyldhsykv4k2gnln2sdrajqzhrc98v6"; 14 }; 15 16 nativeBuildInputs = [ meson pkg-config ninja wayland ];
+6 -4
pkgs/tools/wayland/wshowkeys/default.nix
··· 1 - { lib, stdenv, fetchurl 2 , meson, pkg-config, wayland, ninja 3 , cairo, libinput, pango, wayland-protocols, libxkbcommon 4 }: ··· 10 pname = "wshowkeys-unstable"; 11 inherit version; 12 13 - src = fetchurl { 14 - url = "https://git.sr.ht/~sircmpwn/wshowkeys/archive/${commit}.tar.gz"; 15 - sha256 = "0iplmw13jmc8d3m307kc047zq8yqwm42kw9fpm270562i3p0qk4d"; 16 }; 17 18 nativeBuildInputs = [ meson pkg-config wayland ninja ];
··· 1 + { lib, stdenv, fetchFromSourcehut 2 , meson, pkg-config, wayland, ninja 3 , cairo, libinput, pango, wayland-protocols, libxkbcommon 4 }: ··· 10 pname = "wshowkeys-unstable"; 11 inherit version; 12 13 + src = fetchFromSourcehut { 14 + owner = "~sircmpwn"; 15 + repo = "wshowkeys"; 16 + rev = commit; 17 + sha256 = "10kafdja5cwbypspwhvaxjz3hvf51vqjzbgdasl977193cvxgmbs"; 18 }; 19 20 nativeBuildInputs = [ meson pkg-config wayland ninja ];
+21 -9
pkgs/top-level/aliases.nix
··· 240 gnome_doc_utils = gnome-doc-utils; # added 2018-02-25 241 gnome_themes_standard = gnome-themes-standard; # added 2018-02-25 242 gnunet_git = throw "gnunet_git was removed due to gnunet becoming stable"; # added 2019-05-27 243 - gnuradio-nacl = gr-nacl; # added 2019-05-27 244 - gnuradio-gsm = gr-gsm; # added 2019-05-27 245 - gnuradio-ais = gr-ais; # added 2019-05-27 246 - gnuradio-limesdr = gr-limesdr; # added 2019-05-27 247 - gnuradio-rds = gr-rds; # added 2019-05-27 248 - gnuradio-osmosdr = gr-osmosdr; # added 2019-05-27 249 - # added 20-10-2020 250 gnuradio-with-packages = gnuradio3_7.override { 251 - extraPackages = [ gr-nacl gr-gsm gr-ais gr-limesdr gr-rds gr-osmosdr ]; 252 }; 253 gnustep-make = gnustep.make; # added 2016-7-6 254 gnupg20 = throw "gnupg20 has been removed from nixpkgs as upstream dropped support on 2017-12-31";# added 2020-07-12 255 gnuvd = throw "gnuvd was removed because the backend service is missing"; # added 2020-01-14 ··· 302 json_glib = json-glib; # added 2018-02-25 303 kdecoration-viewer = throw "kdecoration-viewer has been removed from nixpkgs, as there is no upstream activity"; # 2020-06-16 304 k9copy = throw "k9copy has been removed from nixpkgs, as there is no upstream activity"; # 2020-11-06 305 julia_07 = throw "julia_07 is deprecated in favor of julia_10 LTS"; # added 2020-09-15 306 julia_11 = throw "julia_11 is deprecated in favor of latest Julia version"; # added 2020-09-15 307 kdeconnect = plasma5Packages.kdeconnect-kde; # added 2020-10-28 ··· 780 xara = throw "xara has been removed from nixpkgs. Unmaintained since 2006"; # added 2020-06-24 781 xbmc = kodi; # added 2018-04-25 782 xbmcPlain = kodiPlain; # added 2018-04-25 783 - xbmcPlugins = kodiPlugins; # added 2018-04-25 784 xmonad_log_applet_gnome3 = xmonad_log_applet; # added 2018-05-01 785 xmpppy = throw "xmpppy has been removed from nixpkgs as it is unmaintained and python2-only"; 786 pyIRCt = throw "pyIRCt has been removed from nixpkgs as it is unmaintained and python2-only";
··· 240 gnome_doc_utils = gnome-doc-utils; # added 2018-02-25 241 gnome_themes_standard = gnome-themes-standard; # added 2018-02-25 242 gnunet_git = throw "gnunet_git was removed due to gnunet becoming stable"; # added 2019-05-27 243 + # Added 2020-10-16 244 gnuradio-with-packages = gnuradio3_7.override { 245 + extraPackages = lib.attrVals [ 246 + "osmosdr" "ais" "gsm" "nacl" "rds" "limesdr" 247 + ] gnuradio3_7Packages; 248 }; 249 + gnuradio-nacl = gnuradio3_7.pkgs.nacl; # added 2019-05-27, changed 2020-10-16 250 + gnuradio-gsm = gnuradio3_7.pkgs.gsm; # added 2019-05-27, changed 2020-10-16 251 + gnuradio-ais = gnuradio3_7.pkgs.ais; # added 2019-05-27, changed 2020-10-16 252 + gnuradio-limesdr = gnuradio3_7.pkgs.limesdr; # added 2019-05-27, changed 2020-10-16 253 + gnuradio-rds = gnuradio3_7.pkgs.rds; # added 2019-05-27, changed 2020-10-16 254 + gnuradio-osmosdr = gnuradio3_7.pkgs.osmosdr; # added 2019-05-27, changed 2020-10-16 255 + gr-nacl = gnuradio3_7.pkgs.nacl; # added 2019-05-27, changed 2020-10-16 256 + gr-gsm = gnuradio3_7.pkgs.gsm; # added 2019-05-27, changed 2020-10-16 257 + gr-ais = gnuradio3_7.pkgs.ais; # added 2019-05-27, changed 2020-10-16 258 + gr-limesdr = gnuradio3_7.pkgs.limesdr; # added 2019-05-27, changed 2020-10-16 259 + gr-rds = gnuradio3_7.pkgs.rds; # added 2019-05-27, changed 2020-10-16 260 + gr-osmosdr = gnuradio3_7.pkgs.osmosdr; # added 2019-05-27, changed 2020-10-16 261 gnustep-make = gnustep.make; # added 2016-7-6 262 gnupg20 = throw "gnupg20 has been removed from nixpkgs as upstream dropped support on 2017-12-31";# added 2020-07-12 263 gnuvd = throw "gnuvd was removed because the backend service is missing"; # added 2020-01-14 ··· 310 json_glib = json-glib; # added 2018-02-25 311 kdecoration-viewer = throw "kdecoration-viewer has been removed from nixpkgs, as there is no upstream activity"; # 2020-06-16 312 k9copy = throw "k9copy has been removed from nixpkgs, as there is no upstream activity"; # 2020-11-06 313 + kodiGBM = kodi-gbm; 314 + kodiPlain = kodi; 315 + kodiPlainWayland = kodi-wayland; 316 julia_07 = throw "julia_07 is deprecated in favor of julia_10 LTS"; # added 2020-09-15 317 julia_11 = throw "julia_11 is deprecated in favor of latest Julia version"; # added 2020-09-15 318 kdeconnect = plasma5Packages.kdeconnect-kde; # added 2020-10-28 ··· 791 xara = throw "xara has been removed from nixpkgs. Unmaintained since 2006"; # added 2020-06-24 792 xbmc = kodi; # added 2018-04-25 793 xbmcPlain = kodiPlain; # added 2018-04-25 794 + xbmcPlugins = kodiPackages; # added 2018-04-25 795 + kodiPlugins = kodiPackages; # added 2021-03-09; 796 xmonad_log_applet_gnome3 = xmonad_log_applet; # added 2018-05-01 797 xmpppy = throw "xmpppy has been removed from nixpkgs as it is unmaintained and python2-only"; 798 pyIRCt = throw "pyIRCt has been removed from nixpkgs as it is unmaintained and python2-only";
+94 -124
pkgs/top-level/all-packages.nix
··· 2780 2781 precice = callPackage ../development/libraries/precice { }; 2782 2783 - pueue = callPackage ../applications/misc/pueue { }; 2784 2785 pixiecore = callPackage ../tools/networking/pixiecore {}; 2786 ··· 3957 }; 3958 3959 volctl = callPackage ../tools/audio/volctl { }; 3960 3961 vorta = libsForQt5.callPackage ../applications/backup/vorta { }; 3962 ··· 13150 13151 uefi-firmware-parser = callPackage ../development/tools/analysis/uefi-firmware-parser { }; 13152 13153 - uhd = callPackage ../applications/radio/uhd { }; 13154 13155 uisp = callPackage ../development/tools/misc/uisp { }; 13156 ··· 16785 16786 qm-dsp = callPackage ../development/libraries/audio/qm-dsp { }; 16787 16788 - qradiolink = callPackage ../applications/radio/qradiolink { 16789 - # 3.8 support is not ready yet: 16790 - # https://github.com/qradiolink/qradiolink/issues/67#issuecomment-703222573 16791 - # The non minimal build is used because the 'qtgui' component is needed. 16792 - # gr-osmosdr is using the same gnuradio as of now. 16793 - gnuradio = gnuradio3_7-unwrapped; 16794 - }; 16795 16796 qrupdate = callPackage ../development/libraries/qrupdate { }; 16797 ··· 18607 prometheus-fritzbox-exporter = callPackage ../servers/monitoring/prometheus/fritzbox-exporter.nix { }; 18608 prometheus-gitlab-ci-pipelines-exporter = callPackage ../servers/monitoring/prometheus/gitlab-ci-pipelines-exporter.nix { }; 18609 prometheus-haproxy-exporter = callPackage ../servers/monitoring/prometheus/haproxy-exporter.nix { }; 18610 prometheus-json-exporter = callPackage ../servers/monitoring/prometheus/json-exporter.nix { }; 18611 prometheus-keylight-exporter = callPackage ../servers/monitoring/prometheus/keylight-exporter.nix { }; 18612 prometheus-knot-exporter = callPackage ../servers/monitoring/prometheus/knot-exporter.nix { }; ··· 22344 22345 gksu = callPackage ../applications/misc/gksu { }; 22346 22347 - gnss-sdr = callPackage ../applications/radio/gnss-sdr { 22348 - boost = boost166; 22349 - gnuradio = gnuradio3_7-unwrapped; 22350 - }; 22351 22352 - gnuradio-unwrapped = callPackage ../applications/radio/gnuradio { 22353 - inherit (darwin.apple_sdk.frameworks) CoreAudio; 22354 - python = python3; 22355 }; 22356 # A build without gui components and other utilites not needed for end user 22357 # libraries 22358 - gnuradioMinimal = gnuradio-unwrapped.override { 22359 - features = { 22360 - gnuradio-companion = false; 22361 - python-support = false; 22362 - gr-ctrlport = false; 22363 - examples = false; 22364 - gr-qtgui = false; 22365 - gr-utils = false; 22366 - gr-modtool = false; 22367 - sphinx = false; 22368 - doxygen = false; 22369 }; 22370 }; 22371 - gnuradio = callPackage ../applications/radio/gnuradio/wrapper.nix { 22372 - unwrapped = gnuradio-unwrapped; 22373 }; 22374 - gnuradio3_7-unwrapped = callPackage ../applications/radio/gnuradio/3.7.nix { 22375 - inherit (darwin.apple_sdk.frameworks) CoreAudio; 22376 - python = python2; 22377 - }; 22378 # A build without gui components and other utilites not needed if gnuradio is 22379 # used as a c++ library. 22380 - gnuradio3_7Minimal = gnuradio3_7-unwrapped.override { 22381 - features = { 22382 - gnuradio-companion = false; 22383 - python-support = false; 22384 - gr-ctrlport = false; 22385 - gr-qtgui = false; 22386 - gr-utils = false; 22387 - sphinx = false; 22388 - doxygen = false; 22389 - gr-wxgui = false; 22390 }; 22391 }; 22392 gnuradio3_7 = callPackage ../applications/radio/gnuradio/wrapper.nix { 22393 - unwrapped = gnuradio3_7-unwrapped; 22394 - }; 22395 - 22396 - grandorgue = callPackage ../applications/audio/grandorgue { }; 22397 - 22398 - gr-nacl = callPackage ../applications/radio/gnuradio/nacl.nix { 22399 - gnuradio = gnuradio3_7-unwrapped; 22400 }; 22401 - 22402 - gr-gsm = callPackage ../applications/radio/gnuradio/gsm.nix { 22403 - gnuradio = gnuradio3_7-unwrapped; 22404 - }; 22405 - 22406 - gr-ais = callPackage ../applications/radio/gnuradio/ais.nix { 22407 - gnuradio = gnuradio3_7-unwrapped; 22408 - }; 22409 - 22410 - gr-limesdr = callPackage ../applications/radio/gnuradio/limesdr.nix { 22411 - gnuradio = gnuradio3_7-unwrapped; 22412 - }; 22413 - 22414 - gr-rds = callPackage ../applications/radio/gnuradio/rds.nix { 22415 - gnuradio = gnuradio3_7-unwrapped; 22416 }; 22417 22418 - gr-osmosdr = callPackage ../applications/radio/gnuradio/osmosdr.nix { 22419 - gnuradio = gnuradio3_7-unwrapped; 22420 - }; 22421 22422 goldendict = libsForQt5.callPackage ../applications/misc/goldendict { 22423 inherit (darwin) libiconv; ··· 22445 22446 gpx = callPackage ../applications/misc/gpx { }; 22447 22448 - gqrx = libsForQt514.callPackage ../applications/radio/gqrx { 22449 - gnuradio = gnuradio3_7Minimal; 22450 - # Use the same gnuradio for gr-osmosdr as well 22451 - gr-osmosdr = gr-osmosdr.override { 22452 - gnuradio = gnuradio3_7Minimal; 22453 - pythonSupport = false; 22454 - }; 22455 - }; 22456 22457 gpx-viewer = callPackage ../applications/misc/gpx-viewer { }; 22458 ··· 23300 23301 inkscape-extensions = recurseIntoAttrs (callPackages ../applications/graphics/inkscape/extensions.nix {}); 23302 23303 - inspectrum = libsForQt514.callPackage ../applications/radio/inspectrum { 23304 - gnuradio = gnuradioMinimal; 23305 - }; 23306 23307 ion3 = callPackage ../applications/window-managers/ion-3 { 23308 lua = lua5_1; ··· 26187 cores = retroArchCores; 26188 }; 26189 26190 - wrapKodi = { kodi }: callPackage ../applications/video/kodi/wrapper.nix { 26191 - inherit kodi; 26192 - plugins = let inherit (lib) optional optionals; in with kodiPlugins; 26193 - ([] 26194 - ++ optional (config.kodi.enableAdvancedLauncher or false) advanced-launcher 26195 - ++ optional (config.kodi.enableAdvancedEmulatorLauncher or false) 26196 - advanced-emulator-launcher 26197 - ++ optionals (config.kodi.enableControllers or false) 26198 - (with controllers; 26199 - [ default dreamcast gba genesis mouse n64 nes ps snes ]) 26200 - ++ optional (config.kodi.enableExodus or false) exodus 26201 - ++ optionals (config.kodi.enableHyperLauncher or false) 26202 - (with hyper-launcher; [ plugin service pdfreader ]) 26203 - ++ optional (config.kodi.enableJoystick or false) joystick 26204 - ++ optional (config.kodi.enableOSMCskin or false) osmc-skin 26205 - ++ optional (config.kodi.enableSVTPlay or false) svtplay 26206 - ++ optional (config.kodi.enableSteamController or false) steam-controller 26207 - ++ optional (config.kodi.enableSteamLauncher or false) steam-launcher 26208 - ++ optional (config.kodi.enablePVRHTS or false) pvr-hts 26209 - ++ optional (config.kodi.enablePVRHDHomeRun or false) pvr-hdhomerun 26210 - ++ optional (config.kodi.enablePVRIPTVSimple or false) pvr-iptvsimple 26211 - ++ optional (config.kodi.enableInputStreamAdaptive or false) inputstream-adaptive 26212 - ++ optional (config.kodi.enableVFSSFTP or false) vfs-sftp 26213 - ++ optional (config.kodi.enableVFSLibarchive or false) vfs-libarchive 26214 - ); 26215 - }; 26216 - 26217 wsjtx = qt5.callPackage ../applications/radio/wsjtx { }; 26218 26219 wxhexeditor = callPackage ../applications/editors/wxhexeditor { ··· 26271 gtk = gtk2; 26272 }; 26273 26274 - kodiPlain = callPackage ../applications/video/kodi { }; 26275 - 26276 - kodiPlainWayland = callPackage ../applications/video/kodi { 26277 - useWayland = true; 26278 - }; 26279 - 26280 - kodiGBM = callPackage ../applications/video/kodi { 26281 - useGbm = true; 26282 - }; 26283 - 26284 - kodiPlugins = recurseIntoAttrs (callPackage ../applications/video/kodi/plugins.nix {}); 26285 26286 - kodi = wrapKodi { 26287 - kodi = kodiPlain; 26288 - }; 26289 26290 - kodi-wayland = wrapKodi { 26291 - kodi = kodiPlainWayland; 26292 }; 26293 26294 - kodi-gbm = wrapKodi { 26295 - kodi = kodiGBM; 26296 }; 26297 26298 kodi-cli = callPackage ../tools/misc/kodi-cli { };
··· 2780 2781 precice = callPackage ../development/libraries/precice { }; 2782 2783 + pueue = callPackage ../applications/misc/pueue { 2784 + inherit (darwin.apple_sdk.frameworks) SystemConfiguration; 2785 + }; 2786 2787 pixiecore = callPackage ../tools/networking/pixiecore {}; 2788 ··· 3959 }; 3960 3961 volctl = callPackage ../tools/audio/volctl { }; 3962 + 3963 + volk = callPackage ../development/libraries/volk { }; 3964 3965 vorta = libsForQt5.callPackage ../applications/backup/vorta { }; 3966 ··· 13154 13155 uefi-firmware-parser = callPackage ../development/tools/analysis/uefi-firmware-parser { }; 13156 13157 + uhd3_5 = callPackage ../applications/radio/uhd/3.5.nix { }; 13158 + uhd = callPackage ../applications/radio/uhd { 13159 + boost = boost17x; 13160 + }; 13161 13162 uisp = callPackage ../development/tools/misc/uisp { }; 13163 ··· 16792 16793 qm-dsp = callPackage ../development/libraries/audio/qm-dsp { }; 16794 16795 + qradiolink = callPackage ../applications/radio/qradiolink { }; 16796 16797 qrupdate = callPackage ../development/libraries/qrupdate { }; 16798 ··· 18608 prometheus-fritzbox-exporter = callPackage ../servers/monitoring/prometheus/fritzbox-exporter.nix { }; 18609 prometheus-gitlab-ci-pipelines-exporter = callPackage ../servers/monitoring/prometheus/gitlab-ci-pipelines-exporter.nix { }; 18610 prometheus-haproxy-exporter = callPackage ../servers/monitoring/prometheus/haproxy-exporter.nix { }; 18611 + prometheus-jitsi-exporter = callPackage ../servers/monitoring/prometheus/jitsi-exporter.nix { }; 18612 prometheus-json-exporter = callPackage ../servers/monitoring/prometheus/json-exporter.nix { }; 18613 prometheus-keylight-exporter = callPackage ../servers/monitoring/prometheus/keylight-exporter.nix { }; 18614 prometheus-knot-exporter = callPackage ../servers/monitoring/prometheus/knot-exporter.nix { }; ··· 22346 22347 gksu = callPackage ../applications/misc/gksu { }; 22348 22349 + gnss-sdr = callPackage ../applications/radio/gnss-sdr { }; 22350 22351 + gnuradio = callPackage ../applications/radio/gnuradio/wrapper.nix { 22352 + unwrapped = callPackage ../applications/radio/gnuradio { 22353 + inherit (darwin.apple_sdk.frameworks) CoreAudio; 22354 + python = python3; 22355 + boost = boost17x; 22356 + }; 22357 }; 22358 + gnuradioPackages = lib.recurseIntoAttrs gnuradio.pkgs; 22359 # A build without gui components and other utilites not needed for end user 22360 # libraries 22361 + gnuradioMinimal = gnuradio.override { 22362 + wrap = false; 22363 + unwrapped = gnuradio.unwrapped.override { 22364 + volk = volk.override { 22365 + # So it will not reference python 22366 + enableModTool = false; 22367 + }; 22368 + features = { 22369 + gnuradio-companion = false; 22370 + python-support = false; 22371 + examples = false; 22372 + gr-qtgui = false; 22373 + gr-utils = false; 22374 + gr-modtool = false; 22375 + gr-blocktool = false; 22376 + sphinx = false; 22377 + doxygen = false; 22378 + }; 22379 }; 22380 }; 22381 + gnuradio3_8 = callPackage ../applications/radio/gnuradio/wrapper.nix { 22382 + unwrapped = callPackage ../applications/radio/gnuradio/3.8.nix { 22383 + inherit (darwin.apple_sdk.frameworks) CoreAudio; 22384 + python = python3; 22385 + boost = boost17x; 22386 + }; 22387 }; 22388 + gnuradio3_8Packages = lib.recurseIntoAttrs gnuradio3_8.pkgs; 22389 # A build without gui components and other utilites not needed if gnuradio is 22390 # used as a c++ library. 22391 + gnuradio3_8Minimal = gnuradio3_8.override { 22392 + wrap = false; 22393 + unwrapped = gnuradio3_8.unwrapped.override { 22394 + volk = volk.override { 22395 + enableModTool = false; 22396 + }; 22397 + features = { 22398 + gnuradio-companion = false; 22399 + python-support = false; 22400 + examples = false; 22401 + gr-qtgui = false; 22402 + gr-utils = false; 22403 + gr-modtool = false; 22404 + sphinx = false; 22405 + doxygen = false; 22406 + }; 22407 }; 22408 }; 22409 gnuradio3_7 = callPackage ../applications/radio/gnuradio/wrapper.nix { 22410 + unwrapped = callPackage ../applications/radio/gnuradio/3.7.nix { 22411 + inherit (darwin.apple_sdk.frameworks) CoreAudio; 22412 + python = python2; 22413 + # Incompatible with uhd4+ 22414 + uhd = uhd3_5; 22415 + }; 22416 }; 22417 + gnuradio3_7Packages = lib.recurseIntoAttrs gnuradio3_7.pkgs; 22418 + # A build without gui components and other utilites not needed if gnuradio is 22419 + # used as a c++ library. 22420 + gnuradio3_7Minimal = gnuradio3_7.override { 22421 + wrap = false; 22422 + unwrapped = gnuradio3_7.unwrapped.override { 22423 + volk = volk.override { 22424 + enableModTool = false; 22425 + }; 22426 + features = { 22427 + gnuradio-companion = false; 22428 + python-support = false; 22429 + gr-qtgui = false; 22430 + gr-utils = false; 22431 + sphinx = false; 22432 + doxygen = false; 22433 + gr-wxgui = false; 22434 + }; 22435 + }; 22436 }; 22437 22438 + grandorgue = callPackage ../applications/audio/grandorgue { }; 22439 22440 goldendict = libsForQt5.callPackage ../applications/misc/goldendict { 22441 inherit (darwin) libiconv; ··· 22463 22464 gpx = callPackage ../applications/misc/gpx { }; 22465 22466 + gqrx = callPackage ../applications/radio/gqrx { }; 22467 22468 gpx-viewer = callPackage ../applications/misc/gpx-viewer { }; 22469 ··· 23311 23312 inkscape-extensions = recurseIntoAttrs (callPackages ../applications/graphics/inkscape/extensions.nix {}); 23313 23314 + inspectrum = callPackage ../applications/radio/inspectrum { }; 23315 23316 ion3 = callPackage ../applications/window-managers/ion-3 { 23317 lua = lua5_1; ··· 26196 cores = retroArchCores; 26197 }; 26198 26199 wsjtx = qt5.callPackage ../applications/radio/wsjtx { }; 26200 26201 wxhexeditor = callPackage ../applications/editors/wxhexeditor { ··· 26253 gtk = gtk2; 26254 }; 26255 26256 + kodiPackages = recurseIntoAttrs (kodi.packages); 26257 26258 + kodi = callPackage ../applications/video/kodi { }; 26259 26260 + kodi-wayland = callPackage ../applications/video/kodi { 26261 + waylandSupport = true; 26262 }; 26263 26264 + kodi-gbm = callPackage ../applications/video/kodi { 26265 + gbmSupport = true; 26266 }; 26267 26268 kodi-cli = callPackage ../tools/misc/kodi-cli { };
+47
pkgs/top-level/gnuradio-packages.nix
···
··· 1 + { lib 2 + , stdenv 3 + , newScope 4 + , gnuradio # unwrapped gnuradio 5 + }: 6 + 7 + lib.makeScope newScope ( self: 8 + 9 + let 10 + # Modeled after qt's 11 + mkDerivationWith = import ../development/gnuradio-modules/mkDerivation.nix { 12 + inherit lib; 13 + unwrapped = gnuradio; 14 + }; 15 + mkDerivation = mkDerivationWith stdenv.mkDerivation; 16 + 17 + callPackage = self.newScope { 18 + inherit (gnuradio) 19 + # Packages that are potentially overriden and used as deps here. 20 + boost 21 + uhd 22 + volk 23 + ; 24 + inherit mkDerivationWith mkDerivation; 25 + }; 26 + 27 + in { 28 + 29 + inherit callPackage mkDerivation mkDerivationWith; 30 + 31 + ### Packages 32 + 33 + inherit gnuradio; 34 + 35 + osmosdr = callPackage ../development/gnuradio-modules/osmosdr/default.nix { }; 36 + 37 + ais = callPackage ../development/gnuradio-modules/ais/default.nix { }; 38 + 39 + gsm = callPackage ../development/gnuradio-modules/gsm/default.nix { }; 40 + 41 + nacl = callPackage ../development/gnuradio-modules/nacl/default.nix { }; 42 + 43 + rds = callPackage ../development/gnuradio-modules/rds/default.nix { }; 44 + 45 + limesdr = callPackage ../development/gnuradio-modules/limesdr/default.nix { }; 46 + 47 + })