summary refs log tree commit diff
path: root/pkgs/tools/networking
diff options
context:
space:
mode:
authorRobin Gloster <mail@glob.in>2016-07-15 14:41:01 +0000
committerRobin Gloster <mail@glob.in>2016-07-15 14:41:01 +0000
commit5185bc177309c62e53dad1ad346d1220f0e77bd4 (patch)
tree52f5878b394abf2ef326765d46880ccbabd84903 /pkgs/tools/networking
parent07615735077db344539eb9131823600593f0eddf (diff)
parentf402c6321aa3c6e56f5e1f1e36c4ad459c881309 (diff)
downloadnixlib-5185bc177309c62e53dad1ad346d1220f0e77bd4.tar
nixlib-5185bc177309c62e53dad1ad346d1220f0e77bd4.tar.gz
nixlib-5185bc177309c62e53dad1ad346d1220f0e77bd4.tar.bz2
nixlib-5185bc177309c62e53dad1ad346d1220f0e77bd4.tar.lz
nixlib-5185bc177309c62e53dad1ad346d1220f0e77bd4.tar.xz
nixlib-5185bc177309c62e53dad1ad346d1220f0e77bd4.tar.zst
nixlib-5185bc177309c62e53dad1ad346d1220f0e77bd4.zip
Merge remote-tracking branch 'upstream/master' into hardened-stdenv
Diffstat (limited to 'pkgs/tools/networking')
-rw-r--r--pkgs/tools/networking/aria2/default.nix23
-rw-r--r--pkgs/tools/networking/dnscrypt-wrapper/default.nix4
-rw-r--r--pkgs/tools/networking/dnsmasq/default.nix13
-rw-r--r--pkgs/tools/networking/dropbear/default.nix2
-rw-r--r--pkgs/tools/networking/haproxy/default.nix4
-rw-r--r--pkgs/tools/networking/i2p/default.nix4
-rw-r--r--pkgs/tools/networking/i2pd/default.nix4
-rw-r--r--pkgs/tools/networking/iperf/3.nix6
-rw-r--r--pkgs/tools/networking/keepalived/default.nix2
-rw-r--r--pkgs/tools/networking/mailutils/default.nix19
-rw-r--r--pkgs/tools/networking/mailutils/scm_c_string.patch15
-rw-r--r--pkgs/tools/networking/maphosts/Gemfile2
-rw-r--r--pkgs/tools/networking/maphosts/Gemfile.lock19
-rw-r--r--pkgs/tools/networking/maphosts/default.nix28
-rw-r--r--pkgs/tools/networking/maphosts/gemset.nix34
-rw-r--r--pkgs/tools/networking/mpack/default.nix2
-rw-r--r--pkgs/tools/networking/mu/default.nix6
-rw-r--r--pkgs/tools/networking/nbd/default.nix2
-rw-r--r--pkgs/tools/networking/nethogs/default.nix10
-rw-r--r--pkgs/tools/networking/network-manager-applet/default.nix33
-rw-r--r--pkgs/tools/networking/network-manager/0.9.8/default.nix (renamed from pkgs/tools/networking/network-manager/0.9.8.nix)0
-rw-r--r--pkgs/tools/networking/network-manager/0.9.8/libnl-3.2.25.patch (renamed from pkgs/tools/networking/network-manager/libnl-3.2.25.patch)0
-rw-r--r--pkgs/tools/networking/network-manager/0.9.8/nixos-purity.patch (renamed from pkgs/tools/networking/network-manager/nixos-purity.patch)0
-rw-r--r--pkgs/tools/networking/network-manager/default.nix62
-rw-r--r--pkgs/tools/networking/network-manager/l2tp-purity.patch26
-rw-r--r--pkgs/tools/networking/network-manager/l2tp.nix41
-rw-r--r--pkgs/tools/networking/network-manager/nm-platform.patch17
-rw-r--r--pkgs/tools/networking/network-manager/openconnect.nix21
-rw-r--r--pkgs/tools/networking/network-manager/openvpn.nix17
-rw-r--r--pkgs/tools/networking/network-manager/pptp-purity.patch26
-rw-r--r--pkgs/tools/networking/network-manager/pptp.nix27
-rw-r--r--pkgs/tools/networking/network-manager/vpnc.nix17
-rw-r--r--pkgs/tools/networking/ntp/default.nix4
-rw-r--r--pkgs/tools/networking/ocproxy/default.nix32
-rw-r--r--pkgs/tools/networking/openvpn/default.nix4
-rw-r--r--pkgs/tools/networking/p2p/gtk-gnutella/default.nix16
-rw-r--r--pkgs/tools/networking/pptpd/default.nix25
-rw-r--r--pkgs/tools/networking/ratools/default.nix2
-rw-r--r--pkgs/tools/networking/shadowsocks-libev/default.nix14
-rw-r--r--pkgs/tools/networking/siege/default.nix4
-rw-r--r--pkgs/tools/networking/smbldaptools/default.nix6
-rw-r--r--pkgs/tools/networking/socat/default.nix4
-rw-r--r--pkgs/tools/networking/spiped/default.nix2
-rw-r--r--pkgs/tools/networking/srelay/arm.patch12
-rw-r--r--pkgs/tools/networking/srelay/default.nix21
-rw-r--r--pkgs/tools/networking/ssh-ident/default.nix27
-rw-r--r--pkgs/tools/networking/stunnel/default.nix2
-rw-r--r--pkgs/tools/networking/traceroute/default.nix6
-rw-r--r--pkgs/tools/networking/unbound/default.nix4
-rw-r--r--pkgs/tools/networking/urlwatch/default.nix9
-rw-r--r--pkgs/tools/networking/urlwatch/setup.patch42
-rw-r--r--pkgs/tools/networking/vpnc/default.nix2
-rw-r--r--pkgs/tools/networking/wget/default.nix4
-rw-r--r--pkgs/tools/networking/wicd/default.nix2
-rw-r--r--pkgs/tools/networking/zerotierone/default.nix6
55 files changed, 448 insertions, 288 deletions
diff --git a/pkgs/tools/networking/aria2/default.nix b/pkgs/tools/networking/aria2/default.nix
index 106dcf2f184c..78541a5d9f2c 100644
--- a/pkgs/tools/networking/aria2/default.nix
+++ b/pkgs/tools/networking/aria2/default.nix
@@ -1,28 +1,37 @@
-{ stdenv, fetchurl, pkgconfig, autoreconfHook
+{ stdenv, fetchFromGitHub, fetchpatch, pkgconfig, autoreconfHook
 , openssl, c-ares, libxml2, sqlite, zlib, libssh2
 , Security
 }:
 
 stdenv.mkDerivation rec {
   name = "aria2-${version}";
-  version = "1.23.0";
+  version = "1.24.0";
 
-  src = fetchurl {
-    url = "https://github.com/tatsuhiro-t/aria2/releases/download/release-${version}/${name}.tar.xz";
-    sha256 = "14qz7686zxnhbaqj6l1hqpkykhpygm74h2mzwhh13gqmcj38alaq";
+  src = fetchFromGitHub {
+    owner = "aria2";
+    repo = "aria2";
+    rev = "release-${version}";
+    sha256 = "0sb8s2rf2l0x7m8fx8kys7vad0lfw3k9071iai03kxplkdvg96n9";
   };
 
-  nativeBuildInputs = [ pkgconfig ];
+  nativeBuildInputs = [ pkgconfig autoreconfHook ];
 
   buildInputs = [ openssl c-ares libxml2 sqlite zlib libssh2 ] ++
     stdenv.lib.optional stdenv.isDarwin Security;
 
+  patches = stdenv.lib.optionals stdenv.isDarwin [
+    (fetchpatch {
+      url = https://github.com/aria2/aria2/commit/1e59e357af626edc870b7f53c1ae8083658d0d1a.patch;
+      sha256 = "1xjj4ll1v6adl6vdkl84v0mh7ma6p469ph1wpvksxrq6qp8345qj";
+    })
+  ];
+
   configureFlags = [ "--with-ca-bundle=/etc/ssl/certs/ca-certificates.crt" ];
 
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/tatsuhiro-t/aria2;
+    homepage = https://aria2.github.io;
     description = "A lightweight, multi-protocol, multi-source, command-line download utility";
     maintainers = with maintainers; [ koral jgeerds ];
     license = licenses.gpl2Plus;
diff --git a/pkgs/tools/networking/dnscrypt-wrapper/default.nix b/pkgs/tools/networking/dnscrypt-wrapper/default.nix
index 03204d6ccf31..491bf3157579 100644
--- a/pkgs/tools/networking/dnscrypt-wrapper/default.nix
+++ b/pkgs/tools/networking/dnscrypt-wrapper/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "dnscrypt-wrapper-${version}";
-  version = "0.2";
+  version = "0.2.1";
 
   src = fetchFromGitHub {
     owner = "Cofyc";
     repo = "dnscrypt-wrapper";
     rev = "v${version}";
-    sha256 = "06m6p79y0p6f1knk40fbi7dnc5hnq066kafvrq74fxrl51nywjbg";
+    sha256 = "0gysylchvmxvqd4ims2cf2610vmxl80wlk62jhsv13p94yvrl53b";
   };
 
   nativeBuildInputs = [ pkgconfig autoreconfHook ];
diff --git a/pkgs/tools/networking/dnsmasq/default.nix b/pkgs/tools/networking/dnsmasq/default.nix
index b05f4e8e80ee..14bde9a5fa5b 100644
--- a/pkgs/tools/networking/dnsmasq/default.nix
+++ b/pkgs/tools/networking/dnsmasq/default.nix
@@ -11,11 +11,11 @@ let
   ]);
 in
 stdenv.mkDerivation rec {
-  name = "dnsmasq-2.75";
+  name = "dnsmasq-2.76";
 
   src = fetchurl {
     url = "http://www.thekelleys.org.uk/dnsmasq/${name}.tar.xz";
-    sha256 = "1wa1d4if9q6k3hklv8xi06a59k3aqb7pik8rhi2l53i99hflw334";
+    sha256 = "15lzih6671gh9knzpl8mxchiml7z5lfqzr7jm2r0rjhrxs6nk4jb";
   };
 
   preBuild = ''
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
   hardeningEnable = [ "pie" ];
 
   postBuild = optionalString stdenv.isLinux ''
-    make -C contrib/wrt
+    make -C contrib/lease-tools
   '';
 
   # XXX: Does the systemd service definition really belong here when our NixOS
@@ -41,8 +41,9 @@ stdenv.mkDerivation rec {
     install -Dm644 trust-anchors.conf $out/share/dnsmasq/trust-anchors.conf
   '' + optionalString stdenv.isLinux ''
     install -Dm644 dbus/dnsmasq.conf $out/etc/dbus-1/system.d/dnsmasq.conf
-    install -Dm755 contrib/wrt/dhcp_lease_time $out/bin/dhcp_lease_time
-    install -Dm755 contrib/wrt/dhcp_release $out/bin/dhcp_release
+    install -Dm755 contrib/lease-tools/dhcp_lease_time $out/bin/dhcp_lease_time
+    install -Dm755 contrib/lease-tools/dhcp_release $out/bin/dhcp_release
+    install -Dm755 contrib/lease-tools/dhcp_release6 $out/bin/dhcp_release6
 
     mkdir -p $out/share/dbus-1/system-services
     cat <<END > $out/share/dbus-1/system-services/uk.org.thekelleys.dnsmasq.service
@@ -63,6 +64,6 @@ stdenv.mkDerivation rec {
     homepage = http://www.thekelleys.org.uk/dnsmasq/doc.html;
     license = licenses.gpl2;
     platforms = with platforms; linux ++ darwin;
-    maintainers = with maintainers; [ eelco ];
+    maintainers = with maintainers; [ eelco fpletz ];
   };
 }
diff --git a/pkgs/tools/networking/dropbear/default.nix b/pkgs/tools/networking/dropbear/default.nix
index d102ef5d7c3c..bc9fb6ee4dee 100644
--- a/pkgs/tools/networking/dropbear/default.nix
+++ b/pkgs/tools/networking/dropbear/default.nix
@@ -40,6 +40,6 @@ stdenv.mkDerivation rec {
     description = "A small footprint implementation of the SSH 2 protocol";
     license = licenses.mit;
     maintainers = with maintainers; [ abbradar ];
-    platforms = platforms.unix;
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/tools/networking/haproxy/default.nix b/pkgs/tools/networking/haproxy/default.nix
index 2e04ea194928..8a15811407dd 100644
--- a/pkgs/tools/networking/haproxy/default.nix
+++ b/pkgs/tools/networking/haproxy/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   majorVersion = "1.6";
-  version = "${majorVersion}.4";
+  version = "${majorVersion}.6";
   name = "haproxy-${version}";
 
   src = fetchurl {
     url = "http://haproxy.1wt.eu/download/${majorVersion}/src/${name}.tar.gz";
-    sha256 = "0c6j1j30xw08zdlk149s9ghvwphhbiqadkacjyvfrs8z9xh3ryp5";
+    sha256 = "1xamzzfvwgh3b72f3j74ar9xcn61viszqfbdpf4cdhwc0xikvc7x";
   };
 
   buildInputs = [ openssl zlib ];
diff --git a/pkgs/tools/networking/i2p/default.nix b/pkgs/tools/networking/i2p/default.nix
index dbb85f386354..fb2f43586946 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.25";
+  name = "i2p-0.9.26";
   src = fetchurl {
     url = "https://github.com/i2p/i2p.i2p/archive/${name}.tar.gz";
-    sha256 = "1lj4khln0k0b4f55hjighwn5j3cyal8flmapjmadjyj6cd5py0v8";
+    sha256 = "0h672w69a5xzgcrls64bpss3ga9hgpnrq90dr5lb5912pwwq9pa1";
   };
   buildInputs = [ jdk ant gettext which ];
   patches = [ ./i2p.patch ];
diff --git a/pkgs/tools/networking/i2pd/default.nix b/pkgs/tools/networking/i2pd/default.nix
index 3fd4e37c9080..2269e1a09c7b 100644
--- a/pkgs/tools/networking/i2pd/default.nix
+++ b/pkgs/tools/networking/i2pd/default.nix
@@ -4,13 +4,13 @@ stdenv.mkDerivation rec {
 
   name = pname + "-" + version;
   pname = "i2pd";
-  version = "2.6.0";
+  version = "2.8.0";
 
   src = fetchFromGitHub {
     owner = "PurpleI2P";
     repo = pname;
     rev = version;
-    sha256 = "0siqg2gf1w85c3j7w6bzjyyjzlxr8z57jk0675gn8yz0xvpkrdys";
+    sha256 = "10rimw6ldnaijbjz1vmkrbrr5swbbqjydjrxd4y5xj2r8whq2mph";
   };
 
   buildInputs = [ boost zlib openssl ];
diff --git a/pkgs/tools/networking/iperf/3.nix b/pkgs/tools/networking/iperf/3.nix
index 944989f47c34..7dc418cba574 100644
--- a/pkgs/tools/networking/iperf/3.nix
+++ b/pkgs/tools/networking/iperf/3.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "iperf-3.1";
+  name = "iperf-3.1.3";
 
   src = fetchurl {
     url = "http://downloads.es.net/pub/iperf/${name}.tar.gz";
-    sha256 = "0mp6bhfbkkcrdc2sl65k0g5x5csnccqrjk3bc3a0kjr5rqpa71a3";
+    sha256 = "1gwmhm29zlp5grrpglmqj7vgx19s6xy33hk6hpbn8jnpn5lxpn30";
   };
 
   postInstall = ''
@@ -17,6 +17,6 @@ stdenv.mkDerivation rec {
     description = "Tool to measure IP bandwidth using UDP or TCP";
     platforms = platforms.unix;
     license = "as-is";
-    maintainers = with maintainers; [ wkennington ];
+    maintainers = with maintainers; [ wkennington fpletz ];
   };
 }
diff --git a/pkgs/tools/networking/keepalived/default.nix b/pkgs/tools/networking/keepalived/default.nix
index 1d0c9d55076e..c579d12b6bd4 100644
--- a/pkgs/tools/networking/keepalived/default.nix
+++ b/pkgs/tools/networking/keepalived/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     homepage = http://keepalived.org;
-    description = "routing software written in C";
+    description = "Routing software written in C";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = with maintainers; [ wkennington ];
diff --git a/pkgs/tools/networking/mailutils/default.nix b/pkgs/tools/networking/mailutils/default.nix
index 140d58e3163e..0ae993db332e 100644
--- a/pkgs/tools/networking/mailutils/default.nix
+++ b/pkgs/tools/networking/mailutils/default.nix
@@ -1,7 +1,6 @@
 { fetchurl, stdenv, gettext, gdbm, libtool, pam, readline
-, ncurses, gnutls, mysql, guile, texinfo, gnum4, dejagnu, sendmailPath ? "/var/setuid-wrappers/sendmail" }:
-
-/* TODO: Add GNU SASL, GNU GSSAPI, and FreeBidi.  */
+, ncurses, gnutls, sasl, fribidi, gss , mysql, guile, texinfo,
+  gnum4, dejagnu, nettools }:
 
 stdenv.mkDerivation rec {
   name = "mailutils-2.2";
@@ -13,17 +12,19 @@ stdenv.mkDerivation rec {
 
   hardeningDisable = [ "format" ];
 
-  patches = [ ./path-to-cat.patch ./no-gets.patch ];
+  patches = [ ./path-to-cat.patch ./no-gets.patch ./scm_c_string.patch ];
 
-  configureFlags = "--with-path-sendmail=${sendmailPath}";
+  configureFlags = [
+    "--with-gsasl"
+    "--with-gssapi=${gss}"
+  ];
 
   buildInputs =
    [ gettext gdbm libtool pam readline ncurses
-     gnutls mysql.lib guile texinfo gnum4 ]
+     gnutls mysql.lib guile texinfo gnum4 sasl fribidi gss nettools ]
    ++ stdenv.lib.optional doCheck dejagnu;
 
-  # Tests fail since gcc 4.8
-  doCheck = false;
+  doCheck = true;
 
   meta = with stdenv.lib; {
     description = "Rich and powerful protocol-independent mail framework";
@@ -53,7 +54,7 @@ stdenv.mkDerivation rec {
       gpl3Plus /* tools */
     ];
 
-    maintainers = [ ];
+    maintainers = with maintainers; [ vrthra ];
 
     homepage = http://www.gnu.org/software/mailutils/;
 
diff --git a/pkgs/tools/networking/mailutils/scm_c_string.patch b/pkgs/tools/networking/mailutils/scm_c_string.patch
new file mode 100644
index 000000000000..367dd2d64066
--- /dev/null
+++ b/pkgs/tools/networking/mailutils/scm_c_string.patch
@@ -0,0 +1,15 @@
+See https://lists.gnu.org/archive/html/bug-mailutils/2010-10/msg00005.html
+
+diff -u mailutils-2.2/libmu_scm/mu_message.c mailutils-2.2.new/libmu_scm/mu_message.c
+--- mailutils-2.2/libmu_scm/mu_message.c	2010-04-18 10:29:07.000000000 -0700
++++ mailutils-2.2.new/libmu_scm/mu_message.c	2016-07-03 21:18:53.746185547 -0700
+@@ -510,8 +510,8 @@
+     {
+       SCM car = SCM_CAR (lst);
+       if (scm_is_string (car)
+ 	  && mu_c_strncasecmp (scm_i_string_chars (car), name,
+-			       scm_i_string_length (car)) == 0)
++			       scm_c_string_length (car)) == 0)
+ 	return 1;
+     }
+   return 0;
diff --git a/pkgs/tools/networking/maphosts/Gemfile b/pkgs/tools/networking/maphosts/Gemfile
new file mode 100644
index 000000000000..cf3ea24c436f
--- /dev/null
+++ b/pkgs/tools/networking/maphosts/Gemfile
@@ -0,0 +1,2 @@
+source 'https://rubygems.org'
+gem 'maphosts'
diff --git a/pkgs/tools/networking/maphosts/Gemfile.lock b/pkgs/tools/networking/maphosts/Gemfile.lock
new file mode 100644
index 000000000000..c456210217e5
--- /dev/null
+++ b/pkgs/tools/networking/maphosts/Gemfile.lock
@@ -0,0 +1,19 @@
+GEM
+  remote: https://rubygems.org/
+  specs:
+    colorize (0.8.0)
+    hosts (0.1.1)
+      linebreak (~> 2.0.1)
+    linebreak (2.0.1)
+    maphosts (1.1.1)
+      colorize (~> 0.7)
+      hosts (~> 0.1)
+
+PLATFORMS
+  ruby
+
+DEPENDENCIES
+  maphosts
+
+BUNDLED WITH
+   1.12.5
diff --git a/pkgs/tools/networking/maphosts/default.nix b/pkgs/tools/networking/maphosts/default.nix
new file mode 100644
index 000000000000..08c56574dcf7
--- /dev/null
+++ b/pkgs/tools/networking/maphosts/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, lib, bundlerEnv, ruby }:
+
+stdenv.mkDerivation rec {
+  name = "maphosts-${env.gems.maphosts.version}";
+
+  env = bundlerEnv {
+    name = "maphosts-gems";
+    inherit ruby;
+    gemfile = ./Gemfile;
+    lockfile = ./Gemfile.lock;
+    gemset = ./gemset.nix;
+  };
+
+  phases = ["installPhase"];
+
+  installPhase = ''
+    mkdir -p "$out/bin"
+    ln -s "${env}/bin/maphosts" "$out/bin/maphosts"
+  '';
+
+  meta = with lib; {
+    description = "Small command line application for keeping your project hostnames in sync with /etc/hosts";
+    homepage    = https://github.com/mpscholten/maphosts;
+    license     = licenses.mit;
+    maintainers = with maintainers; [ mpscholten ];
+    platforms   = platforms.all;
+  };
+}
diff --git a/pkgs/tools/networking/maphosts/gemset.nix b/pkgs/tools/networking/maphosts/gemset.nix
new file mode 100644
index 000000000000..3469d76ea65d
--- /dev/null
+++ b/pkgs/tools/networking/maphosts/gemset.nix
@@ -0,0 +1,34 @@
+{
+  colorize = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1mmi9wr55gb84jfpyhpx975d2c8dhdsjjys88kc6f2r66brxmh23";
+      type = "gem";
+    };
+    version = "0.8.0";
+  };
+  hosts = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0s1mbn73ig5dy69dr8461574kq1ig6rdz89r1w5f8i7gvx9g9z9v";
+      type = "gem";
+    };
+    version = "0.1.1";
+  };
+  linebreak = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0362jhjhjcf0yr3k7bfqk4ai9yybm4985x7h1rwq4b7kvzk77pqj";
+      type = "gem";
+    };
+    version = "2.0.1";
+  };
+  maphosts = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0bb7wa4vr3lkaywh4hvl74j2w5n52870zh4ypwl9cr43fdrj4nkw";
+      type = "gem";
+    };
+    version = "1.1.1";
+  };
+}
\ No newline at end of file
diff --git a/pkgs/tools/networking/mpack/default.nix b/pkgs/tools/networking/mpack/default.nix
index 5a1095506424..41266e65aa09 100644
--- a/pkgs/tools/networking/mpack/default.nix
+++ b/pkgs/tools/networking/mpack/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
   preConfigure = "configureFlags=--mandir=$out/share/man";
 
   meta = {
-    description = "utilities for encoding and decoding binary files in MIME";
+    description = "Utilities for encoding and decoding binary files in MIME";
     platforms = stdenv.lib.platforms.unix;
   };
 }
