summary refs log tree commit diff
path: root/pkgs/tools
diff options
context:
space:
mode:
authorPeter Simons <simons@cryp.to>2014-09-02 12:31:03 +0200
committerPeter Simons <simons@cryp.to>2014-09-02 12:31:03 +0200
commit1c0d15b90ef67363f798d67d12dd31ed5fccb411 (patch)
tree3693dd49b591dbbba261e95fc4b78650f1675578 /pkgs/tools
parentbb61b45d92bad2435e80dcac855a78bda57ec7e8 (diff)
parent2fc76ea05417671306d27f9ba83ef1b8d4049f3d (diff)
downloadnixpkgs-1c0d15b90ef67363f798d67d12dd31ed5fccb411.tar
nixpkgs-1c0d15b90ef67363f798d67d12dd31ed5fccb411.tar.gz
nixpkgs-1c0d15b90ef67363f798d67d12dd31ed5fccb411.tar.bz2
nixpkgs-1c0d15b90ef67363f798d67d12dd31ed5fccb411.tar.lz
nixpkgs-1c0d15b90ef67363f798d67d12dd31ed5fccb411.tar.xz
nixpkgs-1c0d15b90ef67363f798d67d12dd31ed5fccb411.tar.zst
nixpkgs-1c0d15b90ef67363f798d67d12dd31ed5fccb411.zip
Merge branch 'origin/master' into staging.
Conflicts:
	pkgs/development/libraries/ffmpeg/2.x.nix
	pkgs/development/libraries/serf/default.nix
Diffstat (limited to 'pkgs/tools')
-rw-r--r--pkgs/tools/X11/xnee/default.nix7
-rw-r--r--pkgs/tools/backup/duplicity/default.nix9
-rw-r--r--pkgs/tools/compression/xar/default.nix34
-rw-r--r--pkgs/tools/filesystems/btrfsprogs/default.nix11
-rw-r--r--pkgs/tools/filesystems/smbnetfs/default.nix13
-rw-r--r--pkgs/tools/filesystems/smbnetfs/default.upstream6
-rw-r--r--pkgs/tools/graphics/barcode/default.nix15
-rw-r--r--pkgs/tools/graphics/graphviz/2.32.nix61
-rw-r--r--pkgs/tools/graphics/graphviz/default.nix10
-rw-r--r--pkgs/tools/misc/cloc/default.nix13
-rw-r--r--pkgs/tools/misc/grub/2.0x.nix62
-rw-r--r--pkgs/tools/misc/ised/default.nix11
-rw-r--r--pkgs/tools/misc/ised/default.upstream4
-rw-r--r--pkgs/tools/misc/rrdtool/default.nix5
-rw-r--r--pkgs/tools/misc/s6-portable-utils/default.nix55
-rw-r--r--pkgs/tools/misc/xdaliclock/default.nix13
-rw-r--r--pkgs/tools/networking/atftp/default.nix57
-rw-r--r--pkgs/tools/networking/cjdns/default.nix16
-rw-r--r--pkgs/tools/networking/cjdns/makekey.patch64
-rw-r--r--pkgs/tools/networking/dnsmasq/default.nix2
-rw-r--r--pkgs/tools/networking/getmail/default.nix9
-rw-r--r--pkgs/tools/networking/openntpd/default.nix32
-rw-r--r--pkgs/tools/networking/s6-dns/default.nix53
-rw-r--r--pkgs/tools/networking/s6-networking/default.nix63
-rw-r--r--pkgs/tools/networking/urlwatch/default.nix21
-rw-r--r--pkgs/tools/networking/wavemon/default.nix13
-rw-r--r--pkgs/tools/package-management/koji/default.nix21
-rw-r--r--pkgs/tools/security/clamav/default.nix12
-rw-r--r--pkgs/tools/system/dd_rescue/default.nix8
-rw-r--r--pkgs/tools/system/freeipmi/default.nix9
-rw-r--r--pkgs/tools/system/ioping/default.nix12
-rw-r--r--pkgs/tools/system/ioping/default.upstream5
-rw-r--r--pkgs/tools/system/ipmiutil/default.nix12
-rw-r--r--pkgs/tools/system/ipmiutil/default.upstream4
-rw-r--r--pkgs/tools/system/sleuthkit/default.nix6
-rw-r--r--pkgs/tools/system/sleuthkit/default.upstream5
-rw-r--r--pkgs/tools/typesetting/tex/texlive/default.nix8
-rw-r--r--pkgs/tools/typesetting/tex/texlive/extra.nix4
38 files changed, 602 insertions, 163 deletions
diff --git a/pkgs/tools/X11/xnee/default.nix b/pkgs/tools/X11/xnee/default.nix
index 35c4ca06c6c..43fa105e680 100644
--- a/pkgs/tools/X11/xnee/default.nix
+++ b/pkgs/tools/X11/xnee/default.nix
@@ -2,11 +2,12 @@
 , gtk, libXi, inputproto, pkgconfig, recordproto, texinfo }:
 
 stdenv.mkDerivation rec {
-  name = "xnee-3.12";
+  version = "3.19";
+  name = "xnee-${version}";
 
   src = fetchurl {
     url = "mirror://gnu/xnee/${name}.tar.gz";
-    sha256 = "10vxn0in0l2jir6x90grx5jc64x63l3b0f8liladdbplc8za8zmw";
+    sha256 = "04n2lac0vgpv8zsn7nmb50hf3qb56pmj90dmwnivg09gyrf1x92j";
   };
 
   patchPhase =
@@ -48,7 +49,7 @@ stdenv.mkDerivation rec {
 
     homepage = http://www.gnu.org/software/xnee/;
 
-    maintainers = [ ];
+    maintainers = with stdenv.lib.maintainers; [ fuuzetsu ];
     platforms = stdenv.lib.platforms.gnu;  # arbitrary choice
   };
 }
diff --git a/pkgs/tools/backup/duplicity/default.nix b/pkgs/tools/backup/duplicity/default.nix
index 45d6cb83739..0f8c46e2dc3 100644
--- a/pkgs/tools/backup/duplicity/default.nix
+++ b/pkgs/tools/backup/duplicity/default.nix
@@ -1,14 +1,15 @@
-{ stdenv, fetchurl, python, librsync, ncftp, gnupg, boto, makeWrapper, lockfile }:
+{ stdenv, fetchurl, python, librsync, ncftp, gnupg, boto, makeWrapper
+, lockfile, setuptools }:
 
 let
