summary refs log tree commit diff
diff options
context:
space:
mode:
-rwxr-xr-xmaintainers/scripts/copy-tarball.sh10
-rwxr-xr-xmaintainers/scripts/copy-tarballs.sh14
-rw-r--r--pkgs/applications/display-managers/slim/default.nix6
-rw-r--r--pkgs/applications/misc/nut/2.6.3.nix34
-rw-r--r--pkgs/applications/misc/nut/default.nix32
-rw-r--r--pkgs/desktops/kde-4.7/kde-workspace.nix4
-rw-r--r--pkgs/desktops/kde-4.8/kde-workspace.nix4
-rw-r--r--pkgs/development/libraries/consolekit/0001-Don-t-daemonize-when-activated.patch28
-rw-r--r--pkgs/development/libraries/consolekit/0002-Don-t-take-bus-name-until-ready.patch62
-rw-r--r--pkgs/development/libraries/consolekit/commands.patch33
-rw-r--r--pkgs/development/libraries/consolekit/default.nix29
-rw-r--r--pkgs/development/libraries/polkit/default.nix2
-rw-r--r--pkgs/os-specific/linux/udev/173.nix58
-rw-r--r--pkgs/os-specific/linux/udev/custom-rules.patch91
-rw-r--r--pkgs/os-specific/linux/udev/pre-accept4-kernel.patch43
-rw-r--r--pkgs/os-specific/linux/udisks/default.nix7
-rw-r--r--pkgs/os-specific/linux/udisks/no-pci-db.patch13
-rw-r--r--pkgs/os-specific/linux/upower/default.nix2
-rw-r--r--pkgs/tools/misc/system-config-printer/default.nix20
-rw-r--r--pkgs/tools/networking/network-manager/default.nix8
-rw-r--r--pkgs/tools/security/gnupg1/default.nix4
-rw-r--r--pkgs/top-level/all-packages.nix9
-rw-r--r--pkgs/top-level/release.nix1
23 files changed, 82 insertions, 432 deletions
diff --git a/maintainers/scripts/copy-tarball.sh b/maintainers/scripts/copy-tarball.sh
index b4c2e93dab17..de325120efc8 100755
--- a/maintainers/scripts/copy-tarball.sh
+++ b/maintainers/scripts/copy-tarball.sh
@@ -10,25 +10,25 @@ base="$(basename "$url")"
 if [ -z "$base" ]; then echo "bad URL"; exit 1; fi
 dstPath="$distDir/$base"
 
-if [ -e "$dstPath" ]; then echo "$dstPath already exists"; exit 0; fi
+if [ -e "$dstPath" ]; then if [ -n "$VERBOSE" ]; then echo "$dstPath already exists"; fi; exit 0; fi
 
 if [ -z "$file" ]; then
 
     echo "downloading $url to $dstPath"
 
-    if [ -n "$dryRun" ]; then exit 0; fi
+    if [ -n "$DRY_RUN" ]; then exit 0; fi
 
     declare -a res
     if ! res=($(PRINT_PATH=1 nix-prefetch-url "$url")); then
-        continue
+        exit
     fi
-    
+
     storePath=${res[1]}
 
 else
     storePath="$file"
 fi
-    
+
 cp $storePath "$dstPath.tmp.$$"
 mv -f "$dstPath.tmp.$$" "$dstPath"
 
