summary refs log tree commit diff
path: root/pkgs/tools
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/tools')
-rw-r--r--pkgs/tools/X11/ckbcomp/default.nix4
-rw-r--r--pkgs/tools/X11/dex/default.nix23
-rw-r--r--pkgs/tools/X11/numlockx/default.nix22
-rw-r--r--pkgs/tools/X11/x2vnc/default.nix2
-rw-r--r--pkgs/tools/admin/google-cloud-sdk/default.nix6
-rw-r--r--pkgs/tools/audio/beets/default.nix12
-rw-r--r--pkgs/tools/audio/darkice/default.nix16
-rw-r--r--pkgs/tools/backup/borg/default.nix18
-rw-r--r--pkgs/tools/backup/duplicity/default.nix7
-rw-r--r--pkgs/tools/backup/httrack/default.nix4
-rw-r--r--pkgs/tools/backup/zbackup/default.nix17
-rw-r--r--pkgs/tools/bootloaders/refind/default.nix4
-rw-r--r--pkgs/tools/filesystems/btrfsprogs/default.nix4
-rw-r--r--pkgs/tools/filesystems/ceph/0.94.nix4
-rw-r--r--pkgs/tools/filesystems/ceph/dev.nix9
-rw-r--r--pkgs/tools/filesystems/ceph/generic.nix4
-rw-r--r--pkgs/tools/filesystems/ceph/git.nix6
-rw-r--r--pkgs/tools/filesystems/djmount/default.nix20
-rw-r--r--pkgs/tools/filesystems/duff/default.nix19
-rw-r--r--pkgs/tools/filesystems/fuse-7z-ng/default.nix34
-rw-r--r--pkgs/tools/filesystems/nixpart/0.4/blivet.nix13
-rw-r--r--pkgs/tools/filesystems/nixpart/0.4/blivet.patch39
-rw-r--r--pkgs/tools/filesystems/nixpart/0.4/default.nix6
-rw-r--r--pkgs/tools/filesystems/yandex-disk/default.nix6
-rw-r--r--pkgs/tools/graphics/dcraw/default.nix4
-rw-r--r--pkgs/tools/graphics/enblend-enfuse/default.nix10
-rw-r--r--pkgs/tools/graphics/graphviz/default.nix7
-rw-r--r--pkgs/tools/graphics/leela/default.nix23
-rw-r--r--pkgs/tools/graphics/logstalgia/default.nix6
-rw-r--r--pkgs/tools/graphics/sng/default.nix25
-rw-r--r--pkgs/tools/inputmethods/ibus/default.nix4
-rw-r--r--pkgs/tools/misc/colord-gtk/default.nix4
-rw-r--r--pkgs/tools/misc/fontforge/default.nix4
-rw-r--r--pkgs/tools/misc/goaccess/default.nix4
-rw-r--r--pkgs/tools/misc/gparted/default.nix16
-rw-r--r--pkgs/tools/misc/grub/2.0x.nix6
-rw-r--r--pkgs/tools/misc/grub/trusted.nix6
-rw-r--r--pkgs/tools/misc/grub4dos/default.nix35
-rw-r--r--pkgs/tools/misc/heatseeker/default.nix28
-rw-r--r--pkgs/tools/misc/less/default.nix4
-rw-r--r--pkgs/tools/misc/mates/default.nix24
-rw-r--r--pkgs/tools/misc/parallel/default.nix4
-rw-r--r--pkgs/tools/misc/picocom/default.nix4
-rw-r--r--pkgs/tools/misc/screen/default.nix6
-rw-r--r--pkgs/tools/misc/sdl-jstest/default.nix6
-rw-r--r--pkgs/tools/misc/svtplay-dl/default.nix4
-rw-r--r--pkgs/tools/misc/tlp/default.nix4
-rw-r--r--pkgs/tools/misc/tmate/default.nix4
-rw-r--r--pkgs/tools/misc/tmux/default.nix4
-rw-r--r--pkgs/tools/misc/units/default.nix9
-rw-r--r--pkgs/tools/misc/vdirsyncer/default.nix6
-rw-r--r--pkgs/tools/misc/yank/default.nix35
-rw-r--r--pkgs/tools/misc/youtube-dl/default.nix4
-rw-r--r--pkgs/tools/networking/aria2/default.nix6
-rw-r--r--pkgs/tools/networking/cutter/default.nix4
-rw-r--r--pkgs/tools/networking/i2p/default.nix4
-rw-r--r--pkgs/tools/networking/iftop/default.nix6
-rw-r--r--pkgs/tools/networking/netsniff-ng/default.nix6
-rw-r--r--pkgs/tools/networking/network-manager-applet/default.nix2
-rw-r--r--pkgs/tools/networking/network-manager/0.9.8.nix58
-rw-r--r--pkgs/tools/networking/network-manager/default.nix6
-rw-r--r--pkgs/tools/networking/network-manager/libnl-3.2.25.patch61
-rw-r--r--pkgs/tools/networking/network-manager/nm-platform.patch17
-rw-r--r--pkgs/tools/networking/network-manager/openconnect.nix4
-rw-r--r--pkgs/tools/networking/network-manager/openvpn.nix2
-rw-r--r--pkgs/tools/networking/network-manager/pptp.nix2
-rw-r--r--pkgs/tools/networking/network-manager/vpnc.nix2
-rw-r--r--pkgs/tools/networking/ntopng/0001-Undo-weird-modification-of-data_dir.patch26
-rw-r--r--pkgs/tools/networking/ntopng/0002-Remove-requirement-to-have-writeable-callback-dir.patch31
-rw-r--r--pkgs/tools/networking/ntopng/default.nix34
-rw-r--r--pkgs/tools/networking/nzbget/default.nix6
-rw-r--r--pkgs/tools/networking/openvpn/update-resolv-conf.nix2
-rw-r--r--pkgs/tools/networking/plasma-nm/default.nix5
-rw-r--r--pkgs/tools/networking/reaver-wps/default.nix1
-rw-r--r--pkgs/tools/networking/ripmime/default.nix4
-rw-r--r--pkgs/tools/networking/smbldaptools/default.nix2
-rw-r--r--pkgs/tools/networking/snabb/default.nix32
-rw-r--r--pkgs/tools/networking/tgt/default.nix7
-rw-r--r--pkgs/tools/networking/tinc/pre.nix6
-rw-r--r--pkgs/tools/networking/wavemon/default.nix57
-rw-r--r--pkgs/tools/networking/zerotierone/default.nix4
-rw-r--r--pkgs/tools/package-management/disnix/dysnomia/default.nix6
-rw-r--r--pkgs/tools/package-management/nix/default.nix23
-rw-r--r--pkgs/tools/security/chkrootkit/default.nix2
-rw-r--r--pkgs/tools/security/eid-mw/default.nix7
-rw-r--r--pkgs/tools/security/gnupg/21.nix4
-rw-r--r--pkgs/tools/security/gpgstats/default.nix30
-rw-r--r--pkgs/tools/security/john/default.nix55
-rw-r--r--pkgs/tools/security/mpw/default.nix42
-rw-r--r--pkgs/tools/security/nasty/default.nix32
-rw-r--r--pkgs/tools/security/sslscan/default.nix27
-rw-r--r--pkgs/tools/security/tor/torbrowser.nix16
-rw-r--r--pkgs/tools/system/ansible/default.nix6
-rw-r--r--pkgs/tools/system/collectd/default.nix14
-rw-r--r--pkgs/tools/system/dd_rescue/default.nix4
-rw-r--r--pkgs/tools/system/fakeroot/default.nix11
-rw-r--r--pkgs/tools/system/gptfdisk/default.nix20
-rw-r--r--pkgs/tools/typesetting/pdf2djvu/default.nix4
98 files changed, 974 insertions, 325 deletions
diff --git a/pkgs/tools/X11/ckbcomp/default.nix b/pkgs/tools/X11/ckbcomp/default.nix
index 6495b2de7f37..474486b6d6ce 100644
--- a/pkgs/tools/X11/ckbcomp/default.nix
+++ b/pkgs/tools/X11/ckbcomp/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   name = "ckbcomp-${version}";
-  version = "1.131";
+  version = "1.133";
 
   src = fetchgit {
     url = "git://anonscm.debian.org/d-i/console-setup.git";
     rev = "refs/tags/${version}";
-    sha256 = "0xmdnzhm1wsdpjb0wsi24xzk1xpv5h2bxgwm9f4awb7aj7wv59ma";
+    sha256 = "0za7y5v5rsl9da67rfiwzyfaia4xgnavqdadq0l6v8blc2kcsxr7";
   };
 
   buildInputs = [ perl ];