diff --git a/pkgs/tools/networking/mu/default.nix b/pkgs/tools/networking/mu/default.nix
index 5829dc9d5509..fa1740e9d124 100644
--- a/pkgs/tools/networking/mu/default.nix
+++ b/pkgs/tools/networking/mu/default.nix
@@ -1,6 +1,6 @@
 { fetchurl, stdenv, sqlite, pkgconfig, autoreconfHook
 , xapian, glib, gmime, texinfo , emacs, guile
-, gtk3, webkit, libsoup, icu, withMug ? false /* doesn't build with current gtk3 */ }:
+, gtk3, webkitgtk24x, libsoup, icu }:
 
 stdenv.mkDerivation rec {
   version = "0.9.16";
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
   buildInputs = [
     sqlite pkgconfig xapian glib gmime texinfo emacs guile libsoup icu
     autoreconfHook
-  ] ++ stdenv.lib.optionals withMug [ gtk3 webkit ];
+    gtk3 webkitgtk24x ];
 
   preBuild = ''
     # Fix mu4e-builddir (set it to $out)
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   '';
 
   # Install mug and msg2pdf
-  postInstall = stdenv.lib.optionalString withMug ''
+  postInstall = ''
     cp -v toys/msg2pdf/msg2pdf $out/bin/
     cp -v toys/mug/mug $out/bin/
   '';