diff --git a/maintainers/scripts/copy-tarballs.sh b/maintainers/scripts/copy-tarballs.sh
index 80aeef9d66de..b25326d1af32 100755
--- a/maintainers/scripts/copy-tarballs.sh
+++ b/maintainers/scripts/copy-tarballs.sh
@@ -8,7 +8,19 @@ urls=$(nix-instantiate --eval-only --xml --strict '<nixpkgs/maintainers/scripts/
 
 for url in $urls; do
     if echo "$url" | grep -q -E "www.cs.uu.nl|nixos.org|.stratego-language.org|java.sun.com|ut2004|linuxq3a|RealPlayer|Adbe|belastingdienst|microsoft|armijn/.nix|sun.com|archive.eclipse.org"; then continue; fi
-    if ! echo "$url" | grep -q -E "\-.*[0-9].*"; then echo "skipping $url"; continue; fi
+
+    # Check the URL scheme.
+    if ! echo "$url" | grep -q -E "^[a-z]+://"; then echo "skipping $url (no URL scheme)"; continue; fi
+
+    # Check the basename.  It should include something resembling a version.
+    base="$(basename "$url")"
+    #if ! echo "$base" | grep -q -E "[-_].*[0-9].*"; then echo "skipping $url (no version)"; continue; fi
+    if ! echo "$base" | grep -q -E "[a-zA-Z]"; then echo "skipping $url (no letter in name)"; continue; fi
+    if ! echo "$base" | grep -q -E "[0-9]"; then echo "skipping $url (no digit in name)"; continue; fi
+    if ! echo "$base" | grep -q -E "[-_\.]"; then echo "skipping $url (no dot/underscore in name)"; continue; fi
+    if echo "$base" | grep -q -E "[&?=]"; then echo "skipping $url (bad character in name)"; continue; fi
+    if [ "${base:0:1}" = "." ]; then echo "skipping $url (starts with a dot)"; continue; fi
+
     $(dirname $0)/copy-tarball.sh "$url"
 done
 
diff --git a/pkgs/applications/display-managers/slim/default.nix b/pkgs/applications/display-managers/slim/default.nix
index 0675b02a314e..601aa7bf53a7 100644
--- a/pkgs/applications/display-managers/slim/default.nix
+++ b/pkgs/applications/display-managers/slim/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, cmake, pkgconfig, x11, libjpeg, libpng12, libXmu
-, fontconfig, freetype, pam, consolekit, dbus_libs }:
+, fontconfig, freetype, pam, dbus_libs }:
 
 stdenv.mkDerivation rec {
   name = "slim-1.3.4";
@@ -18,11 +18,11 @@ stdenv.mkDerivation rec {
   buildInputs =
     [ cmake pkgconfig x11 libjpeg libpng12 libXmu fontconfig freetype
       pam dbus_libs
-    ] ++ stdenv.lib.optional (consolekit != null) consolekit;
+    ];
 
   preConfigure = "substituteInPlace CMakeLists.txt --replace /etc $out/etc";
 
-  cmakeFlags = [ "-DUSE_PAM=1" ] ++ stdenv.lib.optional (consolekit != null) "-DUSE_CONSOLEKIT=1";
+  cmakeFlags = [ "-DUSE_PAM=1" ];
 
   NIX_CFLAGS_LINK = "-lXmu";
 
diff --git a/pkgs/applications/misc/nut/2.6.3.nix b/pkgs/applications/misc/nut/2.6.3.nix
deleted file mode 100644
index 471529675dbf..000000000000
--- a/pkgs/applications/misc/nut/2.6.3.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{ stdenv, fetchurl, pkgconfig, neon, libusb, openssl, udev, avahi, freeipmi }:
-
-stdenv.mkDerivation {
-  name = "nut-2.6.3";
-  src = fetchurl {
-    url = http://www.networkupstools.org/source/2.6/nut-2.6.3.tar.gz;
-    sha256 = "0fk3bcivv26kw1psxb6sykqp9n5w02j01s1idypzlci0kmr3p49l";
-  };
-
-  buildInputs = [ neon libusb openssl udev avahi freeipmi ];
-  buildNativeInputs = [ pkgconfig ];
-
-  configureFlags = [
-    "--with-all"
-    "--with-ssl"
-    "--without-snmp" # Until we have it ...
-    "--without-powerman" # Until we have it ...
-    "--without-cgi"
-    "--without-hal"
-  ];
-
-  meta = {
-    description = "Network UPS Tools";
-    longDescription = ''
-      Network UPS Tools is a collection of programs which provide a common
-      interface for monitoring and administering UPS, PDU and SCD hardware.
-      It uses a layered approach to connect all of the parts.
-    '';
-    homepage = http://www.networkupstools.org/;
-    platforms = with stdenv.lib.platforms; linux;
-    maintainers = with stdenv.lib.maintainers; [ pierron ];
-    priority = 10;
-  };
-}
diff --git a/pkgs/applications/misc/nut/default.nix b/pkgs/applications/misc/nut/default.nix
index 51ae8633a7c0..b89a35d2f814 100644
--- a/pkgs/applications/misc/nut/default.nix
+++ b/pkgs/applications/misc/nut/default.nix
@@ -1,21 +1,28 @@
-{ stdenv, fetchurl, pkgconfig, neon, libusb, openssl, udev }:
+{ stdenv, fetchurl, pkgconfig, neon, libusb, openssl, udev, avahi, freeipmi }:
 
-stdenv.mkDerivation {
-  name = "nut-2.6.1";
+stdenv.mkDerivation rec {
+  name = "nut-2.6.5";
 
   src = fetchurl {
-    url = http://www.networkupstools.org/source/2.6/nut-2.6.1.tar.gz;
-    sha256 = "f5c46b856c0cf5b7f0e4b22d82b670af64cc98717a90eaac8723dd402a181c00";
+    url = "http://www.networkupstools.org/source/2.6/${name}.tar.gz";
+    sha256 = "0gxrzsblx0jc4g9w0903ybwqbv1d79vq5hnks403fvnay4fgg3b1";
   };
 
-  buildInputs = [ pkgconfig neon libusb openssl udev ];
+  buildInputs = [ neon libusb openssl udev avahi freeipmi ];
 
-  configureFlags = [
-    "--with-all"
-    "--without-snmp" # Until we have it ...
-    "--without-powerman" # Until we have it ...
-    "--without-cgi"
-  ];
+  buildNativeInputs = [ pkgconfig ];
+
+  configureFlags =
+    [ "--with-all"
+      "--with-ssl"
+      "--without-snmp" # Until we have it ...
+      "--without-powerman" # Until we have it ...
+      "--without-cgi"
+      "--without-hal"
+      "--with-systemdsystemunitdir=$(out)/etc/systemd/systemd"
+    ];
+
+  enableParallelBuilding = true;
 
   meta = {
     description = "Network UPS Tools";
@@ -27,5 +34,6 @@ stdenv.mkDerivation {
     homepage = http://www.networkupstools.org/;
     platforms = with stdenv.lib.platforms; linux;
     maintainers = with stdenv.lib.maintainers; [ pierron ];
+    priority = 10;
   };
 }
diff --git a/pkgs/desktops/kde-4.7/kde-workspace.nix b/pkgs/desktops/kde-4.7/kde-workspace.nix
index 8116f4bb6b59..1ece3f490761 100644
--- a/pkgs/desktops/kde-4.7/kde-workspace.nix
+++ b/pkgs/desktops/kde-4.7/kde-workspace.nix
@@ -1,6 +1,6 @@
 { kde, kdelibs, qimageblitz, libdbusmenu_qt, xorg, shared_desktop_ontologies
 , lm_sensors, pciutils, libraw1394, libusb, libxklavier, python, libqalculate
-, consolekit, xkeyboard_config, kdepimlibs, pam, boost, gpsd, prison, akonadi
+, xkeyboard_config, kdepimlibs, pam, boost, gpsd, prison, akonadi
 , pykde4, libjpeg, pkgconfig, libXft, libXxf86misc
 }:
 
@@ -12,7 +12,7 @@ kde {
       xorg.libXcomposite xorg.libXdamage xorg.libXau xorg.libXdmcp
       xorg.libpthreadstubs
       boost gpsd shared_desktop_ontologies lm_sensors pciutils libraw1394
-      libusb python libqalculate consolekit kdepimlibs pam prison akonadi
+      libusb python libqalculate kdepimlibs pam prison akonadi
     ];
 
   buildNativeInputs = [ pkgconfig ];
diff --git a/pkgs/desktops/kde-4.8/kde-workspace.nix b/pkgs/desktops/kde-4.8/kde-workspace.nix
index 31937d4f1d56..1a86eacb3367 100644
--- a/pkgs/desktops/kde-4.8/kde-workspace.nix
+++ b/pkgs/desktops/kde-4.8/kde-workspace.nix
@@ -1,6 +1,6 @@
 { kde, kdelibs, qimageblitz, libdbusmenu_qt, xorg, shared_desktop_ontologies,
   lm_sensors, pciutils, libraw1394, libusb, libxklavier, python, libqalculate,
-  consolekit, xkeyboard_config, kdepimlibs, pam, boost, gpsd, prison, akonadi,
+  xkeyboard_config, kdepimlibs, pam, boost, gpsd, prison, akonadi,
   pykde4, libjpeg, pkgconfig, libXft, libXxf86misc, kactivities
 }:
 
@@ -12,7 +12,7 @@ kde {
       xorg.libXcomposite xorg.libXdamage xorg.libXau xorg.libXdmcp
       xorg.libpthreadstubs
       boost gpsd shared_desktop_ontologies lm_sensors pciutils libraw1394
-      libusb python libqalculate consolekit kdepimlibs pam prison akonadi
+      libusb python libqalculate kdepimlibs pam prison akonadi
       kactivities
     ];
 
diff --git a/pkgs/development/libraries/consolekit/0001-Don-t-daemonize-when-activated.patch b/pkgs/development/libraries/consolekit/0001-Don-t-daemonize-when-activated.patch
deleted file mode 100644
index 30f3ab4907b0..000000000000
--- a/pkgs/development/libraries/consolekit/0001-Don-t-daemonize-when-activated.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-Upstream patch
-
-From fc2870a65f6b3ed3b71bcac69c5faf3a9c759c64 Mon Sep 17 00:00:00 2001
-From: Matthias Clasen <mclasen@redhat.com>
-Date: Mon, 21 Dec 2009 11:13:23 -0500
-Subject: [PATCH 1/2] Don't daemonize when activated
-
-It confuses some versions of D-Bus and isn't needed
-(or wanted it).
-
-http://bugs.freedesktop.org/show_bug.cgi?id=25642
----
- data/org.freedesktop.ConsoleKit.service.in |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/data/org.freedesktop.ConsoleKit.service.in b/data/org.freedesktop.ConsoleKit.service.in
-index ec2128c..d716a36 100644
---- a/data/org.freedesktop.ConsoleKit.service.in
-+++ b/data/org.freedesktop.ConsoleKit.service.in
-@@ -1,4 +1,4 @@
- [D-BUS Service]
- Name=org.freedesktop.ConsoleKit
--Exec=@sbindir@/console-kit-daemon
-+Exec=@sbindir@/console-kit-daemon --no-daemon
- User=root
--- 
-1.7.1
-
diff --git a/pkgs/development/libraries/consolekit/0002-Don-t-take-bus-name-until-ready.patch b/pkgs/development/libraries/consolekit/0002-Don-t-take-bus-name-until-ready.patch
deleted file mode 100644
index 2af59ac8d1e5..000000000000
--- a/pkgs/development/libraries/consolekit/0002-Don-t-take-bus-name-until-ready.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-Upstream patch
-
-From 2418840248f07025ad0edc96ed17e03ce5e47f3e Mon Sep 17 00:00:00 2001
-From: Ray Strode <rstrode@redhat.com>
-Date: Mon, 21 Dec 2009 11:14:54 -0500
-Subject: [PATCH 2/2] Don't take bus name until ready
-
-Previously, we would take a bus name right away, but
-not register the manager object until later.  This
-causes a race when being activated by a method call
-on the manager object, where ConsoleKit gets started
-but the method call fails.
-
-https://bugs.freedesktop.org/show_bug.cgi?id=25744
----
- src/main.c |   16 ++++++++--------
- 1 files changed, 8 insertions(+), 8 deletions(-)
-
-diff --git a/src/main.c b/src/main.c
-index 809c6d6..b8f698f 100644
---- a/src/main.c
-+++ b/src/main.c
-@@ -294,11 +294,19 @@ main (int    argc,
- 
-         setup_debug_log (debug);
- 
-+        g_debug ("initializing console-kit-daemon %s", VERSION);
-+
-         connection = get_system_bus ();
-         if (connection == NULL) {
-                 goto out;
-         }
- 
-+        manager = ck_manager_new ();
-+
-+        if (manager == NULL) {
-+                goto out;
-+        }
-+
-         bus_proxy = get_bus_proxy (connection);
-         if (bus_proxy == NULL) {
-                 g_warning ("Could not construct bus_proxy object; bailing out");
-@@ -310,16 +318,8 @@ main (int    argc,
-                 goto out;
-         }
- 
--        g_debug ("initializing console-kit-daemon %s", VERSION);
--
-         create_pid_file ();
- 
--        manager = ck_manager_new ();
--
--        if (manager == NULL) {
--                goto out;
--        }
--
-         loop = g_main_loop_new (NULL, FALSE);
- 
-         g_signal_connect (bus_proxy,
--- 
-1.7.1
-
diff --git a/pkgs/development/libraries/consolekit/commands.patch b/pkgs/development/libraries/consolekit/commands.patch
deleted file mode 100644
index 48b0d5d8cf64..000000000000
--- a/pkgs/development/libraries/consolekit/commands.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-This patch adds shutdown commands specific to NixOS, as NixOS does not have
-a /sbin or /usr/sbin directory. In order not to have a dependency on the
-package that provides "shutdown" when in an environment other than NixOS,
-we'll make it depend on /var/run/current-system.
-
-Note: this patch does not compromise system security. Other systems than
-NixOS should have already shutdown in the earlier directories being searched,
-and otherwise /var/run is writable only be root.
-
---- ConsoleKit-0.4.1/tools/linux/ck-system-restart.org	2012-02-13 11:29:57.352902568 +0100
-+++ ConsoleKit-0.4.1/tools/linux/ck-system-restart	2012-02-13 11:43:27.593317712 +0100
-@@ -7,6 +7,9 @@
- elif [ -x "/usr/sbin/shutdown" ] ; then
- 	/usr/sbin/shutdown -r now
- 	exit $?
-+elif [ -x "/var/run/current-system/sw/sbin/shutdown" ] ; then
-+    /var/run/current-system/sw/sbin/shutdown -r now
-+    exit $?
- else
- 	exit 1
- fi
---- ConsoleKit-0.4.1/tools/linux/ck-system-stop.org	2012-02-13 11:30:06.228950934 +0100
-+++ ConsoleKit-0.4.1/tools/linux/ck-system-stop	2012-02-13 11:44:12.664563304 +0100
-@@ -7,6 +7,9 @@
- elif [ -x "/usr/sbin/shutdown" ] ; then
- 	/usr/sbin/shutdown -h now
- 	exit $?
-+elif [ -x "/var/run/current-system/sw/sbin/shutdown" ] ; then
-+    /var/run/current-system/sw/sbin/shutdown -h now
-+    exit $?
- else
- 	exit 1
- fi
diff --git a/pkgs/development/libraries/consolekit/default.nix b/pkgs/development/libraries/consolekit/default.nix
deleted file mode 100644
index e9cedf188575..000000000000
--- a/pkgs/development/libraries/consolekit/default.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ stdenv, fetchurl, pkgconfig, dbus_glib, zlib, pam, glib, 
-  libX11, polkit, expat }:
-
-stdenv.mkDerivation rec {
-  name = "consolekit-0.4.1";
-  
-  src = fetchurl {
-    url = http://www.freedesktop.org/software/ConsoleKit/dist/ConsoleKit-0.4.1.tar.bz2;
-    sha256 = "0gj0airrgyi14a06w3d4407g62bs5a1cam2h64s50x3d2k3ascph";
-  };
-  
-  buildInputs = [ pkgconfig dbus_glib zlib pam glib libX11 polkit expat ];
-  patches = [ ./0001-Don-t-daemonize-when-activated.patch
-    ./0002-Don-t-take-bus-name-until-ready.patch
-    ./commands.patch  # adds shutdown commands for NixOS to the list of shutdown commands
-  ];
-
-  # For console-kit to get the rpath to libgcc_s, needed for pthread_cancel to work
-  NIX_LDFLAGS = "-lgcc_s";
-
-  configureFlags = "--enable-pam-module --with-pam-module-dir=$(out)/lib/security --localstatedir=/var --sysconfdir=/etc";
-
-  installFlags = "sysconfdir=$(out)/etc DBUS_SYS_DIR=$(out)/etc/dbus-1/system.d"; # keep `make install' happy
-  
-  meta = {
-    homepage = http://www.freedesktop.org/wiki/Software/ConsoleKit;
-    description = "A framework for defining and tracking users, login sessions, and seats";
-  };
-}
diff --git a/pkgs/development/libraries/polkit/default.nix b/pkgs/development/libraries/polkit/default.nix
index 88daab5ff92f..788b6d6d32b8 100644
--- a/pkgs/development/libraries/polkit/default.nix
+++ b/pkgs/development/libraries/polkit/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, pkgconfig, glib, expat, pam, intltool, gettext
 , gobjectIntrospection
-, useSystemd ? false, systemd ? null }:
+, useSystemd ? true, systemd }:
 
 let
 
diff --git a/pkgs/os-specific/linux/udev/173.nix b/pkgs/os-specific/linux/udev/173.nix
deleted file mode 100644
index 795826cf6bf3..000000000000
--- a/pkgs/os-specific/linux/udev/173.nix
+++ /dev/null
@@ -1,58 +0,0 @@
-{ stdenv, fetchurl, gperf, pkgconfig, glib, acl
-, libusb, usbutils, pciutils }:
-
-assert stdenv ? glibc;
-
-stdenv.mkDerivation rec {
-  name = "udev-173";
-
-  src = fetchurl {
-    url = "mirror://kernel/linux/utils/kernel/hotplug/${name}.tar.bz2";
-    sha256 = "1bxadi4bi11v8ipzj22wknv8hsb0wgdb99bx3w9w33rgl4aq78bh";
-  };
-
-  buildInputs = [ gperf pkgconfig glib acl libusb usbutils ];
-
-  configureFlags =
-    ''
-      --with-pci-ids-path=${pciutils}/share/pci.ids
-      --enable-udev_acl --enable-edd
-      --disable-introspection --libexecdir=$(out)/lib/udev
-      --with-firmware-path=/root/test-firmware:/var/run/current-system/firmware
-    '';
-
-  # Workaround for the Linux kernel headers being too old.
-  NIX_CFLAGS_COMPILE = "-DBTN_TRIGGER_HAPPY=0x2c0";
-
-  postInstall =
-    ''
-      # The path to rule_generator.functions in write_cd_rules and
-      # write_net_rules is broken.  Also, don't store the mutable
-      # persistant rules in /etc/udev/rules.d but in
-      # /var/lib/udev/rules.d.
-      for i in $out/lib/udev/write_cd_rules $out/lib/udev/write_net_rules; do
-        substituteInPlace $i \
-          --replace /lib/udev $out/lib/udev \
-          --replace /etc/udev/rules.d /var/lib/udev/rules.d
-      done
-
-      # Don't set PATH to /bin:/sbin; won't work in NixOS.
-      sed -e '/PATH=/d' -i $out/lib/udev/rule_generator.functions
-
-      ln -sv $out/lib/ConsoleKit $out/etc/ConsoleKit
-
-      rm -frv $out/share/gtk-doc
-    '';
-
-  patches = [ ./custom-rules.patch ] ++
-    [(fetchurl {
-      url = https://bugs.archlinux.org/task/25356?getfile=7281;
-      sha256 = "01xib1pfdbwacgx8dqxgrf67a0mwkpm4kxy9f9v3df93v0m4pmbm";
-    })] ++
-    stdenv.lib.optional stdenv.isArm ./pre-accept4-kernel.patch;
-
-  meta = {
-    homepage = http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev.html;
-    description = "Udev manages the /dev filesystem";
-  };
-}
diff --git a/pkgs/os-specific/linux/udev/custom-rules.patch b/pkgs/os-specific/linux/udev/custom-rules.patch
deleted file mode 100644
index 647691acfb16..000000000000
--- a/pkgs/os-specific/linux/udev/custom-rules.patch
+++ /dev/null
@@ -1,91 +0,0 @@
-commit c49ec33ba0f1a7f11b188913bb4895360ced67f8
-Author: Yury G. Kudryashov <urkud.urkud@gmail.com>
-Date:   Tue Aug 16 16:28:56 2011 +0400
-
-    Upstream considers presence of rules_dir=... in udev.conf as a very special case.
-    In particular, they disable /dev/.udev/*. Re-enable it.
-
-diff --git a/udev/udev-rules.c b/udev/udev-rules.c
-index 6bf2726..c1ae1f3 100644
---- a/udev/udev-rules.c
-+++ b/udev/udev-rules.c
-@@ -1812,6 +1812,7 @@ struct udev_rules *udev_rules_new(struct udev *udev, int resolve_names)
- 	struct udev_list file_list;
- 	struct udev_list_entry *file_loop;
- 	struct token end_token;
-+	char runpathrules[UTIL_PATH_SIZE];
- 
- 	rules = calloc(1, sizeof(struct udev_rules));
- 	if (rules == NULL)
-@@ -1854,22 +1855,21 @@ struct udev_rules *udev_rules_new(struct udev *udev, int resolve_names)
- 	rules->trie_nodes_cur = 1;
- 
- 	if (udev_get_rules_path(udev) == NULL) {
--		char filename[UTIL_PATH_SIZE];
- 
- 		/* /lib/udev -- default/package rules */
- 		add_matching_files(udev, &file_list, LIBEXECDIR "/rules.d", ".rules");
- 
- 		/* /etc/udev -- system-specific/user/admin rules */
- 		add_matching_files(udev, &file_list, SYSCONFDIR "/udev/rules.d", ".rules");
--
--		/* /run/udev -- throw-away/temporary rules */
--		util_strscpyl(filename, sizeof(filename), udev_get_run_path(udev), "/rules.d", NULL);
--		add_matching_files(udev, &file_list, filename, ".rules");
- 	} else {
- 		/* custom rules files location for testing */
- 		add_matching_files(udev, &file_list, udev_get_rules_path(udev), ".rules");
- 	}
- 
-+	/* /run/udev -- throw-away/temporary rules */
-+	util_strscpyl(runpathrules, sizeof(runpathrules), udev_get_run_path(udev), "/rules.d", NULL);
-+	add_matching_files(udev, &file_list, runpathrules, ".rules");
-+
- 	/* add all filenames to the string buffer */
- 	udev_list_entry_foreach(file_loop, udev_list_get_entry(&file_list)) {
- 		const char *filename = udev_list_entry_get_value(file_loop);
-diff --git a/udev/udevd.c b/udev/udevd.c
-index f1a31e7..45d10b6 100644
---- a/udev/udevd.c
-+++ b/udev/udevd.c
-@@ -1198,6 +1198,8 @@ int main(int argc, char *argv[])
- 	struct epoll_event ep_ctrl, ep_inotify, ep_signal, ep_netlink, ep_worker;
- 	struct udev_ctrl_connection *ctrl_conn = NULL;
- 	int rc = 1;
-+	char filename[UTIL_PATH_SIZE];
-+	struct stat statbuf;
- 
- 	udev = udev_new();
- 	if (udev == NULL)
-@@ -1480,23 +1482,21 @@ int main(int argc, char *argv[])
- 		inotify_add_watch(fd_inotify, udev_get_rules_path(udev),
- 				  IN_DELETE | IN_MOVE | IN_CLOSE_WRITE);
- 	} else {
--		char filename[UTIL_PATH_SIZE];
--		struct stat statbuf;
- 
- 		inotify_add_watch(fd_inotify, LIBEXECDIR "/rules.d",
- 				  IN_DELETE | IN_MOVE | IN_CLOSE_WRITE);
- 		inotify_add_watch(fd_inotify, SYSCONFDIR "/udev/rules.d",
- 				  IN_DELETE | IN_MOVE | IN_CLOSE_WRITE);
-+	}
- 
--		/* watch dynamic rules directory */
--		util_strscpyl(filename, sizeof(filename), udev_get_run_path(udev), "/rules.d", NULL);
--		if (stat(filename, &statbuf) != 0) {
--			util_create_path(udev, filename);
--			mkdir(filename, 0755);
--		}
--		inotify_add_watch(fd_inotify, filename,
--				  IN_DELETE | IN_MOVE | IN_CLOSE_WRITE);
-+	/* watch dynamic rules directory */
-+	util_strscpyl(filename, sizeof(filename), udev_get_run_path(udev), "/rules.d", NULL);
-+	if (stat(filename, &statbuf) != 0) {
-+		util_create_path(udev, filename);
-+		mkdir(filename, 0755);
- 	}
-+	inotify_add_watch(fd_inotify, filename,
-+			  IN_DELETE | IN_MOVE | IN_CLOSE_WRITE);
- 	udev_watch_restore(udev);
- 
- 	/* block and listen to all signals on signalfd */
diff --git a/pkgs/os-specific/linux/udev/pre-accept4-kernel.patch b/pkgs/os-specific/linux/udev/pre-accept4-kernel.patch
deleted file mode 100644
index 2cf549d99a76..000000000000
--- a/pkgs/os-specific/linux/udev/pre-accept4-kernel.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From:
-https://github.com/archlinuxarm/PKGBUILDs/blob/master/core/udev-oxnas/pre-accept4-kernel.patch
-
-diff -urN a/udev/udev-ctrl.c b/udev/udev-ctrl.c
---- a/udev/udev-ctrl.c	2011-10-09 17:10:32.000000000 -0600
-+++ b/udev/udev-ctrl.c	2011-10-25 15:11:09.000000000 -0600
-@@ -15,6 +15,7 @@
- #include <stddef.h>
- #include <string.h>
- #include <unistd.h>
-+#include <fcntl.h>
- #include <sys/types.h>
- #include <sys/poll.h>
- #include <sys/socket.h>
-@@ -182,6 +183,7 @@
- 	struct ucred ucred;
- 	socklen_t slen;
- 	const int on = 1;
-+	int flgs;
- 
- 	conn = calloc(1, sizeof(struct udev_ctrl_connection));
- 	if (conn == NULL)
-@@ -189,13 +191,19 @@
- 	conn->refcount = 1;
- 	conn->uctrl = uctrl;
- 
--	conn->sock = accept4(uctrl->sock, NULL, NULL, SOCK_CLOEXEC|SOCK_NONBLOCK);
-+//	conn->sock = accept4(uctrl->sock, NULL, NULL, SOCK_CLOEXEC|SOCK_NONBLOCK);
-+	conn->sock = accept(uctrl->sock, NULL, NULL);
- 	if (conn->sock < 0) {
- 		if (errno != EINTR)
- 			err(uctrl->udev, "unable to receive ctrl connection: %m\n");
- 		goto err;
- 	}
- 
-+// Since we don't have accept4
-+	flgs = fcntl(conn->sock, F_GETFL, NULL);
-+	if(flgs >= 0) fcntl(conn->sock, F_SETFL, flgs | O_NONBLOCK);
-+	fcntl(conn->sock, F_SETFD, FD_CLOEXEC);
-+
- 	/* check peer credential of connection */
- 	slen = sizeof(ucred);
- 	if (getsockopt(conn->sock, SOL_SOCKET, SO_PEERCRED, &ucred, &slen) < 0) {
diff --git a/pkgs/os-specific/linux/udisks/default.nix b/pkgs/os-specific/linux/udisks/default.nix
index 4987e90429ce..b46efd468745 100644
--- a/pkgs/os-specific/linux/udisks/default.nix
+++ b/pkgs/os-specific/linux/udisks/default.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     sha256 = "1xgqifddwaavmjc8c30i0mdffyirsld7c6qhfyjw7f9khwv8jjw5";
   };
 
-  patches = [ ./purity.patch ];
+  patches = [ ./purity.patch ./no-pci-db.patch ];
 
   postPatch =
     ''
@@ -30,11 +30,6 @@ stdenv.mkDerivation rec {
 
   configureFlags = "--localstatedir=/var --enable-lvm2";
 
-  preConfigure =
-    ''
-      # Ensure that udisks can find the necessary programs.
-    '';
-
   meta = {
     homepage = http://www.freedesktop.org/wiki/Software/udisks;
     description = "A daemon and command-line utility for querying and manipulating storage devices";
diff --git a/pkgs/os-specific/linux/udisks/no-pci-db.patch b/pkgs/os-specific/linux/udisks/no-pci-db.patch
new file mode 100644
index 000000000000..b323b515c40e
--- /dev/null
+++ b/pkgs/os-specific/linux/udisks/no-pci-db.patch
@@ -0,0 +1,13 @@
+Systemd no longer has the pci-db program.
+
+diff -ru -x '*~' udisks-1.0.4-orig/data/80-udisks.rules udisks-1.0.4/data/80-udisks.rules
+--- udisks-1.0.4-orig/data/80-udisks.rules	2011-08-25 23:31:20.000000000 +0200
++++ udisks-1.0.4/data/80-udisks.rules	2012-12-13 13:06:52.189650854 +0100
+@@ -3,7 +3,6 @@
+ 
+ # import names for PCI storage controllers
+ #
+-SUBSYSTEM=="pci", ACTION=="add|change", ENV{ID_MODEL_FROM_DATABASE}=="", ATTR{class}=="0x01*", IMPORT{program}="pci-db %p"
+ 
+ # Set eSATA port type for known eSATA CardBus adapters - first we want to ensure
+ # the device is on a cardbus controller (upper PCI device) - then we check
diff --git a/pkgs/os-specific/linux/upower/default.nix b/pkgs/os-specific/linux/upower/default.nix
index 2f870e5d9994..6ae4c22f48a7 100644
--- a/pkgs/os-specific/linux/upower/default.nix
+++ b/pkgs/os-specific/linux/upower/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, pkgconfig, glib, dbus, dbus_glib, dbus_tools, polkit
 , intltool, libxslt, docbook_xsl, udev, libusb1, pmutils
-, useSystemd ? false, systemd ? null
+, useSystemd ? true, systemd
 }:
 
 assert stdenv.isLinux;
diff --git a/pkgs/tools/misc/system-config-printer/default.nix b/pkgs/tools/misc/system-config-printer/default.nix
index 8923637bbdbf..0f20a8ad9540 100644
--- a/pkgs/tools/misc/system-config-printer/default.nix
+++ b/pkgs/tools/misc/system-config-printer/default.nix
@@ -1,20 +1,20 @@
 { stdenv, fetchurl, udev, intltool, pkgconfig, glib, xmlto
 , makeWrapper, pygobject, pygtk, docbook_xml_dtd_412, docbook_xsl
-, pythonDBus, libxml2, desktop_file_utils, libusb, cups, pycups
+, pythonDBus, libxml2, desktop_file_utils, libusb1, cups, pycups
 , pythonPackages
 , withGUI ? true
 }:
 
 stdenv.mkDerivation rec {
-  name = "${meta.name}-${meta.version}";
+  name = "system-config-printer-1.3.12";
 
   src = fetchurl {
-    url = "http://cyberelk.net/tim/data/${meta.name}/1.3/${name}.tar.xz";
-    sha256 = "1d50rqgpyrzyrxwq3qhafzq9075qm2wxdrh1f1q7whlr0chxi3mw";
+    url = "http://cyberelk.net/tim/data/system-config-printer/1.3/${name}.tar.xz";
+    sha256 = "1cg9n75rg5l9vr1925n2g771kga33imikyl0mf70lww2sfgvs18r";
   };
 
   buildInputs =
-    [ intltool pkgconfig glib udev libusb cups xmlto
+    [ intltool pkgconfig glib udev libusb1 cups xmlto
       libxml2 docbook_xml_dtd_412 docbook_xsl desktop_file_utils
       pythonPackages.python pythonPackages.wrapPython
     ];
@@ -22,8 +22,11 @@ stdenv.mkDerivation rec {
   pythonPath =
     [ pythonDBus pycups pygobject ]
     ++ stdenv.lib.optionals withGUI [ pygtk pythonPackages.notify ];
-    
-  configureFlags = "--with-udev-rules";
+
+  configureFlags =
+    [ "--with-udev-rules"
+      "--with-systemdsystemunitdir=$(out)/etc/systemd/systemd"
+    ];
 
   postInstall =
     ''
@@ -34,7 +37,6 @@ stdenv.mkDerivation rec {
     '';
 
   meta = {
-    name = "system-config-printer";
-    version = "1.3.4";
+    homepage = http://cyberelk.net/tim/software/system-config-printer/;
   };
 }
diff --git a/pkgs/tools/networking/network-manager/default.nix b/pkgs/tools/networking/network-manager/default.nix
index 0adb9b1e5797..0e3eaecf4cb0 100644
--- a/pkgs/tools/networking/network-manager/default.nix
+++ b/pkgs/tools/networking/network-manager/default.nix
@@ -31,7 +31,8 @@ stdenv.mkDerivation rec {
     "--with-dbus-sys-dir=\${out}/etc/dbus-1/system.d"
     "--with-crypto=gnutls" "--disable-more-warnings"
     "--with-systemdsystemunitdir=$(out)/etc/systemd/system"
-    "--with-kernel-firmware-dir=/run/current-system/firmware" ];
+    "--with-kernel-firmware-dir=/run/current-system/firmware"
+    "--with-session-tracking=systemd" ];
 
   buildInputs = [ wirelesstools udev libnl libuuid polkit ppp xz ];
 
@@ -55,11 +56,14 @@ stdenv.mkDerivation rec {
   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"'
     '';
 
   meta = with stdenv.lib; {
     homepage = http://projects.gnome.org/NetworkManager/;
-    description = "Network configuration and management in an easy way. Desktop environment independent.";
+    description = "Network configuration and management tool";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ phreedom urkud rickynils ];
     platforms = platforms.linux;
diff --git a/pkgs/tools/security/gnupg1/default.nix b/pkgs/tools/security/gnupg1/default.nix
index b3bf309b48e1..c779b979d9db 100644
--- a/pkgs/tools/security/gnupg1/default.nix
+++ b/pkgs/tools/security/gnupg1/default.nix
@@ -15,11 +15,11 @@ let
 in
 
 stdenv.mkDerivation rec {
-  name = "gnupg-1.4.12";
+  name = "gnupg-1.4.13";
 
   src = fetchurl {
     url = "mirror://gnupg/gnupg/${name}.tar.bz2";
-    sha1 = "9b78e20328d35525af7b8a9c1cf081396910e937";
+    sha1 = "17a75c54d292bd0923f0a1817a1b02ded37d1de1";
   };
 
   buildInputs = [ readline bzip2 ];
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 64119eda2aa8..69fe6be52c96 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -3504,8 +3504,6 @@ let
 
   confuse = callPackage ../development/libraries/confuse { };
 
-  consolekit = callPackage ../development/libraries/consolekit { };
-
   coredumper = callPackage ../development/libraries/coredumper { };
 
   ctl = callPackage ../development/libraries/ctl { };
@@ -5194,7 +5192,6 @@ let
 
   ### DEVELOPMENT / LIBRARIES / JAVA
 
-
   atermjava = callPackage ../development/libraries/java/aterm {
     stdenv = overrideInStdenv stdenv [gnumake380];
   };
@@ -5265,6 +5262,7 @@ let
 
   jquery_ui = callPackage ../development/libraries/javascript/jquery-ui { };
 
+
   ### DEVELOPMENT / PERL MODULES
 
   buildPerlPackage = import ../development/perl-modules/generic perl;
@@ -6344,8 +6342,7 @@ let
   });
 
   udev145 = callPackage ../os-specific/linux/udev/145.nix { };
-  udev173 = callPackage ../os-specific/linux/udev/173.nix { };
-  udev = pkgs.udev173;
+  udev = pkgs.systemd;
 
   udisks = callPackage ../os-specific/linux/udisks { };
 
@@ -8990,8 +8987,6 @@ let
 
   nut = callPackage ../applications/misc/nut { };
 
-  nut_2_6_3 = callPackage ../applications/misc/nut/2.6.3.nix { };
-
   disnix = callPackage ../tools/package-management/disnix { };
 
   disnix_activation_scripts = callPackage ../tools/package-management/disnix/activation-scripts {
diff --git a/pkgs/top-level/release.nix b/pkgs/top-level/release.nix
index 55def41ca8aa..3a6a1ca62bc1 100644
--- a/pkgs/top-level/release.nix
+++ b/pkgs/top-level/release.nix
@@ -49,7 +49,6 @@ with (import ./release-lib.nix);
   chatzilla = linux;
   cksfv = all;
   classpath = linux;
-  consolekit = linux;
   coreutils = all;
   cpio = all;
   cron = linux;