about summary refs log tree commit diff
path: root/pkgs/tools/package-management
diff options
context:
space:
mode:
authorVladimír Čunát <vcunat@gmail.com>2015-10-03 13:33:13 +0200
committerVladimír Čunát <vcunat@gmail.com>2015-10-03 13:33:37 +0200
commit5227fb1dd53fcb5918b9342dff4868f4ad68427e (patch)
treed6cd521e3f67944031216a27f740f28f22b73b41 /pkgs/tools/package-management
parentd6dd3b8bd1eaeeb21dfdb5051cd4732c748ce5d7 (diff)
parent33373d939a19f465228ddede6d38ce9032b5916b (diff)
downloadnixlib-5227fb1dd53fcb5918b9342dff4868f4ad68427e.tar
nixlib-5227fb1dd53fcb5918b9342dff4868f4ad68427e.tar.gz
nixlib-5227fb1dd53fcb5918b9342dff4868f4ad68427e.tar.bz2
nixlib-5227fb1dd53fcb5918b9342dff4868f4ad68427e.tar.lz
nixlib-5227fb1dd53fcb5918b9342dff4868f4ad68427e.tar.xz
nixlib-5227fb1dd53fcb5918b9342dff4868f4ad68427e.tar.zst
nixlib-5227fb1dd53fcb5918b9342dff4868f4ad68427e.zip
Merge commit staging+systemd into closure-size
Many non-conflict problems weren't (fully) resolved in this commit yet.
Diffstat (limited to 'pkgs/tools/package-management')
-rw-r--r--pkgs/tools/package-management/cabal-install/1.16.0.2.nix29
-rw-r--r--pkgs/tools/package-management/cabal-install/1.18.0.3.nix36
-rw-r--r--pkgs/tools/package-management/cabal-install/1.20.0.6.nix32
-rw-r--r--pkgs/tools/package-management/cabal-install/1.22.0.0.nix34
-rw-r--r--pkgs/tools/package-management/clib/default.nix23
-rw-r--r--pkgs/tools/package-management/disnix/DisnixWebService/default.nix6
-rw-r--r--pkgs/tools/package-management/disnix/default.nix6
-rw-r--r--pkgs/tools/package-management/disnix/disnixos/default.nix6
-rw-r--r--pkgs/tools/package-management/disnix/dysnomia/default.nix15
-rw-r--r--pkgs/tools/package-management/dpkg/default.nix15
-rw-r--r--pkgs/tools/package-management/nix-repl/default.nix4
-rw-r--r--pkgs/tools/package-management/nix-serve/default.nix9
-rw-r--r--pkgs/tools/package-management/nix/default.nix143
-rw-r--r--pkgs/tools/package-management/nix/xfs.patch13
-rw-r--r--pkgs/tools/package-management/nixops/default.nix10
-rw-r--r--pkgs/tools/package-management/nixops/unstable.nix63
-rw-r--r--pkgs/tools/package-management/nixui/default.nix2
-rw-r--r--pkgs/tools/package-management/nox/default.nix6
-rw-r--r--pkgs/tools/package-management/opkg/default.nix8
-rw-r--r--pkgs/tools/package-management/packagekit/default.nix73
-rw-r--r--pkgs/tools/package-management/rpm/default.nix10
21 files changed, 228 insertions, 315 deletions
diff --git a/pkgs/tools/package-management/cabal-install/1.16.0.2.nix b/pkgs/tools/package-management/cabal-install/1.16.0.2.nix
deleted file mode 100644
index d4a709ab13ba..000000000000
--- a/pkgs/tools/package-management/cabal-install/1.16.0.2.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-# This file was auto-generated by cabal2nix. Please do NOT edit manually!
-
-{ cabal, Cabal, filepath, HTTP, mtl, network, random, time, zlib }:
-
-cabal.mkDerivation (self: {
-  pname = "cabal-install";
-  version = "1.16.0.2";
-  sha256 = "162nbkkffpbalg368m5s49jrvg9nibdwlwj0j1b8wriyyg4srpv6";
-  isLibrary = false;
-  isExecutable = true;
-  buildDepends = [
-    Cabal filepath HTTP mtl network random time zlib
-  ];
-  postInstall = ''
-    mkdir $out/etc
-    mv bash-completion $out/etc/bash_completion.d
-  '';
-  patchPhase = ''
-    sed -i -e 's|random .*1.1,|random,|' cabal-install.cabal
-  '';
-  meta = {
-    homepage = "http://www.haskell.org/cabal/";
-    description = "The command-line interface for Cabal and Hackage";
-    license = self.stdenv.lib.licenses.bsd3;
-    platforms = self.ghc.meta.platforms;
-    hydraPlatforms = self.stdenv.lib.platforms.none;
-    maintainers = [ self.stdenv.lib.maintainers.andres ];
-  };
-})
diff --git a/pkgs/tools/package-management/cabal-install/1.18.0.3.nix b/pkgs/tools/package-management/cabal-install/1.18.0.3.nix
deleted file mode 100644
index e391d80420dc..000000000000
--- a/pkgs/tools/package-management/cabal-install/1.18.0.3.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-# This file was auto-generated by cabal2nix. Please do NOT edit manually!
-
-{ cabal, Cabal, filepath, HTTP, HUnit, mtl, network, QuickCheck
-, random, stm, testFramework, testFrameworkHunit
-, testFrameworkQuickcheck2, time, zlib
-}:
-
-cabal.mkDerivation (self: {
-  pname = "cabal-install";
-  version = "1.18.0.3";
-  sha256 = "0h01mz6p4fwl8h6k2ybrlp598f0j3n2zasrr63fy0vjbjibmgf41";
-  isLibrary = false;
-  isExecutable = true;
-  buildDepends = [
-    Cabal filepath HTTP mtl network random stm time zlib
-  ];
-  testDepends = [
-    Cabal filepath HTTP HUnit mtl network QuickCheck stm testFramework
-    testFrameworkHunit testFrameworkQuickcheck2 time zlib
-  ];
-  postInstall = ''
-    mkdir $out/etc
-    mv bash-completion $out/etc/bash_completion.d
-  '';
-  patchPhase = ''
-    sed -i -e 's|random .*1.1,|random,|' cabal-install.cabal
-  '';
-  meta = {
-    homepage = "http://www.haskell.org/cabal/";
-    description = "The command-line interface for Cabal and Hackage";
-    license = self.stdenv.lib.licenses.bsd3;
-    platforms = self.ghc.meta.platforms;
-    hydraPlatforms = self.stdenv.lib.platforms.none;
-    maintainers = [ self.stdenv.lib.maintainers.andres ];
-  };
-})
diff --git a/pkgs/tools/package-management/cabal-install/1.20.0.6.nix b/pkgs/tools/package-management/cabal-install/1.20.0.6.nix
deleted file mode 100644
index adb2f24f5b26..000000000000
--- a/pkgs/tools/package-management/cabal-install/1.20.0.6.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-# This file was auto-generated by cabal2nix. Please do NOT edit manually!
-
-{ cabal, Cabal, filepath, HTTP, HUnit, mtl, network, networkUri
-, QuickCheck, random, stm, testFramework, testFrameworkHunit
-, testFrameworkQuickcheck2, time, zlib
-}:
-
-cabal.mkDerivation (self: {
-  pname = "cabal-install";
-  version = "1.20.0.6";
-  sha256 = "1hc187yzl59518cswk25xzsabn9dvm4wqpq817hmclrvkf4zr3pl";
-  isLibrary = false;
-  isExecutable = true;
-  buildDepends = [
-    Cabal filepath HTTP mtl network networkUri random stm time zlib
-  ];
-  testDepends = [
-    Cabal filepath HTTP HUnit mtl network networkUri QuickCheck stm
-    testFramework testFrameworkHunit testFrameworkQuickcheck2 time zlib
-  ];
-  doCheck = false;
-  postInstall = ''
-    mkdir $out/etc
-    mv bash-completion $out/etc/bash_completion.d
-  '';
-  meta = {
-    homepage = "http://www.haskell.org/cabal/";
-    description = "The command-line interface for Cabal and Hackage";
-    license = self.stdenv.lib.licenses.bsd3;
-    platforms = self.ghc.meta.platforms;
-  };
-})
diff --git a/pkgs/tools/package-management/cabal-install/1.22.0.0.nix b/pkgs/tools/package-management/cabal-install/1.22.0.0.nix
deleted file mode 100644
index abf3809872b4..000000000000
--- a/pkgs/tools/package-management/cabal-install/1.22.0.0.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-# This file was auto-generated by cabal2nix. Please do NOT edit manually!
-
-{ cabal, Cabal, extensibleExceptions, filepath, HTTP, HUnit, mtl
-, network, networkUri, QuickCheck, random, regexPosix, stm
-, testFramework, testFrameworkHunit, testFrameworkQuickcheck2, time
-, zlib
-}:
-
-cabal.mkDerivation (self: {
-  pname = "cabal-install";
-  version = "1.22.0.0";
-  sha256 = "17cf2bkrxawjldhkq4hzlzlf7b2xqgkrzl7fa31whnnpni68v6jz";
-  isLibrary = false;
-  isExecutable = true;
-  buildDepends = [
-    Cabal filepath HTTP mtl network networkUri random stm time zlib
-  ];
-  testDepends = [
-    Cabal extensibleExceptions filepath HTTP HUnit mtl network
-    networkUri QuickCheck regexPosix stm testFramework
-    testFrameworkHunit testFrameworkQuickcheck2 time zlib
-  ];
-  doCheck = false;
-  postInstall = ''
-    mkdir $out/etc
-    mv bash-completion $out/etc/bash_completion.d
-  '';
-  meta = {
-    homepage = "http://www.haskell.org/cabal/";
-    description = "The command-line interface for Cabal and Hackage";
-    license = self.stdenv.lib.licenses.bsd3;
-    platforms = self.ghc.meta.platforms;
-  };
-})
diff --git a/pkgs/tools/package-management/clib/default.nix b/pkgs/tools/package-management/clib/default.nix
new file mode 100644
index 000000000000..ae1213aee7c3
--- /dev/null
+++ b/pkgs/tools/package-management/clib/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchzip, curl  }:
+
+stdenv.mkDerivation rec {
+  version = "1.4.2";
+  name = "clib-${version}";
+
+  src = fetchzip {
+    url = "https://github.com/clibs/clib/archive/${version}.zip";
+    sha256 = "0hbi5hf4w0iim96h89j7krxv61x92ffxjbldxp3zk92m5sgpldnm";
+  };
+
+  makeFlags = "PREFIX=$(out)";
+
+  buildInputs = [ curl ];
+
+  meta = with stdenv.lib; {
+    description = "C micro-package manager";
+    homepage = https://github.com/clibs/clib;
+    license = licenses.mit;
+    maintainers = with maintainers; [ jb55 ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/tools/package-management/disnix/DisnixWebService/default.nix b/pkgs/tools/package-management/disnix/DisnixWebService/default.nix
index 4e143bed5194..65a90bfae96d 100644
--- a/pkgs/tools/package-management/disnix/DisnixWebService/default.nix
+++ b/pkgs/tools/package-management/disnix/DisnixWebService/default.nix
@@ -1,10 +1,10 @@
 {stdenv, fetchurl, apacheAnt, jdk, axis2, dbus_java}:
 
 stdenv.mkDerivation {
-  name = "DisnixWebService-0.3";
+  name = "DisnixWebService-0.4";
   src = fetchurl {
-    url = http://hydra.nixos.org/build/20419315/download/4/DisnixWebService-0.3.tar.bz2;
-    sha256 = "03vm84h7div200jr5z28hiwk0fq7i45j0ki18c2h4pmbsd89479i";
+    url = http://hydra.nixos.org/build/23484798/download/4/DisnixWebService-0.4.tar.bz2;
+    sha256 = "1rfzmh4rxip8nq25fvi6vw51xb7h0nch4l06s0xgwwv4gw8p0lhm";
   };
   buildInputs = [ apacheAnt jdk ];
   PREFIX = ''''${env.out}'';
diff --git a/pkgs/tools/package-management/disnix/default.nix b/pkgs/tools/package-management/disnix/default.nix
index 98213d9cf342..39d8132ba097 100644
--- a/pkgs/tools/package-management/disnix/default.nix
+++ b/pkgs/tools/package-management/disnix/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, pkgconfig, dbus_glib, libxml2, libxslt, getopt, nixUnstable, dysnomia, libintlOrEmpty, libiconv }:
 
 stdenv.mkDerivation {
-  name = "disnix-0.3";
+  name = "disnix-0.4";
   
   src = fetchurl {
-    url = http://hydra.nixos.org/build/20419300/download/4/disnix-0.3.tar.gz;
-    sha256 = "11yh270r8mgnkz98ax3p4rlc5dh88sxykvsmcpvgaqnqjh1rwd3j";
+    url = http://hydra.nixos.org/build/23484781/download/4/disnix-0.4.tar.gz;
+    sha256 = "1hvjy19br4x7cvgn0rslysrp3w7jfh30s7piq6v9j2b6k6wmh2hk";
   };
   
   buildInputs = [ pkgconfig dbus_glib libxml2 libxslt getopt nixUnstable libintlOrEmpty libiconv dysnomia ];
diff --git a/pkgs/tools/package-management/disnix/disnixos/default.nix b/pkgs/tools/package-management/disnix/disnixos/default.nix
index 52312ca7191e..4603f108d378 100644
--- a/pkgs/tools/package-management/disnix/disnixos/default.nix
+++ b/pkgs/tools/package-management/disnix/disnixos/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, disnix, socat, pkgconfig, getopt }:
 
 stdenv.mkDerivation {
-  name = "disnixos-0.2";
+  name = "disnixos-0.3";
   
   src = fetchurl {
-    url = http://hydra.nixos.org/build/20419306/download/3/disnixos-0.2.tar.gz;
-    sha256 = "1xysklly0gvh0np0h3f30sfs5lx6qnwj59l8caynwn46qy596gnx";
+    url = http://hydra.nixos.org/build/23484787/download/3/disnixos-0.3.tar.gz;
+    sha256 = "08v9vbg3727mv4iyzwfnf5x3la2xjj1agbbzm8aaa09q7alqasvw";
   };
   
   buildInputs = [ socat pkgconfig disnix getopt ];
diff --git a/pkgs/tools/package-management/disnix/dysnomia/default.nix b/pkgs/tools/package-management/disnix/dysnomia/default.nix
index 021225c1b4d4..275c4b6e61f1 100644
--- a/pkgs/tools/package-management/disnix/dysnomia/default.nix
+++ b/pkgs/tools/package-management/disnix/dysnomia/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl
-, ejabberd ? null, mysql ? null, postgresql ? null, subversion ? null, mongodb ? null
+, ejabberd ? null, mysql ? null, postgresql ? null, subversion ? null, mongodb ? null, mongodb-tools ? null
 , enableApacheWebApplication ? false
 , enableAxis2WebService ? false
 , enableEjabberdDump ? false
@@ -17,13 +17,13 @@ assert enableMySQLDatabase -> mysql != null;
 assert enablePostgreSQLDatabase -> postgresql != null;
 assert enableSubversionRepository -> subversion != null;
 assert enableEjabberdDump -> ejabberd != null;
-assert enableMongoDatabase -> mongodb != null;
+assert enableMongoDatabase -> (mongodb != null && mongodb-tools != null);
 
 stdenv.mkDerivation {
-  name = "dysnomia-0.3";
+  name = "dysnomia-0.4";
   src = fetchurl {
-    url = http://hydra.nixos.org/build/20419293/download/1/dysnomia-0.3.tar.gz;
-    sha256 = "09z9ad72wzxjvbc3hynbj9n1y4rrxw1by1wxacjmdqyp46h4b746";
+    url = http://hydra.nixos.org/build/23484767/download/1/dysnomia-0.4.tar.gz;
+    sha256 = "1xyd1gzsy4nlbv2l2lrrs964vvb74yhmb8snr4chf7hcyaybb6cq";
   };
   
   preConfigure = if enableEjabberdDump then "export PATH=$PATH:${ejabberd}/sbin" else "";
@@ -42,10 +42,11 @@ stdenv.mkDerivation {
   
   buildInputs = [ getopt ]
     ++ stdenv.lib.optional enableEjabberdDump ejabberd
-    ++ stdenv.lib.optional enableMySQLDatabase mysql.lib
+    ++ stdenv.lib.optional enableMySQLDatabase mysql.out
     ++ stdenv.lib.optional enablePostgreSQLDatabase postgresql
     ++ stdenv.lib.optional enableSubversionRepository subversion
-    ++ stdenv.lib.optional enableMongoDatabase mongodb;
+    ++ stdenv.lib.optional enableMongoDatabase mongodb
+    ++ stdenv.lib.optional enableMongoDatabase mongodb-tools;
 
   meta = {
     description = "Automated deployment of mutable components and services for Disnix";
diff --git a/pkgs/tools/package-management/dpkg/default.nix b/pkgs/tools/package-management/dpkg/default.nix
index 624386f34f27..2357ec77f122 100644
--- a/pkgs/tools/package-management/dpkg/default.nix
+++ b/pkgs/tools/package-management/dpkg/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl, perl, zlib, bzip2, xz, makeWrapper }:
 
-let version = "1.17.25"; in
+let version = "1.18.2"; in
 
 stdenv.mkDerivation {
   name = "dpkg-${version}";
 
   src = fetchurl {
     url = "mirror://debian/pool/main/d/dpkg/dpkg_${version}.tar.xz";
-    sha256 = "1akblsdfblih7879gi5qagqpgy6zz866kcyvg5y11ywqmqw9s087";
+    sha256 = "192pqjd0c7i91kiqzn3cq2sqp5vivf0079i0wybdc9yhfcm4yj0i";
   };
 
   postPatch = ''
@@ -20,10 +20,10 @@ stdenv.mkDerivation {
   configureFlags = "--disable-dselect --with-admindir=/var/lib/dpkg PERL_LIBDIR=$(out)/${perl.libPrefix}";
 
   preConfigure = ''
-    # Nice: dpkg has a circular dependency on itself.  Its configure
+    # Nice: dpkg has a circular dependency on itself. Its configure
     # script calls scripts/dpkg-architecture, which calls "dpkg" in
-    # $PATH.  It doesn't actually use its result, but fails if it
-    # isn't present.  So make a dummy available.
+    # $PATH. It doesn't actually use its result, but fails if it
+    # isn't present, so make a dummy available.
     touch $TMPDIR/dpkg
     chmod +x $TMPDIR/dpkg
     PATH=$TMPDIR:$PATH
@@ -33,7 +33,8 @@ stdenv.mkDerivation {
     done
   '';
 
-  buildInputs = [ perl zlib bzip2 xz makeWrapper ];
+  buildInputs = [ perl zlib bzip2 xz ];
+  nativeBuildInputs = [ makeWrapper ];
 
   postInstall =
     ''
@@ -50,7 +51,7 @@ stdenv.mkDerivation {
   meta = with stdenv.lib; {
     description = "The Debian package manager";
     homepage = http://wiki.debian.org/Teams/Dpkg;
-    license = with licenses; gpl2Plus;
+    license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = with maintainers; [ mornfall nckx ];
   };
diff --git a/pkgs/tools/package-management/nix-repl/default.nix b/pkgs/tools/package-management/nix-repl/default.nix
index 35f4f36b4734..e8670770c5f4 100644
--- a/pkgs/tools/package-management/nix-repl/default.nix
+++ b/pkgs/tools/package-management/nix-repl/default.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchFromGitHub, nix, readline, boehmgc }:
 
-let rev = "f92408136ed08804bab14b3e2a2def9b8effd7eb"; in
+let rev = "8a2f5f0607540ffe56b56d52db544373e1efb980"; in
 
 stdenv.mkDerivation {
   name = "nix-repl-${lib.getVersion nix}-${lib.substring 0 7 rev}";
@@ -9,7 +9,7 @@ stdenv.mkDerivation {
     owner = "edolstra";
     repo = "nix-repl";
     inherit rev;
-    sha256 = "1vl36d3n7hrw4vy2n358zx210ygkj4lmd8zsiifna6x7w7q388bj";
+    sha256 = "0cjablz01i0g9smnavhf86imwx1f9mnh5flax75i615ml71gsr88";
   };
 
   buildInputs = [ nix readline ];
diff --git a/pkgs/tools/package-management/nix-serve/default.nix b/pkgs/tools/package-management/nix-serve/default.nix
index 9b42a722e96d..332576a9873c 100644
--- a/pkgs/tools/package-management/nix-serve/default.nix
+++ b/pkgs/tools/package-management/nix-serve/default.nix
@@ -1,18 +1,19 @@
 { lib, stdenv, fetchFromGitHub, perl, nix, perlPackages }:
 
-let rev = "4c24e3ffa7d267d67d87135e7ac4c9198e449cd3"; in
+let rev = "7e09caa2a7a435aeb2cd5446aa590d6f9ae1699d"; in
 
 stdenv.mkDerivation rec {
-  name = "nix-serve-0.1-${lib.substring 0 7 rev}";
+  name = "nix-serve-0.2-${lib.substring 0 7 rev}";
 
   src = fetchFromGitHub {
     owner = "edolstra";
     repo = "nix-serve";
     inherit rev;
-    sha256 = "1c0ip4w00j86412l2qf0dwzjr9jzimiygbx82x15r46kr3cpk7kp";
+    sha256 = "0mjzsiknln3isdri9004wwjjjpak5fj8ncizyncf5jv7g4m4q1pj";
   };
 
-  buildInputs = [ perl nix perlPackages.Plack perlPackages.Starman ];
+  buildInputs = [ perl nix ]
+    ++ (with perlPackages; [ DBI DBDSQLite Plack Starman ]);
 
   buildPhase = "true";
 
diff --git a/pkgs/tools/package-management/nix/default.nix b/pkgs/tools/package-management/nix/default.nix
index b2cba0cc2d24..5153467d4492 100644
--- a/pkgs/tools/package-management/nix/default.nix
+++ b/pkgs/tools/package-management/nix/default.nix
@@ -1,85 +1,108 @@
-{ stdenv, fetchurl, perl, curl, bzip2, sqlite, openssl ? null
-, pkgconfig, boehmgc, perlPackages
+{ lib, stdenv, fetchurl, perl, curl, bzip2, sqlite, openssl ? null
+, pkgconfig, boehmgc, perlPackages, libsodium
 , storeDir ? "/nix/store"
 , stateDir ? "/nix/var"
 }:
 
-stdenv.mkDerivation rec {
-  name = "nix-1.8";
+let
 
-  src = fetchurl {
-    url = "http://nixos.org/releases/nix/${name}/${name}.tar.xz";
-    sha256 = "a30a5e801bc1cb1019cbc3456d961a307c45c9c588b8692cf1293ea6588ef01c";
-  };
-
-  patches = [ ./xfs.patch ];
-
-  nativeBuildInputs = [ perl pkgconfig ];
-
-  buildInputs = [ curl openssl sqlite ];
+  common = { name, src }: stdenv.mkDerivation rec {
+    inherit name src;
 
-  propagatedBuildInputs = [ boehmgc ];
+    outputs = [ "out" "doc" ];
 
-  # Note: bzip2 is not passed as a build input, because the unpack phase
-  # would end up using the wrong bzip2 when cross-compiling.
-  # XXX: The right thing would be to reinstate `--with-bzip2' in Nix.
-  postUnpack =
-    '' export CPATH="${bzip2.dev}/include"
-       export LIBRARY_PATH="${bzip2.out}/lib"
-       export CXXFLAGS="-Wno-error=reserved-user-defined-literal"
-    '';
+    nativeBuildInputs = [ perl pkgconfig ];
 
-  configureFlags =
-    ''
-      --with-store-dir=${storeDir} --localstatedir=${stateDir} --sysconfdir=/etc
-      --with-dbi=${perlPackages.DBI}/${perl.libPrefix}
-      --with-dbd-sqlite=${perlPackages.DBDSQLite}/${perl.libPrefix}
-      --with-www-curl=${perlPackages.WWWCurl}/${perl.libPrefix}
-      --disable-init-state
-      --enable-gc
-    '';
+    buildInputs = [ curl openssl sqlite ] ++
+      lib.optional (stdenv.isLinux || stdenv.isDarwin) libsodium;
 
-  makeFlags = "profiledir=$(out)/etc/profile.d";
+    propagatedBuildInputs = [ boehmgc ];
 
-  installFlags = "sysconfdir=$(out)/etc";
-
-  doInstallCheck = true;
-
-  crossAttrs = {
+    # Note: bzip2 is not passed as a build input, because the unpack phase
+    # would end up using the wrong bzip2 when cross-compiling.
+    # XXX: The right thing would be to reinstate `--with-bzip2' in Nix.
     postUnpack =
-      '' export CPATH="${bzip2.crossDrv}/include"
-         export NIX_CROSS_LDFLAGS="-L${bzip2.crossDrv}/lib -rpath-link ${bzip2.crossDrv}/lib $NIX_CROSS_LDFLAGS"
+      '' export CPATH="${bzip2.dev}/include"
+         export LIBRARY_PATH="${bzip2.out}/lib"
+         export CXXFLAGS="-Wno-error=reserved-user-defined-literal"
       '';
 
     configureFlags =
       ''
-        --with-store-dir=${storeDir} --localstatedir=${stateDir}
+        --with-store-dir=${storeDir} --localstatedir=${stateDir} --sysconfdir=/etc
         --with-dbi=${perlPackages.DBI}/${perl.libPrefix}
         --with-dbd-sqlite=${perlPackages.DBDSQLite}/${perl.libPrefix}
         --with-www-curl=${perlPackages.WWWCurl}/${perl.libPrefix}
         --disable-init-state
         --enable-gc
-      '' + stdenv.lib.optionalString (
-          stdenv.cross ? nix && stdenv.cross.nix ? system
-      ) ''--with-system=${stdenv.cross.nix.system}'';
+      '';
+
+    makeFlags = "profiledir=$(out)/etc/profile.d";
+
+    installFlags = "sysconfdir=$(out)/etc";
 
     doInstallCheck = false;
-  };
 
-  enableParallelBuilding = true;
-
-  meta = {
-    description = "Powerful package manager that makes package management reliable and reproducible";
-    longDescription = ''
-      Nix is a powerful package manager for Linux and other Unix systems that
-      makes package management reliable and reproducible. It provides atomic
-      upgrades and rollbacks, side-by-side installation of multiple versions of
-      a package, multi-user package management and easy setup of build
-      environments.
-    '';
-    homepage = http://nixos.org/;
-    license = stdenv.lib.licenses.lgpl2Plus;
-    maintainers = [ stdenv.lib.maintainers.eelco ];
-    platforms = stdenv.lib.platforms.all;
+    crossAttrs = {
+      postUnpack =
+        '' export CPATH="${bzip2.crossDrv}/include"
+           export NIX_CROSS_LDFLAGS="-L${bzip2.crossDrv}/lib -rpath-link ${bzip2.crossDrv}/lib $NIX_CROSS_LDFLAGS"
+        '';
+
+      configureFlags =
+        ''
+          --with-store-dir=${storeDir} --localstatedir=${stateDir}
+          --with-dbi=${perlPackages.DBI}/${perl.libPrefix}
+          --with-dbd-sqlite=${perlPackages.DBDSQLite}/${perl.libPrefix}
+          --with-www-curl=${perlPackages.WWWCurl}/${perl.libPrefix}
+          --disable-init-state
+          --enable-gc
+        '' + stdenv.lib.optionalString (
+            stdenv.cross ? nix && stdenv.cross.nix ? system
+        ) ''--with-system=${stdenv.cross.nix.system}'';
+
+      doInstallCheck = false;
+    };
+
+    enableParallelBuilding = true;
+
+    meta = {
+      description = "Powerful package manager that makes package management reliable and reproducible";
+      longDescription = ''
+        Nix is a powerful package manager for Linux and other Unix systems that
+        makes package management reliable and reproducible. It provides atomic
+        upgrades and rollbacks, side-by-side installation of multiple versions of
+        a package, multi-user package management and easy setup of build
+        environments.
+      '';
+      homepage = http://nixos.org/;
+      license = stdenv.lib.licenses.lgpl2Plus;
+      maintainers = [ stdenv.lib.maintainers.eelco ];
+      platforms = stdenv.lib.platforms.all;
+    };
   };
+
+in rec {
+
+   nix = nixStable;
+
+   nixStable = common rec {
+     name = "nix-1.10";
+      src = fetchurl {
+        url = "http://nixos.org/releases/nix/${name}/${name}.tar.xz";
+        sha256 = "5612ca7a549dd1ee20b208123e041aaa95a414a0e8f650ea88c672dc023d10f6";
+      };
+   };
+
+   nixUnstable = nix;
+   /*
+   nixUnstable = lib.lowPrio (common rec {
+     name = "nix-1.10pre4212_e12cf82";
+      src = fetchurl {
+        url = "http://hydra.nixos.org/build/24982847/download/4/${name}.tar.xz";
+        sha256 = "4165db0ea9bb6b5cd96d294348299f20ac045fc18db680104ff98fe9ac893f72";
+      };
+   });
+   */
+
 }
diff --git a/pkgs/tools/package-management/nix/xfs.patch b/pkgs/tools/package-management/nix/xfs.patch
deleted file mode 100644
index 62ee9189ac1a..000000000000
--- a/pkgs/tools/package-management/nix/xfs.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/src/libexpr/primops.cc b/src/libexpr/primops.cc
-index 119e71a..422ec97 100644
---- a/src/libexpr/primops.cc
-+++ b/src/libexpr/primops.cc
-@@ -796,7 +796,7 @@ static void prim_readDir(EvalState & state, const Pos & pos, Value * * args, Val
-     for (auto & ent : entries) {
-         Value * ent_val = state.allocAttr(v, state.symbols.create(ent.name));
-         if (ent.type == DT_UNKNOWN)
--            ent.type = getFileType(path);
-+            ent.type = getFileType(path + "/" + ent.name);
-         mkStringNoCopy(*ent_val,
-             ent.type == DT_REG ? "regular" :
-             ent.type == DT_DIR ? "directory" :
diff --git a/pkgs/tools/package-management/nixops/default.nix b/pkgs/tools/package-management/nixops/default.nix
index b85591b0695a..12e1989525d9 100644
--- a/pkgs/tools/package-management/nixops/default.nix
+++ b/pkgs/tools/package-management/nixops/default.nix
@@ -1,12 +1,12 @@
 { lib, pythonPackages, fetchurl, libxslt, docbook5_xsl, openssh }:
 
 pythonPackages.buildPythonPackage rec {
-  name = "nixops-1.2";
+  name = "nixops-1.3";
   namePrefix = "";
 
   src = fetchurl {
     url = "http://nixos.org/releases/nixops/${name}/${name}.tar.bz2";
-    sha256 = "06cf54c62a810cac5013d57d31707f0a6381b409485503a94a57ce6d8a1ac12b";
+    sha256 = "d80b0fe3bb31bb84a8545f9ea804ec8137172c8df44f03326ed7639e5a4bad55";
   };
 
   buildInputs = [ libxslt ];
@@ -16,20 +16,18 @@ pythonPackages.buildPythonPackage rec {
       pythonPackages.boto
       pythonPackages.sqlite3
       pythonPackages.hetzner
+      pythonPackages.libcloud
     ];
 
   doCheck = false;
 
   postInstall =
     ''
-      # Backward compatibility symlink.
-      ln -s nixops $out/bin/charon
-
       make -C doc/manual install nixops.1 docbookxsl=${docbook5_xsl}/xml/xsl/docbook \
         docdir=$out/share/doc/nixops mandir=$out/share/man
 
       mkdir -p $out/share/nix/nixops
-      cp -av nix/* $out/share/nix/nixops
+      cp -av "nix/"* $out/share/nix/nixops
 
       # Add openssh to nixops' PATH. On some platforms, e.g. CentOS and RHEL
       # the version of openssh is causing errors when have big networks (40+)
diff --git a/pkgs/tools/package-management/nixops/unstable.nix b/pkgs/tools/package-management/nixops/unstable.nix
deleted file mode 100644
index 17532039d913..000000000000
--- a/pkgs/tools/package-management/nixops/unstable.nix
+++ /dev/null
@@ -1,63 +0,0 @@
-{ lib, pythonPackages, fetchgit, libxslt, docbook5_xsl, openssh }:
-
-let
-
-  # Use this until the patches are upstreamed.
-  # Warning: will be rebased at will
-  libcloud = lib.overrideDerivation pythonPackages.libcloud ( args: {
-    src = fetchgit {
-      url = https://github.com/Phreedom/libcloud.git;
-      rev = "784427f549829a00d551e3468184a708420ad1ec";
-      sha256 = "fd0e092b39fa1fde6a8847e6dc69855d30c2dad9e95ee0373297658ff53edf8a";
-    };
-
-    preConfigure = "cp libcloud/test/secrets.py-dist libcloud/test/secrets.py";
-  });
-
-in
-
-pythonPackages.buildPythonPackage rec {
-  name = "nixops-1.3pre1362_2a616f8";
-  namePrefix = "";
-
-  src = fetchgit {
-    url = https://github.com/NixOS/nixops;
-    rev = "2a616f8ddc18800c9e1c7013632078a55c06c3e3";
-    sha256 = "12arppri2j9sblja73jlfdcbpz1z94cd35n9ypazcsw4irmya3k6";
-  };
-
-  buildInputs = [ pythonPackages.nose pythonPackages.coverage ];
-
-  propagatedBuildInputs =
-    [ pythonPackages.prettytable
-      pythonPackages.boto
-      pythonPackages.hetzner
-      libcloud
-      pythonPackages.sqlite3
-    ];
-
-  doCheck = true;
-
-  postInstall =
-    ''
-      # Backward compatibility symlink.
-      ln -s nixops $out/bin/charon
-
-      make -C doc/manual install \
-        docdir=$out/share/doc/nixops mandir=$out/share/man
-
-      mkdir -p $out/share/nix/nixops
-      cp -av nix/* $out/share/nix/nixops
-
-      # Add openssh to nixops' PATH. On some platforms, e.g. CentOS and RHEL
-      # the version of openssh is causing errors when have big networks (40+)
-      wrapProgram $out/bin/nixops --prefix PATH : "${openssh}/bin"
-    ''; # */
-
-  meta = {
-    homepage = https://github.com/NixOS/nixops;
-    description = "NixOS cloud provisioning and deployment tool";
-    maintainers = [ lib.maintainers.tv ];
-    platforms = lib.platforms.unix;
-  };
-}
diff --git a/pkgs/tools/package-management/nixui/default.nix b/pkgs/tools/package-management/nixui/default.nix
index 73004091a425..dd9dbed2995d 100644
--- a/pkgs/tools/package-management/nixui/default.nix
+++ b/pkgs/tools/package-management/nixui/default.nix
@@ -2,7 +2,7 @@
 , profilePaths ? (config.nixui.profilePaths or ["/nix/var/nix/profiles"])
 , dataDir ? (config.nixui.dataDir or "/tmp")
 , configurations ? (config.nixui.configurations or ["/etc/nixos/configuration.nix"])
-, NIX_PATH ? (config.nixui.NIX_PATH or "/nix/var/nix/profiles/per-user/root/channels/nixos:nixpkgs=/etc/nixos/nixpkgs:nixos-config=/etc/nixos/configuration.nix") }:
+, NIX_PATH ? (config.nixui.NIX_PATH or "/nix/var/nix/profiles/per-user/root/channels/nixos:nixos-config=/etc/nixos/configuration.nix") }:
 let
   version = "0.1.2";
   src = fetchgit {
diff --git a/pkgs/tools/package-management/nox/default.nix b/pkgs/tools/package-management/nox/default.nix
index 32af196c46e8..92edd915ad79 100644
--- a/pkgs/tools/package-management/nox/default.nix
+++ b/pkgs/tools/package-management/nox/default.nix
@@ -2,17 +2,17 @@
 
 pythonPackages.buildPythonPackage rec {
   name = "nox-${version}";
-  version = "0.0.1";
+  version = "0.0.2";
   namePrefix = "";
 
   src = fetchurl {
     url = "https://pypi.python.org/packages/source/n/nix-nox/nix-nox-${version}.tar.gz";
-    sha256 = "1s1jhickdhym70qrb5h4qxq1mvkpwgdppqpfb2jnpfaf1az6c207";
+    sha256 = "1wpxh5fhj8nx4yx4cvmc087cnf4iqwxf7zd7rdh2ln3pgxrjfral";
   };
 
   buildInputs = [ pythonPackages.pbr ];
 
-  pythonPath = with pythonPackages; [
+  propagatedBuildInputs = with pythonPackages; [
       dogpile_cache
       click
       requests2
diff --git a/pkgs/tools/package-management/opkg/default.nix b/pkgs/tools/package-management/opkg/default.nix
index 67c4578ac9ae..2a9d167cfcde 100644
--- a/pkgs/tools/package-management/opkg/default.nix
+++ b/pkgs/tools/package-management/opkg/default.nix
@@ -1,14 +1,14 @@
-{ stdenv, fetchurl, pkgconfig, curl, gpgme }:
+{ stdenv, fetchurl, pkgconfig, curl, gpgme, libarchive, bzip2, lzma, attr, acl }:
 
 stdenv.mkDerivation rec {
-  version = "0.2.4";
+  version = "0.3.0";
   name = "opkg-${version}";
   src = fetchurl {
     url = "http://downloads.yoctoproject.org/releases/opkg/opkg-${version}.tar.gz";
-    sha256 = "11ih8lay1v7sk5czk3m3cfqil4cp8s7pfz60xnddy7nqazjcfh0g";
+    sha256 = "13wqai7lgyfjlqvly0bz786wk9frl16a9yzrn27p3wwfvcf5swvz";
   };
 
-  buildInputs = [ pkgconfig curl gpgme ];
+  buildInputs = [ pkgconfig curl gpgme libarchive bzip2 lzma attr acl ];
 
   meta = with stdenv.lib; {
     description = "A lightweight package management system based upon ipkg";
diff --git a/pkgs/tools/package-management/packagekit/default.nix b/pkgs/tools/package-management/packagekit/default.nix
new file mode 100644
index 000000000000..c2842ae2e752
--- /dev/null
+++ b/pkgs/tools/package-management/packagekit/default.nix
@@ -0,0 +1,73 @@
+{ stdenv, fetchurl, intltool, glib, pkgconfig, polkit, python, sqlite }:
+
+let version = "1.0.8"; in
+stdenv.mkDerivation {
+  name = "packagekit-${version}";
+
+  src = fetchurl {
+    sha256 = "1vaxn4kwdwx6p03n88k4pnbd2l6lb0cbxpcs88kjack1jml17c3l";
+    url = "http://www.freedesktop.org/software/PackageKit/releases/PackageKit-${version}.tar.xz";
+  };
+
+  buildInputs = [ glib polkit python ];
+  propagatedBuildInputs = [ sqlite ];
+  nativeBuildInputs = [ intltool pkgconfig ];
+
+  configureFlags = ''
+    --disable-static
+    --disable-python3
+    --disable-networkmanager
+    --disable-connman
+    --disable-systemd
+    --disable-bash-completion
+    --disable-browser-plugin
+    --disable-gstreamer-plugin
+    --disable-gtk-module
+    --disable-command-not-found
+    --disable-cron
+    --disable-daemon-tests
+    --disable-alpm
+    --disable-aptcc
+    --enable-dummy
+    --disable-entropy
+    --disable-hif
+    --disable-pisi
+    --disable-poldek
+    --disable-portage
+    --disable-ports
+    --disable-katja
+    --disable-urmpi
+    --disable-yum
+    --disable-zypp
+  '';
+
+  enableParallelBuilding = true;
+
+  preInstall = ''
+    # Don't install anything to e.g. $out/var/cache:
+    for dir in src data; do
+      substituteInPlace $dir/Makefile \
+        --replace " install-data-hook" "" \
+        --replace " install-databaseDATA" ""
+    done
+  '';
+
+  meta = with stdenv.lib; {
+    inherit version;
+    description = "System to facilitate installing and updating packages";
+    longDescription = ''
+      PackageKit is a system designed to make installing and updating software
+      on your computer easier. The primary design goal is to unify all the
+      software graphical tools used in different distributions, and use some of
+      the latest technology like PolicyKit. The actual nuts-and-bolts distro
+      tool (dnf, apt, etc) is used by PackageKit using compiled and scripted
+      helpers. PackageKit isn't meant to replace these tools, instead providing
+      a common set of abstractions that can be used by standard GUI and text
+      mode package managers.
+    '';
+    homepage = http://www.packagekit.org/;
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ nckx ];
+  };
+}
diff --git a/pkgs/tools/package-management/rpm/default.nix b/pkgs/tools/package-management/rpm/default.nix
index 0d537a1c30cb..ef7b99952968 100644
--- a/pkgs/tools/package-management/rpm/default.nix
+++ b/pkgs/tools/package-management/rpm/default.nix
@@ -1,14 +1,14 @@
-{ stdenv, fetchurl, cpio, zlib, bzip2, file, elfutils, nspr, nss, popt, db, xz, python }:
+{ stdenv, fetchurl, cpio, zlib, bzip2, file, elfutils, libarchive, nspr, nss, popt, db, xz, python }:
 
 stdenv.mkDerivation rec {
-  name = "rpm-4.11.2";
+  name = "rpm-4.12.0";
 
   src = fetchurl {
-    url = "http://rpm.org/releases/rpm-4.11.x/${name}.tar.bz2";
-    sha256 = "1m2859js0dwg26sg2mnbkpzhvx303b12kx26az74cf5k6bk8sgs0";
+    url = "http://rpm.org/releases/rpm-4.12.x/${name}.tar.bz2";
+    sha256 = "18hk47hc755nslvb7xkq4jb095z7va0nlcyxdpxayc4lmb8mq3bp";
   };
 
-  buildInputs = [ cpio zlib bzip2 file nspr nss popt db xz python ];
+  buildInputs = [ cpio zlib bzip2 file libarchive nspr nss popt db xz python ];
 
   # Note: we don't add elfutils to buildInputs, since it provides a
   # bad `ld' and other stuff.