diff --git a/pkgs/tools/networking/nbd/default.nix b/pkgs/tools/networking/nbd/default.nix
index b89d2adea6bc..23d4117f8b84 100644
--- a/pkgs/tools/networking/nbd/default.nix
+++ b/pkgs/tools/networking/nbd/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     homepage = "http://nbd.sourceforge.net";
-    description = "map arbitrary files as block devices over the network";
+    description = "Map arbitrary files as block devices over the network";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.peti ];
     platforms = stdenv.lib.platforms.unix;
diff --git a/pkgs/tools/networking/nethogs/default.nix b/pkgs/tools/networking/nethogs/default.nix
index dfa9b26a38e8..eac95a32008c 100644
--- a/pkgs/tools/networking/nethogs/default.nix
+++ b/pkgs/tools/networking/nethogs/default.nix
@@ -2,18 +2,20 @@
 
 stdenv.mkDerivation rec {
   name = "nethogs-${version}";
-  version = "0.8.1";
+  version = "0.8.5";
 
   src = fetchFromGitHub {
     owner = "raboof";
     repo = "nethogs";
     rev = "v${version}";
-    sha256 = "1phn6i44ysvpl1f54bx4dspy51si8rc2wq6fywi163mi25j355d4";
+    sha256 = "13plwblwbnyyi40jaqx471gwhln08wm7f0fxyvj1yh3d81k556yx";
   };
 
   buildInputs = [ ncurses libpcap ];
 
-  installFlags = [ "prefix=$(out)" "sbin=$(prefix)/bin" ];
+  makeFlags = [ "VERSION=${version}" ];
+
+  installFlags = [ "PREFIX=$(out)" "sbin=$(out)/bin" ];
 
   meta = with stdenv.lib; {
     description = "A small 'net top' tool, grouping bandwidth by process";
@@ -27,7 +29,7 @@ stdenv.mkDerivation rec {
       bandwidth.
     '';
     license = licenses.gpl2Plus;
-    homepage = http://nethogs.sourceforge.net/;
+    homepage = "https://github.com/raboof/nethogs#readme";
     platforms = platforms.linux;
     maintainers = [ maintainers.rycee ];
   };
diff --git a/pkgs/tools/networking/network-manager-applet/default.nix b/pkgs/tools/networking/network-manager-applet/default.nix
index 5e8931579cb3..62a46c15bc84 100644
--- a/pkgs/tools/networking/network-manager-applet/default.nix
+++ b/pkgs/tools/networking/network-manager-applet/default.nix
@@ -1,28 +1,22 @@
 { stdenv, fetchurl, intltool, pkgconfig, libglade, networkmanager, gnome3
-, libnotify, libsecret, dbus_glib, polkit, isocodes
+, libnotify, libsecret, polkit, isocodes
 , mobile_broadband_provider_info, glib_networking, gsettings_desktop_schemas
 , makeWrapper, udev, libgudev, hicolor_icon_theme }:
 
-let
-  pn = "network-manager-applet";
-  major = "1.0";
-  # With version 1.0.12 of NM, we are no longer in sync
-  # version = "${networkmanager.version}.10";
-  version = "${major}.10";
-in
-
 stdenv.mkDerivation rec {
-  name = "network-manager-applet-${version}";
+  name    = "${pname}-${version}";
+  pname   = "network-manager-applet";
+  version = networkmanager.version;
 
   src = fetchurl {
-    url = "mirror://gnome/sources/${pn}/${major}/${name}.tar.xz";
-    sha256 = "1szh5jyijxm6z55irkp5s44pwah0nikss40mx7pvpk38m8zaqidh";
+    url    = "mirror://gnome/sources/${pname}/${networkmanager.major}/${name}.tar.xz";
+    sha256 = "02b42e7c17c9cd6c840563750da92ce58da1ec621df7f0c2402016026e727756";
   };
 
   configureFlags = [ "--sysconfdir=/etc" ];
 
   buildInputs = [
-    gnome3.gtk libglade networkmanager libnotify libsecret dbus_glib gsettings_desktop_schemas
+    gnome3.gtk libglade networkmanager libnotify libsecret gsettings_desktop_schemas
     polkit isocodes makeWrapper udev libgudev gnome3.gconf gnome3.libgnome_keyring
   ];
 
@@ -34,10 +28,9 @@ stdenv.mkDerivation rec {
     ''CFLAGS=-DMOBILE_BROADBAND_PROVIDER_INFO=\"${mobile_broadband_provider_info}/share/mobile-broadband-provider-info/serviceproviders.xml\"''
   ];
 
-  preInstall =
-    ''
-      installFlagsArray=( "sysconfdir=$out/etc" )
-    '';
+  preInstall = ''
+    installFlagsArray=( "sysconfdir=$out/etc" )
+  '';
 
   preFixup = ''
     wrapProgram "$out/bin/nm-applet" \
@@ -50,10 +43,10 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://projects.gnome.org/NetworkManager/;
+    homepage    = http://projects.gnome.org/NetworkManager/;
     description = "NetworkManager control applet for GNOME";
-    license = licenses.gpl2;
+    license     = licenses.gpl2;
     maintainers = with maintainers; [ phreedom urkud rickynils ];
-    platforms = platforms.linux;
+    platforms   = platforms.linux;
   };
 }
diff --git a/pkgs/tools/networking/network-manager/0.9.8.nix b/pkgs/tools/networking/network-manager/0.9.8/default.nix
index 4fad1ca2ab9a..4fad1ca2ab9a 100644
--- a/pkgs/tools/networking/network-manager/0.9.8.nix
+++ b/pkgs/tools/networking/network-manager/0.9.8/default.nix
diff --git a/pkgs/tools/networking/network-manager/libnl-3.2.25.patch b/pkgs/tools/networking/network-manager/0.9.8/libnl-3.2.25.patch
index 17c2966b7064..17c2966b7064 100644
--- a/pkgs/tools/networking/network-manager/libnl-3.2.25.patch
+++ b/pkgs/tools/networking/network-manager/0.9.8/libnl-3.2.25.patch
diff --git a/pkgs/tools/networking/network-manager/nixos-purity.patch b/pkgs/tools/networking/network-manager/0.9.8/nixos-purity.patch
index 831b2010fcfc..831b2010fcfc 100644
--- a/pkgs/tools/networking/network-manager/nixos-purity.patch
+++ b/pkgs/tools/networking/network-manager/0.9.8/nixos-purity.patch
diff --git a/pkgs/tools/networking/network-manager/default.nix b/pkgs/tools/networking/network-manager/default.nix
index 34506cb823d0..63740558a27f 100644
--- a/pkgs/tools/networking/network-manager/default.nix
+++ b/pkgs/tools/networking/network-manager/default.nix
@@ -1,16 +1,18 @@
-{ stdenv, fetchurl, intltool, wirelesstools, pkgconfig, dbus_glib, xz
-, systemd, libgudev, libnl, libuuid, polkit, gnutls, ppp, dhcp, dhcpcd, iptables
-, libgcrypt, dnsmasq, avahi, bind, perl, bluez5, substituteAll, readline
+{ stdenv, fetchurl, intltool, pkgconfig, dbus_glib
+, systemd, libgudev, libnl, libuuid, polkit, gnutls, ppp, dhcp, iptables
+, libgcrypt, dnsmasq, bluez5, readline
 , gobjectIntrospection, modemmanager, openresolv, libndp, newt, libsoup
 , ethtool, gnused, coreutils, file, inetutils }:
 
 stdenv.mkDerivation rec {
-  name = "network-manager-${version}";
-  version = "1.0.12";
+  name    = "network-manager-${version}";
+  pname   = "NetworkManager";
+  major   = "1.2";
+  version = "${major}.2";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/NetworkManager/1.0/NetworkManager-${version}.tar.xz";
-    sha256 = "17jan0g5jzp8mrpklyacwdgnnw016m1c5pc4az5im6qhc260yirs";
+    url    = "mirror://gnome/sources/${pname}/${major}/${pname}-${version}.tar.xz";
+    sha256 = "41d8082e027f58bb5fa4181f93742606ab99c659794a18e2823eff22df0eecd9";
   };
 
   preConfigure = ''
@@ -25,7 +27,6 @@ stdenv.mkDerivation rec {
       --replace /usr/sbin/ethtool ${ethtool}/sbin/ethtool \
       --replace /bin/sed ${gnused}/bin/sed
     # to enable link-local connections
-    substituteInPlace src/devices/nm-device.c --replace '("avahi-autoipd", NULL, NULL)' '("avahi-autoipd", &"${avahi}/sbin/avahi-autoipd", NULL)'
     configureFlags="$configureFlags --with-udev-dir=$out/lib/udev"
   '';
 
@@ -37,7 +38,6 @@ stdenv.mkDerivation rec {
     "--with-dhclient=${dhcp}/bin/dhclient"
     "--with-dnsmasq=${dnsmasq}/bin/dnsmasq"
     # Upstream prefers dhclient, so don't add dhcpcd to the closure
-    #"--with-dhcpcd=${dhcpcd}/sbin/dhcpcd"
     "--with-dhcpcd=no"
     "--with-pppd=${ppp}/bin/pppd"
     "--with-iptables=${iptables}/bin/iptables"
@@ -54,41 +54,37 @@ stdenv.mkDerivation rec {
     "--with-libsoup=yes"
   ];
 
-  buildInputs = [ wirelesstools systemd libgudev libnl libuuid polkit ppp libndp
-                  xz bluez5 dnsmasq gobjectIntrospection modemmanager readline newt libsoup ];
+  buildInputs = [ systemd libgudev libnl libuuid polkit ppp libndp
+                  bluez5 dnsmasq gobjectIntrospection modemmanager readline newt libsoup ];
 
   propagatedBuildInputs = [ dbus_glib gnutls libgcrypt ];
 
   nativeBuildInputs = [ intltool pkgconfig ];
 
-  patches = [ ./nm-platform.patch ];
-
-  preInstall =
-    ''
-      installFlagsArray=( "sysconfdir=$out/etc" "localstatedir=$out/var" )
-    '';
+  preInstall = ''
+    installFlagsArray=( "sysconfdir=$out/etc" "localstatedir=$out/var" "runstatedir=$out/var/run" )
+  '';
 
-  postInstall =
-    ''
-      mkdir -p $out/lib/NetworkManager
+  postInstall = ''
+    mkdir -p $out/lib/NetworkManager
 
-      # FIXME: Workaround until NixOS' dbus+systemd supports at_console policy
-      substituteInPlace $out/etc/dbus-1/system.d/org.freedesktop.NetworkManager.conf --replace 'at_console="true"' 'group="networkmanager"'
+    # FIXME: Workaround until NixOS' dbus+systemd supports at_console policy
+    substituteInPlace $out/etc/dbus-1/system.d/org.freedesktop.NetworkManager.conf --replace 'at_console="true"' 'group="networkmanager"'
 
-      # rename to network-manager to be in style
-      mv $out/etc/systemd/system/NetworkManager.service $out/etc/systemd/system/network-manager.service 
+    # rename to network-manager to be in style
+    mv $out/etc/systemd/system/NetworkManager.service $out/etc/systemd/system/network-manager.service 
 
-      # systemd in NixOS doesn't use `systemctl enable`, so we need to establish
-      # aliases ourselves.
-      ln -s $out/etc/systemd/system/NetworkManager-dispatcher.service $out/etc/systemd/system/dbus-org.freedesktop.nm-dispatcher.service
-      ln -s $out/etc/systemd/system/network-manager.service $out/etc/systemd/system/dbus-org.freedesktop.NetworkManager.service
-    '';
+    # systemd in NixOS doesn't use `systemctl enable`, so we need to establish
+    # aliases ourselves.
+    ln -s $out/etc/systemd/system/NetworkManager-dispatcher.service $out/etc/systemd/system/dbus-org.freedesktop.nm-dispatcher.service
+    ln -s $out/etc/systemd/system/network-manager.service $out/etc/systemd/system/dbus-org.freedesktop.NetworkManager.service
+  '';
 
   meta = with stdenv.lib; {
-    homepage = http://projects.gnome.org/NetworkManager/;
+    homepage    = http://projects.gnome.org/NetworkManager/;
     description = "Network configuration and management tool";
-    license = licenses.gpl2Plus;
-    maintainers = with maintainers; [ phreedom urkud rickynils domenkozar ];
-    platforms = platforms.linux;
+    license     = licenses.gpl2Plus;
+    maintainers = with maintainers; [ phreedom urkud rickynils domenkozar obadz ];
+    platforms   = platforms.linux;
   };
 }
diff --git a/pkgs/tools/networking/network-manager/l2tp-purity.patch b/pkgs/tools/networking/network-manager/l2tp-purity.patch
deleted file mode 100644
index c9117c5325b6..000000000000
--- a/pkgs/tools/networking/network-manager/l2tp-purity.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-diff --git a/src/nm-l2tp-service.c b/src/nm-l2tp-service.c
-index d2c9dc4..e61d3d2 100644
---- a/src/nm-l2tp-service.c
-+++ b/src/nm-l2tp-service.c
-@@ -655,9 +655,7 @@ nm_find_ipsec (void)
- {
- 	static const char *ipsec_binary_paths[] =
- 		{
--			"/sbin/ipsec",
--			"/usr/sbin/ipsec",
--			"/usr/local/sbin/ipsec",
-+                        "@strongswan@/bin/ipsec",
- 			NULL
- 		};
- 
-@@ -677,9 +675,7 @@ nm_find_l2tpd (void)
- {
- 	static const char *l2tp_binary_paths[] =
- 		{
--			"/sbin/xl2tpd",
--			"/usr/sbin/xl2tpd",
--			"/usr/local/sbin/xl2tpd",
-+                        "@xl2tpd@/bin/xl2tpd",
- 			NULL
- 		};
- 
diff --git a/pkgs/tools/networking/network-manager/l2tp.nix b/pkgs/tools/networking/network-manager/l2tp.nix
index f415b4f3bedd..af3b193798f6 100644
--- a/pkgs/tools/networking/network-manager/l2tp.nix
+++ b/pkgs/tools/networking/network-manager/l2tp.nix
@@ -1,43 +1,42 @@
-{ stdenv, fetchFromGitHub, substituteAll, automake, autoconf, libtool, intltool, pkgconfig
-, networkmanager, ppp, xl2tpd, strongswan
+{ stdenv, fetchFromGitHub, automake, autoconf, libtool, intltool, pkgconfig
+, networkmanager, networkmanagerapplet, ppp, xl2tpd, strongswan, libsecret
 , withGnome ? true, gnome3 }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}${if withGnome then "-gnome" else ""}-${version}";
-  pname = "NetworkManager-l2tp";
-  version = "0.9.8.7";
+  name    = "${pname}${if withGnome then "-gnome" else ""}-${version}";
+  pname   = "NetworkManager-l2tp";
+  version = networkmanager.version;
 
   src = fetchFromGitHub {
-    owner = "seriyps";
-    repo = "NetworkManager-l2tp";
-    rev = version;
-    sha256 = "07gl562p3f6l2wn64f3vvz1ygp3hsfhiwh4sn04c3fahfdys69zx";
+    owner  = "nm-l2tp";
+    repo   = "network-manager-l2tp";
+    rev    = "c0cedda5e2a0ded695b497c361eaf577068520cb";
+    sha256 = "01f39ghc37vw4n4i7whyikgqz8vzxf41q9fsv2gfw1g501cny1j2";
   };
 
-  buildInputs = [ networkmanager ppp ]
+  buildInputs = [ networkmanager ppp networkmanagerapplet libsecret ]
     ++ stdenv.lib.optionals withGnome [ gnome3.gtk gnome3.libgnome_keyring ];
 
   nativeBuildInputs = [ automake autoconf libtool intltool pkgconfig ];
 
-  configureScript = "./autogen.sh";
+  postPatch = ''
+    sed -i -e 's%"\(/usr/sbin\|/usr/pkg/sbin\|/usr/local/sbin\)/[^"]*",%%g' ./src/nm-l2tp-service.c
 
-  configureFlags =
-    if withGnome then "--with-gnome" else "--without-gnome";
+    substituteInPlace ./src/nm-l2tp-service.c \
+      --replace /sbin/ipsec  ${strongswan}/bin/ipsec \
+      --replace /sbin/xl2tpd ${xl2tpd}/bin/xl2tpd
+  '';
 
-  postConfigure = "sed 's/-Werror//g' -i Makefile */Makefile";
+  preConfigure = "./autogen.sh";
 
-  patches =
-    [ ( substituteAll {
-        src = ./l2tp-purity.patch;
-        inherit xl2tpd strongswan;
-      })
-    ];
+  configureFlags =
+    if withGnome then "--with-gnome" else "--without-gnome";
 
   meta = with stdenv.lib; {
     description = "L2TP plugin for NetworkManager";
     inherit (networkmanager.meta) platforms;
     homepage = https://github.com/seriyps/NetworkManager-l2tp;
     license = licenses.gpl2;
-    maintainers = with maintainers; [ abbradar ];
+    maintainers = with maintainers; [ abbradar obadz ];
   };
 }
diff --git a/pkgs/tools/networking/network-manager/nm-platform.patch b/pkgs/tools/networking/network-manager/nm-platform.patch
deleted file mode 100644
index 880d1a2e4921..000000000000
--- a/pkgs/tools/networking/network-manager/nm-platform.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-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 6a93100fa105..43eb681be295 100644
--- a/pkgs/tools/networking/network-manager/openconnect.nix
+++ b/pkgs/tools/networking/network-manager/openconnect.nix
@@ -2,15 +2,13 @@
 , withGnome ? true, gnome3, procps, kmod }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}${if withGnome then "-gnome" else ""}-${version}";
-  pname = "NetworkManager-openconnect";
-  version = "1.0.2";
-
-# FixMe: Change version back to "networkmanager.version"
+  name    = "${pname}${if withGnome then "-gnome" else ""}-${version}";
+  pname   = "NetworkManager-openconnect";
+  version = networkmanager.version;
 
   src = fetchurl {
-    url = "mirror://gnome/sources/${pname}/1.0/${pname}-${version}.tar.xz";
-    sha256 = "03k05s3aaxcwrip3g3r13bx80wbg7vh5sssc7mvg27c4cdc0a2hj";
+    url    = "mirror://gnome/sources/${pname}/${networkmanager.major}/${pname}-${version}.tar.xz";
+    sha256 = "522979593e21b4e884112816708db9eb66148b3491580dacfad53472b94aafec";
   };
 
   buildInputs = [ openconnect networkmanager libsecret ]
@@ -31,15 +29,6 @@ stdenv.mkDerivation rec {
        --replace "/sbin/modprobe" "${kmod}/sbin/modprobe"
   '';
 
-  postConfigure = ''
-     substituteInPlace "./auth-dialog/Makefile" \
-       --replace "-Wstrict-prototypes" "" \
-       --replace "-Werror" ""
-     substituteInPlace "properties/Makefile" \
-       --replace "-Wstrict-prototypes" "" \
-       --replace "-Werror" ""
-  '';
-
   meta = {
     description = "NetworkManager's OpenConnect plugin";
     inherit (networkmanager.meta) maintainers platforms;
diff --git a/pkgs/tools/networking/network-manager/openvpn.nix b/pkgs/tools/networking/network-manager/openvpn.nix
index 4b98600611e4..34e3a3e2959a 100644
--- a/pkgs/tools/networking/network-manager/openvpn.nix
+++ b/pkgs/tools/networking/network-manager/openvpn.nix
@@ -2,13 +2,13 @@
 , withGnome ? true, gnome3, procps, kmod }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}${if withGnome then "-gnome" else ""}-${version}";
-  pname = "NetworkManager-openvpn";
+  name    = "${pname}${if withGnome then "-gnome" else ""}-${version}";
+  pname   = "NetworkManager-openvpn";
   version = networkmanager.version;
 
   src = fetchurl {
-    url = "mirror://gnome/sources/${pname}/1.0/${pname}-${version}.tar.xz";
-    sha256 = "132xwkgyfnpma7m6b06jhrd1g9xk5dlpx8alnsf03ls3z92bd0n9";
+    url    = "mirror://gnome/sources/${pname}/${networkmanager.major}/${pname}-${version}.tar.xz";
+    sha256 = "47a6d219a781eff8491c7876b7fb95b12dcfb8f8a05f916f95afc65c7babddef";
   };
 
   buildInputs = [ openvpn networkmanager libsecret ]
@@ -33,15 +33,6 @@ stdenv.mkDerivation rec {
        --replace "/sbin/openvpn" "${openvpn}/sbin/openvpn"
   '';
 
-  postConfigure = ''
-     substituteInPlace "./auth-dialog/Makefile" \
-       --replace "-Wstrict-prototypes" "" \
-       --replace "-Werror" ""
-     substituteInPlace "properties/Makefile" \
-       --replace "-Wstrict-prototypes" "" \
-       --replace "-Werror" ""
-  '';
-
   meta = {
     description = "NetworkManager's OpenVPN plugin";
     inherit (networkmanager.meta) maintainers platforms;
diff --git a/pkgs/tools/networking/network-manager/pptp-purity.patch b/pkgs/tools/networking/network-manager/pptp-purity.patch
deleted file mode 100644
index 88af666b6580..000000000000
--- a/pkgs/tools/networking/network-manager/pptp-purity.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-diff --git a/src/nm-pptp-service.c b/src/nm-pptp-service.c
-index 68a5759..568bbfe 100644
---- a/src/nm-pptp-service.c
-+++ b/src/nm-pptp-service.c
-@@ -730,9 +730,7 @@ nm_find_pppd (void)
- {
- 	static const char *pppd_binary_paths[] =
- 		{
--			"/sbin/pppd",
--			"/usr/sbin/pppd",
--			"/usr/local/sbin/pppd",
-+			"@ppp@/sbin/pppd",
- 			NULL
- 		};
-
-@@ -752,9 +750,7 @@ nm_find_pptp (void)
- {
- 	static const char *pptp_binary_paths[] =
- 		{
--			"/sbin/pptp",
--			"/usr/sbin/pptp",
--			"/usr/local/sbin/pptp",
-+			"@pptp@/sbin/pptp",
- 			NULL
- 		};
- 
diff --git a/pkgs/tools/networking/network-manager/pptp.nix b/pkgs/tools/networking/network-manager/pptp.nix
index 1b1cf69119e4..a9bee0c74811 100644
--- a/pkgs/tools/networking/network-manager/pptp.nix
+++ b/pkgs/tools/networking/network-manager/pptp.nix
@@ -1,14 +1,14 @@
-{ stdenv, fetchurl, networkmanager, pptp, ppp, intltool, pkgconfig, substituteAll
+{ stdenv, fetchurl, networkmanager, pptp, ppp, intltool, pkgconfig
 , libsecret, withGnome ? true, gnome3 }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}${if withGnome then "-gnome" else ""}-${version}";
-  pname = "NetworkManager-pptp";
+  name    = "${pname}${if withGnome then "-gnome" else ""}-${version}";
+  pname   = "NetworkManager-pptp";
   version = networkmanager.version;
 
   src = fetchurl {
-    url = "mirror://gnome/sources/${pname}/1.0/${pname}-${version}.tar.xz";
-    sha256 = "1gn1f8r32wznk4rsn2lg2slw1ccli00svz0fi4bx0qiylimlbyln";
+    url    = "mirror://gnome/sources/${pname}/${networkmanager.major}/${pname}-${version}.tar.xz";
+    sha256 = "a72cb88ecc0a9edec836e8042c592d68b8b290c0d78082e6b25cf08b46c6be5d";
   };
 
   buildInputs = [ networkmanager pptp ppp libsecret ]
@@ -17,17 +17,16 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ intltool pkgconfig ];
 
-  configureFlags =
-    if withGnome then "--with-gnome --with-gtkver=3" else "--without-gnome";
+  postPatch = ''
+    sed -i -e 's%"\(/usr/sbin\|/usr/pkg/sbin\|/usr/local/sbin\)/[^"]*",%%g' ./src/nm-pptp-service.c
 
-  postConfigure = "sed 's/-Werror//g' -i Makefile */Makefile";
+    substituteInPlace ./src/nm-pptp-service.c \
+      --replace /sbin/pptp ${pptp}/bin/pptp \
+      --replace /sbin/pppd ${ppp}/bin/pppd
+  '';
 
-  patches =
-    [ ( substituteAll {
-        src = ./pptp-purity.patch;
-        inherit ppp pptp;
-      })
-    ];
+  configureFlags =
+    if withGnome then "--with-gnome --with-gtkver=3" else "--without-gnome";
 
   meta = {
     description = "PPtP plugin for NetworkManager";
diff --git a/pkgs/tools/networking/network-manager/vpnc.nix b/pkgs/tools/networking/network-manager/vpnc.nix
index 64de5408c7e0..97b2001d7592 100644
--- a/pkgs/tools/networking/network-manager/vpnc.nix
+++ b/pkgs/tools/networking/network-manager/vpnc.nix
@@ -2,13 +2,13 @@
 , withGnome ? true, gnome3, procps, kmod }:
 
 stdenv.mkDerivation rec {
-  name = "${pname}${if withGnome then "-gnome" else ""}-${version}";
-  pname = "NetworkManager-vpnc";
+  name    = "${pname}${if withGnome then "-gnome" else ""}-${version}";
+  pname   = "NetworkManager-vpnc";
   version = networkmanager.version;
 
   src = fetchurl {
-    url = "mirror://gnome/sources/${pname}/1.0/${pname}-${version}.tar.xz";
-    sha256 = "0hycplnc78688sgpzdh3ifra6chascrh751mckqkp1j553bri0jk";
+    url    = "mirror://gnome/sources/${pname}/${networkmanager.major}/${pname}-${version}.tar.xz";
+    sha256 = "e900f6500026f8c3ee4feb92e1d0a0c0abbee9ba507dad915b47a8ab7df9e1f3";
   };
 
   buildInputs = [ vpnc networkmanager libsecret ]
@@ -30,15 +30,6 @@ stdenv.mkDerivation rec {
        --replace "/sbin/modprobe" "${kmod}/sbin/modprobe"
   '';
 
-  postConfigure = ''
-     substituteInPlace "./auth-dialog/Makefile" \
-       --replace "-Wstrict-prototypes" "" \
-       --replace "-Werror" ""
-     substituteInPlace "properties/Makefile" \
-       --replace "-Wstrict-prototypes" "" \
-       --replace "-Werror" ""
-  '';
-
   meta = {
     description = "NetworkManager's VPNC plugin";
     inherit (networkmanager.meta) maintainers platforms;
diff --git a/pkgs/tools/networking/ntp/default.nix b/pkgs/tools/networking/ntp/default.nix
index b2242fe54546..4c42771be170 100644
--- a/pkgs/tools/networking/ntp/default.nix
+++ b/pkgs/tools/networking/ntp/default.nix
@@ -3,11 +3,11 @@
 assert stdenv.isLinux -> libcap != null;
 
 stdenv.mkDerivation rec {
-  name = "ntp-4.2.8p6";
+  name = "ntp-4.2.8p8";
 
   src = fetchurl {
     url = "http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/${name}.tar.gz";
-    sha256 = "0j509gd0snj8dq15rhfv2v4wisfaabya1gmgqslk1kisawf0wgaq";
+    sha256 = "1vlpgd0dk2wkpmmf869sfxi8f46sfnmjgk51vl8n6vj5y2sx1cra";
   };
 
   configureFlags = [
diff --git a/pkgs/tools/networking/ocproxy/default.nix b/pkgs/tools/networking/ocproxy/default.nix
new file mode 100644
index 000000000000..65729d896aab
--- /dev/null
+++ b/pkgs/tools/networking/ocproxy/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchFromGitHub, autoconf, automake, libevent }:
+
+stdenv.mkDerivation rec {
+  version = "1.50";
+  name = "ocproxy-${version}";
+
+  src = fetchFromGitHub {
+    owner = "cernekee";
+    repo = "ocproxy";
+    rev = "v${version}";
+    sha256 = "136vlk2svgls5paf17xi1zahcahgcnmi2p55khh7zpqaar4lzw6s";
+  };
+
+  buildInputs = [ autoconf automake libevent ];
+
+  preConfigure = ''
+    patchShebangs autogen.sh
+    ./autogen.sh
+  '';
+
+  meta = with stdenv.lib; {
+    description = "OpenConnect proxy";
+    longdescription = ''
+      ocproxy is a user-level SOCKS and port forwarding proxy for OpenConnect
+      based on lwIP.
+    '';
+    homepage = https://github.com/cernekee/ocproxy;
+    license = licenses.bsd3;
+    maintainers = [ maintainers.joko ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/tools/networking/openvpn/default.nix b/pkgs/tools/networking/openvpn/default.nix
index 6f7b72c1f1c1..e666cf7f605d 100644
--- a/pkgs/tools/networking/openvpn/default.nix
+++ b/pkgs/tools/networking/openvpn/default.nix
@@ -3,11 +3,11 @@
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  name = "openvpn-2.3.10";
+  name = "openvpn-2.3.11";
 
   src = fetchurl {
     url = "http://swupdate.openvpn.net/community/releases/${name}.tar.gz";
-    sha256 = "1xn8kv4v4h4v8mhd9k4s9rilb7k30jgb9rm7n4fwmfrm5swvbc7q";
+    sha256 = "0qv1flcz4q4mb7zpkxsnlmpvrv3s9gw7xvprjk7n2pnk9x1s85wi";
   };
 
   patches = optional stdenv.isLinux ./systemd-notify.patch;
diff --git a/pkgs/tools/networking/p2p/gtk-gnutella/default.nix b/pkgs/tools/networking/p2p/gtk-gnutella/default.nix
index ec2821f4d818..7d48f38e79d8 100644
--- a/pkgs/tools/networking/p2p/gtk-gnutella/default.nix
+++ b/pkgs/tools/networking/p2p/gtk-gnutella/default.nix
@@ -1,30 +1,26 @@
 { stdenv, fetchurl, bison, pkgconfig
-, glib, gtk, libxml2, gettext, zlib }:
+, glib, gtk, libxml2, gettext, zlib, binutils, gnutls }:
 
 let
   name = "gtk-gnutella";
-  version = "1.1.5";
+  version = "1.1.9";
 in
 stdenv.mkDerivation {
   name = "${name}-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/${name}/${name}-${version}.tar.bz2";
-    sha256 = "19d8mmyxrdwdafcjq1hvs9zn40yrcj1127163a2058svi0x08cn3";
+    sha256 = "1zvadgsskmpm82id9mbj24a2lyq38qv768ixv7nmfjl3d4wr2biv";
   };
 
-  nativeBuildInputs = [ bison pkgconfig ];
-  buildInputs = [ glib gtk libxml2 gettext zlib ];
+  nativeBuildInputs = [ bison binutils gettext pkgconfig ];
+  buildInputs = [ glib gnutls gtk libxml2 zlib ];
 
-  NIX_LDFLAGS = "-rpath ${zlib.out}/lib";
-  configureScript = "./Configure";
-  dontAddPrefix = true;
-  configureFlags = "-d -e -D prefix=$out -D gtkversion=2 -D official=true";
+  configureScript = "./build.sh --configure-only";
 
   meta = with stdenv.lib; {
     homepage = http://gtk-gnutella.sourceforge.net/;
     description = "Server/client for Gnutella";
     license = licenses.gpl2;
-    broken = true;
   };
 }
diff --git a/pkgs/tools/networking/pptpd/default.nix b/pkgs/tools/networking/pptpd/default.nix
new file mode 100644
index 000000000000..d5464b97a335
--- /dev/null
+++ b/pkgs/tools/networking/pptpd/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchurl, ppp }:
+
+stdenv.mkDerivation rec {
+  name    = "${pname}-${version}";
+  pname   = "pptpd";
+  version = "1.4.0";
+
+  src = fetchurl {
+    url    = "mirror://sourceforge/poptop/${pname}/${name}/${name}.tar.gz";
+    sha256 = "1h06gyxj51ba6kbbnf6hyivwjia0i6gsmjz8kyggaany8a58pkcg";
+  };
+
+  buildInputs = [ ppp ];
+
+  postPatch = ''
+    substituteInPlace plugins/Makefile --replace "install -o root" "install"
+  '';
+
+  meta = with stdenv.lib; {
+    homepage    = http://poptop.sourceforge.net/dox/;
+    description = "The PPTP Server for Linux";
+    platforms   = platforms.linux;
+    maintainers = with maintainers; [ obadz ];
+  };
+}
diff --git a/pkgs/tools/networking/ratools/default.nix b/pkgs/tools/networking/ratools/default.nix
index 423c58450c56..00c1c86ea8b5 100644
--- a/pkgs/tools/networking/ratools/default.nix
+++ b/pkgs/tools/networking/ratools/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    description = "a fast, dynamic, multi-threading framework for IPv6 Router Advertisements";
+    description = "A fast, dynamic, multi-threading framework for IPv6 Router Advertisements";
     homepage = https://github.com/danrl/ratools;
     license = licenses.asl20;
     platforms = platforms.linux;
diff --git a/pkgs/tools/networking/shadowsocks-libev/default.nix b/pkgs/tools/networking/shadowsocks-libev/default.nix
index e12d25930210..eb30ba2368a8 100644
--- a/pkgs/tools/networking/shadowsocks-libev/default.nix
+++ b/pkgs/tools/networking/shadowsocks-libev/default.nix
@@ -1,8 +1,8 @@
-{ withPolarSSL ? false
+{ withMbedTLS ? true
 , enableSystemSharedLib ? true
 , stdenv, fetchurl, zlib
 , openssl ? null
-, polarssl ? null
+, mbedtls ? null
 , libev ? null
 , libsodium ? null
 , udns ? null
@@ -25,13 +25,13 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [ zlib ]
-                ++ optional (!withPolarSSL) openssl
-                ++ optional withPolarSSL polarssl
+                ++ optional (!withMbedTLS) openssl
+                ++ optional withMbedTLS mbedtls
                 ++ optional enableSystemSharedLib [libev libsodium udns];
 
-  configureFlags = optional withPolarSSL
-                     [ "--with-crypto-library=polarssl"
-                       "--with-polarssl=${polarssl}"
+  configureFlags = optional withMbedTLS
+                     [ "--with-crypto-library=mbedtls"
+                       "--with-mbedtls=${mbedtls}"
                      ]
                    ++ optional enableSystemSharedLib "--enable-system-shared-lib";
 
diff --git a/pkgs/tools/networking/siege/default.nix b/pkgs/tools/networking/siege/default.nix
index c4d68ee399a1..c188dd477fe1 100644
--- a/pkgs/tools/networking/siege/default.nix
+++ b/pkgs/tools/networking/siege/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, openssl, zlib }:
 
 stdenv.mkDerivation rec {
-  name = "siege-4.0.1";
+  name = "siege-4.0.2";
 
   src = fetchurl {
     url = "http://download.joedog.org/siege/${name}.tar.gz";
-    sha256 = "0dr8k64s7zlhy3w8n1br0h6xd06p09p9809l9rp13isf10jp5pgx";
+    sha256 = "0ivc6ah9n2888qgh8dicszhr3mjs42538lfx7dlhxvvvakwq3yvy";
   };
 
   NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isLinux "-lgcc_s";
diff --git a/pkgs/tools/networking/smbldaptools/default.nix b/pkgs/tools/networking/smbldaptools/default.nix
index 9ca5c3be177a..ef300d683144 100644
--- a/pkgs/tools/networking/smbldaptools/default.nix
+++ b/pkgs/tools/networking/smbldaptools/default.nix
@@ -1,13 +1,13 @@
 {stdenv, fetchurl, perl, NetLDAP, makeWrapper, CryptSmbHash, DigestSHA1}:
 
 let
-  version = "0.9.10";
+  version = "0.9.11";
 in
 stdenv.mkDerivation {
   name = "smbldap-tools-${version}";
   src = fetchurl {
     url = "http://download.gna.org/smbldap-tools/sources/${version}/smbldap-tools-${version}.tar.gz";
-    sha256 = "19hsvslfs61pk9nhyqdkd68gc95z26kpkmsj10b8zvzlhqmwdvy4";
+    sha256 = "1xcxmpz74r82vjp731axyac3cyksfiarz9jk5g5m2bzfdixkq9mz";
   };
 
   buildInputs = [ perl NetLDAP makeWrapper CryptSmbHash DigestSHA1 ];
@@ -27,7 +27,5 @@ 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/socat/default.nix b/pkgs/tools/networking/socat/default.nix
index 36c6a2deead0..19cdb884bd1a 100644
--- a/pkgs/tools/networking/socat/default.nix
+++ b/pkgs/tools/networking/socat/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, openssl }:
+{ stdenv, fetchurl, openssl, readline }:
 
 stdenv.mkDerivation rec {
   name = "socat-1.7.3.1";
@@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
     sha256 = "1apvi7sahcl44arnq1ad2y6lbfqnmvx7nhz9i3rkk0f382anbnnj";
   };
 
-  buildInputs = [ openssl ];
+  buildInputs = [ openssl readline ];
 
   patches = [ ./enable-ecdhe.patch ./libressl-fixes.patch ];
 
diff --git a/pkgs/tools/networking/spiped/default.nix b/pkgs/tools/networking/spiped/default.nix
index 2fec2ac1bd58..b50d619b437d 100644
--- a/pkgs/tools/networking/spiped/default.nix
+++ b/pkgs/tools/networking/spiped/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    description = "utility for secure encrypted channels between sockets";
+    description = "Utility for secure encrypted channels between sockets";
     homepage    = "https://www.tarsnap.com/spiped.html";
     license     = stdenv.lib.licenses.bsd2;
     platforms   = stdenv.lib.platforms.unix;
diff --git a/pkgs/tools/networking/srelay/arm.patch b/pkgs/tools/networking/srelay/arm.patch
new file mode 100644
index 000000000000..f56f2c0f2f0a
--- /dev/null
+++ b/pkgs/tools/networking/srelay/arm.patch
@@ -0,0 +1,12 @@
+diff -ru srelay-0.4.8b4.orig/configure srelay-0.4.8b4/configure
+--- srelay-0.4.8b4.orig/configure	2010-12-21 01:11:14.000000000 +1100
++++ srelay-0.4.8b4/configure	2016-06-22 09:03:42.250000345 +1000
+@@ -1875,7 +1875,7 @@
+ 	;;
+   linux*)
+ 	case "$host_cpu" in
+-	  i*86|mips*|powerpc*|sparc*|x86_64*)
++	  i*86|mips*|powerpc*|sparc*|x86_64*|arm*)
+ 	    OS=LINUX
+ 	    cat >>confdefs.h <<\_ACEOF
+ #define LINUX 1
diff --git a/pkgs/tools/networking/srelay/default.nix b/pkgs/tools/networking/srelay/default.nix
new file mode 100644
index 000000000000..853a21da73c4
--- /dev/null
+++ b/pkgs/tools/networking/srelay/default.nix
@@ -0,0 +1,21 @@
+{ stdenv, fetchurl, openssl }:
+
+stdenv.mkDerivation rec {
+  name = "srelay-0.4.8b6";
+
+  src = fetchurl {
+    url = "https://sourceforge.net/projects/socks-relay/files/socks-relay/srelay-0.4.8/srelay-0.4.8b6.tar.gz";
+    sha256 = "1az9ds10hpmpw6bqk7fcd1w70001kz0mm48v3vgg2z6vrbmgn0qj";
+  };
+
+  patches = [ ./arm.patch ];
+
+  installPhase = "install -D srelay $out/bin/srelay";
+
+  meta = {
+    description = "A SOCKS proxy and relay";
+    homepage = http://socks-relay.sourceforge.net/;
+    platforms = stdenv.lib.platforms.unix;
+    license = stdenv.lib.licenses.bsd3;
+  };
+}
diff --git a/pkgs/tools/networking/ssh-ident/default.nix b/pkgs/tools/networking/ssh-ident/default.nix
new file mode 100644
index 000000000000..605986935f01
--- /dev/null
+++ b/pkgs/tools/networking/ssh-ident/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchFromGitHub, makeWrapper, python }:
+
+stdenv.mkDerivation rec {
+  name = "ssh-ident-${version}";
+  version = "2016-04-21";
+  src = fetchFromGitHub  {
+    owner = "ccontavalli";
+    repo = "ssh-ident";
+    rev = "ebf8282728211dc4448d50f7e16e546ed03c22d2";
+    sha256 = "1jf19lz1gwn7cyp57j8d4zs5bq13iw3kw31m8nvr8h6sib2pf815";
+  };
+
+  buildInputs = [ makeWrapper ];
+  installPhase = ''
+    mkdir -p $out/bin
+    install -m 755 ssh-ident $out/bin/ssh-ident
+    wrapProgram $out/bin/ssh-ident \
+      --prefix PATH : "${python}/bin/python"
+  '';
+
+  meta = {
+    homepage = https://github.com/ccontavalli/ssh-ident;
+    description = "Start and use ssh-agent and load identities as necessary";
+    license = stdenv.lib.licenses.bsd2;
+    maintainers = with stdenv.lib.maintainers; [ telotortium ];
+  };
+}
diff --git a/pkgs/tools/networking/stunnel/default.nix b/pkgs/tools/networking/stunnel/default.nix
index cd0c1e56baca..114247682c7a 100644
--- a/pkgs/tools/networking/stunnel/default.nix
+++ b/pkgs/tools/networking/stunnel/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = {
-    description = "universal tls/ssl wrapper";
+    description = "Universal tls/ssl wrapper";
     homepage    = "http://www.stunnel.org/";
     license     = stdenv.lib.licenses.gpl2Plus;
     platforms   = stdenv.lib.platforms.unix;
diff --git a/pkgs/tools/networking/traceroute/default.nix b/pkgs/tools/networking/traceroute/default.nix
index d98c9996882d..3d3be5d4532c 100644
--- a/pkgs/tools/networking/traceroute/default.nix
+++ b/pkgs/tools/networking/traceroute/default.nix
@@ -2,14 +2,14 @@
 
 stdenv.mkDerivation rec {
   name = "traceroute-${version}";
-  version = "2.0.21";
+  version = "2.1.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/traceroute/${name}.tar.gz";
-    sha256 = "1q4n9s42nfcc4fmnwmrsiabvqrcaagiagmmqj9r5hfmi63pr7b7p";
+    sha256 = "3669d22a34d3f38ed50caba18cd525ba55c5c00d5465f2d20d7472e5d81603b6";
   };
 
-  makeFlags = "prefix=$(out)";
+  makeFlags = "prefix=$(out) LDFLAGS=-lm";
 
   preConfigure = ''
     sed -i 's@LIBS := \(.*\) -lm \(.*\)@LIBS := \1 \2@' Make.rules
diff --git a/pkgs/tools/networking/unbound/default.nix b/pkgs/tools/networking/unbound/default.nix
index 684b9b13a804..1443c9bfb7d7 100644
--- a/pkgs/tools/networking/unbound/default.nix
+++ b/pkgs/tools/networking/unbound/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "unbound-${version}";
-  version = "1.5.8";
+  version = "1.5.9";
 
   src = fetchurl {
     url = "http://unbound.net/downloads/${name}.tar.gz";
-    sha256 = "33567a20f73e288f8daa4ec021fbb30fe1824b346b34f12677ad77899ecd09be";
+    sha256 = "01328cfac99ab5b8c47115151896a244979e442e284eb962c0ea84b7782b6990";
   };
 
   outputs = [ "out" "lib" "man" ]; # "dev" would only split ~20 kB
diff --git a/pkgs/tools/networking/urlwatch/default.nix b/pkgs/tools/networking/urlwatch/default.nix
index 67b53c83448f..3634b852fadc 100644
--- a/pkgs/tools/networking/urlwatch/default.nix
+++ b/pkgs/tools/networking/urlwatch/default.nix
@@ -1,14 +1,19 @@
 { stdenv, fetchurl, python3Packages }:
 
 python3Packages.buildPythonApplication rec {
-  name = "urlwatch-2.1";
+  name = "urlwatch-2.2";
 
   src = fetchurl {
     url = "http://thp.io/2008/urlwatch/${name}.tar.gz";
-    sha256 = "0xn435cml9wjwk39117p1diqmvw3jbmv9ccr7230iaf7z59vf9v6";
+    sha256 = "0s9056mm1hkj5gpzsb5bz6fwxk0nm73i0dhnqwa1bfddjnvpl9d3";
   };
 
+  patches = [
+    ./setup.patch
+  ];
+
   propagatedBuildInputs = with python3Packages; [
+    keyring
     minidb
     pyyaml
     requests2
diff --git a/pkgs/tools/networking/urlwatch/setup.patch b/pkgs/tools/networking/urlwatch/setup.patch
new file mode 100644
index 000000000000..66626dbf0259
--- /dev/null
+++ b/pkgs/tools/networking/urlwatch/setup.patch
@@ -0,0 +1,42 @@
+From ebe7b90100a3d960f53fdc9409d2d89eaa61bf11 Mon Sep 17 00:00:00 2001
+From: Thomas Perl <m@thp.io>
+Date: Tue, 28 Jun 2016 18:15:51 +0200
+Subject: [PATCH] Check current directory and use os.path.relpath (Fixes #73)
+
+---
+ setup.py | 11 ++++++++---
+ 1 file changed, 8 insertions(+), 3 deletions(-)
+
+diff --git a/setup.py b/setup.py
+index 947a7c8..45405cd 100644
+--- a/setup.py
++++ b/setup.py
+@@ -7,10 +7,15 @@
+ 
+ import os
+ import re
++import sys
+ 
+ PACKAGE_NAME = 'urlwatch'
+ DEPENDENCIES = ['minidb', 'PyYAML', 'requests']
+-HERE = os.path.dirname(__file__)
++HERE = os.path.abspath(os.path.dirname(__file__))
++
++if os.path.normpath(os.getcwd()) != os.path.normpath(HERE):
++    print('You must run {} inside {} (cwd={})'.format(os.path.basename(__file__), HERE, os.getcwd()))
++    sys.exit(1)
+ 
+ # Assumptions:
+ #  1. Package name equals main script file name (and only one script)
+@@ -29,9 +34,9 @@
+ 
+ m['scripts'] = [os.path.join(HERE, PACKAGE_NAME)]
+ m['package_dir'] = {'': os.path.join(HERE, 'lib')}
+-m['packages'] = ['.'.join(dirname[len(HERE)+1:].split(os.sep)[1:])
++m['packages'] = ['.'.join(os.path.relpath(dirname, HERE).split(os.sep)[1:])
+                  for dirname, _, files in os.walk(os.path.join(HERE, 'lib')) if '__init__.py' in files]
+-m['data_files'] = [(dirname[len(HERE)+1:], [os.path.join(dirname[len(HERE)+1:], fn) for fn in files])
++m['data_files'] = [(os.path.relpath(dirname, HERE), [os.path.join(os.path.relpath(dirname, HERE), fn) for fn in files])
+                    for dirname, _, files in os.walk(os.path.join(HERE, 'share')) if files]
+ m['install_requires'] = DEPENDENCIES
+ 
diff --git a/pkgs/tools/networking/vpnc/default.nix b/pkgs/tools/networking/vpnc/default.nix
index e1905e2deb65..b183b653d26e 100644
--- a/pkgs/tools/networking/vpnc/default.nix
+++ b/pkgs/tools/networking/vpnc/default.nix
@@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     homepage = "http://www.unix-ag.uni-kl.de/~massar/vpnc/";
-    description = "virtual private network (VPN) client for Cisco's VPN concentrators";
+    description = "Virtual private network (VPN) client for Cisco's VPN concentrators";
     license = stdenv.lib.licenses.gpl2Plus;
 
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/tools/networking/wget/default.nix b/pkgs/tools/networking/wget/default.nix
index 9b9909a89432..42309b49bb8a 100644
--- a/pkgs/tools/networking/wget/default.nix
+++ b/pkgs/tools/networking/wget/default.nix
@@ -3,11 +3,11 @@
 , libiconv, libpsl ? null, openssl ? null }:
 
 stdenv.mkDerivation rec {
-  name = "wget-1.17.1";
+  name = "wget-1.18";
 
   src = fetchurl {
     url = "mirror://gnu/wget/${name}.tar.xz";
-    sha256 = "1jcpvl5sxb2ag8yahpy370c5jlfb097a21k2mhsidh4wxdhrnmgy";
+    sha256 = "1hcwx8ww3sxzdskkx3l7q70a7wd6569yrnjkw9pw013cf9smpddm";
   };
 
   patches = [ ./remove-runtime-dep-on-openssl-headers.patch ];
diff --git a/pkgs/tools/networking/wicd/default.nix b/pkgs/tools/networking/wicd/default.nix
index 9294d4c88ae7..9315a53cb3ee 100644
--- a/pkgs/tools/networking/wicd/default.nix
+++ b/pkgs/tools/networking/wicd/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
     ./fix-curses.patch
     ];
 
-  # Should I be using pygtk's propogated build inputs?
+  # Should I be using pygtk's propagated build inputs?
   # !!! Should use makeWrapper.
   postPatch = ''
     # We don't have "python2".
diff --git a/pkgs/tools/networking/zerotierone/default.nix b/pkgs/tools/networking/zerotierone/default.nix
index e05a65d6967e..3dc68ca149aa 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.1.4";
+  version = "1.1.12";
   name = "zerotierone";
 
   src = fetchurl {
     url = "https://github.com/zerotier/ZeroTierOne/archive/${version}.tar.gz";
-    sha256 = "10aw0dlkmprdvph3aqkqximxqkryf0l4jcnv2bbm7f1qvclqihva";
+    sha256 = "0mji6bmxjvxy2mhvzfz4vpdz62n1wv6a02rapzbiad8zr2c869cm";
   };
 
   preConfigure = ''
@@ -22,6 +22,8 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ openssl lzo zlib gcc iproute ];
 
+  buildFlags = [ "one" ]; # TODO: Add support for building and installing manpages as well.
+
   installPhase = ''
     install -Dt "$out/bin/" zerotier-one
     ln -s $out/bin/zerotier-one $out/bin/zerotier-idtool