-  version = "0.6.23";
+  version = "0.6.24";
 in
 stdenv.mkDerivation {
   name = "duplicity-${version}";
 
   src = fetchurl {
     url = "http://code.launchpad.net/duplicity/0.6-series/${version}/+download/duplicity-${version}.tar.gz";
-    sha256 = "0q0ckkmyq9z7xfbb1jajflmbzjwxpcjkkiab43rxrplm0ghz25vs";
+    sha256 = "0l14nrhbgkyjgvh339bbhnm6hrdwrjadphq1jmpi0mcgcdbdfh8x";
   };
 
   installPhase = ''
@@ -20,7 +21,7 @@ stdenv.mkDerivation {
       --prefix PYTHONPATH : "$(toPythonPath $out):$(toPythonPath ${boto}):$(toPythonPath ${lockfile})" \
   '';
 
-  buildInputs = [ python librsync makeWrapper ];
+  buildInputs = [ python librsync makeWrapper setuptools ];
 
   meta = {
     description = "Encrypted bandwidth-efficient backup using the rsync algorithm";
diff --git a/pkgs/tools/compression/xar/default.nix b/pkgs/tools/compression/xar/default.nix
new file mode 100644
index 00000000000..0bb4a1fb2ae
--- /dev/null
+++ b/pkgs/tools/compression/xar/default.nix
@@ -0,0 +1,34 @@
+{ stdenv, fetchurl, libxml2, openssl, zlib, bzip2 }:
+
+stdenv.mkDerivation rec {
+  version = "1.5.2";
+  name    = "xar-${version}";
+
+  src = fetchurl {
+    url    = "https://xar.googlecode.com/files/${name}.tar.gz";
+    sha256 = "1rp3va6akzlh35yqrapfqnbxaxa0zi8wyr93swbapprwh215cpac";
+  };
+
+  buildInputs = [ libxml2 openssl zlib bzip2 ];
+
+  meta = {
+    homepage    = https://code.google.com/p/xar/;
+    description = "Extensible Archiver";
+
+    longDescription =
+      '' The XAR project aims to provide an easily extensible archive format.
+         Important design decisions include an easily extensible XML table of
+         contents for random access to archived files, storing the toc at the
+         beginning of the archive to allow for efficient handling of streamed
+         archives, the ability to handle files of arbitrarily large sizes, the
+         ability to choose independent encodings for individual files in the
+         archive, the ability to store checksums for individual files in both
+         compressed and uncompressed form, and the ability to query the table
+         of content's rich meta-data.
+      '';
+
+    license     = stdenv.lib.licenses.bsd3;
+    maintainers = with stdenv.lib.maintainers; [ copumpkin ];
+    platforms   = stdenv.lib.platforms.all;
+  };
+}
diff --git a/pkgs/tools/filesystems/btrfsprogs/default.nix b/pkgs/tools/filesystems/btrfsprogs/default.nix
index 66152f9589b..02f214ad430 100644
--- a/pkgs/tools/filesystems/btrfsprogs/default.nix
+++ b/pkgs/tools/filesystems/btrfsprogs/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchurl, attr, acl, zlib, libuuid, e2fsprogs, lzo
 , asciidoc, xmlto, docbook_xml_dtd_45, docbook_xsl, libxslt }:
 
-let version = "3.14.2"; in
+let version = "3.16"; in
 
 stdenv.mkDerivation rec {
   name = "btrfs-progs-${version}";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/people/mason/btrfs-progs/btrfs-progs-v${version}.tar.xz";
-    sha256 = "14vpj6f2v076v9zabgrz8l4dp6n1ar2mvk3lvii51ykvi35d1qbh";
+    sha256 = "0phbrgipl04q8cdj9nnshik7b6p2bg51jxb3l1gvfc04dkgm2xls";
   };
 
   buildInputs = [
@@ -21,10 +21,11 @@ stdenv.mkDerivation rec {
 
   makeFlags = "prefix=$(out)";
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Utilities for the btrfs filesystem";
     homepage = https://btrfs.wiki.kernel.org/;
-    maintainers = [ stdenv.lib.maintainers.raskin ];
-    platforms = stdenv.lib.platforms.linux;
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ raskin wkennington ];
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/tools/filesystems/smbnetfs/default.nix b/pkgs/tools/filesystems/smbnetfs/default.nix
index 616f61e6c84..e9d9b27d751 100644
--- a/pkgs/tools/filesystems/smbnetfs/default.nix
+++ b/pkgs/tools/filesystems/smbnetfs/default.nix
@@ -12,17 +12,16 @@ let
   sourceInfo = rec {
     baseName="smbnetfs";
     dirBaseName="SMBNetFS";
-    version="0.5.3a";
+    version = "0.5.3b";
     name="${baseName}-${version}";
     project="${baseName}";
     url="mirror://sourceforge/project/${project}/${baseName}/${dirBaseName}-${version}/${name}.tar.bz2";
-    hash="0fzlw11y2vkxmjzz3qcypqlvz074v6a3pl4pyffbniqal64qgrsw";
   };
 in
 rec {
   src = a.fetchurl {
     url = sourceInfo.url;
-    sha256 = sourceInfo.hash;
+    sha256 = "1j9b30kh4ymv4nr8c1qc7hfg6pscgyj75ib16pqa0zljjk1klx18";
   };
 
   inherit (sourceInfo) name version;
@@ -40,11 +39,9 @@ rec {
     platforms = with a.lib.platforms;
       linux;
     license = a.lib.licenses.gpl2;
-  };
-  passthru = {
-    updateInfo = {
-      downloadPage = "http://sourceforge.net/projects/smbnetfs/files/smbnetfs";
-    };
+    downloadPage = "http://sourceforge.net/projects/smbnetfs/files/smbnetfs";
+    updateWalker = true;
+    inherit version;
   };
 }) x
 
diff --git a/pkgs/tools/filesystems/smbnetfs/default.upstream b/pkgs/tools/filesystems/smbnetfs/default.upstream
new file mode 100644
index 00000000000..9e2ba2bd59b
--- /dev/null
+++ b/pkgs/tools/filesystems/smbnetfs/default.upstream
@@ -0,0 +1,6 @@
+url http://sourceforge.net/projects/smbnetfs/files/smbnetfs/
+version_link '[-][0-9.]+[a-z]*/$'
+version_link '[.]tar[.][a-z0-9]+/download$'
+SF_redirect
+version '.*[-]([0-9.]+[a-z]*)[.]tar[.].*' '\1'
+do_overwrite () { do_overwrite_just_version; }
diff --git a/pkgs/tools/graphics/barcode/default.nix b/pkgs/tools/graphics/barcode/default.nix
index 60dc5a285da..23a2e6dd78f 100644
--- a/pkgs/tools/graphics/barcode/default.nix
+++ b/pkgs/tools/graphics/barcode/default.nix
@@ -9,17 +9,16 @@ let
   buildInputs = map (n: builtins.getAttr n x)
     (builtins.attrNames (builtins.removeAttrs x helperArgNames));
   sourceInfo = rec {
-    version="0.99";
+    version = "0.99";
     baseName="barcode";
     name="${baseName}-${version}";
-    url="mirror://gnu/${baseName}/${name}.tar.gz";
-    hash="0r2b2lwg7a9i9ic5spkbnavy1ynrppmrldv46vsl44l1xgriq0vw";
+    url="mirror://gnu/${baseName}/${name}.tar.xz";
   };
 in
 rec {
   src = a.fetchurl {
     url = sourceInfo.url;
-    sha256 = sourceInfo.hash;
+    sha256 = "1indapql5fjz0bysyc88cmc54y8phqrbi7c76p71fgjp45jcyzp8";
   };
 
   inherit (sourceInfo) name version;
@@ -35,11 +34,9 @@ rec {
       raskin
     ];
     platforms = with a.lib.platforms; allBut darwin;
-  };
-  passthru = {
-    updateInfo = {
-      downloadPage = "ftp://ftp.gnu.org/gnu/barcode/";
-    };
+    downloadPage = "http://ftp.gnu.org/gnu/barcode/";
+    updateWalker = true;
+    inherit version;
   };
 }) x
 
