about summary refs log tree commit diff
path: root/pkgs/os-specific
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/os-specific')
-rw-r--r--pkgs/os-specific/darwin/install_name_tool/default.nix4
-rw-r--r--pkgs/os-specific/darwin/osx-sdk/default.nix5
-rw-r--r--pkgs/os-specific/gnu/hurd/default.nix2
-rw-r--r--pkgs/os-specific/gnu/libpthread/default.nix2
-rw-r--r--pkgs/os-specific/gnu/mach/default.nix2
-rw-r--r--pkgs/os-specific/linux/acpid/default.nix15
-rw-r--r--pkgs/os-specific/linux/android-udev-rules/default.nix6
-rw-r--r--pkgs/os-specific/linux/blktrace/default.nix23
-rw-r--r--pkgs/os-specific/linux/consoletools/default.nix5
-rw-r--r--pkgs/os-specific/linux/fatrace/default.nix13
-rw-r--r--pkgs/os-specific/linux/firmware/zd1211/default.nix7
-rw-r--r--pkgs/os-specific/linux/iw/default.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/common-config.nix3
-rw-r--r--pkgs/os-specific/linux/kernel/grsecurity-path-4.5.patch14
-rw-r--r--pkgs/os-specific/linux/kernel/linux-grsecurity-4.4.nix2
-rw-r--r--pkgs/os-specific/linux/kernel/linux-grsecurity-4.5.nix (renamed from pkgs/os-specific/linux/kernel/linux-grsecurity-4.1.nix)6
-rw-r--r--pkgs/os-specific/linux/kernel/linux-testing.nix6
-rw-r--r--pkgs/os-specific/linux/kernel/manual-config.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/patches.nix27
-rw-r--r--pkgs/os-specific/linux/libnl/default.nix6
-rw-r--r--pkgs/os-specific/linux/mdadm/default.nix4
-rw-r--r--pkgs/os-specific/linux/open-iscsi/default.nix36
-rw-r--r--pkgs/os-specific/linux/open-isns/default.nix25
-rw-r--r--pkgs/os-specific/linux/sdparm/default.nix9
-rw-r--r--pkgs/os-specific/windows/mingw-w64/default.nix9
25 files changed, 154 insertions, 85 deletions
diff --git a/pkgs/os-specific/darwin/install_name_tool/default.nix b/pkgs/os-specific/darwin/install_name_tool/default.nix
index 6a7e6caaa262..581eb31cc71c 100644
--- a/pkgs/os-specific/darwin/install_name_tool/default.nix
+++ b/pkgs/os-specific/darwin/install_name_tool/default.nix
@@ -5,9 +5,9 @@ assert stdenv.isDarwin;
 stdenv.mkDerivation {
   name = "install_name_tool";
   src = "/usr/bin/install_name_tool";
+
   unpackPhase = "true";
-  configurePhase = "true";
-  buildPhase = "true";
+  dontBuild = true;
 
   installPhase = ''
     mkdir -p "$out"/bin
diff --git a/pkgs/os-specific/darwin/osx-sdk/default.nix b/pkgs/os-specific/darwin/osx-sdk/default.nix
index 875479b4f29d..235eadfd2556 100644
--- a/pkgs/os-specific/darwin/osx-sdk/default.nix
+++ b/pkgs/os-specific/darwin/osx-sdk/default.nix
@@ -7,9 +7,8 @@ in stdenv.mkDerivation rec {
 
   src = "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk";
 
-  unpackPhase    = "true";
-  configurePhase = "true";
-  buildPhase     = "true";
+  unpackPhase = "true";
+  dontBuild = true;
 
   installPhase = ''
     mkdir -p $out/Developer/SDKs/
diff --git a/pkgs/os-specific/gnu/hurd/default.nix b/pkgs/os-specific/gnu/hurd/default.nix
index 4bdb6e132fbb..5eccee62468d 100644
--- a/pkgs/os-specific/gnu/hurd/default.nix
+++ b/pkgs/os-specific/gnu/hurd/default.nix
@@ -87,7 +87,7 @@ stdenv.mkDerivation ({
 //
 
 (if headersOnly
- then { buildPhase = ":"; installPhase = "make install-headers"; }
+ then { dontBuild = true; installPhase = "make install-headers"; }
  else (if (cross != null)
        then {
          crossConfig = cross.config;
diff --git a/pkgs/os-specific/gnu/libpthread/default.nix b/pkgs/os-specific/gnu/libpthread/default.nix
index 4b16652ba053..294a1548582b 100644
--- a/pkgs/os-specific/gnu/libpthread/default.nix
+++ b/pkgs/os-specific/gnu/libpthread/default.nix
@@ -46,7 +46,7 @@ stdenv.mkDerivation ({
        "ac_cv_lib_ihash_hurd_ihash_create=yes"
      ];
 
-   buildPhase = ":";
+   dontBuild = true;
    installPhase = "make install-data-local-headers";
  }
  else { })
diff --git a/pkgs/os-specific/gnu/mach/default.nix b/pkgs/os-specific/gnu/mach/default.nix
index 6d2d20687bc6..e8c158507151 100644
--- a/pkgs/os-specific/gnu/mach/default.nix
+++ b/pkgs/os-specific/gnu/mach/default.nix
@@ -53,5 +53,5 @@ stdenv.mkDerivation ({
 //
 
 (if headersOnly
- then { buildPhase = ":"; installPhase = "make install-data"; }
+ then { dontBuild = true; installPhase = "make install-data"; }
  else {}))
diff --git a/pkgs/os-specific/linux/acpid/default.nix b/pkgs/os-specific/linux/acpid/default.nix
index 1746c938444a..aa8b25560e6a 100644
--- a/pkgs/os-specific/linux/acpid/default.nix
+++ b/pkgs/os-specific/linux/acpid/default.nix
@@ -1,21 +1,18 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "acpid-2.0.25";
+  name = "acpid-2.0.27";
 
   src = fetchurl {
     url = "mirror://sourceforge/acpid2/${name}.tar.xz";
-    sha256 = "0s2wg84x6pnrkf7i7lpzw2rilq4mj50vwb7p2b2n5hdyfa00lw0b";
+    sha256 = "05m6scbdzi2fb8zzi01c11a10pr0qb1gzccz4bbxj4fcacz24342";
   };
 
-  preBuild = ''
-    makeFlagsArray=(BINDIR=$out/bin SBINDIR=$out/sbin MAN8DIR=$out/share/man/man8)
-  '';
-
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://tedfelix.com/linux/acpid-netlink.html;
     description = "A daemon for delivering ACPI events to userspace programs";
-    license = stdenv.lib.licenses.gpl2Plus;
-    platforms = stdenv.lib.platforms.linux;
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ nckx ];
   };
 }
diff --git a/pkgs/os-specific/linux/android-udev-rules/default.nix b/pkgs/os-specific/linux/android-udev-rules/default.nix
index 5e3fb1c2ba03..be2b8026817a 100644
--- a/pkgs/os-specific/linux/android-udev-rules/default.nix
+++ b/pkgs/os-specific/linux/android-udev-rules/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "android-udev-rules-${version}";
-  version = "2016-03-03";
+  version = "2016-04-26";
 
   src = fetchFromGitHub {
     owner = "M0Rf30";
     repo = "android-udev-rules";
-    rev = "a6ec1239173bfbe2082211261528e834af9fbb64";
-    sha256 = "11g7m8jjxxzyrbsd9g7cbk6bwy3c4f76pdy4lvdx68xrbsl2rvmj";
+    rev = "9af6e552016392db35191142b599a5199cf8a9fa";
+    sha256 = "1lvh7md6qz91q8jy9phnfxlb19s104lvsk75a5r07d8bjc4w9pxb";
   };
 
   installPhase = ''
diff --git a/pkgs/os-specific/linux/blktrace/default.nix b/pkgs/os-specific/linux/blktrace/default.nix
new file mode 100644
index 000000000000..3871630758cf
--- /dev/null
+++ b/pkgs/os-specific/linux/blktrace/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchurl, libaio }:
+
+stdenv.mkDerivation {
+  name = "blktrace-1.1.0";
+
+  # Official source
+  # "git://git.kernel.org/pub/scm/linux/kernel/git/axboe/blktrace.git"
+  src = fetchurl {
+    url = "http://brick.kernel.dk/snaps/blktrace-1.1.0.tar.bz2";
+    sha256 = "15cj9aki7z5i5y6bnchqry6yp40r4lmgmam6ar5gslnx0smgm8jl";
+  };
+
+  buildInputs = [ libaio ];
+
+  preConfigure = ''
+    sed s,/usr/local,$out, -i Makefile
+  '';
+
+  meta = {
+    description = "Block layer IO tracing mechanism";
+    license = stdenv.lib.licenses.gpl2;
+  };
+}
diff --git a/pkgs/os-specific/linux/consoletools/default.nix b/pkgs/os-specific/linux/consoletools/default.nix
index 0a7997755514..b9f1ee90fe95 100644
--- a/pkgs/os-specific/linux/consoletools/default.nix
+++ b/pkgs/os-specific/linux/consoletools/default.nix
@@ -10,14 +10,17 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [ SDL ];
+
   makeFlags = [ "DESTDIR=$(out)"];
 
+  installFlags = ''PREFIX=""'';
+
   meta = with stdenv.lib; {
     homepage = https://sourceforge.net/projects/linuxconsole/;
     description = "A set of tools for joysticks and serial peripherals";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ pSub ];
+    maintainers = with maintainers; [ pSub ebzzry ];
 
     longDescription = ''
       The included tools are:
diff --git a/pkgs/os-specific/linux/fatrace/default.nix b/pkgs/os-specific/linux/fatrace/default.nix
index 5a34eee85e4b..09da891a175d 100644
--- a/pkgs/os-specific/linux/fatrace/default.nix
+++ b/pkgs/os-specific/linux/fatrace/default.nix
@@ -2,22 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "fatrace-${version}";
-  version = "0.11";
+  version = "0.12";
 
   src = fetchurl {
     url = "http://launchpad.net/fatrace/trunk/${version}/+download/${name}.tar.bz2";
-    sha256 = "1f77v222nlfbf8fv7d28cnpm7x8xz0mhxavgz19c2jc51pjlv84s";
+    sha256 = "0szn86rbbvmjcw192vjhhgc3v99s5lm2kg93gk1yzm6ay831grsh";
   };
 
-  patchFlags = "-p0";
-  patches = [
-    (fetchpatch {
-      sha256 = "0gym1zg42vb4czpbkz4shnc7z3lskn1ny6dpx10ykwf145xyf9m2";
-      name = "fatrace-fix-crash-when-using-p-option.patch";
-      url = "http://bazaar.launchpad.net/~pitti/fatrace/trunk/diff/67?context=3";
-    })
-  ];
-
   buildInputs = [ python3 which ];
 
   postPatch = ''
diff --git a/pkgs/os-specific/linux/firmware/zd1211/default.nix b/pkgs/os-specific/linux/firmware/zd1211/default.nix
index 19cbdecca0cc..2298cbd13c57 100644
--- a/pkgs/os-specific/linux/firmware/zd1211/default.nix
+++ b/pkgs/os-specific/linux/firmware/zd1211/default.nix
@@ -11,9 +11,12 @@ stdenv.mkDerivation rec {
     sha256 = "04ibs0qw8bh6h6zmm5iz6lddgknwhsjq8ib3gyck6a7psw83h7gi";
   };
 
-  buildPhase = "true";
+  dontBuild = true;
 
-  installPhase = "mkdir -p $out/lib/firmware/zd1211; cp * $out/lib/firmware/zd1211";
+  installPhase = ''
+    mkdir -p $out/lib/firmware/zd1211
+    cp * $out/lib/firmware/zd1211
+  '';
 
   meta = {
     description = "Firmware for the ZyDAS ZD1211(b) 802.11a/b/g USB WLAN chip";
diff --git a/pkgs/os-specific/linux/iw/default.nix b/pkgs/os-specific/linux/iw/default.nix
index 3cd2567d96f4..53aa15ec62e6 100644
--- a/pkgs/os-specific/linux/iw/default.nix
+++ b/pkgs/os-specific/linux/iw/default.nix
@@ -1,11 +1,11 @@
 {stdenv, fetchurl, libnl, pkgconfig}:
 
 stdenv.mkDerivation rec {
-  name = "iw-4.1";
+  name = "iw-4.3";
 
   src = fetchurl {
     url = "https://www.kernel.org/pub/software/network/iw/${name}.tar.xz";
-    sha256 = "0jx3s5wdvm2qxd3h883fnyjsb1c29qcsz1r19bc029g8v2nalr2i";
+    sha256 = "085jyvrxzarvn5jl0fk618jjxy50nqx7ifngszc4jxk6a4ddibd6";
   };
 
   buildInputs = [ libnl pkgconfig ];
diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix
index 6ba1234673ba..485cdd76f6ac 100644
--- a/pkgs/os-specific/linux/kernel/common-config.nix
+++ b/pkgs/os-specific/linux/kernel/common-config.nix
@@ -496,6 +496,9 @@ with stdenv.lib;
     BINFMT_SCRIPT y
   ''}
 
+  # For systemd-binfmt
+  BINFMT_MISC? y
+
   # Enable the 9P cache to speed up NixOS VM tests.
   9P_FSCACHE? y
   9P_FS_POSIX_ACL? y
diff --git a/pkgs/os-specific/linux/kernel/grsecurity-path-4.5.patch b/pkgs/os-specific/linux/kernel/grsecurity-path-4.5.patch
new file mode 100644
index 000000000000..e0430a69c950
--- /dev/null
+++ b/pkgs/os-specific/linux/kernel/grsecurity-path-4.5.patch
@@ -0,0 +1,14 @@
+diff -ru a/kernel/kmod.c b/kernel/kmod.c
+--- a/kernel/kmod.c	2016-04-21 17:06:09.882281660 +0200
++++ b/kernel/kmod.c	2016-04-21 17:08:17.458949309 +0200
+@@ -294,7 +294,9 @@
+ 	     strncmp(sub_info->path, "/lib/", 5) && strncmp(sub_info->path, "/lib64/", 7) &&
+ 	     strncmp(sub_info->path, "/usr/libexec/", 13) && strncmp(sub_info->path, "/usr/bin/", 9) &&
+ 	     strncmp(sub_info->path, "/usr/sbin/", 10) && strcmp(sub_info->path, "/bin/false") && 
+-	     strcmp(sub_info->path, "/usr/share/apport/apport")) || strstr(sub_info->path, "..")) {
++	     strcmp(sub_info->path, "/usr/share/apport/apport") &&
++       strncmp(sub_info->path, "/nix/store/", 11) &&
++       strncmp(sub_info->path, "/run/current-system/systemd/lib/", 32)) || strstr(sub_info->path, "..")) {
+ 		printk(KERN_ALERT "grsec: denied exec of usermode helper binary %.950s located outside of permitted system paths\n", sub_info->path);
+ 		retval = -EPERM;
+ 		goto out;
diff --git a/pkgs/os-specific/linux/kernel/linux-grsecurity-4.4.nix b/pkgs/os-specific/linux/kernel/linux-grsecurity-4.4.nix
index 36181308a8be..e51fe6423680 100644
--- a/pkgs/os-specific/linux/kernel/linux-grsecurity-4.4.nix
+++ b/pkgs/os-specific/linux/kernel/linux-grsecurity-4.4.nix
@@ -1,5 +1,7 @@
 { stdenv, fetchurl, perl, buildLinux, ... } @ args:
 
+throw "grsecurity stable is no longer supported; please update your configuration"
+
 import ./generic.nix (args // rec {
   version = "4.4.5";
   extraMeta.branch = "4.4";
diff --git a/pkgs/os-specific/linux/kernel/linux-grsecurity-4.1.nix b/pkgs/os-specific/linux/kernel/linux-grsecurity-4.5.nix
index 4359f4586c50..267d0d58de41 100644
--- a/pkgs/os-specific/linux/kernel/linux-grsecurity-4.1.nix
+++ b/pkgs/os-specific/linux/kernel/linux-grsecurity-4.5.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, perl, buildLinux, ... } @ args:
 
 import ./generic.nix (args // rec {
-  version = "4.1.7";
-  extraMeta.branch = "4.1";
+  version = "4.5.2";
+  extraMeta.branch = "4.5";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "0g1dnvak0pd03d4miy1025bw64wq71w29a058dzspdr6jcf9qwbn";
+    sha256 = "17r063zx880ka3ayv9cf1yjfilvxlifhja1rhw5z3w35hgdkj8z3";
   };
 
   kernelPatches = args.kernelPatches;
diff --git a/pkgs/os-specific/linux/kernel/linux-testing.nix b/pkgs/os-specific/linux/kernel/linux-testing.nix
index fb1bf73ad0ec..9a948a68c4cf 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.6-rc4";
-  modDirVersion = "4.6.0-rc4";
+  version = "4.6-rc6";
+  modDirVersion = "4.6.0-rc6";
   extraMeta.branch = "4.6";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/testing/linux-${version}.tar.xz";
-    sha256 = "1c6y6ry8nll8mab0xwwkmpwzp2k4rbp7jl3f4ihi7g2kv2678cbp";
+    sha256 = "040sk87zdgqsbma5sk1hk4graga8yafh4rn89vkznkwzdlwa3gyx";
   };
 
   features.iwlwifi = true;
diff --git a/pkgs/os-specific/linux/kernel/manual-config.nix b/pkgs/os-specific/linux/kernel/manual-config.nix
index ffe09cc2fee5..5f2bc2d2c55b 100644
--- a/pkgs/os-specific/linux/kernel/manual-config.nix
+++ b/pkgs/os-specific/linux/kernel/manual-config.nix
@@ -125,7 +125,7 @@ let
       postInstall = (optionalString installsFirmware ''
         mkdir -p $out/lib/firmware
       '') + (if (platform ? kernelDTB && platform.kernelDTB) then ''
- 	make $makeFlags "''${makeFlagsArray[@]}" dtbs
+        make $makeFlags "''${makeFlagsArray[@]}" dtbs
         mkdir -p $out/dtbs
         cp $buildRoot/arch/$karch/boot/dts/*.dtb $out/dtbs
       '' else "") + (if isModular then ''
@@ -190,6 +190,8 @@ let
           $installFlags "''${installFlagsArray[@]}"
       '');
 
+      requiredSystemFeatures = [ "big-parallel" ];
+
       meta = {
         description =
           "The Linux kernel" +
diff --git a/pkgs/os-specific/linux/kernel/patches.nix b/pkgs/os-specific/linux/kernel/patches.nix
index 707ebb544bf4..c4bc45133950 100644
--- a/pkgs/os-specific/linux/kernel/patches.nix
+++ b/pkgs/os-specific/linux/kernel/patches.nix
@@ -23,9 +23,7 @@ let
     { name = "grsecurity-${grversion}-${kversion}";
       inherit grversion kernel patches kversion revision;
       patch = fetchurl {
-        url = if branch == "stable"
-              then "https://github.com/kdave/grsecurity-patches/blob/master/grsecurity_patches/grsecurity-${grversion}-${kversion}-${revision}.patch?raw=true"
-              else "https://github.com/slashbeast/grsecurity-scrape/blob/master/${branch}/grsecurity-${grversion}-${kversion}-${revision}.patch?raw=true";
+        url = "https://grsecurity.net/${branch}/grsecurity-${grversion}-${kversion}-${revision}.patch";
         inherit sha256;
       };
       features.grsecurity = true;
@@ -96,14 +94,6 @@ rec {
       sha256    = "1sp1gwa7ahzflq7ayb51bg52abrn5zx1hb3pff3axpjqq7vfai6f";
     };
 
-  grsecurity_4_1 = grsecPatch
-    { kernel    = pkgs.grsecurity_base_linux_4_1;
-      patches   = [ grsecurity_fix_path_3_14 ];
-      kversion  = "4.1.7";
-      revision  = "201509201149";
-      sha256    = "1agv8c3c4vmh5algbzmrq2f6vwk72rikrlcbm4h7jbrb9js6fxk4";
-    };
-
   grsecurity_4_4 = grsecPatch
     { kernel    = pkgs.grsecurity_base_linux_4_4;
       patches   = [ grsecurity_fix_path_4_4 ];
@@ -112,7 +102,15 @@ rec {
       sha256    = "04k4nhshl6r5n41ha5620s7cd70dmmmvyf9mnn5359jr1720kxpf";
     };
 
-  grsecurity_latest = grsecurity_4_4;
+  grsecurity_4_5 = grsecPatch
+    { kernel    = pkgs.grsecurity_base_linux_4_5;
+      patches   = [ grsecurity_fix_path_4_5 ];
+      kversion  = "4.5.2";
+      revision  = "201604290633";
+      sha256    = "0qrs4fk6lyqngq3fnsmrv0y3yp1lrbiwadfc6v7hy4lyv77wz107";
+    };
+
+  grsecurity_latest = grsecurity_4_5;
 
   grsecurity_fix_path_3_14 =
     { name = "grsecurity-fix-path-3.14";
@@ -124,6 +122,11 @@ rec {
       patch = ./grsecurity-path-4.4.patch;
     };
 
+  grsecurity_fix_path_4_5 =
+    { name = "grsecurity-fix-path-4.5";
+      patch = ./grsecurity-path-4.5.patch;
+    };
+
   crc_regression =
     { name = "crc-backport-regression";
       patch = ./crc-regression.patch;
diff --git a/pkgs/os-specific/linux/libnl/default.nix b/pkgs/os-specific/linux/libnl/default.nix
index 1e1ed0a6112c..6e5c63a2722f 100644
--- a/pkgs/os-specific/linux/libnl/default.nix
+++ b/pkgs/os-specific/linux/libnl/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchFromGitHub, autoreconfHook, bison, flex, pkgconfig }:
 
-let version = "3.2.26"; in
+let version = "3.2.27"; in
 stdenv.mkDerivation {
   name = "libnl-${version}";
 
   src = fetchFromGitHub {
-    sha256 = "1cbqdhirn6hxmv8xkm8xp3n6ayyxw7sbi15fym167rdz0h9rkhmm";
-    rev = "libnl3_2_26";
+    sha256 = "1rc8plgl2ijq2pwlzinpfr06kiggjyx71r3lw505m6rvxvdac82r";
+    rev = "libnl3_2_27";
     repo = "libnl";
     owner = "thom311";
   };
diff --git a/pkgs/os-specific/linux/mdadm/default.nix b/pkgs/os-specific/linux/mdadm/default.nix
index 3fe9d462412c..3a04466ce41c 100644
--- a/pkgs/os-specific/linux/mdadm/default.nix
+++ b/pkgs/os-specific/linux/mdadm/default.nix
@@ -29,7 +29,9 @@ stdenv.mkDerivation rec {
   NIX_CFLAGS_COMPILE = "-std=gnu89";
 
   preConfigure = ''
-    sed -e 's@/lib/udev@''${out}/lib/udev@' -e 's@ -Werror @ @' -i Makefile
+    sed -e 's@/lib/udev@''${out}/lib/udev@' \
+        -e 's@ -Werror @ @' \
+        -e 's@/usr/sbin/sendmail@/var/setuid-wrappers/sendmail@' -i Makefile
   '';
 
   meta = {
diff --git a/pkgs/os-specific/linux/open-iscsi/default.nix b/pkgs/os-specific/linux/open-iscsi/default.nix
index d004328a10b9..480554313048 100644
--- a/pkgs/os-specific/linux/open-iscsi/default.nix
+++ b/pkgs/os-specific/linux/open-iscsi/default.nix
@@ -1,36 +1,36 @@
-{ stdenv, fetchurl, nukeReferences }:
-let
-  pname = "open-iscsi-2.0-873";
-in stdenv.mkDerivation {
-  name = pname;
-  outputs = [ "out" "iscsistart" ];
+{ stdenv, fetchFromGitHub, automake, autoconf, libtool, gettext, utillinux, openisns, openssl, kmod }:
+stdenv.mkDerivation rec {
+  name = "open-iscsi-${version}";
+  version = "2.0-873-${stdenv.lib.substring 0 7 src.rev}";
 
-  buildInputs = [ nukeReferences ];
+  buildInputs = [ automake autoconf libtool gettext utillinux openisns.lib openssl kmod ];
   
-  src = fetchurl {
-    urls = [
-      "http://www.open-iscsi.org/bits/${pname}.tar.gz"
-      "http://pkgs.fedoraproject.org/repo/pkgs/iscsi-initiator-utils/${pname}.tar.gz/8b8316d7c9469149a6cc6234478347f7/${pname}.tar.gz"
-    ];
-    sha256 = "1nbwmj48xzy45h52917jbvyqpsfg9zm49nm8941mc5x4gpwz5nbx";
+  src = fetchFromGitHub {
+    owner = "open-iscsi";
+    repo = "open-iscsi";
+    rev = "4c1f2d90ef1c73e33d9f1e4ae9c206ffe015a8f9";
+    sha256 = "0h030zk4zih3l8z5662b3kcifdxlakbwwkz1afb7yf0cicds7va8";
   };
   
   DESTDIR = "$(out)";
   
+  NIX_LDFLAGS = "-lkmod";
+  NIX_CFLAGS_COMPILE = "-DUSE_KMOD";
+
   preConfigure = ''
-    sed -i 's|/usr/|/|' Makefile
+    sed -i 's|/usr|/|' Makefile
   '';
   
   postInstall = ''
-    mkdir -pv $iscsistart/bin/
-    cp -v usr/iscsistart $iscsistart/bin/
-    nuke-refs $iscsistart/bin/iscsistart
+    cp usr/iscsistart $out/sbin/
+    $out/sbin/iscsistart -v
   '';
 
   meta = with stdenv.lib; {
     description = "A high performance, transport independent, multi-platform implementation of RFC3720";
     license = licenses.gpl2Plus;
-    homepage = http://www.open-iscsi.org;
+    homepage = http://www.open-iscsi.com;
     platforms = platforms.linux;
+    maintainers = with maintainers; [ cleverca22 ];
   };
 }
diff --git a/pkgs/os-specific/linux/open-isns/default.nix b/pkgs/os-specific/linux/open-isns/default.nix
new file mode 100644
index 000000000000..2ef08cd13ce2
--- /dev/null
+++ b/pkgs/os-specific/linux/open-isns/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, openssl, fetchFromGitHub }:
+stdenv.mkDerivation rec {
+  name = "open-isns-${version}";
+  version = "0.95";
+
+  src = fetchFromGitHub {
+    owner = "gonzoleeman";
+    repo = "open-isns";
+    rev = "v${version}";
+    sha256 = "1c2x3yf9806gbjsw4xi805rfhyxk353a3whqvpccz8dwas6jajwh";
+  };
+
+  propagatedBuildInputs = [ openssl ];
+  outputs = ["out" "lib" ];
+  outputInclude = "lib";
+
+  installFlags = "etcdir=$(out)/etc vardir=$(out)/var/lib/isns";
+  installTargets = "install install_hdrs install_lib";
+
+  meta = {
+    description = "iSNS server and client for Linux";
+    license = stdenv.lib.licenses.lgpl21;
+    homepage = https://github.com/gonzoleeman/open-isns;
+  };
+}
diff --git a/pkgs/os-specific/linux/sdparm/default.nix b/pkgs/os-specific/linux/sdparm/default.nix
index fab13a125c42..fb6cc4d9eac0 100644
--- a/pkgs/os-specific/linux/sdparm/default.nix
+++ b/pkgs/os-specific/linux/sdparm/default.nix
@@ -1,11 +1,12 @@
 {stdenv, fetchurl}:
 
-stdenv.mkDerivation {
-  name = "sdparm-1.09";
+stdenv.mkDerivation rec {
+  name = "sdparm-${version}";
+  version = "1.10";
 
   src = fetchurl {
-    url = http://sg.danny.cz/sg/p/sdparm-1.09.tar.xz;
-    sha256 = "0jakqyjwi72zqjzss04bally0xl0lc4710mx8da08vpmir1hfphg";
+    url = "http://sg.danny.cz/sg/p/${name}.tar.xz";
+    sha256 = "1jjq3lzgfy4r76rc26q02lv4wm5cb4dx5nh913h489zjrr4f3jbx";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/os-specific/windows/mingw-w64/default.nix b/pkgs/os-specific/windows/mingw-w64/default.nix
index bf15b208e1a7..a9df0d29e09f 100644
--- a/pkgs/os-specific/windows/mingw-w64/default.nix
+++ b/pkgs/os-specific/windows/mingw-w64/default.nix
@@ -4,14 +4,15 @@
 }:
 
 let
-  name = "mingw-w64-3.1.0";
+  version = "4.0.6";
+  name = "mingw-w64-${version}";
 in
-stdenv.mkDerivation (rec {
+stdenv.mkDerivation ({
   inherit name;
 
   src = fetchurl {
-    url = "mirror://sourceforge/mingw-w64/mingw-w64-v3.1.0.tar.bz2";
-    sha256 = "1lhpw381gc59w8b1r9zzdwa9cdi2wx6qx7s6rvajapmbw7ksgrzc";
+    url = "mirror://sourceforge/mingw-w64/mingw-w64-v${version}.tar.bz2";
+    sha256 = "0p01vm5kx1ixc08402z94g1alip4vx66gjpvyi9maqyqn2a76h0c";
   };
 } //
 (if onlyHeaders then {