diff --git a/pkgs/tools/X11/dex/default.nix b/pkgs/tools/X11/dex/default.nix
new file mode 100644
index 000000000000..d147ef4a70c1
--- /dev/null
+++ b/pkgs/tools/X11/dex/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchFromGitHub, python3 }:
+
+stdenv.mkDerivation rec {
+  program = "dex";
+  name = "${program}-${version}";
+  version = "0.7";
+
+  src = fetchFromGitHub {
+    owner = "jceb";
+    repo = program;
+    rev = "v${version}";
+    sha256 = "041ms01snalapapaniabr92d8iim1qrxian626nharjmp2rd69v5";
+  };
+
+  propagatedBuildInputs = [ python3 ];
+  makeFlags = [ "PREFIX=$(out)" "VERSION=$(version)" ];
+
+  meta = {
+    description = "A program to generate and execute DesktopEntry files of the Application type";
+    homepage = https://github.com/jceb/dex;
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/tools/X11/numlockx/default.nix b/pkgs/tools/X11/numlockx/default.nix
new file mode 100644
index 000000000000..2c4807e4661f
--- /dev/null
+++ b/pkgs/tools/X11/numlockx/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, fetchFromGitHub, libX11, libXext, autoconf }:
+
+stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+  version = "1.2";
+  pname = "numlockx";
+
+  src = fetchFromGitHub {
+    owner = "rg3";
+    repo = pname;
+    rev = "9159fd3c5717c595dadfcb33b380a85c88406185";
+    sha256 = "1w49fayhwzn5rx0z1q2lrvm7z8jrd34lgb89p853a024bixc3cf2";
+  };
+
+  buildInputs = [ libX11 libXext autoconf ];
+
+  meta = with stdenv.lib; {
+    description = "Allows to start X with NumLock turned on";
+    license = licenses.mit;
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/tools/X11/x2vnc/default.nix b/pkgs/tools/X11/x2vnc/default.nix
index adc04b629444..b377369f464c 100644
--- a/pkgs/tools/X11/x2vnc/default.nix
+++ b/pkgs/tools/X11/x2vnc/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   preInstall = "mkdir -p $out";
 
   meta = {
-    homepahe = http://fredrik.hubbe.net/x2vnc.html;
+    homepage = http://fredrik.hubbe.net/x2vnc.html;
     description = "A program to control a remote VNC server";
   };
 }
diff --git a/pkgs/tools/admin/google-cloud-sdk/default.nix b/pkgs/tools/admin/google-cloud-sdk/default.nix
index c5fbf621e2de..75860bc27d34 100644
--- a/pkgs/tools/admin/google-cloud-sdk/default.nix
+++ b/pkgs/tools/admin/google-cloud-sdk/default.nix
@@ -1,12 +1,12 @@
 {stdenv, fetchurl, python27, python27Packages, makeWrapper}:
 
 stdenv.mkDerivation rec {
-  version = "0.9.74";
+  version = "0.9.82";
   name = "google-cloud-sdk-${version}";
 
   src = fetchurl {
-    url = "https://dl.google.com/dl/cloudsdk/release/packages/google-cloud-sdk-coretools-linux-static-20150817103450.tar.gz";
-    sha256 = "0qdry40xk23c6dvr6qzqn23bg8yfflm1m00gw1mqnpr4m1425vfg";
+    url = "https://dl.google.com/dl/cloudsdk/release/packages/google-cloud-sdk-coretools-linux-static-20151008123015.tar.gz";
+    sha256 = "11gnhgjj4y4dzi3wfdpnz918m7xraz1k3ady1d6y446hmc5q2512";
   };
 
   buildInputs = [python27 makeWrapper];
diff --git a/pkgs/tools/audio/beets/default.nix b/pkgs/tools/audio/beets/default.nix
index 51e81ef9193e..123b183f2d30 100644
--- a/pkgs/tools/audio/beets/default.nix
+++ b/pkgs/tools/audio/beets/default.nix
@@ -2,6 +2,7 @@
 , buildPythonPackage, pythonPackages, python, imagemagick
 
 , enableAcoustid   ? true
+, enableBadfiles   ? true, flac ? null, mp3val ? null
 , enableDiscogs    ? true
 , enableEchonest   ? true
 , enableFetchart   ? true
@@ -15,6 +16,7 @@
 }:
 
 assert enableAcoustid    -> pythonPackages.pyacoustid     != null;
+assert enableBadfiles    -> flac != null && mp3val != null;
 assert enableDiscogs     -> pythonPackages.discogs_client != null;
 assert enableEchonest    -> pythonPackages.pyechonest     != null;
 assert enableFetchart    -> pythonPackages.responses      != null;
@@ -28,6 +30,7 @@ with stdenv.lib;
 
 let
   optionalPlugins = {
+    badfiles = enableBadfiles;
     chroma = enableAcoustid;
     discogs = enableDiscogs;
     echonest = enableEchonest;
@@ -60,14 +63,14 @@ let
 
 in buildPythonPackage rec {
   name = "beets-${version}";
-  version = "1.3.14";
+  version = "1.3.15";
   namePrefix = "";
 
   src = fetchFromGitHub {
     owner = "sampsyo";
     repo = "beets";
     rev = "v${version}";
-    sha256 = "0bha101x1wdrl2hj31fhixm3hp7ahdm2064b9k5gg0ywm651128g";
+    sha256 = "17mbkilqqkxxa8ra8b4zlsax712jb0nfkvcx9iyq9303rqwv5sx2";
   };
 
   propagatedBuildInputs = [
@@ -111,6 +114,11 @@ in buildPythonPackage rec {
     sed -i -e '/^BASH_COMPLETION_PATHS *=/,/^])$/ {
       /^])$/i u"${completion}"
     }' beets/ui/commands.py
+  '' + optionalString enableBadfiles ''
+    sed -i -e '/self\.run_command(\[/ {
+      s,"flac","${flac}/bin/flac",
+      s,"mp3val","${mp3val}/bin/mp3val",
+    }' beetsplug/badfiles.py
   '';
 
   doCheck = true;
diff --git a/pkgs/tools/audio/darkice/default.nix b/pkgs/tools/audio/darkice/default.nix
index edc8fe2dffc8..e4fc129ef601 100644
--- a/pkgs/tools/audio/darkice/default.nix
+++ b/pkgs/tools/audio/darkice/default.nix
@@ -1,8 +1,14 @@
-{ stdenv, fetchurl, alsaLib, faac, libjack2, lame, libopus, libpulseaudio, libsamplerate, libvorbis }:
+{ stdenv, buildEnv, fetchurl, alsaLib, faac, libjack2, lame, libogg, libopus, libpulseaudio, libsamplerate, libvorbis }:
 
-with stdenv.lib;
+let
+  oggEnv = buildEnv {
+    name = "env-darkice-ogg";
+    paths = [
+      libopus libvorbis libogg
+    ];
+  };
 
-stdenv.mkDerivation rec {
+in stdenv.mkDerivation rec {
   name = "darkice-${version}";
   version = "1.2";
 
@@ -16,10 +22,10 @@ stdenv.mkDerivation rec {
     "--with-faac-prefix=${faac}"
     "--with-jack-prefix=${libjack2}"
     "--with-lame-prefix=${lame}"
-    "--with-opus-prefix=${libopus}"
+    "--with-opus-prefix=${oggEnv}"
     "--with-pulseaudio-prefix=${libpulseaudio}"
     "--with-samplerate-prefix=${libsamplerate}"	
-    "--with-vorbis-prefix=${libvorbis}"
+    "--with-vorbis-prefix=${oggEnv}"
 #    "--with-aacplus-prefix=${aacplus}" ### missing: aacplus
 #    "--with-twolame-prefix=${twolame}" ### missing: twolame
   ];
diff --git a/pkgs/tools/backup/borg/default.nix b/pkgs/tools/backup/borg/default.nix
index f9a949f4d3fc..df3523322e86 100644
--- a/pkgs/tools/backup/borg/default.nix
+++ b/pkgs/tools/backup/borg/default.nix
@@ -1,21 +1,23 @@
-{ stdenv, fetchzip, python3Packages, openssl, acl }:
+{ stdenv, fetchurl, python3Packages, openssl, acl, lz4 }:
 
 python3Packages.buildPythonPackage rec {
-  name = "borg-${version}";
-  version = "0.23.0";
+  name = "borgbackup-${version}";
+  version = "0.27.0";
   namePrefix = "";
 
-  src = fetchzip {
-    name = "${name}-src";
-    url = "https://github.com/borgbackup/borg/archive/${version}.tar.gz";
-    sha256 = "1ns00bhrh4zm1s70mm32gnahj7yh4jdpkb8ziarhvcnknz7aga67";
+  src = fetchurl {
+    url = "https://pypi.python.org/packages/source/b/borgbackup/borgbackup-${version}.tar.gz";
+    sha256 = "04iizidag4fwy6kx1747d633s1amr81slgk743qsfbwixaxfjq9b";
   };
 
   propagatedBuildInputs = with python3Packages;
-    [ cython msgpack openssl acl llfuse tox detox ];
+    [ cython msgpack openssl acl llfuse tox detox lz4 setuptools_scm ];
 
   preConfigure = ''
     export BORG_OPENSSL_PREFIX="${openssl}"
+    export BORG_LZ4_PREFIX="${lz4}"
+    # note: fix for this issue already upstream and probably in 0.27.1 (or whatever the next release is called)
+    substituteInPlace setup.py --replace "possible_openssl_prefixes.insert(0, os.environ.get('BORG_LZ4_PREFIX'))" "possible_lz4_prefixes.insert(0, os.environ.get('BORG_LZ4_PREFIX'))"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/backup/duplicity/default.nix b/pkgs/tools/backup/duplicity/default.nix
index 79f394c2aacc..556b96512009 100644
--- a/pkgs/tools/backup/duplicity/default.nix
+++ b/pkgs/tools/backup/duplicity/default.nix
@@ -1,5 +1,6 @@
 { stdenv, fetchurl, python, librsync, ncftp, gnupg, boto, makeWrapper
-, lockfile, setuptools }:
+, lockfile, setuptools, paramiko, pycrypto, ecdsa
+}:
 
 let
   version = "0.7.02";
@@ -15,10 +16,10 @@ stdenv.mkDerivation {
   installPhase = ''
     python setup.py install --prefix=$out
     wrapProgram $out/bin/duplicity \
-      --prefix PYTHONPATH : "$(toPythonPath $out):$(toPythonPath ${boto}):$(toPythonPath ${lockfile})" \
+      --prefix PYTHONPATH : "$(toPythonPath $out):$(toPythonPath ${pycrypto}):$(toPythonPath ${ecdsa}):$(toPythonPath ${paramiko}):$(toPythonPath ${boto}):$(toPythonPath ${lockfile})" \
       --prefix PATH : "${gnupg}/bin:${ncftp}/bin"
     wrapProgram $out/bin/rdiffdir \
-      --prefix PYTHONPATH : "$(toPythonPath $out):$(toPythonPath ${boto}):$(toPythonPath ${lockfile})" \
+      --prefix PYTHONPATH : "$(toPythonPath $out):$(toPythonPath ${pycrypto}):$(toPythonPath ${ecdsa}):$(toPythonPath ${paramiko}):$(toPythonPath ${boto}):$(toPythonPath ${lockfile})"
   '';
 
   buildInputs = [ python librsync makeWrapper setuptools ];
diff --git a/pkgs/tools/backup/httrack/default.nix b/pkgs/tools/backup/httrack/default.nix
index 573c4b58d60d..5667bb5e7483 100644
--- a/pkgs/tools/backup/httrack/default.nix
+++ b/pkgs/tools/backup/httrack/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, zlib, openssl }:
+{ stdenv, fetchurl, zlib, openssl, libiconv }:
 
 stdenv.mkDerivation rec {
   version = "3.48.21";
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
     sha256 = "10p4gf8y9h7mxkqlbs3hqgvmvbgvcbax8jp1whbw4yidwahn06w7";
   };
 
-  buildInputs = [ zlib openssl ];
+  buildInputs = [ zlib openssl libiconv ];
 
   meta = {
     homepage = "http://www.httrack.com";
diff --git a/pkgs/tools/backup/zbackup/default.nix b/pkgs/tools/backup/zbackup/default.nix
new file mode 100644
index 000000000000..25bd7236e681
--- /dev/null
+++ b/pkgs/tools/backup/zbackup/default.nix
@@ -0,0 +1,17 @@
+{ stdenv, fetchurl, cmake, zlib, openssl, protobuf, protobufc, lzo, libunwind } :
+stdenv.mkDerivation rec {
+  name = "zbackup-${version}";
+  version = "1.4.4";
+  src = fetchurl {
+    url = "https://github.com/zbackup/zbackup/archive/1.4.4.tar.gz";
+    sha256 = "11csla7n44lg7x6yqg9frb21vnkr8cvnh6ardibr3nj5l39crk7g";
+  };
+  buildInputs = [ zlib openssl protobuf lzo libunwind ];
+  nativeBuildInputs = [ cmake protobufc ];
+  meta = {
+    description = "A versatile deduplicating backup tool";
+    homepage = "http://zbackup.org/";
+    platforms = stdenv.lib.platforms.linux;
+    license = stdenv.lib.licenses.gpl2Plus;
+  };
+}
diff --git a/pkgs/tools/bootloaders/refind/default.nix b/pkgs/tools/bootloaders/refind/default.nix
index aa44c1924bf6..896a02be2b54 100644
--- a/pkgs/tools/bootloaders/refind/default.nix
+++ b/pkgs/tools/bootloaders/refind/default.nix
@@ -7,11 +7,11 @@ stdenv.mkDerivation rec {
 
   name = "refind-${version}";
   srcName = "refind-src-${version}";
-  version = "0.8.4";
+  version = "0.9.2";
 
   src = fetchurl {
     url = "http://downloads.sourceforge.net/project/refind/${version}/${srcName}.zip";
-    sha256 = "09g6x41fc7vvwv2y9kggjmazyhdvkn8qr02v769x33f20bfiz2zc";
+    sha256 = "0ai150rzx20sfl92j6y1p6qnyy0wbmazrlp2fg19acs98qyxl8lh";
   };
 
   buildInputs = [ unzip gnu-efi efibootmgr dosfstools imagemagick ];
diff --git a/pkgs/tools/filesystems/btrfsprogs/default.nix b/pkgs/tools/filesystems/btrfsprogs/default.nix
index d0fac3c93c91..4c328d70fd6d 100644
--- a/pkgs/tools/filesystems/btrfsprogs/default.nix
+++ b/pkgs/tools/filesystems/btrfsprogs/default.nix
@@ -2,14 +2,14 @@
 , asciidoc, xmlto, docbook_xml_dtd_45, docbook_xsl, libxslt
 }:
 
-let version = "4.2.1"; in
+let version = "4.2.2"; in
 
 stdenv.mkDerivation rec {
   name = "btrfs-progs-${version}";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/people/kdave/btrfs-progs/btrfs-progs-v${version}.tar.xz";
-    sha256 = "1nzyyfj84q98n7lf798k6695pbsd02hg2ffd1kgn8g3qcbwqhwar";
+    sha256 = "05hkj8fpgc2c9068f167hp8k8h28zadlh7krcz0qi8m3nbmy91sx";
   };
 
   buildInputs = [
diff --git a/pkgs/tools/filesystems/ceph/0.94.nix b/pkgs/tools/filesystems/ceph/0.94.nix
index f564e28c5a3b..301ff940d0c1 100644
--- a/pkgs/tools/filesystems/ceph/0.94.nix
+++ b/pkgs/tools/filesystems/ceph/0.94.nix
@@ -1,12 +1,12 @@
 { callPackage, fetchgit, ... } @ args:
 
 callPackage ./generic.nix (args // rec {
-  version = "0.94.3";
+  version = "0.94.4";
 
   src = fetchgit {
     url = "https://github.com/ceph/ceph.git";
     rev = "refs/tags/v${version}";
-    sha256 = "020khb9978wayi4jnx7f9g1fzfg3r2xn9qw66snpd3k8w2dmycxy";
+    sha256 = "0jp3c805bix88z3103kbrxv2yndpjcz3j5rp669f7qq46074zw6g";
   };
 
   patches = [ ./fix-pgrefdebugging.patch ];
diff --git a/pkgs/tools/filesystems/ceph/dev.nix b/pkgs/tools/filesystems/ceph/dev.nix
index 23757278b6f0..d092b4057e50 100644
--- a/pkgs/tools/filesystems/ceph/dev.nix
+++ b/pkgs/tools/filesystems/ceph/dev.nix
@@ -1,16 +1,13 @@
 { callPackage, fetchgit, ... } @ args:
 
 callPackage ./generic.nix (args // rec {
-  version = "9.0.3";
+  version = "9.1.0";
 
   src = fetchgit {
     url = "https://github.com/ceph/ceph.git";
     rev = "refs/tags/v${version}";
-    sha256 = "08ccy735srzmi505qlrpqdh5js40mpd5k1vdhnysknra0vqlpmdx";
+    sha256 = "1f8z0dxl945370ifz2ila9bc55d81h41bmdq241y9z4pvaynl6pz";
   };
 
-  patches = [
-    ./fix-pythonpath.patch
-    ./9.0.3-i686-fix.patch
-  ];
+  patches = [ ./fix-pythonpath.patch ];
 })
diff --git a/pkgs/tools/filesystems/ceph/generic.nix b/pkgs/tools/filesystems/ceph/generic.nix
index cfc020b107d2..8c169f131ed2 100644
--- a/pkgs/tools/filesystems/ceph/generic.nix
+++ b/pkgs/tools/filesystems/ceph/generic.nix
@@ -206,10 +206,10 @@ stdenv.mkDerivation {
   ] ++ optional (versionAtLeast version "9.0.2") [
     (mkWith   true                         "man-pages"            null)
     (mkWith   true                         "systemd-libexec-dir"  "\${out}/libexec")
-  ] ++ optional (versionOlder version "10.0.0") [
+  ] ++ optional (versionOlder version "9.1.0") [
     (mkWith   (optLibs3 != null)           "system-libs3"         null)
     (mkWith   true                         "rest-bench"           null)
-  ] ++ optional (versionAtLeast version "10.0.0") [
+  ] ++ optional (versionAtLeast version "9.1.0") [
     (mkWith   true                         "rgw-user"             "rgw")
     (mkWith   true                         "rgw-group"            "rgw")
     (mkWith   true                         "systemd-unit-dir"     "\${out}/etc/systemd/system")
diff --git a/pkgs/tools/filesystems/ceph/git.nix b/pkgs/tools/filesystems/ceph/git.nix
index 5b44a7d20f80..53fe43b93fad 100644
--- a/pkgs/tools/filesystems/ceph/git.nix
+++ b/pkgs/tools/filesystems/ceph/git.nix
@@ -1,12 +1,12 @@
 { callPackage, fetchgit, ... } @ args:
 
 callPackage ./generic.nix (args // rec {
-  version = "2015-09-22";
+  version = "2015-10-16";
 
   src = fetchgit {
     url = "git://github.com/ceph/ceph.git";
-    rev = "f1ead76f80cc3d078778080c35a6427256874062";
-    sha256 = "16c01b9v04slp80dlgw8n9a5ndjqxi6lv0pnklh1ykh4xb248gjh";
+    rev = "63d868106efd4d8aef71d498ba84cb2271a95a07";
+    sha256 = "1sx0j50zp0is34x7rpddiizspg2qfscyfwc5yrw3y6hiklpzhz96";
   };
 
   patches = [ ./fix-pythonpath.patch ];
diff --git a/pkgs/tools/filesystems/djmount/default.nix b/pkgs/tools/filesystems/djmount/default.nix
new file mode 100644
index 000000000000..7010a60bcbc0
--- /dev/null
+++ b/pkgs/tools/filesystems/djmount/default.nix
@@ -0,0 +1,20 @@
+{ stdenv, fetchurl, pkgconfig, fuse }:
+
+stdenv.mkDerivation rec {
+  name = "djmount-${version}";
+  version = "0.71";
+  src = fetchurl {
+    url = "mirror://sourceforge/djmount/${version}/${name}.tar.gz";
+    sha256 = "0kqf0cy3h4cfiy5a2sigmisx0lvvsi1n0fbyb9ll5gacmy1b8nxa";
+  };
+
+  buildInputs = [ pkgconfig fuse];
+
+  meta = {
+    homepage = http://djmount.sourceforge.net/;
+    description = "UPnP AV client, mounts as a Linux filesystem the media content of compatible UPnP AV devices";
+    platforms = stdenv.lib.platforms.linux;
+    maintainers = [ stdenv.lib.maintainers.jagajaga ];
+    license = stdenv.lib.licenses.gpl2;
+  };
+}
diff --git a/pkgs/tools/filesystems/duff/default.nix b/pkgs/tools/filesystems/duff/default.nix
index 310153341669..1c4d068c4c13 100644
--- a/pkgs/tools/filesystems/duff/default.nix
+++ b/pkgs/tools/filesystems/duff/default.nix
@@ -1,12 +1,14 @@
 { stdenv, fetchFromGitHub, autoreconfHook, gettext }:
 
-let version = "0.5.2"; in
+# The last release (0.5.2) is more than 2 years old and lacks features like -D,
+# limiting its usefulness. Upstream appears comatose if not dead.
+let version = "2014-07-03"; in
 stdenv.mkDerivation {
   name = "duff-${version}";
 
   src = fetchFromGitHub {
-    sha256 = "0yfm910wjj6z0f0cg68x59ykf4ql5m49apzy8sra00f8kv4lpn53";
-    rev = version;
+    sha256 = "1k2dx38pjzc5d624vw1cs5ipj9fprsm5vqv55agksc29m63lswnx";
+    rev = "f26d4837768b062a3f98fa075c791d9c8a0bb75c";
     repo = "duff";
     owner = "elmindreda";
   };
@@ -14,10 +16,6 @@ stdenv.mkDerivation {
   nativeBuildInputs = [ autoreconfHook gettext ];
 
   preAutoreconf = ''
-    # duff is currently badly packaged, requiring us to do extra work here that
-    # should be done upstream. If that is ever fixed, this entire phase can be
-    # removed along with all buildInputs.
-
     # gettexttize rightly refuses to run non-interactively:
     cp ${gettext}/bin/gettextize .
     substituteInPlace gettextize \
@@ -30,14 +28,15 @@ stdenv.mkDerivation {
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
+    inherit version;
     description = "Quickly find duplicate files";
-    homepage = http://duff.dreda.org/;
-    license = licenses.zlib;
     longDescription = ''
       Duff is a Unix command-line utility for quickly finding duplicates in
       a given set of files.
     '';
+    homepage = http://duff.dreda.org/;
+    license = licenses.zlib;
+    platforms = platforms.all;
     maintainers = with maintainers; [ nckx ];
-    platforms = with platforms; all;
   };
 }
diff --git a/pkgs/tools/filesystems/fuse-7z-ng/default.nix b/pkgs/tools/filesystems/fuse-7z-ng/default.nix
new file mode 100644
index 000000000000..4e8df9cacbe2
--- /dev/null
+++ b/pkgs/tools/filesystems/fuse-7z-ng/default.nix
@@ -0,0 +1,34 @@
+{ stdenv, fetchFromGitHub, fuse, p7zip, autoconf, automake, pkgconfig, makeWrapper }:
+
+stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+  pname = "fuse-7z-ng";
+  version = "git-2014-06-08";
+
+  src = fetchFromGitHub {
+    owner = "kedazo";
+    repo = pname;
+    rev = "eb5efb1f304c2b7bc2e0389ba06c9bf2ac4b932c";
+    sha256 = "17v1gcmg5q661b047zxjar735i4d3508dimw1x3z1pk4d1zjhp3x";
+  };
+
+  buildInputs = [ fuse autoconf automake pkgconfig makeWrapper ];
+
+  preConfigure = "./autogen.sh";
+
+  libs = stdenv.lib.makeLibraryPath [ p7zip ]; # 'cause 7z.so is loaded manually
+  postInstall = ''
+    wrapProgram $out/bin/${pname} --suffix LD_LIBRARY_PATH : "${libs}/p7zip"
+
+    mkdir -p $out/share/doc/${pname}
+    cp TODO README NEWS COPYING ChangeLog AUTHORS $out/share/doc/${pname}/
+  '';
+
+  meta = with stdenv.lib; {
+    inherit version;
+    inherit (src.homepage);
+    description = "A FUSE-based filesystem that uses the p7zip library";
+    platforms = platforms.linux;
+    license = licenses.gpl3Plus;
+  };
+}
diff --git a/pkgs/tools/filesystems/nixpart/0.4/blivet.nix b/pkgs/tools/filesystems/nixpart/0.4/blivet.nix
index fd7d59774b26..d4129f4d390a 100644
--- a/pkgs/tools/filesystems/nixpart/0.4/blivet.nix
+++ b/pkgs/tools/filesystems/nixpart/0.4/blivet.nix
@@ -1,8 +1,6 @@
 { stdenv, fetchurl, buildPythonPackage, pykickstart, pyparted, pyblock
 , libselinux, cryptsetup, multipath_tools, lsof, utillinux
 , useNixUdev ? true, udev ? null
-# This is only used when useNixUdev is false
-, udevSoMajor ? 1
 }:
 
 assert useNixUdev -> udev != null;
@@ -17,6 +15,8 @@ buildPythonPackage rec {
     sha256 = "1k3mws2q0ryb7422mml6idmaasz2i2v6ngyvg6d976dx090qnmci";
   };
 
+  patches = [ ./blivet.patch ];
+
   postPatch = ''
     sed -i -e 's|"multipath"|"${multipath_tools}/sbin/multipath"|' \
       blivet/devicelibs/mpath.py blivet/devices.py
@@ -27,16 +27,11 @@ buildPythonPackage rec {
     sed -i -e 's|"lsof"|"${lsof}/bin/lsof"|' blivet/formats/fs.py
     sed -i -r -e 's|"(u?mount)"|"${utillinux}/bin/\1"|' blivet/util.py
     sed -i '/pvscan/s/, *"--cache"//' blivet/devicelibs/lvm.py
-  '' + (if useNixUdev then ''
+  '' + stdenv.lib.optionalString useNixUdev ''
     sed -i -e '/find_library/,/find_library/ {
       c libudev = "${udev}/lib/libudev.so.1"
     }' blivet/pyudev.py
-  '' else ''
-    sed -i \
-      -e '/^somajor *=/s/=.*/= ${toString udevSoMajor}/p' \
-      -e 's|common =.*|& + ["/lib/x86_64-linux-gnu", "/lib/i686-linux-gnu"]|' \
-      blivet/pyudev.py
-  '');
+  '';
 
   propagatedBuildInputs = [
     pykickstart pyparted pyblock libselinux cryptsetup
diff --git a/pkgs/tools/filesystems/nixpart/0.4/blivet.patch b/pkgs/tools/filesystems/nixpart/0.4/blivet.patch
new file mode 100644
index 000000000000..1758d18442d2
--- /dev/null
+++ b/pkgs/tools/filesystems/nixpart/0.4/blivet.patch
@@ -0,0 +1,39 @@
+diff --git a/blivet/pyudev.py b/blivet/pyudev.py
+index 705b93d..7268d71 100644
+--- a/blivet/pyudev.py
++++ b/blivet/pyudev.py
+@@ -7,9 +7,9 @@ from ctypes import *
+ 
+ 
+ # XXX this one may need some tweaking...
+-def find_library(name, somajor=0):
++def find_library(name):
+     env = os.environ.get("LD_LIBRARY_PATH")
+-    common = ["/lib64", "/lib"]
++    common = ["/lib64", "/lib", "/lib/x86_64-linux-gnu", "/lib/i686-linux-gnu"]
+ 
+     if env:
+         libdirs = env.split(":") + common
+@@ -19,7 +19,7 @@ def find_library(name, somajor=0):
+     libdirs = filter(os.path.isdir, libdirs)
+ 
+     for dir in libdirs:
+-        files = fnmatch.filter(os.listdir(dir), "lib%s.so.%d" % (name, somajor))
++        files = fnmatch.filter(os.listdir(dir), "lib%s.so.*" % name)
+         files = [os.path.join(dir, file) for file in files]
+ 
+         if files:
+@@ -32,11 +32,10 @@ def find_library(name, somajor=0):
+ 
+ # find the udev library
+ name = "udev"
+-somajor = 1
+-libudev = find_library(name=name, somajor=somajor)
++libudev = find_library(name)
+ 
+ if not libudev or not os.path.exists(libudev):
+-    raise ImportError, "No library named %s.%d" % (name, somajor)
++    raise ImportError, "No library named lib%s.so" % name
+ 
+ # load the udev library
+ libudev = CDLL(libudev)
diff --git a/pkgs/tools/filesystems/nixpart/0.4/default.nix b/pkgs/tools/filesystems/nixpart/0.4/default.nix
index 9ea2f9bfdc77..01a3caafc5dd 100644
--- a/pkgs/tools/filesystems/nixpart/0.4/default.nix
+++ b/pkgs/tools/filesystems/nixpart/0.4/default.nix
@@ -1,6 +1,8 @@
 { stdenv, fetchurl, python, buildPythonPackage
 # Propagated to blivet
-, useNixUdev ? true, udevSoMajor ? null
+, useNixUdev ? true
+# No longer needed, but kept for backwards-compatibility with older NixOps.
+, udevSoMajor ? null
 # Propagated dependencies
 , pkgs, urlgrabber
 }:
@@ -9,7 +11,7 @@ let
   blivet = import ./blivet.nix {
     inherit stdenv fetchurl buildPythonPackage;
     inherit pykickstart pyparted pyblock cryptsetup multipath_tools;
-    inherit useNixUdev udevSoMajor;
+    inherit useNixUdev;
     inherit (pkgs) lsof utillinux udev;
     libselinux = pkgs.libselinux.override { enablePython = true; };
   };
diff --git a/pkgs/tools/filesystems/yandex-disk/default.nix b/pkgs/tools/filesystems/yandex-disk/default.nix
index 97d70d1a45b9..42308947c07b 100644
--- a/pkgs/tools/filesystems/yandex-disk/default.nix
+++ b/pkgs/tools/filesystems/yandex-disk/default.nix
@@ -6,18 +6,18 @@ let
   p = if stdenv.is64bit then {
       arch = "x86_64";
       gcclib = "${stdenv.cc.cc}/lib64";
-      sha256 = "08mmjz061b0hrqp8zg31w089n5bk3sq4r3w84zr33d8pnvkgq2wk";
+      sha256 = "1dr976z0zgg5jk477hrnfmpcx4llh5xi1493k0pkp28m6ypbxy2q";
     }
     else {
       arch = "i386";
       gcclib = "${stdenv.cc.cc}/lib";
-      sha256 = "1zb6cnldd43nr4k2qg9hnrkgj0iik2gpxqrjypbhwv75hnvjma93";
+      sha256 = "01v0caf194y6yb0zc0d3ywx3y0rwb7sxkav4ickd4l968jpi8p91";
     };
 in 
 stdenv.mkDerivation rec {
 
   name = "yandex-disk-${version}";
-  version = "0.1.5.905";
+  version = "0.1.5.940";
 
   src = fetchurl {
     url = "http://repo.yandex.ru/yandex-disk/rpm/stable/${p.arch}/${name}-1.fedora.${p.arch}.rpm";
diff --git a/pkgs/tools/graphics/dcraw/default.nix b/pkgs/tools/graphics/dcraw/default.nix
index 5dcac6a02159..b8cdb64da878 100644
--- a/pkgs/tools/graphics/dcraw/default.nix
+++ b/pkgs/tools/graphics/dcraw/default.nix
@@ -1,11 +1,11 @@
 {stdenv, fetchurl, libjpeg, lcms2, gettext, jasper }:
 
 stdenv.mkDerivation rec {
-  name = "dcraw-9.22";
+  name = "dcraw-9.26.0";
 
   src = fetchurl {
     url = "http://www.cybercom.net/~dcoffin/dcraw/archive/${name}.tar.gz";
-    sha256 = "00dz85fr5r9k3nlwdbdi30fpqr8wihamzpyair7l7zk0vkrax402";
+    sha256 = "18zvzaxjq1yaj90xm8bwb30lqbjyjyp002bp175dayh3kr91syc5";
   };
 
   buildInputs = [ libjpeg lcms2 gettext jasper ];
diff --git a/pkgs/tools/graphics/enblend-enfuse/default.nix b/pkgs/tools/graphics/enblend-enfuse/default.nix
index 6b65d3df0d3f..c967b73001c7 100644
--- a/pkgs/tools/graphics/enblend-enfuse/default.nix
+++ b/pkgs/tools/graphics/enblend-enfuse/default.nix
@@ -1,22 +1,24 @@
 { stdenv, fetchurl
 , boost, freeglut, glew, gsl, lcms2, libpng, libtiff, libxmi, mesa, vigra
-, pkgconfig, perl }:
+, help2man, pkgconfig, perl }:
 
+let version = "4.1.4"; in
 stdenv.mkDerivation rec {
-  name = "enblend-enfuse-4.1.3";
+  name = "enblend-enfuse-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/enblend/${name}.tar.gz";
-    sha256 = "1b7r1nnwaind0344ckwggy0ghl0ipbk9jzylsxcjfl05rnasw00w";
+    sha256 = "0208x01i129hqylmy6jh3krwdac47mx6fi8xccjm9h35c18c7xl5";
   };
 
   buildInputs = [ boost freeglut glew gsl lcms2 libpng libtiff libxmi mesa vigra ];
 
-  nativeBuildInputs = [ perl pkgconfig ];
+  nativeBuildInputs = [ help2man perl pkgconfig ];
 
   enableParallelBuilding = true;
 
   meta = {
+    inherit version;
     homepage = http://enblend.sourceforge.net/;
     description = "Blends away the seams in a panoramic image mosaic using a multiresolution spline";
     license = stdenv.lib.licenses.gpl2;
diff --git a/pkgs/tools/graphics/graphviz/default.nix b/pkgs/tools/graphics/graphviz/default.nix
index fbf1c114d0a6..5635e3a69ff7 100644
--- a/pkgs/tools/graphics/graphviz/default.nix
+++ b/pkgs/tools/graphics/graphviz/default.nix
@@ -38,6 +38,13 @@ stdenv.mkDerivation rec {
     ]
     ++ stdenv.lib.optional (xorg == null) "--without-x";
 
+  postPatch = stdenv.lib.optionalString stdenv.isDarwin ''
+    for foo in cmd/dot/Makefile.in cmd/edgepaint/Makefile.in \
+                    cmd/mingle/Makefile.in plugin/gdiplus/Makefile.in; do
+      substituteInPlace "$foo" --replace "-lstdc++" "-lc++"
+    done
+  '';
+
   preBuild = ''
     sed -e 's@am__append_5 *=.*@am_append_5 =@' -i lib/gvc/Makefile
   '';
diff --git a/pkgs/tools/graphics/leela/default.nix b/pkgs/tools/graphics/leela/default.nix
new file mode 100644
index 000000000000..fa151420ebb5
--- /dev/null
+++ b/pkgs/tools/graphics/leela/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchFromGitHub, pkgconfig, poppler }:
+
+stdenv.mkDerivation {
+  name = "leela-12.fe7a35a";
+
+  src = fetchFromGitHub {
+    owner = "TrilbyWhite";
+    repo = "Leela";
+    rev = "576a60185b191d3a3030fef10492fe32d2125563";
+    sha256 = "1k6n758r9dhjmc1pnpk6qzpg0q7pkq2hf18z3b0s2z198jpkg9s3";
+  };
+
+  buildInputs = [ pkgconfig poppler ];
+
+  installFlags = [ "PREFIX=$(out)" "MANDIR=$(out)/share/man" ];
+
+  meta = {
+    description = "CLI frontend to the poppler-glib libary of PDF tools";
+    homepage = https://github.com/TrilbyWhite/Leela;
+    license = stdenv.lib.licenses.gpl3;
+    maintainers = [ stdenv.lib.maintainers.puffnfresh ];
+  };
+}
diff --git a/pkgs/tools/graphics/logstalgia/default.nix b/pkgs/tools/graphics/logstalgia/default.nix
index ef825bcca454..0deb24ed56f9 100644
--- a/pkgs/tools/graphics/logstalgia/default.nix
+++ b/pkgs/tools/graphics/logstalgia/default.nix
@@ -3,18 +3,16 @@
 
 stdenv.mkDerivation rec {
   name = "logstalgia-${version}";
-  version = "1.0.6";
+  version = "1.0.7";
 
   src = fetchurl {
     url = "https://github.com/acaudwell/Logstalgia/releases/download/${name}/${name}.tar.gz";
-    sha256 = "0d2zhn0q26rv2nb3hdbg0mb69l66g8pkys5is6rb0r6f5is986x8";
+    sha256 = "1qghz1j3jmfj093br2hfyibayg3fmhg8fvp5ix9n9rbvzc1zslsm";
   };
 
   buildInputs = [ glew SDL ftgl pkgconfig libpng libjpeg pcre SDL_image mesa boost
                   glm ];
 
-  NIX_CFLAGS_COMPILE = "-std=c++11"; # fix build with glm >= 0.9.6.0
-
   meta = with stdenv.lib; {
     homepage = http://code.google.com/p/logstalgia;
     description = "Website traffic visualization tool";
diff --git a/pkgs/tools/graphics/sng/default.nix b/pkgs/tools/graphics/sng/default.nix
new file mode 100644
index 000000000000..d9b06c2adf35
--- /dev/null
+++ b/pkgs/tools/graphics/sng/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchurl, libpng, netpbm }:
+
+stdenv.mkDerivation rec {
+  name = "sng-${version}";
+  version = "1.0.6";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/sng/sng-${version}.tar.gz";
+    sha256 = "04ym62qh8blsqigm3kr1shj9pn62y373wdaavk74rzwjzlhwhmq6";
+  };
+
+  buildInputs = [ libpng ];
+
+  configureFlags = [
+    "--with-rgbtxt=${netpbm}/share/netpbm/misc/rgb.txt"
+  ];
+
+  meta = with stdenv.lib; {
+    description = "Minilanguage designed to represent the entire contents of a PNG file in an editable form";
+    homepage = http://sng.sourceforge.net/;
+    license = licenses.zlib;
+    maintainers = [ maintainers.dezgeg ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/tools/inputmethods/ibus/default.nix b/pkgs/tools/inputmethods/ibus/default.nix
index 97a8c3e7d1c7..3e17e721f7be 100644
--- a/pkgs/tools/inputmethods/ibus/default.nix
+++ b/pkgs/tools/inputmethods/ibus/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   name = "ibus-${version}";
-  version = "1.5.10";
+  version = "1.5.11";
 
   src = fetchurl {
     url = "https://github.com/ibus/ibus/releases/download/${version}/${name}.tar.gz";
-    sha256 = "152mdzi9hr246spnn7bkb4gy16x30082xwq460gmm1q2cs0bf08x";
+    sha256 = "1g26llizd26h9sfz4xdq8krhz19hn08pirvfbkk3g89ri8lmm6a9";
   };
 
   configureFlags = "--disable-gconf --enable-dconf --disable-memconf --enable-ui --enable-python-library";
diff --git a/pkgs/tools/misc/colord-gtk/default.nix b/pkgs/tools/misc/colord-gtk/default.nix
index f46bf3ef7a48..96022d01ef7d 100644
--- a/pkgs/tools/misc/colord-gtk/default.nix
+++ b/pkgs/tools/misc/colord-gtk/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, colord, intltool, glib, gtk3, pkgconfig, lcms2 }:
 
 stdenv.mkDerivation rec {
-  name = "colord-gtk-0.1.25";
+  name = "colord-gtk-0.1.26";
 
   src = fetchurl {
     url = "http://www.freedesktop.org/software/colord/releases/${name}.tar.xz";
-    sha256 = "02hblw9rw24dhj0wqfw86pfq4y4icb6iaa92308a9jwa6k2923xx";
+    sha256 = "0i9y3bb5apj6a0f8cx36l6mjzs7xc0k7nf0magmf58vy2mzhpl18";
   };
 
   buildInputs = [ intltool colord glib gtk3 pkgconfig lcms2 ];
diff --git a/pkgs/tools/misc/fontforge/default.nix b/pkgs/tools/misc/fontforge/default.nix
index 886495a27ebb..3ecb886419f2 100644
--- a/pkgs/tools/misc/fontforge/default.nix
+++ b/pkgs/tools/misc/fontforge/default.nix
@@ -6,7 +6,7 @@
 }:
 
 let
-  version = "20141230"; # also tagged v2.1.0
+  version = "20150824"; # also tagged v2.1.0
 in
 
 stdenv.mkDerivation {
@@ -14,7 +14,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "https://github.com/fontforge/fontforge/archive/${version}.tar.gz";
-    sha256 = "1xfi13knn1x7hd7pvr6090qz6qfa5znbs85rg1p5mfj377z2h8rb";
+    sha256 = "09zzg166lw5ldbzsa2j9x7hizn6y3ld1kf4abfkiy301rdqj9ar8";
   };
 
   patches = [(fetchpatch {
diff --git a/pkgs/tools/misc/goaccess/default.nix b/pkgs/tools/misc/goaccess/default.nix
index e73bc487f211..8ce93f6bb664 100644
--- a/pkgs/tools/misc/goaccess/default.nix
+++ b/pkgs/tools/misc/goaccess/default.nix
@@ -1,10 +1,10 @@
 { stdenv, fetchurl, pkgconfig, geoip, ncurses, glib }:
 
 let
-  version = "0.9";
+  version = "0.9.4";
   mainSrc = fetchurl {
     url = "http://tar.goaccess.io/goaccess-${version}.tar.gz";
-    sha256 = "1yi7bxrmhvd11ha405bqpz7q442l9bnnx317iy22xzxjl96frn29";
+    sha256 = "1kn5yvgzrzjlxd0zhr2d2gbjdin9j9vmfbk5gkrwqc4kd9zicvla";
   };
 in
 
diff --git a/pkgs/tools/misc/gparted/default.nix b/pkgs/tools/misc/gparted/default.nix
index 2b9c2297af28..01154d01e7c8 100644
--- a/pkgs/tools/misc/gparted/default.nix
+++ b/pkgs/tools/misc/gparted/default.nix
@@ -1,19 +1,25 @@
-{ stdenv, fetchurl, parted, gtk, glib, intltool, gettext, libuuid
-, pkgconfig, gtkmm, libxml2, hicolor_icon_theme
+{ stdenv, fetchurl, intltool, gettext, makeWrapper
+, parted, gtk, glib, libuuid, pkgconfig, gtkmm, libxml2, hicolor_icon_theme
+, utillinux
 }:
 
 stdenv.mkDerivation rec {
-  name = "gparted-0.23.0";
+  name = "gparted-0.24.0";
 
   src = fetchurl {
-    sha256 = "0m57bni3nkbbqq920ydzvasy2qc5j6w6bdssyn12jk4157gxvlbz";
+    sha256 = "0q6d1s9f4qgdivj4vm9w87qmdfyq8s65jzkhv05rp9cl72rqlf82";
     url = "mirror://sourceforge/gparted/${name}.tar.bz2";
   };
 
   configureFlags = "--disable-doc";
 
   buildInputs = [ parted gtk glib libuuid gtkmm libxml2 hicolor_icon_theme ];
-  nativeBuildInputs = [ intltool gettext pkgconfig ];
+  nativeBuildInputs = [ intltool gettext makeWrapper pkgconfig ];
+
+  postInstall = ''
+    wrapProgram $out/sbin/gpartedbin \
+      --prefix PATH : "${utillinux}/bin"
+  '';
 
   meta = with stdenv.lib; {
     description = "Graphical disk partitioning tool";
diff --git a/pkgs/tools/misc/grub/2.0x.nix b/pkgs/tools/misc/grub/2.0x.nix
index 2880666e8db2..84a021d2b32d 100644
--- a/pkgs/tools/misc/grub/2.0x.nix
+++ b/pkgs/tools/misc/grub/2.0x.nix
@@ -20,7 +20,7 @@ let
   canEfi = any (system: stdenv.system == system) (mapAttrsToList (name: _: name) efiSystems);
   inPCSystems = any (system: stdenv.system == system) (mapAttrsToList (name: _: name) pcSystems);
 
-  version = "2.x-2015-07-27";
+  version = "2.x-2015-10-13";
 
   unifont_bdf = fetchurl {
     url = "http://unifoundry.com/unifont-5.1.20080820.bdf.gz";
@@ -43,8 +43,8 @@ stdenv.mkDerivation rec {
 
   src = fetchFromSavannah {
     repo = "grub";
-    rev = "72fc110d95129410443b898e931ff7a1db75312e";
-    sha256 = "0l2hws8h1jhww5s0m8pkwdggacpqb7fvz2jx83syg7ynczpgzbxs";
+    rev = "a3645c1240a0b89c3b51593bd3efc14fe66d67cf";
+    sha256 = "0vxc2hi4qgv3hm90q6m3s5a9xi3j40fkc0wqv09hfkw25rabqk60";
   };
 
   nativeBuildInputs = [ autogen flex bison python autoconf automake ];
diff --git a/pkgs/tools/misc/grub/trusted.nix b/pkgs/tools/misc/grub/trusted.nix
index 315c7145cbe3..87c551db4e38 100644
--- a/pkgs/tools/misc/grub/trusted.nix
+++ b/pkgs/tools/misc/grub/trusted.nix
@@ -11,7 +11,7 @@ let
 
   inPCSystems = any (system: stdenv.system == system) (mapAttrsToList (name: _: name) pcSystems);
 
-  version = "1.2.0";
+  version = "1.2.1";
 
   unifont_bdf = fetchurl {
     url = "http://unifoundry.com/unifont-5.1.20080820.bdf.gz";
@@ -32,8 +32,8 @@ stdenv.mkDerivation rec {
 
   src = fetchgit {
     url = "https://github.com/Sirrix-AG/TrustedGRUB2";
-    rev = "1ff54a5fbe02ea01df5a7de59b1e0201e08d4f76";
-    sha256 = "8c17bd7e14dd96ae9c4e98723f4e18ec6b21d45ac486ecf771447649829d0b34";
+    rev = "ab483d389bda3115ca0ae4202fd71f2e4a31ad41";
+    sha256 = "4b715837f8632278720d8b29aec06332f5302c6ba78183ced5f48d3c376d89c0";
   };
 
   nativeBuildInputs = [ autogen flex bison python autoconf automake ];
diff --git a/pkgs/tools/misc/grub4dos/default.nix b/pkgs/tools/misc/grub4dos/default.nix
new file mode 100644
index 000000000000..18464574d440
--- /dev/null
+++ b/pkgs/tools/misc/grub4dos/default.nix
@@ -0,0 +1,35 @@
+{ stdenv, fetchurl, unzip, nasm }:
+
+let arch =
+  if stdenv.isi686 then "i386"
+  else if stdenv.isx86_64 then "x86_64"
+  else abort "Unknown architecture";
+in stdenv.mkDerivation {
+  name = "grub4dos-0.4.6a";
+
+  src = fetchurl {
+    url = https://github.com/chenall/grub4dos/archive/e855b293432bd4d155e42d48356f9aa1974ec385.zip;
+    sha256 = "1vihzllsdshd5dyr7i7dp5ragyg77gg8r279pz954p7lkcda4kx7";
+  };
+
+  nativeBuildInputs = [ unzip nasm ];
+
+  configureFlags = [ "--host=${arch}-pc-linux-gnu" ];
+
+  postInstall = ''
+    mv $out/lib/grub/${arch}-pc/* $out/lib/grub
+    rmdir $out/lib/grub/${arch}-pc
+    chmod +x $out/lib/grub/bootlace.com
+  '';
+
+  dontStrip = true;
+  dontPatchELF = true;
+
+  meta = with stdenv.lib; {
+    homepage = http://grub4dos.chenall.net/;
+    description = "GRUB for DOS is the dos extension of GRUB";
+    maintainers = with maintainers; [ abbradar ];
+    platforms = platforms.all;
+    license = licenses.gpl2;
+  };
+}
diff --git a/pkgs/tools/misc/heatseeker/default.nix b/pkgs/tools/misc/heatseeker/default.nix
new file mode 100644
index 000000000000..0d85554c347d
--- /dev/null
+++ b/pkgs/tools/misc/heatseeker/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchFromGitHub, rustPlatform }:
+
+with rustPlatform;
+
+buildRustPackage rec {
+  name = "heatseeker-${version}";
+  version = "1.3.0";
+
+  depsSha256 = "03jap7myf85xgx9270sws8x57nl04a1wx8szrk9qx24s9vnnjcnh";
+
+  src = fetchFromGitHub {
+    owner = "rschmitt";
+    repo = "heatseeker";
+    rev = "v${version}";
+    sha256 = "1xdvwgmh9lwv82hv1qg82bjv2iplnvva6lzbg7dyhbszhv7rhkbl";
+  };
+  
+  # some tests require a tty, this variable turns them off for Travis CI,
+  # which we can also make use of
+  TRAVIS= "true";
+
+  meta = with stdenv.lib; {
+    description = "A general-purpose fuzzy selector";
+    homepage = https://github.com/rschmitt/heatseeker;
+    license = stdenv.lib.licenses.mit;
+    maintainers = [ maintainers.michaelpj ];
+  };
+}
diff --git a/pkgs/tools/misc/less/default.nix b/pkgs/tools/misc/less/default.nix
index 8c0f0e96d21e..af8a0dd7d81b 100644
--- a/pkgs/tools/misc/less/default.nix
+++ b/pkgs/tools/misc/less/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, ncurses }:
 
 stdenv.mkDerivation rec {
-  name = "less-475";
+  name = "less-481";
 
   src = fetchurl {
     url = "http://www.greenwoodsoftware.com/less/${name}.tar.gz";
-    sha256 = "16703m6g5l97af3jwpypgac7gpmh3yjkdpqygf5a2scfip0hxm2g";
+    sha256 = "19fxj0h10y5bhr3a1xa7kqvnwl44db3sdypz8jxl1q79yln8z8rz";
   };
 
   # Look for ‘sysless’ in /etc.
diff --git a/pkgs/tools/misc/mates/default.nix b/pkgs/tools/misc/mates/default.nix
new file mode 100644
index 000000000000..952bd1a2b7d9
--- /dev/null
+++ b/pkgs/tools/misc/mates/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchFromGitHub, rustPlatform }:
+
+with rustPlatform;
+
+buildRustPackage rec {
+  name = "mates-${version}";
+  version = "0.1.0";
+
+  depsSha256 = "03mqw9zs3hbsgz8m3qbrbbcg2q47nldfx280dyv0ivfksnlc7lyc";
+
+  src = fetchFromGitHub {
+    owner = "untitaker";
+    repo = "mates";
+    rev = "${version}";
+    sha256 = "00dpl7vh2byb4v94zxjbcqj7jnq65vcbrlpkxrrii0ip13dr69pw";
+  };
+
+  meta = with stdenv.lib; {
+    description = "Very simple commandline addressbook";
+    homepage = https://github.com/untitaker/mates.rs;
+    license = stdenv.lib.licenses.mit;
+    maintainers = [ maintainers.DamienCassou ];
+  };
+}
diff --git a/pkgs/tools/misc/parallel/default.nix b/pkgs/tools/misc/parallel/default.nix
index 1d3d14d7e234..c44aabbb416a 100644
--- a/pkgs/tools/misc/parallel/default.nix
+++ b/pkgs/tools/misc/parallel/default.nix
@@ -1,11 +1,11 @@
 { fetchurl, stdenv, perl, makeWrapper, procps }:
 
 stdenv.mkDerivation rec {
-  name = "parallel-20150822";
+  name = "parallel-20150922";
 
   src = fetchurl {
     url = "mirror://gnu/parallel/${name}.tar.bz2";
-    sha256 = "1ij7bjxhk2866mzh0v0v2m629b6d39r5ivwdzmh72s471m9hg45d";
+    sha256 = "05zf3jhjmswfr63lgxw8q26kysd72b8m0zy5jbc94r6appx8bd7j";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/tools/misc/picocom/default.nix b/pkgs/tools/misc/picocom/default.nix
index cc5b6a707158..f287e39e7b23 100644
--- a/pkgs/tools/misc/picocom/default.nix
+++ b/pkgs/tools/misc/picocom/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "picocom-${version}";
-  version = "2.0";
+  version = "2.1";
 
   src = fetchFromGitHub {
     owner = "npat-efault";
     repo = "picocom";
     rev = version;
-    sha256 = "0s990jiqlbcg3isvhr3bn4sb7b0k6qqbf1jdvs1fyy9h0iiwprjw";
+    sha256 = "1ac3xdfiw5bd24lw4l9hxc75rcagw0y182x7svhkqp2gwsvzkbjv";
   };
 
   buildInputs = [ makeWrapper ];
diff --git a/pkgs/tools/misc/screen/default.nix b/pkgs/tools/misc/screen/default.nix
index 1fe71ae96160..8c132d5ba02f 100644
--- a/pkgs/tools/misc/screen/default.nix
+++ b/pkgs/tools/misc/screen/default.nix
@@ -13,6 +13,12 @@ stdenv.mkDerivation rec {
     sed -i -e "s|/usr/local|/non-existent|g" -e "s|/usr|/non-existent|g" configure Makefile.in */Makefile.in
   '';
 
+  # TODO: remove when updating the version of screen. Only a patch for 4.3.1
+  patches = stdenv.lib.optional stdenv.isDarwin (fetchurl {
+    url = "http://savannah.gnu.org/file/screen-utmp.patch\?file_id=34815";
+    sha256 = "192dsa8hm1zw8m638avzhwhnrddgizhyrwaxgwa96zr9vwai2nvc";
+  });
+
   buildInputs = [ ncurses ] ++ stdenv.lib.optional stdenv.isLinux pam;
 
   doCheck = true;
diff --git a/pkgs/tools/misc/sdl-jstest/default.nix b/pkgs/tools/misc/sdl-jstest/default.nix
index cf62039fc036..677f52c2c328 100644
--- a/pkgs/tools/misc/sdl-jstest/default.nix
+++ b/pkgs/tools/misc/sdl-jstest/default.nix
@@ -1,11 +1,11 @@
 { fetchgit, stdenv, cmake, pkgconfig, SDL, SDL2, ncurses, docbook_xsl }:
 
 stdenv.mkDerivation rec {
-  name = "sdl-jstest-20150625";
+  name = "sdl-jstest-20150806";
   src = fetchgit {
     url = "https://github.com/Grumbel/sdl-jstest";
-    rev = "3f54b86ebe0d2f95e9c1d034bc4ed02d6d2b6409";
-    sha256 = "d33e0a2c66b551ecf333590f1a6e1730093af31cee1be8757748624d42e14df1";
+    rev = "7b792376178c9656c851ddf106c7d57b2495e8b9";
+    sha256 = "3aa9a002de9c9999bd7c6248b94148f15dba6106489e418b2a1a410324f75eb8";
   };
 
   buildInputs = [ SDL SDL2 ncurses ];
diff --git a/pkgs/tools/misc/svtplay-dl/default.nix b/pkgs/tools/misc/svtplay-dl/default.nix
index e29556faad48..3c73272e4fbe 100644
--- a/pkgs/tools/misc/svtplay-dl/default.nix
+++ b/pkgs/tools/misc/svtplay-dl/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   name = "svtplay-dl-${version}";
-  version = "0.20.2015.09.13";
+  version = "0.20.2015.10.08";
 
   src = fetchFromGitHub {
     owner = "spaam";
     repo = "svtplay-dl";
     rev = version;
-    sha256 = "07wcjwc6kk0z8s7i3sc2n7zbbkbc2wwiclf3n0h5yk54marixql0";
+    sha256 = "0mf5w4js2q4ahhkv3k6vs88haf02krhyl217cy05nw7wgxlrr5fx";
   };
 
   pythonPaths = [ pycrypto requests2 ];
diff --git a/pkgs/tools/misc/tlp/default.nix b/pkgs/tools/misc/tlp/default.nix
index 1e90ecfee328..4f90b432d047 100644
--- a/pkgs/tools/misc/tlp/default.nix
+++ b/pkgs/tools/misc/tlp/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchFromGitHub, makeWrapper, perl, systemd, iw, rfkill, hdparm, ethtool, inetutils, kmod
 , enableRDW ? true, networkmanager }:
 
-let version = "0.7";
+let version = "0.8";
 in stdenv.mkDerivation {
   inherit enableRDW;
 
@@ -11,7 +11,7 @@ in stdenv.mkDerivation {
         owner = "linrunner";
         repo = "TLP";
         rev = "${version}";
-        sha256 = "0vgx2jnk9gp41fw992l9dmv462jpcrnwqkzsa8z0lh0l77ax2jcg";
+        sha256 = "19fvk0xz6i2ryf41akk4jg1c4sb4rcyxdl9fr0w4lja7g76d5zww";
       };
 
   makeFlags = [ "DESTDIR=$(out)"
diff --git a/pkgs/tools/misc/tmate/default.nix b/pkgs/tools/misc/tmate/default.nix
index 5fbb39431155..881c9f1c54f8 100644
--- a/pkgs/tools/misc/tmate/default.nix
+++ b/pkgs/tools/misc/tmate/default.nix
@@ -17,6 +17,10 @@ stdenv.mkDerivation rec {
 
   preConfigure = "./autogen.sh";
 
+  postPatch = stdenv.lib.optionalString stdenv.isDarwin ''
+    substituteInPlace msgpack/bootstrap --replace glibtoolize libtoolize
+  '';
+
   meta = {
     homepage = http://tmate.io/;
     description = "Instant Terminal Sharing";
diff --git a/pkgs/tools/misc/tmux/default.nix b/pkgs/tools/misc/tmux/default.nix
index 6cc54536eb19..aab229c0ad22 100644
--- a/pkgs/tools/misc/tmux/default.nix
+++ b/pkgs/tools/misc/tmux/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "tmux-${version}";
-  version = "2.0";
+  version = "2.1";
 
   src = fetchurl {
     url = "https://github.com/tmux/tmux/releases/download/${version}/${name}.tar.gz";
-    sha256 = "0qnkda8kb747vmbldjpb23ksv9pq3s65xhh1ja5rdsmh8r24npvr";
+    sha256 = "0xk1mylsb08sf0w597mdgj9s6hxxjvjvjd6bngpjvvxwyixlwmii";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/tools/misc/units/default.nix b/pkgs/tools/misc/units/default.nix
index 85d3049b2707..6a7c3b130bd0 100644
--- a/pkgs/tools/misc/units/default.nix
+++ b/pkgs/tools/misc/units/default.nix
@@ -1,10 +1,11 @@
 {stdenv, fetchurl}:
-stdenv.mkDerivation {
-  name = "units-2.11";
+stdenv.mkDerivation rec {
+  name = "units-${version}";
+  version = "2.12";
 
   src = fetchurl {
-    url = mirror://gnu/units/units-2.11.tar.gz;
-    sha256 = "1gjs3wc212aaiq4r76hx9nl1h3fa39n0ljwl9420d6ixl3rdmdjk";
+    url = "mirror://gnu/units/${name}.tar.gz";
+    sha256 = "1jxvjknz2jhq773jrwx9gc1df3gfy73yqmkjkygqxzpi318yls3q";
   };
 
   meta = {
diff --git a/pkgs/tools/misc/vdirsyncer/default.nix b/pkgs/tools/misc/vdirsyncer/default.nix
index d07e99e26604..e0dcdf366079 100644
--- a/pkgs/tools/misc/vdirsyncer/default.nix
+++ b/pkgs/tools/misc/vdirsyncer/default.nix
@@ -1,17 +1,17 @@
 { stdenv, fetchurl, pythonPackages }:
 
 pythonPackages.buildPythonPackage rec {
-  version = "0.6.0";
+  version = "0.7.0";
   name = "vdirsyncer-${version}";
   namePrefix = "";
 
   src = fetchurl {
     url = "https://pypi.python.org/packages/source/v/vdirsyncer/${name}.tar.gz";
-    sha256 = "1mb0pws5vsgnmyp5dp5m5jvgl6jcvdamxjz7wmgvxkw6n1vrcahd";
+    sha256 = "0ahpi62yk6l06zjkpbhw1gp75x3qi9gcvm3yx6xcg5sz105y5yfx";
   };
 
   propagatedBuildInputs = with pythonPackages; [
-    click
+    click click-log click-threading
     lxml
     setuptools
     setuptools_scm
diff --git a/pkgs/tools/misc/yank/default.nix b/pkgs/tools/misc/yank/default.nix
new file mode 100644
index 000000000000..049fc1b5f3fe
--- /dev/null
+++ b/pkgs/tools/misc/yank/default.nix
@@ -0,0 +1,35 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+
+  name = "yank-${meta.version}";
+
+  src = fetchFromGitHub {
+    owner = "mptre";
+    repo = "yank";
+    rev = "v${meta.version}";
+    sha256 = "066nsm8b5785r2zaajihf8g6x9hc4n8kpk3j2n1slp5alnhx93mx";
+    inherit name;
+  };
+
+  installPhase = ''
+    PREFIX=$out make install
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/mptre/yank";
+    description = "Yank terminal output to clipboard";
+    longDescription = ''
+      Read input from stdin and display a selection interface that allows a
+      field to be selected and copied to the clipboard. Fields are determined
+      by splitting the input on a delimiter sequence, optionally specified
+      using the -d option. New line, carriage return and tab characters are
+      always treated as delimiters.
+    '';
+    downloadPage = "https://github.com/mptre/yank/releases";
+    license = licenses.mit;
+    version = "0.4.1";
+    maintainers = [ maintainers.dochang ];
+  };
+
+}
diff --git a/pkgs/tools/misc/youtube-dl/default.nix b/pkgs/tools/misc/youtube-dl/default.nix
index e9f7eadc9146..7cc58bee2b75 100644
--- a/pkgs/tools/misc/youtube-dl/default.nix
+++ b/pkgs/tools/misc/youtube-dl/default.nix
@@ -10,11 +10,11 @@
 
 buildPythonPackage rec {
   name = "youtube-dl-${version}";
-  version = "2015.08.28";
+  version = "2015.10.06.2";
 
   src = fetchurl {
     url = "http://youtube-dl.org/downloads/${version}/${name}.tar.gz";
-    sha256 = "0iahbynd6fw097a4cc57w26szlbqsmhb8v5ny6qrcil0d4wdqqvp";
+    sha256 = "0pxj1z5ay97iqh086qz7rxlp197py71f2mdmshz8rrhcjd6vw1sr";
   };
 
   buildInputs = [ makeWrapper zip pandoc ];
diff --git a/pkgs/tools/networking/aria2/default.nix b/pkgs/tools/networking/aria2/default.nix
index 69b9dc406386..9909bbf40705 100644
--- a/pkgs/tools/networking/aria2/default.nix
+++ b/pkgs/tools/networking/aria2/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   name = "aria2-${version}";
-  version = "1.19.0";
+  version = "1.19.2";
 
   src = fetchurl {
-    url = "mirror://sourceforge/aria2/${name}.tar.xz";
-    sha256 = "0xm4fmap9gp2pz6z01mnnpmazw6pnhzs8qc58181m5ai4gy5ksp2";
+    url = "https://github.com/tatsuhiro-t/aria2/releases/download/release-${version}/${name}.tar.xz";
+    sha256 = "0gnm1b7yp5q6fcajz1ln2f1rv64p6dv0nz9bcwpqrkcmsinlh19n";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/tools/networking/cutter/default.nix b/pkgs/tools/networking/cutter/default.nix
index ad7d25404069..28eab7f495aa 100644
--- a/pkgs/tools/networking/cutter/default.nix
+++ b/pkgs/tools/networking/cutter/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "cutter-1.03";
+  name = "cutter-1.04";
 
   src = fetchurl {
     url = "http://www.digitage.co.uk/digitage/files/cutter/${name}.tgz";
-    sha256 = "05cn22wi70l9ybhmzw0sy3fd6xxz0lq49fws4zxzm2i0qb3zmx2d";
+    sha256 = "100iy31a3njif6vh9gfsqrm14hac05rrflla275gd4rkxdlnqcqv";
   };
 
   installPhase = ''
diff --git a/pkgs/tools/networking/i2p/default.nix b/pkgs/tools/networking/i2p/default.nix
index cbfedab0faf2..5b439eb8f3f5 100644
--- a/pkgs/tools/networking/i2p/default.nix
+++ b/pkgs/tools/networking/i2p/default.nix
@@ -1,10 +1,10 @@
 { stdenv, procps, coreutils, fetchurl, jdk, jre, ant, gettext, which }:
 
 stdenv.mkDerivation rec {
-  name = "i2p-0.9.21";
+  name = "i2p-0.9.22";
   src = fetchurl {
     url = "https://github.com/i2p/i2p.i2p/archive/${name}.tar.gz";
-    sha256 = "1cgki9sg0pc4d66rr556lw0682c4mmdvmr6awvsn7ch0rp4zav9f";
+    sha256 = "0y21dx5d95gq1i6ip56nmawr19974zawzwa315dm8lmz32bj8g6n";
   };
   buildInputs = [ jdk ant gettext which ];
   patches = [ ./i2p.patch ];
diff --git a/pkgs/tools/networking/iftop/default.nix b/pkgs/tools/networking/iftop/default.nix
index a7fc4414f2c9..9e432c946cf5 100644
--- a/pkgs/tools/networking/iftop/default.nix
+++ b/pkgs/tools/networking/iftop/default.nix
@@ -1,11 +1,11 @@
 {stdenv, fetchurl, ncurses, libpcap, automake}:
 
 stdenv.mkDerivation rec {
-  name = "iftop-0.17";
+  name = "iftop-1.0pre4";
 
   src = fetchurl {
-    url = http://ex-parrot.com/pdw/iftop/download/iftop-0.17.tar.gz;
-    sha256 = "1b0fis53280qx85gldhmqfcpgyiwplzg43gxyngia1w3f1y58cnh";
+    url = http://ex-parrot.com/pdw/iftop/download/iftop-1.0pre4.tar.gz;
+    sha256 = "15sgkdyijb7vbxpxjavh5qm5nvyii3fqcg9mzvw7fx8s6zmfwczp";
   };
 
   # Explicitly link against libgcc_s, to work around the infamous
diff --git a/pkgs/tools/networking/netsniff-ng/default.nix b/pkgs/tools/networking/netsniff-ng/default.nix
index 9ccc91b7bc13..9b77cd1ea58c 100644
--- a/pkgs/tools/networking/netsniff-ng/default.nix
+++ b/pkgs/tools/networking/netsniff-ng/default.nix
@@ -2,7 +2,7 @@
 , libnetfilter_conntrack, libnl, libpcap, libsodium, liburcu, ncurses, perl
 , pkgconfig, zlib }:
 
-let version = "0.5.9-98-gb3a9f17"; in
+let version = "0.5.9-121-gd91abbd"; in
 stdenv.mkDerivation {
   name = "netsniff-ng-${version}";
 
@@ -10,8 +10,8 @@ stdenv.mkDerivation {
   src = fetchFromGitHub rec {
     repo = "netsniff-ng";
     owner = repo;
-    rev = "b3a9f17eb9c7a47e6c4aee3649179b2a54d17eca";
-    sha256 = "05nwi5ksijv42w7km08dhymiyyvcj43b5lrpdf9x5j725l79yqdb";
+    rev = "d91abbd912399a1d29cc77e4be7b7d6f94014180";
+    sha256 = "1smnmnjr9s4xlm2pc4l2dfc304b4acl6dsyi1gnprrr9amrwg798";
   };
 
   buildInputs = [ bison flex geoip geolite-legacy libcli libnet libnl
diff --git a/pkgs/tools/networking/network-manager-applet/default.nix b/pkgs/tools/networking/network-manager-applet/default.nix
index f3e64c866569..93ab1266c6ba 100644
--- a/pkgs/tools/networking/network-manager-applet/default.nix
+++ b/pkgs/tools/networking/network-manager-applet/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pn}/${major}/${name}.tar.xz";
-    sha256 = "1afri2zln5p59660hqzbwm2r8phx9inrm2bgp5scynzs8ddzh2kn";
+    sha256 = "1yj0m6fb9v12d0di0rfmk3hx1vmygjkiff2c476rf792sbh56kax";
   };
 
   configureFlags = [ "--sysconfdir=/etc" ];
diff --git a/pkgs/tools/networking/network-manager/0.9.8.nix b/pkgs/tools/networking/network-manager/0.9.8.nix
new file mode 100644
index 000000000000..fe19550bc67f
--- /dev/null
+++ b/pkgs/tools/networking/network-manager/0.9.8.nix
@@ -0,0 +1,58 @@
+{ stdenv, fetchurl, intltool, pkgconfig, dbus_glib
+, udev, libnl, libuuid, gnutls, dhcp
+, libgcrypt, perl }:
+
+stdenv.mkDerivation rec {
+  name = "network-manager-${version}";
+  version = "0.9.8.10";
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/NetworkManager/0.9/NetworkManager-${version}.tar.xz";
+    sha256 = "0wn9qh8r56r8l19dqr68pdl1rv3zg1dv47rfy6fqa91q7li2fk86";
+  };
+
+  preConfigure = ''
+    substituteInPlace tools/glib-mkenums --replace /usr/bin/perl ${perl}/bin/perl
+  '';
+
+  # Right now we hardcode quite a few paths at build time. Probably we should
+  # patch networkmanager to allow passing these path in config file. This will
+  # remove unneeded build-time dependencies.
+  configureFlags = [
+    "--with-distro=exherbo"
+    "--with-dhclient=${dhcp}/sbin/dhclient"
+    "--with-dhcpcd=no"
+    "--with-iptables=no"
+    "--with-udev-dir=\${out}/lib/udev"
+    "--with-resolvconf=no"
+    "--sysconfdir=/etc" "--localstatedir=/var"
+    "--with-dbus-sys-dir=\${out}/etc/dbus-1/system.d"
+    "--with-crypto=gnutls" "--disable-more-warnings"
+    "--with-systemdsystemunitdir=$(out)/etc/systemd/system"
+    "--with-kernel-firmware-dir=/run/current-system/firmware"
+    "--disable-ppp"
+  ];
+
+  buildInputs = [ udev libnl libuuid gnutls libgcrypt ];
+
+  propagatedBuildInputs = [ dbus_glib ];
+
+  nativeBuildInputs = [ intltool pkgconfig ];
+
+  patches =
+    [ ./libnl-3.2.25.patch
+      ./nixos-purity.patch
+    ];
+
+  preInstall =
+    ''
+      installFlagsArray=( "sysconfdir=$out/etc" "localstatedir=$out/var" )
+    '';
+
+  meta = with stdenv.lib; {
+    homepage = http://projects.gnome.org/NetworkManager/;
+    description = "Network configuration and management tool";
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/tools/networking/network-manager/default.nix b/pkgs/tools/networking/network-manager/default.nix
index 30aff794baa0..82067561654d 100644
--- a/pkgs/tools/networking/network-manager/default.nix
+++ b/pkgs/tools/networking/network-manager/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   name = "network-manager-${version}";
-  version = "1.0.2";
+  version = "1.0.6";
 
   src = fetchurl {
     url = "mirror://gnome/sources/NetworkManager/1.0/NetworkManager-${version}.tar.xz";
-    sha256 = "1zq8jm1rc7n7amqa9xz1v93w2jnczg6942gyijsdpgllfiq8b4rm";
+    sha256 = "38ea002403e3b884ffa9aae25aea431d2a8420f81f4919761c83fb92648254bd";
   };
 
   preConfigure = ''
@@ -51,6 +51,8 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ intltool pkgconfig ];
 
+  patches = [ ./nm-platform.patch ];
+
   preInstall =
     ''
       installFlagsArray=( "sysconfdir=$out/etc" "localstatedir=$out/var" )
diff --git a/pkgs/tools/networking/network-manager/libnl-3.2.25.patch b/pkgs/tools/networking/network-manager/libnl-3.2.25.patch
new file mode 100644
index 000000000000..17c2966b7064
--- /dev/null
+++ b/pkgs/tools/networking/network-manager/libnl-3.2.25.patch
@@ -0,0 +1,61 @@
+diff --git a/src/nm-netlink-monitor.c b/src/nm-netlink-monitor.c
+index ba8053e..5ac39d3 100644
+--- a/src/nm-netlink-monitor.c
++++ b/src/nm-netlink-monitor.c
+@@ -177,40 +177,15 @@ link_msg_handler (struct nl_object *obj, void *arg)
+ static int
+ event_msg_recv (struct nl_msg *msg, void *arg)
+ {
+-	struct nl_sock *nlh = arg;
+-	struct nlmsghdr *hdr = nlmsg_hdr (msg);
+ 	struct ucred *creds = nlmsg_get_creds (msg);
+-	const struct sockaddr_nl *snl;
+-	guint32 local_port;
+-	gboolean accept_msg = FALSE;
+-
+-	/* Only messages sent from the kernel */
+-	if (!creds || creds->uid != 0) {
+-		nm_log_dbg (LOGD_HW, "ignoring netlink message from UID %d",
+-		            creds ? creds->uid : -1);
+-		return NL_SKIP;
+-	}
+-
+-	snl = nlmsg_get_src (msg);
+-	g_assert (snl);
+-
+-	/* Accept any messages from the kernel */
+-	if (hdr->nlmsg_pid == 0 || snl->nl_pid == 0)
+-		accept_msg = TRUE;
+ 
+-	/* And any multicast message directed to our netlink PID, since multicast
+-	 * currently requires CAP_ADMIN to use.
+-	 */
+-	local_port = nl_socket_get_local_port (nlh);
+-	if ((hdr->nlmsg_pid == local_port) && snl->nl_groups)
+-		accept_msg = TRUE;
+-
+-	if (accept_msg == FALSE) {
+-		nm_log_dbg (LOGD_HW, "ignoring netlink message from PID %d (local PID %d, multicast %d)",
+-		            hdr->nlmsg_pid,
+-		            local_port,
+-		            (hdr->nlmsg_flags & NLM_F_MULTI));
+-		return NL_SKIP;
++	if (!creds || creds->pid || creds->uid || creds->gid) {
++		if (creds)
++			nm_log_dbg (LOGD_HW, "netlink: received non-kernel message (pid %d uid %d gid %d)",
++			            creds->pid, creds->uid, creds->gid);
++		else
++			nm_log_dbg (LOGD_HW, "netlink: received message without credentials");
++		return NL_STOP;
+ 	}
+ 
+ 	return NL_OK;
+@@ -285,7 +260,7 @@ nlh_setup (struct nl_sock *nlh,
+ {
+ 	int err;
+ 
+-	nl_socket_modify_cb (nlh, NL_CB_MSG_IN, NL_CB_CUSTOM, event_msg_recv, cb_data);
++	nl_socket_modify_cb (nlh, NL_CB_MSG_IN, NL_CB_CUSTOM, event_msg_recv, NULL);
+ 
+ 	if (valid_func)
+ 		nl_socket_modify_cb (nlh, NL_CB_VALID, NL_CB_CUSTOM, valid_func, cb_data);
diff --git a/pkgs/tools/networking/network-manager/nm-platform.patch b/pkgs/tools/networking/network-manager/nm-platform.patch
new file mode 100644
index 000000000000..880d1a2e4921
--- /dev/null
+++ b/pkgs/tools/networking/network-manager/nm-platform.patch
@@ -0,0 +1,17 @@
+diff --git a/src/platform/nm-platform.c b/src/platform/nm-platform.c
+index 8803377..14e5726 100644
+--- a/src/platform/nm-platform.c
++++ b/src/platform/nm-platform.c
+@@ -39,6 +39,12 @@
+ #include "nm-enum-types.h"
+ #include "nm-core-internal.h"
+
++#if HAVE_LIBNL_INET6_ADDR_GEN_MODE && HAVE_KERNEL_INET6_ADDR_GEN_MODE
++#include <linux/if_link.h>
++#else
++#define IN6_ADDR_GEN_MODE_NONE  1
++#endif
++
+ #define ADDRESS_LIFETIME_PADDING 5
+
+ G_STATIC_ASSERT (sizeof ( ((NMPlatformLink *) NULL)->addr.data ) == NM_UTILS_HWADDR_LEN_MAX);
diff --git a/pkgs/tools/networking/network-manager/openconnect.nix b/pkgs/tools/networking/network-manager/openconnect.nix
index 9416923c9e1e..0009aaf6b440 100644
--- a/pkgs/tools/networking/network-manager/openconnect.nix
+++ b/pkgs/tools/networking/network-manager/openconnect.nix
@@ -4,7 +4,9 @@
 stdenv.mkDerivation rec {
   name = "${pname}${if withGnome then "-gnome" else ""}-${version}";
   pname = "NetworkManager-openconnect";
-  version = networkmanager.version;
+  version = "1.0.2";
+
+# FixMe: Change version back to "networkmanager.version"
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/1.0/${pname}-${version}.tar.xz";
diff --git a/pkgs/tools/networking/network-manager/openvpn.nix b/pkgs/tools/networking/network-manager/openvpn.nix
index d4e1b50489c8..be0264571953 100644
--- a/pkgs/tools/networking/network-manager/openvpn.nix
+++ b/pkgs/tools/networking/network-manager/openvpn.nix
@@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/1.0/${pname}-${version}.tar.xz";
-    sha256 = "1c2b74xhkjifc3g6n53gr2aj4s98qf0vydmqvbhl5azxqx5q4hqn";
+    sha256 = "132xwkgyfnpma7m6b06jhrd1g9xk5dlpx8alnsf03ls3z92bd0n9";
   };
 
   buildInputs = [ openvpn networkmanager libsecret ]
diff --git a/pkgs/tools/networking/network-manager/pptp.nix b/pkgs/tools/networking/network-manager/pptp.nix
index 1dfce02981a3..1b1cf69119e4 100644
--- a/pkgs/tools/networking/network-manager/pptp.nix
+++ b/pkgs/tools/networking/network-manager/pptp.nix
@@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/1.0/${pname}-${version}.tar.xz";
-    sha256 = "05r06f7f990z908jjnmmryrlshy28wcx7fbvnslmx9nicih7rjrp";
+    sha256 = "1gn1f8r32wznk4rsn2lg2slw1ccli00svz0fi4bx0qiylimlbyln";
   };
 
   buildInputs = [ networkmanager pptp ppp libsecret ]
diff --git a/pkgs/tools/networking/network-manager/vpnc.nix b/pkgs/tools/networking/network-manager/vpnc.nix
index 1435e5ebf7c3..5f3ab00ebc43 100644
--- a/pkgs/tools/networking/network-manager/vpnc.nix
+++ b/pkgs/tools/networking/network-manager/vpnc.nix
@@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/1.0/${pname}-${version}.tar.xz";
-    sha256 = "0055vshgnva969vb91k8zpdan34r9gy0ck3q3b9b616k0p2vy5ry";
+    sha256 = "0hycplnc78688sgpzdh3ifra6chascrh751mckqkp1j553bri0jk";
   };
 
   buildInputs = [ vpnc networkmanager libsecret ]
diff --git a/pkgs/tools/networking/ntopng/0001-Undo-weird-modification-of-data_dir.patch b/pkgs/tools/networking/ntopng/0001-Undo-weird-modification-of-data_dir.patch
index 8bec643c6e5f..d794efeac08a 100644
--- a/pkgs/tools/networking/ntopng/0001-Undo-weird-modification-of-data_dir.patch
+++ b/pkgs/tools/networking/ntopng/0001-Undo-weird-modification-of-data_dir.patch
@@ -1,24 +1,12 @@
-From d0c56a14e0432faca1e9438b84e5e4090d293bb9 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= <bjorn.forsman@gmail.com>
-Date: Tue, 3 Dec 2013 20:42:24 +0000
-Subject: [PATCH 1/2] Undo weird modification of data_dir
-
----
- Prefs.cpp | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/Prefs.cpp b/Prefs.cpp
-index b4fde5f..ca04ca1 100644
---- a/Prefs.cpp
-+++ b/Prefs.cpp
-@@ -408,7 +408,6 @@ int Prefs::checkOptions() {
- 			ntop->getTrace()->traceEvent(TRACE_ERROR, "Unable to create log %s", path);
-   }
+diff --git a/src/Prefs.cpp b/src/Prefs.cpp
+index 76385c4..db8d20d 100755
+--- a/src/Prefs.cpp
++++ b/src/Prefs.cpp
+@@ -795,7 +795,6 @@ int Prefs::checkOptions() {
+          ntop->getTrace()->traceEvent(TRACE_ERROR, "Unable to create log %s", path);
+     }
  
 -  free(data_dir); data_dir = strdup(ntop->get_install_dir());
    docs_dir      = ntop->getValidPath(docs_dir);
    scripts_dir   = ntop->getValidPath(scripts_dir);
    callbacks_dir = ntop->getValidPath(callbacks_dir);
--- 
-1.8.4.3
-
diff --git a/pkgs/tools/networking/ntopng/0002-Remove-requirement-to-have-writeable-callback-dir.patch b/pkgs/tools/networking/ntopng/0002-Remove-requirement-to-have-writeable-callback-dir.patch
index 99467c371264..50ed1daebd48 100644
--- a/pkgs/tools/networking/ntopng/0002-Remove-requirement-to-have-writeable-callback-dir.patch
+++ b/pkgs/tools/networking/ntopng/0002-Remove-requirement-to-have-writeable-callback-dir.patch
@@ -1,29 +1,14 @@
-From d77b42003d13e2775be3255a26f380d6ccda8042 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= <bjorn.forsman@gmail.com>
-Date: Tue, 3 Dec 2013 21:10:06 +0000
-Subject: [PATCH 2/2] Remove requirement to have writeable callback dir
-
-* ntopng doesn't write anything to the callback dir
-* it seems to be a copy-paste leftover error from data_dir a couple of
-  lines above
----
- Ntop.cpp | 3 +--
- 1 file changed, 1 insertion(+), 2 deletions(-)
-
-diff --git a/Ntop.cpp b/Ntop.cpp
-index 2fb027b..0b4881b 100644
---- a/Ntop.cpp
-+++ b/Ntop.cpp
-@@ -114,8 +114,7 @@ void Ntop::registerPrefs(Prefs *_prefs) {
+diff --git a/src/Ntop.cpp b/src/Ntop.cpp
+index 8de92a9..510418f 100644
+--- a/src/Ntop.cpp
++++ b/src/Ntop.cpp
+@@ -197,8 +197,7 @@ void Ntop::registerPrefs(Prefs *_prefs) {
    }
  
    if(stat(prefs->get_callbacks_dir(), &statbuf)
--     || (!(statbuf.st_mode & S_IFDIR)) /* It's not a directory */
+-     || (!(statbuf.st_mode & S_IFDIR))  /* It's not a directory */
 -     || (!(statbuf.st_mode & S_IWRITE)) /* It's not writable    */) {
-+     || (!(statbuf.st_mode & S_IFDIR))) { /* It's not a directory */
++     || (!(statbuf.st_mode & S_IFDIR))  /* It's not a directory */) {
      ntop->getTrace()->traceEvent(TRACE_ERROR, "Invalid directory %s specified",
  				 prefs->get_callbacks_dir());
-     exit(-1);
--- 
-1.8.4.3
-
+     _exit(-1);
diff --git a/pkgs/tools/networking/ntopng/default.nix b/pkgs/tools/networking/ntopng/default.nix
index ddb6a7bec36d..c17c33af17ed 100644
--- a/pkgs/tools/networking/ntopng/default.nix
+++ b/pkgs/tools/networking/ntopng/default.nix
@@ -1,20 +1,20 @@
-{ stdenv, fetchurl, libpcap, gnutls, libgcrypt, libxml2, glib
-, geoip, geolite-legacy, sqlite, which, autoreconfHook, subversion
-, pkgconfig, groff
+{ stdenv, fetchurl, libpcap,/* gnutls, libgcrypt,*/ libxml2, glib
+, geoip, geolite-legacy, sqlite, which, autoreconfHook, git
+, pkgconfig, groff, curl, json_c
 }:
 
 # ntopng includes LuaJIT, mongoose, rrdtool and zeromq in its third-party/
 # directory.
 
 stdenv.mkDerivation rec {
-  name = "ntopng-1.2.1";
+  name = "ntopng-2.0";
 
   src = fetchurl {
     urls = [
-      "mirror://sourceforge/project/ntop/ntopng/old/${name}.tgz"
-      "mirror://sourceforge/project/ntop/ntopng/${name}.tgz"
+      "mirror://sourceforge/project/ntop/ntopng/old/${name}.tar.gz"
+      "mirror://sourceforge/project/ntop/ntopng/${name}.tar.gz"
     ];
-    sha256 = "1db83cd1v4ivl8hxzzdvvdcgk22ji7mwrfnd5nnwll6kb11i364v";
+    sha256 = "0l82ivh05cmmqcvs26r6y69z849d28njipphqzvnakf43ggddgrw";
   };
 
   patches = [
@@ -22,25 +22,31 @@ stdenv.mkDerivation rec {
     ./0002-Remove-requirement-to-have-writeable-callback-dir.patch
   ];
 
-  buildInputs = [ libpcap gnutls libgcrypt libxml2 glib geoip geolite-legacy
-    sqlite which autoreconfHook subversion pkgconfig groff ];
+  buildInputs = [ libpcap/* gnutls libgcrypt*/ libxml2 glib geoip geolite-legacy
+    sqlite which autoreconfHook git pkgconfig groff curl json_c ];
+
+
+  autoreconfPhase = ''
+    substituteInPlace autogen.sh --replace "/bin/rm" "rm"
+    substituteInPlace nDPI/autogen.sh --replace "/bin/rm" "rm"
+    $shell autogen.sh
+  '';
 
   preConfigure = ''
-    find . -name Makefile.in | xargs sed -i "s|/bin/rm|rm|"
+    substituteInPlace Makefile.in --replace "/bin/rm" "rm"
   '';
 
   preBuild = ''
-    sed -e "s|/usr/local|$out|g" \
-        -i Ntop.cpp
+    substituteInPlace src/Ntop.cpp --replace "/usr/local" "$out"
 
     sed -e "s|\(#define CONST_DEFAULT_DATA_DIR\).*|\1 \"/var/lib/ntopng\"|g" \
         -e "s|\(#define CONST_DEFAULT_DOCS_DIR\).*|\1 \"$out/share/ntopng/httpdocs\"|g" \
         -e "s|\(#define CONST_DEFAULT_SCRIPTS_DIR\).*|\1 \"$out/share/ntopng/scripts\"|g" \
         -e "s|\(#define CONST_DEFAULT_CALLBACKS_DIR\).*|\1 \"$out/share/ntopng/scripts/callbacks\"|g" \
         -e "s|\(#define CONST_DEFAULT_INSTALL_DIR\).*|\1 \"$out/share/ntopng\"|g" \
-        -i ntop_defines.h
+        -i include/ntop_defines.h
 
-    rmdir httpdocs/geoip
+    rm -rf httpdocs/geoip
     ln -s ${geolite-legacy}/share/GeoIP httpdocs/geoip
   '';
 
diff --git a/pkgs/tools/networking/nzbget/default.nix b/pkgs/tools/networking/nzbget/default.nix
index 3497fd8efaf5..42eb469bc696 100644
--- a/pkgs/tools/networking/nzbget/default.nix
+++ b/pkgs/tools/networking/nzbget/default.nix
@@ -1,15 +1,13 @@
 { stdenv, fetchurl, pkgconfig, libxml2, ncurses, libsigcxx, libpar2
 , gnutls, libgcrypt, zlib }:
 
-let
-  version = "15.0";
-in
 stdenv.mkDerivation rec {
   name = "nzbget-${version}";
+  version = "16.2";
 
   src = fetchurl {
     url = "http://github.com/nzbget/nzbget/releases/download/v${version}/${name}-src.tar.gz";
-    sha256 = "02nclq97gqr4zwww4j1l9sds2rwrwwvwvh2gkjhwvr0pb4z3zw9y";
+    sha256 = "19ww3cf1qvivdj2pk676g9gwvfkj5gasvwqnbisx9ihss4bmdx9r";
   };
 
   buildInputs = [ pkgconfig libxml2 ncurses libsigcxx libpar2 gnutls
diff --git a/pkgs/tools/networking/openvpn/update-resolv-conf.nix b/pkgs/tools/networking/openvpn/update-resolv-conf.nix
index de04c1419e2d..f5937f050043 100644
--- a/pkgs/tools/networking/openvpn/update-resolv-conf.nix
+++ b/pkgs/tools/networking/openvpn/update-resolv-conf.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchgit, makeWrapper, openresolv, coreutils }:
 
 stdenv.mkDerivation rec {
-  name = "update-resolv-conf-2014-10-03";
+  name = "update-resolv-conf-20141003";
 
   src = fetchgit {
     url = https://github.com/masterkorp/openvpn-update-resolv-conf/;
diff --git a/pkgs/tools/networking/plasma-nm/default.nix b/pkgs/tools/networking/plasma-nm/default.nix
index 17f809ddb8c9..0c10e6655b8e 100644
--- a/pkgs/tools/networking/plasma-nm/default.nix
+++ b/pkgs/tools/networking/plasma-nm/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, automoc4, cmake, gettext, perl, pkgconfig
-, kdelibs, networkmanager, libnm-qt }:
+, kdelibs, networkmanager, libnm-qt, glib }:
 
 let
   pname = "plasma-nm";
@@ -14,6 +14,8 @@ stdenv.mkDerivation {
     sha256 = "0xj14isvjq8ll70b6q66n8adm8ff4j9ng195ndk2gmavjf6bb751";
   };
 
+  NIX_CFLAGS_COMPILE = "-I${glib}/include/glib-2.0 -I${glib}/lib/glib-2.0/include";
+
   nativeBuildInputs = [ automoc4 cmake gettext perl pkgconfig ];
 
   buildInputs = [ kdelibs networkmanager libnm-qt ];
@@ -23,6 +25,5 @@ stdenv.mkDerivation {
     description = "Plasma applet written in QML for managing network connections";
     license = licenses.lgpl21;
     inherit (kdelibs.meta) platforms;
-    maintainers = with maintainers; [ jgeerds ];
   };
 }
diff --git a/pkgs/tools/networking/reaver-wps/default.nix b/pkgs/tools/networking/reaver-wps/default.nix
index afce95fbd449..9efe3df75201 100644
--- a/pkgs/tools/networking/reaver-wps/default.nix
+++ b/pkgs/tools/networking/reaver-wps/default.nix
@@ -22,5 +22,6 @@ stdenv.mkDerivation rec {
     description = "Brute force attack against Wifi Protected Setup";
     homepage = http://code.google.com/p/reaver-wps;
     license = stdenv.lib.licenses.gpl2Plus;
+    platforms = stdenv.lib.platforms.linux;
   };
 }
diff --git a/pkgs/tools/networking/ripmime/default.nix b/pkgs/tools/networking/ripmime/default.nix
index d9445b749761..fd5964cb55fc 100644
--- a/pkgs/tools/networking/ripmime/default.nix
+++ b/pkgs/tools/networking/ripmime/default.nix
@@ -29,8 +29,8 @@ rec {
   /* doConfigure should be removed if not needed */
   phaseNames = ["fixTarget" "doMakeInstall"];
   fixTarget = a.fullDepEntry (''
-    sed -i Makefile -e "s@LOCATION=.*@LOCATION=$out@"
-    mkdir -p "$out/bin" "$out/man/man1"
+    sed -i Makefile -e "s@LOCATION=.*@LOCATION=$out@" -e "s@man/man1@share/&@"
+    mkdir -p "$out/bin" "$out/share/man/man1"
   '') ["doUnpack" "minInit" "defEnsureDir"];
       
   meta = {
diff --git a/pkgs/tools/networking/smbldaptools/default.nix b/pkgs/tools/networking/smbldaptools/default.nix
index af1849565fe2..9ca5c3be177a 100644
--- a/pkgs/tools/networking/smbldaptools/default.nix
+++ b/pkgs/tools/networking/smbldaptools/default.nix
@@ -27,5 +27,7 @@ stdenv.mkDerivation {
     homepage = http://gna.org/projects/smbldap-tools/;
     description = "SAMBA LDAP tools";
     license = stdenv.lib.licenses.gpl2Plus;
+    # pod2man: unable to format smbldap-config.cmd
+    broken = true;
   };
 }
diff --git a/pkgs/tools/networking/snabb/default.nix b/pkgs/tools/networking/snabb/default.nix
new file mode 100644
index 000000000000..9ca8b56491d1
--- /dev/null
+++ b/pkgs/tools/networking/snabb/default.nix
@@ -0,0 +1,32 @@
+{stdenv, fetchurl}:
+
+stdenv.mkDerivation rec {
+  name = "snabb-2015.10";
+
+  src = fetchurl {
+    url = "https://github.com/SnabbCo/snabbswitch/archive/v2015.10.tar.gz";
+    sha256 = "15cmw7k2siy9m7s1383l1h8kix8cwb143yvwhxdahbnx4lfnzfz8";
+  };
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp src/snabb $out/bin
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/SnabbCo/snabbswitch;
+    description = "Simple and fast packet networking toolkit";
+    longDescription = ''
+      Snabb Switch is a LuaJIT-based toolkit for writing high-speed
+      packet networking code (such as routing, switching, firewalling,
+      and so on). It includes both a scripting inteface for creating
+      new applications and also some built-in applications that are
+      ready to run.
+      It is especially intended for ISPs and other network operators.
+    '';
+    platforms = [ "x86_64-linux" ];
+    license = licenses.asl20;
+    maintainers = [ maintainers.lukego ];
+  };
+}
+
diff --git a/pkgs/tools/networking/tgt/default.nix b/pkgs/tools/networking/tgt/default.nix
index b5acdce800a0..f870b5463b60 100644
--- a/pkgs/tools/networking/tgt/default.nix
+++ b/pkgs/tools/networking/tgt/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchFromGitHub, libxslt, libaio, systemd, perl, perlPackages }:
+{ stdenv, fetchFromGitHub, libxslt, libaio, systemd, perl, perlPackages
+, docbook_xsl }:
 
 let
   version = "1.0.60";
@@ -11,7 +12,7 @@ in stdenv.mkDerivation rec {
     sha256 = "1bf8rn3mavjrzkp5k23akqn5ilw43g8mpfr68z1bi8s9lr2gkf37";
   };
 
-  buildInputs = [ libxslt systemd libaio ];
+  buildInputs = [ libxslt systemd libaio docbook_xsl ];
 
   DESTDIR = "$(out)";
   PREFIX = "/";
@@ -34,4 +35,4 @@ in stdenv.mkDerivation rec {
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.linux;
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/tools/networking/tinc/pre.nix b/pkgs/tools/networking/tinc/pre.nix
index f7d74b6a39aa..81b143921379 100644
--- a/pkgs/tools/networking/tinc/pre.nix
+++ b/pkgs/tools/networking/tinc/pre.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchgit, autoreconfHook, texinfo, ncurses, readline, zlib, lzo, openssl }:
 
 stdenv.mkDerivation rec {
-  name = "tinc-1.1pre-2015-07-22";
+  name = "tinc-1.1pre-2015-09-25";
 
   src = fetchgit {
     url = "git://tinc-vpn.org/tinc";
-    rev = "56a8b90d863171d62e0a337b5635fbfc53a67fb0";
-    sha256 = "081z4xs5l988g1s0yr7fvnysajd05bx6s54sh84jvq7ij8af71dm";
+    rev = "73068238436d8a22abb86e67b08f573b09fd04e1";
+    sha256 = "1j8bvvzvciy21s24jdpi089svy7wipg9pm84s98xjlp2plchj5dj";
   };
 
   nativeBuildInputs = [ autoreconfHook texinfo ];
diff --git a/pkgs/tools/networking/wavemon/default.nix b/pkgs/tools/networking/wavemon/default.nix
index b5927fd24780..ece252a9b6c7 100644
--- a/pkgs/tools/networking/wavemon/default.nix
+++ b/pkgs/tools/networking/wavemon/default.nix
@@ -1,45 +1,20 @@
-x@{builderDefsPackage
-  , ncurses
-  , ...}:
-builderDefsPackage
-(a :  
-let 
-  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
-    [];
-
-  buildInputs = map (n: builtins.getAttr n x)
-    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
-  sourceInfo = rec {
-    baseName="wavemon";
-    version = "0.7.6";
-    name="${baseName}-${version}";
-    url="http://eden-feed.erg.abdn.ac.uk/wavemon/stable-releases/${name}.tar.bz2";
+{stdenv, fetchgit, ncurses, libnl, pkgconfig}:
+stdenv.mkDerivation rec {
+  version = "0.7.6.20151001";
+  baseName="wavemon";
+  name="${baseName}-${version}";
+  buildInputs = [ncurses libnl pkgconfig];
+  src = fetchgit {
+    url = https://github.com/uoaerg/wavemon.git ;
+    rev = "05753aed2ec5a786d602c7903c89fc6a230f8d42";
+    sha256 = "13y4bi4qz4596f11ng6zaqir5j234wv64z4670q3pzh3fqmzmpm4";
   };
-in
-rec {
-  src = a.fetchurl {
-    url = sourceInfo.url;
-    sha256 = "18cwlzgmwzy7z9dfr6lwd8kmkv0pqiihizm4gi0kkm52bzz6836y";
-  };
-
-  inherit (sourceInfo) name version;
-  inherit buildInputs;
-
-  /* doConfigure should be removed if not needed */
-  phaseNames = ["doConfigure" "doMakeInstall"];
-      
   meta = {
-    description = "WiFi state monitor";
-    maintainers = with a.lib.maintainers;
-    [
-      raskin
-    ];
-    platforms = with a.lib.platforms;
-      linux;
-    license = a.lib.licenses.gpl2Plus;
-    downloadPage = "http://eden-feed.erg.abdn.ac.uk/wavemon/";
     inherit version;
-    updateWalker = true;
+    description = "WiFi state monitor";
+    license = stdenv.lib.licenses.gpl3Plus ;
+    maintainers = [stdenv.lib.maintainers.raskin];
+    platforms = stdenv.lib.platforms.linux;
+    downloadPage = https://github.com/uoaerg/wavemon.git ;
   };
-}) x
-
+}
diff --git a/pkgs/tools/networking/zerotierone/default.nix b/pkgs/tools/networking/zerotierone/default.nix
index c6a456e202ab..f38b3becf4c7 100644
--- a/pkgs/tools/networking/zerotierone/default.nix
+++ b/pkgs/tools/networking/zerotierone/default.nix
@@ -3,12 +3,12 @@
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  version = "1.0.4";
+  version = "1.0.5";
   name = "zerotierone";
 
   src = fetchurl {
     url = "https://github.com/zerotier/ZeroTierOne/archive/${version}.tar.gz";
-    sha256 = "1klnsjajlas71flbf6w2q3iqhhqrmzqpd2g4qw9my66l7kcsbxfd";
+    sha256 = "6e2de5477fefdab21802b1047d753ac38c85074a7d6b41387125fd6941f25ab2";
   };
 
   preConfigure = ''
diff --git a/pkgs/tools/package-management/disnix/dysnomia/default.nix b/pkgs/tools/package-management/disnix/dysnomia/default.nix
index 275c4b6e61f1..b5969aa327d0 100644
--- a/pkgs/tools/package-management/disnix/dysnomia/default.nix
+++ b/pkgs/tools/package-management/disnix/dysnomia/default.nix
@@ -20,10 +20,10 @@ assert enableEjabberdDump -> ejabberd != null;
 assert enableMongoDatabase -> (mongodb != null && mongodb-tools != null);
 
 stdenv.mkDerivation {
-  name = "dysnomia-0.4";
+  name = "dysnomia-0.4.1";
   src = fetchurl {
-    url = http://hydra.nixos.org/build/23484767/download/1/dysnomia-0.4.tar.gz;
-    sha256 = "1xyd1gzsy4nlbv2l2lrrs964vvb74yhmb8snr4chf7hcyaybb6cq";
+    url = http://hydra.nixos.org/build/26970202/download/1/dysnomia-0.4.1.tar.gz;
+    sha256 = "03ljlsmdpglimvql2qnr4wj8ci2hj7wcc8bqipndqcahcpcc8k0f";
   };
   
   preConfigure = if enableEjabberdDump then "export PATH=$PATH:${ejabberd}/sbin" else "";
diff --git a/pkgs/tools/package-management/nix/default.nix b/pkgs/tools/package-management/nix/default.nix
index 71c47c97d602..e76e2e811f5e 100644
--- a/pkgs/tools/package-management/nix/default.nix
+++ b/pkgs/tools/package-management/nix/default.nix
@@ -43,6 +43,8 @@ let
 
     doInstallCheck = false;
 
+    separateDebugInfo = stdenv.isLinux;
+
     crossAttrs = {
       postUnpack =
         '' export CPATH="${bzip2.crossDrv}/include"
@@ -88,21 +90,18 @@ in rec {
 
    nixStable = common rec {
      name = "nix-1.10";
-      src = fetchurl {
-        url = "http://nixos.org/releases/nix/${name}/${name}.tar.xz";
-        sha256 = "5612ca7a549dd1ee20b208123e041aaa95a414a0e8f650ea88c672dc023d10f6";
-      };
+     src = fetchurl {
+       url = "http://nixos.org/releases/nix/${name}/${name}.tar.xz";
+       sha256 = "5612ca7a549dd1ee20b208123e041aaa95a414a0e8f650ea88c672dc023d10f6";
+     };
    };
 
-   nixUnstable = nix;
-   /*
    nixUnstable = lib.lowPrio (common rec {
-     name = "nix-1.10pre4212_e12cf82";
-      src = fetchurl {
-        url = "http://hydra.nixos.org/build/24982847/download/4/${name}.tar.xz";
-        sha256 = "4165db0ea9bb6b5cd96d294348299f20ac045fc18db680104ff98fe9ac893f72";
-      };
+     name = "nix-1.11pre4244_133a421";
+     src = fetchurl {
+       url = "http://hydra.nixos.org/build/26680779/download/4/${name}.tar.xz";
+       sha256 = "cb98e3e0791c3f5a508990e8ddba02ce7fe9282a9fe151c743206c1410cdfd93";
+     };
    });
-   */
 
 }
diff --git a/pkgs/tools/security/chkrootkit/default.nix b/pkgs/tools/security/chkrootkit/default.nix
index 36a203a7b507..2dad4b3e43aa 100644
--- a/pkgs/tools/security/chkrootkit/default.nix
+++ b/pkgs/tools/security/chkrootkit/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation {
   name = "chkrootkit-0.50";
 
   src = fetchurl {
-    url = ftp://ftp.pangeia.com.br/pub/seg/pac/chkrootkit.tar.gz;
+    url = ftp://ftp.pangeia.com.br/pub/seg/pac/chkrootkit-0.50.tar.gz;
     sha256 = "1ivclp7ixndacjmf7xgj8lfa6h7ihx44mzzsapqdvf0c5f9gqj4m";
   };
 
diff --git a/pkgs/tools/security/eid-mw/default.nix b/pkgs/tools/security/eid-mw/default.nix
index fbb8f0321ef9..5e06d2f32e29 100644
--- a/pkgs/tools/security/eid-mw/default.nix
+++ b/pkgs/tools/security/eid-mw/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchFromGitHub, autoreconfHook, gtk2, nssTools, pcsclite
 , pkgconfig }:
 
-let version = "4.1.6"; in
+let version = "4.1.8"; in
 stdenv.mkDerivation {
   name = "eid-mw-${version}";
 
   src = fetchFromGitHub {
-    sha256 = "006s7093wqmk36mrlakjv89bqddyh599rvmgv0zgsp15vf9160zi";
+    sha256 = "1nmw4c2gvbpkrgjxyd2g0lbh85lb2czbgqplqrv69fr6azaddyyk";
     rev = "v${version}";
     repo = "eid-mw";
     owner = "Fedict";
@@ -29,10 +29,11 @@ stdenv.mkDerivation {
       --replace "modutil" "${nssTools}/bin/modutil"
 
     # Only provides a useless "about-eid-mw.desktop" that segfaults anyway:
-    rm -rf $out/share/applications $out/bin/about-eid-mw
+    rm -r $out/share/applications $out/bin/about-eid-mw
   '';
 
   meta = with stdenv.lib; {
+    inherit version;
     description = "Belgian electronic identity card (eID) middleware";
     homepage = http://eid.belgium.be/en/using_your_eid/installing_the_eid_software/linux/;
     license = licenses.lgpl3;
diff --git a/pkgs/tools/security/gnupg/21.nix b/pkgs/tools/security/gnupg/21.nix
index 20d2eb15b978..5fbd6e83970c 100644
--- a/pkgs/tools/security/gnupg/21.nix
+++ b/pkgs/tools/security/gnupg/21.nix
@@ -13,11 +13,11 @@ with stdenv.lib;
 assert x11Support -> pinentry != null;
 
 stdenv.mkDerivation rec {
-  name = "gnupg-2.1.8";
+  name = "gnupg-2.1.9";
 
   src = fetchurl {
     url = "mirror://gnupg/gnupg/${name}.tar.bz2";
-    sha256 = "18w14xp0ynzzwpklyplkzbrncds1hly4k2gjx115swch8qgd1f53";
+    sha256 = "1dpp555glln6fldk72ad7lkrn8h3cr2bg714z5kfn2qrawx67dqw";
   };
 
   postPatch = stdenv.lib.optionalString stdenv.isLinux ''
diff --git a/pkgs/tools/security/gpgstats/default.nix b/pkgs/tools/security/gpgstats/default.nix
new file mode 100644
index 000000000000..a04b87c8e313
--- /dev/null
+++ b/pkgs/tools/security/gpgstats/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchurl, ncurses, gpgme }:
+
+stdenv.mkDerivation rec {
+  name = "gpgstats-${version}";
+  version = "0.5";
+
+  src = fetchurl {
+    url = "http://www.vanheusden.com/gpgstats/${name}.tgz";
+    sha256 = "1n3njqhjwgfllcxs0xmk89dzgirrpfpfzkj71kqyvq97gc1wbcxy";
+  };
+
+  buildInputs = [ ncurses gpgme ];
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp gpgstats $out/bin
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Calculates statistics on the keys in your gpg key-ring";
+    longDescription = ''
+    GPGstats calculates statistics on the keys in your key-ring.
+    '';
+    homepage = http://www.vanheusden.com/gpgstats/;
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ davidak ];
+    platforms = with platforms; unix;
+  };
+}
+
diff --git a/pkgs/tools/security/john/default.nix b/pkgs/tools/security/john/default.nix
index 4ef9b8f65b6b..24a6782c2065 100644
--- a/pkgs/tools/security/john/default.nix
+++ b/pkgs/tools/security/john/default.nix
@@ -1,29 +1,54 @@
-{ stdenv, fetchgit, openssl, nss, nspr, kerberos, gmp, zlib, libpcap, re2 }:
+{ stdenv, fetchurl, openssl, nss, nspr, kerberos, gmp, zlib, libpcap, re2
+, writeText
+}:
 
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  name = "JohnTheRipper-${version}";
-  version = "8a3e3c1d";
+  name = "john-${version}";
+  version = "1.8.0-jumbo-1";
+
+  src = fetchurl {
+    url = "http://www.openwall.com/john/j/${name}.tar.xz";
+    sha256 = "08q92sfdvkz47rx6qjn7qv57cmlpy7i7rgddapq5384mb413vjds";
+  };
+
+  postPatch = ''
+    sed -ri -e '
+      s!^(#define\s+CFG_[A-Z]+_NAME\s+).*/!\1"'"$out"'/etc/john/!
+      /^#define\s+JOHN_SYSTEMWIDE/s!/usr!'"$out"'!
+    ' src/params.h
+    sed -ri -e '/^\.include/ {
+      s!\$JOHN!'"$out"'/etc/john!
+      s!^(\.include\s*)<([^./]+\.conf)>!\1"'"$out"'/etc/john/\2"!
+    }' run/*.conf
+  '';
+
+  preConfigure = "cd src";
+  configureFlags = [ "--disable-native-macro" ];
+
   buildInputs = [ openssl nss nspr kerberos gmp zlib libpcap re2 ];
-  NIX_CFLAGS_COMPILE = "-DJOHN_SYSTEMWIDE=1";
-  preConfigure = ''cd src'';
+  enableParallelBuilding = true;
+
+  NIX_CFLAGS_COMPILE = [ "-DJOHN_SYSTEMWIDE=1" ];
+
   installPhase = ''
-    ensureDir $out/share/john/
-    ensureDir $out/bin
-    cp -R ../run/* $out/share/john
-    ln -s $out/share/john/john $out/bin/john
+    mkdir -p "$out/etc/john" "$out/share/john" "$out/share/doc/john"
+    find ../run -mindepth 1 -maxdepth 1 -type f -executable \
+      -exec "${stdenv.shell}" "${writeText "john-binary-install.sh" ''
+        filename="$(basename "$1")"
+        install -vD "$1" "$out/bin/''${filename%.*}"
+      ''}" {} \;
+    cp -vt "$out/etc/john" ../run/*.conf
+    cp -vt "$out/share/john" ../run/*.chr ../run/password.lst
+    cp -vrt "$out/share/doc/john" ../doc/*
   '';
-  src = fetchgit {
-    url = https://github.com/magnumripper/JohnTheRipper.git;
-    rev = "93f061bc41652c94ae049b52572aac709d18aa4c";
-    sha256 = "1rnfi09830n34jcqaxmsam54p4zsq9a49ic2ljh44lahcipympvy";
-  };
+
   meta = {
     description = "John the Ripper password cracker";
     license = licenses.gpl2;
     homepage = https://github.com/magnumripper/JohnTheRipper/;
-    maintainers = with maintainers; [offline];
+    maintainers = with maintainers; [ offline ];
     platforms = with platforms; unix;
   };
 }
diff --git a/pkgs/tools/security/mpw/default.nix b/pkgs/tools/security/mpw/default.nix
new file mode 100644
index 000000000000..15937a6792e6
--- /dev/null
+++ b/pkgs/tools/security/mpw/default.nix
@@ -0,0 +1,42 @@
+{ stdenv, fetchurl, autoconf, automake, openssl, libxml2 }:
+
+let
+  scrypt_src = fetchurl {
+    url = "http://masterpasswordapp.com/libscrypt-b12b554.tar.gz";
+    sha256 = "02vz4i66v1acd15xjgki4ilmmp28m6a5603gi4hf8id3d3ndl9n7";
+  };
+
+in stdenv.mkDerivation {
+  name = "mpw-2.1-cli4";
+
+  srcs = [
+    (fetchurl {
+      url = "https://ssl.masterpasswordapp.com/mpw-2.1-cli4-0-gf6b2287.tar.gz";
+      sha256 = "141bzb3nj18rbnbpdvsri8cdwwwxz4d6akyhfa834542xf96b9vf";
+    })
+    scrypt_src
+  ];
+
+  sourceRoot = ".";
+
+  postUnpack = ''
+    cp -R libscrypt-b12b554/* lib/scrypt
+  '';
+
+  prePatch = ''
+    patchShebangs .
+  '';
+
+  NIX_CFLAGS_COMPILE = "-I${libxml2}/include/libxml2";
+
+  buildInputs = [ autoconf automake openssl libxml2 ];
+
+  buildPhase = ''
+    targets="mpw mpw-tests" ./build
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    mv mpw $out/bin/mpw
+  '';
+}
diff --git a/pkgs/tools/security/nasty/default.nix b/pkgs/tools/security/nasty/default.nix
new file mode 100644
index 000000000000..099547c2f321
--- /dev/null
+++ b/pkgs/tools/security/nasty/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchurl, gpgme }:
+
+stdenv.mkDerivation rec {
+  name = "nasty-${version}";
+  version = "0.6";
+
+  src = fetchurl {
+    url = "http://www.vanheusden.com/nasty/${name}.tgz";
+    sha256 = "1dznlxr728k1pgy1kwmlm7ivyl3j3rlvkmq34qpwbwbj8rnja1vn";
+  };
+
+  buildInputs = [ gpgme ];
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp nasty $out/bin
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Recover the passphrase of your PGP or GPG-key";
+    longDescription = ''
+    Nasty is a program that helps you to recover the passphrase of your PGP or GPG-key
+    in case you forget or lost it. It is mostly a proof-of-concept: with a different implementation
+    this program could be at least 100x faster.
+    '';
+    homepage = http://www.vanheusden.com/nasty/;
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ davidak ];
+    platforms = with platforms; unix;
+  };
+}
+
diff --git a/pkgs/tools/security/sslscan/default.nix b/pkgs/tools/security/sslscan/default.nix
new file mode 100644
index 000000000000..dd124c4efe6d
--- /dev/null
+++ b/pkgs/tools/security/sslscan/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchurl, openssl }:
+
+stdenv.mkDerivation rec {
+  name = "sslscan-${version}";
+  version = "1.11.0";
+
+  src = fetchurl {
+    url = "https://github.com/rbsec/sslscan/archive/${version}-rbsec.tar.gz";
+    sha256 = "19d6vpcihfqs35hni4vigcpqabbnd3sndr5wyvfsladgp40vz3b9";
+  };
+
+  buildInputs = [ openssl ];
+
+  installFlags = [
+    "BINPATH=$(out)/bin"
+    "MANPATH=$(out)/share/man"
+  ];
+
+  meta = with stdenv.lib; {
+    description = "Tests SSL/TLS services and discover supported cipher suites";
+    homepage = https://github.com/rbsec/sslscan;
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ fpletz globin ];
+    platforms = platforms.all;
+  };
+}
+
diff --git a/pkgs/tools/security/tor/torbrowser.nix b/pkgs/tools/security/tor/torbrowser.nix
index bd7531af18f7..6e8f638c8b0e 100644
--- a/pkgs/tools/security/tor/torbrowser.nix
+++ b/pkgs/tools/security/tor/torbrowser.nix
@@ -2,9 +2,6 @@
 , xorg, alsaLib, dbus, dbus_glib, glib, gtk, atk, pango, freetype, fontconfig
 , gdk_pixbuf, cairo, zlib}:
 let
-  bits = if stdenv.system == "x86_64-linux" then "64"
-         else "32";
-
   # isolated tor environment
   torEnv = buildEnv {
     name = "tor-env";
@@ -15,18 +12,17 @@ let
     ];
   };
 
-  ldLibraryPath = if bits == "64" then torEnv+"/lib:"+torEnv+"/lib64"
-        else torEnv+"/lib";
+  ldLibraryPath = ''${torEnv}/lib${stdenv.lib.optionalString stdenv.is64bit ":${torEnv}/lib64"}'';
 
 in stdenv.mkDerivation rec {
   name = "tor-browser-${version}";
-  version = "4.5.3";
+  version = "5.0.3";
 
   src = fetchurl {
-    url = "https://archive.torproject.org/tor-package-archive/torbrowser/${version}/tor-browser-linux${bits}-${version}_en-US.tar.xz";
-    sha256 = if bits == "64" then
-      "24c517d2aeb15ba5eeda1eb87f483ed4fb0c22b07a95ca26af9f692e0d4d9b7c" else
-      "154d659583048e91870c40921561f0519babf6d3c9ac439f6fb74ed66824463f";
+    url = "https://archive.torproject.org/tor-package-archive/torbrowser/${version}/tor-browser-linux${if stdenv.is64bit then "64" else "32"}-${version}_en-US.tar.xz";
+    sha256 = if stdenv.is64bit then
+      "1lqsiidnlrh0dlwzc93d0vbjclkb1zq3mwfcjxadjpwik6afszsb" else
+      "1ajn1bw1j63h3yblh06mmp7xhwdhqg9pdkxyz1dqj1rsp264k50f";
   };
 
   patchPhase = ''
diff --git a/pkgs/tools/system/ansible/default.nix b/pkgs/tools/system/ansible/default.nix
index 0177eec9435e..0e72efb33bd2 100644
--- a/pkgs/tools/system/ansible/default.nix
+++ b/pkgs/tools/system/ansible/default.nix
@@ -1,13 +1,13 @@
 { windowsSupport ? true, stdenv, fetchurl, pythonPackages, python }:
 
 pythonPackages.buildPythonPackage rec {
-  version = "1.9.3";
+  version = "1.9.4";
   name = "ansible-${version}";
   namePrefix = "";
 
   src = fetchurl {
-    url = "http://releases.ansible.com/ansible/ansible-${version}.tar.gz";
-    sha256 = "1vgfsjqb5gbs30ymqgq3q2kxzn3fvh8680n14yj5c040zm1gd515";
+    url = "https://releases.ansible.com/ansible/${name}.tar.gz";
+    sha256 = "1qvgzb66nlyc2ncmgmqhzdk0x0p2px09967p1yypf5czwjn2yb4p";
   };
 
   prePatch = ''
diff --git a/pkgs/tools/system/collectd/default.nix b/pkgs/tools/system/collectd/default.nix
index 80d9d2d98efb..d1214d3c163e 100644
--- a/pkgs/tools/system/collectd/default.nix
+++ b/pkgs/tools/system/collectd/default.nix
@@ -3,6 +3,7 @@
 , pkgconfig ? null  # most of the extra deps need pkgconfig to be found
 , curl ? null
 , iptables ? null
+, jdk ? null
 , libcredis ? null
 , libdbi ? null
 , libgcrypt ? null
@@ -14,34 +15,39 @@
 , libsigrok ? null
 , libvirt ? null
 , libxml2 ? null
+, libtool ? null
 , lm_sensors ? null
 , lvm2 ? null
 , mysql ? null
 , postgresql ? null
 , protobufc ? null
+, python ? null
 , rabbitmq-c ? null
+, riemann ? null
 , rrdtool ? null
 , varnish ? null
 , yajl ? null
 }:
 
 stdenv.mkDerivation rec {
-  name = "collectd-5.4.2";
+  name = "collectd-5.5.0";
 
   src = fetchurl {
     url = "http://collectd.org/files/${name}.tar.bz2";
-    sha256 = "14z3qkqbmfjvqvcb2v17480f7c8j7wa49myk0zlxpd9qq40fk2cp";
+    sha256 = "847684cf5c10de1dc34145078af3fcf6e0d168ba98c14f1343b1062a4b569e88";
   };
 
   buildInputs = [
     pkgconfig curl iptables libcredis libdbi libgcrypt libmemcached cyrus_sasl
     libmodbus libnotify gdk_pixbuf liboping libpcap libsigrok libvirt
     lm_sensors libxml2 lvm2 mysql.lib postgresql protobufc rabbitmq-c rrdtool
-    varnish yajl
+    varnish yajl jdk libtool python
   ];
 
   # for some reason libsigrok isn't auto-detected
-  configureFlags = stdenv.lib.optional (libsigrok != null) "--with-libsigrok";
+  configureFlags =
+    stdenv.lib.optional (libsigrok != null) "--with-libsigrok" ++
+    stdenv.lib.optional (python != null) "--with-python=${python}/bin/python";
 
   NIX_CFLAGS_COMPILE = "-Wno-error=cpp";
 
diff --git a/pkgs/tools/system/dd_rescue/default.nix b/pkgs/tools/system/dd_rescue/default.nix
index a0ff9b063dd8..d90b5d1d2f00 100644
--- a/pkgs/tools/system/dd_rescue/default.nix
+++ b/pkgs/tools/system/dd_rescue/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, autoconf }:
 
 stdenv.mkDerivation rec {
-  version = "1.98";
+  version = "1.99";
   name = "dd_rescue-${version}";
 
   src = fetchurl {
-    sha256 = "14lf2pv52sr16977qjq1rsr42rfd3ywsss2xw9svgaa14g49ss6b";
+    sha256 = "0gkbwssn134fjyyvjvylyvassw4fwv5mbis9gcb969xdc64dfhg1";
     url="http://www.garloff.de/kurt/linux/ddrescue/${name}.tar.bz2";
   };
 
diff --git a/pkgs/tools/system/fakeroot/default.nix b/pkgs/tools/system/fakeroot/default.nix
index 9764ae6ce0e4..7995a656c1e3 100644
--- a/pkgs/tools/system/fakeroot/default.nix
+++ b/pkgs/tools/system/fakeroot/default.nix
@@ -1,14 +1,15 @@
-{stdenv, fetchurl, utillinux}:
+{ stdenv, fetchurl, utillinux, libcap }:
 
 stdenv.mkDerivation rec {
-  name = "fakeroot-1.18.4";
+  version = "1.20.2";
+  name = "fakeroot-${version}";
 
   src = fetchurl {
-    url = https://launchpad.net/ubuntu/+archive/primary/+files/fakeroot_1.18.4.orig.tar.bz2;
-    sha256 = "18mydrz49n7ic7147pikkpdb96x00s9wisdk6hrc75ll7vx9wd8a";
+    url = "http://http.debian.net/debian/pool/main/f/fakeroot/fakeroot_${version}.orig.tar.bz2";
+    sha256 = "0313xb2j6a4wihrw9gfd4rnyqw7zzv6wf3rfh2gglgnv356ic2kw";
   };
 
-  buildInputs = [ utillinux /* provides getopt */ ];
+  buildInputs = [ utillinux /* provides getopt */ libcap ];
 
   postUnpack = ''
     for prog in getopt; do
diff --git a/pkgs/tools/system/gptfdisk/default.nix b/pkgs/tools/system/gptfdisk/default.nix
index 6551f27e7721..00cb6f8dd0c9 100644
--- a/pkgs/tools/system/gptfdisk/default.nix
+++ b/pkgs/tools/system/gptfdisk/default.nix
@@ -1,11 +1,14 @@
 { fetchurl, stdenv, libuuid, popt, icu, ncurses }:
 
+let version = "1.0.1"; in
 stdenv.mkDerivation rec {
-  name = "gptfdisk-1.0.0";
+  name = "gptfdisk-${version}";
 
   src = fetchurl {
+    # http://www.rodsbooks.com/gdisk/${name}.tar.gz also works, but the home
+    # page clearly implies a preference for using SourceForge's bandwidth:
     url = "mirror://sourceforge/gptfdisk/${name}.tar.gz";
-    sha256 = "0v0xl0mzwabdf9yisgsvkhpyi48kbik35c6df42gr6d78dkrarjv";
+    sha256 = "1izazbyv5n2d81qdym77i8mg9m870hiydmq4d0s51npx5vp8lk46";
   };
 
   buildInputs = [ libuuid popt icu ncurses ];
@@ -20,13 +23,12 @@ stdenv.mkDerivation rec {
     done
   '';
 
-  meta = {
-    description = "A set of text-mode partitioning tools for Globally Unique Identifier (GUID) Partition Table (GPT) disks";
-
-    license = stdenv.lib.licenses.gpl2;
-
+  meta = with stdenv.lib; {
+    inherit version;
+    description = "Set of text-mode partitioning tools for Globally Unique Identifier (GUID) Partition Table (GPT) disks";
+    license = licenses.gpl2;
     homepage = http://www.rodsbooks.com/gdisk/;
-
-    platforms = stdenv.lib.platforms.linux;
+    maintainers = with maintainers; [ nckx ];
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/tools/typesetting/pdf2djvu/default.nix b/pkgs/tools/typesetting/pdf2djvu/default.nix
index eb8b30381ce2..5540a3fdca25 100644
--- a/pkgs/tools/typesetting/pdf2djvu/default.nix
+++ b/pkgs/tools/typesetting/pdf2djvu/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, pkgconfig, djvulibre, poppler, fontconfig, libjpeg }:
 
 stdenv.mkDerivation rec {
-  version = "0.8.2";
+  version = "0.9.2";
   name = "pdf2djvu-${version}";
 
   src = fetchurl {
     url = "https://bitbucket.org/jwilk/pdf2djvu/downloads/${name}.tar.xz";
-    sha256 = "1mlkprbq02yyaqfdziif79i48rvgg195kfwdpl24fdsgjlp83c20";
+    sha256 = "0b1rbbxfa8qzggzwmq4m9wykrv5cl74688z95qq9lns35qz2j2b5";
   };
 
   buildInputs = [ pkgconfig djvulibre poppler fontconfig libjpeg ];