diff --git a/pkgs/tools/graphics/graphviz/2.32.nix b/pkgs/tools/graphics/graphviz/2.32.nix
new file mode 100644
index 00000000000..0a86a892417
--- /dev/null
+++ b/pkgs/tools/graphics/graphviz/2.32.nix
@@ -0,0 +1,61 @@
+{ stdenv, fetchurl, pkgconfig, libpng, libjpeg, expat, libXaw
+, yacc, libtool, fontconfig, pango, gd, xlibs, gts, gettext, cairo
+}:
+
+stdenv.mkDerivation rec {
+  version = "2.32.0";
+  name = "graphviz-${version}";
+
+  src = fetchurl {
+    url = "http://www.graphviz.org/pub/graphviz/ARCHIVE/${name}.tar.gz";
+    sha256 = "0ym7lw3xnkcgbk32vfmm3329xymca60gzn90rq6dv8887qqv4lyq";
+  };
+
+  buildInputs =
+    [ pkgconfig libpng libjpeg expat libXaw yacc libtool fontconfig
+      pango gd gts
+    ] ++ stdenv.lib.optionals (xlibs != null) [ xlibs.xlibs xlibs.libXrender ]
+    ++ stdenv.lib.optional (stdenv.system == "x86_64-darwin") gettext;
+
+  CPPFLAGS = stdenv.lib.optionalString (stdenv.system == "x86_64-darwin") "-I${cairo}/include/cairo";
+
+  configureFlags =
+    [ "--with-pngincludedir=${libpng}/include"
+      "--with-pnglibdir=${libpng}/lib"
+      "--with-jpegincludedir=${libjpeg}/include"
+      "--with-jpeglibdir=${libjpeg}/lib"
+      "--with-expatincludedir=${expat}/include"
+      "--with-expatlibdir=${expat}/lib"
+      "--with-cgraph=no"
+      "--with-sparse=no"
+    ]
+    ++ stdenv.lib.optional (xlibs == null) "--without-x";
+
+  preBuild = ''
+    sed -e 's@am__append_5 *=.*@am_append_5 =@' -i lib/gvc/Makefile
+  '';
+
+  # "command -v" is POSIX, "which" is not
+  postInstall = ''
+    sed -i 's|`which lefty`|"'$out'/bin/lefty"|' $out/bin/dotty
+    sed -i 's|which|command -v|' $out/bin/vimdot
+  '';
+
+  meta = {
+    homepage = "http://www.graphviz.org/";
+    description = "Open source graph visualization software";
+
+    longDescription = ''
+      Graphviz is open source graph visualization software. Graph
+      visualization is a way of representing structural information as
+      diagrams of abstract graphs and networks. It has important
+      applications in networking, bioinformatics, software engineering,
+      database and web design, machine learning, and in visual
+      interfaces for other technical domains.
+    '';
+
+    hydraPlatforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
+    maintainers = with stdenv.lib.maintainers; [ simons bjornfor raskin ];
+    inherit version;
+  };
+}
diff --git a/pkgs/tools/graphics/graphviz/default.nix b/pkgs/tools/graphics/graphviz/default.nix
index 27883ca6037..e9a552e3300 100644
--- a/pkgs/tools/graphics/graphviz/default.nix
+++ b/pkgs/tools/graphics/graphviz/default.nix
@@ -3,11 +3,12 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "graphviz-2.36.0";
+  version = "2.38.0";
+  name = "graphviz-${version}";
 
   src = fetchurl {
     url = "http://www.graphviz.org/pub/graphviz/ARCHIVE/${name}.tar.gz";
-    sha256 = "0qb30z5sxlbjni732ndad3j4x7l36vsxpxn4fmf5fn7ivvc6dz9p";
+    sha256 = "17l5czpvv5ilmg17frg0w4qwf89jzh2aglm9fgx0l0aakn6j7al1";
   };
 
   buildInputs =
@@ -52,6 +53,9 @@ stdenv.mkDerivation rec {
     '';
 
     hydraPlatforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
-    maintainers = with stdenv.lib.maintainers; [ simons bjornfor ];
+    maintainers = with stdenv.lib.maintainers; [ simons bjornfor raskin ];
+    downloadPage = "http://www.graphviz.org/pub/graphviz/ARCHIVE/";
+    inherit version;
+    updateWalker = true;
   };
 }
diff --git a/pkgs/tools/misc/cloc/default.nix b/pkgs/tools/misc/cloc/default.nix
index dfe5476f813..8d7ba0c70c8 100644
--- a/pkgs/tools/misc/cloc/default.nix
+++ b/pkgs/tools/misc/cloc/default.nix
@@ -1,30 +1,25 @@
 { stdenv, fetchurl, perl, AlgorithmDiff, RegexpCommon }:
 
 stdenv.mkDerivation rec {
-  
+
   name = "cloc-${version}";
 
-  version = "1.58";
+  version = "1.62";
 
   src = fetchurl {
     url = "mirror://sourceforge/cloc/cloc-${version}.tar.gz";
-    sha256 = "1k92jldy4m717lh1xd6yachx3l2hhpx76qhj1ipnx12hsxw1zc8w";
+    sha256 = "1cxc663dccd0sc2m0aj5lxdbnbzrys6rh9n8q122h74bfvsiw4f4";
   };
 
   buildInputs = [ perl AlgorithmDiff RegexpCommon ];
 
-  unpackPhase = ''
-    mkdir ${name}
-    tar xf $src -C ${name}
-    cd ${name}
-  '';
-
   makeFlags = [ "prefix=" "DESTDIR=$(out)" "INSTALL=install" ];
 
   meta = {
     description = "A program that counts lines of source code";
     homepage = http://cloc.sourceforge.net;
     license = stdenv.lib.licenses.gpl2;
+    maintainers = with stdenv.lib.maintainers; [ fuuzetsu ];
   };
 
 }
diff --git a/pkgs/tools/misc/grub/2.0x.nix b/pkgs/tools/misc/grub/2.0x.nix
index e3c07af759c..b1877bdcf98 100644
--- a/pkgs/tools/misc/grub/2.0x.nix
+++ b/pkgs/tools/misc/grub/2.0x.nix
@@ -1,45 +1,30 @@
-{ stdenv, fetchurl, autogen, flex, bison, python, autoconf, automake
-, gettext, ncurses, libusb, freetype, qemu, devicemapper
-, linuxPackages ? null
-, efiSupport ? false
-, zfsSupport ? false
-}:
-
-with stdenv.lib;
-let
-  efiSystems = {
-    "i686-linux".target = "i386";
-    "x86_64-linux".target = "x86_64";
-  };
+{ fetchurl, stdenv, flex, bison, gettext, ncurses, libusb, freetype, qemu
+, devicemapper, EFIsupport ? false }:
 
-  canEfi = any (system: stdenv.system == system) (mapAttrsToList (name: _: name) efiSystems);
+let
 
-  prefix = "grub${if efiSupport then "-efi" else ""}";
+  prefix = "grub${if EFIsupport then "-efi" else ""}";
 
-  version = "2.02-beta2";
+  version = "2.00";
 
   unifont_bdf = fetchurl {
     url = "http://unifoundry.com/unifont-5.1.20080820.bdf.gz";
     sha256 = "0s0qfff6n6282q28nwwblp5x295zd6n71kl43xj40vgvdqxv0fxx";
   };
