Merge master into staging-next

+355 -235
+2 -2
README.md
··· 16 16 17 17 * [NixOS Manual](https://nixos.org/nixos/manual) - how to install, configure, and maintain a purely-functional Linux distribution 18 18 * [Nixpkgs Manual](https://nixos.org/nixpkgs/manual/) - contributing to Nixpkgs and using programming-language-specific Nix expressions 19 - * [Nix Package Manager Manual](https://nixos.org/nix/manual) - how to write Nix expresssions (programs), and how to use Nix command line tools 19 + * [Nix Package Manager Manual](https://nixos.org/nix/manual) - how to write Nix expressions (programs), and how to use Nix command line tools 20 20 21 21 # Community 22 22 ··· 27 27 28 28 # Other Project Repositories 29 29 30 - The sources of all offical Nix-related projects are in the [NixOS 30 + The sources of all official Nix-related projects are in the [NixOS 31 31 organization on GitHub](https://github.com/NixOS/). Here are some of 32 32 the main ones: 33 33
+3
lib/systems/doubles.nix
··· 27 27 "riscv32-linux" "riscv64-linux" 28 28 29 29 "aarch64-none" "avr-none" "arm-none" "i686-none" "x86_64-none" "powerpc-none" "msp430-none" "riscv64-none" "riscv32-none" "vc4-none" 30 + 31 + "js-ghcjs" 30 32 ]; 31 33 32 34 allParsed = map parse.mkSystemFromString all; ··· 46 48 mips = filterDoubles predicates.isMips; 47 49 riscv = filterDoubles predicates.isRiscV; 48 50 vc4 = filterDoubles predicates.isVc4; 51 + js = filterDoubles predicates.isJavaScript; 49 52 50 53 cygwin = filterDoubles predicates.isCygwin; 51 54 darwin = filterDoubles predicates.isDarwin;
+1 -1
lib/tests/systems.nix
··· 12 12 expected = lib.sort lib.lessThan y; 13 13 }; 14 14 in with lib.systems.doubles; lib.runTests { 15 - testall = mseteq all (linux ++ darwin ++ freebsd ++ openbsd ++ netbsd ++ illumos ++ wasi ++ windows ++ embedded); 15 + testall = mseteq all (linux ++ darwin ++ freebsd ++ openbsd ++ netbsd ++ illumos ++ wasi ++ windows ++ embedded ++ js); 16 16 17 17 testarm = mseteq arm [ "armv5tel-linux" "armv6l-linux" "armv7a-linux" "armv7l-linux" "arm-none" "armv7a-darwin" ]; 18 18 testi686 = mseteq i686 [ "i686-linux" "i686-freebsd" "i686-netbsd" "i686-openbsd" "i686-cygwin" "i686-windows" "i686-none" "i686-darwin" ];
+1
nixos/modules/module-list.nix
··· 95 95 ./programs/adb.nix 96 96 ./programs/atop.nix 97 97 ./programs/autojump.nix 98 + ./programs/bandwhich.nix 98 99 ./programs/bash/bash.nix 99 100 ./programs/bcc.nix 100 101 ./programs/browserpass.nix
+29
nixos/modules/programs/bandwhich.nix
··· 1 + { config, lib, pkgs, ... }: 2 + 3 + with lib; 4 + 5 + let cfg = config.programs.bandwhich; 6 + in { 7 + meta.maintainers = with maintainers; [ filalex77 ]; 8 + 9 + options = { 10 + programs.bandwhich = { 11 + enable = mkOption { 12 + type = types.bool; 13 + default = false; 14 + description = '' 15 + Whether to add bandwhich to the global environment and configure a 16 + setcap wrapper for it. 17 + ''; 18 + }; 19 + }; 20 + }; 21 + 22 + config = mkIf cfg.enable { 23 + environment.systemPackages = with pkgs; [ bandwhich ]; 24 + security.wrappers.bandwhich = { 25 + source = "${pkgs.bandwhich}/bin/bandwhich"; 26 + capabilities = "cap_net_raw,cap_net_admin+ep"; 27 + }; 28 + }; 29 + }
+1 -1
nixos/modules/services/torrent/transmission.nix
··· 118 118 # 1) Only the "transmission" user and group have access to torrents. 119 119 # 2) Optionally update/force specific fields into the configuration file. 120 120 serviceConfig.ExecStartPre = preStart; 121 - serviceConfig.ExecStart = "${pkgs.transmission}/bin/transmission-daemon -f --port ${toString config.services.transmission.port}"; 121 + serviceConfig.ExecStart = "${pkgs.transmission}/bin/transmission-daemon -f --port ${toString config.services.transmission.port} --config-dir ${settingsDir}"; 122 122 serviceConfig.ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID"; 123 123 serviceConfig.User = cfg.user; 124 124 serviceConfig.Group = cfg.group;
+1 -1
nixos/modules/services/web-apps/nextcloud.nix
··· 62 62 https = mkOption { 63 63 type = types.bool; 64 64 default = false; 65 - description = "Enable if there is a TLS terminating proxy in front of nextcloud."; 65 + description = "Use https for generated links."; 66 66 }; 67 67 68 68 maxUploadSize = mkOption {
+1 -14
nixos/modules/virtualisation/containers.nix
··· 225 225 fi 226 226 ${concatStringsSep "\n" (mapAttrsToList renderExtraVeth cfg.extraVeths)} 227 227 fi 228 - 229 - # Get the leader PID so that we can signal it in 230 - # preStop. We can't use machinectl there because D-Bus 231 - # might be shutting down. FIXME: in systemd 219 we can 232 - # just signal systemd-nspawn to do a clean shutdown. 233 - machinectl show "$INSTANCE" | sed 's/Leader=\(.*\)/\1/;t;d' > "/run/containers/$INSTANCE.pid" 234 228 '' 235 229 ); 236 230 ··· 715 709 716 710 postStart = postStartScript dummyConfig; 717 711 718 - preStop = 719 - '' 720 - pid="$(cat /run/containers/$INSTANCE.pid)" 721 - if [ -n "$pid" ]; then 722 - kill -RTMIN+4 "$pid" 723 - fi 724 - rm -f "/run/containers/$INSTANCE.pid" 725 - ''; 712 + preStop = "machinectl poweroff $INSTANCE"; 726 713 727 714 restartIfChanged = false; 728 715
+22 -22
pkgs/applications/editors/jetbrains/default.nix
··· 250 250 251 251 clion = buildClion rec { 252 252 name = "clion-${version}"; 253 - version = "2019.2.5"; /* updated by script */ 253 + version = "2019.3.2"; /* updated by script */ 254 254 description = "C/C++ IDE. New. Intelligent. Cross-platform"; 255 255 license = stdenv.lib.licenses.unfree; 256 256 src = fetchurl { 257 257 url = "https://download.jetbrains.com/cpp/CLion-${version}.tar.gz"; 258 - sha256 = "0p0shikhf73ayflv5bm212kz06hiy3brww9h9ijjp6lcadxc9pmf"; /* updated by script */ 258 + sha256 = "0aksix22cbbxny68650qxjbbm1fmgbsnp97qix5kl5nx4y4yvlii"; /* updated by script */ 259 259 }; 260 260 wmClass = "jetbrains-clion"; 261 261 update-channel = "CLion RELEASE"; # channel's id as in http://www.jetbrains.com/updates/updates.xml ··· 263 263 264 264 datagrip = buildDataGrip rec { 265 265 name = "datagrip-${version}"; 266 - version = "2019.2.6"; /* updated by script */ 266 + version = "2019.3.1"; /* updated by script */ 267 267 description = "Your Swiss Army Knife for Databases and SQL"; 268 268 license = stdenv.lib.licenses.unfree; 269 269 src = fetchurl { 270 270 url = "https://download.jetbrains.com/datagrip/${name}.tar.gz"; 271 - sha256 = "0g57njcklyskadxmvwb0r0z3ckq9qmcwh8qd80w396gj8fgbg50g"; /* updated by script */ 271 + sha256 = "1h7va6x625kxc2i22mnya64b1kb4vl5xgjxrv3lqwz725q5hkrxa"; /* updated by script */ 272 272 }; 273 273 wmClass = "jetbrains-datagrip"; 274 274 update-channel = "DataGrip RELEASE"; ··· 276 276 277 277 goland = buildGoland rec { 278 278 name = "goland-${version}"; 279 - version = "2019.2.4"; /* updated by script */ 279 + version = "2019.3.1"; /* updated by script */ 280 280 description = "Up and Coming Go IDE"; 281 281 license = stdenv.lib.licenses.unfree; 282 282 src = fetchurl { 283 283 url = "https://download.jetbrains.com/go/${name}.tar.gz"; 284 - sha256 = "0rkyw3532qvr6jhr09m3h0ssdy5ilfgfvqqliyf0cacwzw9lfv0p"; /* updated by script */ 284 + sha256 = "1lj5i71nw2m9xwv6q48b86kipiwj927bxiwxppb4isqax2w6250d"; /* updated by script */ 285 285 }; 286 286 wmClass = "jetbrains-goland"; 287 287 update-channel = "GoLand RELEASE"; ··· 289 289 290 290 idea-community = buildIdea rec { 291 291 name = "idea-community-${version}"; 292 - version = "2019.2.4"; /* updated by script */ 292 + version = "2019.3.1"; /* updated by script */ 293 293 description = "Integrated Development Environment (IDE) by Jetbrains, community edition"; 294 294 license = stdenv.lib.licenses.asl20; 295 295 src = fetchurl { 296 296 url = "https://download.jetbrains.com/idea/ideaIC-${version}.tar.gz"; 297 - sha256 = "012vmclx6kg85gffgc9mr3fp1ffgx20dz7xvafk7c1iynawx8wgq"; /* updated by script */ 297 + sha256 = "0285jdh350dalvk76ajy57mi1yg1g905cnfhcjlb465bsxaw0z5n"; /* updated by script */ 298 298 }; 299 299 wmClass = "jetbrains-idea-ce"; 300 300 update-channel = "IntelliJ IDEA RELEASE"; ··· 302 302 303 303 idea-ultimate = buildIdea rec { 304 304 name = "idea-ultimate-${version}"; 305 - version = "2019.2.4"; /* updated by script */ 305 + version = "2019.3.1"; /* updated by script */ 306 306 description = "Integrated Development Environment (IDE) by Jetbrains, requires paid license"; 307 307 license = stdenv.lib.licenses.unfree; 308 308 src = fetchurl { 309 309 url = "https://download.jetbrains.com/idea/ideaIU-${version}-no-jbr.tar.gz"; 310 - sha256 = "09mz4dx3zbnqw0vh4iqr8sn2s8mvgr7zvn4k7kqivsiv8f79g90a"; /* updated by script */ 310 + sha256 = "0rb726nh2c7zxnpjcf6fyrpl29y9wgr6qhpb6hjxia2gzxab9jz0"; /* updated by script */ 311 311 }; 312 312 wmClass = "jetbrains-idea"; 313 313 update-channel = "IntelliJ IDEA RELEASE"; ··· 315 315 316 316 phpstorm = buildPhpStorm rec { 317 317 name = "phpstorm-${version}"; 318 - version = "2019.2.4"; /* updated by script */ 318 + version = "2019.3.1"; /* updated by script */ 319 319 description = "Professional IDE for Web and PHP developers"; 320 320 license = stdenv.lib.licenses.unfree; 321 321 src = fetchurl { 322 322 url = "https://download.jetbrains.com/webide/PhpStorm-${version}.tar.gz"; 323 - sha256 = "1bx8s4hh96pjfyccldwfarwv5fky6kg2kyc0h2arhfzwq1pbaisl"; /* updated by script */ 323 + sha256 = "170ppd0inn3s1yxd5ybspzgx2il78838z900fpg2pznq2hi0rn2h"; /* updated by script */ 324 324 }; 325 325 wmClass = "jetbrains-phpstorm"; 326 326 update-channel = "PhpStorm RELEASE"; ··· 328 328 329 329 pycharm-community = buildPycharm rec { 330 330 name = "pycharm-community-${version}"; 331 - version = "2019.2.4"; /* updated by script */ 331 + version = "2019.3.1"; /* updated by script */ 332 332 description = "PyCharm Community Edition"; 333 333 license = stdenv.lib.licenses.asl20; 334 334 src = fetchurl { 335 335 url = "https://download.jetbrains.com/python/${name}.tar.gz"; 336 - sha256 = "00dl3yx13lw8qyc23dirw96vm2d8c6zsx73ds1ha8zycfh6hkxf8"; /* updated by script */ 336 + sha256 = "1cph2v7gaxikrvvdaz7ihk17qgdzrn86jamik9fijb8sjli3695v"; /* updated by script */ 337 337 }; 338 338 wmClass = "jetbrains-pycharm-ce"; 339 339 update-channel = "PyCharm RELEASE"; ··· 341 341 342 342 pycharm-professional = buildPycharm rec { 343 343 name = "pycharm-professional-${version}"; 344 - version = "2019.2.4"; /* updated by script */ 344 + version = "2019.3.1"; /* updated by script */ 345 345 description = "PyCharm Professional Edition"; 346 346 license = stdenv.lib.licenses.unfree; 347 347 src = fetchurl { 348 348 url = "https://download.jetbrains.com/python/${name}.tar.gz"; 349 - sha256 = "14ab1cvypanwwn0k1hrx3rl964av6pvridgc19z49idw5wpgxgw7"; /* updated by script */ 349 + sha256 = "1bjijwc5f1is2920b497d395ckswhpxilmxaljb6pjwq4a2k8yzx"; /* updated by script */ 350 350 }; 351 351 wmClass = "jetbrains-pycharm"; 352 352 update-channel = "PyCharm RELEASE"; ··· 354 354 355 355 rider = buildRider rec { 356 356 name = "rider-${version}"; 357 - version = "2019.2.3"; /* updated by script */ 357 + version = "2019.3.1"; /* updated by script */ 358 358 description = "A cross-platform .NET IDE based on the IntelliJ platform and ReSharper"; 359 359 license = stdenv.lib.licenses.unfree; 360 360 src = fetchurl { 361 361 url = "https://download.jetbrains.com/rider/JetBrains.Rider-${version}.tar.gz"; 362 - sha256 = "13br6zmqpvi9hcd6wdnalkhj50gzr7cwrdh4v2bpda77iby2pz93"; /* updated by script */ 362 + sha256 = "0cs8fc3h6d2m84ppiqjy0f3xklpc5gf0i6c4bzv04y8ngh0cwgl2"; /* updated by script */ 363 363 }; 364 364 wmClass = "jetbrains-rider"; 365 365 update-channel = "Rider RELEASE"; ··· 367 367 368 368 ruby-mine = buildRubyMine rec { 369 369 name = "ruby-mine-${version}"; 370 - version = "2019.2.4"; /* updated by script */ 370 + version = "2019.3.1"; /* updated by script */ 371 371 description = "The Most Intelligent Ruby and Rails IDE"; 372 372 license = stdenv.lib.licenses.unfree; 373 373 src = fetchurl { 374 374 url = "https://download.jetbrains.com/ruby/RubyMine-${version}.tar.gz"; 375 - sha256 = "1dqp222zvi8ikqdkprmqihyjxiq90vd0a0zl5935xjg1mzf8ald9"; /* updated by script */ 375 + sha256 = "0xadjx4szd9rk3bl3fqzhnfq744gmkbz9li80j5rqm27qhf4axfx"; /* updated by script */ 376 376 }; 377 377 wmClass = "jetbrains-rubymine"; 378 378 update-channel = "RubyMine RELEASE"; ··· 380 380 381 381 webstorm = buildWebStorm rec { 382 382 name = "webstorm-${version}"; 383 - version = "2019.2.4"; /* updated by script */ 383 + version = "2019.3.1"; /* updated by script */ 384 384 description = "Professional IDE for Web and JavaScript development"; 385 385 license = stdenv.lib.licenses.unfree; 386 386 src = fetchurl { 387 387 url = "https://download.jetbrains.com/webstorm/WebStorm-${version}.tar.gz"; 388 - sha256 = "0iz9qgrbhn1rxr8n5q1y7klfs27j1f55pw8hqbl2ln4df94zqi5j"; /* updated by script */ 388 + sha256 = "0qjqd1a44mdlpvv3l4sx2n5clirwxialzh6s2dlb0dibx8zvnckp"; /* updated by script */ 389 389 }; 390 390 wmClass = "jetbrains-webstorm"; 391 391 update-channel = "WebStorm RELEASE";
+1 -1
pkgs/applications/networking/instant-messengers/rambox/bare.nix
··· 18 18 inherit src; 19 19 20 20 nodejs = nodejs-10_x; 21 - sha256 = "0slzw4791nl7v6sca9xlhzx16p91m92ln2agbkbdx4zpgasg4gnq"; 21 + sha256 = "1zw3pjj3z29n9s08xyid41yq765d4c16lgml79m24zw36qaji6h1"; 22 22 }; 23 23 24 24 patches = [ ./isDev.patch ];
+2 -2
pkgs/applications/networking/p2p/qbittorrent/default.nix
··· 10 10 11 11 mkDerivation rec { 12 12 pname = "qbittorrent"; 13 - version = "4.2.0"; 13 + version = "4.2.1"; 14 14 15 15 src = fetchFromGitHub { 16 16 owner = "qbittorrent"; 17 17 repo = "qbittorrent"; 18 18 rev = "release-${version}"; 19 - sha256 = "17vm6aa2k8k1q14z9r2r06c794bcr4m0l0fdsn08wid6mj1zjsbx"; 19 + sha256 = "0bz4l7awkx4qf3gh9c8gj8fab989439zj8qy4x9r36wxdjg5cxil"; 20 20 }; 21 21 22 22 # NOTE: 2018-05-31: CMake is working but it is not officially supported
+2 -2
pkgs/applications/office/wpsoffice/default.nix
··· 10 10 version = "11.1.0.8865"; 11 11 12 12 src = fetchurl { 13 - url = "https://wdl1.cache.wps.cn/wps/download/ep/Linux2019/8865/wps-office_11.1.0.8865_amd64.deb"; 14 - sha256 = "0pxx3j02cm8d08iakg30azjvl3a50y4avyrf08ddgaavqnvkypfj"; 13 + url = "http://wdl1.pcfg.cache.wpscdn.com/wpsdl/wpsoffice/download/linux/8865/wps-office_11.1.0.8865_amd64.deb"; 14 + sha256 = "1hfpj1ayhzlrnnp72yjzrpd60xsbj9y46m345lqysiaj1hnwdbd8"; 15 15 }; 16 16 unpackCmd = "dpkg -x $src ."; 17 17 sourceRoot = ".";
+1 -1
pkgs/build-support/bintools-wrapper/default.nix
··· 66 66 else null; 67 67 68 68 expand-response-params = 69 - if buildPackages.stdenv.cc or null != null && buildPackages.stdenv.cc != "/dev/null" 69 + if buildPackages ? stdenv && buildPackages.stdenv.hasCC && buildPackages.stdenv.cc != "/dev/null" 70 70 then import ../expand-response-params { inherit (buildPackages) stdenv; } 71 71 else ""; 72 72
+1 -1
pkgs/build-support/cc-wrapper/default.nix
··· 59 59 infixSalt = replaceStrings ["-" "."] ["_" "_"] targetPlatform.config; 60 60 61 61 expand-response-params = 62 - if buildPackages.stdenv.cc or null != null && buildPackages.stdenv.cc != "/dev/null" 62 + if buildPackages.stdenv.hasCC && buildPackages.stdenv.cc != "/dev/null" 63 63 then import ../expand-response-params { inherit (buildPackages) stdenv; } 64 64 else ""; 65 65
+23 -19
pkgs/development/compilers/gcc-arm-embedded/6/default.nix
··· 1 - { stdenv, fetchurl, ncurses5, python27 }: 1 + { stdenv 2 + , fetchurl 3 + , ncurses5 4 + , python27 5 + }: 2 6 3 7 stdenv.mkDerivation rec { 4 8 pname = "gcc-arm-embedded"; 5 9 version = "6-2017-q2-update"; 6 10 subdir = "6-2017q2"; 7 11 8 - src = 9 - if stdenv.isLinux then 10 - fetchurl { 11 - url = "https://developer.arm.com/-/media/Files/downloads/gnu-rm/${subdir}/gcc-arm-none-eabi-${version}-linux.tar.bz2"; 12 - sha256="1hvwi02mx34al525sngnl0cm7dkmzxfkb1brq9kvbv28wcplp3p6"; 13 - } 14 - else if stdenv.isDarwin then 15 - fetchurl { 16 - url = "https://developer.arm.com/-/media/Files/downloads/gnu-rm/${subdir}/gcc-arm-none-eabi-${version}-mac.tar.bz2"; 17 - sha256="0019ylpq4inq7p5gydpmc9m8ni72fz2csrjlqmgx1698998q0c3x"; 18 - } 19 - else throw "unsupported platform"; 12 + suffix = { 13 + x86_64-darwin = "mac"; 14 + x86_64-linux = "linux"; 15 + }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); 16 + 17 + src = fetchurl { 18 + url = "https://developer.arm.com/-/media/Files/downloads/gnu-rm/${subdir}/gcc-arm-none-eabi-${version}-${suffix}.tar.bz2"; 19 + sha256 = { 20 + x86_64-darwin = "0019ylpq4inq7p5gydpmc9m8ni72fz2csrjlqmgx1698998q0c3x"; 21 + x86_64-linux = "1hvwi02mx34al525sngnl0cm7dkmzxfkb1brq9kvbv28wcplp3p6"; 22 + }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); 23 + }; 20 24 21 25 phases = [ "unpackPhase" "installPhase" "fixupPhase" ]; 22 26 ··· 37 41 done 38 42 ''; 39 43 40 - meta = { 41 - description = "Pre-built GNU toolchain from ARM Cortex-M & Cortex-R processors (Cortex-M0/M0+/M3/M4/M7, Cortex-R4/R5/R7/R8)"; 42 - homepage = https://developer.arm.com/open-source/gnu-toolchain/gnu-rm; 43 - license = with stdenv.lib.licenses; [ bsd2 gpl2 gpl3 lgpl21 lgpl3 mit ]; 44 - maintainers = with stdenv.lib.maintainers; [ vinymeuh ]; 45 - platforms = with stdenv.lib.platforms; linux ++ darwin; 44 + meta = with stdenv.lib; { 45 + description = "Pre-built GNU toolchain from ARM Cortex-M & Cortex-R processors"; 46 + homepage = "https://developer.arm.com/open-source/gnu-toolchain/gnu-rm"; 47 + license = with licenses; [ bsd2 gpl2 gpl3 lgpl21 lgpl3 mit ]; 48 + maintainers = with maintainers; [ prusnak ]; 49 + platforms = [ "x86_64-linux" "x86_64-darwin" ]; 46 50 }; 47 51 }
+21 -19
pkgs/development/compilers/gcc-arm-embedded/7/default.nix
··· 1 - { stdenv, lib, fetchurl, ncurses5, python27 }: 2 - 3 - with lib; 1 + { stdenv 2 + , fetchurl 3 + , ncurses5 4 + , python27 5 + }: 4 6 5 7 stdenv.mkDerivation rec { 6 8 pname = "gcc-arm-embedded"; 7 9 version = "7-2018-q2-update"; 8 10 subdir = "7-2018q2"; 9 11 10 - src = 11 - if stdenv.isLinux then 12 - fetchurl { 13 - url = "https://developer.arm.com/-/media/Files/downloads/gnu-rm/${subdir}/gcc-arm-none-eabi-${version}-linux.tar.bz2"; 14 - sha256="0sgysp3hfpgrkcbfiwkp0a7ymqs02khfbrjabm52b5z61sgi05xv"; 15 - } 16 - else if stdenv.isDarwin then 17 - fetchurl { 18 - url = "https://developer.arm.com/-/media/Files/downloads/gnu-rm/${subdir}/gcc-arm-none-eabi-${version}-mac.tar.bz2"; 19 - sha256="0nc7m0mpa39qyhfyydxkkyqm7spfc27xf6ygi2vd2aym4r9azi61"; 20 - } 21 - else throw "unsupported platform"; 12 + suffix = { 13 + x86_64-darwin = "mac"; 14 + x86_64-linux = "linux"; 15 + }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); 16 + 17 + src = fetchurl { 18 + url = "https://developer.arm.com/-/media/Files/downloads/gnu-rm/${subdir}/gcc-arm-none-eabi-${version}-${suffix}.tar.bz2"; 19 + sha256 = { 20 + x86_64-darwin = "0nc7m0mpa39qyhfyydxkkyqm7spfc27xf6ygi2vd2aym4r9azi61"; 21 + x86_64-linux = "0sgysp3hfpgrkcbfiwkp0a7ymqs02khfbrjabm52b5z61sgi05xv"; 22 + }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); 23 + }; 22 24 23 25 phases = [ "unpackPhase" "installPhase" "fixupPhase" ]; 24 26 ··· 39 41 done 40 42 ''; 41 43 42 - meta = { 43 - description = "Pre-built GNU toolchain from ARM Cortex-M & Cortex-R processors (Cortex-M0/M0+/M3/M4/M7, Cortex-R4/R5/R7/R8)"; 44 - homepage = https://developer.arm.com/open-source/gnu-toolchain/gnu-rm; 44 + meta = with stdenv.lib; { 45 + description = "Pre-built GNU toolchain from ARM Cortex-M & Cortex-R processors"; 46 + homepage = "https://developer.arm.com/open-source/gnu-toolchain/gnu-rm"; 45 47 license = with licenses; [ bsd2 gpl2 gpl3 lgpl21 lgpl3 mit ]; 46 48 maintainers = with maintainers; [ prusnak ]; 47 - platforms = platforms.linux; 49 + platforms = [ "x86_64-linux" "x86_64-darwin" ]; 48 50 }; 49 51 }
+21 -19
pkgs/development/compilers/gcc-arm-embedded/8/default.nix
··· 1 - { stdenv, lib, fetchurl, ncurses5, python27 }: 2 - 3 - with lib; 1 + { stdenv 2 + , fetchurl 3 + , ncurses5 4 + , python27 5 + }: 4 6 5 7 stdenv.mkDerivation rec { 6 8 pname = "gcc-arm-embedded"; 7 9 version = "8-2019-q3-update"; 8 10 subdir = "8-2019q3/RC1.1"; 9 11 10 - src = 11 - if stdenv.isLinux then 12 - fetchurl { 13 - url = "https://developer.arm.com/-/media/Files/downloads/gnu-rm/${subdir}/gcc-arm-none-eabi-${version}-linux.tar.bz2"; 14 - sha256="b50b02b0a16e5aad8620e9d7c31110ef285c1dde28980b1a9448b764d77d8f92"; 15 - } 16 - else if stdenv.isDarwin then 17 - fetchurl { 18 - url = "https://developer.arm.com/-/media/Files/downloads/gnu-rm/${subdir}/gcc-arm-none-eabi-${version}-mac.tar.bz2"; 19 - sha256="fc235ce853bf3bceba46eff4b95764c5935ca07fc4998762ef5e5b7d05f37085"; 20 - } 21 - else throw "unsupported platform"; 12 + suffix = { 13 + x86_64-darwin = "mac"; 14 + x86_64-linux = "linux"; 15 + }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); 16 + 17 + src = fetchurl { 18 + url = "https://developer.arm.com/-/media/Files/downloads/gnu-rm/${subdir}/gcc-arm-none-eabi-${version}-${suffix}.tar.bz2"; 19 + sha256 = { 20 + x86_64-darwin = "fc235ce853bf3bceba46eff4b95764c5935ca07fc4998762ef5e5b7d05f37085"; 21 + x86_64-linux = "b50b02b0a16e5aad8620e9d7c31110ef285c1dde28980b1a9448b764d77d8f92"; 22 + }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); 23 + }; 22 24 23 25 phases = [ "unpackPhase" "installPhase" "fixupPhase" ]; 24 26 ··· 39 41 done 40 42 ''; 41 43 42 - meta = { 43 - description = "Pre-built GNU toolchain from ARM Cortex-M & Cortex-R processors (Cortex-M0/M0+/M3/M4/M7, Cortex-R4/R5/R7/R8)"; 44 - homepage = https://developer.arm.com/open-source/gnu-toolchain/gnu-rm; 44 + meta = with stdenv.lib; { 45 + description = "Pre-built GNU toolchain from ARM Cortex-M & Cortex-R processors"; 46 + homepage = "https://developer.arm.com/open-source/gnu-toolchain/gnu-rm"; 45 47 license = with licenses; [ bsd2 gpl2 gpl3 lgpl21 lgpl3 mit ]; 46 48 maintainers = with maintainers; [ prusnak ]; 47 - platforms = platforms.linux; 49 + platforms = [ "x86_64-linux" "x86_64-darwin" ]; 48 50 }; 49 51 }
+53
pkgs/development/compilers/gcc-arm-embedded/9/default.nix
··· 1 + { stdenv 2 + , fetchurl 3 + , ncurses5 4 + , python27 5 + }: 6 + 7 + stdenv.mkDerivation rec { 8 + pname = "gcc-arm-embedded"; 9 + version = "9-2019-q4-major"; 10 + subdir = "9-2019q4/RC2.1"; 11 + 12 + suffix = { 13 + aarch64-linux = "aarch64-linux"; 14 + x86_64-darwin = "mac"; 15 + x86_64-linux = "x86_64-linux"; 16 + }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); 17 + 18 + src = fetchurl { 19 + url = "https://developer.arm.com/-/media/Files/downloads/gnu-rm/${subdir}/gcc-arm-none-eabi-${version}-${suffix}.tar.bz2"; 20 + sha256 = { 21 + aarch64-linux = "1f5b9309006737950b2218250e6bb392e2d68d4f1a764fe66be96e2a78888d83"; 22 + x86_64-darwin = "1249f860d4155d9c3ba8f30c19e7a88c5047923cea17e0d08e633f12408f01f0"; 23 + x86_64-linux = "bcd840f839d5bf49279638e9f67890b2ef3a7c9c7a9b25271e83ec4ff41d177a"; 24 + }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); 25 + }; 26 + 27 + phases = [ "unpackPhase" "installPhase" "fixupPhase" ]; 28 + 29 + installPhase = '' 30 + mkdir -p $out 31 + cp -r * $out 32 + ln -s $out/share/doc/gcc-arm-none-eabi/man $out/man 33 + ''; 34 + 35 + dontPatchELF = true; 36 + dontStrip = true; 37 + 38 + preFixup = '' 39 + find $out -type f | while read f; do 40 + patchelf $f > /dev/null 2>&1 || continue 41 + patchelf --set-interpreter $(cat ${stdenv.cc}/nix-support/dynamic-linker) "$f" || true 42 + patchelf --set-rpath ${stdenv.lib.makeLibraryPath [ "$out" stdenv.cc.cc ncurses5 python27 ]} "$f" || true 43 + done 44 + ''; 45 + 46 + meta = with stdenv.lib; { 47 + description = "Pre-built GNU toolchain from ARM Cortex-M & Cortex-R processors"; 48 + homepage = "https://developer.arm.com/open-source/gnu-toolchain/gnu-rm"; 49 + license = with licenses; [ bsd2 gpl2 gpl3 lgpl21 lgpl3 mit ]; 50 + maintainers = with maintainers; [ prusnak ]; 51 + platforms = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" ]; 52 + }; 53 + }
-52
pkgs/development/compilers/gcc-arm-embedded/default.nix
··· 1 - { stdenv, bzip2, patchelf, glibc, gcc, fetchurl, version, releaseType, sha256, ncurses 2 - , dirName ? null, subdirName ? null }: 3 - with stdenv.lib; 4 - let 5 - versionParts = splitString "-" version; # 4.7 2013q3 20130916 6 - majorVersion = elemAt versionParts 0; # 4.7 7 - yearQuarter = elemAt versionParts 1; # 2013q3 8 - underscoreVersion = replaceChars ["."] ["_"] version; # 4_7-2013q3-20130916 9 - yearQuarterParts = splitString "q" yearQuarter; # 2013 3 10 - year = elemAt yearQuarterParts 0; # 2013 11 - quarter = elemAt yearQuarterParts 1; # 3 12 - dirName_ = if dirName != null then dirName else majorVersion; 13 - subdirName_ = if subdirName != null then subdirName 14 - else "${majorVersion}-${year}-q${quarter}-${releaseType}"; # 4.7-2013-q3-update 15 - in 16 - stdenv.mkDerivation { 17 - pname = "gcc-arm-embedded"; 18 - inherit version; 19 - 20 - src = fetchurl { 21 - url = "https://launchpad.net/gcc-arm-embedded/${dirName_}/${subdirName_}/+download/gcc-arm-none-eabi-${underscoreVersion}-linux.tar.bz2"; 22 - sha256 = sha256; 23 - }; 24 - 25 - nativeBuildInputs = [ bzip2 patchelf ]; 26 - 27 - dontPatchELF = true; 28 - 29 - phases = "unpackPhase patchPhase installPhase"; 30 - 31 - installPhase = '' 32 - mkdir -pv $out 33 - cp -r ./* $out 34 - ln -s $out/share/doc/gcc-arm-none-eabi/man $out/man 35 - 36 - for f in $(find $out); do 37 - if [ -f "$f" ] && patchelf "$f" 2> /dev/null; then 38 - patchelf --set-interpreter ${getLib glibc}/lib/ld-linux.so.2 \ 39 - --set-rpath ${stdenv.lib.makeLibraryPath [ "$out" gcc ncurses ]} \ 40 - "$f" || true 41 - fi 42 - done 43 - ''; 44 - 45 - meta = with stdenv.lib; { 46 - description = "Pre-built GNU toolchain from ARM Cortex-M & Cortex-R processors (Cortex-M0/M0+/M3/M4, Cortex-R4/R5/R7)"; 47 - homepage = https://launchpad.net/gcc-arm-embedded; 48 - license = with licenses; [ bsd2 gpl2 gpl3 lgpl21 lgpl3 mit ]; 49 - maintainers = [ maintainers.rasendubi ]; 50 - platforms = platforms.linux; 51 - }; 52 - }
+2 -2
pkgs/development/compilers/ghcjs-ng/default.nix
··· 1 1 { stdenv 2 + , pkgsHostHost 2 3 , callPackage 3 4 , fetchgit 4 5 , ghcjsSrcJson ? null ··· 14 15 , pkgconfig 15 16 , gcc 16 17 , lib 17 - , nodePackages 18 18 , ghcjsDepOverrides ? (_:_:{}) 19 19 , haskell 20 20 }: ··· 46 46 47 47 enableShared = true; 48 48 49 - socket-io = nodePackages."socket.io"; 49 + socket-io = pkgsHostHost.nodePackages."socket.io"; 50 50 51 51 # Relics of the old GHCJS build system 52 52 stage1Packages = [];
+9 -3
pkgs/development/haskell-modules/generic-builder.nix
··· 40 40 # They must be propagated to the environment of any executable linking with the library 41 41 , libraryFrameworkDepends ? [], executableFrameworkDepends ? [] 42 42 , homepage ? "https://hackage.haskell.org/package/${pname}" 43 - , platforms ? with stdenv.lib.platforms; unix ++ windows # GHC can cross-compile 43 + , platforms ? with stdenv.lib.platforms; all # GHC can cross-compile 44 44 , hydraPlatforms ? null 45 45 , hyperlinkSource ? true 46 46 , isExecutable ? false, isLibrary ? !isExecutable ··· 131 131 ''; 132 132 133 133 crossCabalFlags = [ 134 - "--with-ghc=${ghc.targetPrefix}ghc" 134 + "--with-ghc=${ghcCommand}" 135 135 "--with-ghc-pkg=${ghc.targetPrefix}ghc-pkg" 136 - "--with-gcc=${stdenv.cc.targetPrefix}cc" 136 + # Pass the "wrong" C compiler rather than none at all so packages that just 137 + # use the C preproccessor still work, see 138 + # https://github.com/haskell/cabal/issues/6466 for details. 139 + "--with-gcc=${(if stdenv.hasCC then stdenv else buildPackages.stdenv).cc.targetPrefix}cc" 140 + ] ++ optionals stdenv.hasCC [ 137 141 "--with-ld=${stdenv.cc.bintools.targetPrefix}ld" 138 142 "--with-ar=${stdenv.cc.bintools.targetPrefix}ar" 139 143 # use the one that comes with the cross compiler. ··· 156 160 "--libsubdir=\\$abi/\\$libname" 157 161 (optionalString enableSeparateDataOutput "--datadir=$data/share/${ghc.name}") 158 162 (optionalString enableSeparateDocOutput "--docdir=${docdir "$doc"}") 163 + ] ++ optionals stdenv.hasCC [ 159 164 "--with-gcc=$CC" # Clang won't work without that extra information. 165 + ] ++ [ 160 166 "--package-db=$packageConfDir" 161 167 (optionalString (enableSharedExecutables && stdenv.isLinux) "--ghc-option=-optl=-Wl,-rpath=$out/lib/${ghc.name}/${pname}-${version}") 162 168 (optionalString (enableSharedExecutables && stdenv.isDarwin) "--ghc-option=-optl=-Wl,-headerpad_max_install_names")
+3 -2
pkgs/development/haskell-modules/hoogle.nix
··· 23 23 # This will build mmorph and monadControl, and have the hoogle installation 24 24 # refer to their documentation via symlink so they are not garbage collected. 25 25 26 - { lib, stdenv, hoogle, writeText, ghc 26 + { lib, stdenv, buildPackages 27 + , hoogle, writeText, ghc 27 28 , packages 28 29 }: 29 30 ··· 53 54 (map (lib.getOutput "doc") packages); 54 55 55 56 in 56 - stdenv.mkDerivation { 57 + buildPackages.stdenv.mkDerivation { 57 58 name = "hoogle-local-0.1"; 58 59 buildInputs = [ghc hoogle]; 59 60
+1 -1
pkgs/development/interpreters/perl/default.nix
··· 146 146 substituteInPlace "$out"/lib/perl5/*/*/Config_heavy.pl \ 147 147 --replace "${libcInc}" /no-such-path \ 148 148 --replace "${ 149 - if stdenv.cc.cc or null != null then stdenv.cc.cc else "/no-such-path" 149 + if stdenv.hasCC then stdenv.cc.cc else "/no-such-path" 150 150 }" /no-such-path \ 151 151 --replace "${stdenv.cc}" /no-such-path \ 152 152 --replace "$man" /no-such-path
+61
pkgs/development/tools/analysis/codeql/default.nix
··· 1 + { stdenv 2 + , fetchzip 3 + , zlib 4 + , xorg 5 + , freetype 6 + , alsaLib 7 + , jdk11 8 + , curl 9 + , lttng-ust 10 + , autoPatchelfHook 11 + }: 12 + 13 + stdenv.mkDerivation rec { 14 + pname = "codeql"; 15 + version = "2.0.0"; 16 + 17 + dontConfigure = true; 18 + dontBuild = true; 19 + dontStrip = true; 20 + 21 + src = fetchzip { 22 + url = "https://github.com/github/codeql-cli-binaries/releases/download/v${version}/codeql.zip"; 23 + sha256 = "1v6wzjdhfws77fr5r15s03f1ipzc1gh7sl8gvw1fb4pplpa2d08s"; 24 + }; 25 + 26 + nativeBuildInputs = [ 27 + zlib 28 + xorg.libX11 29 + xorg.libXext 30 + xorg.libXi 31 + xorg.libXtst 32 + xorg.libXrender 33 + freetype 34 + alsaLib 35 + jdk11 36 + stdenv.cc.cc.lib 37 + curl 38 + lttng-ust 39 + autoPatchelfHook 40 + ]; 41 + 42 + installPhase = '' 43 + # codeql directory should not be top-level, otherwise, 44 + # it'll include /nix/store to resolve extractors. 45 + mkdir -p $out/{codeql,bin} 46 + cp -R * $out/codeql/ 47 + 48 + ln -sf $out/codeql/tools/linux64/lib64trace.so $out/codeql/tools/linux64/libtrace.so 49 + 50 + sed -i 's;"$CODEQL_DIST/tools/$CODEQL_PLATFORM/java/bin/java";"${jdk11}/bin/java";' $out/codeql/codeql 51 + 52 + ln -s $out/codeql/codeql $out/bin/ 53 + ''; 54 + 55 + meta = with stdenv.lib; { 56 + description = "Semantic code analysis engine"; 57 + homepage = "https://semmle.com/codeql"; 58 + maintainers = [ maintainers.dump_stack ]; 59 + license = licenses.unfree; 60 + }; 61 + }
+10 -3
pkgs/stdenv/booter.nix
··· 121 121 postStage = buildPackages: { 122 122 __raw = true; 123 123 stdenv.cc = 124 - if buildPackages.stdenv.cc.isClang or false 125 - then buildPackages.clang 126 - else buildPackages.gcc; 124 + if buildPackages.stdenv.hasCC 125 + then 126 + if buildPackages.stdenv.cc.isClang or false 127 + then buildPackages.clang 128 + else buildPackages.gcc 129 + else 130 + # This will blow up if anything uses it, but that's OK. The `if 131 + # buildPackages.stdenv.cc.isClang then ... else ...` would blow up 132 + # everything, so we make sure to avoid that. 133 + buildPackages.stdenv.cc; 127 134 }; 128 135 129 136 in dfold folder postStage (_: {}) withAllowCustomOverrides
+7 -1
pkgs/stdenv/cross/default.nix
··· 51 51 extraBuildInputs = [ ]; # Old ones run on wrong platform 52 52 allowedRequisites = null; 53 53 54 + hasCC = !targetPlatform.isGhcjs; 55 + 54 56 cc = if crossSystem.useiOSPrebuilt or false 55 57 then buildPackages.darwin.iosSdkPkgs.clang 56 58 else if crossSystem.useAndroidPrebuilt or false 57 59 then buildPackages."androidndkPkgs_${crossSystem.ndkVer}".clang 58 60 else if targetPlatform.isGhcjs 59 - then null 61 + # Need to use `throw` so tryEval for splicing works, ugh. Using 62 + # `null` or skipping the attribute would cause an eval failure 63 + # `tryEval` wouldn't catch, wrecking accessing previous stages 64 + # when there is a C compiler and everything should be fine. 65 + then throw "no C compiler provided for this platform" 60 66 else if crossSystem.useLLVM or false 61 67 then buildPackages.llvmPackages_8.lldClang 62 68 else buildPackages.gcc;
+13 -3
pkgs/stdenv/generic/default.nix
··· 1 1 let lib = import ../../../lib; in lib.makeOverridable ( 2 2 3 - { name ? "stdenv", preHook ? "", initialPath, cc, shell 3 + { name ? "stdenv", preHook ? "", initialPath 4 + 5 + , # If we don't have a C compiler, we might either have `cc = null` or `cc = 6 + # throw ...`, but if we do have a C compiler we should definiely have `cc != 7 + # null`. 8 + # 9 + # TODO(@Ericson2314): Add assert without creating infinite recursion 10 + hasCC ? cc != null, cc 11 + 12 + , shell 4 13 , allowedRequisites ? null, extraAttrs ? {}, overrides ? (self: super: {}), config 5 14 6 15 , # The `fetchurl' to use for downloading curl and its dependencies ··· 57 66 ../../build-support/setup-hooks/move-sbin.sh 58 67 ../../build-support/setup-hooks/move-lib64.sh 59 68 ../../build-support/setup-hooks/set-source-date-epoch-to-latest.sh 60 - cc 69 + # TODO use lib.optional instead 70 + (if hasCC then cc else null) 61 71 ]; 62 72 63 73 defaultBuildInputs = extraBuildInputs; ··· 145 155 146 156 inherit overrides; 147 157 148 - inherit cc; 158 + inherit cc hasCC; 149 159 } 150 160 151 161 # Propagate any extra attributes. For instance, we use this to
+32
pkgs/tools/networking/bandwhich/default.nix
··· 1 + { stdenv, fetchFromGitHub, rustPlatform, Security }: 2 + 3 + rustPlatform.buildRustPackage rec { 4 + pname = "bandwhich"; 5 + version = "0.6.0"; 6 + 7 + src = fetchFromGitHub { 8 + owner = "imsnif"; 9 + repo = pname; 10 + rev = version; 11 + sha256 = "0jjqc8sysvw63mwy68z9p16vc1pygrm1wxyll6piwvbbnirpys1y"; 12 + }; 13 + 14 + cargoSha256 = "1rixpljqddwhryddzni5l6m4sjyn1krrj0ig0rzc701am7srhg3a"; 15 + 16 + buildInputs = stdenv.lib.optional stdenv.isDarwin Security; 17 + 18 + meta = with stdenv.lib; { 19 + description = "A CLI utility for displaying current network utilization"; 20 + longDescription = '' 21 + bandwhich sniffs a given network interface and records IP packet size, cross 22 + referencing it with the /proc filesystem on linux or lsof on MacOS. It is 23 + responsive to the terminal window size, displaying less info if there is 24 + no room for it. It will also attempt to resolve ips to their host name in 25 + the background using reverse DNS on a best effort basis. 26 + ''; 27 + homepage = "https://github.com/imsnif/bandwhich"; 28 + license = licenses.mit; 29 + maintainers = with maintainers; [ filalex77 ]; 30 + platforms = platforms.unix; 31 + }; 32 + }
+2 -20
pkgs/tools/security/opensc/default.nix
··· 7 7 8 8 stdenv.mkDerivation rec { 9 9 pname = "opensc"; 10 - version = "0.19.0"; 10 + version = "0.20.0"; 11 11 12 12 src = fetchFromGitHub { 13 13 owner = "OpenSC"; 14 14 repo = "OpenSC"; 15 15 rev = version; 16 - sha256 = "10575gb9l38cskq7swyjp0907wlziyxg4ppq33ndz319dsx69d87"; 16 + sha256 = "0mg8qmhww3li1isfgvn5hang1hq58zra057ilvgci88csfziv5lv"; 17 17 }; 18 - 19 - patches = [ 20 - (fetchpatch { 21 - name = "CVE-2019-6502.patch"; 22 - url = "https://github.com/OpenSC/OpenSC/commit/0d7967549751b7032f22b437106b41444aff0ba9.patch"; 23 - sha256 = "1y42lmz8i9w99hgpakdncnv8f94cqjfabz0v4xg6wfz9akl3ff7d"; 24 - }) 25 - (fetchpatch { 26 - name = "CVE-2019-15945.patch"; 27 - url = "https://github.com/OpenSC/OpenSC/commit/412a6142c27a5973c61ba540e33cdc22d5608e68.patch"; 28 - sha256 = "088i2i1fkvdxnywmb54bn4283vhbxx6i2632b34ss5dh7k080hp7"; 29 - }) 30 - (fetchpatch { 31 - name = "CVE-2019-15946.patch"; 32 - url = "https://github.com/OpenSC/OpenSC/commit/a3fc7693f3a035a8a7921cffb98432944bb42740.patch"; 33 - sha256 = "1qr9n8cbarrdn4kr5z0ys7flq50hfmcbm8584mhw7r39p08qwmvq"; 34 - }) 35 - ]; 36 18 37 19 nativeBuildInputs = [ pkgconfig autoreconfHook ]; 38 20 buildInputs = [
+24 -43
pkgs/top-level/all-packages.nix
··· 810 810 811 811 cloudflare-wrangler = callPackage ../development/tools/cloudflare-wrangler { }; 812 812 813 + codeql = callPackage ../development/tools/analysis/codeql { }; 814 + 813 815 container-linux-config-transpiler = callPackage ../development/tools/container-linux-config-transpiler { }; 814 816 815 817 ccextractor = callPackage ../applications/video/ccextractor { }; ··· 1081 1083 azureus = callPackage ../tools/networking/p2p/azureus { }; 1082 1084 1083 1085 backblaze-b2 = python.pkgs.callPackage ../development/tools/backblaze-b2 { }; 1086 + 1087 + bandwhich = callPackage ../tools/networking/bandwhich { 1088 + inherit (darwin.apple_sdk.frameworks) Security; 1089 + }; 1084 1090 1085 1091 bar = callPackage ../tools/system/bar {}; 1086 1092 ··· 8111 8117 8112 8118 gcl_2_6_13_pre = callPackage ../development/compilers/gcl/2.6.13-pre.nix { }; 8113 8119 8114 - gcc-arm-embedded-4_7 = pkgsi686Linux.callPackage ../development/compilers/gcc-arm-embedded { 8115 - version = "4.7-2013q3-20130916"; 8116 - releaseType = "update"; 8117 - sha256 = "1bd9bi9q80xn2rpy0rn1vvj70rh15kb7dmah0qs4q2rv78fqj40d"; 8118 - ncurses = pkgsi686Linux.ncurses5; 8119 - }; 8120 - gcc-arm-embedded-4_8 = pkgsi686Linux.callPackage ../development/compilers/gcc-arm-embedded { 8121 - version = "4.8-2014q1-20140314"; 8122 - releaseType = "update"; 8123 - sha256 = "ce92859550819d4a3d1a6e2672ea64882b30afa2c08cf67fa8e1d93788c2c577"; 8124 - ncurses = pkgsi686Linux.ncurses5; 8125 - }; 8126 - gcc-arm-embedded-4_9 = pkgsi686Linux.callPackage ../development/compilers/gcc-arm-embedded { 8127 - version = "4.9-2015q1-20150306"; 8128 - releaseType = "update"; 8129 - sha256 = "c5e0025b065750bbd76b5357b4fc8606d88afbac9ff55b8a82927b4b96178154"; 8130 - ncurses = pkgsi686Linux.ncurses5; 8131 - }; 8132 - gcc-arm-embedded-5 = pkgs.pkgsi686Linux.callPackage ../development/compilers/gcc-arm-embedded { 8133 - dirName = "5.0"; 8134 - subdirName = "5-2016-q2-update"; 8135 - version = "5.4-2016q2-20160622"; 8136 - releaseType = "update"; 8137 - sha256 = "1r0rqbnw7rf94f5bsa3gi8bick4xb7qnp1dkvdjfbvqjvysvc44r"; 8138 - ncurses = pkgsi686Linux.ncurses5; 8139 - }; 8140 8120 gcc-arm-embedded-6 = callPackage ../development/compilers/gcc-arm-embedded/6 {}; 8141 8121 gcc-arm-embedded-7 = callPackage ../development/compilers/gcc-arm-embedded/7 {}; 8142 8122 gcc-arm-embedded-8 = callPackage ../development/compilers/gcc-arm-embedded/8 {}; 8143 - gcc-arm-embedded = gcc-arm-embedded-8; 8123 + gcc-arm-embedded-9 = callPackage ../development/compilers/gcc-arm-embedded/9 {}; 8124 + gcc-arm-embedded = gcc-arm-embedded-9; 8144 8125 8145 8126 gforth = callPackage ../development/compilers/gforth {}; 8146 8127 ··· 8482 8463 8483 8464 llvmPackages_35 = callPackage ../development/compilers/llvm/3.5 ({ 8484 8465 isl = isl_0_14; 8485 - } // stdenv.lib.optionalAttrs (stdenv.cc.isGNU && stdenv.hostPlatform.isi686) { 8466 + } // stdenv.lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { 8486 8467 stdenv = gcc6Stdenv; 8487 8468 }); 8488 8469 ··· 8490 8471 inherit (stdenvAdapters) overrideCC; 8491 8472 buildLlvmTools = buildPackages.llvmPackages_39.tools; 8492 8473 targetLlvmLibraries = targetPackages.llvmPackages_39.libraries; 8493 - } // stdenv.lib.optionalAttrs (stdenv.cc.isGNU && stdenv.hostPlatform.isi686) { 8474 + } // stdenv.lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { 8494 8475 stdenv = gcc6Stdenv; 8495 8476 }); 8496 8477 ··· 8498 8479 inherit (stdenvAdapters) overrideCC; 8499 8480 buildLlvmTools = buildPackages.llvmPackages_4.tools; 8500 8481 targetLlvmLibraries = targetPackages.llvmPackages_4.libraries; 8501 - } // stdenv.lib.optionalAttrs (stdenv.cc.isGNU && stdenv.hostPlatform.isi686) { 8482 + } // stdenv.lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { 8502 8483 stdenv = gcc6Stdenv; 8503 8484 }); 8504 8485 ··· 8506 8487 inherit (stdenvAdapters) overrideCC; 8507 8488 buildLlvmTools = buildPackages.llvmPackages_5.tools; 8508 8489 targetLlvmLibraries = targetPackages.llvmPackages_5.libraries; 8509 - } // stdenv.lib.optionalAttrs (stdenv.cc.isGNU && stdenv.hostPlatform.isi686) { 8490 + } // stdenv.lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { 8510 8491 stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' 8511 8492 }); 8512 8493 ··· 8514 8495 inherit (stdenvAdapters) overrideCC; 8515 8496 buildLlvmTools = buildPackages.llvmPackages_6.tools; 8516 8497 targetLlvmLibraries = targetPackages.llvmPackages_6.libraries; 8517 - } // stdenv.lib.optionalAttrs (stdenv.cc.isGNU && stdenv.hostPlatform.isi686) { 8498 + } // stdenv.lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { 8518 8499 # with gcc-7 on i686: undefined reference to `__divmoddi4' 8519 8500 # Failing tests with gcc8. 8520 8501 stdenv = overrideCC stdenv (if stdenv.hostPlatform.isi686 then gcc6 else gcc7); ··· 8524 8505 inherit (stdenvAdapters) overrideCC; 8525 8506 buildLlvmTools = buildPackages.llvmPackages_7.tools; 8526 8507 targetLlvmLibraries = targetPackages.llvmPackages_7.libraries; 8527 - } // stdenv.lib.optionalAttrs (buildPackages.stdenv.cc.isGNU && stdenv.hostPlatform.isi686) { 8508 + } // stdenv.lib.optionalAttrs (stdenv.hostPlatform.isi686 && buildPackages.stdenv.cc.isGNU) { 8528 8509 stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' 8529 8510 }); 8530 8511 ··· 8532 8513 inherit (stdenvAdapters) overrideCC; 8533 8514 buildLlvmTools = buildPackages.llvmPackages_8.tools; 8534 8515 targetLlvmLibraries = targetPackages.llvmPackages_8.libraries; 8535 - } // stdenv.lib.optionalAttrs (buildPackages.stdenv.cc.isGNU && stdenv.hostPlatform.isi686) { 8516 + } // stdenv.lib.optionalAttrs (stdenv.hostPlatform.isi686 && buildPackages.stdenv.cc.isGNU) { 8536 8517 stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' 8537 8518 }); 8538 8519 ··· 8540 8521 inherit (stdenvAdapters) overrideCC; 8541 8522 buildLlvmTools = buildPackages.llvmPackages_9.tools; 8542 8523 targetLlvmLibraries = targetPackages.llvmPackages_9.libraries; 8543 - } // stdenv.lib.optionalAttrs (buildPackages.stdenv.cc.isGNU && stdenv.hostPlatform.isi686) { 8524 + } // stdenv.lib.optionalAttrs (stdenv.hostPlatform.isi686 && buildPackages.stdenv.cc.isGNU) { 8544 8525 stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' 8545 8526 }); 8546 8527 ··· 9415 9396 spidermonkey_1_8_5 = callPackage ../development/interpreters/spidermonkey/1.8.5.nix { }; 9416 9397 spidermonkey_38 = callPackage ../development/interpreters/spidermonkey/38.nix ({ 9417 9398 inherit (darwin) libobjc; 9418 - } // (stdenv.lib.optionalAttrs (stdenv.cc.isGNU && stdenv.hostPlatform.isi686) { 9399 + } // (stdenv.lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { 9419 9400 stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' 9420 9401 })); 9421 9402 spidermonkey_60 = callPackage ../development/interpreters/spidermonkey/60.nix { }; ··· 10796 10777 10797 10778 arrow-cpp = callPackage ../development/libraries/arrow-cpp ({ 10798 10779 gtest = gtest.override { static = true; }; 10799 - } // stdenv.lib.optionalAttrs (stdenv.cc.isGNU && stdenv.hostPlatform.isi686) { 10780 + } // stdenv.lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { 10800 10781 stdenv = overrideCC stdenv buildPackages.gcc6; # hidden symbol `__divmoddi4' 10801 10782 }); 10802 10783 ··· 11874 11855 icu58 = callPackage (import ../development/libraries/icu/58.nix fetchurl) ({ 11875 11856 nativeBuildRoot = buildPackages.icu58.override { buildRootOnly = true; }; 11876 11857 } // 11877 - (stdenv.lib.optionalAttrs (stdenv.cc.isGNU && stdenv.hostPlatform.isi686) { 11858 + (stdenv.lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { 11878 11859 stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' 11879 11860 })); 11880 11861 icu59 = callPackage ../development/libraries/icu/59.nix ({ 11881 11862 nativeBuildRoot = buildPackages.icu59.override { buildRootOnly = true; }; 11882 - } // (stdenv.lib.optionalAttrs (stdenv.cc.isGNU && stdenv.hostPlatform.isi686) { 11863 + } // (stdenv.lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { 11883 11864 stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' 11884 11865 })); 11885 11866 icu60 = callPackage ../development/libraries/icu/60.nix ({ 11886 11867 nativeBuildRoot = buildPackages.icu60.override { buildRootOnly = true; }; 11887 - } // (stdenv.lib.optionalAttrs (stdenv.cc.isGNU && stdenv.hostPlatform.isi686) { 11868 + } // (stdenv.lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { 11888 11869 stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' 11889 11870 })); 11890 11871 icu63 = callPackage ../development/libraries/icu/63.nix ({ 11891 11872 nativeBuildRoot = buildPackages.icu63.override { buildRootOnly = true; }; 11892 - } // (stdenv.lib.optionalAttrs (stdenv.cc.isGNU && stdenv.hostPlatform.isi686) { 11873 + } // (stdenv.lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { 11893 11874 stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' 11894 11875 })); 11895 11876 icu64 = callPackage ../development/libraries/icu/64.nix ({ 11896 11877 nativeBuildRoot = buildPackages.icu64.override { buildRootOnly = true; }; 11897 - } // (stdenv.lib.optionalAttrs (stdenv.cc.isGNU && stdenv.hostPlatform.isi686) { 11878 + } // (stdenv.lib.optionalAttrs (stdenv.hostPlatform.isi686 && stdenv.cc.isGNU) { 11898 11879 stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' 11899 11880 })); 11900 11881 ··· 16490 16471 virtualbox = pkgs.virtualboxHardened; 16491 16472 }; 16492 16473 16493 - wireguard = callPackage ../os-specific/linux/wireguard { }; 16474 + wireguard = if lib.versionOlder kernel.version "5.6" then callPackage ../os-specific/linux/wireguard { } else null; 16494 16475 16495 16476 x86_energy_perf_policy = callPackage ../os-specific/linux/x86_energy_perf_policy { }; 16496 16477
+5
pkgs/top-level/release-cross.nix
··· 135 135 /* Linux on the fuloong */ 136 136 fuloongminipc = mapTestOnCross lib.systems.examples.fuloongminipc linuxCommon; 137 137 138 + /* Javacript */ 139 + ghcjs = mapTestOnCross lib.systems.examples.ghcjs { 140 + haskell.packages.ghcjs.hello = nativePlatforms; 141 + }; 142 + 138 143 /* Linux on Raspberrypi */ 139 144 rpi = mapTestOnCross lib.systems.examples.raspberryPi rpiCommon; 140 145 rpi-musl = mapTestOnCross lib.systems.examples.muslpi rpiCommon;