From 6efcfe03ae4ef426b77a6827243433b5296613a4 Mon Sep 17 00:00:00 2001 From: Nikolay Amiantov Date: Sat, 27 Aug 2016 13:29:38 +0300 Subject: [PATCH 001/100] nixos filesystems: unify early filesystems handling A new internal config option `fileSystems..early` is added to indicate that the filesystem needs to be loaded very early (i.e. in initrd). They are transformed to a shell script in `system.build.earlyMountScript` with calls to an undefined `specialMount` function, which is expected to be caller-specific. This option is used by stage-1, stage-2 and activation script to set up and remount those filesystems. Options for them are updated according to systemd defaults. --- nixos/modules/security/hidepid.nix | 19 +-------- .../system/activation/activation-script.nix | 12 ++++-- nixos/modules/system/boot/stage-1-init.sh | 26 ++++++------ nixos/modules/system/boot/stage-1.nix | 4 +- nixos/modules/system/boot/stage-2-init.sh | 29 +++++-------- nixos/modules/system/boot/stage-2.nix | 3 +- nixos/modules/tasks/filesystems.nix | 41 +++++++++++++++++-- 7 files changed, 75 insertions(+), 59 deletions(-) diff --git a/nixos/modules/security/hidepid.nix b/nixos/modules/security/hidepid.nix index 8271578c55d..4917327d617 100644 --- a/nixos/modules/security/hidepid.nix +++ b/nixos/modules/security/hidepid.nix @@ -20,23 +20,6 @@ with lib; config = mkIf config.security.hideProcessInformation { users.groups.proc.gid = config.ids.gids.proc; - systemd.services.hidepid = { - wantedBy = [ "local-fs.target" ]; - after = [ "systemd-remount-fs.service" ]; - before = [ "local-fs-pre.target" "local-fs.target" "shutdown.target" ]; - wants = [ "local-fs-pre.target" ]; - - serviceConfig = { - Type = "oneshot"; - RemainAfterExit = true; - ExecStart = ''${pkgs.utillinux}/bin/mount -o remount,hidepid=2,gid=${toString config.ids.gids.proc} /proc''; - ExecStop = ''${pkgs.utillinux}/bin/mount -o remount,hidepid=0,gid=0 /proc''; - }; - - unitConfig = { - DefaultDependencies = false; - Conflicts = "shutdown.target"; - }; - }; + fileSystems."/proc".options = [ "hidepid=2" "gid=${toString config.ids.gids.proc}" ]; }; } diff --git a/nixos/modules/system/activation/activation-script.nix b/nixos/modules/system/activation/activation-script.nix index 4489e34831d..1c587413121 100644 --- a/nixos/modules/system/activation/activation-script.nix +++ b/nixos/modules/system/activation/activation-script.nix @@ -154,9 +154,15 @@ in system.activationScripts.tmpfs = '' - ${pkgs.utillinux}/bin/mount -o "remount,size=${config.boot.devSize}" none /dev - ${pkgs.utillinux}/bin/mount -o "remount,size=${config.boot.devShmSize}" none /dev/shm - ${pkgs.utillinux}/bin/mount -o "remount,size=${config.boot.runSize}" none /run + specialMount() { + local device="$1" + local mountPoint="$2" + local options="$3" + local fsType="$4" + + ${pkgs.utillinux}/bin/mount -t "$fsType" -o "remount,$options" "$device" "$mountPoint" + } + source ${config.system.build.earlyMountScript} ''; }; diff --git a/nixos/modules/system/boot/stage-1-init.sh b/nixos/modules/system/boot/stage-1-init.sh index 65d1dcb6168..abab5f20baa 100644 --- a/nixos/modules/system/boot/stage-1-init.sh +++ b/nixos/modules/system/boot/stage-1-init.sh @@ -59,22 +59,24 @@ echo echo "<<< NixOS Stage 1 >>>" echo - -# Mount special file systems. +# Make several required directories. mkdir -p /etc/udev touch /etc/fstab # to shut up mount -touch /etc/mtab # to shut up mke2fs +ln -s /proc/mounts /etc/mtab # to shut up mke2fs touch /etc/udev/hwdb.bin # to shut up udev touch /etc/initrd-release -mkdir -p /proc -mount -t proc proc /proc -mkdir -p /sys -mount -t sysfs sysfs /sys -mount -t devtmpfs -o "size=@devSize@" devtmpfs /dev -mkdir -p /run -mount -t tmpfs -o "mode=0755,size=@runSize@" tmpfs /run -mkdir /dev/pts -mount -t devpts devpts /dev/pts + +# Mount special file systems. +specialMount() { + local device="$1" + local mountPoint="$2" + local options="$3" + local fsType="$4" + + mkdir -m 0755 -p "$mountPoint" + mount -n -t "$fsType" -o "$options" "$device" "$mountPoint" +} +source @earlyMountScript@ # Log the script output to /dev/kmsg or /run/log/stage-1-init.log. mkdir -p /tmp diff --git a/nixos/modules/system/boot/stage-1.nix b/nixos/modules/system/boot/stage-1.nix index a5c05f3dbba..513c121347b 100644 --- a/nixos/modules/system/boot/stage-1.nix +++ b/nixos/modules/system/boot/stage-1.nix @@ -190,7 +190,9 @@ let inherit udevRules extraUtils modulesClosure; - inherit (config.boot) resumeDevice devSize runSize; + inherit (config.boot) resumeDevice; + + inherit (config.system.build) earlyMountScript; inherit (config.boot.initrd) checkJournalingFS preLVMCommands preDeviceCommands postDeviceCommands postMountCommands preFailCommands kernelModules; diff --git a/nixos/modules/system/boot/stage-2-init.sh b/nixos/modules/system/boot/stage-2-init.sh index c5a14f0766d..7de85209a15 100644 --- a/nixos/modules/system/boot/stage-2-init.sh +++ b/nixos/modules/system/boot/stage-2-init.sh @@ -37,12 +37,16 @@ fi # Likewise, stage 1 mounts /proc, /dev and /sys, so if we don't have a # stage 1, we need to do that here. if [ ! -e /proc/1 ]; then - mkdir -m 0755 -p /proc - mount -n -t proc proc /proc - mkdir -m 0755 -p /dev - mount -t devtmpfs devtmpfs /dev - mkdir -m 0755 -p /sys - mount -t sysfs sysfs /sys + specialMount() { + local device="$1" + local mountPoint="$2" + local options="$3" + local fsType="$4" + + mkdir -m 0755 -p "$mountPoint" + mount -n -t "$fsType" -o "$options" "$device" "$mountPoint" + } + source @earlyMountScript@ fi @@ -87,11 +91,6 @@ done # More special file systems, initialise required directories. -if ! mountpoint -q /dev/shm; then - mkdir -m 0755 /dev/shm - mount -t tmpfs -o "rw,nosuid,nodev,size=@devShmSize@" tmpfs /dev/shm -fi -mkdir -m 0755 -p /dev/pts [ -e /proc/bus/usb ] && mount -t usbfs usbfs /proc/bus/usb # UML doesn't have USB by default mkdir -m 01777 -p /tmp mkdir -m 0755 -p /var /var/log /var/lib /var/db @@ -112,14 +111,6 @@ rm -f /etc/{group,passwd,shadow}.lock rm -rf /nix/var/nix/gcroots/tmp /nix/var/nix/temproots -# Create a tmpfs on /run to hold runtime state for programs such as -# udev (if stage 1 hasn't already done so). -if ! mountpoint -q /run; then - rm -rf /run - mkdir -m 0755 -p /run - mount -t tmpfs -o "mode=0755,size=@runSize@" tmpfs /run -fi - # Create a ramfs on /run/keys to hold secrets that shouldn't be # written to disk (generally used for NixOps, harmless elsewhere). if ! mountpoint -q /run/keys; then diff --git a/nixos/modules/system/boot/stage-2.nix b/nixos/modules/system/boot/stage-2.nix index b67f42a017e..7e4ec2a4a67 100644 --- a/nixos/modules/system/boot/stage-2.nix +++ b/nixos/modules/system/boot/stage-2.nix @@ -20,10 +20,9 @@ let src = ./stage-2-init.sh; shellDebug = "${pkgs.bashInteractive}/bin/bash"; isExecutable = true; - inherit (config.boot) devShmSize runSize; inherit (config.nix) readOnlyStore; inherit (config.networking) useHostResolvConf; - ttyGid = config.ids.gids.tty; + inherit (config.system.build) earlyMountScript; path = [ pkgs.coreutils pkgs.utillinux diff --git a/nixos/modules/tasks/filesystems.nix b/nixos/modules/tasks/filesystems.nix index f146448200f..d69284a7532 100644 --- a/nixos/modules/tasks/filesystems.nix +++ b/nixos/modules/tasks/filesystems.nix @@ -18,6 +18,8 @@ let prioOption = prio: optionalString (prio != null) " pri=${toString prio}"; + specialFSTypes = [ "proc" "sysfs" "tmpfs" "devtmpfs" "devpts" ]; + fileSystemOpts = { name, config, ... }: { options = { @@ -97,11 +99,22 @@ let description = "Disable running fsck on this filesystem."; }; + early = mkOption { + default = false; + type = types.bool; + internal = true; + description = '' + Mount this filesystem very early during boot. At the moment of + mounting no disks are exposed, so this option is primarily for + special file systems. + ''; + }; + }; config = { mountPoint = mkDefault name; - device = mkIf (config.fsType == "tmpfs") (mkDefault config.fsType); + device = mkIf (elem config.fsType specialFSTypes) (mkDefault config.fsType); options = mkIf config.autoResize [ "x-nixos.autoresize" ]; # -F needed to allow bare block device without partitions @@ -110,6 +123,13 @@ let }; + # Makes sequence of `specialMount device mountPoint options fsType` commands. + # `systemMount` should be defined in the sourcing script. + makeSpecialMounts = mounts: + pkgs.writeText "mounts.sh" (concatMapStringsSep "\n" (mount: '' + specialMount "${mount.device}" "${mount.mountPoint}" "${concatStringsSep "," mount.options}" "${mount.fsType}" + '') mounts); + in { @@ -131,8 +151,7 @@ in "/bigdisk".label = "bigdisk"; } ''; - type = types.loaOf types.optionSet; - options = [ fileSystemOpts ]; + type = types.loaOf (types.submodule fileSystemOpts); description = '' The file systems to be mounted. It must include an entry for the root directory (mountPoint = "/"). Each @@ -177,10 +196,14 @@ in { assertion = ! (fileSystems' ? "cycle"); message = "The ‘fileSystems’ option can't be topologically sorted: mountpoint dependency path ${ls " -> " fileSystems'.cycle} loops to ${ls ", " fileSystems'.loops}"; } + { assertion = all (x: !x.early || (x.label == null && !x.autoFormat && !x.autoResize)) fileSystems; + message = "Early filesystems don't support mounting by label, auto formatting and resizing"; + } ]; # Export for use in other modules system.build.fileSystems = fileSystems; + system.build.earlyMountScript = makeSpecialMounts (filter (fs: fs.early) fileSystems); boot.supportedFilesystems = map (fs: fs.fsType) fileSystems; @@ -211,7 +234,7 @@ in + " " + (if skipCheck fs then "0" else if fs.mountPoint == "/" then "1" else "2") + "\n" - ) fileSystems} + ) (filter (fs: !fs.early) fileSystems)} # Swap devices. ${flip concatMapStrings config.swapDevices (sw: @@ -258,6 +281,16 @@ in in listToAttrs (map formatDevice (filter (fs: fs.autoFormat) fileSystems)); + # Sync mount options with systemd's src/core/mount-setup.c: mount_table. + fileSystems = mapAttrs (n: fs: fs // { early = true; }) { + "/proc" = { fsType = "proc"; options = [ "nosuid" "noexec" "nodev" ]; }; + "/sys" = { fsType = "sysfs"; options = [ "nosuid" "noexec" "nodev" ]; }; + "/run" = { fsType = "tmpfs"; options = [ "nosuid" "nodev" "strictatime" "mode=755" "size=${config.boot.runSize}" ]; }; + "/dev" = { fsType = "devtmpfs"; options = [ "nosuid" "strictatime" "mode=755" "size=${config.boot.devSize}" ]; }; + "/dev/shm" = { fsType = "tmpfs"; options = [ "nosuid" "nodev" "strictatime" "mode=1777" "size=${config.boot.devShmSize}" ]; }; + "/dev/pts" = { fsType = "devpts"; options = [ "nosuid" "noexec" "mode=620" "gid=${toString config.ids.gids.tty}" ]; }; + }; + }; } From 58738e4bc7df7c5d7c224f71defec88f72775e02 Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Wed, 24 Aug 2016 19:16:30 +0200 Subject: [PATCH 002/100] qarte: 2.4.0 -> 3.2.0 --- pkgs/applications/video/qarte/default.nix | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/pkgs/applications/video/qarte/default.nix b/pkgs/applications/video/qarte/default.nix index f01f4ffd7f5..5b87fca9dcd 100644 --- a/pkgs/applications/video/qarte/default.nix +++ b/pkgs/applications/video/qarte/default.nix @@ -1,13 +1,13 @@ -{ stdenv, fetchbzr, pythonPackages, rtmpdump, makeWrapper }: +{ stdenv, fetchbzr, python3Packages, rtmpdump, makeWrapper }: let - inherit (pythonPackages) python pyqt4 sip; + inherit (python3Packages) python pyqt5 sip; in stdenv.mkDerivation { - name = "qarte-2.4.0"; + name = "qarte-3.2.0"; src = fetchbzr { - url = http://bazaar.launchpad.net/~vincent-vandevyvre/qarte/trunk; - rev = "150"; - sha256 = "0fj11jx9l5qi968c906rrksdic7w4yj414m47k6axlb4v6ghdnar"; + url = http://bazaar.launchpad.net/~vincent-vandevyvre/qarte/qarte-3; + rev = "146"; + sha256 = "0dvl38dknmnj2p4yr25p88kw3mh502c6qdp2bd43bhd2sqc3b0v0"; }; buildInputs = [ makeWrapper ]; @@ -16,10 +16,10 @@ in stdenv.mkDerivation { mkdir -p $out/bin mv qarte $out/bin/ substituteInPlace $out/bin/qarte \ - --replace '/usr/bin/python' "${python.interpreter}" \ + --replace '/usr/bin/python3' "${python.interpreter}" \ --replace '/usr/share' "$out/share" wrapProgram $out/bin/qarte \ - --prefix PYTHONPATH : "${pyqt4}/lib/${python.libPrefix}/site-packages:${sip}/lib/${python.libPrefix}/site-packages" \ + --prefix PYTHONPATH : "${pyqt5}/lib/${python.libPrefix}/site-packages:${sip}/lib/${python.libPrefix}/site-packages" \ --prefix PATH : "${rtmpdump}/bin" mkdir -p $out/share/man/man1/ From aebabb987172f0d14ed7d38b4c9f87f73f097851 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Mon, 29 Aug 2016 12:31:59 +0200 Subject: [PATCH 003/100] qarte: create python env --- pkgs/applications/video/qarte/default.nix | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/pkgs/applications/video/qarte/default.nix b/pkgs/applications/video/qarte/default.nix index 5b87fca9dcd..40011e11b2d 100644 --- a/pkgs/applications/video/qarte/default.nix +++ b/pkgs/applications/video/qarte/default.nix @@ -1,7 +1,7 @@ -{ stdenv, fetchbzr, python3Packages, rtmpdump, makeWrapper }: +{ stdenv, fetchbzr, python3, rtmpdump, makeWrapper }: let - inherit (python3Packages) python pyqt5 sip; + pythonEnv = python3.withPackages (ps: with ps; [ pyqt5 sip ]); in stdenv.mkDerivation { name = "qarte-3.2.0"; src = fetchbzr { @@ -10,16 +10,14 @@ in stdenv.mkDerivation { sha256 = "0dvl38dknmnj2p4yr25p88kw3mh502c6qdp2bd43bhd2sqc3b0v0"; }; - buildInputs = [ makeWrapper ]; + buildInputs = [ makeWrapper pythonEnv ]; installPhase = '' mkdir -p $out/bin mv qarte $out/bin/ substituteInPlace $out/bin/qarte \ - --replace '/usr/bin/python3' "${python.interpreter}" \ --replace '/usr/share' "$out/share" wrapProgram $out/bin/qarte \ - --prefix PYTHONPATH : "${pyqt5}/lib/${python.libPrefix}/site-packages:${sip}/lib/${python.libPrefix}/site-packages" \ --prefix PATH : "${rtmpdump}/bin" mkdir -p $out/share/man/man1/ From 07ed06f8da8a12f3ad0fcb65b558a828cebca270 Mon Sep 17 00:00:00 2001 From: Alexander Ried Date: Mon, 29 Aug 2016 15:37:38 +0200 Subject: [PATCH 004/100] libcommuni: 2016-03-23 -> 2016-08-17 add missing build input (fixes build) --- pkgs/development/libraries/libcommuni/default.nix | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/pkgs/development/libraries/libcommuni/default.nix b/pkgs/development/libraries/libcommuni/default.nix index 77199bf27a3..06a7f54e42b 100644 --- a/pkgs/development/libraries/libcommuni/default.nix +++ b/pkgs/development/libraries/libcommuni/default.nix @@ -1,17 +1,18 @@ -{ fetchgit, qtbase, qmakeHook, which, stdenv +{ stdenv, fetchFromGitHub, qtbase, qtdeclarative, qmakeHook, which }: stdenv.mkDerivation rec { name = "libcommuni-${version}"; - version = "2016-03-23"; + version = "2016-08-17"; - src = fetchgit { - url = "https://github.com/communi/libcommuni.git"; - rev = "6a5110b25e2838e7dc2c62d16b9fd06d12beee7e"; - sha256 = "184ah5xqg5pgy8h6fyyz2k0vak1fmhrcidwz828yl4lsvz1vjqh1"; + src = fetchFromGitHub { + owner = "communi"; + repo = "libcommuni"; + rev = "dedba6faf57c31c8c70fd563ba12d75a9caee8a3"; + sha256 = "0wvs53z34vfs5xlln4a6sbd4981svag89xm0f4k20mb1i052b20i"; }; - buildInputs = [ qtbase ]; + buildInputs = [ qtbase qtdeclarative ]; nativeBuildInputs = [ qmakeHook which ]; enableParallelBuild = true; From 8d26e566083d4c1a49e50c41fe729e11b4ce5444 Mon Sep 17 00:00:00 2001 From: Alexander Ried Date: Mon, 29 Aug 2016 16:43:10 +0200 Subject: [PATCH 005/100] communi: 2016-01-03 -> 2016-08-19 --- pkgs/applications/networking/irc/communi/default.nix | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/networking/irc/communi/default.nix b/pkgs/applications/networking/irc/communi/default.nix index 382044bec5a..8b467a868b5 100644 --- a/pkgs/applications/networking/irc/communi/default.nix +++ b/pkgs/applications/networking/irc/communi/default.nix @@ -2,12 +2,13 @@ stdenv.mkDerivation rec { name = "communi-${version}"; - version = "2016-01-03"; + version = "2016-08-19"; src = fetchgit { url = "https://github.com/communi/communi-desktop.git"; - rev = "ad1b9a30ed6c51940c0d2714b126a32b5d68c876"; - sha256 = "0jx963pfvzk4dbk8mrmzfrhzybk5y6ib9yzaj662wliayrzj7vpg"; + rev = "d516b01b1382a805de65f21f3475e0a8e64a97b5"; + sha256 = "1pn7mr7ch1ck5qv9zdn3ril40c9kk6l04475564rpzf11jly76an"; + fetchSubmodules = true; }; nativeBuildInputs = [ makeQtWrapper qmakeHook ]; @@ -34,6 +35,10 @@ stdenv.mkDerivation rec { --replace "/usr/bin" "$out/bin" ''; + postFixup = '' + patchelf --set-rpath "$out/lib:$(patchelf --print-rpath $out/bin/.communi-wrapped)" $out/bin/.communi-wrapped + ''; + meta = with stdenv.lib; { description = "A simple and elegant cross-platform IRC client"; homepage = https://github.com/communi/communi-desktop; From 822e1ddd8920e3bd3e631a5bb1892fea60debd4b Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 29 Aug 2016 17:25:33 +0200 Subject: [PATCH 006/100] Use builtins.partition if available --- lib/lists.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/lists.nix b/lib/lists.nix index 4bf732b88c9..5e224921de8 100644 --- a/lib/lists.nix +++ b/lib/lists.nix @@ -218,12 +218,12 @@ rec { partition (x: x > 2) [ 5 1 2 3 4 ] => { right = [ 5 3 4 ]; wrong = [ 1 2 ]; } */ - partition = pred: + partition = builtins.partition or (pred: fold (h: t: if pred h then { right = [h] ++ t.right; wrong = t.wrong; } else { right = t.right; wrong = [h] ++ t.wrong; } - ) { right = []; wrong = []; }; + ) { right = []; wrong = []; }); /* Merges two lists of the same size together. If the sizes aren't the same the merging stops at the shortest. How both lists are merged is defined From 2755bcfa7c684ebf347df1e29b155fb30659ab7a Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 29 Aug 2016 17:26:01 +0200 Subject: [PATCH 007/100] In $NIX_PATH, use nixpkgs=... This is required by the "nix" command to find Nixpkgs. --- nixos/modules/services/misc/nix-daemon.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/services/misc/nix-daemon.nix b/nixos/modules/services/misc/nix-daemon.nix index fe5132d4973..333782d15bc 100644 --- a/nixos/modules/services/misc/nix-daemon.nix +++ b/nixos/modules/services/misc/nix-daemon.nix @@ -311,7 +311,7 @@ in nixPath = mkOption { type = types.listOf types.str; default = - [ "/nix/var/nix/profiles/per-user/root/channels/nixos" + [ "nixpkgs=/nix/var/nix/profiles/per-user/root/channels/nixos/nixpkgs" "nixos-config=/etc/nixos/configuration.nix" "/nix/var/nix/profiles/per-user/root/channels" ]; From 6ae57b1b634d2145f72c1742685695e7192102ba Mon Sep 17 00:00:00 2001 From: zimbatm Date: Fri, 26 Aug 2016 14:08:39 +0100 Subject: [PATCH 008/100] bundler: fix usage on nested call The combination of bundler 1.12.5 and rubygems 1.6.2 doesn't play well at all when trying to run gems such as foreman where bundler is used to run bundler. Just upgrading to the latest bundler rc doesn't fix it and changing rubygems causes a massive rebuild. Issues: - https://github.com/bundler/bundler/issues/4402 - https://github.com/bundler/bundler/issues/4576 - https://github.com/bundler/bundler/issues/4602 - https://github.com/docker-library/ruby/issues/73 This PR patches bundler to work around the issue as highlighted here and unbreaks everything for me: https://github.com/bundler/bundler/issues/4602#issuecomment-233619696 --- .../ruby-modules/bundler/default.nix | 4 ++++ .../ruby-modules/gem-config/default.nix | 24 ++++++++++++------- 2 files changed, 19 insertions(+), 9 deletions(-) diff --git a/pkgs/development/ruby-modules/bundler/default.nix b/pkgs/development/ruby-modules/bundler/default.nix index 50b8725a0af..c3c544d5268 100644 --- a/pkgs/development/ruby-modules/bundler/default.nix +++ b/pkgs/development/ruby-modules/bundler/default.nix @@ -7,4 +7,8 @@ buildRubyGem rec { version = "1.12.5"; sha256 = "1q84xiwm9j771lpmiply0ls9l2bpvl5axn3jblxjvrldh8di2pkc"; dontPatchShebangs = true; + + postFixup = '' + sed -i -e "s/activate_bin_path/bin_path/g" $out/bin/bundle + ''; } diff --git a/pkgs/development/ruby-modules/gem-config/default.nix b/pkgs/development/ruby-modules/gem-config/default.nix index 95b5033cc9d..41c837f52f0 100644 --- a/pkgs/development/ruby-modules/gem-config/default.nix +++ b/pkgs/development/ruby-modules/gem-config/default.nix @@ -29,6 +29,21 @@ let in { + bundler = attrs: + let + templates = "${attrs.ruby.gemPath}/gems/${attrs.gemName}-${attrs.version}/lib/bundler/templates/"; + in { + # patching shebangs would fail on the templates/Executable file, so we + # temporarily remove the executable flag. + preFixup = "chmod -x $out/${templates}/Executable"; + postFixup = '' + chmod +x $out/${templates}/Executable + + # Allows to load another bundler version + sed -i -e "s/activate_bin_path/bin_path/g" $out/bin/bundle + ''; + }; + capybara-webkit = attrs: { buildInputs = [ qt48 ]; }; @@ -177,14 +192,5 @@ in ''; }; - # patching shebangs would fail on the templates/Executable file, so we - # temporarily remove the executable flag. - bundler = attrs: - let - templates = "${attrs.ruby.gemPath}/gems/${attrs.gemName}-${attrs.version}/lib/bundler/templates/"; - in { - preFixup = "chmod -x $out/${templates}/Executable"; - postFixup = "chmod +x $out/${templates}/Executable"; - }; } From 64667ae3ef0e0dc4a1b1cbdbea30de8a07cb4f15 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adolfo=20E=2E=20Garc=C3=ADa=20Castro?= Date: Mon, 29 Aug 2016 10:22:34 -0600 Subject: [PATCH 009/100] pjsip: 2.1 -> 2.5.5 --- pkgs/applications/networking/pjsip/default.nix | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/pkgs/applications/networking/pjsip/default.nix b/pkgs/applications/networking/pjsip/default.nix index 4d08e1cc60a..4ccc3fd5237 100644 --- a/pkgs/applications/networking/pjsip/default.nix +++ b/pkgs/applications/networking/pjsip/default.nix @@ -1,14 +1,15 @@ -{stdenv, fetchurl, openssl, libsamplerate}: +{ stdenv, fetchurl, openssl, libsamplerate, alsaLib }: stdenv.mkDerivation rec { - name = "pjsip-2.1"; + name = "pjsip-${version}"; + version = "2.5.5"; src = fetchurl { - url = http://www.pjsip.org/release/2.1/pjproject-2.1.tar.bz2; - md5 = "310eb63638dac93095f6a1fc8ee1f578"; + url = "http://www.pjsip.org/release/${version}/pjproject-${version}.tar.bz2"; + sha256 = "ab39207b761d3485199cd881410afeb2d171dff7c2bf75e8caae91c6dca508f3"; }; - buildInputs = [ openssl libsamplerate ]; + buildInputs = [ openssl libsamplerate alsaLib ]; postInstall = '' mkdir -p $out/bin @@ -21,7 +22,7 @@ stdenv.mkDerivation rec { dontPatchELF = true; meta = { - description = "SIP stack and media stack for presence, im, and multimedia communication"; + description = "A multimedia communication library written in C, implementing standard based protocols such as SIP, SDP, RTP, STUN, TURN, and ICE"; homepage = http://pjsip.org/; license = stdenv.lib.licenses.gpl2Plus; maintainers = with stdenv.lib.maintainers; [viric]; From 3aef93e8f046210f1715b555d835f2f20cd07753 Mon Sep 17 00:00:00 2001 From: Guillaume Maudoux Date: Mon, 29 Aug 2016 18:25:50 +0200 Subject: [PATCH 010/100] nixos/containers: Process config like toplevel options (#17365) --- nixos/modules/virtualisation/containers.nix | 29 ++++++++++++--------- 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix index d83841452f9..413aa94339f 100644 --- a/nixos/modules/virtualisation/containers.nix +++ b/nixos/modules/virtualisation/containers.nix @@ -340,6 +340,20 @@ in A specification of the desired configuration of this container, as a NixOS module. ''; + type = lib.mkOptionType { + name = "Toplevel NixOS config"; + merge = loc: defs: (import ../../lib/eval-config.nix { + inherit system; + modules = + let extraConfig = + { boot.isContainer = true; + networking.hostName = mkDefault name; + networking.useDHCP = false; + }; + in [ extraConfig ] ++ (map (x: x.value) defs); + prefix = [ "containers" name ]; + }).config; + }; }; path = mkOption { @@ -410,18 +424,9 @@ in } // networkOptions; config = mkMerge - [ (mkIf options.config.isDefined { - path = (import ../../lib/eval-config.nix { - inherit system; - modules = - let extraConfig = - { boot.isContainer = true; - networking.hostName = mkDefault name; - networking.useDHCP = false; - }; - in [ extraConfig config.config ]; - prefix = [ "containers" name ]; - }).config.system.build.toplevel; + [ + (mkIf options.config.isDefined { + path = config.config.system.build.toplevel; }) ]; })); From acca6d22931e99430a6da2cfdfdcb2819fabc08e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Mon, 29 Aug 2016 18:27:44 +0200 Subject: [PATCH 011/100] libreoffice: remove a flaky test on i686 ... by a patch from Debian. --- pkgs/applications/office/libreoffice/still.nix | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/pkgs/applications/office/libreoffice/still.nix b/pkgs/applications/office/libreoffice/still.nix index 8739f08fbd6..d873ca0a02f 100644 --- a/pkgs/applications/office/libreoffice/still.nix +++ b/pkgs/applications/office/libreoffice/still.nix @@ -69,6 +69,16 @@ in stdenv.mkDerivation rec { sha256 = "1qg0dj0zwh5ifhmvv4k771nmyqddz4ifn75s9mr1p0nyix8zks8x"; }; + # we only have this problem on i686 ATM + patches = if stdenv.is64bit then null else [ + (fetchurl { + name = "disable-flaky-tests.diff"; + url = "https://anonscm.debian.org/git/pkg-openoffice/libreoffice.git/plain" + + "/patches/disable-flaky-tests.diff?h=libreoffice_5.1.5_rc2-1"; + sha256 = "1v1aiqdi64iijjraj6v4ljzclrd9lqan54hmy2h6m20x3ab005wb"; + }) + ]; + # Openoffice will open libcups dynamically, so we link it directly # to make its dlopen work. # It also seems not to mention libdl explicitly in some places. From 6a04de991c3a5bf76caaa19f34adb77f6b072c51 Mon Sep 17 00:00:00 2001 From: Robin Gloster Date: Mon, 29 Aug 2016 16:34:19 +0000 Subject: [PATCH 012/100] linuxPackages_3_12.ena: fix build --- pkgs/os-specific/linux/ena/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/os-specific/linux/ena/default.nix b/pkgs/os-specific/linux/ena/default.nix index 051725d32d9..8d2f368bc99 100644 --- a/pkgs/os-specific/linux/ena/default.nix +++ b/pkgs/os-specific/linux/ena/default.nix @@ -12,6 +12,9 @@ stdenv.mkDerivation rec { hardeningDisable = [ "pic" ]; + # linux 3.12 + NIX_CFLAGS_COMPILE = "-Wno-error=implicit-function-declaration"; + configurePhase = '' cd kernel/linux/ena From 6541dfe5543bdd51e8c746681fcbf221affb7670 Mon Sep 17 00:00:00 2001 From: Robin Gloster Date: Mon, 29 Aug 2016 17:00:34 +0000 Subject: [PATCH 013/100] wxGTK: disable format hardening --- pkgs/development/libraries/wxGTK-2.8/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/libraries/wxGTK-2.8/default.nix b/pkgs/development/libraries/wxGTK-2.8/default.nix index e023665f070..7396b700955 100644 --- a/pkgs/development/libraries/wxGTK-2.8/default.nix +++ b/pkgs/development/libraries/wxGTK-2.8/default.nix @@ -21,6 +21,8 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ pkgconfig ]; + hardeningDisable = [ "format" ]; + configureFlags = [ "--enable-gtk2" (if compat24 then "--enable-compat24" else "--disable-compat24") From 57bd89e447911c26c02b7884d5a3cbff3557ab9f Mon Sep 17 00:00:00 2001 From: Robin Gloster Date: Mon, 29 Aug 2016 17:01:03 +0000 Subject: [PATCH 014/100] fsg: disable format hardening --- pkgs/games/fsg/default.nix | 22 ++-------------------- 1 file changed, 2 insertions(+), 20 deletions(-) diff --git a/pkgs/games/fsg/default.nix b/pkgs/games/fsg/default.nix index db18bc7c249..f6f52aabb6b 100644 --- a/pkgs/games/fsg/default.nix +++ b/pkgs/games/fsg/default.nix @@ -4,32 +4,14 @@ stdenv.mkDerivation { name = "fsg-4.4"; src = fetchurl { - #url = http://www.piettes.com/fallingsandgame/fsg-src-4.4.tar.gz; url = http://www.sourcefiles.org/Games/Simulation/Other/fsg-src-4.4.tar.gz; sha256 = "1756y01rkvd3f1pkj88jqh83fqcfl2fy0c48mcq53pjzln9ycv8c"; }; + hardeningDisable = [ "format" ]; + buildInputs = [ gtk glib pkgconfig mesa wxGTK libX11 xproto ]; -/* -# One day Unicode will overcome? - - preBuild = " - sed -e ' - s/\\(str\\.Printf(\\)\\(\".*\"\\)/\\1_(\\2)/; - s@\\ Date: Mon, 29 Aug 2016 17:15:10 +0000 Subject: [PATCH 015/100] ataripp: add missing libSM dependency --- pkgs/misc/emulators/atari++/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/misc/emulators/atari++/default.nix b/pkgs/misc/emulators/atari++/default.nix index 9d4a142cf2e..d669233e759 100644 --- a/pkgs/misc/emulators/atari++/default.nix +++ b/pkgs/misc/emulators/atari++/default.nix @@ -1,5 +1,4 @@ -{ stdenv, fetchurl -, libX11, SDL }: +{ stdenv, fetchurl, libSM, libX11, SDL }: with stdenv.lib; stdenv.mkDerivation rec{ @@ -11,7 +10,8 @@ stdenv.mkDerivation rec{ sha256 = "1y5kwh08717jsa5agxrvxnggnwxq36irrid9rzfhca1nnvp9a45l"; }; - buildInputs = [ libX11 SDL ]; + buildInputs = [ libSM libX11 SDL ]; + meta = { homepage = http://www.xl-project.com/; description = "An enhanced, cycle-accurated Atari emulator"; From f85053a0216b12d87cb66b246440411a296b42d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Mon, 29 Aug 2016 19:38:31 +0200 Subject: [PATCH 016/100] ilmbase: fix linkage The library was missing -pthread symbols. It wasn't failing by itself, but e.g. blender was failing to link against is fixed now. --- pkgs/development/libraries/ilmbase/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/libraries/ilmbase/default.nix b/pkgs/development/libraries/ilmbase/default.nix index 742048c9ae6..4df17d271a2 100644 --- a/pkgs/development/libraries/ilmbase/default.nix +++ b/pkgs/development/libraries/ilmbase/default.nix @@ -14,6 +14,8 @@ stdenv.mkDerivation rec { buildInputs = [ automake autoconf libtool which ]; + NIX_CFLAGS_LINK = [ "-pthread" ]; + patches = [ ./bootstrap.patch ]; meta = with stdenv.lib; { From 0bce188ec184cb1b731d8adf2ee1faa777583056 Mon Sep 17 00:00:00 2001 From: aszlig Date: Mon, 29 Aug 2016 20:07:15 +0200 Subject: [PATCH 017/100] linux/kernel: Remove KVM_APIC_ARCHITECTURE for 4.8 The option is no longer needed and has been removed upstream in torvalds/linux@557abc40d121358883d2da8bc8bf976d6e8ec332. Signed-off-by: aszlig --- pkgs/os-specific/linux/kernel/common-config.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix index 95b1319e981..9fa81ea66aa 100644 --- a/pkgs/os-specific/linux/kernel/common-config.nix +++ b/pkgs/os-specific/linux/kernel/common-config.nix @@ -433,7 +433,9 @@ with stdenv.lib; PARAVIRT? y HYPERVISOR_GUEST y PARAVIRT_SPINLOCKS? y - KVM_APIC_ARCHITECTURE y + ${optionalString (versionOlder version "4.8") '' + KVM_APIC_ARCHITECTURE y + ''} KVM_ASYNC_PF y ${optionalString (versionAtLeast version "4.0") '' KVM_COMPAT? y From 42e1ec215ea000df75db2e87273a3e8fc6167be0 Mon Sep 17 00:00:00 2001 From: aszlig Date: Mon, 29 Aug 2016 20:21:07 +0200 Subject: [PATCH 018/100] linux/kernel: Remove MLX4_EN_VXLAN for 4.8 This option is no longer needed and has been removed in upstream commit torvalds/linux@a831274a1346913c145797ddee6f39e30e061318. Signed-off-by: aszlig --- pkgs/os-specific/linux/kernel/common-config.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix index 9fa81ea66aa..54e6b7822f9 100644 --- a/pkgs/os-specific/linux/kernel/common-config.nix +++ b/pkgs/os-specific/linux/kernel/common-config.nix @@ -346,7 +346,7 @@ with stdenv.lib; LOGO n # not needed MEDIA_ATTACH y MEGARAID_NEWGEN y - ${optionalString (versionAtLeast version "3.15") '' + ${optionalString (versionAtLeast version "3.15" && versionOlder version "4.8") '' MLX4_EN_VXLAN y ''} MODVERSIONS y From 74ec94bfa2e57e2c0beeee0e469de58391d04a7b Mon Sep 17 00:00:00 2001 From: aszlig Date: Mon, 29 Aug 2016 20:42:49 +0200 Subject: [PATCH 019/100] linux/kernel/testing: 4.8-rc3 -> 4.8-rc4 Tested by only building the linux_testing attribute, but haven't yet tested it in production. I've also fixed the extraMeta.branch attribute. Verified-with-PGP: ABAF 11C6 5A29 70B1 30AB E3C4 79BE 3E43 0041 1886 Signed-off-by: aszlig --- pkgs/os-specific/linux/kernel/linux-testing.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/linux-testing.nix b/pkgs/os-specific/linux/kernel/linux-testing.nix index da2296bb22a..7b4284028ed 100644 --- a/pkgs/os-specific/linux/kernel/linux-testing.nix +++ b/pkgs/os-specific/linux/kernel/linux-testing.nix @@ -1,13 +1,13 @@ { stdenv, fetchurl, perl, buildLinux, ... } @ args: import ./generic.nix (args // rec { - version = "4.8-rc3"; - modDirVersion = "4.8.0-rc3"; - extraMeta.branch = "4.7"; + version = "4.8-rc4"; + modDirVersion = "4.8.0-rc4"; + extraMeta.branch = "4.8"; src = fetchurl { url = "mirror://kernel/linux/kernel/v4.x/testing/linux-${version}.tar.xz"; - sha256 = "08ir3w034qkalyi8mc6czgk9mcglm7wfazr2md94a8x98j69v38r"; + sha256 = "0is4pzmci1i59fxw9b645c8710zjnx19dfl20m4k06kxdbbs01wg"; }; features.iwlwifi = true; From 3996aa89534b7960034fb19eeb15bc62bfe3a289 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Mon, 29 Aug 2016 22:44:01 +0200 Subject: [PATCH 020/100] nix: maintenance 1.11.2 -> 1.11.3 Fixes #17804. --- pkgs/tools/package-management/nix/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/package-management/nix/default.nix b/pkgs/tools/package-management/nix/default.nix index bf3f8aed712..320f13089a6 100644 --- a/pkgs/tools/package-management/nix/default.nix +++ b/pkgs/tools/package-management/nix/default.nix @@ -89,10 +89,10 @@ in rec { nix = nixStable; nixStable = common rec { - name = "nix-1.11.2"; + name = "nix-1.11.3"; src = fetchurl { url = "http://nixos.org/releases/nix/${name}/${name}.tar.xz"; - sha256 = "fc1233814ebb385a2a991c1fb88c97b344267281e173fea7d9acd3f9caf969d6"; + sha256 = "054fya7q60nv4mcpnd5pxj4hxafrikdimjknpj46w4jd2fg61237"; }; }; From fd69c7d944df97b3c9f9a04a0c41f6b09e7c65ba Mon Sep 17 00:00:00 2001 From: Michiel Leenaars Date: Mon, 29 Aug 2016 22:55:45 +0200 Subject: [PATCH 021/100] manuskript: cleanup of install --- .../editors/manuskript/default.nix | 22 +++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/editors/manuskript/default.nix b/pkgs/applications/editors/manuskript/default.nix index 93813152a16..fc27e4a00f7 100644 --- a/pkgs/applications/editors/manuskript/default.nix +++ b/pkgs/applications/editors/manuskript/default.nix @@ -17,11 +17,17 @@ python3Packages.buildPythonApplication rec { zlib ]; + patchPhase = '' + substituteInPlace manuskript/ui/welcome.py \ + --replace sample-projects $out/share/${name}/sample-projects + ''; + buildPhase = ''''; installPhase = '' - mkdir -p $out - cp -av * $out/ + mkdir -p $out/share/${name} + cp -av bin/ i18n/ libs/ manuskript/ resources/ icons/ $out + cp -r sample-projects/ $out/share/${name} ''; doCheck = false; @@ -29,6 +35,18 @@ python3Packages.buildPythonApplication rec { meta = { description = "A open-source tool for writers"; homepage = http://www.theologeek.ch/manuskript; + longDescription = '' + Manuskript is a tool for those writer who like to organize and + plan everything before writing. The snowflake method can help you + grow your idea into a book, by leading you step by step and asking + you questions to go deeper. While writing, keep track of notes + about every characters, plot, event, place in your story. + + Develop complex characters and keep track of all useful infos. + Create intricate plots, linked to your characters, and use them to + outline your story. Organize your ideas about the world your + characters live in. + ''; license = stdenv.lib.licenses.gpl3; maintainers = [ stdenv.lib.maintainers.steveej ]; platforms = stdenv.lib.platforms.linux; From fe87145c58398ee94c8a698e7deb9b0f60db998d Mon Sep 17 00:00:00 2001 From: Michiel Leenaars Date: Mon, 29 Aug 2016 22:05:29 +0200 Subject: [PATCH 022/100] wavrsocvt: init at 1.0.2.0 --- .../misc/audio/wavrsocvt/default.nix | 38 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 40 insertions(+) create mode 100644 pkgs/applications/misc/audio/wavrsocvt/default.nix diff --git a/pkgs/applications/misc/audio/wavrsocvt/default.nix b/pkgs/applications/misc/audio/wavrsocvt/default.nix new file mode 100644 index 00000000000..09b75e27d46 --- /dev/null +++ b/pkgs/applications/misc/audio/wavrsocvt/default.nix @@ -0,0 +1,38 @@ +{ stdenv, fetchurl }: + +stdenv.mkDerivation { + name = "wavrsocvt-1.0.2.0"; + + src = fetchurl { + url = "http://bricxcc.sourceforge.net/wavrsocvt.tgz"; + sha256 = "15qlvdfwbiclljj7075ycm78yzqahzrgl4ky8pymix5179acm05h"; + }; + + phases = [ "unpackPhase" "installPhase" ]; + + unpackPhase = '' + tar -zxf $src + ''; + + installPhase = '' + mkdir -p $out/bin + cp wavrsocvt $out/bin + ''; + + meta = with stdenv.lib; { + description = "Convert .wav files into sound files for Lego NXT brick"; + longDescription = '' + wavrsocvt is a command-line utility which can be used from a + terminal window or script to convert .wav files into sound + files for the NXT brick (.rso files). It can also convert the + other direction (i.e., .rso -> .wav). It can produce RSO files + with a sample rate between 2000 and 16000 (the min/max range of + supported sample rates in the standard NXT firmware). + You can then upload these with e.g. nxt-python. + ''; + homepage = http://bricxcc.sourceforge.net/; + license = licenses.mpl11; + maintainers = with maintainers; [ leenaars ]; + platforms = with platforms; linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 8ba42dc972d..ecc4dbfc14b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -13137,6 +13137,8 @@ in wavesurfer = callPackage ../applications/misc/audio/wavesurfer { }; + wavrsocvt = callPackage ../applications/misc/audio/wavrsocvt { }; + wireshark-cli = callPackage ../applications/networking/sniffers/wireshark { withQt = false; withGtk = false; From 86d1953ed4a5317e6d103aaa08bc622d7e5fb34a Mon Sep 17 00:00:00 2001 From: aszlig Date: Mon, 29 Aug 2016 23:20:59 +0200 Subject: [PATCH 023/100] build-rebar3: Append postPatch to original hook The postPatch attribute is already in the function argument but is unused elsewhere in the code, so setting postPatch with buildRebar3 is going to end up in a no-op. This now allows to use postPatch within buildRebar3 by simply appending to the existing postPatch hook that removes the rebar and rebar3 escripts. Signed-off-by: aszlig Cc: @ericbmerritt --- pkgs/development/beam-modules/build-rebar3.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/beam-modules/build-rebar3.nix b/pkgs/development/beam-modules/build-rebar3.nix index ac40b76a78a..f783683cd4a 100644 --- a/pkgs/development/beam-modules/build-rebar3.nix +++ b/pkgs/development/beam-modules/build-rebar3.nix @@ -49,7 +49,7 @@ let postPatch = '' rm -f rebar rebar3 - ''; + '' + postPatch; configurePhase = if configurePhase == null then '' From ec20540a1afd40775803bce1a17d03a10c189c53 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Mon, 29 Aug 2016 23:39:23 +0200 Subject: [PATCH 024/100] android-udev-rules: usage example --- pkgs/os-specific/linux/android-udev-rules/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/os-specific/linux/android-udev-rules/default.nix b/pkgs/os-specific/linux/android-udev-rules/default.nix index 677eb890a5b..cae5fe4329d 100644 --- a/pkgs/os-specific/linux/android-udev-rules/default.nix +++ b/pkgs/os-specific/linux/android-udev-rules/default.nix @@ -1,5 +1,9 @@ { stdenv, fetchFromGitHub }: +## Usage +# In NixOS, simply add this package to services.udev.packages: +# services.udev.packages = [ pkgs.android-udev-rules ]; + stdenv.mkDerivation rec { name = "android-udev-rules-${version}"; version = "20160805"; From 23a7e6e9110d9bd7e3ffd24b27c50d96ad0eaa17 Mon Sep 17 00:00:00 2001 From: Joachim Fasting Date: Mon, 29 Aug 2016 18:19:18 +0200 Subject: [PATCH 025/100] dnscrypt-proxy module: formatting --- .../services/networking/dnscrypt-proxy.nix | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/nixos/modules/services/networking/dnscrypt-proxy.nix b/nixos/modules/services/networking/dnscrypt-proxy.nix index cf36ccf0572..3102bd7492a 100644 --- a/nixos/modules/services/networking/dnscrypt-proxy.nix +++ b/nixos/modules/services/networking/dnscrypt-proxy.nix @@ -62,6 +62,7 @@ in of other machines (typically on the local network). ''; }; + localPort = mkOption { default = 53; type = types.int; @@ -72,6 +73,7 @@ in to a different value; otherwise leave the default. ''; }; + resolverName = mkOption { default = "dnscrypt.eu-nl"; type = types.nullOr types.str; @@ -82,6 +84,7 @@ in extensions, and claims to not keep logs. ''; }; + resolverList = mkOption { description = '' The list of upstream DNSCrypt resolvers. By default, we use the most @@ -94,6 +97,7 @@ in }; defaultText = "pkgs.fetchurl { url = ...; sha256 = ...; }"; }; + customResolver = mkOption { default = null; description = '' @@ -103,26 +107,30 @@ in type = types.nullOr (types.submodule ({ ... }: { options = { address = mkOption { type = types.str; - description = "Resolver IP address"; + description = "IP address"; example = "208.67.220.220"; }; + port = mkOption { type = types.int; - description = "Resolver port"; + description = "Port"; default = 443; }; + name = mkOption { type = types.str; - description = "Provider fully qualified domain name"; + description = "Fully qualified domain name"; example = "2.dnscrypt-cert.opendns.com"; }; + key = mkOption { type = types.str; - description = "Provider public key"; + description = "Public key"; example = "B735:1140:206F:225D:3E2B:D822:D7FD:691E:A1C3:3CC8:D666:8D0C:BE04:BFAB:CA43:FB79"; }; }; })); }; + tcpOnly = mkOption { default = false; type = types.bool; @@ -131,6 +139,7 @@ in TCP instead of UDP (on port 443). Use only if the UDP port is blocked. ''; }; + ephemeralKeys = mkOption { default = false; type = types.bool; From 68210aa772ebf669bbf9b691d96cab98725f888a Mon Sep 17 00:00:00 2001 From: Joachim Fasting Date: Mon, 29 Aug 2016 18:22:51 +0200 Subject: [PATCH 026/100] dnscrypt-proxy module: serviceConfig.Group is redundant Same as user's primary group if left unspecified --- nixos/modules/services/networking/dnscrypt-proxy.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/nixos/modules/services/networking/dnscrypt-proxy.nix b/nixos/modules/services/networking/dnscrypt-proxy.nix index 3102bd7492a..97764cd2ed3 100644 --- a/nixos/modules/services/networking/dnscrypt-proxy.nix +++ b/nixos/modules/services/networking/dnscrypt-proxy.nix @@ -221,7 +221,6 @@ in ExecStart = "${dnscrypt-proxy}/bin/dnscrypt-proxy ${toString daemonArgs}"; User = "dnscrypt-proxy"; - Group = "dnscrypt-proxy"; PrivateTmp = true; PrivateDevices = true; From d78e0ed1f98bbeae09d874c748e702da31c9a1b1 Mon Sep 17 00:00:00 2001 From: Joachim Fasting Date: Mon, 29 Aug 2016 18:10:00 +0200 Subject: [PATCH 027/100] dnscrypt-proxy module: move detailed info to module documentation --- .../services/networking/dnscrypt-proxy.nix | 28 ++----- .../services/networking/dnscrypt-proxy.xml | 76 +++++++++++++++++++ 2 files changed, 82 insertions(+), 22 deletions(-) create mode 100644 nixos/modules/services/networking/dnscrypt-proxy.xml diff --git a/nixos/modules/services/networking/dnscrypt-proxy.nix b/nixos/modules/services/networking/dnscrypt-proxy.nix index 97764cd2ed3..2714e8d7599 100644 --- a/nixos/modules/services/networking/dnscrypt-proxy.nix +++ b/nixos/modules/services/networking/dnscrypt-proxy.nix @@ -28,31 +28,15 @@ let in { + meta = { + maintainers = with maintainers; [ joachifm ]; + doc = ./dnscrypt-proxy.xml; + }; + options = { services.dnscrypt-proxy = { - enable = mkEnableOption "dnscrypt-proxy" // { description = '' - Whether to enable the DNSCrypt client proxy. The proxy relays - DNS queries to a DNSCrypt enabled upstream resolver. The traffic - between the client and the upstream resolver is encrypted and - authenticated, mitigating the risk of MITM attacks and third-party - snooping (assuming the upstream is trustworthy). + enable = mkEnableOption "DNSCrypt client proxy"; - Enabling this option does not alter the system nameserver; to relay - local queries, prepend 127.0.0.1 to - . - - The recommended configuration is to run DNSCrypt proxy as a forwarder - for a caching DNS client, as in - - { - services.dnscrypt-proxy.enable = true; - services.dnscrypt-proxy.localPort = 43; - services.dnsmasq.enable = true; - services.dnsmasq.servers = [ "127.0.0.1#43" ]; - services.dnsmasq.resolveLocalQueries = true; # this is the default - } - - ''; }; localAddress = mkOption { default = "127.0.0.1"; type = types.str; diff --git a/nixos/modules/services/networking/dnscrypt-proxy.xml b/nixos/modules/services/networking/dnscrypt-proxy.xml new file mode 100644 index 00000000000..e212a8d3e2c --- /dev/null +++ b/nixos/modules/services/networking/dnscrypt-proxy.xml @@ -0,0 +1,76 @@ + + + DNSCrypt client proxy + + + The DNSCrypt client proxy relays DNS queries to a DNSCrypt enabled + upstream resolver. The traffic between the client and the upstream + resolver is encrypted and authenticated, mitigating the risk of MITM + attacks, DNS poisoning attacks, and third-party snooping (assuming the + upstream is trustworthy). + + + Basic configuration + + + To enable the client proxy, set + + services.dnscrypt-proxy.enable = true; + + + + + Enabling the client proxy does not alter the system nameserver; to + relay local queries, prepend 127.0.0.1 to + . + + + + + As a forwarder for a caching DNS client + + + By default, DNSCrypt proxy acts as a transparent proxy for the + system stub resolver. Because the client does not cache lookups, this + setup can significantly slow down e.g., web browsing. The recommended + configuration is to run DNSCrypt proxy as a forwarder for a caching DNS + client. To achieve this, change the default proxy listening port to + a non-standard value and point the caching client to it: + + services.dnscrypt-proxy.localPort = 43; + + + + dnsmasq + + + { + services.dnsmasq.enable = true; + services.dnsmasq.servers = [ "127.0.0.1#43" ]; + } + + + + + unbound + + + { + networking.nameservers = [ "127.0.0.1" ]; + services.unbound.enable = true; + services.unbound.forwardAddresses = [ "127.0.0.1@43" ]; + services.unbound.extraConfig = '' + do-not-query-localhost: no + ''; + } + + + + + + + From dab32a1fa66237acc4ece2d3d4e01e84f4d490dc Mon Sep 17 00:00:00 2001 From: Joachim Fasting Date: Mon, 29 Aug 2016 18:10:38 +0200 Subject: [PATCH 028/100] nixos manual: move chapter on grsecurity to auto-generated module docs --- nixos/doc/manual/configuration/configuration.xml | 1 - nixos/modules/security/grsecurity.nix | 5 +++++ .../manual/configuration => modules/security}/grsecurity.xml | 0 3 files changed, 5 insertions(+), 1 deletion(-) rename nixos/{doc/manual/configuration => modules/security}/grsecurity.xml (100%) diff --git a/nixos/doc/manual/configuration/configuration.xml b/nixos/doc/manual/configuration/configuration.xml index 2d5281829ed..9589f3c6276 100644 --- a/nixos/doc/manual/configuration/configuration.xml +++ b/nixos/doc/manual/configuration/configuration.xml @@ -23,7 +23,6 @@ effect after you run nixos-rebuild. - diff --git a/nixos/modules/security/grsecurity.nix b/nixos/modules/security/grsecurity.nix index c6332ca9f9f..ea1064c2d42 100644 --- a/nixos/modules/security/grsecurity.nix +++ b/nixos/modules/security/grsecurity.nix @@ -20,6 +20,11 @@ let in { + meta = { + maintainers = with maintainers; [ joachifm ]; + doc = ./grsecurity.xml; + }; + options.security.grsecurity = { enable = mkEnableOption "grsecurity/PaX"; diff --git a/nixos/doc/manual/configuration/grsecurity.xml b/nixos/modules/security/grsecurity.xml similarity index 100% rename from nixos/doc/manual/configuration/grsecurity.xml rename to nixos/modules/security/grsecurity.xml From b50e627ef6016d852f472808a3012233f347c4d9 Mon Sep 17 00:00:00 2001 From: Eric Sagnes Date: Tue, 30 Aug 2016 09:40:05 +0900 Subject: [PATCH 029/100] nixos manual: cleanup generation --- nixos/doc/manual/configuration/configuration.xml | 1 - nixos/doc/manual/default.nix | 6 ------ nixos/modules/services/editors/emacs.nix | 2 ++ 3 files changed, 2 insertions(+), 7 deletions(-) diff --git a/nixos/doc/manual/configuration/configuration.xml b/nixos/doc/manual/configuration/configuration.xml index 9589f3c6276..448e2a932e9 100644 --- a/nixos/doc/manual/configuration/configuration.xml +++ b/nixos/doc/manual/configuration/configuration.xml @@ -24,7 +24,6 @@ effect after you run nixos-rebuild. - diff --git a/nixos/doc/manual/default.nix b/nixos/doc/manual/default.nix index 0f0c6e66e4c..13668dfd8eb 100644 --- a/nixos/doc/manual/default.nix +++ b/nixos/doc/manual/default.nix @@ -63,12 +63,6 @@ let '' cp -prd $sources/* . # */ chmod -R u+w . - cp ${../../modules/services/databases/postgresql.xml} configuration/postgresql.xml - cp ${../../modules/services/misc/gitlab.xml} configuration/gitlab.xml - cp ${../../modules/services/misc/taskserver/doc.xml} configuration/taskserver.xml - cp ${../../modules/security/acme.xml} configuration/acme.xml - cp ${../../modules/i18n/input-method/default.xml} configuration/input-methods.xml - cp ${../../modules/services/editors/emacs.xml} configuration/emacs.xml ln -s ${modulesDoc} configuration/modules.xml ln -s ${optionsDocBook} options-db.xml echo "${version}" > version diff --git a/nixos/modules/services/editors/emacs.nix b/nixos/modules/services/editors/emacs.nix index 43b4219c51d..6795ec52fe4 100644 --- a/nixos/modules/services/editors/emacs.nix +++ b/nixos/modules/services/editors/emacs.nix @@ -83,4 +83,6 @@ in { EDITOR = mkOverride 900 "${editorScript}/bin/emacseditor"; } else {}; }; + + meta.doc = ./emacs.xml; } From 03b9a159fe6620924dd8d00f7f8cdcbeee583b71 Mon Sep 17 00:00:00 2001 From: obadz Date: Tue, 30 Aug 2016 02:12:15 +0100 Subject: [PATCH 030/100] opensmtpd nixos module: chmod & chown until the daemon's heart's content --- nixos/modules/services/mail/opensmtpd.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/nixos/modules/services/mail/opensmtpd.nix b/nixos/modules/services/mail/opensmtpd.nix index e773cdedaea..fb94560e10a 100644 --- a/nixos/modules/services/mail/opensmtpd.nix +++ b/nixos/modules/services/mail/opensmtpd.nix @@ -109,12 +109,14 @@ in { after = [ "network.target" ]; preStart = '' mkdir -p /var/spool/smtpd + chmod 711 /var/spool/smtpd mkdir -p /var/spool/smtpd/offline chown root.smtpq /var/spool/smtpd/offline chmod 770 /var/spool/smtpd/offline mkdir -p /var/spool/smtpd/purge + chown smtpq.root /var/spool/smtpd/purge chmod 700 /var/spool/smtpd/purge ''; serviceConfig.ExecStart = "${opensmtpd}/sbin/smtpd -d -f ${conf} ${args}"; From f19c961b4e461da045f2e72e73701059e5117be0 Mon Sep 17 00:00:00 2001 From: aszlig Date: Tue, 30 Aug 2016 06:26:12 +0200 Subject: [PATCH 031/100] linux-testing: Fix arg list too long in modinst With the default kernel and thus with the build I have tested in 74ec94bfa2e57e2c0beeee0e469de58391d04a7b, we get an error during modules_install: make[2]: execvp: /nix/store/.../bin/bash: Argument list too long I haven't noticed this build until I actually tried booting using this kernel because make didn't fail here. The reason this happens within Nix and probably didn't yet surface in other distros is that programs only have a limited amount of memory available for storing the environment and the arguments. Environment variables however are quite common on Nix and thus we stumble on problems like this way earlier - in this case Linux 4.8 - but I have noticed this in 4.7-next as well already. The fix is far from perfect and suffers performance overhead because we now run grep for every *.mod file instead of passing all *.mod files into one single invocation of grep. But comparing the performance overhead (around 1s on my machine) with the overall build time of the kernel I think the overhead really is neglicible. Signed-off-by: aszlig --- .../linux/kernel/modinst-arg-list-too-long.patch | 14 ++++++++++++++ pkgs/os-specific/linux/kernel/patches.nix | 5 +++++ pkgs/top-level/all-packages.nix | 14 ++++++++------ 3 files changed, 27 insertions(+), 6 deletions(-) create mode 100644 pkgs/os-specific/linux/kernel/modinst-arg-list-too-long.patch diff --git a/pkgs/os-specific/linux/kernel/modinst-arg-list-too-long.patch b/pkgs/os-specific/linux/kernel/modinst-arg-list-too-long.patch new file mode 100644 index 00000000000..58a9191989a --- /dev/null +++ b/pkgs/os-specific/linux/kernel/modinst-arg-list-too-long.patch @@ -0,0 +1,14 @@ +diff --git a/scripts/Makefile.modinst b/scripts/Makefile.modinst +index 07650ee..934a7a8 100644 +--- a/scripts/Makefile.modinst ++++ b/scripts/Makefile.modinst +@@ -9,7 +9,8 @@ include scripts/Kbuild.include + + # + +-__modules := $(sort $(shell grep -h '\.ko$$' /dev/null $(wildcard $(MODVERDIR)/*.mod))) ++__modules := $(sort $(foreach f,$(wildcard $(MODVERDIR)/*.mod),$(shell \ ++ grep -h '\.ko$$' '$f'))) + modules := $(patsubst %.o,%.ko,$(wildcard $(__modules:.ko=.o))) + + PHONY += $(modules) diff --git a/pkgs/os-specific/linux/kernel/patches.nix b/pkgs/os-specific/linux/kernel/patches.nix index 2a74f9063bf..03a3023053a 100644 --- a/pkgs/os-specific/linux/kernel/patches.nix +++ b/pkgs/os-specific/linux/kernel/patches.nix @@ -74,6 +74,11 @@ rec { patch = ./mips-ext3-n32.patch; }; + modinst_arg_list_too_long = + { name = "modinst-arglist-too-long"; + patch = ./modinst-arg-list-too-long.patch; + }; + ubuntu_fan_4_4 = { name = "ubuntu-fan"; patch = ./ubuntu-fan-4.4.patch; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 302069fd521..9b1234b3b40 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -11185,12 +11185,14 @@ in }; linux_testing = callPackage ../os-specific/linux/kernel/linux-testing.nix { - kernelPatches = [ kernelPatches.bridge_stp_helper ] - ++ lib.optionals ((platform.kernelArch or null) == "mips") - [ kernelPatches.mips_fpureg_emu - kernelPatches.mips_fpu_sigill - kernelPatches.mips_ext3_n32 - ]; + kernelPatches = [ + kernelPatches.bridge_stp_helper + kernelPatches.modinst_arg_list_too_long + ] ++ lib.optionals ((platform.kernelArch or null) == "mips") [ + kernelPatches.mips_fpureg_emu + kernelPatches.mips_fpu_sigill + kernelPatches.mips_ext3_n32 + ]; }; linux_chromiumos_3_14 = callPackage ../os-specific/linux/kernel/linux-chromiumos-3.14.nix { From 86c8a636030c7b4e58693a6cdb7f96550bdfbd67 Mon Sep 17 00:00:00 2001 From: Tobias Pflug Date: Tue, 30 Aug 2016 08:45:35 +0200 Subject: [PATCH 032/100] nodejs-6_x: 6.3.1 -> 6.4.0 --- pkgs/development/web/nodejs/v6.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/web/nodejs/v6.nix b/pkgs/development/web/nodejs/v6.nix index b2a50e2a8d9..c0a906aeb71 100644 --- a/pkgs/development/web/nodejs/v6.nix +++ b/pkgs/development/web/nodejs/v6.nix @@ -8,8 +8,8 @@ let inherit (darwin.apple_sdk.frameworks) CoreServices ApplicationServices; in import ./nodejs.nix (args // rec { - version = "6.3.1"; - sha256 = "06ran2ccfxkwyk6w4wikd7qws286952lbx93pqaygmbh9f0q9rbg"; + version = "6.4.0"; + sha256 = "1b3xpp38fd2y8zdkpvkyyvsddh5y4vly81hxkf9hi6wap0nqidj9"; extraBuildInputs = stdenv.lib.optionals stdenv.isDarwin [ CoreServices ApplicationServices ]; preBuild = stdenv.lib.optionalString stdenv.isDarwin '' From 2de7e30c0f0066429a950dc6464cb2cb83ea3790 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Tue, 30 Aug 2016 10:04:43 +0200 Subject: [PATCH 033/100] valauncher: init at 1.2 --- pkgs/applications/misc/valauncher/default.nix | 23 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 25 insertions(+) create mode 100644 pkgs/applications/misc/valauncher/default.nix diff --git a/pkgs/applications/misc/valauncher/default.nix b/pkgs/applications/misc/valauncher/default.nix new file mode 100644 index 00000000000..7d35f1f64a8 --- /dev/null +++ b/pkgs/applications/misc/valauncher/default.nix @@ -0,0 +1,23 @@ +{ stdenv, fetchFromGitHub, cmake, gtk3, vala_0_26, pkgconfig, gnome3 }: + +stdenv.mkDerivation rec { + version = "1.2"; + name = "valauncher-${version}"; + + src = fetchFromGitHub { + owner = "Mic92"; + repo = "valauncher"; + rev = "v${version}"; + sha256 = "1d1gfmzmr5ra2rnjc6rbz31mf3hk7q04lh4i1hljgk7fh90dacb6"; + }; + + buildInputs = [ cmake gtk3 vala_0_26 pkgconfig gnome3.libgee ]; + + meta = with stdenv.lib; { + description = "A fast dmenu-like gtk3 application launcher"; + homepage = https://github.com/Mic92/valauncher; + license = licenses.mit; + maintainers = with maintainers; [ mic92 ]; + platforms = platforms.all; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 7d674339a64..70818ec7d2d 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -17452,6 +17452,8 @@ in utf8proc = callPackage ../development/libraries/utf8proc { }; + valauncher = callPackage ../applications/misc/valauncher { }; + vault = callPackage ../tools/security/vault { }; vbam = callPackage ../misc/emulators/vbam { From 5b00f4037e90d29aa1b4fc297f3e3f0dea2c6b42 Mon Sep 17 00:00:00 2001 From: Guillaume Maudoux Date: Tue, 30 Aug 2016 10:27:57 +0200 Subject: [PATCH 034/100] emacs24: nuke extra references to buildInputs --- pkgs/applications/editors/emacs-24/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/applications/editors/emacs-24/default.nix b/pkgs/applications/editors/emacs-24/default.nix index 7f765b9afc8..05454aaa9c9 100644 --- a/pkgs/applications/editors/emacs-24/default.nix +++ b/pkgs/applications/editors/emacs-24/default.nix @@ -44,6 +44,10 @@ stdenv.mkDerivation rec { postPatch = '' sed -i 's|/usr/share/locale|${gettext}/share/locale|g' lisp/international/mule-cmds.el + # emacs runs then dumps itself. In the process, it keeps a copy of the + # PATH env var, holding all the build inputs in it's closure. + # Prevent that by running the self-dumping emacs with an empty PATH. + sed -i 's|^RUN_TEMACS = |&PATH= |' src/Makefile.in ''; buildInputs = From 2f182cebcc5d406f891d9bd82789af718a551cd5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Tue, 23 Aug 2016 14:08:19 +0200 Subject: [PATCH 035/100] Updating OCE to 0.17.2 --- pkgs/development/libraries/opencascade/oce.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/opencascade/oce.nix b/pkgs/development/libraries/opencascade/oce.nix index 4988ee6ef24..58f9019d6e0 100644 --- a/pkgs/development/libraries/opencascade/oce.nix +++ b/pkgs/development/libraries/opencascade/oce.nix @@ -2,10 +2,10 @@ ftgl, freetype}: stdenv.mkDerivation rec { - name = "opencascade-oce-0.16"; + name = "opencascade-oce-0.17.2"; src = fetchurl { - url = https://github.com/tpaviot/oce/archive/OCE-0.16.tar.gz; - sha256 = "05bmg1cjz827bpq8s0hp96byirm4c3zc9vx26qz76kjsg8ry87w4"; + url = https://github.com/tpaviot/oce/archive/OCE-0.17.2.tar.gz; + sha256 = "0vpmnb0k5y2f7lpmwx9pg9yfq24zjvnsak5alzacncfm1hv9b6cd"; }; buildInputs = [ mesa tcl tk file libXmu libtool qt4 ftgl freetype cmake ]; From e35bbf108a4f4172934f51e112886d6f5443fceb Mon Sep 17 00:00:00 2001 From: Zero King Date: Tue, 30 Aug 2016 09:06:18 +0000 Subject: [PATCH 036/100] ffmpeg: 3.1.2 -> 3.1.3 --- pkgs/development/libraries/ffmpeg/3.1.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/ffmpeg/3.1.nix b/pkgs/development/libraries/ffmpeg/3.1.nix index f2158b3756f..c0e70f1f348 100644 --- a/pkgs/development/libraries/ffmpeg/3.1.nix +++ b/pkgs/development/libraries/ffmpeg/3.1.nix @@ -5,8 +5,8 @@ }@args: callPackage ./generic.nix (args // rec { - version = "${branch}.2"; + version = "${branch}.3"; branch = "3.1"; - sha256 = "1xvh1c8nlws0wx6b7yl1pvkybgzaj5585h1r6z1gzhck1f0qvsv2"; + sha256 = "0f4ajs0c4088nkal4gqagx05wfyhd1izfxmzxxsdh56ibp38kg2q"; darwinFrameworks = [ Cocoa CoreMedia ]; }) From d4e012780f7eee93f7600d5273edde7470f20c87 Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Tue, 30 Aug 2016 05:56:15 -0400 Subject: [PATCH 037/100] rust{Beta,Unstable}: Remove lowPrio calls These are sets of derivations and there is no recurseIntoAttrs, so the packages aren't exposed to nix-env by name at all. --- pkgs/top-level/all-packages.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index ce729284632..95b1b21e892 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5486,10 +5486,10 @@ in rust = rustStable; rustStable = callPackage ../development/compilers/rust {}; - rustBeta = lowPrio (callPackage ../development/compilers/rust/beta.nix {}); - rustUnstable = lowPrio (callPackage ../development/compilers/rust/head.nix { + rustBeta = callPackage ../development/compilers/rust/beta.nix {}; + rustUnstable = callPackage ../development/compilers/rust/head.nix { rustPlatform = recurseIntoAttrs (makeRustPlatform rustBeta); - }); + }; cargo = rust.cargo; rustc = rust.rustc; From 70f55f99304534ae83a465f5d059f3c49d1db274 Mon Sep 17 00:00:00 2001 From: Moritz Ulrich Date: Tue, 30 Aug 2016 12:05:12 +0200 Subject: [PATCH 038/100] rust{Beta,Unstable}: Remove outdated comment. --- pkgs/development/compilers/rust/beta.nix | 4 ---- pkgs/development/compilers/rust/default.nix | 4 ---- 2 files changed, 8 deletions(-) diff --git a/pkgs/development/compilers/rust/beta.nix b/pkgs/development/compilers/rust/beta.nix index 2414480dda8..cb1b0bd8b40 100644 --- a/pkgs/development/compilers/rust/beta.nix +++ b/pkgs/development/compilers/rust/beta.nix @@ -18,10 +18,6 @@ rec { }; cargo = callPackage ./cargo.nix rec { - # TODO: We're temporarily tracking master here as Darwin needs the - # `http.cainfo` option from .cargo/config which isn't released - # yet. - version = "beta-2016-07-25"; srcRev = "f09ef68cc47956ccc5f99212bdcdd15298c400a0"; srcSha = "1r6q9jd0fl6mzhwkvrrcv358q2784hg51dfpy28xgh4n61m7c155"; diff --git a/pkgs/development/compilers/rust/default.nix b/pkgs/development/compilers/rust/default.nix index 9bbcb360e61..b7e992c916d 100644 --- a/pkgs/development/compilers/rust/default.nix +++ b/pkgs/development/compilers/rust/default.nix @@ -25,10 +25,6 @@ rec { }; cargo = callPackage ./cargo.nix rec { - # TODO: We're temporarily tracking master here as Darwin needs the - # `http.cainfo` option from .cargo/config which isn't released - # yet. - version = "0.12.0"; srcRev = "6b98d1f8abf5b33c1ca2771d3f5f3bafc3407b93"; srcSha = "0pq6l3yzmh2il6320f6501hvp9iikdxzl34i5b52v93ncpim36bk"; From 17278243d813692b20b8062aee6ac33743f25d00 Mon Sep 17 00:00:00 2001 From: Fernando J Pando Date: Thu, 18 Aug 2016 10:56:36 -0400 Subject: [PATCH 039/100] pythonPackages.txaio: init at 2.5.1 Tested on Linux Tested on Darwin --- pkgs/top-level/python-packages.nix | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 1646b65fa96..9a84c3ce6c8 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -29421,6 +29421,32 @@ in modules // { ''; }; + txaio = buildPythonPackage rec { + name = "${pname}-${version}"; + pname = "txaio"; + version = "2.5.1"; + + meta = { + description = "Utilities to support code that runs unmodified on Twisted and asyncio."; + homepage = "https://github.com/crossbario/txaio"; + license = licenses.mit; + maintainers = with maintainers; [ nand0p ]; + platforms = platforms.all; + }; + + buildInputs = with self; [ pytest mock ]; + propagatedBuildInputs = with self; [ six twisted ]; + + checkPhase = '' + py.test -k "not test_sdist" + ''; + + src = pkgs.fetchurl { + url = "mirror://pypi/t/${pname}/${name}.tar.gz"; + sha256 = "1pni1m66mlmbybmaf3py4h7cpkmkssqb5l3rigkxvql2f53pcl32"; + }; + }; + yapf = buildPythonPackage rec { name = "yapf-${version}"; version = "0.11.0"; From f59448add0e02ca82c178fa92fa753d27b0cb03d Mon Sep 17 00:00:00 2001 From: Fernando J Pando Date: Mon, 29 Aug 2016 12:42:50 -0400 Subject: [PATCH 040/100] pythonPackages.autobahn: init at 0.16.0 Tested on linux --- pkgs/top-level/python-packages.nix | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 9a84c3ce6c8..1b71501908c 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -29463,4 +29463,27 @@ in modules // { sha256 = "14kb9gxw39zhvrijhp066b4bm6bgv35iw56c394y4dyczpha0dij"; }; }; + + autobahn = buildPythonPackage rec { + name = "${pname}-${version}"; + pname = "autobahn"; + version = "0.16.0"; + src = pkgs.fetchurl { + url = "mirror://pypi/a/${pname}/${name}.tar.gz"; + sha256 = "1158ml8h3g0vlsgw2jmy579glbg7dn0mjij8xibdl509b8qv9p51"; + }; + buildInputs = with self; [ unittest2 mock pytest txaio trollius ]; + propagatedBuildInputs = with self; [ six twisted ]; + checkPhase = '' + py.test $out + ''; + + meta = { + description = "WebSocket and WAMP in Python for Twisted and asyncio."; + homepage = "http://crossbar.io/autobahn"; + license = licenses.mit; + maintainers = with maintainers; [ nand0p ]; + platforms = platforms.all; + }; + }; } From bb06f95cc8282f6f60bb7d16c556eaa193477fce Mon Sep 17 00:00:00 2001 From: Fernando J Pando Date: Mon, 29 Aug 2016 12:46:16 -0400 Subject: [PATCH 041/100] pythonPackages.sphinxcontrib-blockdiag: init at 1.5.5 Tested on linux --- pkgs/top-level/python-packages.nix | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 1b71501908c..570b4a77221 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -22706,6 +22706,31 @@ in modules // { }; }); + sphinxcontrib-blockdiag = buildPythonPackage (rec { + name = "${pname}-${version}"; + pname = "sphinxcontrib-blockdiag"; + version = "1.5.5"; + src = pkgs.fetchurl { + url = "mirror://pypi/s/${pname}/${name}.tar.gz"; + sha256 = "1w7q2hhpzk159wd35hlbwkh80hnglqa475blcd9vjwpkv1kgkpvw"; + }; + + buildInputs = with self; [ mock sphinx-testing ]; + propagatedBuildInputs = with self; [ sphinx blockdiag ]; + + # Seems to look for files in the wrong dir + doCheck = false; + checkPhase = '' + ${python.interpreter} -m unittest discover -s tests + ''; + + meta = { + description = "Sphinx blockdiag extension"; + homepage = "https://github.com/blockdiag/sphinxcontrib-blockdiag"; + maintainers = [ nand0p ]; + license = "BSD"; + }; + }); sphinxcontrib_httpdomain = buildPythonPackage (rec { name = "sphinxcontrib-httpdomain-1.3.0"; From e9dea3c02a39053d3e07083e9f3d1d2543b88531 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 10:53:19 +0200 Subject: [PATCH 042/100] pythonPackages.sphinx-testing: init at 0.7.1 --- pkgs/top-level/python-packages.nix | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 570b4a77221..eb7422d43b2 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -22706,6 +22706,30 @@ in modules // { }; }); + sphinx-testing = buildPythonPackage rec { + name = "sphinx-testing-${version}"; + version = "0.7.1"; + + src = pkgs.fetchurl { + url = "mirror://pypi/s/sphinx-testing/${name}.tar.gz"; + sha256 = "0cd235ce939770ae5128eda01d8611fb1e36d8129399e98565f99fcbff3a8062"; + }; + + buildInputs = with self; [ mock ]; + propagatedBuildInputs = with self; [ sphinx six ]; + + checkPhase = '' + ${python.interpreter} -m unittest discover -s tests + ''; + + meta = { + homepage = https://github.com/sphinx-doc/sphinx-testing; + license = licenses.bsd2; + description = "Testing utility classes and functions for Sphinx extensions"; + }; + + }; + sphinxcontrib-blockdiag = buildPythonPackage (rec { name = "${pname}-${version}"; pname = "sphinxcontrib-blockdiag"; From 21eb4972bec03ecc0f0483fe00d9be335f9e476b Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 10:53:57 +0200 Subject: [PATCH 043/100] pythonPackages.funcparserlib: build on Python 3.x --- pkgs/top-level/python-packages.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index eb7422d43b2..d2e73fae907 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -6331,8 +6331,8 @@ in modules // { ${python.interpreter} -m unittest discover ''; - # Judging from SyntaxError in tests. - disabled = isPy3k; + # Tests are Python 2.x only judging from SyntaxError + doCheck = !(isPy3k); meta = { description = "Recursive descent parsing library based on functional combinators"; From f3a9980e19e5802edac6caf90e950a22c6e91a70 Mon Sep 17 00:00:00 2001 From: Fernando J Pando Date: Mon, 29 Aug 2016 12:48:15 -0400 Subject: [PATCH 044/100] pythonPackages.sphinxcontrib-spelling: init at 2.2.0 Tested on Linux --- pkgs/top-level/python-packages.nix | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index d2e73fae907..bf538e5f151 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -22800,6 +22800,24 @@ in modules // { }; }); + sphinxcontrib-spelling = buildPythonPackage (rec { + name = "${pname}-${version}"; + pname = "sphinxcontrib-spelling"; + version = "2.2.0"; + src = pkgs.fetchurl { + url = "mirror://pypi/s/${pname}/${name}.tar.gz"; + sha256 = "1f0fymrk4kvhqs0vj9gay4lhacxkfrlrpj4gvg0p4wjdczplxd3z"; + }; + propagatedBuildInputs = with self; [ sphinx pyenchant]; + # No tests included + doCheck = false; + meta = { + description = "Sphinx spelling extension"; + homepage = "http://bitbucket.org/dhellmann/sphinxcontrib-spelling"; + maintainers = [ nand0p ]; + license = "BSD"; + }; + }); sphinx_pypi_upload = buildPythonPackage (rec { name = "Sphinx-PyPI-upload-0.2.1"; From e8d326a43868aefacaf16620d7ca23ae9ca6fb9f Mon Sep 17 00:00:00 2001 From: Fernando J Pando Date: Thu, 18 Aug 2016 11:04:40 -0400 Subject: [PATCH 045/100] pythonPackages.ramlfications: init at 0.1.9 Tested on Linux Tested on Darwin --- pkgs/top-level/python-packages.nix | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index bf538e5f151..0b6ae5ca978 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -29514,6 +29514,32 @@ in modules // { }; }; + ramlfications = buildPythonPackage rec { + name = "${pname}-${version}"; + pname = "ramlfications"; + version = "0.1.9"; + + meta = { + description = "A Python RAML parser."; + homepage = "https://ramlfications.readthedocs.org"; + license = licenses.asl20; + maintainers = with maintainers; [ nand0p ]; + platforms = platforms.all; + }; + + doCheck = false; + # [darwin] AssertionError: Expected 'update_mime_types' to have been called once. Called 0 times. + + buildInputs = with self; [ mock pytest pytest-mock pytest-server-fixtures pytest-localserver ]; + + propagatedBuildInputs = with self; [ termcolor click markdown2 six jsonref pyyaml xmltodict attrs ]; + + src = pkgs.fetchurl { + url = "mirror://pypi/r/${pname}/${name}.tar.gz"; + sha256 = "0xvnna7kaq4nm5nfnwcwbr5bcm2s532hgyp7kq4v9iivn48rrf3v"; + }; + }; + yapf = buildPythonPackage rec { name = "yapf-${version}"; version = "0.11.0"; From 251e67af5cf55fa7ccfa0e3f4340890c5005448e Mon Sep 17 00:00:00 2001 From: Fernando J Pando Date: Thu, 25 Aug 2016 12:04:33 -0400 Subject: [PATCH 046/100] pythonPackages.jsonref: init at 0.1 Tested on Linux Tested on Darwin --- pkgs/top-level/python-packages.nix | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 0b6ae5ca978..7c3b20a160a 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -29579,4 +29579,28 @@ in modules // { platforms = platforms.all; }; }; + + jsonref = buildPythonPackage rec { + name = "${pname}-${version}"; + pname = "jsonref"; + version = "0.1"; + + meta = { + description = "An implementation of JSON Reference for Python."; + homepage = "http://github.com/gazpachoking/jsonref"; + license = licenses.mit; + maintainers = with maintainers; [ nand0p ]; + platforms = platforms.all; + }; + + buildInputs = with self; [ pytest mock ]; + checkPhase = '' + py.test tests.py + ''; + + src = pkgs.fetchurl { + url = "mirror://pypi/j/${pname}/${name}.tar.gz"; + sha256 = "1lqa8dy1sr1bxi00ri79lmbxvzxi84ki8p46zynyrgcqhwicxq2n"; + }; + }; } From f3f975a0dd31bfac38bb53eeb473f37d06fdc154 Mon Sep 17 00:00:00 2001 From: Fernando J Pando Date: Thu, 18 Aug 2016 10:13:44 -0400 Subject: [PATCH 047/100] pythonPackages.pytest-mock: init at 1.2 Tested on Linux Tested on Darwin --- pkgs/top-level/python-packages.nix | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 7c3b20a160a..5a34c01e991 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4630,6 +4630,27 @@ in modules // { }; }; + pytest-mock = buildPythonPackage rec { + name = "${pname}-${version}"; + pname = "pytest-mock"; + version = "1.2"; + + propagatedBuildInputs = with self; [ mock pytest ]; + + meta = { + description = "Thin-wrapper around the mock package for easier use with py.test."; + homepage = "https://github.com/pytest-dev/pytest-mock"; + license = licenses.mit; + maintainers = with maintainers; [ nand0p ]; + platforms = platforms.all; + }; + + src = pkgs.fetchurl { + url = "mirror://pypi/p/${pname}/${name}.zip"; + sha256 = "03zxar5drzm7ksqyrwypjaza3cri6wqvpr6iam92djvg6znp32gp"; + }; + }; + pytestpep8 = buildPythonPackage rec { name = "pytest-pep8"; src = pkgs.fetchurl { From 184cef18d9d4eaaa07107738d9974ef9a5104cb2 Mon Sep 17 00:00:00 2001 From: Fernando J Pando Date: Thu, 18 Aug 2016 10:11:24 -0400 Subject: [PATCH 048/100] pythonPackages.pytest-server-fixtures: init at 1.1.0 Tested on Linux Tested on Darwin --- pkgs/top-level/python-packages.nix | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 5a34c01e991..fa84a89c58d 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4747,6 +4747,30 @@ in modules // { }; }; + pytest-server-fixtures = buildPythonPackage rec { + name = "${pname}-${version}"; + pname = "pytest-server-fixtures"; + version = "1.1.0"; + + propagatedBuildInputs = with self; [ setuptools-git pytest-shutil pytest-fixture-config psutil requests2 ]; + + meta = { + description = "Extensible server fixures for py.test"; + homepage = "https://github.com/manahl/pytest-plugins"; + license = licenses.mit; + maintainers = with maintainers; [ nand0p ]; + platforms = platforms.all; + }; + + doCheck = false; + # RuntimeError: Unable to find a free server number to start Xvfb + + src = pkgs.fetchurl { + url = "mirror://pypi/p/${pname}/${name}.tar.gz"; + sha256 = "1gs9qimcn8q6xi9d6i5624l0dziwvn6nj2rda07fg15g1cq66s8l"; + }; + }; + pytestcov = buildPythonPackage (rec { name = "pytest-cov-2.2.0"; From dcd21c775ff5bba36bb956e9614a67c288e92455 Mon Sep 17 00:00:00 2001 From: Fernando J Pando Date: Mon, 29 Aug 2016 12:55:55 -0400 Subject: [PATCH 049/100] pythonPackages.pytest-shutil: init at 1.1.1 Tested on Linux --- pkgs/top-level/python-packages.nix | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index fa84a89c58d..046480251d3 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4771,6 +4771,31 @@ in modules // { }; }; + pytest-shutil = buildPythonPackage rec { + name = "pytest-shutil-${version}"; + version = "1.1.1"; + src = pkgs.fetchurl { + url = "mirror://pypi/p/pytest-shutil/${name}.tar.gz"; + sha256 = "bb3c4fc2dddaf70b38bd9bb7a710d07728fa14f88fbc89c2a07979b383ade5d4"; + }; + buildInputs = with self; [ cmdline ]; + propagatedBuildInputs = with self; [ pytest pytestcov coverage setuptools-git mock pathpy execnet contextlib2 ]; + meta = { + description = "A goodie-bag of unix shell and environment tools for py.test"; + homepage = https://github.com/manahl/pytest-plugins; + maintainers = with maintainers; [ ryansydnor ]; + platforms = platforms.all; + license = licenses.mit; + }; + + + checkPhase = '' + py.test + ''; + # Bunch of pickle errors + doCheck = false; + }; + pytestcov = buildPythonPackage (rec { name = "pytest-cov-2.2.0"; From 4b820b842b612081c67977e7dad7776d46c29c30 Mon Sep 17 00:00:00 2001 From: Fernando J Pando Date: Thu, 18 Aug 2016 10:22:58 -0400 Subject: [PATCH 050/100] pythonPackages.pytest-fixture-config: init at 1.0.1 Tested on Linux Tested on Darwin --- pkgs/top-level/python-packages.nix | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 046480251d3..777d3f223b3 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4612,6 +4612,31 @@ in modules // { }; }; + pytest-fixture-config = buildPythonPackage rec { + name = "${pname}-${version}"; + pname = "pytest-fixture-config"; + version = "1.0.1"; + + src = pkgs.fetchurl { + url = "mirror://pypi/p/${pname}/${name}.tar.gz"; + sha256 = "7d7cc1cb25f88a707f083b1dc2e3c2fdfc6f37709567a2587dd0cd0bcd70edb6"; + }; + + propagatedBuildInputs = with self; [ pytest coverage virtualenv pytestcov six ]; + + checkPhase = '' + py.test -k "not test_yield_requires_config_doesnt_skip and not test_yield_requires_config_skips" + ''; + + meta = { + description = "Simple configuration objects for Py.test fixtures. Allows you to skip tests when their required config variables aren’t set."; + homepage = https://github.com/manahl/pytest-plugins; + license = licenses.mit; + maintainers = with maintainers; [ ryansydnor ]; + platforms = platforms.all; + }; + }; + pytestflakes = buildPythonPackage rec { name = "pytest-flakes-${version}"; version = "1.0.0"; From ad633d39dd5f9202d1cde4032670e21803c135a8 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 11:39:25 +0200 Subject: [PATCH 051/100] pythonPackages.pytestcov: 2.2.0 -> 2.3.1 --- pkgs/top-level/python-packages.nix | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 777d3f223b3..480f4fb3e7a 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4822,14 +4822,19 @@ in modules // { }; pytestcov = buildPythonPackage (rec { - name = "pytest-cov-2.2.0"; + name = "pytest-cov-2.3.1"; src = pkgs.fetchurl { url = "mirror://pypi/p/pytest-cov/${name}.tar.gz"; - sha256 = "1lf9jsmhqk5nc4w3kzwglmdzjvmi7ajvrsnwv826j3bn0wzx8c92"; + sha256 = "fa0a212283cdf52e2eecc24dd6459bb7687cc29adb60cb84258fab73be8dda0f"; }; - buildInputs = with self; [ covCore pytest ]; + buildInputs = with self; [ covCore pytest virtualenv process-tests helper ]; + + doCheck = false; + checkPhase = '' + py.test tests + ''; meta = { description = "Plugin for coverage reporting with support for both centralised and distributed testing, including subprocesses and multiprocessing"; From 53e9993f4ee829dbbd59a76cb0926c769e3cf63e Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 11:39:38 +0200 Subject: [PATCH 052/100] pythonPackages.helper: init at 2.4.1 --- pkgs/top-level/python-packages.nix | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 480f4fb3e7a..b33a64f4530 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -6837,6 +6837,31 @@ in modules // { }; }; + helper = buildPythonPackage rec { + pname = "helper"; + version = "2.4.1"; + name = "${pname}-${version}"; + + src = pkgs.fetchurl { + url = "mirror://pypi/h/${pname}/${name}.tar.gz"; + sha256 = "4e33dde42ad4df30fb7790689f93d77252cff26a565610d03ff2e434865a53a2"; + }; + + buildInputs = with self; [ mock ]; + propagatedBuildInputs = with self; [ pyyaml ]; + + # No tests + doCheck = false; + + meta = { + description = "Development library for quickly writing configurable applications and daemons"; + homepage = https://helper.readthedocs.org/; + license = licenses.bsd3; + }; + + + }; + hglib = buildPythonPackage rec { version = "1.7"; name = "hglib-${version}"; From f5ce76c6d8a63bd0ac6dd45536acc22e9bf2c643 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 11:40:17 +0200 Subject: [PATCH 053/100] pythonPackages.process-tests: init at 1.2.1 --- pkgs/top-level/python-packages.nix | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index b33a64f4530..17789ecb89b 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -19652,6 +19652,26 @@ in modules // { }; }); + process-tests = buildPythonPackage rec { + pname = "process-tests"; + name = "${pname}-${version}"; + version = "1.2.1"; + + src = pkgs.fetchurl { + url = "mirror://pypi/p/${pname}/${name}.tar.gz"; + sha256 = "65c9d7a0260f31c15b4a22a851757e61f7072d0557db5f8a976112fbe81ff7e9"; + }; + + # No tests + doCheck = false; + + meta = { + description = "Tools for testing processes"; + license = licenses.bsd2; + homepage = https://github.com/ionelmc/python-process-tests; + }; + }; + progressbar = buildPythonPackage (rec { name = "progressbar-2.2"; From 6f1d7d67c0227d7880532aa9016bbefec2b42bd2 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 11:57:26 +0200 Subject: [PATCH 054/100] pythonPackages.cmdline: init at 0.1.6 --- pkgs/top-level/python-packages.nix | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 17789ecb89b..51d794ed58f 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -3597,6 +3597,25 @@ in modules // { }; }; + cmdline = buildPythonPackage rec { + pname = "cmdline"; + version = "0.1.6"; + name = "${pname}-${version}"; + + src = pkgs.fetchurl { + url = "mirror://pypi/c/${pname}/${name}.tar.gz"; + sha256 = "be2cb4711e9111bb7386a408e3c66a730c36dd6ac05851a9f03d0f4eae63536a"; + }; + + # No tests, https://github.com/rca/cmdline/issues/1 + doCheck = false; + propagatedBuildInputs = with self; [ pyyaml ]; + meta = { + description = "Utilities for consistent command line tools"; + homepage = http://github.com/rca/cmdline; + license = licenses.asl20; + }; + }; cogapp = buildPythonPackage rec { version = "2.3"; From 400d1d5c89741c2d6e94aa5c60b13f03fdc53e1c Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 12:20:25 +0200 Subject: [PATCH 055/100] duply: add pythonPackages.cryptography --- pkgs/tools/backup/duply/default.nix | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/backup/duply/default.nix b/pkgs/tools/backup/duply/default.nix index a055b87c263..5bde5e78afa 100644 --- a/pkgs/tools/backup/duply/default.nix +++ b/pkgs/tools/backup/duply/default.nix @@ -2,7 +2,9 @@ , gnugrep, txt2man, makeWrapper, which }: -stdenv.mkDerivation { +let + pythonEnv = python.withPackages (ps: [ps.cryptography] ); +in stdenv.mkDerivation { name = "duply-1.9.2"; src = fetchurl { @@ -11,7 +13,7 @@ stdenv.mkDerivation { }; buildInputs = [ txt2man makeWrapper ]; - + propagatedBuildInputs = [ pythonEnv ]; phases = [ "unpackPhase" "installPhase" ]; installPhase = '' @@ -20,7 +22,7 @@ stdenv.mkDerivation { sed -i 's|/usr/bin/env bash|${bash}/bin/bash|' duply mv duply "$out/bin" wrapProgram "$out/bin/duply" --set PATH \ - "${coreutils}/bin:${python}/bin:${duplicity}/bin:${gawk}/bin:${gnupg1}/bin:${bash}/bin:${gnugrep}/bin:${txt2man}/bin:${which}/bin" + "${coreutils}/bin:${pythonEnv}/bin:${duplicity}/bin:${gawk}/bin:${gnupg1}/bin:${bash}/bin:${gnugrep}/bin:${txt2man}/bin:${which}/bin" "$out/bin/duply" txt2man | gzip -c > "$out/share/man/man1/duply.1.gz" ''; From 8651fa9969018cae1ebc6e97a8143281c7934390 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 12:23:47 +0200 Subject: [PATCH 056/100] pythonPackages.cryptography: 1.4 -> 1.5 --- pkgs/top-level/python-packages.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 51d794ed58f..06930c5539a 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4052,11 +4052,11 @@ in modules // { cryptography = buildPythonPackage rec { # also bump cryptography_vectors name = "cryptography-${version}"; - version = "1.4"; + version = "1.5"; src = pkgs.fetchurl { url = "mirror://pypi/c/cryptography/${name}.tar.gz"; - sha256 = "0a6i4914ychryj7kqqmf970incynj5lzx57n3cbv5i4hxm09a55v"; + sha256 = "52f47ec9a57676043f88e3ca133638790b6b71e56e8890d9d7f3ae4fcd75fa24"; }; buildInputs = [ pkgs.openssl self.pretend self.cryptography_vectors From dfe2b9e6ea264cab33a7bf1beace0f7c740ca819 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 12:23:57 +0200 Subject: [PATCH 057/100] pythonPackages.cryptography_vectors: 1.4 -> 1.5 --- pkgs/top-level/python-packages.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 06930c5539a..b68e1bef931 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4073,11 +4073,11 @@ in modules // { cryptography_vectors = buildPythonPackage rec { # also bump cryptography name = "cryptography_vectors-${version}"; - version = "1.4"; + version = "1.5"; src = pkgs.fetchurl { url = "mirror://pypi/c/cryptography-vectors/${name}.tar.gz"; - sha256 = "1sk6yhphk2k2vzshi0djxi0jsxd9a02259bs8gynfgf5y1g82a07"; + sha256 = "ad19a2b98a475785c3b2ec8a8c9c974e0c48d00db0c23e79d776a2c489ad812d"; }; }; From c99076e968d28a8d9ce06c858cdcc7db8f398902 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 12:28:13 +0200 Subject: [PATCH 058/100] add maintainers @nand0p @ryansydnor --- lib/maintainers.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/maintainers.nix b/lib/maintainers.nix index f74937c073e..8c29c9b4cf2 100644 --- a/lib/maintainers.nix +++ b/lib/maintainers.nix @@ -273,6 +273,7 @@ mudri = "James Wood "; muflax = "Stefan Dorn "; myrl = "Myrl Hex "; + nand0p = "Fernando Jose Pando "; nathan-gs = "Nathan Bijnens "; Nate-Devv = "Nathan Moore "; nckx = "Tobias Geerinckx-Rice "; @@ -352,6 +353,7 @@ rvlander = "Gaëtan André "; ryanartecona = "Ryan Artecona "; ryantm = "Ryan Mulligan "; + ryansydnor = "Ryan Sydnor "; rycee = "Robert Helgesson "; ryneeverett = "Ryne Everett "; s1lvester = "Markus Silvester "; From db1d965ae64bf548cce6d71d199fbda460c4371e Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 12:54:59 +0200 Subject: [PATCH 059/100] Revert "duply: add pythonPackages.cryptography" This reverts commit 400d1d5c89741c2d6e94aa5c60b13f03fdc53e1c. Didn't fix https://github.com/NixOS/nixpkgs/issues/18112 --- pkgs/tools/backup/duply/default.nix | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/pkgs/tools/backup/duply/default.nix b/pkgs/tools/backup/duply/default.nix index 5bde5e78afa..a055b87c263 100644 --- a/pkgs/tools/backup/duply/default.nix +++ b/pkgs/tools/backup/duply/default.nix @@ -2,9 +2,7 @@ , gnugrep, txt2man, makeWrapper, which }: -let - pythonEnv = python.withPackages (ps: [ps.cryptography] ); -in stdenv.mkDerivation { +stdenv.mkDerivation { name = "duply-1.9.2"; src = fetchurl { @@ -13,7 +11,7 @@ in stdenv.mkDerivation { }; buildInputs = [ txt2man makeWrapper ]; - propagatedBuildInputs = [ pythonEnv ]; + phases = [ "unpackPhase" "installPhase" ]; installPhase = '' @@ -22,7 +20,7 @@ in stdenv.mkDerivation { sed -i 's|/usr/bin/env bash|${bash}/bin/bash|' duply mv duply "$out/bin" wrapProgram "$out/bin/duply" --set PATH \ - "${coreutils}/bin:${pythonEnv}/bin:${duplicity}/bin:${gawk}/bin:${gnupg1}/bin:${bash}/bin:${gnugrep}/bin:${txt2man}/bin:${which}/bin" + "${coreutils}/bin:${python}/bin:${duplicity}/bin:${gawk}/bin:${gnupg1}/bin:${bash}/bin:${gnugrep}/bin:${txt2man}/bin:${which}/bin" "$out/bin/duply" txt2man | gzip -c > "$out/share/man/man1/duply.1.gz" ''; From bed7263503955092d7a71d00cf4c5fc3622c7d69 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 13:44:33 +0200 Subject: [PATCH 060/100] pythonPackages.sphinxcontrib-blockdiag: fix maintainer and license --- pkgs/top-level/python-packages.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index b68e1bef931..4a396d2f0d1 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -22915,8 +22915,8 @@ in modules // { meta = { description = "Sphinx blockdiag extension"; homepage = "https://github.com/blockdiag/sphinxcontrib-blockdiag"; - maintainers = [ nand0p ]; - license = "BSD"; + maintainers = with maintainers; [ nand0p ]; + license = licenses.bsd2; }; }); From efd175699f3dfbb30c31f935d8f7c34800f75a90 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 13:44:49 +0200 Subject: [PATCH 061/100] pythonPackages.sphinxcontrib-spelling: fix maintainer and license --- pkgs/top-level/python-packages.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 4a396d2f0d1..b8269287c76 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -22978,8 +22978,8 @@ in modules // { meta = { description = "Sphinx spelling extension"; homepage = "http://bitbucket.org/dhellmann/sphinxcontrib-spelling"; - maintainers = [ nand0p ]; - license = "BSD"; + maintainers = with maintainers; [ nand0p ]; + license = licenses.bsd2; }; }); From 186f5a10f058d05fd07c7a9082cf3bf56eea6d62 Mon Sep 17 00:00:00 2001 From: Lancelot SIX Date: Tue, 30 Aug 2016 13:44:47 +0200 Subject: [PATCH 062/100] lush2: add missing libSM dependency --- pkgs/development/interpreters/lush/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/interpreters/lush/default.nix b/pkgs/development/interpreters/lush/default.nix index dcfdc11c7a9..62568c40c78 100644 --- a/pkgs/development/interpreters/lush/default.nix +++ b/pkgs/development/interpreters/lush/default.nix @@ -1,5 +1,5 @@ {stdenv, fetchurl, libX11, xproto, indent, readline, gsl, freeglut, mesa, SDL -, blas, binutils, intltool, gettext, zlib}: +, blas, binutils, intltool, gettext, zlib, libSM}: stdenv.mkDerivation rec { baseName = "lush"; @@ -12,7 +12,7 @@ stdenv.mkDerivation rec { }; buildInputs = [ - libX11 xproto indent readline gsl freeglut mesa SDL blas binutils + libX11 libSM xproto indent readline gsl freeglut mesa SDL blas binutils intltool gettext zlib ]; From 750c1b13027c47044ec4051da3caf67f4c9e377d Mon Sep 17 00:00:00 2001 From: Lancelot SIX Date: Tue, 30 Aug 2016 13:45:15 +0200 Subject: [PATCH 063/100] gsl: 2.1 -> 2.2 See http://lists.gnu.org/archive/html/info-gnu/2016-08/msg00015.html for announcement and news. --- pkgs/development/libraries/gsl/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/gsl/default.nix b/pkgs/development/libraries/gsl/default.nix index 4ab1b0cf56c..82e41329e00 100644 --- a/pkgs/development/libraries/gsl/default.nix +++ b/pkgs/development/libraries/gsl/default.nix @@ -1,11 +1,11 @@ { fetchurl, fetchpatch, stdenv }: stdenv.mkDerivation rec { - name = "gsl-2.1"; + name = "gsl-2.2"; src = fetchurl { url = "mirror://gnu/gsl/${name}.tar.gz"; - sha256 = "0rhcia9jhr3p1f1wybwyllwqfs9bggz99i3mi5lpyqcpff1hdbar"; + sha256 = "1pyq2c0j91z955746myn29c89jwkd435s2cbj8ks2hpag6d0mr2d"; }; patches = [ From 87cecbeba631a6943f54d95883cd81fbeb5aca97 Mon Sep 17 00:00:00 2001 From: Matthias Beyer Date: Tue, 30 Aug 2016 14:19:19 +0200 Subject: [PATCH 064/100] timewarrior: 1.0.0.beta1 -> 1.0.0 (#18120) --- pkgs/applications/misc/timewarrior/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/misc/timewarrior/default.nix b/pkgs/applications/misc/timewarrior/default.nix index e67c141f358..091d51d3305 100644 --- a/pkgs/applications/misc/timewarrior/default.nix +++ b/pkgs/applications/misc/timewarrior/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { name = "timewarrior-${version}"; - version = "1.0.0.beta1"; + version = "1.0.0"; enableParallelBuilding = true; src = fetchurl { url = "https://taskwarrior.org/download/timew-${version}.tar.gz"; - sha256 = "1gkh07mw8hiqslw8ps35r9lp5jbdy93s0sdrcbp34dd5h99qx587"; + sha256 = "1d8b9sjdbdld81n535iwip9igl16kcw452wa47fmndp8w487j0mc"; }; nativeBuildInputs = [ cmake ]; From f254db331e8cec6f36a32e42d0ed9ef96d760f2e Mon Sep 17 00:00:00 2001 From: Ram Kromberg Date: Tue, 30 Aug 2016 15:29:45 +0300 Subject: [PATCH 065/100] qweechat: init at 2016-07-29 (#18094) --- .../networking/irc/qweechat/default.nix | 31 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 33 insertions(+) create mode 100644 pkgs/applications/networking/irc/qweechat/default.nix diff --git a/pkgs/applications/networking/irc/qweechat/default.nix b/pkgs/applications/networking/irc/qweechat/default.nix new file mode 100644 index 00000000000..83d459a97fe --- /dev/null +++ b/pkgs/applications/networking/irc/qweechat/default.nix @@ -0,0 +1,31 @@ +{ stdenv, fetchFromGitHub, python27Packages }: + +python27Packages.buildPythonApplication rec { + version = "2016-07-29"; + name = "qweechat-unstable-${version}"; + namePrefix = ""; + + src = fetchFromGitHub { + owner = "weechat"; + repo = "qweechat"; + rev = "f5e54d01691adb3abef47e051a6412186c33313c"; + sha256 = "0dhlriwvkrsn7jj01p2wqhf2p63n9qd173jsgccgxlacm2zzvhaz"; + }; + + prePatch = '' + substituteInPlace setup.py \ + --replace 'qweechat = qweechat.qweechat' 'qweechat = qweechat.qweechat:main' + ''; + + propagatedBuildInputs = with python27Packages; [ + pyside + ]; + + meta = with stdenv.lib; { + homepage = https://github.com/weechat/qweechat; + description = "Qt remote GUI for WeeChat"; + license = licenses.gpl3; + maintainers = with maintainers; [ ramkromberg ]; + platform = with platforms; linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 95b1b21e892..9d65269c568 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -15855,6 +15855,8 @@ in privateer = callPackage ../games/privateer { }; + qweechat = callPackage ../applications/networking/irc/qweechat { }; + qqwing = callPackage ../games/qqwing { }; quake3wrapper = callPackage ../games/quake3/wrapper { }; From e1e96a8210cb753b8ea345146a46db3269147e72 Mon Sep 17 00:00:00 2001 From: Profpatsch Date: Tue, 30 Aug 2016 14:36:16 +0200 Subject: [PATCH 066/100] youtube-dl: wrap with atomicparsley (#18066) Otherwise --embed-thumbnail will crash youtube-dl while running. Rewrite the module arguments to be semantic and not fail with null pointer errors. --- pkgs/tools/misc/youtube-dl/default.nix | 30 +++++++++++++++----------- pkgs/top-level/python-packages.nix | 11 ++-------- 2 files changed, 20 insertions(+), 21 deletions(-) diff --git a/pkgs/tools/misc/youtube-dl/default.nix b/pkgs/tools/misc/youtube-dl/default.nix index 12ecf11517c..a4f837bf833 100644 --- a/pkgs/tools/misc/youtube-dl/default.nix +++ b/pkgs/tools/misc/youtube-dl/default.nix @@ -1,13 +1,15 @@ -{ stdenv, fetchurl, buildPythonApplication, makeWrapper, ffmpeg, zip -, pandoc ? null +{ stdenv, fetchurl, buildPythonApplication, makeWrapper, zip, ffmpeg, pandoc +, atomicparsley +# Pandoc is required to build the package's man page. Release tarballs contain a +# formatted man page already, though, it will still be installed. We keep the +# manpage argument in place in case someone wants to use this derivation to +# build a Git version of the tool that doesn't have the formatted man page +# included. +, generateManPage ? false +, ffmpegSupport ? true }: -# Pandoc is required to build the package's man page. Release tarballs -# contain a formatted man page already, though, so it's fine to pass -# "pandoc = null" to this derivation; the man page will still be -# installed. We keep the pandoc argument and build input in place in -# case someone wants to use this derivation to build a Git version of -# the tool that doesn't have the formatted man page included. +with stdenv.lib; buildPythonApplication rec { @@ -19,16 +21,20 @@ buildPythonApplication rec { sha256 = "017x2hqc2bacypjmn9ac9f91y9y6afydl0z7dich5l627494hvfg"; }; - buildInputs = [ makeWrapper zip pandoc ]; + buildInputs = [ makeWrapper zip ] ++ optional generateManPage pandoc; # Ensure ffmpeg is available in $PATH for post-processing & transcoding support. - postInstall = stdenv.lib.optionalString (ffmpeg != null) - ''wrapProgram $out/bin/youtube-dl --prefix PATH : "${ffmpeg.bin}/bin"''; + # atomicparsley for embedding thumbnails + postInstall = let + packagesthatwillbeusedbelow = [ atomicparsley ] ++ optional ffmpegSupport ffmpeg; + in '' + wrapProgram $out/bin/youtube-dl --prefix PATH : "${makeBinPath packagesthatwillbeusedbelow}" + ''; # Requires network doCheck = false; - meta = with stdenv.lib; { + meta = { homepage = http://rg3.github.io/youtube-dl/; repositories.git = https://github.com/rg3/youtube-dl.git; description = "Command-line tool to download videos from YouTube.com and other sites"; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index b8269287c76..f2de10fcb86 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -25188,17 +25188,10 @@ in modules // { }; }; - youtube-dl = callPackage ../tools/misc/youtube-dl { - # Release versions don't need pandoc because the formatted man page - # is included in the tarball. - pandoc = null; - }; + youtube-dl = callPackage ../tools/misc/youtube-dl {}; youtube-dl-light = callPackage ../tools/misc/youtube-dl { - # Release versions don't need pandoc because the formatted man page - # is included in the tarball. - ffmpeg = null; - pandoc = null; + ffmpegSupport = false; }; zbase32 = buildPythonPackage (rec { From e47a7424c9b7e3ae9767a485f34e0f9bf3cc7bb7 Mon Sep 17 00:00:00 2001 From: tomberek Date: Tue, 30 Aug 2016 08:41:17 -0400 Subject: [PATCH 067/100] libtelnet: init at 20160426 (#17936) --- .../libraries/libtelnet/default.nix | 24 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 26 insertions(+) create mode 100644 pkgs/development/libraries/libtelnet/default.nix diff --git a/pkgs/development/libraries/libtelnet/default.nix b/pkgs/development/libraries/libtelnet/default.nix new file mode 100644 index 00000000000..5f284d1a49a --- /dev/null +++ b/pkgs/development/libraries/libtelnet/default.nix @@ -0,0 +1,24 @@ +{ stdenv, fetchFromGitHub, pkgconfig, autoreconfHook, zlib }: + +stdenv.mkDerivation rec { + name = "libtelnet-${version}"; + version = "0.21+45f2d5c"; + + src = fetchFromGitHub { + owner = "seanmiddleditch"; + repo = "libtelnet"; + rev = "45f2d5cfcf383312280e61c85b107285fed260cf"; + sha256 = "1lp6gdbndsp2w8mhy88c2jknxj2klvnggvq04ln7qjg8407ifpda"; + }; + + nativeBuildInputs = [ pkgconfig autoreconfHook ]; + buildInputs = [ zlib ]; + + meta = { + description = "Simple RFC-complient TELNET implementation as a C library"; + homepage = "https://github.com/seanmiddleditch/libtelnet"; + license = stdenv.lib.licenses.publicDomain; + maintainers = [ stdenv.lib.maintainers.tomberek ]; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 9d65269c568..0102a4d97ec 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2412,6 +2412,8 @@ in libtermkey = callPackage ../development/libraries/libtermkey { }; + libtelnet = callPackage ../development/libraries/libtelnet { }; + libtirpc = callPackage ../development/libraries/ti-rpc { }; libshout = callPackage ../development/libraries/libshout { }; From cd838654ea1081a6372423edfc4a27bd8532fd28 Mon Sep 17 00:00:00 2001 From: Fernando J Pando Date: Mon, 29 Aug 2016 12:58:23 -0400 Subject: [PATCH 068/100] sphinx-jinja: init 0.2.1 Tested on Linux --- pkgs/top-level/python-packages.nix | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index f2de10fcb86..027339302c2 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -22983,6 +22983,27 @@ in modules // { }; }); + sphinx-jinja = buildPythonPackage (rec { + name = "${pname}-${version}"; + pname = "sphinx-jinja"; + version = "0.2.1"; + src = pkgs.fetchurl { + url = "mirror://pypi/s/${pname}/${name}.tar.gz"; + sha256 = "1zsnhc573rvaww9qqyzs4f5h4hhvxklvppv14450vi5dk8rij81z"; + }; + buildInputs = with self; [ sphinx-testing pytest]; + propagatedBuildInputs = with self; [ sphinx blockdiag ]; + checkPhase = '' + py.test -k "not test_build_epub" + ''; + disabled = isPy3k; + meta = { + description = "includes jinja templates in a documentation"; + maintainers = with maintainers; [ nand0p ]; + license = licenses.mit; + }; + }); + sphinx_pypi_upload = buildPythonPackage (rec { name = "Sphinx-PyPI-upload-0.2.1"; From e9f1e1ad0606918734a062aa7656e7a584dfc710 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Tue, 30 Aug 2016 09:51:35 -0300 Subject: [PATCH 069/100] aria2: 1.24.0 -> 1.26.1 --- pkgs/tools/networking/aria2/default.nix | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/pkgs/tools/networking/aria2/default.nix b/pkgs/tools/networking/aria2/default.nix index 78541a5d9f2..105ddd1552f 100644 --- a/pkgs/tools/networking/aria2/default.nix +++ b/pkgs/tools/networking/aria2/default.nix @@ -1,17 +1,17 @@ -{ stdenv, fetchFromGitHub, fetchpatch, pkgconfig, autoreconfHook +{ stdenv, fetchFromGitHub, pkgconfig, autoreconfHook , openssl, c-ares, libxml2, sqlite, zlib, libssh2 , Security }: stdenv.mkDerivation rec { name = "aria2-${version}"; - version = "1.24.0"; + version = "1.26.1"; src = fetchFromGitHub { owner = "aria2"; repo = "aria2"; rev = "release-${version}"; - sha256 = "0sb8s2rf2l0x7m8fx8kys7vad0lfw3k9071iai03kxplkdvg96n9"; + sha256 = "1nf7z55cc6ljpz7zzb8ppg8ybg531gfbhyggya7lnr5ka74h87b5"; }; nativeBuildInputs = [ pkgconfig autoreconfHook ]; @@ -19,13 +19,6 @@ stdenv.mkDerivation rec { buildInputs = [ openssl c-ares libxml2 sqlite zlib libssh2 ] ++ stdenv.lib.optional stdenv.isDarwin Security; - patches = stdenv.lib.optionals stdenv.isDarwin [ - (fetchpatch { - url = https://github.com/aria2/aria2/commit/1e59e357af626edc870b7f53c1ae8083658d0d1a.patch; - sha256 = "1xjj4ll1v6adl6vdkl84v0mh7ma6p469ph1wpvksxrq6qp8345qj"; - }) - ]; - configureFlags = [ "--with-ca-bundle=/etc/ssl/certs/ca-certificates.crt" ]; enableParallelBuilding = true; From 290ea9102cde35c594368f397dcdf39b9e792d63 Mon Sep 17 00:00:00 2001 From: Lancelot SIX Date: Tue, 30 Aug 2016 15:10:07 +0200 Subject: [PATCH 070/100] qgis: 2.16.1 -> 2.16.2 --- pkgs/applications/gis/qgis/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/gis/qgis/default.nix b/pkgs/applications/gis/qgis/default.nix index a8c1428f8cb..880053e05c2 100644 --- a/pkgs/applications/gis/qgis/default.nix +++ b/pkgs/applications/gis/qgis/default.nix @@ -5,7 +5,7 @@ }: stdenv.mkDerivation rec { - name = "qgis-2.16.1"; + name = "qgis-2.16.2"; buildInputs = [ gdal qt4 flex bison proj geos xlibsWrapper sqlite gsl qwt qscintilla fcgi libspatialindex libspatialite postgresql qjson qca2 txt2tags ] ++ @@ -25,7 +25,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "http://qgis.org/downloads/${name}.tar.bz2"; - sha256 = "4a526cd8ae76fc06bb2b6a158e86db5dc0c94545137a8233cd465ef867acdc8b"; + sha256 = "0dll8klz0qfba4c1y7mp9k4y4azlay0sypvryicggllk1hna4w0n"; }; cmakeFlags = stdenv.lib.optional withGrass "-DGRASS_PREFIX7=${grass}/${grass.name}"; From b2a68b73dc8ef06351ed10a3db270fbe8362ec51 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Tue, 30 Aug 2016 10:24:06 -0300 Subject: [PATCH 071/100] mkvtoolnix: 9.3.1 -> 9.4.0 --- pkgs/applications/video/mkvtoolnix/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/video/mkvtoolnix/default.nix b/pkgs/applications/video/mkvtoolnix/default.nix index 9037e7bd6c8..c98d84dab43 100644 --- a/pkgs/applications/video/mkvtoolnix/default.nix +++ b/pkgs/applications/video/mkvtoolnix/default.nix @@ -10,13 +10,13 @@ with stdenv.lib; stdenv.mkDerivation rec { name = "mkvtoolnix-${version}"; - version = "9.3.1"; + version = "9.4.0"; src = fetchFromGitHub { owner = "mbunkus"; repo = "mkvtoolnix"; rev = "release-${version}"; - sha256 = "1vipznja07nr7gmzdbv93dv2ggmw4x1bh6xxnn13k3fk6ysqh163"; + sha256 = "0bmr0cnxp56flak6fjcn0ld5238h3ngrvy09yqp4790g8xwif35v"; }; nativeBuildInputs = [ pkgconfig autoconf automake gettext ruby ]; From 29b5c72cbc0de993a3bc402b14cb5a00695b0a06 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 16:08:12 +0200 Subject: [PATCH 072/100] pythonPackages.pytz: 2016.3 -> 2016.6.1 --- pkgs/top-level/python-packages.nix | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 027339302c2..ef0165efb26 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -20244,13 +20244,17 @@ in modules // { pytz = buildPythonPackage rec { name = "pytz-${version}"; - version = "2016.3"; + version = "2016.6.1"; src = pkgs.fetchurl { url = "mirror://pypi/p/pytz/${name}.tar.gz"; - sha256 = "1a3hjclyylc4m1v1dn04b38wm2vl649ijdswpg0d8m8n0lcxlj9l"; + sha256 = "6f57732f0f8849817e9853eb9d50d85d1ebb1404f702dbc44ee627c642a486ca"; }; + checkPhase = '' + ${python.interpreter} -m unittest discover -s pytz/tests + ''; + meta = { description = "World timezone definitions, modern and historical"; homepage = "http://pythonhosted.org/pytz"; From b72dfa7b7bcbdad418f8bb3d1310b2edf799eeb3 Mon Sep 17 00:00:00 2001 From: Julien Dehos Date: Fri, 29 Jul 2016 17:07:10 +0200 Subject: [PATCH 073/100] cxxtest: init at 4.4 --- .../development/libraries/cxxtest/default.nix | 35 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 37 insertions(+) create mode 100644 pkgs/development/libraries/cxxtest/default.nix diff --git a/pkgs/development/libraries/cxxtest/default.nix b/pkgs/development/libraries/cxxtest/default.nix new file mode 100644 index 00000000000..ebf21c13010 --- /dev/null +++ b/pkgs/development/libraries/cxxtest/default.nix @@ -0,0 +1,35 @@ +{ stdenv, fetchFromGitHub, pythonPackages}: + +stdenv.mkDerivation rec { + version = "4.4"; + name = "cxxtest"; + + src = fetchFromGitHub { + owner = "CxxTest"; + repo = name; + rev = version; + sha256 = "19w92kipfhp5wvs47l0qpibn3x49sbmvkk91yxw6nwk6fafcdl17"; + }; + + buildInputs = with pythonPackages; [ python wrapPython ]; + + installPhase = '' + cd python + python setup.py install --prefix=$out + cd .. + + mkdir -p $out/include + cp -R cxxtest $out/include/ + + wrapPythonProgramsIn $out/bin "$out $pythonPath" + ''; + + meta = with stdenv.lib; { + homepage = "http://cxxtest.com"; + description = "Unit testing framework for C++"; + platforms = platforms.unix ; + license = licenses.lgpl3; + maintainers = [ maintainers.juliendehos ]; + }; +} + diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 0102a4d97ec..8c90e9e5ae2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7075,6 +7075,8 @@ in cxx-prettyprint = callPackage ../development/libraries/cxx-prettyprint { }; + cxxtest = callPackage ../development/libraries/cxxtest { }; + cyrus_sasl = callPackage ../development/libraries/cyrus-sasl { kerberos = if stdenv.isFreeBSD then libheimdal else kerberos; }; From 938b99309138739cd438c1938b09bce9f583e56b Mon Sep 17 00:00:00 2001 From: Octavian Cerna Date: Tue, 30 Aug 2016 17:34:16 +0300 Subject: [PATCH 074/100] raspberrypifw: Don't strip ELF files Stripping breaks raspivid and other executables. --- pkgs/os-specific/linux/firmware/raspberrypi/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/os-specific/linux/firmware/raspberrypi/default.nix b/pkgs/os-specific/linux/firmware/raspberrypi/default.nix index 4787eb57afd..2ee232e877d 100644 --- a/pkgs/os-specific/linux/firmware/raspberrypi/default.nix +++ b/pkgs/os-specific/linux/firmware/raspberrypi/default.nix @@ -11,6 +11,8 @@ stdenv.mkDerivation rec { sha256 = "06g691px0abndp5zvz2ba1g675rcqb64n055h5ahgnlck5cdpawg"; }; + dontStrip = true; # Stripping breaks some of the binaries + installPhase = '' mkdir -p $out/share/raspberrypi/boot cp -R boot/* $out/share/raspberrypi/boot From 95021f061a3df49e041b474a7088f105c3a69dd1 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 17:06:17 +0200 Subject: [PATCH 075/100] Doc: fix python override examples --- doc/languages-frameworks/python.md | 24 +++++++++++++++++++----- 1 file changed, 19 insertions(+), 5 deletions(-) diff --git a/doc/languages-frameworks/python.md b/doc/languages-frameworks/python.md index 9c67dc4ebe6..e342c24063a 100644 --- a/doc/languages-frameworks/python.md +++ b/doc/languages-frameworks/python.md @@ -715,8 +715,8 @@ Python attribute sets are created for each interpreter version. We will therefor In the following example we change the name of the package `pandas` to `foo`. ``` newpkgs = pkgs.overridePackages(self: super: rec { - python35Packages = super.python35Packages.override { - self = python35Packages // { pandas = python35Packages.pandas.override{name="foo";};}; + python35Packages = (super.python35Packages.override { self = python35Packages;}) + // { pandas = super.python35Packages.pandas.override {name = "foo";}; }; }); ``` @@ -727,8 +727,8 @@ with import {}; (let newpkgs = pkgs.overridePackages(self: super: rec { - python35Packages = super.python35Packages.override { - self = python35Packages // { pandas = python35Packages.pandas.override{name="foo";};}; + python35Packages = (super.python35Packages.override { self = python35Packages;}) + // { pandas = super.python35Packages.pandas.override {name = "foo";}; }; }); in newpkgs.python35.withPackages (ps: [ps.blaze]) @@ -743,7 +743,7 @@ with import {}; newpkgs = pkgs.overridePackages(self: super: rec { python35Packages = super.python35Packages.override { - self = python35Packages // { scipy = python35Packages.scipy_0_16;}; + self = python35Packages // { scipy = python35Packages.scipy_0_17;}; }; }); in newpkgs.python35.withPackages (ps: [ps.blaze]) @@ -751,6 +751,20 @@ in newpkgs.python35.withPackages (ps: [ps.blaze]) ``` The requested package `blaze` depends upon `pandas` which itself depends on `scipy`. +A similar example but now using `django` +``` +with import {}; + +(let + +newpkgs = pkgs.overridePackages(self: super: rec { + python27Packages = (super.python27Packages.override {self = python27Packages;}) + // { django = super.python27Packages.django_1_9; }; +}); +in newpkgs.python27.withPackages (ps: [ps.django_guardian ]) +).env +``` + ### `python setup.py bdist_wheel` cannot create .whl Executing `python setup.py bdist_wheel` fails with From e561edc322d275c3687fec431935095cfc717147 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Domen=20Ko=C5=BEar?= Date: Tue, 30 Aug 2016 17:13:41 +0200 Subject: [PATCH 076/100] update-users-groups.pl: correctly guard duplicate uids for declarative users Verified that following nixos configuration: users.users.foo = { uid = 1000; name = "foo"; }; users.users.bar = { name = "bar"; }; Before this commit both users will get uid of 1000, after it's applied bar will correctly get 1001. --- nixos/modules/config/update-users-groups.pl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/modules/config/update-users-groups.pl b/nixos/modules/config/update-users-groups.pl index 967f427374b..cbbe216e5a1 100644 --- a/nixos/modules/config/update-users-groups.pl +++ b/nixos/modules/config/update-users-groups.pl @@ -52,8 +52,8 @@ foreach my $g (@{$spec->{groups}}) { $gidsUsed{$g->{gid}} = 1 if defined $g->{gid}; } -foreach my $u (@{$spec->{groups}}) { - $uidsUsed{$u->{u}} = 1 if defined $u->{uid}; +foreach my $u (@{$spec->{users}}) { + $uidsUsed{$u->{uid}} = 1 if defined $u->{uid}; } # Read the current /etc/group. From 850e6287c5c6d84b8f702f129c282da35ed96998 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 17:16:13 +0200 Subject: [PATCH 077/100] Doc: improve python bdist_wheel fix --- doc/languages-frameworks/python.md | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/doc/languages-frameworks/python.md b/doc/languages-frameworks/python.md index e342c24063a..c38266413bf 100644 --- a/doc/languages-frameworks/python.md +++ b/doc/languages-frameworks/python.md @@ -767,21 +767,25 @@ in newpkgs.python27.withPackages (ps: [ps.django_guardian ]) ### `python setup.py bdist_wheel` cannot create .whl -Executing `python setup.py bdist_wheel` fails with +Executing `python setup.py bdist_wheel` in a `nix-shell `fails with ``` ValueError: ZIP does not support timestamps before 1980 ``` This is because files are included that depend on items in the Nix store which have a timestamp of, that is, it corresponds to January the 1st, 1970 at 00:00:00. And as the error informs you, ZIP does not support that. -Fortunately `bdist_wheel` takes into account `SOURCE_DATE_EPOCH`. On Nix this value is set to 1. By setting it to a value correspond to 1980 or later it is possible to build wheels. +The command `bdist_wheel` takes into account `SOURCE_DATE_EPOCH`, and `nix-shell` sets this to 1. By setting it to a value corresponding to 1980 or later, or by unsetting it, it is possible to build wheels. Use 1980 as timestamp: ``` -SOURCE_DATE_EPOCH=315532800 python3 setup.py bdist_wheel +nix-shell --run "SOURCE_DATE_EPOCH=315532800 python3 setup.py bdist_wheel" ``` or the current time: ``` -SOURCE_DATE_EPOCH=$(date +%s) python3 setup.py bdist_wheel +nix-shell --run "SOURCE_DATE_EPOCH=$(date +%s) python3 setup.py bdist_wheel" ``` +or unset: +""" +nix-shell --run "unset SOURCE_DATE_EPOCH; python3 setup.py bdist_wheel" +""" ### `install_data` / `data_files` problems From 7adaf9868d37f221e52b99ba6a32ea095241a233 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 17:50:08 +0200 Subject: [PATCH 078/100] pythonPackages.bcrypt: 2.0.0 -> 3.1.0 --- pkgs/top-level/python-packages.nix | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index ef0165efb26..875ed8abc97 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4440,12 +4440,11 @@ in modules // { bcrypt = buildPythonPackage rec { name = "bcrypt-${version}"; - version = "2.0.0"; + version = "3.1.0"; src = pkgs.fetchurl { - url = "https://api.github.com/repos/pyca/bcrypt/tarball/${version}"; - name = "bcrypt-${version}.tar.gz"; - sha256 = "14i1yp4qkjklx82jl61cjjcw367lc0pkvnix3gaz451ijdcmz3x8"; + url = "mirror://pypi/b/bcrypt/${name}.tar.gz"; + sha256 = "e54820d8b9eff357d1003f5b8d4b949a632b76b89610d8a933783fd476033ebe"; }; buildInputs = with self; [ pycparser mock pytest py ]; propagatedBuildInputs = with self; optional (!isPyPy) cffi; From aedb9a849064d83fecb6c757590ecad959ac8a60 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 17:50:21 +0200 Subject: [PATCH 079/100] pythonPackages.pillow: 3.3.0 -> 3.3.1 --- pkgs/top-level/python-packages.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 875ed8abc97..c2f9d522b35 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -17681,11 +17681,11 @@ in modules // { }; pillow = buildPythonPackage rec { - name = "Pillow-3.3.0"; + name = "Pillow-3.3.1"; src = pkgs.fetchurl { url = "mirror://pypi/P/Pillow/${name}.tar.gz"; - sha256 = "1lfc197rj4b4inib9b0q0g3rsi204gywfrnk38yk8kssi2f7q7h3"; + sha256 = "3491ca65d9fdba4db094ab3f8e17170425e7dd670e507921a665a1975d1b3df1"; }; # Check is disabled because of assertion errors, see From 3b09cf7fc120439f0d2ef0a345d36fa01d3b6da9 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 17:50:33 +0200 Subject: [PATCH 080/100] pythonPackages.requests2: 2.11.0 -> 2.11.1 --- pkgs/top-level/python-packages.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index c2f9d522b35..e8ddd060560 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -20558,11 +20558,11 @@ in modules // { requests2 = buildPythonPackage rec { name = "requests-${version}"; - version = "2.11.0"; + version = "2.11.1"; src = pkgs.fetchurl { url = "mirror://pypi/r/requests/${name}.tar.gz"; - sha256 = "11d3vrbiqrz30qbplv80y72y9i47hihs35p5n04fl4ggjcz0bzxj"; + sha256 = "5acf980358283faba0b897c73959cecf8b841205bb4b2ad3ef545f46eae1a133"; }; nativeBuildInputs = [ self.pytest ]; From 354f148ba5f68d2006a896d386034797f733f0fd Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 18:37:36 +0200 Subject: [PATCH 081/100] pythonPackages.jupyter: no tests --- pkgs/top-level/python-packages.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index e8ddd060560..4f4a7be8e6d 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -7309,6 +7309,9 @@ in modules // { ipywidgets ]; + # Meta-package, no tests + doCheck = false; + meta = { description = "Installs all the Jupyter components in one go"; homepage = "http://jupyter.org/"; From 27ed131128d2476f7a9acb956a035edd2f730512 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 18:37:52 +0200 Subject: [PATCH 082/100] pythonPackages.jupyter_client: 4.2.2 -> 4.3.0 --- pkgs/top-level/python-packages.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 4f4a7be8e6d..0b4ed9348ed 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -12297,12 +12297,12 @@ in modules // { }; jupyter_client = buildPythonPackage rec { - version = "4.2.2"; + version = "4.3.0"; name = "jupyter_client-${version}"; src = pkgs.fetchurl { url = "mirror://pypi/j/jupyter_client/${name}.tar.gz"; - sha256 = "052a02p38byp3n95k8cwidid05gc5cx44qinzsdzs605zw757z1z"; + sha256 = "70b2e88403835a1d54b83858783d9e5e5771fa4bb6f6904e0b5bb8cfde4b99dd"; }; buildInputs = with self; [ nose ]; From 433681b1fc5c52db24feb4092f5d6da85821a5c4 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 18:38:12 +0200 Subject: [PATCH 083/100] pythonPackages.jupyter_core: 4.1.0 -> 4.1.1 --- pkgs/top-level/python-packages.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 0b4ed9348ed..51442dd9851 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -12324,12 +12324,12 @@ in modules // { }; jupyter_core = buildPythonPackage rec { - version = "4.1.0"; + version = "4.1.1"; name = "jupyter_core-${version}"; src = pkgs.fetchurl { url = "mirror://pypi/j/jupyter_core/${name}.tar.gz"; - sha256 = "04xxqa2m8yjpzxb2szbym6ngycyrmhymyy2vp2s6vi9kkikz0shl"; + sha256 = "ae0e69435258126466c86cd989e465a9c334c50107ef4f257decc8693650bf4c"; }; buildInputs = with self; [ pytest mock ]; From 31229ab3eb4f4c31e7bca19ffdb213591a773616 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 18:38:27 +0200 Subject: [PATCH 084/100] pythonPackages.llvmlite: 0.12.1 -> 0.13.0 --- pkgs/top-level/python-packages.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 51442dd9851..7062c8709f1 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -12791,19 +12791,19 @@ in modules // { }; }; - llvmlite = buildPythonPackage rec { + llvmlite = let + llvm = pkgs.llvm_38; + in buildPythonPackage rec { name = "llvmlite-${version}"; - version = "0.12.1"; + version = "0.13.0"; disabled = isPyPy; src = pkgs.fetchurl { url = "mirror://pypi/l/llvmlite/${name}.tar.gz"; - sha256 = "3ce71beebd4cbc7a49abe4eadfc99725477fd43caeb7405650ebb746c7a1d0df"; + sha256 = "f852be3391acb2e77ef484c5d0ff90e7cf2821dcf9575e358a1f08c274c582eb"; }; - llvm = pkgs.llvm_37; - propagatedBuildInputs = with self; [ llvm ] ++ optional (pythonOlder "3.4") enum34; # Disable static linking From 4f5a3494301d695ba2627e9ce9d86073b5b35f9e Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 18:38:42 +0200 Subject: [PATCH 085/100] pythonPackages.tqdm: 3.7.1 -> 3.8.4 --- pkgs/top-level/python-packages.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 7062c8709f1..a63cb7a5692 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -23983,11 +23983,11 @@ in modules // { tqdm = buildPythonPackage rec { name = "tqdm-${version}"; - version = "3.7.1"; + version = "3.8.4"; src = pkgs.fetchurl { url = "mirror://pypi/t/tqdm/${name}.tar.gz"; - sha256 = "f12d792685f779e8754e623aff1a25a93b98a90457e3a2b7eb89b4401c2c239e"; + sha256 = "bab05f8bb6efd2702ab6c532e5e6a758a66c0d2f443e09784b73e4066e6b3a37"; }; buildInputs = with self; [ nose coverage pkgs.glibcLocales flake8 ]; From ec97b83851f71cbf03c9ca2fb3ed13922463f27c Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 18:38:56 +0200 Subject: [PATCH 086/100] pythonPackages.xarray: 0.7.2 -> 0.8.2 --- pkgs/top-level/python-packages.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index a63cb7a5692..bac0beed386 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -25172,11 +25172,11 @@ in modules // { xarray = buildPythonPackage rec { name = "xarray-${version}"; - version = "0.7.2"; + version = "0.8.2"; src = pkgs.fetchurl { url = "mirror://pypi/x/xarray/${name}.tar.gz"; - sha256 = "0gnhznv18iz478r8wg6a686dqgs1v4i3yra8y91x3vsfl23mgv34"; + sha256 = "4da06e38baea65c51347ba0770db416ebf003dbad5637215d2b25b191f2be1fb"; }; buildInputs = with self; [ pytest ]; From 0d8ccc9d291b7243d82b4a61f541745ff982b83d Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 18:40:41 +0200 Subject: [PATCH 087/100] pythonPackages.dask: 0.9.0 -> 0.11.0 --- pkgs/top-level/python-packages.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index bac0beed386..caecf902a59 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -5013,11 +5013,11 @@ in modules // { dask = buildPythonPackage rec { name = "dask-${version}"; - version = "0.9.0"; + version = "0.11.0"; src = pkgs.fetchurl { url = "mirror://pypi/d/dask/${name}.tar.gz"; - sha256 = "1jm6riz6fbbd554i0dg0w1xfcmx3f9ryp4jrlavsy4zambilm6b3"; + sha256 = "ef32490c0b156584a71576dccec4dfe550a0cd81a9c131a4ee2e43c241b601c3"; }; buildInputs = with self; [ pytest ]; From 704d413f82a0af1dde68f12fd565ff051f8356f0 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 18:56:48 +0200 Subject: [PATCH 088/100] pythonPackages.sounddevice: 0.3.1 -> 0.3.4 --- pkgs/top-level/python-packages.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index caecf902a59..52fc2c8a090 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -22152,11 +22152,11 @@ in modules // { sounddevice = buildPythonPackage rec { name = "sounddevice-${version}"; - version = "0.3.1"; + version = "0.3.4"; src = pkgs.fetchurl { url = "mirror://pypi/s/sounddevice/${name}.tar.gz"; - sha256 = "8e5a6816b369c7aea77e06092b2fee99c8b6efbeef4851f53ea3cb208a7607f5"; + sha256 = "f6c4120357c1458b23bd0d466c66808efdefad397bf97b1162600d079d4665ae"; }; propagatedBuildInputs = with self; [ cffi numpy pkgs.portaudio ]; From 5e59a4b610953b7ad7a8d58eea0b62b0732e8f43 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 18:58:11 +0200 Subject: [PATCH 089/100] pythonPackages.traitlets: 4.2.1 -> 4.2.2 --- pkgs/top-level/python-packages.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 52fc2c8a090..e82e949a249 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -23813,12 +23813,12 @@ in modules // { }; traitlets = buildPythonPackage rec { - version = "4.2.1"; + version = "4.2.2"; name = "traitlets-${version}"; src = pkgs.fetchurl { url = "mirror://pypi/t/traitlets/${name}.tar.gz"; - sha256 = "1h0aryjiqz2f3ykcjb34k5wz6bmzyp5cll7r4k08yfvji4ya7svn"; + sha256 = "7d7e3070484b2fe490fa55e0acf7023afc5ed9ddabec57405f25c355158e152a"; }; buildInputs = with self; [ nose mock ]; From dc04f8a2f05b4a04825f6586630a30ccd5474990 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 19:01:55 +0200 Subject: [PATCH 090/100] pythonPackages.toolz: 0.7.4 -> 0.8.0 --- pkgs/top-level/python-packages.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index e82e949a249..c340f2e1972 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -23946,11 +23946,11 @@ in modules // { toolz = buildPythonPackage rec{ name = "toolz-${version}"; - version = "0.7.4"; + version = "0.8.0"; src = pkgs.fetchurl{ url = "mirror://pypi/t/toolz/toolz-${version}.tar.gz"; - sha256 = "43c2c9e5e7a16b6c88ba3088a9bfc82f7db8e13378be7c78d6c14a5f8ed05afd"; + sha256 = "e8451af61face57b7c5d09e71c0d27b8005f001ead56e9fdf470417e5cc6d479"; }; buildInputs = with self; [ nose ]; From fcdee04c9ef0d9df9fa0fa320d898e1fa0c544d0 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 19:02:06 +0200 Subject: [PATCH 091/100] pythonPackages.cytoolz: 0.7.4 -> 0.8.0 --- pkgs/top-level/python-packages.nix | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index c340f2e1972..9f892423a42 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4002,26 +4002,23 @@ in modules // { cytoolz = buildPythonPackage rec { name = "cytoolz-${version}"; - version = "0.7.4"; + version = "0.8.0"; src = pkgs.fetchurl{ url = "mirror://pypi/c/cytoolz/cytoolz-${version}.tar.gz"; - sha256 = "9c2e3dda8232b6cd5b84b8c8df6c8155c2adeb8734eb7ec38e189affc0f2eba5"; + sha256 = "2239890c8fe2da3eba82947c6a68cfa406e5a5045911c9ab3de8113462372629"; }; # Extension types disabled = isPyPy; buildInputs = with self; [ nose ]; + propagatedBuildInputs = with self; [ toolz ]; checkPhase = '' nosetests -v $out/${python.sitePackages} ''; - # Several tests fail with Python 3.5 - # https://github.com/pytoolz/cytoolz/issues/73 - doCheck = !isPy35; - meta = { homepage = "http://github.com/pytoolz/cytoolz/"; description = "Cython implementation of Toolz: High performance functional utilities"; From cb4cd5d7f03a12cc53b1ce5bd83572786a5f6ab7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Tue, 30 Aug 2016 15:26:06 -0300 Subject: [PATCH 092/100] roboto: init at 2.134 (#18127) --- pkgs/data/fonts/roboto/default.nix | 31 ++++++++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 33 insertions(+) create mode 100644 pkgs/data/fonts/roboto/default.nix diff --git a/pkgs/data/fonts/roboto/default.nix b/pkgs/data/fonts/roboto/default.nix new file mode 100644 index 00000000000..711cca5b164 --- /dev/null +++ b/pkgs/data/fonts/roboto/default.nix @@ -0,0 +1,31 @@ +{ stdenv, fetchurl, unzip }: + +stdenv.mkDerivation rec { + name = "roboto-${version}"; + version = "2.134"; + + src = fetchurl { + url = "https://github.com/google/roboto/releases/download/v${version}/roboto-unhinted.zip"; + sha256 = "1l033xc2n4754gwakxshh5235cnrnzy7q6zsp5zghn8ib0gdp5rb"; + }; + + nativeBuildInputs = [ unzip ]; + + installPhase = '' + mkdir -p $out/share/fonts/truetype + cp -a * $out/share/fonts/truetype/ + ''; + + meta = { + homepage = https://github.com/google/roboto; + description = "The Roboto family of fonts"; + longDescription = '' + Google’s signature family of fonts, the default font on Android and + Chrome OS, and the recommended font for Google’s visual language, + Material Design. + ''; + license = stdenv.lib.licenses.asl20; + maintainers = [ stdenv.lib.maintainers.romildo ]; + platforms = stdenv.lib.platforms.all; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 8c90e9e5ae2..fd6154ebde8 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -12106,6 +12106,8 @@ in r5rs = callPackage ../data/documentation/rnrs/r5rs.nix { }; + roboto = callPackage ../data/fonts/roboto { }; + hasklig = callPackage ../data/fonts/hasklig {}; sound-theme-freedesktop = callPackage ../data/misc/sound-theme-freedesktop { }; From 514208cfb51ff01f417d0bdb1898b679ba76a44c Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Tue, 30 Aug 2016 21:36:33 +0200 Subject: [PATCH 093/100] pythonPackages.cryptography: fix missing dependency --- pkgs/top-level/python-packages.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 9f892423a42..886e69e07dc 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4059,7 +4059,7 @@ in modules // { buildInputs = [ pkgs.openssl self.pretend self.cryptography_vectors self.iso8601 self.pyasn1 self.pytest self.py self.hypothesis1 ] ++ optional stdenv.isDarwin pkgs.darwin.apple_sdk.frameworks.Security; - propagatedBuildInputs = with self; [ six idna ipaddress pyasn1 cffi pyasn1-modules modules.sqlite3 ] + propagatedBuildInputs = with self; [ six idna ipaddress pyasn1 cffi pyasn1-modules modules.sqlite3 pytz ] ++ optional (pythonOlder "3.4") self.enum34; # IOKit's dependencies are inconsistent between OSX versions, so this is the best we From 1de8e1b02ef9bd5e65382f0b3998106ffc328094 Mon Sep 17 00:00:00 2001 From: Nathan Zadoks Date: Wed, 17 Feb 2016 12:59:51 +0100 Subject: [PATCH 094/100] amazon-grow-partition module: autodetect the root device --- nixos/modules/virtualisation/amazon-grow-partition.nix | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/nixos/modules/virtualisation/amazon-grow-partition.nix b/nixos/modules/virtualisation/amazon-grow-partition.nix index 69b80d900ba..02a0dd65fdc 100644 --- a/nixos/modules/virtualisation/amazon-grow-partition.nix +++ b/nixos/modules/virtualisation/amazon-grow-partition.nix @@ -10,13 +10,17 @@ copy_bin_and_libs ${pkgs.gawk}/bin/gawk copy_bin_and_libs ${pkgs.gnused}/bin/sed copy_bin_and_libs ${pkgs.utillinux}/sbin/sfdisk + copy_bin_and_libs ${pkgs.utillinux}/sbin/lsblk cp -v ${pkgs.cloud-utils}/bin/growpart $out/bin/growpart ln -s sed $out/bin/gnused ''; boot.initrd.postDeviceCommands = '' - if [ -e /dev/xvda ] && [ -e /dev/xvda1 ]; then - TMPDIR=/run sh $(type -P growpart) /dev/xvda 1 + rootDevice="${config.fileSystems."/".device}" + if [ -e "$rootDevice" ]; then + rootDevice="$(readlink -f "$rootDevice")" + parentDevice="$(lsblk -npo PKNAME "$rootDevice")" + TMPDIR=/run sh $(type -P growpart) "$parentDevice" "''${rootDevice#$parentDevice}" udevadm settle fi ''; From 346c31000bebfec7cbcf4dbc3276d0af90544351 Mon Sep 17 00:00:00 2001 From: Nathan Zadoks Date: Wed, 17 Feb 2016 13:02:59 +0100 Subject: [PATCH 095/100] amazon-grow-partition module: rename to grow-partition --- nixos/modules/virtualisation/amazon-image.nix | 4 +++- ...-grow-partition.nix => grow-partition.nix} | 21 +++++++++++++++---- 2 files changed, 20 insertions(+), 5 deletions(-) rename nixos/modules/virtualisation/{amazon-grow-partition.nix => grow-partition.nix} (67%) diff --git a/nixos/modules/virtualisation/amazon-image.nix b/nixos/modules/virtualisation/amazon-image.nix index ebf398fa266..f9c3f2e53ad 100644 --- a/nixos/modules/virtualisation/amazon-image.nix +++ b/nixos/modules/virtualisation/amazon-image.nix @@ -11,10 +11,12 @@ with lib; let cfg = config.ec2; in { - imports = [ ../profiles/headless.nix ./ec2-data.nix ./amazon-grow-partition.nix ./amazon-init.nix ]; + imports = [ ../profiles/headless.nix ./ec2-data.nix ./grow-partition.nix ./amazon-init.nix ]; config = { + virtualisation.growPartition = cfg.hvm; + fileSystems."/" = { device = "/dev/disk/by-label/nixos"; autoResize = true; diff --git a/nixos/modules/virtualisation/amazon-grow-partition.nix b/nixos/modules/virtualisation/grow-partition.nix similarity index 67% rename from nixos/modules/virtualisation/amazon-grow-partition.nix rename to nixos/modules/virtualisation/grow-partition.nix index 02a0dd65fdc..34547905166 100644 --- a/nixos/modules/virtualisation/amazon-grow-partition.nix +++ b/nixos/modules/virtualisation/grow-partition.nix @@ -1,11 +1,22 @@ -# This module automatically grows the root partition on Amazon EC2 HVM -# instances. This allows an instance to be created with a bigger root -# filesystem than provided by the AMI. +# This module automatically grows the root partition on virtual machines. +# This allows an instance to be created with a bigger root filesystem +# than provided by the machine image. { config, lib, pkgs, ... }: { - config = lib.mkIf config.ec2.hvm { + + options = { + + virtualisation.growPartition = mkOption { + type = types.bool; + default = true; + }; + + }; + + config = mkIf config.virtualisation.growPartition { + boot.initrd.extraUtilsCommands = '' copy_bin_and_libs ${pkgs.gawk}/bin/gawk copy_bin_and_libs ${pkgs.gnused}/bin/sed @@ -24,5 +35,7 @@ udevadm settle fi ''; + }; + } From f503f648b3b980d38418eff2516112d60e067bc8 Mon Sep 17 00:00:00 2001 From: Nathan Zadoks Date: Tue, 26 Jan 2016 12:21:42 +0100 Subject: [PATCH 096/100] virtualbox-image module: enable partition / filesystem growth --- nixos/modules/virtualisation/virtualbox-image.nix | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/nixos/modules/virtualisation/virtualbox-image.nix b/nixos/modules/virtualisation/virtualbox-image.nix index 3a598a1c7dc..b6a5b3e4788 100644 --- a/nixos/modules/virtualisation/virtualbox-image.nix +++ b/nixos/modules/virtualisation/virtualbox-image.nix @@ -8,6 +8,8 @@ let in { + imports = [ ./grow-partition.nix ]; + options = { virtualbox = { baseImageSize = mkOption { @@ -64,7 +66,10 @@ in { ''; }; - fileSystems."/".device = "/dev/disk/by-label/nixos"; + fileSystems."/" = { + device = "/dev/disk/by-label/nixos"; + autoResize = true; + }; boot.loader.grub.device = "/dev/sda"; From 66726acfae5a60457a4582df78c452a813879325 Mon Sep 17 00:00:00 2001 From: Philip Potter Date: Tue, 30 Aug 2016 23:05:07 +0100 Subject: [PATCH 097/100] sysklogd: fix compile error (#18133) sysklogd was failing to build because it didn't know the size of the `union wait` type. Running `git bisect` showed 9744c7768d0e6920623a16a4e9d604de2fd52f34, which bumped glibc from 2.23 to 2.24, as the likely suspect. This is corroborated by evidence such as this email: https://lists.debian.org/debian-glibc/2016/08/msg00069.html Linux from scratch recommends changing `union wait` to `int`: http://www.linuxfromscratch.org/lfs/view/development/chapter06/sysklogd.html Therefore, that's what this commit does. --- pkgs/os-specific/linux/sysklogd/default.nix | 2 +- pkgs/os-specific/linux/sysklogd/union-wait.patch | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 pkgs/os-specific/linux/sysklogd/union-wait.patch diff --git a/pkgs/os-specific/linux/sysklogd/default.nix b/pkgs/os-specific/linux/sysklogd/default.nix index c1cf77e63c8..513503ff98e 100644 --- a/pkgs/os-specific/linux/sysklogd/default.nix +++ b/pkgs/os-specific/linux/sysklogd/default.nix @@ -8,7 +8,7 @@ stdenv.mkDerivation { sha256 = "00f2wy6f0qng7qzga4iicyzl9j8b7mp6mrpfky5jxj93ms2w2rji"; }; - patches = [ ./systemd.patch ]; + patches = [ ./systemd.patch ./union-wait.patch ]; NIX_CFLAGS_COMPILE = "-DSYSV"; diff --git a/pkgs/os-specific/linux/sysklogd/union-wait.patch b/pkgs/os-specific/linux/sysklogd/union-wait.patch new file mode 100644 index 00000000000..e4bffa5d695 --- /dev/null +++ b/pkgs/os-specific/linux/sysklogd/union-wait.patch @@ -0,0 +1,11 @@ +--- sysklogd-1.5-old/syslogd.c 2016-08-30 22:50:59.812926945 +0100 ++++ sysklogd-1.5/syslogd.c 2016-08-30 22:51:12.008842890 +0100 +@@ -2094,7 +2094,7 @@ + (void) signal(SIGCHLD, reapchild); /* reset signal handler -ASP */ + wait ((int *)0); + #else +- union wait status; ++ int status; + + while (wait3(&status, WNOHANG, (struct rusage *) NULL) > 0) + ; From 15af9082ebeb2aece84e426daf7185715cfbb203 Mon Sep 17 00:00:00 2001 From: Gabriel Ebner Date: Fri, 26 Aug 2016 07:31:39 +0200 Subject: [PATCH 098/100] llvmPackages_39: init at 3.9.0rc3 --- .../compilers/llvm/3.9/clang/default.nix | 57 ++++++++++++ .../compilers/llvm/3.9/clang/purity.patch | 16 ++++ .../compilers/llvm/3.9/default.nix | 35 ++++++++ .../compilers/llvm/3.9/libc++/darwin.patch | 39 ++++++++ .../compilers/llvm/3.9/libc++/default.nix | 40 +++++++++ .../compilers/llvm/3.9/libc++/setup-hook.sh | 3 + .../compilers/llvm/3.9/libc++abi.nix | 47 ++++++++++ pkgs/development/compilers/llvm/3.9/lldb.nix | 56 ++++++++++++ pkgs/development/compilers/llvm/3.9/llvm.nix | 89 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 4 + 10 files changed, 386 insertions(+) create mode 100644 pkgs/development/compilers/llvm/3.9/clang/default.nix create mode 100644 pkgs/development/compilers/llvm/3.9/clang/purity.patch create mode 100644 pkgs/development/compilers/llvm/3.9/default.nix create mode 100644 pkgs/development/compilers/llvm/3.9/libc++/darwin.patch create mode 100644 pkgs/development/compilers/llvm/3.9/libc++/default.nix create mode 100644 pkgs/development/compilers/llvm/3.9/libc++/setup-hook.sh create mode 100644 pkgs/development/compilers/llvm/3.9/libc++abi.nix create mode 100644 pkgs/development/compilers/llvm/3.9/lldb.nix create mode 100644 pkgs/development/compilers/llvm/3.9/llvm.nix diff --git a/pkgs/development/compilers/llvm/3.9/clang/default.nix b/pkgs/development/compilers/llvm/3.9/clang/default.nix new file mode 100644 index 00000000000..09e1b3fc4a2 --- /dev/null +++ b/pkgs/development/compilers/llvm/3.9/clang/default.nix @@ -0,0 +1,57 @@ +{ stdenv, fetch, cmake, libxml2, libedit, llvm, version, clang-tools-extra_src, python }: + +let + gcc = if stdenv.cc.isGNU then stdenv.cc.cc else stdenv.cc.cc.gcc; + self = stdenv.mkDerivation { + name = "clang-${version}"; + + unpackPhase = '' + unpackFile ${fetch "cfe" "1v4n5j1vdc74v4j4m2zldkcm5aniajc2l8k1qlmvs4yc0cjbn1nb"} + mv cfe-${version}.src clang + sourceRoot=$PWD/clang + unpackFile ${clang-tools-extra_src} + mv clang-tools-extra-* $sourceRoot/tools/extra + ''; + + buildInputs = [ cmake libedit libxml2 llvm python ]; + + cmakeFlags = [ + "-DCMAKE_BUILD_TYPE=Release" + "-DCMAKE_CXX_FLAGS=-std=c++11" + ] ++ + # Maybe with compiler-rt this won't be needed? + (stdenv.lib.optional stdenv.isLinux "-DGCC_INSTALL_PREFIX=${gcc}") ++ + (stdenv.lib.optional (stdenv.cc.libc != null) "-DC_INCLUDE_DIRS=${stdenv.cc.libc}/include"); + + patches = [ ./purity.patch ]; + + postPatch = '' + sed -i -e 's/Args.hasArg(options::OPT_nostdlibinc)/true/' lib/Driver/Tools.cpp + sed -i -e 's/DriverArgs.hasArg(options::OPT_nostdlibinc)/true/' lib/Driver/ToolChains.cpp + ''; + + # Clang expects to find LLVMgold in its own prefix + # Clang expects to find sanitizer libraries in its own prefix + postInstall = '' + ln -sv ${llvm}/lib/LLVMgold.so $out/lib + ln -sv ${llvm}/lib/clang/3.9.0/lib $out/lib/clang/3.9.0/ + ln -sv $out/bin/clang $out/bin/cpp + ''; + + enableParallelBuilding = true; + + passthru = { + lib = self; # compatibility with gcc, so that `stdenv.cc.cc.lib` works on both + isClang = true; + } // stdenv.lib.optionalAttrs stdenv.isLinux { + inherit gcc; + }; + + meta = { + description = "A c, c++, objective-c, and objective-c++ frontend for the llvm compiler"; + homepage = http://llvm.org/; + license = stdenv.lib.licenses.bsd3; + platforms = stdenv.lib.platforms.all; + }; + }; +in self diff --git a/pkgs/development/compilers/llvm/3.9/clang/purity.patch b/pkgs/development/compilers/llvm/3.9/clang/purity.patch new file mode 100644 index 00000000000..f5fb4c73af4 --- /dev/null +++ b/pkgs/development/compilers/llvm/3.9/clang/purity.patch @@ -0,0 +1,16 @@ +--- a/lib/Driver/Tools.cpp 2016-08-25 15:48:05.187553443 +0200 ++++ b/lib/Driver/Tools.cpp 2016-08-25 15:48:47.534468882 +0200 +@@ -9420,13 +9420,6 @@ + if (!Args.hasArg(options::OPT_static)) { + if (Args.hasArg(options::OPT_rdynamic)) + CmdArgs.push_back("-export-dynamic"); +- +- if (!Args.hasArg(options::OPT_shared)) { +- const std::string Loader = +- D.DyldPrefix + ToolChain.getDynamicLinker(Args); +- CmdArgs.push_back("-dynamic-linker"); +- CmdArgs.push_back(Args.MakeArgString(Loader)); +- } + } + + CmdArgs.push_back("-o"); diff --git a/pkgs/development/compilers/llvm/3.9/default.nix b/pkgs/development/compilers/llvm/3.9/default.nix new file mode 100644 index 00000000000..399241e6e5f --- /dev/null +++ b/pkgs/development/compilers/llvm/3.9/default.nix @@ -0,0 +1,35 @@ +{ newScope, stdenv, isl, fetchurl, overrideCC, wrapCC }: +let + callPackage = newScope (self // { inherit stdenv isl version fetch; }); + + version = "3.9.0rc3"; + + fetch = fetch_v version; + fetch_v = ver: name: sha256: fetchurl { + url = "http://llvm.org/pre-releases/3.9.0/rc3/${name}-${ver}.src.tar.xz"; + inherit sha256; + }; + + compiler-rt_src = fetch "compiler-rt" "00ljgkjcds0z2z96zv02x39wryj902q29i895xixg60hd0909qra"; + clang-tools-extra_src = fetch "clang-tools-extra" "1nvc5f8g93hb76vrfygz2yafqa6kncpqwip7q1xwbw5fnw7rib5d"; + + self = { + llvm = callPackage ./llvm.nix { + inherit compiler-rt_src stdenv; + }; + + clang-unwrapped = callPackage ./clang { + inherit clang-tools-extra_src stdenv; + }; + + clang = wrapCC self.clang-unwrapped; + + stdenv = overrideCC stdenv self.clang; + + lldb = callPackage ./lldb.nix {}; + + libcxx = callPackage ./libc++ {}; + + libcxxabi = callPackage ./libc++abi.nix {}; + }; +in self diff --git a/pkgs/development/compilers/llvm/3.9/libc++/darwin.patch b/pkgs/development/compilers/llvm/3.9/libc++/darwin.patch new file mode 100644 index 00000000000..6dd756f01cc --- /dev/null +++ b/pkgs/development/compilers/llvm/3.9/libc++/darwin.patch @@ -0,0 +1,39 @@ +--- libcxx-3.8.0.src.org/lib/CMakeLists.txt 2015-12-16 15:41:05.000000000 -0800 ++++ libcxx-3.8.0.src/lib/CMakeLists.txt 2016-06-17 19:40:00.293394500 -0700 +@@ -94,30 +94,30 @@ + add_definitions(-D__STRICT_ANSI__) + add_link_flags( + "-compatibility_version 1" + "-current_version 1" +- "-install_name /usr/lib/libc++.1.dylib" +- "-Wl,-reexport_library,/usr/lib/libc++abi.dylib" ++ "-install_name ${LIBCXX_LIBCXXABI_LIB_PATH}/libc++.1.dylib" ++ "-Wl,-reexport_library,${LIBCXX_LIBCXXABI_LIB_PATH}/libc++abi.dylib" + "-Wl,-unexported_symbols_list,${CMAKE_CURRENT_SOURCE_DIR}/libc++unexp.exp" + "/usr/lib/libSystem.B.dylib") + else() + if ( ${CMAKE_OSX_SYSROOT} ) + list(FIND ${CMAKE_OSX_ARCHITECTURES} "armv7" OSX_HAS_ARMV7) + if (OSX_HAS_ARMV7) + set(OSX_RE_EXPORT_LINE +- "${CMAKE_OSX_SYSROOT}/usr/lib/libc++abi.dylib" ++ "${CMAKE_OSX_SYSROOT}${LIBCXX_LIBCXXABI_LIB_PATH}/libc++abi.dylib" + "-Wl,-reexported_symbols_list,${CMAKE_CURRENT_SOURCE_DIR}/libc++sjlj-abi.exp") + else() + set(OSX_RE_EXPORT_LINE +- "-Wl,-reexport_library,${CMAKE_OSX_SYSROOT}/usr/lib/libc++abi.dylib") ++ "-Wl,-reexport_library,${CMAKE_OSX_SYSROOT}${LIBCXX_LIBCXXABI_LIB_PATH}/libc++abi.dylib") + endif() + else() +- set(OSX_RE_EXPORT_LINE "/usr/lib/libc++abi.dylib -Wl,-reexported_symbols_list,${CMAKE_CURRENT_SOURCE_DIR}/libc++abi${LIBCXX_LIBCPPABI_VERSION}.exp") ++ set(OSX_RE_EXPORT_LINE "${LIBCXX_LIBCXXABI_LIB_PATH}/libc++abi.dylib -Wl,-reexported_symbols_list,${CMAKE_CURRENT_SOURCE_DIR}/libc++abi${LIBCXX_LIBCPPABI_VERSION}.exp") + endif() + + add_link_flags( + "-compatibility_version 1" +- "-install_name /usr/lib/libc++.1.dylib" ++ "-install_name ${LIBCXX_LIBCXXABI_LIB_PATH}/libc++.1.dylib" + "-Wl,-unexported_symbols_list,${CMAKE_CURRENT_SOURCE_DIR}/libc++unexp.exp" + "${OSX_RE_EXPORT_LINE}" + "-Wl,-force_symbols_not_weak_list,${CMAKE_CURRENT_SOURCE_DIR}/notweak.exp" + "-Wl,-force_symbols_weak_list,${CMAKE_CURRENT_SOURCE_DIR}/weak.exp") diff --git a/pkgs/development/compilers/llvm/3.9/libc++/default.nix b/pkgs/development/compilers/llvm/3.9/libc++/default.nix new file mode 100644 index 00000000000..b6cd715ca23 --- /dev/null +++ b/pkgs/development/compilers/llvm/3.9/libc++/default.nix @@ -0,0 +1,40 @@ +{ lib, stdenv, fetch, cmake, libcxxabi, fixDarwinDylibNames, version }: + +stdenv.mkDerivation rec { + name = "libc++-${version}"; + + src = fetch "libcxx" "13p4wdqai5rbic91n8lfyqzlll319cw5cx786jkh109h7gqvavb6"; + + postUnpack = '' + unpackFile ${libcxxabi.src} + ''; + + preConfigure = '' + # Get headers from the cxxabi source so we can see private headers not installed by the cxxabi package + cmakeFlagsArray=($cmakeFlagsArray -DLIBCXX_CXX_ABI_INCLUDE_PATHS="$NIX_BUILD_TOP/libcxxabi-${version}.src/include") + ''; + + patches = lib.optional stdenv.isDarwin ./darwin.patch; + + buildInputs = [ cmake libcxxabi ] ++ lib.optional stdenv.isDarwin fixDarwinDylibNames; + + cmakeFlags = + [ "-DCMAKE_BUILD_TYPE=Release" + "-DLIBCXX_LIBCXXABI_LIB_PATH=${libcxxabi}/lib" + "-DLIBCXX_LIBCPPABI_VERSION=2" + "-DLIBCXX_CXX_ABI=libcxxabi" + ]; + + enableParallelBuilding = true; + + linkCxxAbi = stdenv.isLinux; + + setupHook = ./setup-hook.sh; + + meta = { + homepage = http://libcxx.llvm.org/; + description = "A new implementation of the C++ standard library, targeting C++11"; + license = "BSD"; + platforms = stdenv.lib.platforms.unix; + }; +} diff --git a/pkgs/development/compilers/llvm/3.9/libc++/setup-hook.sh b/pkgs/development/compilers/llvm/3.9/libc++/setup-hook.sh new file mode 100644 index 00000000000..9022fced6ec --- /dev/null +++ b/pkgs/development/compilers/llvm/3.9/libc++/setup-hook.sh @@ -0,0 +1,3 @@ +linkCxxAbi="@linkCxxAbi@" +export NIX_CXXSTDLIB_COMPILE+=" -isystem @out@/include/c++/v1" +export NIX_CXXSTDLIB_LINK=" -stdlib=libc++${linkCxxAbi:+" -lc++abi"}" diff --git a/pkgs/development/compilers/llvm/3.9/libc++abi.nix b/pkgs/development/compilers/llvm/3.9/libc++abi.nix new file mode 100644 index 00000000000..378f849a2a0 --- /dev/null +++ b/pkgs/development/compilers/llvm/3.9/libc++abi.nix @@ -0,0 +1,47 @@ +{ stdenv, cmake, fetch, libcxx, libunwind, llvm, version }: + +stdenv.mkDerivation { + name = "libc++abi-${version}"; + + src = fetch "libcxxabi" "14bb6441ziq93irz527880g22hpcaznfqxr8y807ajkwy2678yhm"; + + buildInputs = [ cmake ] ++ stdenv.lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD) libunwind; + + postUnpack = '' + unpackFile ${libcxx.src} + unpackFile ${llvm.src} + export NIX_CFLAGS_COMPILE+=" -I$PWD/include" + export cmakeFlags="-DLLVM_PATH=$PWD/$(ls -d llvm-*) -DLIBCXXABI_LIBCXX_INCLUDES=$PWD/$(ls -d libcxx-*)/include" + '' + stdenv.lib.optionalString stdenv.isDarwin '' + export TRIPLE=x86_64-apple-darwin + ''; + + installPhase = if stdenv.isDarwin + then '' + for file in lib/*.dylib; do + # this should be done in CMake, but having trouble figuring out + # the magic combination of necessary CMake variables + # if you fancy a try, take a look at + # http://www.cmake.org/Wiki/CMake_RPATH_handling + install_name_tool -id $out/$file $file + done + make install + install -d 755 $out/include + install -m 644 ../include/*.h $out/include + '' + else '' + install -d -m 755 $out/include $out/lib + install -m 644 lib/libc++abi.so.1.0 $out/lib + install -m 644 ../include/cxxabi.h $out/include + ln -s libc++abi.so.1.0 $out/lib/libc++abi.so + ln -s libc++abi.so.1.0 $out/lib/libc++abi.so.1 + ''; + + meta = { + homepage = http://libcxxabi.llvm.org/; + description = "A new implementation of low level support for a standard C++ library"; + license = "BSD"; + maintainers = with stdenv.lib.maintainers; [ vlstill ]; + platforms = stdenv.lib.platforms.unix; + }; +} diff --git a/pkgs/development/compilers/llvm/3.9/lldb.nix b/pkgs/development/compilers/llvm/3.9/lldb.nix new file mode 100644 index 00000000000..ff05d231ec0 --- /dev/null +++ b/pkgs/development/compilers/llvm/3.9/lldb.nix @@ -0,0 +1,56 @@ +{ stdenv +, fetch +, cmake +, zlib +, ncurses +, swig +, which +, libedit +, llvm +, clang-unwrapped +, python +, version +}: + +stdenv.mkDerivation { + name = "lldb-${version}"; + + src = fetch "lldb" "1rhilgdlbbwkmd37jr29015m1jrq0vdplrmzydxg31yzbavmfl6y"; + + postUnpack = '' + # Hack around broken standalone build as of 3.8 + unpackFile ${llvm.src} + srcDir="$(ls -d lldb-*.src)" + mkdir -p "$srcDir/tools/lib/Support" + cp "$(ls -d llvm-*.src)/lib/Support/regex_impl.h" "$srcDir/tools/lib/Support/" + + # Fix up various paths that assume llvm and clang are installed in the same place + substituteInPlace $srcDir/cmake/modules/LLDBStandalone.cmake \ + --replace CheckAtomic $(readlink -f llvm-*.src)/cmake/modules/CheckAtomic.cmake + sed -i 's,".*ClangConfig.cmake","${clang-unwrapped}/lib/cmake/clang/ClangConfig.cmake",' \ + $srcDir/cmake/modules/LLDBStandalone.cmake + sed -i 's,".*tools/clang/include","${clang-unwrapped}/include",' \ + $srcDir/cmake/modules/LLDBStandalone.cmake + sed -i 's,"$.LLVM_LIBRARY_DIR.",${llvm}/lib ${clang-unwrapped}/lib,' \ + $srcDir/cmake/modules/LLDBStandalone.cmake + ''; + + buildInputs = [ cmake python which swig ncurses zlib libedit llvm ]; + + CXXFLAGS = "-fno-rtti"; + hardeningDisable = [ "format" ]; + + cmakeFlags = [ + "-DCMAKE_BUILD_TYPE=Release" + "-DLLVM_MAIN_INCLUDE_DIR=${llvm}/include" + ]; + + enableParallelBuilding = true; + + meta = { + description = "A next-generation high-performance debugger"; + homepage = http://llvm.org/; + license = stdenv.lib.licenses.bsd3; + platforms = stdenv.lib.platforms.all; + }; +} diff --git a/pkgs/development/compilers/llvm/3.9/llvm.nix b/pkgs/development/compilers/llvm/3.9/llvm.nix new file mode 100644 index 00000000000..07fc56fbc2f --- /dev/null +++ b/pkgs/development/compilers/llvm/3.9/llvm.nix @@ -0,0 +1,89 @@ +{ stdenv +, fetch +, perl +, groff +, cmake +, python +, libffi +, binutils +, libxml2 +, valgrind +, ncurses +, version +, zlib +, compiler-rt_src +, libcxxabi +, debugVersion ? false +, enableSharedLibraries ? true +}: + +let + src = fetch "llvm" "10iz9qjxgd05qfzi1zppabn1gb2w1f4ryrydi2mk0z4v18wxhbmm"; +in stdenv.mkDerivation rec { + name = "llvm-${version}"; + + unpackPhase = '' + unpackFile ${src} + mv llvm-${version}.src llvm + sourceRoot=$PWD/llvm + unpackFile ${compiler-rt_src} + mv compiler-rt-* $sourceRoot/projects/compiler-rt + ''; + + buildInputs = [ perl groff cmake libxml2 python libffi ] + ++ stdenv.lib.optional stdenv.isDarwin libcxxabi; + + propagatedBuildInputs = [ ncurses zlib ]; + + # hacky fix: New LLVM releases require a newer OS X SDK than + # 10.9. This is a temporary measure until nixpkgs darwin support is + # updated. + patchPhase = stdenv.lib.optionalString stdenv.isDarwin '' + sed -i 's/os_trace(\(.*\)");$/printf(\1\\n");/g' ./projects/compiler-rt/lib/sanitizer_common/sanitizer_mac.cc + ''; + + # hacky fix: created binaries need to be run before installation + preBuild = '' + mkdir -p $out/ + ln -sv $PWD/lib $out + ''; + + cmakeFlags = with stdenv; [ + "-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}" + "-DLLVM_INSTALL_UTILS=ON" # Needed by rustc + "-DLLVM_BUILD_TESTS=ON" + "-DLLVM_ENABLE_FFI=ON" + "-DLLVM_ENABLE_RTTI=ON" + "-DCOMPILER_RT_INCLUDE_TESTS=OFF" # FIXME: requires clang source code + ] ++ stdenv.lib.optional enableSharedLibraries [ + "-DLLVM_LINK_LLVM_DYLIB=ON" + ] ++ stdenv.lib.optional (!isDarwin) + "-DLLVM_BINUTILS_INCDIR=${binutils.dev}/include" + ++ stdenv.lib.optionals ( isDarwin) [ + "-DLLVM_ENABLE_LIBCXX=ON" + "-DCAN_TARGET_i386=false" + ]; + + postBuild = '' + rm -fR $out + + paxmark m bin/{lli,llvm-rtdyld} + ''; + + postInstall = stdenv.lib.optionalString (stdenv.isDarwin && enableSharedLibraries) '' + install_name_tool -id $out/lib/libLLVM.dylib $out/lib/libLLVM.dylib + ln -s $out/lib/libLLVM.dylib $out/lib/libLLVM-${version}.dylib + ''; + + enableParallelBuilding = true; + + passthru.src = src; + + meta = { + description = "Collection of modular and reusable compiler and toolchain technologies"; + homepage = http://llvm.org/; + license = stdenv.lib.licenses.bsd3; + maintainers = with stdenv.lib.maintainers; [ lovek323 raskin viric ]; + platforms = stdenv.lib.platforms.all; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index fd6154ebde8..0302fecf32e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4924,6 +4924,10 @@ in inherit (stdenvAdapters) overrideCC; }; + llvmPackages_39 = callPackage ../development/compilers/llvm/3.9 { + inherit (stdenvAdapters) overrideCC; + }; + manticore = callPackage ../development/compilers/manticore { }; mentorToolchains = recurseIntoAttrs ( From f5c3115063a6f312d156c2b757d80039020bd289 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Fri, 2 Sep 2016 20:14:33 +0200 Subject: [PATCH 099/100] llvmPackages_39: rc -> 3.9.0 --- pkgs/development/compilers/llvm/3.9/clang/default.nix | 2 +- pkgs/development/compilers/llvm/3.9/default.nix | 8 ++++---- pkgs/development/compilers/llvm/3.9/libc++/default.nix | 2 +- pkgs/development/compilers/llvm/3.9/libc++abi.nix | 2 +- pkgs/development/compilers/llvm/3.9/lldb.nix | 2 +- pkgs/development/compilers/llvm/3.9/llvm.nix | 2 +- 6 files changed, 9 insertions(+), 9 deletions(-) diff --git a/pkgs/development/compilers/llvm/3.9/clang/default.nix b/pkgs/development/compilers/llvm/3.9/clang/default.nix index 09e1b3fc4a2..c6605dd656f 100644 --- a/pkgs/development/compilers/llvm/3.9/clang/default.nix +++ b/pkgs/development/compilers/llvm/3.9/clang/default.nix @@ -6,7 +6,7 @@ let name = "clang-${version}"; unpackPhase = '' - unpackFile ${fetch "cfe" "1v4n5j1vdc74v4j4m2zldkcm5aniajc2l8k1qlmvs4yc0cjbn1nb"} + unpackFile ${fetch "cfe" "0a1x32rxrq4ln079xf58irg56gjdxcfgwa00ws4hqv9pv73sg5km"} mv cfe-${version}.src clang sourceRoot=$PWD/clang unpackFile ${clang-tools-extra_src} diff --git a/pkgs/development/compilers/llvm/3.9/default.nix b/pkgs/development/compilers/llvm/3.9/default.nix index 399241e6e5f..7b9dbd93b2b 100644 --- a/pkgs/development/compilers/llvm/3.9/default.nix +++ b/pkgs/development/compilers/llvm/3.9/default.nix @@ -2,16 +2,16 @@ let callPackage = newScope (self // { inherit stdenv isl version fetch; }); - version = "3.9.0rc3"; + version = "3.9.0"; fetch = fetch_v version; fetch_v = ver: name: sha256: fetchurl { - url = "http://llvm.org/pre-releases/3.9.0/rc3/${name}-${ver}.src.tar.xz"; + url = "http://llvm.org/releases/3.9.0/${name}-${ver}.src.tar.xz"; inherit sha256; }; - compiler-rt_src = fetch "compiler-rt" "00ljgkjcds0z2z96zv02x39wryj902q29i895xixg60hd0909qra"; - clang-tools-extra_src = fetch "clang-tools-extra" "1nvc5f8g93hb76vrfygz2yafqa6kncpqwip7q1xwbw5fnw7rib5d"; + compiler-rt_src = fetch "compiler-rt" "16m5g0hf8yg9npnw25j2a86g34nsvk9rsm3c84gbch2prm7j5rg0"; + clang-tools-extra_src = fetch "clang-tools-extra" "052zg0h5vbmxnh2ikc743rw3649f112dfyn8hg39x6cfxi3fqyjv"; self = { llvm = callPackage ./llvm.nix { diff --git a/pkgs/development/compilers/llvm/3.9/libc++/default.nix b/pkgs/development/compilers/llvm/3.9/libc++/default.nix index b6cd715ca23..97cf65ad209 100644 --- a/pkgs/development/compilers/llvm/3.9/libc++/default.nix +++ b/pkgs/development/compilers/llvm/3.9/libc++/default.nix @@ -3,7 +3,7 @@ stdenv.mkDerivation rec { name = "libc++-${version}"; - src = fetch "libcxx" "13p4wdqai5rbic91n8lfyqzlll319cw5cx786jkh109h7gqvavb6"; + src = fetch "libcxx" "01jvgwi9zd46bb1f93c561212bjzg02q2akacvsj4qsw6r8qvcyh"; postUnpack = '' unpackFile ${libcxxabi.src} diff --git a/pkgs/development/compilers/llvm/3.9/libc++abi.nix b/pkgs/development/compilers/llvm/3.9/libc++abi.nix index 378f849a2a0..2baac6386a5 100644 --- a/pkgs/development/compilers/llvm/3.9/libc++abi.nix +++ b/pkgs/development/compilers/llvm/3.9/libc++abi.nix @@ -3,7 +3,7 @@ stdenv.mkDerivation { name = "libc++abi-${version}"; - src = fetch "libcxxabi" "14bb6441ziq93irz527880g22hpcaznfqxr8y807ajkwy2678yhm"; + src = fetch "libcxxabi" "06c05jlwfgm2q5xhy5wzmsi9bmfphzh22wpmbph84s452wksjdxh"; buildInputs = [ cmake ] ++ stdenv.lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD) libunwind; diff --git a/pkgs/development/compilers/llvm/3.9/lldb.nix b/pkgs/development/compilers/llvm/3.9/lldb.nix index ff05d231ec0..bb92a6eed6c 100644 --- a/pkgs/development/compilers/llvm/3.9/lldb.nix +++ b/pkgs/development/compilers/llvm/3.9/lldb.nix @@ -15,7 +15,7 @@ stdenv.mkDerivation { name = "lldb-${version}"; - src = fetch "lldb" "1rhilgdlbbwkmd37jr29015m1jrq0vdplrmzydxg31yzbavmfl6y"; + src = fetch "lldb" "1113s6crh94hzk9h9lqrvng0lsy174ml2rq0r962ngqy843hwa31"; postUnpack = '' # Hack around broken standalone build as of 3.8 diff --git a/pkgs/development/compilers/llvm/3.9/llvm.nix b/pkgs/development/compilers/llvm/3.9/llvm.nix index 07fc56fbc2f..41d655015e4 100644 --- a/pkgs/development/compilers/llvm/3.9/llvm.nix +++ b/pkgs/development/compilers/llvm/3.9/llvm.nix @@ -18,7 +18,7 @@ }: let - src = fetch "llvm" "10iz9qjxgd05qfzi1zppabn1gb2w1f4ryrydi2mk0z4v18wxhbmm"; + src = fetch "llvm" "0j49lkd5d7nnpdqzaybs2472bvcxyx0i4r3iccwf3kj2v9wk3iv6"; in stdenv.mkDerivation rec { name = "llvm-${version}"; From 040b941b4c1ef3d4cec1053444c6e0aba3314933 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Fri, 2 Sep 2016 20:15:28 +0200 Subject: [PATCH 100/100] mesa: use llvm-3.9 instead of 3.8 --- pkgs/top-level/all-packages.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 0302fecf32e..b7f19e363f0 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8749,7 +8749,7 @@ in # makes it slower, but during runtime we link against just mesa_drivers # through /run/opengl-driver*, which is overriden according to config.grsecurity grsecEnabled = true; - llvmPackages = llvmPackages_38; # various problems with 3.7; see #11367, #11467 + llvmPackages = llvmPackages_39; }); mesa_glu = mesaDarwinOr (callPackage ../development/libraries/mesa-glu { }); mesa_drivers = mesaDarwinOr (