-in (
 
-assert efiSupport -> canEfi;
-assert zfsSupport -> linuxPackages != null && linuxPackages.zfs != null;
+in
 
 stdenv.mkDerivation rec {
   name = "${prefix}-${version}";
 
   src = fetchurl {
-    name = "grub-2.02-beta2.tar.xz";
-    url = "http://alpha.gnu.org/gnu/grub/grub-2.02~beta2.tar.xz";
-    sha256 = "13a13fhc0wf473dn73zhga15mjvkg6vqp4h25dxg4n7am2r05izn";
+    url = "mirror://gnu/grub/grub-${version}.tar.xz";
+    sha256 = "0n64hpmsccvicagvr0c6v0kgp2yw0kgnd3jvsyd26cnwgs7c6kkq";
   };
 
-  nativeBuildInputs = [ autogen flex bison python autoconf automake ];
+  nativeBuildInputs = [ flex bison ];
   buildInputs = [ ncurses libusb freetype gettext devicemapper ]
-    ++ optional doCheck qemu
-    ++ optional zfsSupport linuxPackages.zfs;
+    ++ stdenv.lib.optional doCheck qemu;
 
   preConfigure =
     '' for i in "tests/util/"*.in
@@ -58,19 +43,27 @@ stdenv.mkDerivation rec {
        # See <http://www.mail-archive.com/qemu-devel@nongnu.org/msg22775.html>.
        sed -i "tests/util/grub-shell.in" \
            -e's/qemu-system-i386/qemu-system-x86_64 -nodefaults/g'
+
+       # Fix for building on Glibc 2.16.  Won't be needed once the
+       # gnulib in grub is updated.
+       sed -i '/gets is a security hole/d' grub-core/gnulib/stdio.in.h
     '';
 
   prePatch =
-    '' sh autogen.sh
-       gunzip < "${unifont_bdf}" > "unifont.bdf"
+    '' gunzip < "${unifont_bdf}" > "unifont.bdf"
        sed -i "configure" \
            -e "s|/usr/src/unifont.bdf|$PWD/unifont.bdf|g"
     '';
 
   patches = [ ./fix-bash-completion.patch ];
 
-  configureFlags = optional zfsSupport "--enable-libzfs"
-    ++ optionals efiSupport [ "--with-platform=efi" "--target=${efiSystems.${stdenv.system}.target}" "--program-prefix=" ];
+  configureFlags =
+    let arch = if stdenv.system == "i686-linux" then "i386"
+               else if stdenv.system == "x86_64-linux" then "x86_64"
+               else throw "unsupported EFI firmware architecture";
+    in
+      stdenv.lib.optionals EFIsupport
+        [ "--with-platform=efi" "--target=${arch}" "--program-prefix=" ];
 
   doCheck = false;
   enableParallelBuilding = true;
@@ -79,7 +72,7 @@ stdenv.mkDerivation rec {
     paxmark pms $out/sbin/grub-{probe,bios-setup}
   '';
 
-  meta = with stdenv.lib; {
+  meta = {
     description = "GNU GRUB, the Grand Unified Boot Loader (2.x beta)";
 
     longDescription =
@@ -96,8 +89,11 @@ stdenv.mkDerivation rec {
 
     homepage = http://www.gnu.org/software/grub/;
 
-    license = licenses.gpl3Plus;
+    license = stdenv.lib.licenses.gpl3Plus;
 
-    platforms = platforms.gnu;
+    platforms = if EFIsupport then
+      [ "i686-linux" "x86_64-linux" ]
+    else
+      stdenv.lib.platforms.gnu;
   };
-})
+}
diff --git a/pkgs/tools/misc/ised/default.nix b/pkgs/tools/misc/ised/default.nix
index 02cb65b1060..96acc6c8ab9 100644
--- a/pkgs/tools/misc/ised/default.nix
+++ b/pkgs/tools/misc/ised/default.nix
@@ -10,16 +10,15 @@ let
     (builtins.attrNames (builtins.removeAttrs x helperArgNames));
   sourceInfo = rec {
     baseName="ised";
-    version="2.5.0";
+    version = "2.6.0";
     name="${baseName}-${version}";
     url="mirror://sourceforge/project/ised/${name}.tar.bz2";
-    hash="1avfb4ivq6iz50rraci0pcxl0w94899sz6icdqc0l4954y4zs8qd";
   };
 in
 rec {
   src = a.fetchurl {
     url = sourceInfo.url;
-    sha256 = sourceInfo.hash;
+    sha256 = "0rf9brqkrad8f3czpfc1bxq9ybv3nxci9276wdxas033c82cqkjs";
   };
 
   inherit (sourceInfo) name version;
@@ -37,11 +36,7 @@ rec {
     platforms = with a.lib.platforms;
       linux;
     license = a.lib.licenses.gpl3Plus;
-  };
-  passthru = {
-    updateInfo = {
-      downloadPage = "ised.sf.net";
-    };
+    inherit version;
   };
 }) x
 
diff --git a/pkgs/tools/misc/ised/default.upstream b/pkgs/tools/misc/ised/default.upstream
new file mode 100644
index 00000000000..6539bf477e5
--- /dev/null
+++ b/pkgs/tools/misc/ised/default.upstream
@@ -0,0 +1,4 @@
+url http://ised.sourceforge.net/web_nav.html
+SF_version_tarball
+SF_redirect
+minimize_overwrite
diff --git a/pkgs/tools/misc/rrdtool/default.nix b/pkgs/tools/misc/rrdtool/default.nix
index aa14087dfc8..29d98284ccf 100644
--- a/pkgs/tools/misc/rrdtool/default.nix
+++ b/pkgs/tools/misc/rrdtool/default.nix
@@ -7,6 +7,11 @@ stdenv.mkDerivation {
     sha256 = "07fgn0y4yj7p2vh6a37q273hf98gkfw2sdam5r1ldn1k0m1ayrqj";
   };
   buildInputs = [ gettext perl pkgconfig libxml2 pango cairo ];
+  
+  postInstall = ''
+    # for munin support
+    mv $out/lib/perl/5*/*/*.pm $out/lib/perl/5*/
+  '';
 
   meta = {
     homepage = http://oss.oetiker.ch/rrdtool/;
diff --git a/pkgs/tools/misc/s6-portable-utils/default.nix b/pkgs/tools/misc/s6-portable-utils/default.nix
new file mode 100644
index 00000000000..f8e7dfaddc9
--- /dev/null
+++ b/pkgs/tools/misc/s6-portable-utils/default.nix
@@ -0,0 +1,55 @@
+{ stdenv, fetchurl, skalibs }:
+
+let
+
+  version = "1.0.3.2";
+
+in stdenv.mkDerivation rec {
+
+  name = "s6-portable-utils-${version}";
+
+  src = fetchurl {
+    url = "http://www.skarnet.org/software/s6-portable-utils/${name}.tar.gz";
+    sha256 = "040nmls7qbgw8yn502lym4kgqh5zxr2ks734bqajpi2ricnasvhl";
+  };
+
+  buildInputs = [ skalibs ];
+
+  sourceRoot = "admin/${name}";
+
+  configurePhase = ''
+    pushd conf-compile
+
+    printf "$out/bin"           > conf-install-command
+    printf "$out/libexec"       > conf-install-libexec
+
+    # let nix builder strip things, cross-platform
+    truncate --size 0 conf-stripbins
+    truncate --size 0 conf-striplibs
+
+    printf "${skalibs}/sysdeps"      > import
+    printf "%s" "${skalibs}/include" > path-include
+    printf "%s" "${skalibs}/lib"     > path-library
+
+    rm -f flag-slashpackage
+    touch flag-allstatic
+
+    popd
+  '';
+
+  preBuild = ''
+    patchShebangs src/sys
+  '';
+
+  preInstall = ''
+    mkdir -p "$out/libexec"
+  '';
+
+  meta = {
+    homepage = http://www.skarnet.org/software/s6-portable-utils/;
+    description = "A set of tiny general Unix utilities optimized for simplicity and small size.";
+    platforms = stdenv.lib.platforms.all;
+    license = stdenv.lib.licenses.isc;
+  };
+
+}
diff --git a/pkgs/tools/misc/xdaliclock/default.nix b/pkgs/tools/misc/xdaliclock/default.nix
index 79c6a743bce..df1a7eedeff 100644
--- a/pkgs/tools/misc/xdaliclock/default.nix
+++ b/pkgs/tools/misc/xdaliclock/default.nix
@@ -12,17 +12,16 @@ let
     (builtins.attrNames (builtins.removeAttrs x helperArgNames));
   sourceInfo = rec {
     baseName="xdaliclock";
-    version="2.40";
+    version = "2.41";
     name="${baseName}-${version}";
     project="${baseName}";
     url="http://www.jwz.org/${project}/${name}.tar.gz";
-    hash="03i8vwi9vz3gr938wr4miiymwv283mg11wgfaf2jhl6aqbmz4id7";
   };
 in
 rec {
   src = a.fetchurl {
     url = sourceInfo.url;
-    sha256 = sourceInfo.hash;
+    sha256 = "1crkjvza692irkqm9vwgn58m8ps93n0rxigm6pasgl5dnx3p6d1d";
   };
 
   inherit (sourceInfo) name version;
@@ -46,10 +45,8 @@ rec {
     platforms = with a.lib.platforms;
       linux ++ freebsd;
     license = "free"; #TODO BSD on Gentoo, looks like MIT
-  };
-  passthru = {
-    updateInfo = {
-      downloadPage = "http://www.jwz.org/xdaliclock/";
-    };
+    downloadPage = "http://www.jwz.org/xdaliclock/";
+    inherit version;
+    updateWalker = true;
   };
 }) x
diff --git a/pkgs/tools/networking/atftp/default.nix b/pkgs/tools/networking/atftp/default.nix
index acd71ea893d..b6bdfc7fabc 100644
--- a/pkgs/tools/networking/atftp/default.nix
+++ b/pkgs/tools/networking/atftp/default.nix
@@ -1,27 +1,34 @@
-{ stdenv, fetchurl, pcre, readline }:
-
+{ lib, stdenv, fetchurl, readline, tcp_wrappers, pcre, makeWrapper }:
+assert stdenv.isLinux;
+assert stdenv.gcc.gcc != null;
+let
+version = "0.7";
+debianPatch = fetchurl {
+url = "mirror://debian/pool/main/a/atftp/atftp_${version}.dfsg-11.diff.gz";
+sha256 = "07g4qbmp0lnscg2dkj6nsj657jaghibvfysdm1cdxcn215n3zwqd";
+};
+in
 stdenv.mkDerivation {
-  name = "atftp-0.7.1";
-
-  src = fetchurl {
-    url = "mirror://sourceforge/atftp/atftp-0.7.1.tar.gz";
-    sha256 = "0bgr31gbnr3qx4ixf8hz47l58sh3367xhcnfqd8233fvr84nyk5f";
-  };
-
-  buildInputs = [ pcre readline ];
-
-  NIX_LDFLAGS = "-lgcc_s"; # for pthread_cancel
-
-  configureFlags = [
-    "--enable-libreadline"
-    "--enable-libpcre"
-    "--enable-mtftp"
-  ];
-
-  meta = with stdenv.lib; {
-    description = "Advanced TFTP server and client";
-    homepage = http://sourceforge.net/projects/atftp/;
-    license = licenses.gpl2Plus;
-    platforms = platforms.linux;
-  };
+name = "atftp";
+inherit version;
+src = fetchurl {
+url = "mirror://debian/pool/main/a/atftp/atftp_${version}.dfsg.orig.tar.gz";
+sha256 = "0nd5dl14d6z5abgcbxcn41rfn3syza6s57bbgh4aq3r9cxdmz08q";
+};
+buildInputs = [ readline tcp_wrappers pcre makeWrapper ];
+patches = [ debianPatch ];
+postInstall = ''
+wrapProgram $out/sbin/atftpd --prefix LD_LIBRARY_PATH : ${stdenv.gcc.gcc}/lib${if stdenv.system == "x86_64-linux" then "64" else ""}
+'';
+meta = {
+description = "Advanced tftp tools";
+maintainers = lib.maintainers.raskin;
+platforms = lib.platforms.linux;
+license = lib.licenses.gpl2Plus;
+passthru = {
+updateInfo = {
+downloadPage = "http://packages.debian.org/source/wheezy/atftp";
+};
+};
+};
 }
diff --git a/pkgs/tools/networking/cjdns/default.nix b/pkgs/tools/networking/cjdns/default.nix
index 48e21f4507e..be107dfa81e 100644
--- a/pkgs/tools/networking/cjdns/default.nix
+++ b/pkgs/tools/networking/cjdns/default.nix
@@ -1,21 +1,27 @@
 { stdenv, fetchgit, nodejs, which, python27 }:
 
 let
-  date = "20140303";
-  rev = "f11ce1fd4795b0173ac0ef18c8a6f752aa824adb";
+  date = "20140829";
+  rev = "9595d67f9edd759054c5bd3aaee0968ff55e361a";
 in
 stdenv.mkDerivation {
   name = "cjdns-${date}-${stdenv.lib.strings.substring 0 7 rev}";
 
   src = fetchgit {
-    url = "git://github.com/cjdelisle/cjdns.git";
+    url = "https://github.com/cjdelisle/cjdns.git";
     inherit rev;
-    sha256 = "1bxhf9f1v0slf9mz3ll6jf45mkwvwxlf3yqxx9k23kjyr1nsc8s8";
+    sha256 = "519c549c42ae26c5359ae13a4548c44b51e36db403964b4d9f78c19b749dfb83";
   };
 
   buildInputs = [ which python27 nodejs];
 
-  builder = ./builder.sh;
+  patches = [ ./makekey.patch ];
+
+  buildPhase = "bash do";
+  installPhase = ''
+    mkdir -p $out/sbin
+    cp cjdroute makekey $out/sbin
+  '';
 
   meta = {
     homepage = https://github.com/cjdelisle/cjdns;
diff --git a/pkgs/tools/networking/cjdns/makekey.patch b/pkgs/tools/networking/cjdns/makekey.patch
new file mode 100644
index 00000000000..fcce5e3e728
--- /dev/null
+++ b/pkgs/tools/networking/cjdns/makekey.patch
@@ -0,0 +1,64 @@
+diff --git a/contrib/c/makekey.c b/contrib/c/makekey.c
+new file mode 100644
+index 0000000..c7184e5
+--- /dev/null
++++ b/contrib/c/makekey.c
+@@ -0,0 +1,46 @@
++/* vim: set expandtab ts=4 sw=4: */
++/*
++ * You may redistribute this program and/or modify it under the terms of
++ * the GNU General Public License as published by the Free Software Foundation,
++ * either version 3 of the License, or (at your option) any later version.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
++ */
++#include "crypto/random/Random.h"
++#include "memory/MallocAllocator.h"
++#include "crypto/AddressCalc.h"
++#include "util/AddrTools.h"
++#include "util/Hex.h"
++
++#include "crypto_scalarmult_curve25519.h"
++
++#include <stdio.h>
++
++int main(int argc, char** argv)
++{
++    struct Allocator* alloc = MallocAllocator_new(1<<22);
++    struct Random* rand = Random_new(alloc, NULL, NULL);
++
++    uint8_t privateKey[32];
++    uint8_t publicKey[32];
++    uint8_t ip[16];
++    uint8_t hexPrivateKey[65];
++
++    for (;;) {
++        Random_bytes(rand, privateKey, 32);
++        crypto_scalarmult_curve25519_base(publicKey, privateKey);
++        if (AddressCalc_addressForPublicKey(ip, publicKey)) {
++            Hex_encode(hexPrivateKey, 65, privateKey, 32);
++            printf(hexPrivateKey);
++            return 0;
++        }
++    }
++    return 0;
++}
++
+diff --git a/node_build/make.js b/node_build/make.js
+index 5e51645..11465e3 100644
+--- a/node_build/make.js
++++ b/node_build/make.js
+@@ -339,6 +339,7 @@ Builder.configure({
+     builder.buildExecutable('contrib/c/privatetopublic.c');
+     builder.buildExecutable('contrib/c/sybilsim.c');
+     builder.buildExecutable('contrib/c/makekeys.c');
++    builder.buildExecutable('contrib/c/makekey.c');
+ 
+     builder.buildExecutable('crypto/random/randombytes.c');
+ 
diff --git a/pkgs/tools/networking/dnsmasq/default.nix b/pkgs/tools/networking/dnsmasq/default.nix
index 02f24ce4c00..3cfc902711e 100644
--- a/pkgs/tools/networking/dnsmasq/default.nix
+++ b/pkgs/tools/networking/dnsmasq/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
     install -Dm644 dbus/dnsmasq.conf $out/etc/dbus-1/system.d/dnsmasq.conf
     install -Dm644 trust-anchors.conf $out/share/dnsmasq/trust-anchors.conf
 
-    ensureDir $out/share/dbus-1/system-services
+    mkdir -p $out/share/dbus-1/system-services
     cat <<END > $out/share/dbus-1/system-services/uk.org.thekelleys.dnsmasq.service
     [D-BUS Service]
     Name=uk.org.thekelleys.dnsmasq
diff --git a/pkgs/tools/networking/getmail/default.nix b/pkgs/tools/networking/getmail/default.nix
index 6d9666506b8..8c9103790b9 100644
--- a/pkgs/tools/networking/getmail/default.nix
+++ b/pkgs/tools/networking/getmail/default.nix
@@ -1,12 +1,13 @@
 { stdenv, fetchurl, buildPythonPackage }:
 
 buildPythonPackage rec {
-  name = "getmail-4.43.0";
+  version = "4.46.0";
+  name = "getmail-${version}";
   namePrefix = "";
 
   src = fetchurl {
     url = "http://pyropus.ca/software/getmail/old-versions/${name}.tar.gz";
-    sha256 = "0abcj4d2jp9y56c85kq7265d8wcij91w9lpzib9q6j9lcs4la8hy";
+    sha256 = "15rqmm25pq6ll8aaqh8h6pfdkpqs7y6yismb3h3w1bz8j292c8zl";
   };
 
   doCheck = false;
@@ -15,5 +16,9 @@ buildPythonPackage rec {
     description = "A program for retrieving mail";
     maintainers = [ stdenv.lib.maintainers.raskin stdenv.lib.maintainers.iElectric ];
     platforms = stdenv.lib.platforms.linux;
+
+    homepage = "http://pyropus.ca/software/getmail/";
+    inherit version;
+    updateWalker = true;
   };
 }
diff --git a/pkgs/tools/networking/openntpd/default.nix b/pkgs/tools/networking/openntpd/default.nix
new file mode 100644
index 00000000000..c90582a7547
--- /dev/null
+++ b/pkgs/tools/networking/openntpd/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchgit, openssl
+, privsepPath ? "/var/empty"
+, privsepUser ? "ntp"
+}:
+
+stdenv.mkDerivation rec {
+  name = "openntpd-${version}";
+  version = "20080406p-10";
+
+  src = fetchgit {
+    url = "git://git.debian.org/collab-maint/openntpd.git";
+    rev = "refs/tags/debian/${version}";
+    sha256 = "0gd6j4sw4x4adlz0jzbp6lblx5vlnk6l1034hzbj2xd95k8hjhh8";
+  };
+
+  postPatch = ''
+    sed -i -e '/^install:/,/^$/{/@if.*PRIVSEP_PATH/,/^$/d}' Makefile.in
+  '';
+
+  configureFlags = [
+    "--with-privsep-path=${privsepPath}"
+    "--with-privsep-user=${privsepUser}"
+  ];
+
+  buildInputs = [ openssl ];
+
+  meta = {
+    homepage = "http://www.openntpd.org/";
+    license = stdenv.lib.licenses.bsd3;
+    description = "OpenBSD NTP daemon (Debian port)";
+  };
+}
diff --git a/pkgs/tools/networking/s6-dns/default.nix b/pkgs/tools/networking/s6-dns/default.nix
new file mode 100644
index 00000000000..3165434de3d
--- /dev/null
+++ b/pkgs/tools/networking/s6-dns/default.nix
@@ -0,0 +1,53 @@
+{ stdenv, fetchurl, skalibs }:
+
+let
+
+  version = "0.1.0.0";
+
+in stdenv.mkDerivation rec {
+
+  name = "s6-dns-${version}";
+
+  src = fetchurl {
+    url = "http://www.skarnet.org/software/s6-dns/${name}.tar.gz";
+    sha256 = "1r82l5fnz2rrwm5wq2sldqp74lk9fifr0d8hyq98xdyh24hish68";
+  };
+
+  buildInputs = [ skalibs ];
+
+  sourceRoot = "web/${name}";
+
+  configurePhase = ''
+    pushd conf-compile
+
+    printf "$out/bin"           > conf-install-command
+    printf "$out/include"       > conf-install-include
+    printf "$out/lib"           > conf-install-library
+    printf "$out/lib"           > conf-install-library.so
+
+    # let nix builder strip things, cross-platform
+    truncate --size 0 conf-stripbins
+    truncate --size 0 conf-striplibs
+
+    printf "${skalibs}/sysdeps"      > import
+    printf "%s" "${skalibs}/include" > path-include
+    printf "%s" "${skalibs}/lib"     > path-library
+
+    rm -f flag-slashpackage
+    touch flag-allstatic
+
+    popd
+  '';
+
+  preBuild = ''
+    patchShebangs src/sys
+  '';
+
+  meta = {
+    homepage = http://www.skarnet.org/software/s6-dns/;
+    description = "A suite of DNS client programs and libraries for Unix systems.";
+    platforms = stdenv.lib.platforms.all;
+    license = stdenv.lib.licenses.isc;
+  };
+
+}
diff --git a/pkgs/tools/networking/s6-networking/default.nix b/pkgs/tools/networking/s6-networking/default.nix
new file mode 100644
index 00000000000..3d5e3e04811
--- /dev/null
+++ b/pkgs/tools/networking/s6-networking/default.nix
@@ -0,0 +1,63 @@
+{ stdenv
+, execline
+, fetchurl
+, s6Dns
+, skalibs
+}:
+
+let
+
+  version = "0.1.0.0";
+
+in stdenv.mkDerivation rec {
+
+  name = "s6-networking-${version}";
+
+  src = fetchurl {
+    url = "http://www.skarnet.org/software/s6-networking/${name}.tar.gz";
+    sha256 = "1np9m2j1i2450mbcjvpbb56kv3wc2fbyvmv2a039q61j2lk6vjz7";
+  };
+
+  buildInputs = [ skalibs s6Dns execline ];
+
+  sourceRoot = "net/${name}";
+
+  configurePhase = ''
+    pushd conf-compile
+
+    printf "$out/bin"           > conf-install-command
+    printf "$out/include"       > conf-install-include
+    printf "$out/lib"           > conf-install-library
+    printf "$out/lib"           > conf-install-library.so
+
+    # let nix builder strip things, cross-platform
+    truncate --size 0 conf-stripbins
+    truncate --size 0 conf-striplibs
+
+    printf "${skalibs}/sysdeps"      > import
+
+    rm -f path-include
+    rm -f path-library
+    for dep in "${execline}" "${s6Dns}" "${skalibs}"; do
+      printf "%s\n" "$dep/include" >> path-include
+      printf "%s\n" "$dep/lib"     >> path-library
+    done
+
+    rm -f flag-slashpackage
+    touch flag-allstatic
+
+    popd
+  '';
+
+  preBuild = ''
+    patchShebangs src/sys
+  '';
+
+  meta = {
+    homepage = http://www.skarnet.org/software/s6-networking/;
+    description = "A suite of small networking utilities for Unix systems.";
+    platforms = stdenv.lib.platforms.all;
+    license = stdenv.lib.licenses.isc;
+  };
+
+}
diff --git a/pkgs/tools/networking/urlwatch/default.nix b/pkgs/tools/networking/urlwatch/default.nix
new file mode 100644
index 00000000000..4843f07c8f2
--- /dev/null
+++ b/pkgs/tools/networking/urlwatch/default.nix
@@ -0,0 +1,21 @@
+{ stdenv, fetchurl, python3Packages }:
+
+python3Packages.buildPythonPackage rec {
+  name = "urlwatch-1.16";
+
+  src = fetchurl {
+    url = "http://thp.io/2008/urlwatch/${name}.tar.gz";
+    sha256 = "0yf1m909awfm06z7xwn20qxbbgslb1vjwwb6rygp6bn7sq022f1f";
+  };
+
+  patchPhase = ''
+    ./convert-to-python3.sh
+  '';
+
+  meta = {
+    description = "A tool for monitoring webpages for updates";
+    homepage = https://thp.io/2008/urlwatch/;
+    license = stdenv.lib.licenses.bsd3;
+    maintainers = [ stdenv.lib.maintainers.tv ];
+  };
+}
diff --git a/pkgs/tools/networking/wavemon/default.nix b/pkgs/tools/networking/wavemon/default.nix
index e9c102817e1..b5927fd2478 100644
--- a/pkgs/tools/networking/wavemon/default.nix
+++ b/pkgs/tools/networking/wavemon/default.nix
@@ -11,16 +11,15 @@ let
     (builtins.attrNames (builtins.removeAttrs x helperArgNames));
   sourceInfo = rec {
     baseName="wavemon";
-    version="0.7.5";
+    version = "0.7.6";
     name="${baseName}-${version}";
     url="http://eden-feed.erg.abdn.ac.uk/wavemon/stable-releases/${name}.tar.bz2";
-    hash="0b1fx00aar2fsw49a10w5bpiyjpz8h8f4nrlwb1acfw36yi1pfkd";
   };
 in
 rec {
   src = a.fetchurl {
     url = sourceInfo.url;
-    sha256 = sourceInfo.hash;
+    sha256 = "18cwlzgmwzy7z9dfr6lwd8kmkv0pqiihizm4gi0kkm52bzz6836y";
   };
 
   inherit (sourceInfo) name version;
@@ -38,11 +37,9 @@ rec {
     platforms = with a.lib.platforms;
       linux;
     license = a.lib.licenses.gpl2Plus;
-  };
-  passthru = {
-    updateInfo = {
-      downloadPage = "http://eden-feed.erg.abdn.ac.uk/wavemon/";
-    };
+    downloadPage = "http://eden-feed.erg.abdn.ac.uk/wavemon/";
+    inherit version;
+    updateWalker = true;
   };
 }) x
 
diff --git a/pkgs/tools/package-management/koji/default.nix b/pkgs/tools/package-management/koji/default.nix
new file mode 100644
index 00000000000..7f03ed1625e
--- /dev/null
+++ b/pkgs/tools/package-management/koji/default.nix
@@ -0,0 +1,21 @@
+{ stdenv, fetchurl, pythonPackages, python }:
+
+stdenv.mkDerivation rec {
+  name = "koji-1.8";
+
+  src = fetchurl {
+    url = "https://fedorahosted.org/released/koji/koji-1.8.0.tar.bz2";
+    sha256 = "10dph209h4jgajb5jmbjhqy4z4hd22i7s2d93vm3ikdf01i8iwf1";
+  };
+
+  propagatedBuildInputs = [ pythonPackages.pycurl python ];
+
+  makeFlags = "DESTDIR=$(out)";
+
+  postInstall = ''
+    cp -R $out/nix/store/*/* $out/
+    rm -rf $out/nix
+  '';
+
+  meta.maintainers = [ stdenv.lib.maintainers.mornfall ];
+}
diff --git a/pkgs/tools/security/clamav/default.nix b/pkgs/tools/security/clamav/default.nix
index fc43f01b344..f5c4a4e9b4e 100644
--- a/pkgs/tools/security/clamav/default.nix
+++ b/pkgs/tools/security/clamav/default.nix
@@ -1,19 +1,23 @@
-{ stdenv, fetchurl, zlib, bzip2, libiconv }:
+{ stdenv, fetchurl, zlib, bzip2, libiconv, libxml2, openssl, ncurses, curl }:
 stdenv.mkDerivation rec {
   name = "clamav-${version}";
-  version = "0.98.1";
+  version = "0.98.4";
 
   src = fetchurl {
     url = "mirror://sourceforge/clamav/clamav-${version}.tar.gz";
-    sha256 = "1p13n8g3b88cxwxj07if9z1d2cav1ib94v6cq4r4bpacfd6yix9m";
+    sha256 = "071yzamalj3rf7kl2jvc35ipnk1imdkq5ylbb8whyxfgmd3nf06k";
   };
 
-  buildInputs = [ zlib bzip2 libiconv ];
+  buildInputs = [ zlib bzip2 libiconv libxml2 openssl ncurses curl ];
 
   configureFlags = [
     "--with-zlib=${zlib}"
     "--with-libbz2-prefix=${bzip2}"
     "--with-iconv-dir=${libiconv}"
+    "--with-xml=${libxml2}"
+    "--with-openssl=${openssl}"
+    "--with-libncurses-prefix=${ncurses}"
+    "--with-libcurl=${curl}"
     "--disable-clamav" ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/system/dd_rescue/default.nix b/pkgs/tools/system/dd_rescue/default.nix
index 9c7f0413421..7b3e62a1bc0 100644
--- a/pkgs/tools/system/dd_rescue/default.nix
+++ b/pkgs/tools/system/dd_rescue/default.nix
@@ -1,10 +1,11 @@
 { stdenv, fetchurl, autoconf }:
 
 stdenv.mkDerivation rec {
-  name = "dd_rescue-1.42.1";
+  version = "1.46";
+  name = "dd_rescue-${version}";
 
   src = fetchurl {
-    sha256 = "0g2d292m1cnp8syy19hh5jvly3zy7lcvcj563wgjnf20ppm2diaq";
+    sha256 = "1fhs4jl5pkyn4aq75fxczrgnsj2m0kz9hfa7dhxy93vp7xcba2cy";
     url="http://www.garloff.de/kurt/linux/ddrescue/${name}.tar.gz";
   };
 
@@ -33,5 +34,8 @@ stdenv.mkDerivation rec {
     description = "A tool to copy data from a damaged block device";
     maintainers = with maintainers; [ raskin iElectric ];
     platforms = with platforms; linux;
+    downloadPage = "http://www.garloff.de/kurt/linux/ddrescue/";
+    inherit version;
+    updateWalker = true;
   };
 }
diff --git a/pkgs/tools/system/freeipmi/default.nix b/pkgs/tools/system/freeipmi/default.nix
index 48562adffeb..8f94b21a771 100644
--- a/pkgs/tools/system/freeipmi/default.nix
+++ b/pkgs/tools/system/freeipmi/default.nix
@@ -1,11 +1,12 @@
 { fetchurl, stdenv, libgcrypt, readline }:
 
 stdenv.mkDerivation rec {
-  name = "freeipmi-1.3.4";
+  version = "1.4.5";
+  name = "freeipmi-${version}";
 
   src = fetchurl {
     url = "mirror://gnu/freeipmi/${name}.tar.gz";
-    sha256 = "0gadf3yj019y3rvgf34pxk502p0p6nrhy6nwldvvir5rknndxh63";
+    sha256 = "033zakrk3kvi4y41kslicr90b3yb2kj052cl6nbja7ybn70y9nkz";
   };
 
   buildInputs = [ libgcrypt readline ];
@@ -30,10 +31,14 @@ stdenv.mkDerivation rec {
       '';
 
     homepage = http://www.gnu.org/software/freeipmi/;
+    downloadPage = "http://www.gnu.org/software/freeipmi/download.html";
 
     license = stdenv.lib.licenses.gpl3Plus;
 
     maintainers = with stdenv.lib.maintainers; [ raskin ];
     platforms = stdenv.lib.platforms.gnu;  # arbitrary choice
+
+    updateWalker = true;
+    inherit version;
   };
 }
diff --git a/pkgs/tools/system/ioping/default.nix b/pkgs/tools/system/ioping/default.nix
index 52d32b4e838..588da0624ce 100644
--- a/pkgs/tools/system/ioping/default.nix
+++ b/pkgs/tools/system/ioping/default.nix
@@ -10,16 +10,15 @@ let
     (builtins.attrNames (builtins.removeAttrs x helperArgNames));
   sourceInfo = rec {
     baseName="ioping";
-    version="0.7";
+    version = "0.8";
     name="${baseName}-${version}";
     url="http://ioping.googlecode.com/files/${name}.tar.gz";
-    hash="1c0k9gsq7rr9fqh6znn3i196l84zsm44nq3pl1b7grsnnbp2hki3";
   };
 in
 rec {
   src = a.fetchurl {
     url = sourceInfo.url;
-    sha256 = sourceInfo.hash;
+    sha256 = "0j7yal61nby1lkg9wnr6lxfljbd7wl3n0z8khqwvc9lf57bxngz2";
   };
 
   inherit (sourceInfo) name version;
@@ -40,11 +39,8 @@ rec {
     platforms = with a.lib.platforms;
       linux;
     license = a.lib.licenses.gpl3Plus;
-  };
-  passthru = {
-    updateInfo = {
-      downloadPage = "http://code.google.com/p/ioping/downloads/list";
-    };
+    downloadPage = "http://code.google.com/p/ioping/downloads/list";
+    inherit version;
   };
 }) x
 
diff --git a/pkgs/tools/system/ioping/default.upstream b/pkgs/tools/system/ioping/default.upstream
new file mode 100644
index 00000000000..e51cb487852
--- /dev/null
+++ b/pkgs/tools/system/ioping/default.upstream
@@ -0,0 +1,5 @@
+url http://code.google.com/p/ioping/downloads/list
+version_link '[.]tar[.][a-z0-9]+$'
+process 'code[.]google[.]com//' ''
+
+do_overwrite() { do_overwrite_just_version; }
diff --git a/pkgs/tools/system/ipmiutil/default.nix b/pkgs/tools/system/ipmiutil/default.nix
index c5f33c32359..6590b1ad209 100644
--- a/pkgs/tools/system/ipmiutil/default.nix
+++ b/pkgs/tools/system/ipmiutil/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   baseName = "ipmiutil";
-  version = "2.9.3";
+  version = "2.7.3";
   name = "${baseName}-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/project/${baseName}/${name}.tar.gz";
-    sha256 = "1dwyxp4jn5wxzyahd0x839kj1q7z6xin1wybpx9na4xsgscj6v27";
+    sha256 = "0z6ykz5db4ws7hpi25waf9vznwsh0vp819h5s7s8r054vxslrfpq";
   };
 
   buildInputs = [ openssl ];
@@ -26,11 +26,7 @@ stdenv.mkDerivation rec {
     maintainers = with maintainers; [ raskin ];
     platforms = platforms.linux;
     license = licenses.bsd3;
-  };
-
-  passthru = {
-    updateInfo = {
-      downloadPage = "http://sourceforge.net/projects/ipmiutil/files/ipmiutil/";
-    };
+    downloadPage = "http://sourceforge.net/projects/ipmiutil/files/ipmiutil/";
+    inherit version;
   };
 }
diff --git a/pkgs/tools/system/ipmiutil/default.upstream b/pkgs/tools/system/ipmiutil/default.upstream
new file mode 100644
index 00000000000..18dc096a36b
--- /dev/null
+++ b/pkgs/tools/system/ipmiutil/default.upstream
@@ -0,0 +1,4 @@
+url http://sourceforge.net/projects/ipmiutil/files/ipmiutil/
+SF_version_tarball
+SF_redirect
+minimize_overwrite
diff --git a/pkgs/tools/system/sleuthkit/default.nix b/pkgs/tools/system/sleuthkit/default.nix
index 0148e3c699e..016e2ccda37 100644
--- a/pkgs/tools/system/sleuthkit/default.nix
+++ b/pkgs/tools/system/sleuthkit/default.nix
@@ -1,11 +1,12 @@
 { stdenv, fetchurl, libewf, afflib, openssl, zlib }:
 
 stdenv.mkDerivation rec {
-  name = "sleuthkit-3.2.2";
+  version = "4.1.3";
+  name = "sleuthkit-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/sleuthkit/${name}.tar.gz";
-    sha256 = "02hik5xvbgh1dpisvc3wlhhq1aprnlsk0spbw6h5khpbq9wqnmgj";
+    sha256 = "09q3ky4rpv18jasf5gc2hlivzadzl70jy4nnk23db1483aix5yb7";
   };
 
   enableParallelBuilding = true;
@@ -20,5 +21,6 @@ stdenv.mkDerivation rec {
     maintainers = [ stdenv.lib.maintainers.raskin ];
     platforms = stdenv.lib.platforms.linux;
     license = "IBM Public License";
+    inherit version;
   };
 }
diff --git a/pkgs/tools/system/sleuthkit/default.upstream b/pkgs/tools/system/sleuthkit/default.upstream
new file mode 100644
index 00000000000..f8ffe9352ed
--- /dev/null
+++ b/pkgs/tools/system/sleuthkit/default.upstream
@@ -0,0 +1,5 @@
+url http://sourceforge.net/projects/sleuthkit/files/sleuthkit/
+SF_version_dir
+SF_version_tarball
+SF_redirect
+minimize_overwrite
diff --git a/pkgs/tools/typesetting/tex/texlive/default.nix b/pkgs/tools/typesetting/tex/texlive/default.nix
index c2840fd843f..beb6a7f3a68 100644
--- a/pkgs/tools/typesetting/tex/texlive/default.nix
+++ b/pkgs/tools/typesetting/tex/texlive/default.nix
@@ -5,16 +5,16 @@ rec {
     sha256 = "0nh8hfayyf60nm4z8zyclrbc3792c62azgsvrwxnl28iq223200s";
   };
 
-  texmfVersion = "2014.20140717";
+  texmfVersion = "2014.20140821";
   texmfSrc = fetchurl {
     url = "mirror://debian/pool/main/t/texlive-base/texlive-base_${texmfVersion}.orig.tar.xz";
-    sha256 = "08vhl6x742r8fl0gags2r6yspz8ynvz26vdjrqb4vyz5h7h3rzc9";
+    sha256 = "02qkzlhb381sybs970fgpc94nhx4jm0l3j5pv8z48l11415lvm9b";
   };
 
-  langTexmfVersion = "2014.20140717";
+  langTexmfVersion = "2014.20140821";
   langTexmfSrc = fetchurl {
     url = "mirror://debian/pool/main/t/texlive-lang/texlive-lang_${langTexmfVersion}.orig.tar.xz";
-    sha256 = "1x9aa3v2cg4lcb58lwksnfdsgrhi0sg968pjqsbndmbxhr1msbp7";
+    sha256 = "075avhhhhzw5pbd19q659rn23rws15b5hv7nv0grd93vn3vfwdcy";
   };
 
   passthru = { inherit texmfSrc langTexmfSrc; };
diff --git a/pkgs/tools/typesetting/tex/texlive/extra.nix b/pkgs/tools/typesetting/tex/texlive/extra.nix
index 4644ee3e50e..f47fedd927d 100644
--- a/pkgs/tools/typesetting/tex/texlive/extra.nix
+++ b/pkgs/tools/typesetting/tex/texlive/extra.nix
@@ -1,11 +1,11 @@
 args: with args;
 rec {
   name    = "texlive-extra-2014";
-  version = "2014.20140717";
+  version = "2014.20140821";
 
   src = fetchurl {
     url = "mirror://debian/pool/main/t/texlive-extra/texlive-extra_${version}.orig.tar.xz";
-    sha256 = "1khxqdq9gagm6z8kbpjbraysfzibfjs2cgbrhjpncbd24sxpw13q";
+    sha256 = "1y3w8bgp85s90ng2y5dw9chrrvvdf7ibb6ynss8kycvgc0y4m6b3";
   };
 
   buildInputs = [texLive xz];