From 0d506aa712cf088343dff5863e9e58eb1228c3b0 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Mon, 17 Mar 2014 14:04:39 +0100
Subject: [PATCH 001/567] Provide a simple way to log into containers

On the host, you can run

  $ socat unix:<path-to-container>/var/lib/login.socket -,echo=0,raw

to get a login prompt.  So this allows logging in even if the
container has no SSH access enabled.

You can also do

  $ socat unix:<path-to-container>/var/lib/root-shell.socket -

to get a plain root shell.  (This socket is only accessible by root,
obviously.)  This makes it easy to execute commands in the container,
e.g.

  $ echo reboot | socat unix:<path-to-container>/var/lib/root-shell.socket -
---
 .../virtualisation/container-login.nix        | 56 +++++++++++++++++++
 nixos/modules/virtualisation/containers.nix   |  1 +
 2 files changed, 57 insertions(+)
 create mode 100644 nixos/modules/virtualisation/container-login.nix

diff --git a/nixos/modules/virtualisation/container-login.nix b/nixos/modules/virtualisation/container-login.nix
new file mode 100644
index 000000000000..56e772fb797d
--- /dev/null
+++ b/nixos/modules/virtualisation/container-login.nix
@@ -0,0 +1,56 @@
+{ config, pkgs, ... }:
+
+{
+
+  config = {
+
+    # Provide a login prompt on /var/lib/login.socket.  On the host,
+    # you can connect to it by running ‘socat
+    # unix:<path-to-container>/var/lib/login.socket -,echo=0,raw’.
+    systemd.sockets.login =
+      { description = "Login Socket";
+        wantedBy = [ "sockets.target" ];
+        socketConfig =
+          { ListenStream = "/var/lib/login.socket";
+            SocketMode = "0600"; # only root can connect, obviously
+            Accept = true;
+          };
+      };
+
+    systemd.services."login@" =
+      { description = "Login %i";
+        environment.TERM = "linux";
+        serviceConfig =
+          { Type = "simple";
+            StandardInput = "socket";
+            ExecStart = "${pkgs.socat}/bin/socat -t0 - exec:${pkgs.shadow}/bin/login,pty,setsid,setpgid,stderr,ctty";
+            TimeoutStopSec = 1; # FIXME
+          };
+      };
+
+    # Provide a non-interactive login root shell on
+    # /var/lib/root-shell.socket.  On the host, you can connect to it
+    # by running ‘socat unix:<path-to-container>/var/lib/root-shell.socket -’.
+    systemd.sockets.root-shell =
+      { description = "Root Shell Socket";
+        wantedBy = [ "sockets.target" ];
+        socketConfig =
+          { ListenStream = "/var/lib/root-shell.socket";
+            SocketMode = "0666";
+            Accept = true;
+          };
+      };
+
+    systemd.services."root-shell@" =
+      { description = "Root Shell %i";
+        serviceConfig =
+          { Type = "simple";
+            StandardInput = "socket";
+            ExecStart = "${pkgs.bash}/bin/bash --login";
+            TimeoutStopSec = 1; # FIXME
+          };
+      };
+
+  };
+
+}
diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix
index d87284de4fc1..f1fcc18f1f99 100644
--- a/nixos/modules/virtualisation/containers.nix
+++ b/nixos/modules/virtualisation/containers.nix
@@ -57,6 +57,7 @@ with pkgs.lib;
                       { boot.isContainer = true;
                         security.initialRootPassword = mkDefault "!";
                         networking.hostName = mkDefault name;
+                        imports = [ ./container-login.nix ];
                       };
                     in [ extraConfig config.config ];
                   prefix = [ "systemd" "containers" name ];

From f13bd41384afadcd94e316759583359de37d15bd Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Mon, 17 Mar 2014 14:10:25 +0100
Subject: [PATCH 002/567] switch-to-configuration: Restart sockets.target

---
 nixos/modules/system/activation/switch-to-configuration.pl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/nixos/modules/system/activation/switch-to-configuration.pl b/nixos/modules/system/activation/switch-to-configuration.pl
index e0649448c834..3f78ec0d48eb 100644
--- a/nixos/modules/system/activation/switch-to-configuration.pl
+++ b/nixos/modules/system/activation/switch-to-configuration.pl
@@ -321,7 +321,7 @@ if (scalar @restart > 0) {
 # that are symlinks to other units.  We shouldn't start both at the
 # same time because we'll get a "Failed to add path to set" error from
 # systemd.
-my @start = unique("default.target", "timers.target", split('\n', read_file($startListFile, err_mode => 'quiet') // ""));
+my @start = unique("default.target", "timers.target", "sockets.target", split('\n', read_file($startListFile, err_mode => 'quiet') // ""));
 print STDERR "starting the following units: ", join(", ", sort(@start)), "\n";
 system("@systemd@/bin/systemctl", "start", "--", @start) == 0 or $res = 4;
 unlink($startListFile);

From f9e2af1e8b62809e9af9acc92826c29f63db8043 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Mon, 17 Mar 2014 14:16:10 +0100
Subject: [PATCH 003/567] switch-to-configuration: Don't require /etc/NIXOS

Check /etc/os-release if /etc/NIXOS doesn't exist.
---
 nixos/modules/system/activation/switch-to-configuration.pl | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/nixos/modules/system/activation/switch-to-configuration.pl b/nixos/modules/system/activation/switch-to-configuration.pl
index 3f78ec0d48eb..67b2280af3be 100644
--- a/nixos/modules/system/activation/switch-to-configuration.pl
+++ b/nixos/modules/system/activation/switch-to-configuration.pl
@@ -26,7 +26,10 @@ EOF
     exit 1;
 }
 
-die "This is not a NixOS installation (/etc/NIXOS is missing)!\n" unless -f "/etc/NIXOS";
+# This is a NixOS installation if it has /etc/NIXOS or a proper
+# /etc/os-release.
+die "This is not a NixOS installation!\n" unless
+    -f "/etc/NIXOS" || (read_file("/etc/os-release", err_mode => 'quiet') // "") =~ /ID=nixos/s;
 
 openlog("nixos", "", LOG_USER);
 

From 28b7d67d08a7a76c7508d4b6a8f791c2eba4a1b9 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Mon, 17 Mar 2014 15:01:10 +0100
Subject: [PATCH 004/567] httpd: Don't require keys.target

This has the unintended side-effect of restarting httpd every time we
run switch-to-configuration, even if httpd hasn't changed (because
we're doing a "stop keys.target" now).  So use a "Wants" dependency
instead.
---
 nixos/modules/services/web-servers/apache-httpd/default.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/nixos/modules/services/web-servers/apache-httpd/default.nix b/nixos/modules/services/web-servers/apache-httpd/default.nix
index a22ef10312d4..949dce96824b 100644
--- a/nixos/modules/services/web-servers/apache-httpd/default.nix
+++ b/nixos/modules/services/web-servers/apache-httpd/default.nix
@@ -621,7 +621,7 @@ in
       { description = "Apache HTTPD";
 
         wantedBy = [ "multi-user.target" ];
-        requires = [ "keys.target" ];
+        wants = [ "keys.target" ];
         after = [ "network.target" "fs.target" "postgresql.service" "keys.target" ];
 
         path =

From 511b86d22dbf3d4a52ac9d6437f0ee0375468f01 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Mon, 17 Mar 2014 15:02:53 +0100
Subject: [PATCH 005/567] Add an option to reload rather than restart changed
 units

---
 .../system/activation/switch-to-configuration.pl      |  5 ++++-
 nixos/modules/system/boot/systemd-unit-options.nix    | 11 +++++++++++
 nixos/modules/system/boot/systemd.nix                 |  6 +++++-
 3 files changed, 20 insertions(+), 2 deletions(-)

diff --git a/nixos/modules/system/activation/switch-to-configuration.pl b/nixos/modules/system/activation/switch-to-configuration.pl
index 67b2280af3be..fd2b5b7950d5 100644
--- a/nixos/modules/system/activation/switch-to-configuration.pl
+++ b/nixos/modules/system/activation/switch-to-configuration.pl
@@ -176,7 +176,10 @@ while (my ($unit, $state) = each %{$activePrev}) {
                 # FIXME: do something?
             } else {
                 my $unitInfo = parseUnit($newUnitFile);
-                if (!boolIsTrue($unitInfo->{'X-RestartIfChanged'} // "yes")) {
+                if (boolIsTrue($unitInfo->{'X-ReloadIfChanged'} // "no")) {
+                    write_file($reloadListFile, { append => 1 }, "$unit\n");
+                }
+                elsif (!boolIsTrue($unitInfo->{'X-RestartIfChanged'} // "yes")) {
                     push @unitsToSkip, $unit;
                 } else {
                     # If this unit is socket-activated, then stop the
diff --git a/nixos/modules/system/boot/systemd-unit-options.nix b/nixos/modules/system/boot/systemd-unit-options.nix
index 113990814efa..784025f6bab2 100644
--- a/nixos/modules/system/boot/systemd-unit-options.nix
+++ b/nixos/modules/system/boot/systemd-unit-options.nix
@@ -243,6 +243,17 @@ in rec {
       '';
     };
 
+    reloadIfChanged = mkOption {
+      type = types.bool;
+      default = false;
+      description = ''
+        Whether the service should be reloaded during a NixOS
+        configuration switch if its definition has changed.  If
+        enabled, the value of <option>restartIfChanged</option> is
+        ignored.
+      '';
+    };
+
     stopIfChanged = mkOption {
       type = types.bool;
       default = true;
diff --git a/nixos/modules/system/boot/systemd.nix b/nixos/modules/system/boot/systemd.nix
index 49502b3e6851..b31c631a0a7b 100644
--- a/nixos/modules/system/boot/systemd.nix
+++ b/nixos/modules/system/boot/systemd.nix
@@ -279,7 +279,11 @@ let
           [Service]
           ${let env = cfg.globalEnvironment // def.environment;
             in concatMapStrings (n: "Environment=\"${n}=${getAttr n env}\"\n") (attrNames env)}
-          ${optionalString (!def.restartIfChanged) "X-RestartIfChanged=false"}
+          ${if def.reloadIfChanged then ''
+            X-ReloadIfChanged=true
+          '' else if !def.restartIfChanged then ''
+            X-RestartIfChanged=false
+          '' else ""}
           ${optionalString (!def.stopIfChanged) "X-StopIfChanged=false"}
           ${attrsToSection def.serviceConfig}
         '';

From ef8e0266a2583eb45444b1faa0512f99d18fca6c Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Mon, 17 Mar 2014 15:03:29 +0100
Subject: [PATCH 006/567] Don't reboot a container when its configuration
 changes

Instead, just run "switch-to-configuration" inside the container.
---
 nixos/modules/virtualisation/containers.nix | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix
index f1fcc18f1f99..034ebe84b42f 100644
--- a/nixos/modules/virtualisation/containers.nix
+++ b/nixos/modules/virtualisation/containers.nix
@@ -132,6 +132,14 @@ with pkgs.lib;
               done
             fi
           '';
+
+        reloadIfChanged = true;
+
+        serviceConfig.ExecReload =
+          "${pkgs.bash}/bin/bash -c '"
+          + "echo ${container.path}/bin/switch-to-configuration test "
+          + "| ${pkgs.socat}/bin/socat unix:${container.root}/var/lib/root-shell.socket -'";
+
       }) config.systemd.containers;
 
   };

From ac215779dd1fdfe58d75bcc22cb6a5b0a58744a4 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Mon, 17 Mar 2014 15:23:20 +0100
Subject: [PATCH 007/567] Give containers a writable
 /nix/var/nix/{profiles,gcroots}

These are stored on the host in
/nix/var/nix/{profiles,gcroots}/per-container/<container-name> to
ensure that container profiles/roots are not garbage-collected.
---
 nixos/modules/virtualisation/containers.nix | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix
index 034ebe84b42f..6a4833e1e215 100644
--- a/nixos/modules/virtualisation/containers.nix
+++ b/nixos/modules/virtualisation/containers.nix
@@ -110,10 +110,19 @@ with pkgs.lib;
             if ! [ -e ${container.root}/etc/os-release ]; then
               touch ${container.root}/etc/os-release
             fi
+
+            mkdir -p -m 0755 \
+              /nix/var/nix/profiles/per-container/${name} \
+              /nix/var/nix/gcroots/per-container/${name}
           '';
 
         serviceConfig.ExecStart =
-          "${config.systemd.package}/bin/systemd-nspawn -M ${name} -D ${container.root} --bind-ro=/nix ${container.path}/init";
+          "${config.systemd.package}/bin/systemd-nspawn"
+          + " -M ${name} -D ${container.root}"
+          + " --bind-ro=/nix/store --bind-ro=/nix/var/nix/db --bind-ro=/nix/var/nix/daemon-socket"
+          + " --bind=/nix/var/nix/profiles/per-container/${name}:/nix/var/nix/profiles"
+          + " --bind=/nix/var/nix/gcroots/per-container/${name}:/nix/var/nix/gcroots"
+          + " ${container.path}/init";
 
         preStop =
           ''

From 895bcdd1cb9f98ba032c78d996f3ebc89fd60bc2 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Tue, 18 Mar 2014 10:49:25 +0100
Subject: [PATCH 008/567] Add support for running a container with a private
 network interface
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

For example, the following sets up a container named ‘foo’.  The
container will have a single network interface eth0, with IP address
10.231.136.2.  The host will have an interface c-foo with IP address
10.231.136.1.

  systemd.containers.foo =
    { privateNetwork = true;
      hostAddress = "10.231.136.1";
      localAddress = "10.231.136.2";
      config =
        { services.openssh.enable = true; };
    };

With ‘privateNetwork = true’, the container has the CAP_NET_ADMIN
capability, allowing it to do arbitrary network configuration, such as
setting up firewall rules.  This is secure because it cannot touch the
interfaces of the host.

The helper program ‘run-in-netns’ is needed at the moment because ‘ip
netns exec’ doesn't quite do the right thing (it remounts /sys without
bind-mounting the original /sys/fs/cgroups).
---
 nixos/modules/services/networking/dhcpcd.nix |   5 +-
 nixos/modules/virtualisation/containers.nix  | 113 +++++++++++++++++--
 nixos/modules/virtualisation/run-in-netns.c  |  50 ++++++++
 3 files changed, 155 insertions(+), 13 deletions(-)
 create mode 100644 nixos/modules/virtualisation/run-in-netns.c

diff --git a/nixos/modules/services/networking/dhcpcd.nix b/nixos/modules/services/networking/dhcpcd.nix
index d4ec96a18f6f..38a21a723d97 100644
--- a/nixos/modules/services/networking/dhcpcd.nix
+++ b/nixos/modules/services/networking/dhcpcd.nix
@@ -34,8 +34,9 @@ let
 
       # Ignore peth* devices; on Xen, they're renamed physical
       # Ethernet cards used for bridging.  Likewise for vif* and tap*
-      # (Xen) and virbr* and vnet* (libvirt).
-      denyinterfaces ${toString ignoredInterfaces} peth* vif* tap* tun* virbr* vnet* vboxnet*
+      # (Xen) and virbr* and vnet* (libvirt) and c-* and ctmp-* (NixOS
+      # containers).
+      denyinterfaces ${toString ignoredInterfaces} peth* vif* tap* tun* virbr* vnet* vboxnet* c-* ctmp-*
 
       ${config.networking.dhcpcd.extraConfig}
     '';
diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix
index 6a4833e1e215..49046975d83e 100644
--- a/nixos/modules/virtualisation/containers.nix
+++ b/nixos/modules/virtualisation/containers.nix
@@ -2,6 +2,20 @@
 
 with pkgs.lib;
 
+let
+
+  runInNetns = pkgs.stdenv.mkDerivation {
+    name = "run-in-netns";
+    unpackPhase = "true";
+    buildPhase = ''
+      mkdir -p $out/bin
+      gcc ${./run-in-netns.c} -o $out/bin/run-in-netns
+    '';
+    installPhase = "true";
+  };
+
+in
+
 {
   options = {
 
@@ -45,6 +59,39 @@ with pkgs.lib;
               '';
             };
 
+            privateNetwork = mkOption {
+              type = types.bool;
+              default = false;
+              description = ''
+                Whether to give the container its own private virtual
+                Ethernet interface.  The interface is called
+                <literal>eth0</literal>, and is hooked up to the interface
+                <literal>c-<replaceable>container-name</replaceable></literal>
+                on the host.  If this option is not set, then the
+                container shares the network interfaces of the host,
+                and can bind to any port on any interface.
+              '';
+            };
+
+            hostAddress = mkOption {
+              type = types.nullOr types.string;
+              default = null;
+              example = "10.231.136.1";
+              description = ''
+                The IPv4 address assigned to the host interface.
+              '';
+            };
+
+            localAddress = mkOption {
+              type = types.nullOr types.string;
+              default = null;
+              example = "10.231.136.2";
+              description = ''
+                The IPv4 address assigned to <literal>eth0</literal>
+                in the container.
+              '';
+            };
+
           };
 
           config = mkMerge
@@ -97,32 +144,70 @@ with pkgs.lib;
 
   config = {
 
-    systemd.services = mapAttrs' (name: container: nameValuePair "container-${name}"
-      { description = "Container '${name}'";
+    systemd.services = mapAttrs' (name: cfg:
+      let
+        # FIXME: interface names have a maximum length.
+        ifaceHost = "c-${name}";
+        ifaceCont = "ctmp-${name}";
+        ns = "net-${name}";
+      in
+      nameValuePair "container-${name}" {
+        description = "Container '${name}'";
 
         wantedBy = [ "multi-user.target" ];
 
-        unitConfig.RequiresMountsFor = [ container.root ];
+        unitConfig.RequiresMountsFor = [ cfg.root ];
+
+        path = [ pkgs.iproute ];
 
         preStart =
           ''
-            mkdir -p -m 0755 ${container.root}/etc
-            if ! [ -e ${container.root}/etc/os-release ]; then
-              touch ${container.root}/etc/os-release
+            mkdir -p -m 0755 ${cfg.root}/etc
+            if ! [ -e ${cfg.root}/etc/os-release ]; then
+              touch ${cfg.root}/etc/os-release
             fi
 
             mkdir -p -m 0755 \
               /nix/var/nix/profiles/per-container/${name} \
               /nix/var/nix/gcroots/per-container/${name}
+          ''
+
+          + optionalString cfg.privateNetwork ''
+            # Cleanup from last time.
+            ip netns del ${ns} 2> /dev/null || true
+            ip link del ${ifaceHost} 2> /dev/null || true
+            ip link del ${ifaceCont} 2> /dev/null || true
+
+            # Create a pair of virtual ethernet devices.  On the host,
+            # we get ‘c-<container-name’, and on the guest, we get
+            # ‘eth0’.
+            set -x
+            ip link add ${ifaceHost} type veth peer name ${ifaceCont}
+            ip netns add ${ns}
+            ip link set ${ifaceCont} netns ${ns}
+            ip netns exec ${ns} ip link set ${ifaceCont} name eth0
+            ip netns exec ${ns} ip link set dev eth0 up
+            ip link set dev ${ifaceHost} up
+            ${optionalString (cfg.hostAddress != null) ''
+              ip addr add ${cfg.hostAddress} dev ${ifaceHost}
+              ip netns exec ${ns} ip route add ${cfg.hostAddress} dev eth0
+              ip netns exec ${ns} ip route add default via ${cfg.hostAddress}
+            ''}
+            ${optionalString (cfg.localAddress != null) ''
+              ip netns exec ${ns} ip addr add ${cfg.localAddress} dev eth0
+              ip route add ${cfg.localAddress} dev ${ifaceHost}
+            ''}
           '';
 
         serviceConfig.ExecStart =
-          "${config.systemd.package}/bin/systemd-nspawn"
-          + " -M ${name} -D ${container.root}"
+          (optionalString cfg.privateNetwork "${runInNetns}/bin/run-in-netns ${ns} ")
+          + "${config.systemd.package}/bin/systemd-nspawn"
+          + (optionalString cfg.privateNetwork " --capability=CAP_NET_ADMIN")
+          + " -M ${name} -D ${cfg.root}"
           + " --bind-ro=/nix/store --bind-ro=/nix/var/nix/db --bind-ro=/nix/var/nix/daemon-socket"
           + " --bind=/nix/var/nix/profiles/per-container/${name}:/nix/var/nix/profiles"
           + " --bind=/nix/var/nix/gcroots/per-container/${name}:/nix/var/nix/gcroots"
-          + " ${container.path}/init";
+          + " ${cfg.path}/init";
 
         preStop =
           ''
@@ -146,10 +231,16 @@ with pkgs.lib;
 
         serviceConfig.ExecReload =
           "${pkgs.bash}/bin/bash -c '"
-          + "echo ${container.path}/bin/switch-to-configuration test "
-          + "| ${pkgs.socat}/bin/socat unix:${container.root}/var/lib/root-shell.socket -'";
+          + "echo ${cfg.path}/bin/switch-to-configuration test "
+          + "| ${pkgs.socat}/bin/socat unix:${cfg.root}/var/lib/root-shell.socket -'";
 
       }) config.systemd.containers;
 
+    # Generate /etc/hosts entries for the containers.
+    networking.extraHosts = concatStrings (mapAttrsToList (name: cfg: optionalString (cfg.localAddress != null)
+      ''
+        ${cfg.localAddress} ${name}.containers
+      '') config.systemd.containers);
+
   };
 }
diff --git a/nixos/modules/virtualisation/run-in-netns.c b/nixos/modules/virtualisation/run-in-netns.c
new file mode 100644
index 000000000000..d375bddf2e6b
--- /dev/null
+++ b/nixos/modules/virtualisation/run-in-netns.c
@@ -0,0 +1,50 @@
+#define _GNU_SOURCE
+
+#include <stdio.h>
+#include <string.h>
+#include <errno.h>
+
+#include <unistd.h>
+#include <sched.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <sys/mount.h>
+#include <fcntl.h>
+#include <linux/limits.h>
+
+int main(int argc, char * * argv)
+{
+    if (argc < 3) {
+        fprintf(stderr, "%s: missing arguments\n", argv[0]);
+        return 1;
+    }
+
+    char nsPath[PATH_MAX];
+
+    sprintf(nsPath, "/run/netns/%s", argv[1]);
+
+    int fd = open(nsPath, O_RDONLY);
+    if (fd == -1) {
+        fprintf(stderr, "%s: opening network namespace: %s\n", argv[0], strerror(errno));
+        return 1;
+    }
+
+    if (setns(fd, CLONE_NEWNET) == -1) {
+        fprintf(stderr, "%s: setting network namespace: %s\n", argv[0], strerror(errno));
+        return 1;
+    }
+
+    umount2(nsPath, MNT_DETACH);
+    if (unlink(nsPath) == -1) {
+        fprintf(stderr, "%s: unlinking network namespace: %s\n", argv[0], strerror(errno));
+        return 1;
+    }
+
+    /* FIXME: Remount /sys so that /sys/class/net reflects the
+       interfaces visible in the network namespace. This requires
+       bind-mounting /sys/fs/cgroups etc. */
+
+    execv(argv[2], argv + 2);
+    fprintf(stderr, "%s: running command: %s\n", argv[0], strerror(errno));
+    return 1;
+}

From 7b82d1ee27a60157418e241152ef1aa3f909ad7b Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Tue, 18 Mar 2014 11:04:54 +0100
Subject: [PATCH 009/567] Ensure that the container root can always be accessed
 via /var/lib/containers

---
 nixos/modules/virtualisation/containers.nix | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix
index 49046975d83e..ff17fcc1221d 100644
--- a/nixos/modules/virtualisation/containers.nix
+++ b/nixos/modules/virtualisation/containers.nix
@@ -172,6 +172,10 @@ in
               /nix/var/nix/gcroots/per-container/${name}
           ''
 
+          + optionalString (cfg.root != "/var/lib/containers/${name}") ''
+            ln -sfn "${cfg.root}" "/var/lib/containers/${name}"
+          ''
+
           + optionalString cfg.privateNetwork ''
             # Cleanup from last time.
             ip netns del ${ns} 2> /dev/null || true

From 11c4c4ae54bbef647358d2b6d6c3ddf0457f81f7 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Tue, 18 Mar 2014 11:36:03 +0100
Subject: [PATCH 010/567] =?UTF-8?q?Add=20command=20=E2=80=98nixos-containe?=
 =?UTF-8?q?r-shell=E2=80=99=20for=20logging=20into=20a=20container?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 nixos/modules/virtualisation/containers.nix | 54 +++++++++++++++++++++
 1 file changed, 54 insertions(+)

diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix
index ff17fcc1221d..28ee78e3fcce 100644
--- a/nixos/modules/virtualisation/containers.nix
+++ b/nixos/modules/virtualisation/containers.nix
@@ -14,6 +14,58 @@ let
     installPhase = "true";
   };
 
+  nixos-container-shell = pkgs.writeScriptBin "nixos-container-shell"
+    ''
+      #! ${pkgs.bash}/bin/sh -e
+
+      usage() {
+        echo "Usage: $0 <container-name>" >&2
+        echo "       $0 (-r|--root-shell) <container-name>" >&2
+      }
+
+      args="`getopt --options 'r' -l help -- "$@"`"
+      eval "set -- $args"
+      rootShell=
+      while [ $# -gt 0 ]; do
+        case "$1" in
+          (--help) usage; exit 0;;
+          (-r|--root-shell) rootShell=1;;
+          (--) shift; break;;
+          (*) break;;
+        esac
+        shift
+      done
+
+      container="$1"
+      if [ -z "$container" ]; then
+        usage
+        exit 1
+      fi
+      shift
+
+      root="/var/lib/containers/$container"
+      if ! [ -d "$root" ]; then
+        echo "$0: container ‘$container’ does not exist" >&2
+        exit 1
+      fi
+
+      if [ -n "$rootShell" ]; then
+        socket="$root/var/lib/root-shell.socket"
+      else
+        socket="$root/var/lib/login.socket"
+      fi
+      if ! [ -S "$socket" ]; then
+        echo "$0: socket ‘$socket’ does not exist" >&2
+        exit 1
+      fi
+
+      if [ -n "$rootShell" ]; then
+        exec ${pkgs.socat}/bin/socat "unix:$socket" -
+      else
+        exec ${pkgs.socat}/bin/socat "unix:$socket" -,echo=0,raw
+      fi
+    '';
+
 in
 
 {
@@ -246,5 +298,7 @@ in
         ${cfg.localAddress} ${name}.containers
       '') config.systemd.containers);
 
+    environment.systemPackages = optional (config.systemd.containers != {}) nixos-container-shell;
+
   };
 }

From 5b10ea1f99edf1855d0735330634a463771a5ee2 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Tue, 18 Mar 2014 11:39:51 +0100
Subject: [PATCH 011/567] Don't run dhcpcd in containers

---
 nixos/modules/virtualisation/containers.nix | 1 +
 1 file changed, 1 insertion(+)

diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix
index 28ee78e3fcce..b8388e7f206d 100644
--- a/nixos/modules/virtualisation/containers.nix
+++ b/nixos/modules/virtualisation/containers.nix
@@ -156,6 +156,7 @@ in
                       { boot.isContainer = true;
                         security.initialRootPassword = mkDefault "!";
                         networking.hostName = mkDefault name;
+                        networking.useDHCP = false;
                         imports = [ ./container-login.nix ];
                       };
                     in [ extraConfig config.config ];

From 7ee31c7f94d121f5e57779c0c1478aee30d80cb1 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Tue, 18 Mar 2014 18:04:38 +0100
Subject: [PATCH 012/567] Fix permissions

---
 nixos/modules/virtualisation/container-login.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/nixos/modules/virtualisation/container-login.nix b/nixos/modules/virtualisation/container-login.nix
index 56e772fb797d..09eaf90ae658 100644
--- a/nixos/modules/virtualisation/container-login.nix
+++ b/nixos/modules/virtualisation/container-login.nix
@@ -12,7 +12,7 @@
         wantedBy = [ "sockets.target" ];
         socketConfig =
           { ListenStream = "/var/lib/login.socket";
-            SocketMode = "0600"; # only root can connect, obviously
+            SocketMode = "0666";
             Accept = true;
           };
       };
@@ -36,7 +36,7 @@
         wantedBy = [ "sockets.target" ];
         socketConfig =
           { ListenStream = "/var/lib/root-shell.socket";
-            SocketMode = "0666";
+            SocketMode = "0600"; # only root can connect, obviously
             Accept = true;
           };
       };

From 2ace7edb81509189a15a0b8e8d0ee1886be9e725 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Tue, 18 Mar 2014 18:18:35 +0100
Subject: [PATCH 013/567] Rename systemd.containers -> containers

That NixOS containers use systemd-nspawn is just an implementation
detail (which we could change in the future).
---
 nixos/modules/virtualisation/containers.nix | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix
index b8388e7f206d..cdd9e729dc16 100644
--- a/nixos/modules/virtualisation/containers.nix
+++ b/nixos/modules/virtualisation/containers.nix
@@ -80,7 +80,7 @@ in
       '';
     };
 
-    systemd.containers = mkOption {
+    containers = mkOption {
       type = types.attrsOf (types.submodule (
         { config, options, name, ... }:
         {
@@ -160,7 +160,7 @@ in
                         imports = [ ./container-login.nix ];
                       };
                     in [ extraConfig config.config ];
-                  prefix = [ "systemd" "containers" name ];
+                  prefix = [ "containers" name ];
                 }).config.system.build.toplevel;
               })
             ];
@@ -291,15 +291,15 @@ in
           + "echo ${cfg.path}/bin/switch-to-configuration test "
           + "| ${pkgs.socat}/bin/socat unix:${cfg.root}/var/lib/root-shell.socket -'";
 
-      }) config.systemd.containers;
+      }) config.containers;
 
     # Generate /etc/hosts entries for the containers.
     networking.extraHosts = concatStrings (mapAttrsToList (name: cfg: optionalString (cfg.localAddress != null)
       ''
         ${cfg.localAddress} ${name}.containers
-      '') config.systemd.containers);
+      '') config.containers);
 
-    environment.systemPackages = optional (config.systemd.containers != {}) nixos-container-shell;
+    environment.systemPackages = optional (config.containers != {}) nixos-container-shell;
 
   };
 }

From 0cca0f477f168cee994b2c90d20b713f2bb67d85 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Wed, 19 Mar 2014 10:15:57 +0100
Subject: [PATCH 014/567] nixos-container-shell -> nixos-container { login |
 root-shell }

---
 nixos/modules/virtualisation/containers.nix   | 60 +++----------------
 .../modules/virtualisation/nixos-container.sh | 54 +++++++++++++++++
 2 files changed, 62 insertions(+), 52 deletions(-)
 create mode 100644 nixos/modules/virtualisation/nixos-container.sh

diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix
index cdd9e729dc16..e718398815d2 100644
--- a/nixos/modules/virtualisation/containers.nix
+++ b/nixos/modules/virtualisation/containers.nix
@@ -14,57 +14,13 @@ let
     installPhase = "true";
   };
 
-  nixos-container-shell = pkgs.writeScriptBin "nixos-container-shell"
-    ''
-      #! ${pkgs.bash}/bin/sh -e
-
-      usage() {
-        echo "Usage: $0 <container-name>" >&2
-        echo "       $0 (-r|--root-shell) <container-name>" >&2
-      }
-
-      args="`getopt --options 'r' -l help -- "$@"`"
-      eval "set -- $args"
-      rootShell=
-      while [ $# -gt 0 ]; do
-        case "$1" in
-          (--help) usage; exit 0;;
-          (-r|--root-shell) rootShell=1;;
-          (--) shift; break;;
-          (*) break;;
-        esac
-        shift
-      done
-
-      container="$1"
-      if [ -z "$container" ]; then
-        usage
-        exit 1
-      fi
-      shift
-
-      root="/var/lib/containers/$container"
-      if ! [ -d "$root" ]; then
-        echo "$0: container ‘$container’ does not exist" >&2
-        exit 1
-      fi
-
-      if [ -n "$rootShell" ]; then
-        socket="$root/var/lib/root-shell.socket"
-      else
-        socket="$root/var/lib/login.socket"
-      fi
-      if ! [ -S "$socket" ]; then
-        echo "$0: socket ‘$socket’ does not exist" >&2
-        exit 1
-      fi
-
-      if [ -n "$rootShell" ]; then
-        exec ${pkgs.socat}/bin/socat "unix:$socket" -
-      else
-        exec ${pkgs.socat}/bin/socat "unix:$socket" -,echo=0,raw
-      fi
-    '';
+  nixos-container = pkgs.substituteAll {
+    name = "nixos-container";
+    dir = "bin";
+    isExecutable = true;
+    src = ./nixos-container.sh;
+    inherit (pkgs) bash socat;
+  };
 
 in
 
@@ -299,7 +255,7 @@ in
         ${cfg.localAddress} ${name}.containers
       '') config.containers);
 
-    environment.systemPackages = optional (config.containers != {}) nixos-container-shell;
+    environment.systemPackages = optional (config.containers != {}) nixos-container;
 
   };
 }
diff --git a/nixos/modules/virtualisation/nixos-container.sh b/nixos/modules/virtualisation/nixos-container.sh
new file mode 100644
index 000000000000..f4e34588d6eb
--- /dev/null
+++ b/nixos/modules/virtualisation/nixos-container.sh
@@ -0,0 +1,54 @@
+#! @bash@/bin/sh -e
+
+usage() {
+    echo "Usage: $0 login <container-name>" >&2
+    echo "       $0 root-shell <container-name>" >&2
+}
+
+args="`getopt --options '' -l help -- "$@"`"
+eval "set -- $args"
+while [ $# -gt 0 ]; do
+    case "$1" in
+        (--help) usage; exit 0;;
+        (--) shift; break;;
+        (*) break;;
+    esac
+    shift
+done
+
+action="$1"
+if [ -z "$action" ]; then usage; exit 1; fi
+shift
+
+getContainerRoot() {
+    root="/var/lib/containers/$container"
+    if ! [ -d "$root" ]; then
+        echo "$0: container ‘$container’ does not exist" >&2
+        exit 1
+    fi
+}
+
+if [ $action = login ]; then
+
+    container="$1"
+    if [ -z "$container" ]; then usage; exit 1; fi
+    shift
+
+    getContainerRoot
+
+    exec @socat@/bin/socat "unix:$root/var/lib/login.socket" -,echo=0,raw
+
+elif [ $action = root-shell ]; then
+
+    container="$1"
+    if [ -z "$container" ]; then usage; exit 1; fi
+    shift
+
+    getContainerRoot
+
+    exec @socat@/bin/socat "unix:$root/var/lib/root-shell.socket" -
+
+else
+    echo "$0: unknown action ‘$action’" >&2
+    exit 1
+fi

From ba88db3cd332e439dd2090b64abb7b9942b5fc94 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Wed, 19 Mar 2014 19:55:05 +0100
Subject: [PATCH 015/567] Add support for imperative container management
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

The command nixos-container can now create containers.  For instance,
the following creates and starts a container named ‘database’:

  $ nixos-container create database

The configuration of the container is stored in
/var/lib/containers/<name>/etc/nixos/configuration.nix.  After editing
the configuration, you can make the changes take effect by doing

  $ nixos-container update database

The container can also be destroyed:

  $ nixos-container destroy database

Containers are now executed using a template unit,
‘container@.service’, so the unit in this example would be
‘container@database.service’.
---
 nixos/modules/virtualisation/containers.nix   | 164 ++++++++++--------
 .../modules/virtualisation/nixos-container.sh | 106 +++++++++--
 2 files changed, 184 insertions(+), 86 deletions(-)

diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix
index e718398815d2..573a3d1c5848 100644
--- a/nixos/modules/virtualisation/containers.nix
+++ b/nixos/modules/virtualisation/containers.nix
@@ -42,13 +42,6 @@ in
         {
           options = {
 
-            root = mkOption {
-              type = types.path;
-              description = ''
-                The root directory of the container.
-              '';
-            };
-
             config = mkOption {
               description = ''
                 A specification of the desired configuration of this
@@ -103,9 +96,7 @@ in
           };
 
           config = mkMerge
-            [ { root = mkDefault "/var/lib/containers/${name}";
-              }
-              (mkIf options.config.isDefined {
+            [ (mkIf options.config.isDefined {
                 path = (import ../../lib/eval-config.nix {
                   modules =
                     let extraConfig =
@@ -126,12 +117,10 @@ in
       example = literalExample
         ''
           { webserver =
-              { root = "/containers/webserver";
-                path = "/nix/var/nix/profiles/webserver";
+              { path = "/nix/var/nix/profiles/webserver";
               };
             database =
-              { root = "/containers/database";
-                config =
+              { config =
                   { config, pkgs, ... }:
                   { services.postgresql.enable = true;
                     services.postgresql.package = pkgs.postgresql92;
@@ -153,78 +142,76 @@ in
 
   config = {
 
-    systemd.services = mapAttrs' (name: cfg:
-      let
-        # FIXME: interface names have a maximum length.
-        ifaceHost = "c-${name}";
-        ifaceCont = "ctmp-${name}";
-        ns = "net-${name}";
-      in
-      nameValuePair "container-${name}" {
-        description = "Container '${name}'";
+    systemd.services."container@" =
+      { description = "Container '%I'";
 
-        wantedBy = [ "multi-user.target" ];
-
-        unitConfig.RequiresMountsFor = [ cfg.root ];
+        unitConfig.RequiresMountsFor = [ "/var/lib/containers/%I" ];
 
         path = [ pkgs.iproute ];
 
-        preStart =
+        environment.INSTANCE = "%I";
+
+        script =
           ''
-            mkdir -p -m 0755 ${cfg.root}/etc
-            if ! [ -e ${cfg.root}/etc/os-release ]; then
-              touch ${cfg.root}/etc/os-release
+            root="/var/lib/containers/$INSTANCE"
+            mkdir -p -m 0755 "$root/etc"
+            if ! [ -e "$root/etc/os-release" ]; then
+              touch "$root/etc/os-release"
             fi
 
             mkdir -p -m 0755 \
-              /nix/var/nix/profiles/per-container/${name} \
-              /nix/var/nix/gcroots/per-container/${name}
-          ''
+              "/nix/var/nix/profiles/per-container/$INSTANCE" \
+              "/nix/var/nix/gcroots/per-container/$INSTANCE"
 
-          + optionalString (cfg.root != "/var/lib/containers/${name}") ''
-            ln -sfn "${cfg.root}" "/var/lib/containers/${name}"
-          ''
+            SYSTEM_PATH=/nix/var/nix/profiles/system
+            if [ -f "/etc/containers/$INSTANCE.conf" ]; then
+              . "/etc/containers/$INSTANCE.conf"
+            fi
 
-          + optionalString cfg.privateNetwork ''
             # Cleanup from last time.
-            ip netns del ${ns} 2> /dev/null || true
-            ip link del ${ifaceHost} 2> /dev/null || true
-            ip link del ${ifaceCont} 2> /dev/null || true
+            ifaceHost=c-$INSTANCE
+            ifaceCont=ctmp-$INSTANCE
+            ns=net-$INSTANCE
+            ip netns del $ns 2> /dev/null || true
+            ip link del $ifaceHost 2> /dev/null || true
+            ip link del $ifaceCont 2> /dev/null || true
 
-            # Create a pair of virtual ethernet devices.  On the host,
-            # we get ‘c-<container-name’, and on the guest, we get
-            # ‘eth0’.
-            set -x
-            ip link add ${ifaceHost} type veth peer name ${ifaceCont}
-            ip netns add ${ns}
-            ip link set ${ifaceCont} netns ${ns}
-            ip netns exec ${ns} ip link set ${ifaceCont} name eth0
-            ip netns exec ${ns} ip link set dev eth0 up
-            ip link set dev ${ifaceHost} up
-            ${optionalString (cfg.hostAddress != null) ''
-              ip addr add ${cfg.hostAddress} dev ${ifaceHost}
-              ip netns exec ${ns} ip route add ${cfg.hostAddress} dev eth0
-              ip netns exec ${ns} ip route add default via ${cfg.hostAddress}
-            ''}
-            ${optionalString (cfg.localAddress != null) ''
-              ip netns exec ${ns} ip addr add ${cfg.localAddress} dev eth0
-              ip route add ${cfg.localAddress} dev ${ifaceHost}
-            ''}
+            if [ "$PRIVATE_NETWORK" = 1 ]; then
+              # Create a pair of virtual ethernet devices.  On the host,
+              # we get ‘c-<container-name’, and on the guest, we get
+              # ‘eth0’.
+              ip link add $ifaceHost type veth peer name $ifaceCont
+              ip netns add $ns
+              ip link set $ifaceCont netns $ns
+              ip netns exec $ns ip link set $ifaceCont name eth0
+              ip netns exec $ns ip link set dev eth0 up
+              ip link set dev $ifaceHost up
+              if [ -n "$HOST_ADDRESS" ]; then
+                ip addr add $HOST_ADDRESS dev $ifaceHost
+                ip netns exec $ns ip route add $HOST_ADDRESS dev eth0
+                ip netns exec $ns ip route add default via $HOST_ADDRESS
+              fi
+              if [ -n "$LOCAL_ADDRESS" ]; then
+                ip netns exec $ns ip addr add $LOCAL_ADDRESS dev eth0
+                ip route add $LOCAL_ADDRESS dev $ifaceHost
+              fi
+              runInNetNs="${runInNetns}/bin/run-in-netns $ns"
+              extraFlags="--capability=CAP_NET_ADMIN"
+            fi
+
+            exec $runInNetNs ${config.systemd.package}/bin/systemd-nspawn \
+              -M "$INSTANCE" -D "/var/lib/containers/$INSTANCE" $extraFlags \
+              --bind-ro=/nix/store \
+              --bind-ro=/nix/var/nix/db \
+              --bind-ro=/nix/var/nix/daemon-socket \
+              --bind="/nix/var/nix/profiles/per-container/$INSTANCE:/nix/var/nix/profiles" \
+              --bind="/nix/var/nix/gcroots/per-container/$INSTANCE:/nix/var/nix/gcroots" \
+              "$SYSTEM_PATH/init"
           '';
 
-        serviceConfig.ExecStart =
-          (optionalString cfg.privateNetwork "${runInNetns}/bin/run-in-netns ${ns} ")
-          + "${config.systemd.package}/bin/systemd-nspawn"
-          + (optionalString cfg.privateNetwork " --capability=CAP_NET_ADMIN")
-          + " -M ${name} -D ${cfg.root}"
-          + " --bind-ro=/nix/store --bind-ro=/nix/var/nix/db --bind-ro=/nix/var/nix/daemon-socket"
-          + " --bind=/nix/var/nix/profiles/per-container/${name}:/nix/var/nix/profiles"
-          + " --bind=/nix/var/nix/gcroots/per-container/${name}:/nix/var/nix/gcroots"
-          + " ${cfg.path}/init";
-
         preStop =
           ''
-            pid="$(cat /sys/fs/cgroup/systemd/machine/${name}.nspawn/system/tasks 2> /dev/null)"
+            pid="$(cat /sys/fs/cgroup/systemd/machine/$INSTANCE.nspawn/system/tasks 2> /dev/null)"
             if [ -n "$pid" ]; then
               # Send the RTMIN+3 signal, which causes the container
               # systemd to start halt.target.
@@ -240,13 +227,38 @@ in
             fi
           '';
 
-        reloadIfChanged = true;
+        restartIfChanged = false;
+        #reloadIfChanged = true; # FIXME
 
-        serviceConfig.ExecReload =
-          "${pkgs.bash}/bin/bash -c '"
-          + "echo ${cfg.path}/bin/switch-to-configuration test "
-          + "| ${pkgs.socat}/bin/socat unix:${cfg.root}/var/lib/root-shell.socket -'";
+        serviceConfig.ExecReload = pkgs.writeScript "reload-container"
+          ''
+            #! ${pkgs.stdenv.shell} -e
+            SYSTEM_PATH=/nix/var/nix/profiles/system
+            if [ -f "/etc/containers/$INSTANCE.conf" ]; then
+              . "/etc/containers/$INSTANCE.conf"
+            fi
+            echo $SYSTEM_PATH/bin/switch-to-configuration test | \
+              ${pkgs.socat}/bin/socat unix:/var/lib/containers/$INSTANCE/var/lib/root-shell.socket -
+          '';
+      };
 
+    # Generate a configuration file in /etc/containers for each
+    # container so that container@.target can get the container
+    # configuration.
+    environment.etc = mapAttrs' (name: cfg: nameValuePair "containers/${name}.conf"
+      { text =
+          ''
+            SYSTEM_PATH=${cfg.path}
+            ${optionalString cfg.privateNetwork ''
+              PRIVATE_NETWORK=1
+              ${optionalString (cfg.hostAddress != null) ''
+                HOST_ADDRESS=${cfg.hostAddress}
+              ''}
+              ${optionalString (cfg.localAddress != null) ''
+                LOCAL_ADDRESS=${cfg.localAddress}
+              ''}
+            ''}
+          '';
       }) config.containers;
 
     # Generate /etc/hosts entries for the containers.
@@ -257,5 +269,7 @@ in
 
     environment.systemPackages = optional (config.containers != {}) nixos-container;
 
+    system.build.foo = nixos-container;
+
   };
 }
diff --git a/nixos/modules/virtualisation/nixos-container.sh b/nixos/modules/virtualisation/nixos-container.sh
index f4e34588d6eb..c72b6fb92814 100644
--- a/nixos/modules/virtualisation/nixos-container.sh
+++ b/nixos/modules/virtualisation/nixos-container.sh
@@ -1,15 +1,21 @@
 #! @bash@/bin/sh -e
 
 usage() {
-    echo "Usage: $0 login <container-name>" >&2
+    echo "Usage: $0 create <container-name> [--config <filename>]" >&2
+    echo "       $0 update <container-name>" >&2
+    echo "       $0 destroy <container-name>" >&2
+    echo "       $0 login <container-name>" >&2
     echo "       $0 root-shell <container-name>" >&2
+    echo "       $0 set-root-password <container-name> <password>" >&2
 }
 
-args="`getopt --options '' -l help -- "$@"`"
+args="`getopt --options '' -l help -l config: -- "$@"`"
 eval "set -- $args"
+extraConfigFile=
 while [ $# -gt 0 ]; do
     case "$1" in
         (--help) usage; exit 0;;
+        (--config) shift; extraConfigFile=$1;;
         (--) shift; break;;
         (*) break;;
     esac
@@ -28,26 +34,104 @@ getContainerRoot() {
     fi
 }
 
-if [ $action = login ]; then
+container="$1"
+if [ -z "$container" ]; then usage; exit 1; fi
+shift
 
-    container="$1"
-    if [ -z "$container" ]; then usage; exit 1; fi
-    shift
+if [ $action = create ]; then
+
+    confFile="/etc/containers/$container.conf"
+    root="/var/lib/containers/$container"
+
+    if [ -e "$confFile" -o -e "$root/nix" ]; then
+        echo "$0: container ‘$container’ already exists" >&2
+        exit 1
+    fi
+
+    profileDir="/nix/var/nix/profiles/per-container/$container"
+    mkdir -m 0755 -p "$root/etc/nixos" "$profileDir"
+
+    config="
+{ config, pkgs, ... }:
+
+with pkgs.lib;
+
+{ boot.isContainer = true;
+  security.initialRootPassword = mkDefault \"!\";
+  networking.hostName = mkDefault \"$container\";
+  networking.useDHCP = false;
+  imports = [ <nixpkgs/nixos/modules/virtualisation/container-login.nix> $extraConfigFile ];
+}"
+    configFile="$root/etc/nixos/configuration.nix"
+    echo "$config" > "$configFile"
+
+    nix-env -p "$profileDir/system" -I "nixos-config=$configFile" -f '<nixpkgs/nixos>' --set -A system
+
+    # Allocate a new /8 network in the 10.233.* range.
+    network="$(sed -e 's/.*_ADDRESS=10\.233\.\(.*\)\..*/\1/; t; d' /etc/containers/*.conf | sort -n | tail -n1)"
+    if [ -z "$network" ]; then network=0; else : $((network++)); fi
+
+    hostAddress="10.233.$network.1"
+    localAddress="10.233.$network.2"
+    echo "host IP is $hostAddress, container IP is $localAddress" >&2
+
+    cat > "$confFile" <<EOF
+PRIVATE_NETWORK=1
+HOST_ADDRESS=$hostAddress
+LOCAL_ADDRESS=$localAddress
+EOF
+
+    echo "starting container@$container.service..." >&2
+    systemctl start "container@$container.service"
+
+elif [ $action = update ]; then
 
     getContainerRoot
 
+    configFile="$root/etc/nixos/configuration.nix"
+    profileDir="/nix/var/nix/profiles/per-container/$container"
+
+    nix-env -p "$profileDir/system" -I "nixos-config=$configFile" -f '<nixpkgs/nixos>' --set -A system
+
+    echo "reloading container@$container.service..." >&2
+    systemctl reload "container@$container.service"
+
+elif [ $action = destroy ]; then
+
+    getContainerRoot
+
+    confFile="/etc/containers/$container.conf"
+    if [ ! -w "$confFile" ]; then
+        echo "$0: cannot destroy declarative container (remove it from your configuration.nix instead)"
+        exit 1
+    fi
+
+    if systemctl show "container@$container.service" | grep -q ActiveState=active; then
+        echo "stopping container@$container.service..." >&2
+        systemctl stop "container@$container.service"
+    fi
+
+    rm -f "$confFile"
+
+elif [ $action = login ]; then
+
+    getContainerRoot
     exec @socat@/bin/socat "unix:$root/var/lib/login.socket" -,echo=0,raw
 
 elif [ $action = root-shell ]; then
 
-    container="$1"
-    if [ -z "$container" ]; then usage; exit 1; fi
-    shift
-
     getContainerRoot
-
     exec @socat@/bin/socat "unix:$root/var/lib/root-shell.socket" -
 
+elif [ $action = set-root-password ]; then
+
+    password="$1"
+    if [ -z "$password" ]; then usage; exit 1; fi
+
+    # FIXME: not very secure.
+    getContainerRoot
+    (echo "passwd"; echo "$password"; echo "$password") | @socat@/bin/socat "unix:$root/var/lib/root-shell.socket" -
+
 else
     echo "$0: unknown action ‘$action’" >&2
     exit 1

From 29c469b88db31d56acf02478fffea14f15372b1f Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu, 20 Mar 2014 15:09:38 +0100
Subject: [PATCH 016/567] Allow dashes in container names

---
 nixos/modules/virtualisation/containers.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix
index 573a3d1c5848..7e45d9f8b22f 100644
--- a/nixos/modules/virtualisation/containers.nix
+++ b/nixos/modules/virtualisation/containers.nix
@@ -143,13 +143,13 @@ in
   config = {
 
     systemd.services."container@" =
-      { description = "Container '%I'";
+      { description = "Container '%i'";
 
-        unitConfig.RequiresMountsFor = [ "/var/lib/containers/%I" ];
+        unitConfig.RequiresMountsFor = [ "/var/lib/containers/%i" ];
 
         path = [ pkgs.iproute ];
 
-        environment.INSTANCE = "%I";
+        environment.INSTANCE = "%i";
 
         script =
           ''

From 6010b0e8868b5a8058302a7b7839cddb21272043 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu, 20 Mar 2014 15:09:53 +0100
Subject: [PATCH 017/567] nixos-container: NixOps helper functions

---
 .../modules/virtualisation/nixos-container.sh | 46 +++++++++++++++++--
 1 file changed, 42 insertions(+), 4 deletions(-)

diff --git a/nixos/modules/virtualisation/nixos-container.sh b/nixos/modules/virtualisation/nixos-container.sh
index c72b6fb92814..a3fd9db56d82 100644
--- a/nixos/modules/virtualisation/nixos-container.sh
+++ b/nixos/modules/virtualisation/nixos-container.sh
@@ -1,21 +1,25 @@
 #! @bash@/bin/sh -e
 
 usage() {
-    echo "Usage: $0 create <container-name> [--config <filename>]" >&2
+    echo "Usage: $0 list" >&2
+    echo "       $0 create <container-name> [--config <filename>] [--ensure-unique-name]" >&2
     echo "       $0 update <container-name>" >&2
     echo "       $0 destroy <container-name>" >&2
     echo "       $0 login <container-name>" >&2
     echo "       $0 root-shell <container-name>" >&2
     echo "       $0 set-root-password <container-name> <password>" >&2
+    echo "       $0 show-ip <container-name>" >&2
 }
 
-args="`getopt --options '' -l help -l config: -- "$@"`"
+args="`getopt --options '' -l help -l config: -l ensure-unique-name -- "$@"`"
 eval "set -- $args"
 extraConfigFile=
+ensureUniqueName=
 while [ $# -gt 0 ]; do
     case "$1" in
         (--help) usage; exit 0;;
         (--config) shift; extraConfigFile=$1;;
+        (--ensure-unique-name) ensureUniqueName=1;;
         (--) shift; break;;
         (*) break;;
     esac
@@ -34,12 +38,28 @@ getContainerRoot() {
     fi
 }
 
+if [ $action = list ]; then
+    for i in $(cd /etc/containers && echo *.conf); do
+        echo "$(basename "$i" .conf)"
+    done
+    exit 0
+fi
+
 container="$1"
 if [ -z "$container" ]; then usage; exit 1; fi
 shift
 
 if [ $action = create ]; then
 
+    if [ -n "$ensureUniqueName" ]; then
+        # FIXME: race
+        nr=0
+        while [ -e "/etc/containers/$container-$nr.conf" -o -e "/var/lib/containers/$container-$nr" ]; do
+            : $((nr++))
+        done
+        container="$container-$nr"
+    fi
+
     confFile="/etc/containers/$container.conf"
     root="/var/lib/containers/$container"
 
@@ -61,13 +81,19 @@ with pkgs.lib;
   networking.hostName = mkDefault \"$container\";
   networking.useDHCP = false;
   imports = [ <nixpkgs/nixos/modules/virtualisation/container-login.nix> $extraConfigFile ];
+  services.openssh.enable = true;
+  services.openssh.extraConfig =
+    ''
+      UseDNS no
+    '';
+  users.extraUsers.root.openssh.authorizedKeys.keys = [ \"ssh-dss AAAAB3NzaC1kc3MAAACBAOo3foMFsYvc+LEVVTAeXpaxdOFG6O2NE9coxZYN6UtwE477GwkvZ4uKymAekq3TB8I6dDg4QFfE27fIip/rQHJ/Rus+KsxwnTbwPzE0WcZVpkKQsepsoqLkfwMpiPfn5/oxcnJsimwRY/E95aJmmOHdGaYWrc0t4ARa+6teUgdFAAAAFQCSQq2Wil0/X4hDypGGUKlKvYyaWQAAAIAy/0fSDnz1tZOQBGq7q78y406HfWghErrVlrW9g+foJQG5pgXXcdJs9JCIrlaKivUKITDsYnQaCjrZaK8eHnc4ksbkSLfDOxFnR5814ulCftrgEDOv9K1UU3pYketjFMvQCA2U48lR6jG/99CPNXPH55QEFs8H97cIsdLQw9wM4gAAAIEAmzWZlXLzIf3eiHQggXqvw3+C19QvxQITcYHYVTx/XYqZi1VZ/fkY8bNmdcJsWFyOHgEhpEca+xM/SNvH/14rXDmt0wtclLEx/4GVLi59hQCnnKqv7HzJg8RF4v6XTiROBAEEdb4TaFuFn+JCvqPzilTzXTexvZKJECOvfYcY+10= eelco.dolstra@logicblox.com\" ];
 }"
     configFile="$root/etc/nixos/configuration.nix"
     echo "$config" > "$configFile"
 
     nix-env -p "$profileDir/system" -I "nixos-config=$configFile" -f '<nixpkgs/nixos>' --set -A system
 
-    # Allocate a new /8 network in the 10.233.* range.
+    # Allocate a new /8 network in the 10.233.* range.  FIXME: race
     network="$(sed -e 's/.*_ADDRESS=10\.233\.\(.*\)\..*/\1/; t; d' /etc/containers/*.conf | sort -n | tail -n1)"
     if [ -z "$network" ]; then network=0; else : $((network++)); fi
 
@@ -84,6 +110,11 @@ EOF
     echo "starting container@$container.service..." >&2
     systemctl start "container@$container.service"
 
+    # Print generated container name on stdout.
+    if [ -n "$ensureUniqueName" ]; then
+        echo "$container"
+    fi
+
 elif [ $action = update ]; then
 
     getContainerRoot
@@ -101,7 +132,7 @@ elif [ $action = destroy ]; then
     getContainerRoot
 
     confFile="/etc/containers/$container.conf"
-    if [ ! -w "$confFile" ]; then
+    if [ -e "$confFile" -a ! -w "$confFile" ]; then
         echo "$0: cannot destroy declarative container (remove it from your configuration.nix instead)"
         exit 1
     fi
@@ -112,6 +143,7 @@ elif [ $action = destroy ]; then
     fi
 
     rm -f "$confFile"
+    rm -rf "$root"
 
 elif [ $action = login ]; then
 
@@ -132,6 +164,12 @@ elif [ $action = set-root-password ]; then
     getContainerRoot
     (echo "passwd"; echo "$password"; echo "$password") | @socat@/bin/socat "unix:$root/var/lib/root-shell.socket" -
 
+elif [ $action = show-ip ]; then
+
+    getContainerRoot
+    . "/etc/containers/$container.conf"
+    echo "$LOCAL_ADDRESS"
+
 else
     echo "$0: unknown action ‘$action’" >&2
     exit 1

From 07adfae5519ae12ce1a06d2b57f027c97288d0fb Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Mon, 24 Mar 2014 09:26:42 +0100
Subject: [PATCH 018/567] Remove hard-coded SSH key

---
 nixos/modules/virtualisation/nixos-container.sh | 15 +++++----------
 1 file changed, 5 insertions(+), 10 deletions(-)

diff --git a/nixos/modules/virtualisation/nixos-container.sh b/nixos/modules/virtualisation/nixos-container.sh
index a3fd9db56d82..47abf96072f3 100644
--- a/nixos/modules/virtualisation/nixos-container.sh
+++ b/nixos/modules/virtualisation/nixos-container.sh
@@ -2,7 +2,7 @@
 
 usage() {
     echo "Usage: $0 list" >&2
-    echo "       $0 create <container-name> [--config <filename>] [--ensure-unique-name]" >&2
+    echo "       $0 create <container-name> [--config <string>] [--ensure-unique-name]" >&2
     echo "       $0 update <container-name>" >&2
     echo "       $0 destroy <container-name>" >&2
     echo "       $0 login <container-name>" >&2
@@ -13,12 +13,12 @@ usage() {
 
 args="`getopt --options '' -l help -l config: -l ensure-unique-name -- "$@"`"
 eval "set -- $args"
-extraConfigFile=
+extraConfig=
 ensureUniqueName=
 while [ $# -gt 0 ]; do
     case "$1" in
         (--help) usage; exit 0;;
-        (--config) shift; extraConfigFile=$1;;
+        (--config) shift; extraConfig=$1;;
         (--ensure-unique-name) ensureUniqueName=1;;
         (--) shift; break;;
         (*) break;;
@@ -80,13 +80,8 @@ with pkgs.lib;
   security.initialRootPassword = mkDefault \"!\";
   networking.hostName = mkDefault \"$container\";
   networking.useDHCP = false;
-  imports = [ <nixpkgs/nixos/modules/virtualisation/container-login.nix> $extraConfigFile ];
-  services.openssh.enable = true;
-  services.openssh.extraConfig =
-    ''
-      UseDNS no
-    '';
-  users.extraUsers.root.openssh.authorizedKeys.keys = [ \"ssh-dss AAAAB3NzaC1kc3MAAACBAOo3foMFsYvc+LEVVTAeXpaxdOFG6O2NE9coxZYN6UtwE477GwkvZ4uKymAekq3TB8I6dDg4QFfE27fIip/rQHJ/Rus+KsxwnTbwPzE0WcZVpkKQsepsoqLkfwMpiPfn5/oxcnJsimwRY/E95aJmmOHdGaYWrc0t4ARa+6teUgdFAAAAFQCSQq2Wil0/X4hDypGGUKlKvYyaWQAAAIAy/0fSDnz1tZOQBGq7q78y406HfWghErrVlrW9g+foJQG5pgXXcdJs9JCIrlaKivUKITDsYnQaCjrZaK8eHnc4ksbkSLfDOxFnR5814ulCftrgEDOv9K1UU3pYketjFMvQCA2U48lR6jG/99CPNXPH55QEFs8H97cIsdLQw9wM4gAAAIEAmzWZlXLzIf3eiHQggXqvw3+C19QvxQITcYHYVTx/XYqZi1VZ/fkY8bNmdcJsWFyOHgEhpEca+xM/SNvH/14rXDmt0wtclLEx/4GVLi59hQCnnKqv7HzJg8RF4v6XTiROBAEEdb4TaFuFn+JCvqPzilTzXTexvZKJECOvfYcY+10= eelco.dolstra@logicblox.com\" ];
+  imports = [ <nixpkgs/nixos/modules/virtualisation/container-login.nix> ];
+  $extraConfig
 }"
     configFile="$root/etc/nixos/configuration.nix"
     echo "$config" > "$configFile"

From 3d08732d128c8106a0ee66d042617353820b2c2d Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@gmail.com>
Date: Tue, 25 Mar 2014 17:25:37 -0500
Subject: [PATCH 019/567] Wrap k3b with PATH to required tools

---
 pkgs/applications/misc/k3b/default.nix | 20 ++++++++++++++++++--
 1 file changed, 18 insertions(+), 2 deletions(-)

diff --git a/pkgs/applications/misc/k3b/default.nix b/pkgs/applications/misc/k3b/default.nix
index 06565065ce54..9f9e29f537e9 100644
--- a/pkgs/applications/misc/k3b/default.nix
+++ b/pkgs/applications/misc/k3b/default.nix
@@ -1,8 +1,12 @@
 { stdenv, fetchurl, cmake, qt4, perl, shared_mime_info, libvorbis, taglib
 , flac, libsamplerate, libdvdread, lame, libsndfile, libmad, gettext
 , kdelibs, kdemultimedia, automoc4, phonon, libkcddb ? null
+, makeWrapper, cdrkit, cdrdao, dvdplusrwtools
 }:
 
+let
+  runtimeDeps = [ cdrkit cdrdao dvdplusrwtools ];
+in
 stdenv.mkDerivation rec {
   name = "k3b-2.0.2";
   
@@ -16,10 +20,22 @@ stdenv.mkDerivation rec {
       flac libsamplerate libdvdread lame libsndfile
       libmad gettext stdenv.gcc.libc
       kdelibs kdemultimedia automoc4 phonon
-      libkcddb
-    ];
+      libkcddb makeWrapper
+    ]
+    # Runtime dependencies are *not* propagated so they are easy to override.
+    ++ runtimeDeps;
 
   enableParallelBuilding = true;
+
+  postInstall =
+    # Wrap k3b with PATH to required tools, so they can be found without being
+    # installed in a profile. The PATH is suffixed so that profile-installed
+    # tools take preference.
+    let extraPath = stdenv.lib.makeSearchPath "bin" runtimeDeps;
+    in ''
+      wrapProgram "$out/bin/k3b" --suffix PATH : ${extraPath}
+      wrapProgram "$out/bin/k3bsetup" --suffix PATH : ${extraPath}
+    '';
                   
   meta = with stdenv.lib; {
     description = "CD/DVD Burning Application for KDE";

From 6c77690b2898aa8a12184ca8f3c113a11c957e50 Mon Sep 17 00:00:00 2001
From: Emery Hemingway <emery@vfemail.net>
Date: Wed, 26 Mar 2014 18:12:00 -0400
Subject: [PATCH 020/567] rippled: initial pkg and module expressions

rippled is the Ripple P2P payment network reference server
https://ripple.com
---
 lib/maintainers.nix                     |   1 +
 nixos/modules/misc/ids.nix              |   1 +
 nixos/modules/module-list.nix           |   1 +
 nixos/modules/services/misc/rippled.nix | 326 ++++++++++++++++++++++++
 pkgs/servers/rippled/default.nix        |  32 +++
 pkgs/servers/rippled/scons-env.patch    |  46 ++++
 pkgs/top-level/all-packages.nix         |   2 +
 7 files changed, 409 insertions(+)
 create mode 100644 nixos/modules/services/misc/rippled.nix
 create mode 100644 pkgs/servers/rippled/default.nix
 create mode 100644 pkgs/servers/rippled/scons-env.patch

diff --git a/lib/maintainers.nix b/lib/maintainers.nix
index 938e1ed54550..1e3b9a32a529 100644
--- a/lib/maintainers.nix
+++ b/lib/maintainers.nix
@@ -28,6 +28,7 @@
   coroa = "Jonas Hörsch <jonas@chaoflow.net>";
   edwtjo = "Edward Tjörnhammar <ed@cflags.cc>";
   eelco = "Eelco Dolstra <eelco.dolstra@logicblox.com>";
+  emery = "Emery Hemingawy <emery@vfemail.net>";
   ertes = "Ertugrul Söylemez <es@ertes.de>";
   falsifian = "James Cook <james.cook@utoronto.ca>";
   garbas = "Rok Garbas <rok@garbas.si>";
diff --git a/nixos/modules/misc/ids.nix b/nixos/modules/misc/ids.nix
index 9c413e36d568..f03aeed7f65d 100644
--- a/nixos/modules/misc/ids.nix
+++ b/nixos/modules/misc/ids.nix
@@ -123,6 +123,7 @@
       ngircd = 112;
       btsync = 113;
       minecraft = 114;
+      rippled = 115;
 
       # When adding a uid, make sure it doesn't match an existing gid.
 
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index 652a99e7c5a6..79c071087e42 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -132,6 +132,7 @@
   ./services/misc/nix-gc.nix
   ./services/misc/nix-ssh-serve.nix
   ./services/misc/nixos-manual.nix
+  ./services/misc/rippled.nix
   ./services/misc/rogue.nix
   ./services/misc/svnserve.nix
   ./services/misc/synergy.nix
diff --git a/nixos/modules/services/misc/rippled.nix b/nixos/modules/services/misc/rippled.nix
new file mode 100644
index 000000000000..7d339a48b976
--- /dev/null
+++ b/nixos/modules/services/misc/rippled.nix
@@ -0,0 +1,326 @@
+# configuration building is commented out until better tested.
+
+{ config, pkgs, ... }:
+
+with pkgs.lib;
+
+let
+  cfg = config.services.rippled;
+
+  rippledStateCfgFile = "/var/lib/rippled/rippled.cfg";
+
+  rippledCfg = ''
+    [node_db]
+    type=HyperLevelDB
+    path=/var/lib/rippled/db/hyperldb
+
+    [debug_logfile]
+    /var/log/rippled/debug.log
+
+  ''
+  /*
+  + optionalString (cfg.ips != null) ''
+    [ips]
+    ${concatStringsSep "\n" cfg.ips}
+
+  ''
+  + optionalString (cfg.ipsFixed != null) ''
+    [ips_fixed]
+    ${concatStringsSep "\n" cfg.ipsFixed}
+
+  ''
+  */
+  + optionalString (cfg.peerIp != null) ''
+    [peer_ip]
+    ${cfg.peerIp}
+
+    [peer_port]
+    ${toString cfg.peerPort}
+
+  ''
+  + cfg.extraConfig;
+
+  rippledCfgFile = pkgs.writeText "rippled.cfg" rippledCfg;
+    
+in
+
+{
+
+  ###### interface
+
+  options = {
+
+    services.rippled = {
+
+      enable = mkOption {
+        default = false;
+	description = "Whether to enable rippled";
+      };
+
+      /*
+      ips = mkOption {
+        default = [ "r.ripple.com 51235" ];
+	example = [ "192.168.0.1" "192.168.0.1 3939" "r.ripple.com 51235" ];
+	description = ''
+	  List of hostnames or ips where the Ripple protocol is served.
+	  For a starter list, you can either copy entries from: 
+	  https://ripple.com/ripple.txt or if you prefer you can let it
+	   default to r.ripple.com 51235
+
+	  A port may optionally be specified after adding a space to the 
+	  address. By convention, if known, IPs are listed in from most 
+	  to least trusted.
+	'';
+      };
+
+      ipsFixed = mkOption {
+        default = null;
+	example = [ "192.168.0.1" "192.168.0.1 3939" "r.ripple.com 51235" ];
+	description = ''
+	  List of IP addresses or hostnames to which rippled should always 
+	  attempt to maintain peer connections with. This is useful for 
+	  manually forming private networks, for example to configure a 
+	  validation server that connects to the Ripple network through a 
+	  public-facing server, or for building a set of cluster peers.
+
+	  A port may optionally be specified after adding a space to the address
+	'';
+      };
+      */
+
+      peerIp = mkOption {
+        default = null;
+	example = "0.0.0.0";
+	description = ''
+	  IP address or domain to bind to allow external connections from peers.
+	  Defaults to not binding, which disallows external connections from peers.
+        '';
+      };
+
+      peerPort = mkOption {
+	default = 51235;
+	description = ''
+	  If peerIp is supplied, corresponding port to bind to for peer connections.
+	'';
+      };
+
+      /*
+      peerPortProxy = mkOption {
+        type = types.int;
+	example = 51236;
+	description = ''
+	  An optional, additional listening port number for peers. Incoming
+	  connections on this port will be required to provide a PROXY Protocol
+	  handshake, described in this document (external link):
+
+	    http://haproxy.1wt.eu/download/1.5/doc/proxy-protocol.txt
+
+	  The PROXY Protocol is a popular method used by elastic load balancing
+	  service providers such as Amazon, to identify the true IP address and
+	  port number of external incoming connections.
+
+	  In addition to enabling this setting, it will also be required to
+	  use your provider-specific control panel or administrative web page
+	  to configure your server instance to receive PROXY Protocol handshakes,
+	  and also to restrict access to your instance to the Elastic Load Balancer.
+	'';
+      };
+
+      peerPrivate = mkOption {
+        default = null;
+	example = 0;
+	description = ''
+	 0: Request peers to broadcast your address. Normal outbound peer connections [default]
+	 1: Request peers not broadcast your address. Only connect to configured peers.
+       '';
+     };
+
+     peerSslCipherList = mkOption {
+       default = null;
+       example = "ALL:!LOW:!EXP:!MD5:@STRENGTH";
+       description = ''
+         A colon delimited string with the allowed SSL cipher modes for peer. The
+	 choices for for ciphers are defined by the OpenSSL API function
+	 SSL_CTX_set_cipher_list, documented here (external link):
+
+	  http://pic.dhe.ibm.com/infocenter/tpfhelp/current/index.jsp?topic=%2Fcom.ibm.ztpf-ztpfdf.doc_put.cur%2Fgtpc2%2Fcpp_ssl_ctx_set_cipher_list.html
+
+	The default setting of "ALL:!LOW:!EXP:!MD5:@STRENGTH", which allows
+	non-authenticated peer connections (they are, however, secure).
+      '';
+    };
+
+    nodeSeed = mkOption {
+      default = null;
+      example = "RASH BUSH MILK LOOK BAD BRIM AVID GAFF BAIT ROT POD LOVE";
+      description = ''
+        This is used for clustering. To force a particular node seed or key, the
+	key can be set here.  The format is the same as the validation_seed field.
+	To obtain a validation seed, use the rippled validation_create command.
+      '';
+    };
+
+    clusterNodes = mkOption {
+      default = null;
+      example = [ "n9KorY8QtTdRx7TVDpwnG9NvyxsDwHUKUEeDLY3AkiGncVaSXZi5" ];
+      description = ''
+        To extend full trust to other nodes, place their node public keys here.
+	Generally, you should only do this for nodes under common administration.
+	Node public keys start with an 'n'. To give a node a name for identification
+	place a space after the public key and then the name.
+      '';
+    };
+
+    sntpServers = mkOption {
+      default = null;
+      example = [ "time.nist.gov" "pool.ntp.org" ];
+      description = ''
+        IP address or domain of NTP servers to use for time synchronization.
+      '';
+    };
+
+    # TODO: websocket options
+
+    rpcAllowRemote = mkOption {
+      default = false;
+      description = ''
+        false: Allow RPC connections only from 127.0.0.1. [default]
+	true:  Allow RPC connections from any IP.
+      '';
+    };
+
+    rpcAdminAllow = mkOption {
+      example = [ "10.0.0.4" ];
+      description = ''
+        List of IP addresses allowed to have admin access.
+      '';
+    };
+
+    rpcAdminUser = mkOption {
+      type = types.str;
+      description = ''
+        As a server, require this as the admin user to be specified.  Also, require
+	rpc_admin_user and rpc_admin_password to be checked for RPC admin functions.
+	The request must specify these as the admin_user and admin_password in the
+	request object.
+      '';
+    };
+
+    rpcAdminPassword = mkOption {
+      type = types.str;
+      description = ''
+        As a server, require this as the admin pasword to be specified.  Also,
+	require rpc_admin_user and rpc_admin_password to be checked for RPC admin
+	functions.  The request must specify these as the admin_user and
+	admin_password in the request object.
+      '';
+    };
+
+      rpcIp = mkOption {
+        type = types.str;
+	description = ''
+	  IP address or domain to bind to allow insecure RPC connections.
+	  Defaults to not binding, which disallows RPC connections.
+	'';
+      };
+
+      rpcPort = mkOption {
+        type = types.int;
+        description = ''
+          If rpcIp is supplied, corresponding port to bind to for peer connections.
+        '';
+      };
+
+      rpcUser = mkOption {
+        type = types.str;
+	description = ''
+	  Require a this user to specified and require rpcPassword to
+	  be checked for RPC access via the rpcIp and rpcPort. The user and password
+	  must be specified via HTTP's basic authentication method.
+	  As a client, supply this to the server via HTTP's basic authentication
+	  method.
+	'';
+      };
+
+      rpcPassword = mkOption {
+        type = types.str;
+	description = ''
+	  Require a this password to specified and require rpc_user to
+	  be checked for RPC access via the rpcIp and rpcPort. The user and password
+	  must be specified via HTTP's basic authentication method.
+	  As a client, supply this to the server via HTTP's basic authentication
+	  method.
+	'';
+      };
+
+      rpcStartup = mkOption {
+        example = [ ''"command" : "log_level"'' ''"partition" : "ripplecalc"'' ''"severity" : "trace"'' ];
+	description = "List of RPC commands to run at startup.";
+      };
+
+      rpcSecure = mkOption {
+        default = false;
+	description = ''
+	  false: Server certificates are not provided for RPC clients using SSL [default]
+	  true:  Client RPC connections wil be provided with SSL certificates.
+
+	  Note that if rpc_secure is enabled, it will also be necessasry to configure the
+	  certificate file settings located in rpcSslCert, rpcSslChain, and rpcSslKey
+	'';
+      };
+      */
+
+      extraConfig = mkOption {
+        default = "";
+	description = ''
+	  Extra lines to be added verbatim to the rippled.cfg configuration file.
+	'';
+      };
+
+    };
+
+  };
+
+
+  ###### implementation
+
+  config = mkIf cfg.enable {
+
+    environment = {
+      etc = singleton
+        { source = rippledStateCfgFile;
+	  target = "rippled";
+	};
+	
+	# users can attempt to send RPC commands to the server.
+	systemPackages = [ pkgs.rippled ];
+    };
+
+    users.extraUsers = singleton
+      { name = "rippled";
+        description = "Ripple server user";
+        uid = config.ids.uids.rippled;
+	home = "/var/lib/rippled";
+      };
+
+    systemd.services.rippled = {
+      path = [ pkgs.rippled ];
+
+      after = [ "network.target" ];
+      wantedBy = [ "multi-user.target" ];
+
+      serviceConfig = {
+        ExecStart = "${pkgs.rippled}/bin/rippled --fg -q --conf ${rippledStateCfgFile}";
+	WorkingDirectory = "/var/lib/rippled";
+      };
+    };
+
+    networking.firewall.allowedTCPPorts = mkIf (cfg.peerIp != null) [ cfg.peerPort ];
+
+    system.activationScripts.rippled = ''
+      mkdir -p /var/{lib,log}/rippled
+      chown -R rippled /var/{lib,log}/rippled
+      ln -sf ${rippledCfgFile} ${rippledStateCfgFile}
+    '';
+  };
+}
diff --git a/pkgs/servers/rippled/default.nix b/pkgs/servers/rippled/default.nix
new file mode 100644
index 000000000000..66a0743b367f
--- /dev/null
+++ b/pkgs/servers/rippled/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchurl, scons, pkgconfig, openssl, protobuf, boost155, zlib}:
+
+stdenv.mkDerivation rec {
+  name = "rippled-${version}";
+  version = "0.23.0";
+
+  src = fetchurl {
+    url = "https://github.com/ripple/rippled/archive/${version}.tar.gz";
+    sha256 = "0js734sk11jn19fyp403mk6p62azlc6s9kyhr5jfg466fiak537p";
+  };
+
+  patches = [ ./scons-env.patch ];
+
+  buildInputs = [ scons pkgconfig openssl protobuf boost155 zlib ];
+
+  RIPPLED_BOOST_HOME = boost155.out;
+  RIPPLED_ZLIB_HOME = zlib.out;
+  buildPhase = "scons build/rippled";
+
+  installPhase = ''
+    mkdir -p $out/bin    
+    cp build/rippled $out/bin/
+  '';
+
+  meta = {
+    description = "Ripple P2P payment network reference server";
+    homepage = "https://ripple.com";
+    maintainers = stdenv.lib.maintainers.emery;
+    license = stdenv.lib.licenses.isc;
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
\ No newline at end of file
diff --git a/pkgs/servers/rippled/scons-env.patch b/pkgs/servers/rippled/scons-env.patch
new file mode 100644
index 000000000000..5b80e77bb2e0
--- /dev/null
+++ b/pkgs/servers/rippled/scons-env.patch
@@ -0,0 +1,46 @@
+diff --git a/SConstruct b/SConstruct
+index 8ba8bbd..95eab3b 100644
+--- a/SConstruct
++++ b/SConstruct
+@@ -24,6 +24,8 @@ USING_CLANG = OSX or os.environ.get('CC', None) == 'clang'
+ #
+ BOOST_HOME = os.environ.get("RIPPLED_BOOST_HOME", None)
+ 
++ZLIB_HOME = os.environ.get("RIPPLED_ZLIB_HOME", None)
++
+ 
+ if OSX or Ubuntu or Debian or Archlinux:
+     CTAGS = 'ctags'
+@@ -36,7 +38,7 @@ else:
+ # scons tools
+ #
+ 
+-HONOR_ENVS = ['CC', 'CXX', 'PATH']
++HONOR_ENVS = ['CC', 'CXX', 'PATH', 'PKG_CONFIG_PATH']
+ 
+ env = Environment(
+     tools = ['default', 'protoc'],
+@@ -156,8 +158,8 @@ INCLUDE_PATHS = [
+     'build/proto'
+     ]
+ 
+-# if BOOST_HOME:
+-#     INCLUDE_PATHS.append(BOOST_HOME)
++if BOOST_HOME:
++    INCLUDE_PATHS.append("%s/include" % BOOST_HOME)
+ 
+ #-------------------------------------------------------------------------------
+ #
+@@ -261,7 +263,11 @@ env.Append(
+ # such, as installed into `/usr/lib/`
+ if BOOST_HOME is not None:
+     env.Prepend(
+-        LIBPATH = ["%s/stage/lib" % BOOST_HOME])
++        LIBPATH = ["%s/lib" % BOOST_HOME])
++
++if ZLIB_HOME is not None:
++    env.Prepend(
++        LIBPATH = ["%s/lib" % ZLIB_HOME])
+ 
+ if not OSX:
+     env.Append(LINKFLAGS = [
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index da2edad1e60d..8a9228d15a2b 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -6528,6 +6528,8 @@ let
 
   rethinkdb = callPackage ../servers/nosql/rethinkdb { };
 
+  rippled = callPackage ../servers/rippled { };
+
   spamassassin = callPackage ../servers/mail/spamassassin {
     inherit (perlPackages) HTMLParser NetDNS NetAddrIP DBFile
       HTTPDate MailDKIM LWP IOSocketSSL;

From b894dfffb3f1b6f9051ea0b649a05b4ad4ccf12f Mon Sep 17 00:00:00 2001
From: Joachim Schiele <js@lastlog.de>
Date: Sun, 30 Mar 2014 13:00:25 +0200
Subject: [PATCH 021/567] added mtpfs to mount MTP devices via usb using FUSE

---
 pkgs/tools/filesystems/mtpfs/default.nix | 26 ++++++++++++++++++++++++
 pkgs/top-level/all-packages.nix          |  3 +++
 2 files changed, 29 insertions(+)
 create mode 100644 pkgs/tools/filesystems/mtpfs/default.nix

diff --git a/pkgs/tools/filesystems/mtpfs/default.nix b/pkgs/tools/filesystems/mtpfs/default.nix
new file mode 100644
index 000000000000..7725b0d7af8e
--- /dev/null
+++ b/pkgs/tools/filesystems/mtpfs/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchurl, pkgconfig, fuse, libmtp, glib, libmad, libid3tag }:
+
+stdenv.mkDerivation rec {
+  name = "mtpfs-1.1";
+
+  buildInputs = [ pkgconfig fuse libmtp glib libid3tag libmad ];
+
+  # adding LIBS is a hack, duno why it does not find libid3tag.so by adding buildInputs
+  preConfigure = ''
+    export MAD_CFLAGS=${libmad}/include
+    export MAD_LIBS=${libmad}/lib/libmad.so
+    export LIBS=${libid3tag}/lib/libid3tag.so
+  '';
+
+  src = fetchurl {
+    url = "http://www.adebenham.com/files/mtp/${name}.tar.gz";
+    sha256 = "07acrqb17kpif2xcsqfqh5j4axvsa4rnh6xwnpqab5b9w5ykbbqv";
+  };
+
+  meta = {
+    homepage = https://code.google.com/p/mtpfs/;
+    description = "FUSE Filesystem providing access to MTP devices";
+    platforms = stdenv.lib.platforms.all;
+    maintainers = [ stdenv.lib.maintainers.qknight ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index da2edad1e60d..59c234a48650 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -4929,6 +4929,7 @@ let
 
   libmtp = callPackage ../development/libraries/libmtp { };
 
+
   libmsgpack = callPackage ../development/libraries/libmsgpack { };
 
   libnatspec = callPackage ../development/libraries/libnatspec { };
@@ -5375,6 +5376,8 @@ let
 
   mtdev = callPackage ../development/libraries/mtdev { };
 
+  mtpfs = callPackage ../tools/filesystems/mtpfs { };
+
   mu = callPackage ../tools/networking/mu {
     texinfo = texinfo4;
   };

From 7ebd856a3801d35872c60b112fce51132b45aff5 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Mon, 31 Mar 2014 19:16:52 +0200
Subject: [PATCH 022/567] Provide nixos-container unconditionally

---
 nixos/modules/virtualisation/containers.nix | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix
index 7e45d9f8b22f..16df108c21ec 100644
--- a/nixos/modules/virtualisation/containers.nix
+++ b/nixos/modules/virtualisation/containers.nix
@@ -267,9 +267,7 @@ in
         ${cfg.localAddress} ${name}.containers
       '') config.containers);
 
-    environment.systemPackages = optional (config.containers != {}) nixos-container;
-
-    system.build.foo = nixos-container;
+    environment.systemPackages = [ nixos-container ];
 
   };
 }

From bdb658d033df47c97a0cdbe9628fdcf8c086e149 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Mon, 31 Mar 2014 19:17:17 +0200
Subject: [PATCH 023/567] nixpkgs-lint: Tweak

---
 maintainers/scripts/nixpkgs-lint.pl | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/maintainers/scripts/nixpkgs-lint.pl b/maintainers/scripts/nixpkgs-lint.pl
index d74f5c740f58..7e9ff91ebe06 100755
--- a/maintainers/scripts/nixpkgs-lint.pl
+++ b/maintainers/scripts/nixpkgs-lint.pl
@@ -31,8 +31,7 @@ GetOptions("package|p=s" => \$filter,
            "maintainer|m=s" => \$maintainer,
            "file|f=s" => \$path,
            "help" => sub { showHelp() }
-    )
-    or die("syntax: $0 ...\n");
+    ) or exit 1;
 
 # Evaluate Nixpkgs into an XML representation.
 my $xml = `nix-env -f '$path' -qa '$filter' --xml --meta --drv-path`;

From 6da72a4456ea7cc12219c962739f279e5060fd66 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Mon, 31 Mar 2014 19:21:36 +0200
Subject: [PATCH 024/567] nixos-container: Rewrite in Perl

Also fix race condition when multiple containers are created
simultaneously (as NixOps tends to do).
---
 nixos/modules/virtualisation/containers.nix   |   5 +-
 .../modules/virtualisation/nixos-container.pl | 198 ++++++++++++++++++
 .../modules/virtualisation/nixos-container.sh | 171 ---------------
 3 files changed, 201 insertions(+), 173 deletions(-)
 create mode 100644 nixos/modules/virtualisation/nixos-container.pl
 delete mode 100644 nixos/modules/virtualisation/nixos-container.sh

diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix
index 16df108c21ec..9964cd431cd7 100644
--- a/nixos/modules/virtualisation/containers.nix
+++ b/nixos/modules/virtualisation/containers.nix
@@ -18,8 +18,9 @@ let
     name = "nixos-container";
     dir = "bin";
     isExecutable = true;
-    src = ./nixos-container.sh;
-    inherit (pkgs) bash socat;
+    src = ./nixos-container.pl;
+    perl = "${pkgs.perl}/bin/perl -I${pkgs.perlPackages.FileSlurp}/lib/perl5/site_perl";
+    inherit (pkgs) socat;
   };
 
 in
diff --git a/nixos/modules/virtualisation/nixos-container.pl b/nixos/modules/virtualisation/nixos-container.pl
new file mode 100644
index 000000000000..dfc856e8b667
--- /dev/null
+++ b/nixos/modules/virtualisation/nixos-container.pl
@@ -0,0 +1,198 @@
+#! @perl@
+
+use strict;
+use File::Path;
+use File::Slurp;
+use Fcntl ':flock';
+use Getopt::Long qw(:config gnu_getopt);
+
+my $socat = '@socat@/bin/socat';
+
+# Parse the command line.
+
+sub showHelp {
+    print <<EOF;
+Usage: nixos-container list
+       nixos-container create <container-name> [--config <string>] [--ensure-unique-name]
+       nixos-container destroy <container-name>
+       nixos-container start <container-name>
+       nixos-container stop <container-name>
+       nixos-container login <container-name>
+       nixos-container root-shell <container-name>
+       nixos-container set-root-password <container-name> <password>
+       nixos-container show-ip <container-name>
+EOF
+    exit 0;
+}
+
+my $ensureUniqueName = 0;
+my $extraConfig = "";
+
+GetOptions(
+    "help" => sub { showHelp() },
+    "ensure-unique-name" => \$ensureUniqueName,
+    "config=s" => \$extraConfig
+    ) or exit 1;
+
+my $action = $ARGV[0] or die "$0: no action specified\n";
+
+
+# Execute the selected action.
+
+mkpath("/etc/containers", 0, 0755);
+mkpath("/var/lib/containers", 0, 0700);
+
+if ($action eq "list") {
+    foreach my $confFile (glob "/etc/containers/*.conf") {
+        $confFile =~ /\/([^\/]+).conf$/ or next;
+        print "$1\n";
+    }
+    exit 0;
+}
+
+my $containerName = $ARGV[1] or die "$0: no container name specified\n";
+$containerName =~ /^[a-zA-Z0-9\-]+$/ or die "$0: invalid container name\n";
+
+if ($action eq "create") {
+    # Acquire an exclusive lock to prevent races with other
+    # invocations of ‘nixos-container create’.
+    my $lockFN = "/run/lock/nixos-container";
+    open(my $lock, '>>', $lockFN) or die "$0: opening $lockFN: $!";
+    flock($lock, LOCK_EX) or die "$0: could not lock $lockFN: $!";
+
+    my $confFile = "/etc/containers/$containerName.conf";
+    my $root = "/var/lib/containers/$containerName";
+
+    # Maybe generate a unique name.
+    if ($ensureUniqueName) {
+        my $base = $containerName;
+        for (my $nr = 0; ; $nr++) {
+            $containerName = "$base-$nr";
+            $confFile = "/etc/containers/$containerName.conf";
+            $root = "/var/lib/containers/$containerName";
+            last unless -e $confFile || -e $root;
+        }
+    }
+
+    die "$0: container ‘$containerName’ already exists\n" if -e $confFile;
+
+    # Get an unused IP address.
+    my %usedIPs;
+    foreach my $confFile2 (glob "/etc/containers/*.conf") {
+        my $s = read_file($confFile2) or die;
+        $usedIPs{$1} = 1 if $s =~ /^HOST_ADDRESS=([0-9\.]+)$/m;
+        $usedIPs{$1} = 1 if $s =~ /^LOCAL_ADDRESS=([0-9\.]+)$/m;
+    }
+
+    my ($ipPrefix, $hostAddress, $localAddress);
+    for (my $nr = 1; $nr < 255; $nr++) {
+        $ipPrefix = "10.233.$nr";
+        $hostAddress = "$ipPrefix.1";
+        $localAddress = "$ipPrefix.2";
+        last unless $usedIPs{$hostAddress} || $usedIPs{$localAddress};
+        $ipPrefix = undef;
+    }
+
+    die "$0: out of IP addresses\n" unless defined $ipPrefix;
+
+    my @conf;
+    push @conf, "PRIVATE_NETWORK=1\n";
+    push @conf, "HOST_ADDRESS=$hostAddress\n";
+    push @conf, "LOCAL_ADDRESS=$localAddress\n";
+    write_file($confFile, \@conf);
+
+    close($lock);
+
+    print STDERR "host IP is $hostAddress, container IP is $localAddress\n";
+
+    mkpath("$root/etc/nixos", 0, 0755);
+
+    my $nixosConfig = <<EOF;
+{ config, pkgs, ... }:
+
+with pkgs.lib;
+
+{ boot.isContainer = true;
+  security.initialRootPassword = mkDefault "!";
+  networking.hostName = mkDefault "$containerName";
+  networking.useDHCP = false;
+  imports = [ <nixpkgs/nixos/modules/virtualisation/container-login.nix> ];
+  $extraConfig
+}
+EOF
+    my $nixosConfigFile = "$root/etc/nixos/configuration.nix";
+    write_file($nixosConfigFile, $nixosConfig);
+
+    # The per-container directory is restricted to prevent users on
+    # the host from messing with guest users who happen to have the
+    # same uid.
+    my $profileDir = "/nix/var/nix/profiles/per-container";
+    mkpath($profileDir, 0, 0700);
+    $profileDir = "$profileDir/$containerName";
+    mkpath($profileDir, 0, 0755);
+
+    system("nix-env", "-p", "$profileDir/system",
+           "-I", "nixos-config=$nixosConfigFile", "-f", "<nixpkgs/nixos>",
+           "--set", "-A", "system") == 0
+        or die "$0: failed to build initial container configuration\n";
+
+    print "$containerName\n" if $ensureUniqueName;
+    exit 0;
+}
+
+my $confFile = "/etc/containers/$containerName.conf";
+die "$0: container ‘$containerName’ does not exist\n" if !-e $confFile;
+
+sub stopContainer {
+    system("systemctl", "stop", "container\@$containerName") == 0
+        or die "$0: failed to stop container\n";
+}
+
+if ($action eq "destroy") {
+    my $root = "/var/lib/containers/$containerName";
+    my $profileDir = "/nix/var/nix/profiles/per-container/$containerName";
+
+    my $status = `systemctl show 'container\@$containerName'`;
+    stopContainer if $status =~ /ActiveState=active/;
+
+    rmtree($profileDir) if -e $profileDir;
+    rmtree($root) if -e $root;
+    unlink($confFile) or die;
+}
+
+elsif ($action eq "start") {
+    system("systemctl", "start", "container\@$containerName") == 0
+        or die "$0: failed to start container\n";
+}
+
+elsif ($action eq "stop") {
+    stopContainer;
+}
+
+elsif ($action eq "login") {
+    exec($socat, "unix:/var/lib/containers/$containerName/var/lib/login.socket", "-,echo=0,raw");
+}
+
+elsif ($action eq "root-shell") {
+    exec($socat, "unix:/var/lib/containers/$containerName/var/lib/root-shell.socket", "-");
+}
+
+elsif ($action eq "set-root-password") {
+    # FIXME: don't get password from the command line.
+    my $password = $ARGV[2] or die "$0: no password given\n";
+    open(SOCAT, "|-", $socat, "unix:/var/lib/containers/$containerName/var/lib/root-shell.socket", "-");
+    print SOCAT "passwd\n";
+    print SOCAT "$password\n";
+    print SOCAT "$password\n";
+    close(SOCAT);
+}
+
+elsif ($action eq "show-ip") {
+    my $s = read_file($confFile) or die;
+    $s =~ /^LOCAL_ADDRESS=([0-9\.]+)$/m or die "$0: cannot get IP address\n";
+    print "$1\n";
+}
+
+else {
+    die "$0: unknown action ‘$action’\n";
+}
diff --git a/nixos/modules/virtualisation/nixos-container.sh b/nixos/modules/virtualisation/nixos-container.sh
deleted file mode 100644
index 47abf96072f3..000000000000
--- a/nixos/modules/virtualisation/nixos-container.sh
+++ /dev/null
@@ -1,171 +0,0 @@
-#! @bash@/bin/sh -e
-
-usage() {
-    echo "Usage: $0 list" >&2
-    echo "       $0 create <container-name> [--config <string>] [--ensure-unique-name]" >&2
-    echo "       $0 update <container-name>" >&2
-    echo "       $0 destroy <container-name>" >&2
-    echo "       $0 login <container-name>" >&2
-    echo "       $0 root-shell <container-name>" >&2
-    echo "       $0 set-root-password <container-name> <password>" >&2
-    echo "       $0 show-ip <container-name>" >&2
-}
-
-args="`getopt --options '' -l help -l config: -l ensure-unique-name -- "$@"`"
-eval "set -- $args"
-extraConfig=
-ensureUniqueName=
-while [ $# -gt 0 ]; do
-    case "$1" in
-        (--help) usage; exit 0;;
-        (--config) shift; extraConfig=$1;;
-        (--ensure-unique-name) ensureUniqueName=1;;
-        (--) shift; break;;
-        (*) break;;
-    esac
-    shift
-done
-
-action="$1"
-if [ -z "$action" ]; then usage; exit 1; fi
-shift
-
-getContainerRoot() {
-    root="/var/lib/containers/$container"
-    if ! [ -d "$root" ]; then
-        echo "$0: container ‘$container’ does not exist" >&2
-        exit 1
-    fi
-}
-
-if [ $action = list ]; then
-    for i in $(cd /etc/containers && echo *.conf); do
-        echo "$(basename "$i" .conf)"
-    done
-    exit 0
-fi
-
-container="$1"
-if [ -z "$container" ]; then usage; exit 1; fi
-shift
-
-if [ $action = create ]; then
-
-    if [ -n "$ensureUniqueName" ]; then
-        # FIXME: race
-        nr=0
-        while [ -e "/etc/containers/$container-$nr.conf" -o -e "/var/lib/containers/$container-$nr" ]; do
-            : $((nr++))
-        done
-        container="$container-$nr"
-    fi
-
-    confFile="/etc/containers/$container.conf"
-    root="/var/lib/containers/$container"
-
-    if [ -e "$confFile" -o -e "$root/nix" ]; then
-        echo "$0: container ‘$container’ already exists" >&2
-        exit 1
-    fi
-
-    profileDir="/nix/var/nix/profiles/per-container/$container"
-    mkdir -m 0755 -p "$root/etc/nixos" "$profileDir"
-
-    config="
-{ config, pkgs, ... }:
-
-with pkgs.lib;
-
-{ boot.isContainer = true;
-  security.initialRootPassword = mkDefault \"!\";
-  networking.hostName = mkDefault \"$container\";
-  networking.useDHCP = false;
-  imports = [ <nixpkgs/nixos/modules/virtualisation/container-login.nix> ];
-  $extraConfig
-}"
-    configFile="$root/etc/nixos/configuration.nix"
-    echo "$config" > "$configFile"
-
-    nix-env -p "$profileDir/system" -I "nixos-config=$configFile" -f '<nixpkgs/nixos>' --set -A system
-
-    # Allocate a new /8 network in the 10.233.* range.  FIXME: race
-    network="$(sed -e 's/.*_ADDRESS=10\.233\.\(.*\)\..*/\1/; t; d' /etc/containers/*.conf | sort -n | tail -n1)"
-    if [ -z "$network" ]; then network=0; else : $((network++)); fi
-
-    hostAddress="10.233.$network.1"
-    localAddress="10.233.$network.2"
-    echo "host IP is $hostAddress, container IP is $localAddress" >&2
-
-    cat > "$confFile" <<EOF
-PRIVATE_NETWORK=1
-HOST_ADDRESS=$hostAddress
-LOCAL_ADDRESS=$localAddress
-EOF
-
-    echo "starting container@$container.service..." >&2
-    systemctl start "container@$container.service"
-
-    # Print generated container name on stdout.
-    if [ -n "$ensureUniqueName" ]; then
-        echo "$container"
-    fi
-
-elif [ $action = update ]; then
-
-    getContainerRoot
-
-    configFile="$root/etc/nixos/configuration.nix"
-    profileDir="/nix/var/nix/profiles/per-container/$container"
-
-    nix-env -p "$profileDir/system" -I "nixos-config=$configFile" -f '<nixpkgs/nixos>' --set -A system
-
-    echo "reloading container@$container.service..." >&2
-    systemctl reload "container@$container.service"
-
-elif [ $action = destroy ]; then
-
-    getContainerRoot
-
-    confFile="/etc/containers/$container.conf"
-    if [ -e "$confFile" -a ! -w "$confFile" ]; then
-        echo "$0: cannot destroy declarative container (remove it from your configuration.nix instead)"
-        exit 1
-    fi
-
-    if systemctl show "container@$container.service" | grep -q ActiveState=active; then
-        echo "stopping container@$container.service..." >&2
-        systemctl stop "container@$container.service"
-    fi
-
-    rm -f "$confFile"
-    rm -rf "$root"
-
-elif [ $action = login ]; then
-
-    getContainerRoot
-    exec @socat@/bin/socat "unix:$root/var/lib/login.socket" -,echo=0,raw
-
-elif [ $action = root-shell ]; then
-
-    getContainerRoot
-    exec @socat@/bin/socat "unix:$root/var/lib/root-shell.socket" -
-
-elif [ $action = set-root-password ]; then
-
-    password="$1"
-    if [ -z "$password" ]; then usage; exit 1; fi
-
-    # FIXME: not very secure.
-    getContainerRoot
-    (echo "passwd"; echo "$password"; echo "$password") | @socat@/bin/socat "unix:$root/var/lib/root-shell.socket" -
-
-elif [ $action = show-ip ]; then
-
-    getContainerRoot
-    . "/etc/containers/$container.conf"
-    echo "$LOCAL_ADDRESS"
-
-else
-    echo "$0: unknown action ‘$action’" >&2
-    exit 1
-fi

From def448f127ddc6383f1811de74eb04bf28615018 Mon Sep 17 00:00:00 2001
From: Emery Hemingway <emery@vfemail.net>
Date: Mon, 31 Mar 2014 22:59:01 -0400
Subject: [PATCH 025/567] rippled: added comment on commented out config
 options

---
 nixos/modules/services/misc/rippled.nix | 32 ++++++++-----------------
 1 file changed, 10 insertions(+), 22 deletions(-)

diff --git a/nixos/modules/services/misc/rippled.nix b/nixos/modules/services/misc/rippled.nix
index 7d339a48b976..e4d1caa565c8 100644
--- a/nixos/modules/services/misc/rippled.nix
+++ b/nixos/modules/services/misc/rippled.nix
@@ -18,18 +18,6 @@ let
     /var/log/rippled/debug.log
 
   ''
-  /*
-  + optionalString (cfg.ips != null) ''
-    [ips]
-    ${concatStringsSep "\n" cfg.ips}
-
-  ''
-  + optionalString (cfg.ipsFixed != null) ''
-    [ips_fixed]
-    ${concatStringsSep "\n" cfg.ipsFixed}
-
-  ''
-  */
   + optionalString (cfg.peerIp != null) ''
     [peer_ip]
     ${cfg.peerIp}
@@ -57,6 +45,16 @@ in
 	description = "Whether to enable rippled";
       };
 
+      #
+      # Rippled has a simple configuration file layout that is easy to 
+      # build with nix. Many of the options are defined here but are 
+      # commented out until the code to append them to the config above
+      # is written and they are tested.
+      #
+      # If you find a yourself implementing more options, please submit a 
+      # pull request.
+      #
+
       /*
       ips = mkOption {
         default = [ "r.ripple.com 51235" ];
@@ -286,16 +284,6 @@ in
 
   config = mkIf cfg.enable {
 
-    environment = {
-      etc = singleton
-        { source = rippledStateCfgFile;
-	  target = "rippled";
-	};
-	
-	# users can attempt to send RPC commands to the server.
-	systemPackages = [ pkgs.rippled ];
-    };
-
     users.extraUsers = singleton
       { name = "rippled";
         description = "Ripple server user";

From f61110d65d8324e621feb2c25e081f125000a3ce Mon Sep 17 00:00:00 2001
From: Austin Seipp <aseipp@pobox.com>
Date: Mon, 31 Mar 2014 23:31:09 -0500
Subject: [PATCH 026/567] nixos: murmur service

Murmur is the headless server component of the Mumble chat system.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
---
 nixos/modules/misc/ids.nix                   |   1 +
 nixos/modules/module-list.nix                |   1 +
 nixos/modules/services/networking/murmur.nix | 253 +++++++++++++++++++
 3 files changed, 255 insertions(+)
 create mode 100644 nixos/modules/services/networking/murmur.nix

diff --git a/nixos/modules/misc/ids.nix b/nixos/modules/misc/ids.nix
index 9c413e36d568..44e27732f429 100644
--- a/nixos/modules/misc/ids.nix
+++ b/nixos/modules/misc/ids.nix
@@ -123,6 +123,7 @@
       ngircd = 112;
       btsync = 113;
       minecraft = 114;
+      murmur = 115;
 
       # When adding a uid, make sure it doesn't match an existing gid.
 
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index 652a99e7c5a6..3d0585b9dff1 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -180,6 +180,7 @@
   ./services/networking/ircd-hybrid/default.nix
   ./services/networking/kippo.nix
   ./services/networking/minidlna.nix
+  ./services/networking/murmur.nix
   ./services/networking/nat.nix
   ./services/networking/networkmanager.nix
   ./services/networking/ngircd.nix
diff --git a/nixos/modules/services/networking/murmur.nix b/nixos/modules/services/networking/murmur.nix
new file mode 100644
index 000000000000..2a5549beaf89
--- /dev/null
+++ b/nixos/modules/services/networking/murmur.nix
@@ -0,0 +1,253 @@
+{ config, pkgs, ... }:
+
+with pkgs.lib;
+
+let
+  cfg = config.services.murmur;
+  configFile = pkgs.writeText "murmurd.ini" ''
+    database=/var/lib/murmur/murmur.sqlite
+    dbDriver=QSQLITE
+
+    autobanAttempts=${toString cfg.autobanAttempts}
+    autobanTimeframe=${toString cfg.autobanTimeframe}
+    autobanTime=${toString cfg.autobanTime}
+
+    logfile=/var/log/murmur/murmurd.log
+    pidfile=${cfg.pidfile}
+
+    welcome="${cfg.welcome}"
+    port=${toString cfg.port}
+
+    ${if cfg.hostName == "" then "" else "host="+cfg.hostName}
+    ${if cfg.password == "" then "" else "serverpassword="+cfg.password}
+
+    bandwidth=${toString cfg.bandwidth}
+    users=${toString cfg.users}
+
+    textmessagelength=${toString cfg.textMsgLength}
+    imagemessagelength=${toString cfg.imgMsgLength}
+    allowhtml=${if cfg.allowHtml then "true" else "false"}
+    logdays=${toString cfg.logDays}
+    bonjour=${if cfg.bonjour then "true" else "false"}
+    sendversion=${if cfg.sendVersion then "true" else "false"}
+
+    ${if cfg.registerName     == "" then "" else "registerName="+cfg.registerName}
+    ${if cfg.registerPassword == "" then "" else "registerPassword="+cfg.registerPassword}
+    ${if cfg.registerUrl      == "" then "" else "registerUrl="+cfg.registerUrl}
+    ${if cfg.registerHostname == "" then "" else "registerHostname="+cfg.registerHostname}
+
+    certrequired=${if cfg.clientCertRequired then "true" else "false"}
+    ${if cfg.sslCert == "" then "" else "sslCert="+cfg.sslCert}
+    ${if cfg.sslKey  == "" then "" else "sslKey="+cfg.sslKey}
+  '';
+in
+{
+  options = {
+    services.murmur = {
+      enable = mkOption {
+        type = types.bool;
+        default = false;
+        description = "If enabled, start the Murmur Service.";
+      };
+
+      autobanAttempts = mkOption {
+        type = types.int;
+        default = 10;
+        description = ''
+          Number of attempts a client is allowed to make in
+          <literal>autobanTimeframe</literal> seconds, before being
+          banned for <literal>autobanTime</literal>.
+        '';
+      };
+
+      autobanTimeframe = mkOption {
+        type = types.int;
+        default = 120;
+        description = ''
+          Timeframe in which a client can connect without being banned
+          for repeated attempts (in seconds).
+        '';
+      };
+
+      autobanTime = mkOption {
+        type = types.int;
+        default = 300;
+        description = "The amount of time an IP ban lasts (in seconds).";
+      };
+
+      pidfile = mkOption {
+        type = types.path;
+        default = "/tmp/murmurd.pid";
+        description = "Path to PID file for Murmur daemon.";
+      };
+
+      welcome = mkOption {
+        type = types.str;
+        default = "";
+        description = "Welcome message for connected clients.";
+      };
+
+      port = mkOption {
+        type = types.int;
+        default = 64738;
+        description = "Ports to bind to (UDP and TCP).";
+      };
+
+      hostName = mkOption {
+        type = types.str;
+        default = "";
+        description = "Host to bind to. Defaults binding on all addresses.";
+      };
+
+      password = mkOption {
+        type = types.str;
+        default = "";
+        description = "Required password to join server, if specified.";
+      };
+
+      bandwidth = mkOption {
+        type = types.int;
+        default = 72000;
+        description = ''
+          Maximum bandwidth (in bits per second) that clients may send
+          speech at.
+        '';
+      };
+
+      users = mkOption {
+        type = types.int;
+        default = 100;
+        description = "Maximum number of concurrent clients allowed.";
+      };
+
+      textMsgLength = mkOption {
+        type = types.int;
+        default = 5000;
+        description = "Max length of text messages. Set 0 for no limit.";
+      };
+
+      imgMsgLength = mkOption {
+        type = types.int;
+        default = 131072;
+        description = "Max length of image messages. Set 0 for no limit.";
+      };
+
+      allowHtml = mkOption {
+        type = types.bool;
+        default = true;
+        description = ''
+          Allow HTML in client messages, comments, and channel
+          descriptions.
+        '';
+      };
+
+      logDays = mkOption {
+        type = types.int;
+        default = 31;
+        description = ''
+          How long to store RPC logs for in the database. Set 0 to
+          keep logs forever, or -1 to disable DB logging.
+        '';
+      };
+
+      bonjour = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Enable Bonjour auto-discovery, which allows clients over
+          your LAN to automatically discover Murmur servers.
+        '';
+      };
+
+      sendVersion = mkOption {
+        type = types.bool;
+        default = true;
+        description = "Send Murmur version in UDP response.";
+      };
+
+      registerName = mkOption {
+        type = types.str;
+        default = "";
+        description = ''
+          Public server registration name, and also the name of the
+          Root channel. Even if you don't publicly register your
+          server, you probably still want to set this.
+        '';
+      };
+
+      registerPassword = mkOption {
+        type = types.str;
+        default = "";
+        description = ''
+          Public server registry password, used authenticate your
+          server to the registry to prevent impersonation; required for
+          subsequent registry updates.
+        '';
+      };
+
+      registerUrl = mkOption {
+        type = types.str;
+        default = "";
+        description = "URL website for your server.";
+      };
+
+      registerHostname = mkOption {
+        type = types.str;
+        default = "";
+        description = ''
+          DNS hostname where your server can be reached. This is only
+          needed if you want your server to be accessed by its
+          hostname and not IP - but the name *must* resolve on the
+          internet properly.
+        '';
+      };
+
+      clientCertRequired = mkOption {
+        type = types.bool;
+        default = false;
+        description = "Require clients to authenticate via certificates.";
+      };
+
+      sslCert = mkOption {
+        type = types.str;
+        default = "";
+        description = "Path to your SSL certificate.";
+      };
+
+      sslKey = mkOption {
+        type = types.str;
+        default = "";
+        description = "Path to your SSL key.";
+      };
+    };
+  };
+
+  config = mkIf cfg.enable {
+    users.extraUsers.murmur = {
+      description     = "Murmur Service user";
+      home            = "/var/lib/murmur";
+      createHome      = true;
+      uid             = config.ids.uids.murmur;
+    };
+
+    systemd.services.murmur = {
+      description = "Murmur Chat Service";
+      wantedBy    = [ "multi-user.target" ];
+      after       = [ "network.target "];
+
+      serviceConfig = {
+        Type      = "forking";
+        PIDFile   = cfg.pidfile;
+        Restart   = "always";
+        User      = "murmur";
+        ExecStart = "${pkgs.murmur}/bin/murmurd -ini ${configFile}";
+        PermissionsStartOnly = true;
+      };
+
+      preStart = ''
+        mkdir -p /var/log/murmur
+        chown -R murmur /var/log/murmur
+      '';
+    };
+  };
+}

From 788354cc348d976eeb84e5e8041ea5563d931504 Mon Sep 17 00:00:00 2001
From: Austin Seipp <aseipp@pobox.com>
Date: Mon, 31 Mar 2014 23:33:46 -0500
Subject: [PATCH 027/567] nixos: add mumble test

This tests that both the client and server work. With screenshots!

Signed-off-by: Austin Seipp <aseipp@pobox.com>
---
 nixos/tests/default.nix |  1 +
 nixos/tests/mumble.nix  | 54 +++++++++++++++++++++++++++++++++++++++++
 2 files changed, 55 insertions(+)
 create mode 100644 nixos/tests/mumble.nix

diff --git a/nixos/tests/default.nix b/nixos/tests/default.nix
index 4aeb7f55ac39..955c87b2714e 100644
--- a/nixos/tests/default.nix
+++ b/nixos/tests/default.nix
@@ -25,6 +25,7 @@ with import ../lib/testing.nix { inherit system minimal; };
   mysql = makeTest (import ./mysql.nix);
   mysql_replication = makeTest (import ./mysql-replication.nix);
   munin = makeTest (import ./munin.nix);
+  mumble = makeTest (import ./mumble.nix);
   nat = makeTest (import ./nat.nix);
   nfs3 = makeTest (import ./nfs.nix { version = 3; });
   #nfs4 = makeTest (import ./nfs.nix { version = 4; });
diff --git a/nixos/tests/mumble.nix b/nixos/tests/mumble.nix
new file mode 100644
index 000000000000..509742f2899b
--- /dev/null
+++ b/nixos/tests/mumble.nix
@@ -0,0 +1,54 @@
+{ pkgs, ... }:
+
+let
+  client = { config, pkgs, ... }: {
+    imports = [ ./common/x11.nix ];
+    environment.systemPackages = [ pkgs.mumble ];
+  };
+in
+{
+  nodes = {
+    server = { config, pkgs, ... }: {
+      services.murmur.enable       = true;
+      services.murmur.registerName = "NixOS tests";
+    };
+
+    client1 = client;
+    client2 = client;
+  };
+
+  testScript = ''
+    startAll;
+
+    $server->waitForUnit("murmur.service");
+    $client1->waitForX;
+    $client2->waitForX;
+
+    $client1->execute("mumble mumble://client1\@server/test &");
+    $client2->execute("mumble mumble://client2\@server/test &");
+
+    $server->sleep(10); # Wait for Mumble UI to pop up
+
+    # cancel client audio configuration
+    $client1->sendKeys("esc");
+    $client2->sendKeys("esc");
+    $server->sleep(1);
+
+    # cancel client cert configuration
+    $client1->sendKeys("esc");
+    $client2->sendKeys("esc");
+    $server->sleep(1);
+
+    # accept server certificate
+    $client1->sendChars("y");
+    $client2->sendChars("y");
+
+    # Find clients in logs
+    $server->waitUntilSucceeds("grep -q 'client1' /var/log/murmur/murmurd.log");
+    $server->waitUntilSucceeds("grep -q 'client2' /var/log/murmur/murmurd.log");
+
+    $server->sleep(5); # wait to get screenshot
+    $client1->screenshot("screen1");
+    $client2->screenshot("screen2");
+  '';
+}

From 44190ff1b9124735dcc4212c6ae48eb8b9bcc225 Mon Sep 17 00:00:00 2001
From: Gergely Risko <errge@nilcons.com>
Date: Wed, 2 Apr 2014 23:34:31 +0200
Subject: [PATCH 028/567] Update ffmpeg dependency in oraclejdk7

---
 pkgs/development/compilers/jdk/jdk7-linux.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/compilers/jdk/jdk7-linux.nix b/pkgs/development/compilers/jdk/jdk7-linux.nix
index 106b9fa02d79..2d2c07c67ff7 100644
--- a/pkgs/development/compilers/jdk/jdk7-linux.nix
+++ b/pkgs/development/compilers/jdk/jdk7-linux.nix
@@ -9,7 +9,7 @@
 , glib
 , libxml2
 , libav_0_8
-, ffmpeg_0_6
+, ffmpeg
 , libxslt
 , mesa_noglu
 , freetype
@@ -149,7 +149,7 @@ stdenv.mkDerivation rec {
    * libXt is only needed on amd64
    */
   libraries =
-    [stdenv.gcc.libc glib libxml2 libav_0_8 ffmpeg_0_6 libxslt mesa_noglu xlibs.libXxf86vm alsaLib fontconfig freetype gnome.pango gnome.gtk cairo gdk_pixbuf] ++
+    [stdenv.gcc.libc glib libxml2 libav_0_8 ffmpeg libxslt mesa_noglu xlibs.libXxf86vm alsaLib fontconfig freetype gnome.pango gnome.gtk cairo gdk_pixbuf] ++
     (if swingSupport then [xlibs.libX11 xlibs.libXext xlibs.libXtst xlibs.libXi xlibs.libXp xlibs.libXt xlibs.libXrender stdenv.gcc.gcc] else []);
 
   passthru.mozillaPlugin = if installjdk then "/jre/lib/${architecture}/plugins" else "/lib/${architecture}/plugins";

From fee81c37398f547faddfff7ee10d945bb4513f09 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Tue, 1 Apr 2014 15:42:18 +0200
Subject: [PATCH 029/567] Always enable container logins

---
 nixos/modules/module-list.nix                    | 1 +
 nixos/modules/virtualisation/container-login.nix | 6 ++++--
 nixos/modules/virtualisation/containers.nix      | 1 -
 nixos/modules/virtualisation/nixos-container.pl  | 1 -
 4 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index 1c2fca1f88b5..a7bf69cfc792 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -294,6 +294,7 @@
   ./tasks/scsi-link-power-management.nix
   ./tasks/swraid.nix
   ./testing/service-runner.nix
+  ./virtualisation/container-login.nix
   ./virtualisation/containers.nix
   ./virtualisation/libvirtd.nix
   #./virtualisation/nova.nix
diff --git a/nixos/modules/virtualisation/container-login.nix b/nixos/modules/virtualisation/container-login.nix
index 09eaf90ae658..fb5e333b32ab 100644
--- a/nixos/modules/virtualisation/container-login.nix
+++ b/nixos/modules/virtualisation/container-login.nix
@@ -1,8 +1,10 @@
-{ config, pkgs, ... }:
+{ config, pkgs, lib, ... }:
+
+with lib;
 
 {
 
-  config = {
+  config = mkIf config.boot.isContainer {
 
     # Provide a login prompt on /var/lib/login.socket.  On the host,
     # you can connect to it by running ‘socat
diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix
index 9964cd431cd7..6c8a6f876c8d 100644
--- a/nixos/modules/virtualisation/containers.nix
+++ b/nixos/modules/virtualisation/containers.nix
@@ -105,7 +105,6 @@ in
                         security.initialRootPassword = mkDefault "!";
                         networking.hostName = mkDefault name;
                         networking.useDHCP = false;
-                        imports = [ ./container-login.nix ];
                       };
                     in [ extraConfig config.config ];
                   prefix = [ "containers" name ];
diff --git a/nixos/modules/virtualisation/nixos-container.pl b/nixos/modules/virtualisation/nixos-container.pl
index dfc856e8b667..b08ed0766583 100644
--- a/nixos/modules/virtualisation/nixos-container.pl
+++ b/nixos/modules/virtualisation/nixos-container.pl
@@ -116,7 +116,6 @@ with pkgs.lib;
   security.initialRootPassword = mkDefault "!";
   networking.hostName = mkDefault "$containerName";
   networking.useDHCP = false;
-  imports = [ <nixpkgs/nixos/modules/virtualisation/container-login.nix> ];
   $extraConfig
 }
 EOF

From 269926df0d1e0b03b9697f84e5b9720fa966b293 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Tue, 1 Apr 2014 15:43:27 +0200
Subject: [PATCH 030/567] container-login.nix -> container-config.nix

---
 nixos/modules/module-list.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index a7bf69cfc792..e6694b8c99b8 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -294,7 +294,7 @@
   ./tasks/scsi-link-power-management.nix
   ./tasks/swraid.nix
   ./testing/service-runner.nix
-  ./virtualisation/container-login.nix
+  ./virtualisation/container-config.nix
   ./virtualisation/containers.nix
   ./virtualisation/libvirtd.nix
   #./virtualisation/nova.nix

From 1ad9a654be1120a6844c9eb7520188e874178ebe Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Tue, 1 Apr 2014 16:02:53 +0200
Subject: [PATCH 031/567] Make starting a container synchronous

So now "systemctl start container@foo" will only return after the
container has reached multi-user.target.
---
 ...ntainer-login.nix => container-config.nix} | 14 +++++++++++
 nixos/modules/virtualisation/containers.nix   | 25 ++++++++++++++++---
 2 files changed, 36 insertions(+), 3 deletions(-)
 rename nixos/modules/virtualisation/{container-login.nix => container-config.nix} (79%)

diff --git a/nixos/modules/virtualisation/container-login.nix b/nixos/modules/virtualisation/container-config.nix
similarity index 79%
rename from nixos/modules/virtualisation/container-login.nix
rename to nixos/modules/virtualisation/container-config.nix
index fb5e333b32ab..3d107899e4fe 100644
--- a/nixos/modules/virtualisation/container-login.nix
+++ b/nixos/modules/virtualisation/container-config.nix
@@ -53,6 +53,20 @@ with lib;
           };
       };
 
+    systemd.services.container-startup-done =
+      { description = "Container Startup Notification";
+        wantedBy = [ "multi-user.target" ];
+        after = [ "multi-user.target" ];
+        script =
+          ''
+            if [ -p /var/lib/startup-done ]; then
+              echo done > /var/lib/startup-done
+            fi
+          '';
+        serviceConfig.Type = "oneshot";
+        serviceConfig.RemainAfterExit = true;
+      };
+
   };
 
 }
diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix
index 6c8a6f876c8d..9be79cec3695 100644
--- a/nixos/modules/virtualisation/containers.nix
+++ b/nixos/modules/virtualisation/containers.nix
@@ -150,11 +150,21 @@ in
         path = [ pkgs.iproute ];
 
         environment.INSTANCE = "%i";
+        environment.root = "/var/lib/containers/%i";
+
+        preStart =
+          ''
+            mkdir -p -m 0755 $root/var/lib
+
+            # Create a named pipe to get a signal when the container
+            # has finished booting.
+            rm -f $root/var/lib/startup-done
+            mkfifo $root/var/lib/startup-done
+         '';
 
         script =
           ''
-            root="/var/lib/containers/$INSTANCE"
-            mkdir -p -m 0755 "$root/etc"
+            mkdir -p -m 0755 "$root/etc" "$root/var/lib"
             if ! [ -e "$root/etc/os-release" ]; then
               touch "$root/etc/os-release"
             fi
@@ -209,6 +219,13 @@ in
               "$SYSTEM_PATH/init"
           '';
 
+        postStart =
+          ''
+            # This blocks until the container-startup-done service
+            # writes something to this pipe.
+            read x < $root/var/lib/startup-done
+          '';
+
         preStop =
           ''
             pid="$(cat /sys/fs/cgroup/systemd/machine/$INSTANCE.nspawn/system/tasks 2> /dev/null)"
@@ -238,8 +255,10 @@ in
               . "/etc/containers/$INSTANCE.conf"
             fi
             echo $SYSTEM_PATH/bin/switch-to-configuration test | \
-              ${pkgs.socat}/bin/socat unix:/var/lib/containers/$INSTANCE/var/lib/root-shell.socket -
+              ${pkgs.socat}/bin/socat unix:$root/var/lib/root-shell.socket -
           '';
+
+        serviceConfig.SyslogIdentifier = "container %i";
       };
 
     # Generate a configuration file in /etc/containers for each

From b0b3fa928ad572c67bc3545c2b160bd8aef79d7a Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Tue, 1 Apr 2014 16:35:11 +0200
Subject: [PATCH 032/567] Disable container support in containers

Systemd-nspawn doesn't support nesting, so providing nixos-container
inside a container doesn't make sense.
---
 nixos/modules/virtualisation/containers.nix | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix
index 9be79cec3695..097dd3993eb5 100644
--- a/nixos/modules/virtualisation/containers.nix
+++ b/nixos/modules/virtualisation/containers.nix
@@ -140,7 +140,7 @@ in
   };
 
 
-  config = {
+  config = mkIf (!config.boot.isContainer) {
 
     systemd.services."container@" =
       { description = "Container '%i'";
@@ -222,7 +222,8 @@ in
         postStart =
           ''
             # This blocks until the container-startup-done service
-            # writes something to this pipe.
+            # writes something to this pipe.  FIXME: it also hangs
+            # until the start timeout expires if systemd-nspawn exits.
             read x < $root/var/lib/startup-done
           '';
 

From 1e4fa227fe434c2042a2c690f62a7072afa36e93 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu, 3 Apr 2014 16:25:21 +0200
Subject: [PATCH 033/567] nixos-container: Don't destroy declarative containers

---
 nixos/modules/virtualisation/nixos-container.pl | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/nixos/modules/virtualisation/nixos-container.pl b/nixos/modules/virtualisation/nixos-container.pl
index b08ed0766583..e42a3edd0243 100644
--- a/nixos/modules/virtualisation/nixos-container.pl
+++ b/nixos/modules/virtualisation/nixos-container.pl
@@ -1,6 +1,7 @@
 #! @perl@
 
 use strict;
+use POSIX;
 use File::Path;
 use File::Slurp;
 use Fcntl ':flock';
@@ -148,6 +149,9 @@ sub stopContainer {
 }
 
 if ($action eq "destroy") {
+    die "$0: cannot destroy declarative container (remove it from your configuration.nix instead)\n"
+        unless POSIX::access($confFile, &POSIX::W_OK);
+
     my $root = "/var/lib/containers/$containerName";
     my $profileDir = "/nix/var/nix/profiles/per-container/$containerName";
 

From 819e7c9fbd57698ecbf3653067c497b5887cfd87 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu, 3 Apr 2014 16:26:03 +0200
Subject: [PATCH 034/567] Add a test for NixOS containers

---
 nixos/modules/installer/cd-dvd/channel.nix |  2 +-
 nixos/tests/containers.nix                 | 79 ++++++++++++++++++++++
 nixos/tests/default.nix                    |  1 +
 3 files changed, 81 insertions(+), 1 deletion(-)
 create mode 100644 nixos/tests/containers.nix

diff --git a/nixos/modules/installer/cd-dvd/channel.nix b/nixos/modules/installer/cd-dvd/channel.nix
index 9aca5b89d258..74428f66dfa1 100644
--- a/nixos/modules/installer/cd-dvd/channel.nix
+++ b/nixos/modules/installer/cd-dvd/channel.nix
@@ -28,7 +28,7 @@ in
 {
   # Provide the NixOS/Nixpkgs sources in /etc/nixos.  This is required
   # for nixos-install.
-  boot.postBootCommands =
+  boot.postBootCommands = mkAfter
     ''
       if ! [ -e /var/lib/nixos/did-channel-init ]; then
         echo "unpacking the NixOS/Nixpkgs sources..."
diff --git a/nixos/tests/containers.nix b/nixos/tests/containers.nix
new file mode 100644
index 000000000000..d72e80b71aff
--- /dev/null
+++ b/nixos/tests/containers.nix
@@ -0,0 +1,79 @@
+# Test for NixOS' container support.
+
+{ pkgs, ... }:
+
+{
+
+  machine =
+    { config, pkgs, ... }:
+    { imports = [ ../modules/installer/cd-dvd/channel.nix ];
+      virtualisation.writableStore = true;
+      virtualisation.memorySize = 768;
+
+      containers.webserver =
+        { privateNetwork = true;
+          hostAddress = "10.231.136.1";
+          localAddress = "10.231.136.2";
+          config =
+            { services.httpd.enable = true;
+              services.httpd.adminAddr = "foo@example.org";
+            };
+        };
+
+      virtualisation.pathsInNixDB = [ pkgs.stdenv ];
+    };
+
+  testScript =
+    ''
+      $machine->succeed("nixos-container list") =~ /webserver/;
+
+      # Start the webserver container.
+      $machine->succeed("nixos-container start webserver");
+
+      # Since "start" returns after the container has reached
+      # multi-user.target, we should now be able to access it.
+      my $ip = $machine->succeed("nixos-container show-ip webserver");
+      chomp $ip;
+      $machine->succeed("ping -c1 $ip");
+      $machine->succeed("curl --fail http://$ip/ > /dev/null");
+
+      # Stop the container.
+      $machine->succeed("nixos-container stop webserver");
+      $machine->fail("curl --fail --connect-timeout 2 http://$ip/ > /dev/null");
+
+      # Make sure we have a NixOS tree (required by ‘nixos-container create’).
+      $machine->succeed("nix-env -qa -A nixos.pkgs.hello >&2");
+
+      # Create some containers imperatively.
+      my $id1 = $machine->succeed("nixos-container create foo --ensure-unique-name");
+      chomp $id1;
+      $machine->log("created container $id1");
+
+      my $id2 = $machine->succeed("nixos-container create foo --ensure-unique-name");
+      chomp $id2;
+      $machine->log("created container $id2");
+
+      die if $id1 eq $id2;
+
+      my $ip1 = $machine->succeed("nixos-container show-ip $id1");
+      chomp $ip1;
+      my $ip2 = $machine->succeed("nixos-container show-ip $id2");
+      chomp $ip2;
+      die if $ip1 eq $ip2;
+
+      # Start one of them.
+      $machine->succeed("nixos-container start $id1");
+
+      # Execute commands via the root shell.
+      $machine->succeed("echo uname | nixos-container root-shell $id1") =~ /Linux/;
+      $machine->succeed("nixos-container set-root-password $id1 foobar");
+
+      # Destroy the containers.
+      $machine->succeed("nixos-container destroy $id1");
+      $machine->succeed("nixos-container destroy $id2");
+
+      # Destroying a declarative container should fail.
+      $machine->fail("nixos-container destroy webserver");
+    '';
+
+}
diff --git a/nixos/tests/default.nix b/nixos/tests/default.nix
index 5b68862a2cd1..20deed2a2492 100644
--- a/nixos/tests/default.nix
+++ b/nixos/tests/default.nix
@@ -8,6 +8,7 @@ with import ../lib/testing.nix { inherit system minimal; };
 {
   avahi = makeTest (import ./avahi.nix);
   bittorrent = makeTest (import ./bittorrent.nix);
+  containers = makeTest (import ./containers.nix);
   firefox = makeTest (import ./firefox.nix);
   firewall = makeTest (import ./firewall.nix);
   installer = makeTests (import ./installer.nix);

From 6c6d7dc11db0bf645c1799abd32af2be9094ee0b Mon Sep 17 00:00:00 2001
From: "William A. Kennington III" <william@wkennington.com>
Date: Thu, 3 Apr 2014 14:19:18 -0500
Subject: [PATCH 035/567] ssh: Don't set xauth if not running xserver

---
 nixos/modules/programs/ssh.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/nixos/modules/programs/ssh.nix b/nixos/modules/programs/ssh.nix
index a66679dff90d..89333533465e 100644
--- a/nixos/modules/programs/ssh.nix
+++ b/nixos/modules/programs/ssh.nix
@@ -31,7 +31,7 @@ in
 
       setXAuthLocation = mkOption {
         type = types.bool;
-        default = true;
+        default = config.services.xserver.enable;
         description = ''
           Whether to set the path to <command>xauth</command> for X11-forwarded connections.
           This causes a dependency on X11 packages.

From f82b678508a9c870866522c3779bd4377fe74757 Mon Sep 17 00:00:00 2001
From: Arvin Moezzi <moezzia@gmail.com>
Date: Fri, 4 Apr 2014 09:25:21 +0200
Subject: [PATCH 036/567] calibre: upgrade from 1.25.0 to 1.31.0

---
 pkgs/applications/misc/calibre/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/applications/misc/calibre/default.nix b/pkgs/applications/misc/calibre/default.nix
index f3d7c26fe5cc..c2d8e7979e45 100644
--- a/pkgs/applications/misc/calibre/default.nix
+++ b/pkgs/applications/misc/calibre/default.nix
@@ -4,11 +4,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "calibre-1.25.0";
+  name = "calibre-1.31.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/calibre/${name}.tar.xz";
-    sha256 = "1y221r5vgq426ldqjrx3qvgf3j3v2wncwzra747psvhwf95zd5fd";
+    sha256 = "1fl42y8ppw8s51v66dqsrg1ib28yi6z5779r9wfvdbl9v1clilfc";
   };
 
   inherit python;

From c69eb7c2c1d996ae07725ae9763a7484c2afb449 Mon Sep 17 00:00:00 2001
From: Alexander Kjeldaas <ak@formalprivacy.com>
Date: Tue, 13 Aug 2013 14:26:35 +0200
Subject: [PATCH 037/567] Remove timestamp from the kernel.

---
 pkgs/os-specific/linux/kernel/manual-config.nix | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/pkgs/os-specific/linux/kernel/manual-config.nix b/pkgs/os-specific/linux/kernel/manual-config.nix
index 6805355052a4..47f5c034c74d 100644
--- a/pkgs/os-specific/linux/kernel/manual-config.nix
+++ b/pkgs/os-specific/linux/kernel/manual-config.nix
@@ -102,7 +102,11 @@ let
         runHook postConfigure
       '';
 
-      buildFlags = [ "KBUILD_BUILD_VERSION=1-NixOS" platform.kernelTarget ] ++ optional isModular "modules";
+      buildFlags = [
+        "KBUILD_BUILD_VERSION=1-NixOS"
+        "KBUILD_BUILD_TIMESTAMP=Thu_Jan__1_00:00:01_UTC_1970"
+	platform.kernelTarget
+      ] ++ optional isModular "modules";
 
       installFlags = [
         "INSTALLKERNEL=${installkernel}"

From f67015cae49400eba539b9ec8b9920643581c77c Mon Sep 17 00:00:00 2001
From: Alexander Kjeldaas <ak@formalprivacy.com>
Date: Fri, 16 Aug 2013 02:42:11 +0200
Subject: [PATCH 038/567] Make initrd and the kernel builds repeatable.

---
 pkgs/build-support/kernel/cpio-clean.pl   | 20 ++++++++++++++++++++
 pkgs/build-support/kernel/make-initrd.nix |  5 +++--
 pkgs/build-support/kernel/make-initrd.sh  |  2 +-
 pkgs/top-level/all-packages.nix           |  4 +++-
 pkgs/top-level/perl-packages.nix          |  8 ++++++++
 5 files changed, 35 insertions(+), 4 deletions(-)
 create mode 100644 pkgs/build-support/kernel/cpio-clean.pl

diff --git a/pkgs/build-support/kernel/cpio-clean.pl b/pkgs/build-support/kernel/cpio-clean.pl
new file mode 100644
index 000000000000..de38dee49f0d
--- /dev/null
+++ b/pkgs/build-support/kernel/cpio-clean.pl
@@ -0,0 +1,20 @@
+use strict;
+
+# Make inode number, link info and mtime consistent in order to get a consistent hash.
+#
+# Author: Alexander Kjeldaas <ak@formalprivacy.com>
+
+use Archive::Cpio;
+
+my $cpio = Archive::Cpio->new;
+my $IN = \*STDIN;
+my $ino = 1;
+$cpio->read_with_handler($IN, sub {
+        my ($e) = @_;
+        $e->{inode} = $ino;
+        $ino++;
+        $e->{nlink} = 1;
+        $e->{mtime} = 1;
+	$cpio->write_one(\*STDOUT, $e);
+    });
+$cpio->write_trailer(\*STDOUT);
diff --git a/pkgs/build-support/kernel/make-initrd.nix b/pkgs/build-support/kernel/make-initrd.nix
index 4ddf0706e03e..0582ca553012 100644
--- a/pkgs/build-support/kernel/make-initrd.nix
+++ b/pkgs/build-support/kernel/make-initrd.nix
@@ -12,10 +12,10 @@
 # `contents = {object = ...; symlink = /init;}' is a typical
 # argument.
 
-{stdenv, perl, cpio, contents, ubootChooser, compressor}:
+{stdenv, perl, perlArchiveCpio, cpio, contents, ubootChooser, compressor}:
 
 let
-  inputsFun = ubootName : [perl cpio]
+  inputsFun = ubootName : [perl cpio perlArchiveCpio ]
     ++ stdenv.lib.optional (ubootName != null) [ (ubootChooser ubootName) ];
   makeUInitrdFun = ubootName : (ubootName != null);
 in
@@ -35,6 +35,7 @@ stdenv.mkDerivation {
   exportReferencesGraph =
     map (x: [("closure-" + baseNameOf x.symlink) x.object]) contents;
   pathsFromGraph = ./paths-from-graph.pl;
+  cpioClean = ./cpio-clean.pl;
 
   crossAttrs = {
     nativeBuildInputs = inputsFun stdenv.cross.platform.uboot;
diff --git a/pkgs/build-support/kernel/make-initrd.sh b/pkgs/build-support/kernel/make-initrd.sh
index f6cadaf02819..17b261f98407 100644
--- a/pkgs/build-support/kernel/make-initrd.sh
+++ b/pkgs/build-support/kernel/make-initrd.sh
@@ -36,7 +36,7 @@ storePaths=$(perl $pathsFromGraph closure-*)
 
 # Put the closure in a gzipped cpio archive.
 mkdir -p $out
-(cd root && find * -print0 | cpio -o -H newc --null | $compressor > $out/initrd)
+(cd root && find * -print0 | cpio -o -H newc --null | perl $cpioClean | $compressor > $out/initrd)
 
 if [ -n "$makeUInitrd" ]; then
     mv $out/initrd $out/initrd.gz
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index efe5e3834eaf..c1c5092b5e38 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -354,7 +354,7 @@ let
 
   makeInitrd = {contents, compressor ? "gzip -9"}:
     import ../build-support/kernel/make-initrd.nix {
-      inherit stdenv perl cpio contents ubootChooser compressor;
+      inherit stdenv perl perlArchiveCpio cpio contents ubootChooser compressor;
     };
 
   makeWrapper = makeSetupHook { } ../build-support/setup-hooks/make-wrapper.sh;
@@ -6179,6 +6179,8 @@ let
 
   ack = perlPackages.ack;
 
+  perlArchiveCpio = perlPackages.ArchiveCpio;
+
   perlcritic = perlPackages.PerlCritic;
   
   planetary_annihilation = callPackage ../games/planetaryannihilation { };
diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index dae501c78143..6ac7f76e3c51 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -200,6 +200,14 @@ let self = _self // overrides; _self = with self; {
     };
   };
 
+  ArchiveCpio = buildPerlPackage {
+    name = "Archive-Cpio-0.09";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/P/PI/PIXEL/Archive-Cpio-0.09.tar.gz;
+      sha256 = "1cf8k5zjykdbc1mn8lixlkij6jklwn6divzyq2grycj3rpd36g5c";
+    };
+  };
+
   ArchiveZip = buildPerlPackage {
     name = "Archive-Zip-1.16";
     src = fetchurl {

From 4aeb10b09a02a64f9839c61d02875e75531845cc Mon Sep 17 00:00:00 2001
From: Alexander Kjeldaas <ak@formalprivacy.com>
Date: Tue, 1 Oct 2013 13:14:14 +0200
Subject: [PATCH 039/567] Make cpufrequtils compilation pure.

---
 .../linux/cpufrequtils/default.nix            |  5 ++++
 .../remove-pot-creation-date.patch            | 24 +++++++++++++++++++
 2 files changed, 29 insertions(+)
 create mode 100644 pkgs/os-specific/linux/cpufrequtils/remove-pot-creation-date.patch

diff --git a/pkgs/os-specific/linux/cpufrequtils/default.nix b/pkgs/os-specific/linux/cpufrequtils/default.nix
index c94e22adb381..d056e60f2da3 100644
--- a/pkgs/os-specific/linux/cpufrequtils/default.nix
+++ b/pkgs/os-specific/linux/cpufrequtils/default.nix
@@ -10,6 +10,11 @@ stdenv.mkDerivation rec {
     sha256 = "127i38d4w1hv2dzdy756gmbhq25q3k34nqb2s0xlhsfhhdqs0lq0";
   };
 
+  patches = [
+    # I am not 100% sure that this is ok, but it breaks repeatable builds.
+    ./remove-pot-creation-date.patch
+  ];
+
   patchPhase = ''
     sed -e "s@= /usr/bin/@= @g" \
       -e "s@/usr/@$out/@" \
diff --git a/pkgs/os-specific/linux/cpufrequtils/remove-pot-creation-date.patch b/pkgs/os-specific/linux/cpufrequtils/remove-pot-creation-date.patch
new file mode 100644
index 000000000000..0116ed9eab0c
--- /dev/null
+++ b/pkgs/os-specific/linux/cpufrequtils/remove-pot-creation-date.patch
@@ -0,0 +1,24 @@
+diff -u cpufrequtils-008/Makefile cpufrequtils-008.new/Makefile
+--- cpufrequtils-008/Makefile	2012-05-06 01:17:18.000000000 +0200
++++ cpufrequtils-008.new/Makefile	2013-08-16 20:52:29.961086536 +0200
+@@ -205,7 +205,8 @@
+ 	@xgettext --default-domain=$(PACKAGE) --add-comments \
+ 		--keyword=_ --keyword=N_ $(UTIL_SRC) && \
+ 	test -f $(PACKAGE).po && \
+-	mv -f $(PACKAGE).po po/$(PACKAGE).pot
++	mv -f $(PACKAGE).po po/$(PACKAGE).pot && \
++        sed -i -e'/POT-Creation/d' po/*.pot
+ 
+ update-gmo: po/$(PACKAGE).pot
+ 	 @for HLANG in $(LANGUAGES); do \
+@@ -217,6 +218,7 @@
+ 			echo "msgmerge for $$HLANG failed!"; \
+ 			rm -f po/$$HLANG.new.po; \
+ 		fi; \
++		sed -i -e'/POT-Creation/d' po/*.po; \
+ 		msgfmt --statistics -o po/$$HLANG.gmo po/$$HLANG.po; \
+ 	done;
+ 
+Common subdirectories: cpufrequtils-008/man and cpufrequtils-008.new/man
+Common subdirectories: cpufrequtils-008/po and cpufrequtils-008.new/po
+Common subdirectories: cpufrequtils-008/utils and cpufrequtils-008.new/utils

From 63d91b75a1c613a330f0754edf8d81844a92d201 Mon Sep 17 00:00:00 2001
From: Shea Levy <shea@shealevy.com>
Date: Sat, 5 Apr 2014 14:43:00 -0400
Subject: [PATCH 040/567] Revert "Merge branch 'k3b' of
 git://github.com/ttuegel/nixpkgs"

It turns out this doesn't work due to setuid issues. I had been under
the impression that it was partially broken, but it is in fact totally
broken.

This reverts commit 718466074fa03de4dc1ab0d333fb43d8bbed2c8f, reversing
changes made to ea9c8d6a131502009ec583f1c7f785b511c36b8c.
---
 pkgs/applications/misc/k3b/default.nix | 20 ++------------------
 1 file changed, 2 insertions(+), 18 deletions(-)

diff --git a/pkgs/applications/misc/k3b/default.nix b/pkgs/applications/misc/k3b/default.nix
index 9f9e29f537e9..06565065ce54 100644
--- a/pkgs/applications/misc/k3b/default.nix
+++ b/pkgs/applications/misc/k3b/default.nix
@@ -1,12 +1,8 @@
 { stdenv, fetchurl, cmake, qt4, perl, shared_mime_info, libvorbis, taglib
 , flac, libsamplerate, libdvdread, lame, libsndfile, libmad, gettext
 , kdelibs, kdemultimedia, automoc4, phonon, libkcddb ? null
-, makeWrapper, cdrkit, cdrdao, dvdplusrwtools
 }:
 
-let
-  runtimeDeps = [ cdrkit cdrdao dvdplusrwtools ];
-in
 stdenv.mkDerivation rec {
   name = "k3b-2.0.2";
   
@@ -20,22 +16,10 @@ stdenv.mkDerivation rec {
       flac libsamplerate libdvdread lame libsndfile
       libmad gettext stdenv.gcc.libc
       kdelibs kdemultimedia automoc4 phonon
-      libkcddb makeWrapper
-    ]
-    # Runtime dependencies are *not* propagated so they are easy to override.
-    ++ runtimeDeps;
+      libkcddb
+    ];
 
   enableParallelBuilding = true;
-
-  postInstall =
-    # Wrap k3b with PATH to required tools, so they can be found without being
-    # installed in a profile. The PATH is suffixed so that profile-installed
-    # tools take preference.
-    let extraPath = stdenv.lib.makeSearchPath "bin" runtimeDeps;
-    in ''
-      wrapProgram "$out/bin/k3b" --suffix PATH : ${extraPath}
-      wrapProgram "$out/bin/k3bsetup" --suffix PATH : ${extraPath}
-    '';
                   
   meta = with stdenv.lib; {
     description = "CD/DVD Burning Application for KDE";

From dc614aff9294e085dc28f03f91eeaef54feabf0a Mon Sep 17 00:00:00 2001
From: Sander van der Burg <svanderburg@gmail.com>
Date: Sat, 5 Apr 2014 20:54:47 +0200
Subject: [PATCH 041/567] libresample: Add package

---
 .../libraries/libresample/default.nix         | 27 +++++++++++++++++++
 pkgs/top-level/all-packages.nix               |  2 ++
 2 files changed, 29 insertions(+)
 create mode 100644 pkgs/development/libraries/libresample/default.nix

diff --git a/pkgs/development/libraries/libresample/default.nix b/pkgs/development/libraries/libresample/default.nix
new file mode 100644
index 000000000000..9ef1ada0a424
--- /dev/null
+++ b/pkgs/development/libraries/libresample/default.nix
@@ -0,0 +1,27 @@
+{stdenv, fetchurl, cmake}:
+
+let
+  patch = fetchurl {
+    url = http://ftp.debian.org/debian/pool/main/libr/libresample/libresample_0.1.3-3.diff.gz;
+    sha256 = "063w8rqxw87fc89gas47vk0ll7xl8cy7d8g70gm1l62bqkkajklx";
+  };
+in
+stdenv.mkDerivation {
+  name = "libresample-0.1.3";
+  src = fetchurl {
+    url = http://ftp.debian.org/debian/pool/main/libr/libresample/libresample_0.1.3.orig.tar.gz;
+    sha256 = "05a8mmh1bw5afqx0kfdqzmph4x2npcs4idx0p0v6q95lwf22l8i0";
+  };
+  patches = [ patch ];
+  preConfigure = ''
+    cat debian/patches/1001_shlib-cmake.patch | patch -p1
+  '';
+  buildInputs = [ cmake ];
+  
+  meta = {
+    description = "A real-time library for sampling rate conversion library";
+    license = stdenv.lib.licenses.lgpl2Plus;
+    homepage = https://ccrma.stanford.edu/~jos/resample/Free_Resampling_Software.html;
+    maintainers = stdenv.lib.maintainers.sander;
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 7bcc84b5d18c..833a7ae86fd6 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -4955,6 +4955,8 @@ let
   libre = callPackage ../development/libraries/libre {};
   librem = callPackage ../development/libraries/librem {};
 
+  libresample = callPackage ../development/libraries/libresample {};
+
   libsamplerate = callPackage ../development/libraries/libsamplerate {
     stdenv = if stdenv.isDarwin
       then overrideGCC stdenv gccApple

From bd1a95ee608f70ffb673f4cb1c4dd109e1f32485 Mon Sep 17 00:00:00 2001
From: Shea Levy <shea@shealevy.com>
Date: Sat, 5 Apr 2014 15:01:05 -0400
Subject: [PATCH 042/567] Remove superfluous newline

---
 pkgs/top-level/all-packages.nix | 1 -
 1 file changed, 1 deletion(-)

diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 226f3323482f..988c3739f777 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -4940,7 +4940,6 @@ let
 
   libmtp = callPackage ../development/libraries/libmtp { };
 
-
   libmsgpack = callPackage ../development/libraries/libmsgpack { };
 
   libnatspec = callPackage ../development/libraries/libnatspec { };

From 9d544e633a2d592227cf78347331bbf44c2e28cb Mon Sep 17 00:00:00 2001
From: Shea Levy <shea@shealevy.com>
Date: Sat, 5 Apr 2014 15:55:16 -0400
Subject: [PATCH 043/567] mailutils is broken.

#887
---
 pkgs/tools/networking/mailutils/default.nix | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/pkgs/tools/networking/mailutils/default.nix b/pkgs/tools/networking/mailutils/default.nix
index 8ebe7df35e76..3ac82e51bf8b 100644
--- a/pkgs/tools/networking/mailutils/default.nix
+++ b/pkgs/tools/networking/mailutils/default.nix
@@ -51,5 +51,8 @@ stdenv.mkDerivation rec {
 
     # Some of the dependencies fail to build on {cyg,dar}win.
     platforms = stdenv.lib.platforms.gnu;
+
+    # Tests fail since gcc 4.8
+    broken = true;
   };
 }

From 47f0f34fca89a64c33671b45ddda8d37b3d5cf8d Mon Sep 17 00:00:00 2001
From: "William A. Kennington III" <william@wkennington.com>
Date: Thu, 3 Apr 2014 14:07:52 -0500
Subject: [PATCH 044/567] nmap: Build the non-graphical version by default

---
 pkgs/tools/security/nmap/default.nix | 35 +++++++++++++++++-----------
 pkgs/top-level/all-packages.nix      |  5 +++-
 2 files changed, 26 insertions(+), 14 deletions(-)

diff --git a/pkgs/tools/security/nmap/default.nix b/pkgs/tools/security/nmap/default.nix
index a6452cdb89b4..56964c1f6923 100644
--- a/pkgs/tools/security/nmap/default.nix
+++ b/pkgs/tools/security/nmap/default.nix
@@ -1,10 +1,18 @@
-{ stdenv, fetchurl, libpcap, libX11, gtk, pkgconfig
-, openssl, python, pygtk, makeWrapper, pygobject
-, pycairo, pysqlite
+{ stdenv, fetchurl, libpcap, pkgconfig, openssl
+, graphicalSupport ? false
+, libX11 ? null
+, gtk ? null
+, python ? null
+, pygtk ? null
+, makeWrapper ? null
+, pygobject ? null
+, pycairo ? null
+, pysqlite ? null
 }:
 
+with stdenv.lib;
 stdenv.mkDerivation rec {
-  name = "nmap-${version}";
+  name = "nmap${optionalString graphicalSupport "-graphical"}-${version}";
   version = "6.40";
 
   src = fetchurl {
@@ -12,21 +20,22 @@ stdenv.mkDerivation rec {
     sha256 = "491f77d8b3fb3bb38ba4e3850011fe6fb43bbe197f9382b88cb59fa4e8f7a401";
   };
 
-  patches = [ ./zenmap.patch ];
+  patches = optional graphicalSupport ./zenmap.patch;
 
-  postInstall =
-    ''
+  postInstall = optionalString graphicalSupport ''
       wrapProgram $out/bin/zenmap --prefix PYTHONPATH : "$(toPythonPath $out)" --prefix PYTHONPATH : "$PYTHONPATH" --prefix PYTHONPATH : $(toPythonPath ${pygtk})/gtk-2.0 --prefix PYTHONPATH : $(toPythonPath ${pygobject})/gtk-2.0 --prefix PYTHONPATH : $(toPythonPath ${pycairo})/gtk-2.0
-    '';
+  '';
 
-  buildInputs =
-    [ libpcap libX11 gtk pkgconfig openssl python pygtk makeWrapper pysqlite ];
+  buildInputs = [ libpcap pkgconfig openssl ]
+    ++ optionals graphicalSupport [
+      libX11 gtk python pygtk makeWrapper pysqlite pygobject pycairo
+    ];
 
   meta = {
     description = "A free and open source utility for network discovery and security auditing.";
     homepage    = "http://www.nmap.org";
-    license     = stdenv.lib.licenses.gpl2;
-    platforms   = stdenv.lib.platforms.linux;
-    maintainers = with stdenv.lib.maintainers; [ mornfall thoughtpolice ];
+    license     = licenses.gpl2;
+    platforms   = platforms.linux;
+    maintainers = with maintainers; [ mornfall thoughtpolice ];
   };
 }
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index efe5e3834eaf..7310cf6852fc 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1539,8 +1539,11 @@ let
 
   npth = callPackage ../development/libraries/npth {};
 
-  nmap = callPackage ../tools/security/nmap {
+  nmap = callPackage ../tools/security/nmap { };
+
+  nmap_graphical = callPackage ../tools/security/nmap {
     inherit (pythonPackages) pysqlite;
+    graphicalSupport = true;
   };
 
   notbit = callPackage ../applications/networking/notbit { };

From 923372335321e996b0088ca6aa43ab43fbf3729b Mon Sep 17 00:00:00 2001
From: Michael Raskin <7c6f434c@mail.ru>
Date: Sun, 6 Apr 2014 00:56:57 +0400
Subject: [PATCH 045/567] Temporary patch for Wireshark build

---
 pkgs/applications/networking/sniffers/wireshark/default.nix | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/pkgs/applications/networking/sniffers/wireshark/default.nix b/pkgs/applications/networking/sniffers/wireshark/default.nix
index ed2ce4c12c00..256681ec54e2 100644
--- a/pkgs/applications/networking/sniffers/wireshark/default.nix
+++ b/pkgs/applications/networking/sniffers/wireshark/default.nix
@@ -17,6 +17,10 @@ stdenv.mkDerivation {
     geoip libnl c-ares gtk python
   ];
 
+  preConfigure = ''
+    sed -re 's/g_memmove/memmove/' -i $(grep -rl g_memmove .)
+  '';
+
   configureFlags = "--disable-usr-local --disable-silent-rules --with-gtk2 --without-gtk3 --without-qt --with-ssl";
 
   desktopItem = makeDesktopItem {

From 28ab3acb58b0e5a5ffa932c9c6eb19db05a6c334 Mon Sep 17 00:00:00 2001
From: "William A. Kennington III" <william@wkennington.com>
Date: Sat, 5 Apr 2014 13:41:23 -0500
Subject: [PATCH 046/567] su: Make the su package a provider of only the su
 binary

Additionally, provide su with the base system and remove su from the
util-linux package as it is now provided by shadow.
---
 nixos/modules/config/system-path.nix          | 1 +
 pkgs/os-specific/linux/shadow/default.nix     | 8 +++++++-
 pkgs/os-specific/linux/util-linux/default.nix | 4 ++++
 pkgs/top-level/all-packages.nix               | 2 +-
 4 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/nixos/modules/config/system-path.nix b/nixos/modules/config/system-path.nix
index 2f61947c3bcc..1913e17f929d 100644
--- a/nixos/modules/config/system-path.nix
+++ b/nixos/modules/config/system-path.nix
@@ -46,6 +46,7 @@ let
       pkgs.rsync
       pkgs.strace
       pkgs.sysvtools
+      pkgs.su
       pkgs.time
       pkgs.usbutils
       pkgs.utillinux
diff --git a/pkgs/os-specific/linux/shadow/default.nix b/pkgs/os-specific/linux/shadow/default.nix
index 1055fccd8aa3..9d024ae3109c 100644
--- a/pkgs/os-specific/linux/shadow/default.nix
+++ b/pkgs/os-specific/linux/shadow/default.nix
@@ -26,6 +26,8 @@ stdenv.mkDerivation rec {
 
   patches = [ ./keep-path.patch dots_in_usernames ];
 
+  outputs = [ "out" "su" ];
+
   # Assume System V `setpgrp (void)', which is the default on GNU variants
   # (`AC_FUNC_SETPGRP' is not cross-compilation capable.)
   preConfigure = "export ac_cv_func_setpgrp_void=yes";
@@ -35,10 +37,14 @@ stdenv.mkDerivation rec {
       substituteInPlace lib/nscd.c --replace /usr/sbin/nscd ${glibc}/sbin/nscd
     '';
 
-  # Don't install ‘groups’, since coreutils already provides it.
   postInstall =
     ''
+      # Don't install ‘groups’, since coreutils already provides it.
       rm $out/bin/groups $out/share/man/man1/groups.*
+
+      # Move the su binary into the su package
+      mkdir -p $su/bin
+      mv $out/bin/su $su/bin
     '';
 
   meta = {
diff --git a/pkgs/os-specific/linux/util-linux/default.nix b/pkgs/os-specific/linux/util-linux/default.nix
index 3f676d37dd87..ec43ee1e64f4 100644
--- a/pkgs/os-specific/linux/util-linux/default.nix
+++ b/pkgs/os-specific/linux/util-linux/default.nix
@@ -36,6 +36,10 @@ stdenv.mkDerivation rec {
     ++ stdenv.lib.optional (ncurses != null) ncurses
     ++ stdenv.lib.optional (perl != null) perl;
 
+  postInstall = ''
+    rm $out/bin/su # su should be supplied by the su package (shadow)
+  '';
+
   enableParallelBuilding = true;
 
   meta = {
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 1daa2eba8a5b..da971258d50b 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1995,7 +1995,7 @@ let
 
   stunnel = callPackage ../tools/networking/stunnel { };
 
-  su = shadow;
+  su = shadow.su;
 
   surfraw = callPackage ../tools/networking/surfraw { };
 

From 31ab1fd7aee16ac755a08067c91def333a09d521 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= <bjorn.forsman@gmail.com>
Date: Sun, 6 Apr 2014 00:21:30 +0200
Subject: [PATCH 047/567] teamviewer: fix brokenness after updates / GC

Teamviewer puts symlinks to nix store paths in ~/.teamviewer. When those
paths become garbage collected, teamviewer crashes upon start because of
those broken symlinks. An easy workaround to this behaviour is simply to
delete all symlinks before we start teamviewer. Teamviewer will fixup
the symlinks, just like it did the first time the user ran it.
---
 .../networking/remote/teamviewer/default.nix             | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/pkgs/applications/networking/remote/teamviewer/default.nix b/pkgs/applications/networking/remote/teamviewer/default.nix
index 8c6295197643..1bf40eabfae4 100644
--- a/pkgs/applications/networking/remote/teamviewer/default.nix
+++ b/pkgs/applications/networking/remote/teamviewer/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, libX11, libXtst, libXext, libXdamage, libXfixes, wine, makeWrapper
-, bash }:
+, bash, findutils, coreutils }:
 
 assert stdenv.system == "i686-linux";
 let
@@ -31,6 +31,13 @@ stdenv.mkDerivation {
 
     cat > $out/bin/teamviewer << EOF
     #!${bash}/bin/sh
+    # Teamviewer puts symlinks to nix store paths in ~/.teamviewer. When those
+    # paths become garbage collected, teamviewer crashes upon start because of
+    # those broken symlinks. An easy workaround to this behaviour is simply to
+    # delete all symlinks before we start teamviewer. Teamviewer will fixup the
+    # symlinks, just like it did the first time the user ran it.
+    ${findutils}/bin/find "\$HOME"/.teamviewer/*/*/"Program Files/TeamViewer/" -type l -print0 | ${findutils}/bin/xargs -0 ${coreutils}/bin/rm
+
     export LD_LIBRARY_PATH=${toldpath}\''${LD_LIBRARY_PATH:+:\$LD_LIBRARY_PATH}
     export PATH=${topath}\''${PATH:+:\$PATH}
     $out/share/teamviewer/wrapper wine "c:\Program Files\TeamViewer\Version7\TeamViewer.exe" "\$@"

From a68c12d35b64bf4b97e772860967af1ea085cdf4 Mon Sep 17 00:00:00 2001
From: Shea Levy <shea@shealevy.com>
Date: Sat, 5 Apr 2014 18:39:53 -0400
Subject: [PATCH 048/567] git: Remove phony not-supported wrappers.

Fixes #1751
---
 .../version-management/git-and-tools/git/default.nix   | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

diff --git a/pkgs/applications/version-management/git-and-tools/git/default.nix b/pkgs/applications/version-management/git-and-tools/git/default.nix
index 9be32b9accdf..9eaa7d219b0b 100644
--- a/pkgs/applications/version-management/git-and-tools/git/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git/default.nix
@@ -47,8 +47,7 @@ stdenv.mkDerivation {
   postInstall =
     ''
       notSupported() {
-        echo -e "#\!/bin/sh\necho '`basename $1` not supported, $2'\nexit 1" > "$1"
-        chmod +x $1
+        unlink $1 || true
       }
 
       # Install git-subtree.
@@ -94,7 +93,7 @@ stdenv.mkDerivation {
                      --set GITPERLLIB "$gitperllib"   \
                      --prefix PATH : "${svn}/bin" ''
        else '' # replace git-svn by notification script
-        notSupported $out/libexec/git-core/git-svn "reinstall with config git = { svnSupport = true } set"
+        notSupported $out/libexec/git-core/git-svn
        '')
 
    + (if sendEmailSupport then
@@ -106,7 +105,7 @@ stdenv.mkDerivation {
         wrapProgram $out/libexec/git-core/git-send-email \
                      --set GITPERLLIB "$gitperllib" ''
        else '' # replace git-send-email by notification script
-        notSupported $out/libexec/git-core/git-send-email "reinstall with config git = { sendEmailSupport = true } set"
+        notSupported $out/libexec/git-core/git-send-email
        '')
 
    + stdenv.lib.optionalString withManual ''# Install man pages and Info manual
@@ -123,8 +122,7 @@ stdenv.mkDerivation {
      '' else ''
        # Don't wrap Tcl/Tk, replace them by notification scripts
        for prog in bin/gitk libexec/git-core/git-gui; do
-         notSupported "$out/$prog" \
-                      "reinstall with config git = { guiSupport = true; } set"
+         notSupported "$out/$prog"
        done
      '');
 

From 09cdc6edf55a3db1bca5104196a1edb48c5997c5 Mon Sep 17 00:00:00 2001
From: Emery Hemingway <emery@vfemail.net>
Date: Sat, 5 Apr 2014 21:31:40 -0400
Subject: [PATCH 049/567] f2fs-tools,ncdc: set platform and add myself to
 maintainers

---
 pkgs/applications/networking/p2p/ncdc/default.nix | 2 ++
 pkgs/tools/filesystems/f2fs-tools/default.nix     | 2 ++
 2 files changed, 4 insertions(+)

diff --git a/pkgs/applications/networking/p2p/ncdc/default.nix b/pkgs/applications/networking/p2p/ncdc/default.nix
index a06185ed2ae3..794f6fe43087 100644
--- a/pkgs/applications/networking/p2p/ncdc/default.nix
+++ b/pkgs/applications/networking/p2p/ncdc/default.nix
@@ -15,5 +15,7 @@ stdenv.mkDerivation rec {
     description = "modern and lightweight direct connect client with a friendly ncurses interface";
     homepage = http://dev.yorhel.nl/ncdc;
     license = stdenv.lib.licenses.mit;
+    platforms = stdenv.lib.platforms.linux; # arbitrary
+    maintainers = [ stdenv.lib.maintainers.emery ];
   };
 }
diff --git a/pkgs/tools/filesystems/f2fs-tools/default.nix b/pkgs/tools/filesystems/f2fs-tools/default.nix
index 72f417ff10ba..f52ead32acd4 100644
--- a/pkgs/tools/filesystems/f2fs-tools/default.nix
+++ b/pkgs/tools/filesystems/f2fs-tools/default.nix
@@ -21,5 +21,7 @@ stdenv.mkDerivation rec {
     homepage = "http://git.kernel.org/cgit/linux/kernel/git/jaegeuk/f2fs-tools.git/";
     description = "Userland tools for the f2fs filesystem";
     license = stdenv.lib.licenses.gpl2;
+    platforms = stdenv.lib.platforms.linux;
+    maintainers = [ stdenv.lib.maintainers.emery ];
   };
 }

From 8d0259caf4f551cc72cceff7766161e14d11632f Mon Sep 17 00:00:00 2001
From: Austin Seipp <aseipp@pobox.com>
Date: Wed, 2 Apr 2014 11:01:25 -0500
Subject: [PATCH 050/567] nixos: reserve some uids/gids

I have some NixOS modules that I keep out of tree, and having UIDs/GIDs
reserved is quite helpful.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
---
 nixos/modules/misc/ids.nix | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/nixos/modules/misc/ids.nix b/nixos/modules/misc/ids.nix
index 91df29236b8f..b7912b6630e5 100644
--- a/nixos/modules/misc/ids.nix
+++ b/nixos/modules/misc/ids.nix
@@ -126,6 +126,9 @@
       monetdb = 115;
       rippled = 116;
       murmur = 117;
+      foundationdb = 118;
+      newrelic = 119;
+      starbound = 120;
 
       # When adding a uid, make sure it doesn't match an existing gid.
 
@@ -225,6 +228,9 @@
       systemd-journal-gateway = 110;
       notbit = 111;
       monetdb = 115;
+      foundationdb = 118;
+      newrelic = 119;
+      starbound = 120;
 
       # When adding a gid, make sure it doesn't match an existing uid.
 

From 35ccaa2e52c8d8c09118c72c8ed5c167a394dcfa Mon Sep 17 00:00:00 2001
From: Luca Bruno <lucabru@src.gnome.org>
Date: Sat, 5 Apr 2014 15:51:42 +0200
Subject: [PATCH 051/567] Fix gsettings schemas usage for several packages due
 to #1901

Also add icons to epiphany
---
 pkgs/applications/graphics/shotwell/default.nix   | 10 ++++++++--
 pkgs/applications/misc/surf/default.nix           |  7 +++++--
 .../networking/browsers/dwb/default.nix           |  6 +++---
 .../networking/browsers/vimb/default.nix          |  6 +++---
 .../networking/browsers/vimprobable2/default.nix  |  7 +++++--
 .../telepathy/logger/default.nix                  |  2 --
 .../networking/newsreaders/liferea/default.nix    |  5 ++---
 pkgs/desktops/gnome-3/core/baobab/default.nix     |  2 +-
 pkgs/desktops/gnome-3/core/dconf/default.nix      | 12 ++++++++++--
 pkgs/desktops/gnome-3/core/empathy/default.nix    |  8 ++++----
 pkgs/desktops/gnome-3/core/eog/default.nix        |  6 ++++--
 pkgs/desktops/gnome-3/core/epiphany/default.nix   | 15 +++++++--------
 pkgs/desktops/gnome-3/core/evince/default.nix     |  8 ++++----
 .../core/evolution-data-server/default.nix        |  2 --
 pkgs/desktops/gnome-3/core/folks/default.nix      |  2 --
 pkgs/desktops/gnome-3/core/gcr/default.nix        |  9 +++++++--
 .../gnome-3/core/gnome-calculator/default.nix     |  6 ++----
 .../gnome-3/core/gnome-control-center/default.nix |  6 ++++--
 .../gnome-3/core/gnome-disk-utility/default.nix   |  6 ++----
 .../gnome-3/core/gnome-font-viewer/default.nix    |  6 ++----
 .../gnome-3/core/gnome-keyring/default.nix        |  6 +++---
 .../gnome-3/core/gnome-screenshot/default.nix     |  6 ++----
 .../gnome-3/core/gnome-session/default.nix        |  5 +++--
 .../core/gnome-settings-daemon/default.nix        |  4 ++--
 .../desktops/gnome-3/core/gnome-shell/default.nix |  8 +++-----
 .../gnome-3/core/gnome-system-log/default.nix     |  6 ++----
 .../gnome-3/core/gnome-terminal/default.nix       |  8 ++++----
 pkgs/desktops/gnome-3/core/gucharmap/default.nix  |  6 ++----
 pkgs/desktops/gnome-3/core/mutter/default.nix     |  9 +++++++--
 pkgs/desktops/gnome-3/core/nautilus/default.nix   |  4 ++--
 pkgs/desktops/gnome-3/core/vino/default.nix       |  4 ++--
 pkgs/desktops/gnome-3/core/yelp/default.nix       |  6 ++----
 pkgs/desktops/gnome-3/misc/gitg/default.nix       | 11 +++--------
 pkgs/development/libraries/gvfs/default.nix       |  4 ++--
 pkgs/development/libraries/ibus/default.nix       |  4 ++--
 .../networking/network-manager-applet/default.nix | 11 +++++------
 36 files changed, 119 insertions(+), 114 deletions(-)

diff --git a/pkgs/applications/graphics/shotwell/default.nix b/pkgs/applications/graphics/shotwell/default.nix
index 2a3ed77609fb..1953f951d169 100644
--- a/pkgs/applications/graphics/shotwell/default.nix
+++ b/pkgs/applications/graphics/shotwell/default.nix
@@ -33,11 +33,17 @@ in stdenv.mkDerivation rec {
   preConfigure = ''
     patchShebangs .
   '';
-  
+
   postInstall = ''
+    mkdir -p $out/share/gsettings-schemas/$name
+    mv $out/share/glib-2.0 $out/share/gsettings-schemas/$name/
+  '';
+
+  preFixup = ''
     wrapProgram "$out/bin/shotwell" \
      --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
-     --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${gnome3.gsettings_desktop_schemas}/share:${gtk3}/share:$out/share"
+     --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${gtk3}/share:$out/share:$GSETTINGS_SCHEMAS_PATH"
+    rm $out/share/icons/hicolor/icon-theme.cache
   '';
 
 
diff --git a/pkgs/applications/misc/surf/default.nix b/pkgs/applications/misc/surf/default.nix
index 42792ba8f91d..651cfcca4067 100644
--- a/pkgs/applications/misc/surf/default.nix
+++ b/pkgs/applications/misc/surf/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
     sha256 = "01b8hq8z2wd7ssym5bypx2b15mrs1lhgkrcgxf700kswxvxcrhgx";
   };
 
-  buildInputs = [ gtk makeWrapper webkit pkgconfig glib libsoup ];
+  buildInputs = [ gtk makeWrapper webkit gsettings_desktop_schemas pkgconfig glib libsoup ];
 
   # Allow users set their own list of patches
   inherit patches;
@@ -21,9 +21,12 @@ stdenv.mkDerivation rec {
   preConfigure = [ ''sed -i "s@PREFIX = /usr/local@PREFIX = $out@g" config.mk'' ];
   installPhase = ''
     make PREFIX=/ DESTDIR=$out install
+  '';
+
+  preFixup = ''
     wrapProgram "$out/bin/surf" \
       --prefix GIO_EXTRA_MODULES : ${glib_networking}/lib/gio/modules \
-      --prefix XDG_DATA_DIRS : "${gsettings_desktop_schemas}/share"
+      --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
   '';
 
   meta = {
diff --git a/pkgs/applications/networking/browsers/dwb/default.nix b/pkgs/applications/networking/browsers/dwb/default.nix
index e14996d35f4a..dcdbe724194b 100644
--- a/pkgs/applications/networking/browsers/dwb/default.nix
+++ b/pkgs/applications/networking/browsers/dwb/default.nix
@@ -10,17 +10,17 @@ stdenv.mkDerivation {
     sha256 = "145sq2wv0s0n32cwpwgy59ff6ppcv80ialak7nnj1rpqicfqb72h";
   };
 
-  buildInputs = [ pkgconfig makeWrapper libsoup webkit gtk3 gnutls json_c m4  ];
+  buildInputs = [ pkgconfig makeWrapper gsettings_desktop_schemas libsoup webkit gtk3 gnutls json_c m4  ];
 
   # There are Xlib and gtk warnings therefore I have set Wno-error
   preBuild=''
     makeFlagsArray=(CPPFLAGS="-Wno-error" GTK=3 PREFIX=$out);
   '';
 
-  postInstall=''
+  preFixup=''
     wrapProgram "$out/bin/dwb" \
      --prefix GIO_EXTRA_MODULES : "${glib_networking}/lib/gio/modules" \
-     --prefix XDG_DATA_DIRS : "${gsettings_desktop_schemas}/share:$out/share"
+     --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH:$out/share"
     wrapProgram "$out/bin/dwbem" \
      --prefix GIO_EXTRA_MODULES : "${glib_networking}/lib/gio/modules"
   '';
diff --git a/pkgs/applications/networking/browsers/vimb/default.nix b/pkgs/applications/networking/browsers/vimb/default.nix
index 10bca4848dd2..6cb52be775c6 100644
--- a/pkgs/applications/networking/browsers/vimb/default.nix
+++ b/pkgs/applications/networking/browsers/vimb/default.nix
@@ -16,14 +16,14 @@ stdenv.mkDerivation rec {
     sed -i s,/etc/ssl/certs/ca-certificates.crt,/etc/ssl/certs/ca-bundle.crt, src/default.h
   '';
 
-  buildInputs = [ makeWrapper gtk libsoup pkgconfig webkit ];
+  buildInputs = [ makeWrapper gtk libsoup pkgconfig webkit gsettings_desktop_schemas ];
 
   makeFlags = [ "PREFIX=$(out)" ];
 
-  postInstall = ''
+  preFixup = ''
     wrapProgram "$out/bin/vimb" \
       --prefix GIO_EXTRA_MODULES : "${glib_networking}/lib/gio/modules" \
-      --prefix XDG_DATA_DIRS : "${gsettings_desktop_schemas}/share"
+      --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
   '';
 
   meta = {
diff --git a/pkgs/applications/networking/browsers/vimprobable2/default.nix b/pkgs/applications/networking/browsers/vimprobable2/default.nix
index 2a44449c7506..f723e3791f3e 100644
--- a/pkgs/applications/networking/browsers/vimprobable2/default.nix
+++ b/pkgs/applications/networking/browsers/vimprobable2/default.nix
@@ -14,13 +14,16 @@ stdenv.mkDerivation rec {
     sed -i s,/etc/ssl/certs/ca-certificates.crt,/etc/ssl/certs/ca-bundle.crt, config.h
   '';
 
-  buildInputs = [ makeWrapper gtk libsoup libX11 perl pkgconfig webkit ];
+  buildInputs = [ makeWrapper gtk libsoup libX11 perl pkgconfig webkit gsettings_desktop_schemas ];
 
   installPhase = ''
     make PREFIX=/ DESTDIR=$out install
+  '';
+
+  preFixup = ''
     wrapProgram "$out/bin/vimprobable2" \
       --prefix GIO_EXTRA_MODULES : "${glib_networking}/lib/gio/modules" \
-      --prefix XDG_DATA_DIRS : "${gsettings_desktop_schemas}/share"
+      --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
   '';
 
   meta = {
diff --git a/pkgs/applications/networking/instant-messengers/telepathy/logger/default.nix b/pkgs/applications/networking/instant-messengers/telepathy/logger/default.nix
index bd8cffd40e4b..173dfe9c929f 100644
--- a/pkgs/applications/networking/instant-messengers/telepathy/logger/default.nix
+++ b/pkgs/applications/networking/instant-messengers/telepathy/logger/default.nix
@@ -19,8 +19,6 @@ stdenv.mkDerivation rec {
 
   configureFlags = "--enable-call";
 
-  installFlags = "gsettingsschemadir=\${out}/share/telepathy/logger/glib-2.0/schemas/";
-
   meta = {
     description = "Logger service for Telepathy framework";
     homepage = http://telepathy.freedesktop.org/wiki/Logger ;
diff --git a/pkgs/applications/networking/newsreaders/liferea/default.nix b/pkgs/applications/networking/newsreaders/liferea/default.nix
index 83eeb18d126d..650e3237fe41 100644
--- a/pkgs/applications/networking/newsreaders/liferea/default.nix
+++ b/pkgs/applications/networking/newsreaders/liferea/default.nix
@@ -28,16 +28,15 @@ stdenv.mkDerivation rec {
   ];
 
   preFixup = ''
-    rm $out/share/icons/hicolor/icon-theme.cache'';
+    rm $out/share/icons/hicolor/icon-theme.cache
 
-  postInstall  = ''
     for f in "$out"/bin/*; do
       wrapProgram "$f" \
         --prefix PYTHONPATH : "$(toPythonPath $out):$(toPythonPath ${pygobject3})" \
         --prefix LD_LIBRARY_PATH : "${gnome3.libgnome_keyring}/lib" \
         --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
         --prefix GIO_EXTRA_MODULES : "${gnome3.dconf}/lib/gio/modules:${glib_networking}/lib/gio/modules" \
-        --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${gnome3.gnome_icon_theme}/share:${gnome3.gsettings_desktop_schemas}/share:${gnome3.gtk}/share:$out/share"
+        --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${gnome3.gnome_icon_theme}/share:${gnome3.gtk}/share:$out/share:$GSETTINGS_SCHEMAS_PATH"
     done
   '';
 
diff --git a/pkgs/desktops/gnome-3/core/baobab/default.nix b/pkgs/desktops/gnome-3/core/baobab/default.nix
index 5121f1f69bec..9381f45105df 100644
--- a/pkgs/desktops/gnome-3/core/baobab/default.nix
+++ b/pkgs/desktops/gnome-3/core/baobab/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
     rm $out/share/icons/HighContrast/icon-theme.cache
     wrapProgram "$out/bin/baobab" \
       --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
-      --prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/share:${gnome3.gsettings_desktop_schemas}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
+      --prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/core/dconf/default.nix b/pkgs/desktops/gnome-3/core/dconf/default.nix
index 4ee8143bb2b9..a485b18c5e5f 100644
--- a/pkgs/desktops/gnome-3/core/dconf/default.nix
+++ b/pkgs/desktops/gnome-3/core/dconf/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, vala, libxslt, pkgconfig, glib, dbus_glib, gnome3
-, libxml2, intltool, docbook_xsl_ns, docbook_xsl }:
+, libxml2, intltool, docbook_xsl_ns, docbook_xsl, makeWrapper }:
 
 stdenv.mkDerivation rec {
   name = "dconf-${version}";
@@ -11,7 +11,15 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [ vala libxslt pkgconfig glib dbus_glib gnome3.gtk libxml2
-                  intltool docbook_xsl docbook_xsl_ns ];
+                  intltool docbook_xsl docbook_xsl_ns makeWrapper ];
+
+  preFixup = ''
+    wrapProgram "$out/bin/dconf-editor" \
+      --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
+
+    rm $out/lib/gio/modules/giomodule.cache
+    rm $out/share/icons/hicolor/icon-theme.cache
+  '';
 
   meta = with stdenv.lib; {
     platforms = platforms.linux;
diff --git a/pkgs/desktops/gnome-3/core/empathy/default.nix b/pkgs/desktops/gnome-3/core/empathy/default.nix
index 1f7a027fd3e5..a227c1422d69 100644
--- a/pkgs/desktops/gnome-3/core/empathy/default.nix
+++ b/pkgs/desktops/gnome-3/core/empathy/default.nix
@@ -39,12 +39,12 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
-  installFlags = "gsettingsschemadir=\${out}/share/empathy/glib-2.0/schemas/";
-
-  postInstall = ''
+  preFixup = ''
     wrapProgram "$out/bin/empathy" \
       --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
-      --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${gtk3}/share:${gnome3.gnome_themes_standard}/:${gnome3.gnome_themes_standard}/share:${hicolor_icon_theme}/share:${gnome3.gsettings_desktop_schemas}/share:$out/share:$out/share/empathy:${telepathy_logger}/share/telepathy/logger:${folks}/share/folks:${evolution_data_server}/share/evolution-data-server"
+      --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${gtk3}/share:${gnome3.gnome_themes_standard}/:${gnome3.gnome_themes_standard}/share:${hicolor_icon_theme}/share:$out/share:$GSETTINGS_SCHEMAS_PATH"
+
+    rm $out/share/icons/hicolor/icon-theme.cache
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/core/eog/default.nix b/pkgs/desktops/gnome-3/core/eog/default.nix
index 99e87b3c584c..57f19dcaa321 100644
--- a/pkgs/desktops/gnome-3/core/eog/default.nix
+++ b/pkgs/desktops/gnome-3/core/eog/default.nix
@@ -14,11 +14,13 @@ stdenv.mkDerivation rec {
     [ intltool pkgconfig itstool libxml2 libjpeg gtk glib libpeas makeWrapper librsvg
       gsettings_desktop_schemas shared_mime_info gnome_icon_theme gnome_desktop libexif ];
 
-  postInstall = ''
+  preFixup = ''
     wrapProgram "$out/bin/eog" \
       --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
       --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
-      --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${shared_mime_info}/share:${gnome3.gnome_icon_theme}/share:${gnome3.gsettings_desktop_schemas}/share:${gnome3.gtk}/share:$out/share"
+      --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${shared_mime_info}/share:${gnome3.gnome_icon_theme}/share:${gnome3.gtk}/share:$out/share:$GSETTINGS_SCHEMAS_PATH"
+
+    rm $out/share/icons/hicolor/icon-theme.cache
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/core/epiphany/default.nix b/pkgs/desktops/gnome-3/core/epiphany/default.nix
index 7da49dbc7384..9df3a7ed01e5 100644
--- a/pkgs/desktops/gnome-3/core/epiphany/default.nix
+++ b/pkgs/desktops/gnome-3/core/epiphany/default.nix
@@ -1,10 +1,8 @@
 { stdenv, intltool, fetchurl, pkgconfig, gtk3, glib, nspr, icu
 , bash, makeWrapper, gnome3, libwnck3, libxml2, libxslt, libtool
 , webkitgtk, libsoup, libsecret, gnome_desktop, libnotify, p11_kit
-, sqlite, gcr, avahi, nss, isocodes, itstool, file }:
-
-# TODO: icons and theme still does not work
-# use packaged gnome3.gnome_icon_theme_symbolic 
+, sqlite, gcr, avahi, nss, isocodes, itstool, file
+, hicolor_icon_theme, gdk_pixbuf, librsvg }:
 
 stdenv.mkDerivation rec {
   name = "epiphany-3.10.3";
@@ -18,6 +16,8 @@ stdenv.mkDerivation rec {
   configureFlags = [ "--disable-static --disable-tests" ];
 
   propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
+  propagatedBuildInputs = [ gdk_pixbuf gnome3.gnome_icon_theme librsvg
+                            hicolor_icon_theme gnome3.gnome_icon_theme_symbolic ];
 
   nativeBuildInputs = [ pkgconfig file ];
 
@@ -30,13 +30,12 @@ stdenv.mkDerivation rec {
 
   NIX_CFLAGS_COMPILE = "-I${nspr}/include/nspr -I${nss}/include/nss";
 
-  installFlags = "gsettingsschemadir=\${out}/share/${name}/glib-2.0/schemas/";
-
   enableParallelBuilding = true;
 
-  postInstall = ''
+  preFixup = ''
     wrapProgram "$out/bin/epiphany" \
-      --prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/share:${gnome3.gsettings_desktop_schemas}/share:$out/share:$out/share/${name}"
+      --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
+      --prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/core/evince/default.nix b/pkgs/desktops/gnome-3/core/evince/default.nix
index de8f28ddaab1..3a2688a64b93 100644
--- a/pkgs/desktops/gnome-3/core/evince/default.nix
+++ b/pkgs/desktops/gnome-3/core/evince/default.nix
@@ -21,8 +21,6 @@ stdenv.mkDerivation rec {
     makeWrapper libsecret librsvg
   ];
 
-  preFixup = "rm $out/share/icons/hicolor/icon-theme.cache";
-
   configureFlags = [
     "--disable-nautilus" # Do not use nautilus
   ];
@@ -40,12 +38,14 @@ stdenv.mkDerivation rec {
       sed -i 's/\(if (++n_items == \)5\(.*\)/\1${builtins.toString recentListSize}\2/' shell/ev-window.c
     '';
 
-  postInstall = ''
+  preFixup = ''
     # Tell Glib/GIO about the MIME info directory, which is used
     # by `g_file_info_get_content_type ()'.
     wrapProgram "$out/bin/evince" \
       --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
-      --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${gnome3.gsettings_desktop_schemas}/share:${gtk3}/share:${shared_mime_info}/share:$out/share"
+      --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${gtk3}/share:${shared_mime_info}/share:$out/share:$GSETTINGS_SCHEMAS_PATH"
+
+    rm $out/share/icons/hicolor/icon-theme.cache
   '';
 
   doCheck = false; # would need pythonPackages.dogTail, which is missing
diff --git a/pkgs/desktops/gnome-3/core/evolution-data-server/default.nix b/pkgs/desktops/gnome-3/core/evolution-data-server/default.nix
index 30805c1c5975..0ded30b11abb 100644
--- a/pkgs/desktops/gnome-3/core/evolution-data-server/default.nix
+++ b/pkgs/desktops/gnome-3/core/evolution-data-server/default.nix
@@ -19,8 +19,6 @@ stdenv.mkDerivation rec {
   configureFlags = ["--disable-uoa" "--with-nspr-includes=${nspr}/include/nspr" "--with-nss-includes=${nss}/include/nss"]
                    ++ stdenv.lib.optional valaSupport "--enable-vala-bindings";
 
-  installFlags = "gsettingsschemadir=\${out}/share/evolution-data-server/glib-2.0/schemas/";
-
   meta = with stdenv.lib; {
     platforms = platforms.linux;
   };
diff --git a/pkgs/desktops/gnome-3/core/folks/default.nix b/pkgs/desktops/gnome-3/core/folks/default.nix
index 9b0f403b079f..12518c634c4f 100644
--- a/pkgs/desktops/gnome-3/core/folks/default.nix
+++ b/pkgs/desktops/gnome-3/core/folks/default.nix
@@ -27,8 +27,6 @@ stdenv.mkDerivation rec {
 
   postBuild = "rm -rf $out/share/gtk-doc";
 
-  installFlags = "gsettingsschemadir=\${out}/share/folks/glib-2.0/schemas/";
-
   meta = {
     description = "Folks";
 
diff --git a/pkgs/desktops/gnome-3/core/gcr/default.nix b/pkgs/desktops/gnome-3/core/gcr/default.nix
index 059942530ea4..a1fdd4712820 100644
--- a/pkgs/desktops/gnome-3/core/gcr/default.nix
+++ b/pkgs/desktops/gnome-3/core/gcr/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, pkgconfig, intltool, gnupg, p11_kit, glib
 , libgcrypt, libtasn1, dbus_glib, gtk, pango, gdk_pixbuf, atk
-, gobjectIntrospection }:
+, gobjectIntrospection, makeWrapper }:
 
 stdenv.mkDerivation rec {
   name = "gcr-3.10.1";
@@ -12,11 +12,16 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     pkgconfig intltool gnupg p11_kit glib gobjectIntrospection
-    libgcrypt libtasn1 dbus_glib gtk pango gdk_pixbuf atk
+    libgcrypt libtasn1 dbus_glib gtk pango gdk_pixbuf atk makeWrapper
   ];
 
   #doCheck = true;
 
+  preFixup = ''
+    wrapProgram "$out/bin/gcr-viewer" \
+      --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
+  '';
+
   meta = with stdenv.lib; {
     platforms = platforms.linux;
   };
diff --git a/pkgs/desktops/gnome-3/core/gnome-calculator/default.nix b/pkgs/desktops/gnome-3/core/gnome-calculator/default.nix
index 805f0e5276d1..981ae3bd9dfc 100644
--- a/pkgs/desktops/gnome-3/core/gnome-calculator/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-calculator/default.nix
@@ -20,12 +20,10 @@ stdenv.mkDerivation rec {
                   libxml2 gnome3.gtksourceview
                   gnome3.gsettings_desktop_schemas makeWrapper ];
 
-  installFlags = "gsettingsschemadir=\${out}/share/gnome-calculator/glib-2.0/schemas/";
-
-  postInstall = ''
+  preFixup = ''
     wrapProgram "$out/bin/gnome-calculator" \
       --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
-      --prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/share:${gnome3.gsettings_desktop_schemas}/share:$out/share:$out/share/gnome-calculator:$XDG_ICON_DIRS"
+      --prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix b/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix
index ac9c53422b32..a3f2e2b7584d 100644
--- a/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix
@@ -36,13 +36,15 @@ stdenv.mkDerivation rec {
     substituteInPlace panels/datetime/test-endianess.c --replace "/usr/share/locale/" "$out/share/locale/"
   '';
 
-  postInstall = with gnome3; ''
+  preFixup = with gnome3; ''
     wrapProgram $out/bin/gnome-control-center \
       --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
-      --prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:${gsettings_desktop_schemas}/share:${gnome_settings_daemon}/share:${glib}/share:${gtk}/share:${colord}/share:$out/share:$out/share/gnome-control-center:$XDG_ICON_DIRS"
+      --prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:${gnome_settings_daemon}/share:${glib}/share:${gtk}/share:${colord}/share:$out/share:$out/share/gnome-control-center:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
     for i in $out/share/applications/*; do
       substituteInPlace $i --replace "gnome-control-center" "$out/bin/gnome-control-center"
     done
+
+    rm $out/share/icons/hicolor/icon-theme.cache
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/core/gnome-disk-utility/default.nix b/pkgs/desktops/gnome-3/core/gnome-disk-utility/default.nix
index 9ab5259a6309..c02f8f0a6653 100644
--- a/pkgs/desktops/gnome-3/core/gnome-disk-utility/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-disk-utility/default.nix
@@ -25,12 +25,10 @@ stdenv.mkDerivation rec {
                   libnotify libdvdread libcanberra_gtk3 docbook_xsl
                   gnome3.gsettings_desktop_schemas makeWrapper libxml2 ];
 
-  installFlags = "gsettingsschemadir=\${out}/share/gnome-disk-utility/glib-2.0/schemas/";
-
-  postInstall = ''
+  preFixup = ''
     wrapProgram "$out/bin/gnome-disks" \
       --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
-      --prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/share:${gnome3.gsettings_desktop_schemas}/share:$out/share:$out/share/gnome-disk-utility:$XDG_ICON_DIRS"
+      --prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
   '';
 
   preFixup = ''
diff --git a/pkgs/desktops/gnome-3/core/gnome-font-viewer/default.nix b/pkgs/desktops/gnome-3/core/gnome-font-viewer/default.nix
index 8a1b0054e39f..cba651ca36a3 100644
--- a/pkgs/desktops/gnome-3/core/gnome-font-viewer/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-font-viewer/default.nix
@@ -22,12 +22,10 @@ stdenv.mkDerivation rec {
   buildInputs = [ pkgconfig gtk3 glib intltool itstool gnome3.gnome_desktop
                   gnome3.gsettings_desktop_schemas makeWrapper ];
 
-  installFlags = "gsettingsschemadir=\${out}/share/gnome-font-viewer/glib-2.0/schemas/";
-
-  postInstall = ''
+  preFixup = ''
     wrapProgram "$out/bin/gnome-font-viewer" \
       --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
-      --prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/share:${gnome3.gsettings_desktop_schemas}/share:$out/share:$out/share/gnome-font-viewer:$XDG_ICON_DIRS"
+      --prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/core/gnome-keyring/default.nix b/pkgs/desktops/gnome-3/core/gnome-keyring/default.nix
index b557e2106458..dbb8da93c6cb 100644
--- a/pkgs/desktops/gnome-3/core/gnome-keyring/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-keyring/default.nix
@@ -25,11 +25,11 @@ stdenv.mkDerivation rec {
     "--with-pkcs11-modules=$$out/lib/pkcs11/"
   ];
 
-  postInstall = ''
+  preFixup = ''
     wrapProgram "$out/bin/gnome-keyring" \
-      --prefix XDG_DATA_DIRS : "${glib}/share:$out/share"
+      --prefix XDG_DATA_DIRS : "${glib}/share:$out/share:$GSETTINGS_SCHEMAS_PATH"
     wrapProgram "$out/bin/gnome-keyring-daemon" \
-      --prefix XDG_DATA_DIRS : "${glib}/share:$out/share"
+      --prefix XDG_DATA_DIRS : "${glib}/share:$out/share:$GSETTINGS_SCHEMAS_PATH"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/core/gnome-screenshot/default.nix b/pkgs/desktops/gnome-3/core/gnome-screenshot/default.nix
index 0d891e4625d3..349df0b103c9 100644
--- a/pkgs/desktops/gnome-3/core/gnome-screenshot/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-screenshot/default.nix
@@ -21,12 +21,10 @@ stdenv.mkDerivation rec {
   buildInputs = [ bash pkgconfig gtk3 glib intltool itstool libcanberra_gtk3
                   gnome3.gsettings_desktop_schemas makeWrapper ];
 
-  installFlags = "gsettingsschemadir=\${out}/share/gnome-screenshot/glib-2.0/schemas/";
-
-  postInstall = ''
+  preFixup = ''
     wrapProgram "$out/bin/gnome-screenshot" \
       --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
-      --prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/share:${gnome3.gsettings_desktop_schemas}/share:$out/share:$out/share/gnome-screenshot:$XDG_ICON_DIRS"
+      --prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/core/gnome-session/default.nix b/pkgs/desktops/gnome-3/core/gnome-session/default.nix
index 804a0c54a41b..f999702af54a 100644
--- a/pkgs/desktops/gnome-3/core/gnome-session/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-session/default.nix
@@ -14,12 +14,13 @@ stdenv.mkDerivation rec {
 
   buildInputs = with gnome3;
     [ pkgconfig glib gnome_desktop gtk dbus_glib json_glib libxslt 
+      gnome3.gnome_settings_daemon
       gsettings_desktop_schemas upower intltool gconf makeWrapper systemd ];
 
-  postInstall = ''
+  preFixup = ''
     wrapProgram "$out/bin/gnome-session" \
       --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
-      --prefix XDG_DATA_DIRS : "${gnome3.gsettings_desktop_schemas}/share:$out/share"
+      --prefix XDG_DATA_DIRS : "$out/share:$GSETTINGS_SCHEMAS_PATH"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/core/gnome-settings-daemon/default.nix b/pkgs/desktops/gnome-3/core/gnome-settings-daemon/default.nix
index 668a53d2bf8a..7a50b8db56fd 100644
--- a/pkgs/desktops/gnome-3/core/gnome-settings-daemon/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-settings-daemon/default.nix
@@ -20,11 +20,11 @@ stdenv.mkDerivation rec {
       polkit geocode_glib geoclue2 librsvg xf86_input_wacom udev libwacom libxslt
       libtool docbook_xsl docbook_xsl_ns makeWrapper gnome_themes_standard ];
 
-  postInstall = ''
+  preFixup = ''
     wrapProgram "$out/libexec/gnome-settings-daemon-localeexec" \
       --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
       --prefix PATH : "${glib}/bin" \
-      --prefix XDG_DATA_DIRS : "${gnome3.gtk}/share:${gnome3.gsettings_desktop_schemas}/share:$out/share"
+      --prefix XDG_DATA_DIRS : "${gnome3.gtk}/share:$out/share:$GSETTINGS_SCHEMAS_PATH"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/core/gnome-shell/default.nix b/pkgs/desktops/gnome-3/core/gnome-shell/default.nix
index 59f62b6948d3..519347f14c8c 100644
--- a/pkgs/desktops/gnome-3/core/gnome-shell/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-shell/default.nix
@@ -22,22 +22,20 @@ stdenv.mkDerivation rec {
       libical libtool nss gobjectIntrospection gtk gstreamer makeWrapper gdm gnome_control_center
       at_spi2_core upower ibus gnome_session gnome_desktop telepathy_logger ];
 
-  configureFlags = "--disable-static";
-
   preBuild = ''
     patchShebangs src/data-to-c.pl
     substituteInPlace data/Makefile --replace " install-keysDATA" ""
   '';
 
-  postInstall = with gnome3; ''
+  preFixup = with gnome3; ''
     wrapProgram "$out/bin/gnome-shell" \
       --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
       --prefix LD_LIBRARY_PATH : "${accountservice}/lib:${ibus}/lib:${gdm}/lib" \
       --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
-      --prefix XDG_DATA_DIRS : "${gnome-menus}:/share:${ibus}/share:${gnome_settings_daemon}/share:${gnome_control_center}/share:${gdm}/share:${glib}/share:${gnome_themes_standard}/share:${mutter}/share:${gnome_icon_theme}/share:${gsettings_desktop_schemas}/share:${gtk}/share:$out/share"
+      --prefix XDG_DATA_DIRS : "${gnome-menus}:/share:${ibus}/share:${gnome_settings_daemon}/share:${gnome_control_center}/share:${gdm}/share:${glib}/share:${gnome_themes_standard}/share:${mutter}/share:${gtk}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
 
     wrapProgram "$out/libexec/gnome-shell-calendar-server" \
-      --prefix XDG_DATA_DIRS : "${evolution_data_server}/share:$out/share"
+      --prefix XDG_DATA_DIRS : "${evolution_data_server}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/core/gnome-system-log/default.nix b/pkgs/desktops/gnome-3/core/gnome-system-log/default.nix
index 8b387627da5c..7152332217a2 100644
--- a/pkgs/desktops/gnome-3/core/gnome-system-log/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-system-log/default.nix
@@ -21,12 +21,10 @@ stdenv.mkDerivation rec {
   buildInputs = [ bash pkgconfig gtk3 glib intltool itstool
                   gnome3.gsettings_desktop_schemas makeWrapper libxml2 ];
 
-  installFlags = "gsettingsschemadir=\${out}/share/gnome-system-log/glib-2.0/schemas/";
-
-  postInstall = ''
+  preFixup = ''
     wrapProgram "$out/bin/gnome-system-log" \
       --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
-      --prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/share:${gnome3.gsettings_desktop_schemas}/share:$out/share:$out/share/gnome-system-log:$XDG_ICON_DIRS"
+      --prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
   '';
 
   preFixup = ''
diff --git a/pkgs/desktops/gnome-3/core/gnome-terminal/default.nix b/pkgs/desktops/gnome-3/core/gnome-terminal/default.nix
index 31ee53e9713c..541db5720db4 100644
--- a/pkgs/desktops/gnome-3/core/gnome-terminal/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-terminal/default.nix
@@ -19,12 +19,12 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkgconfig intltool gnome_doc_utils which libuuid libxml2 desktop_file_utils ];
 
-  postInstall = ''
-    wrapProgram "$out/libexec/gnome-terminal-server" \
-      --prefix XDG_DATA_DIRS : "${gnome3.gsettings_desktop_schemas}/share:$out/share"
+  preFixup = ''
+    for f in "$out/libexec/gnome-terminal-migration" "$out/libexec/gnome-terminal-server"; do
+      wrapProgram "$f" --prefix XDG_DATA_DIRS : "$out/share:$GSETTINGS_SCHEMAS_PATH"
+    done
   '';
 
-
   meta = with stdenv.lib; {
     platforms = platforms.linux;
   };
diff --git a/pkgs/desktops/gnome-3/core/gucharmap/default.nix b/pkgs/desktops/gnome-3/core/gucharmap/default.nix
index bf630e1947de..a6bf72b2fc7e 100644
--- a/pkgs/desktops/gnome-3/core/gucharmap/default.nix
+++ b/pkgs/desktops/gnome-3/core/gucharmap/default.nix
@@ -25,11 +25,9 @@ stdenv.mkDerivation rec {
                   gnome3.yelp_tools libxml2 file desktop_file_utils
                   gnome3.gsettings_desktop_schemas makeWrapper ];
 
-  installFlags = "gsettingsschemadir=\${out}/share/${name}/glib-2.0/schemas/";
-
-  postInstall = ''
+  preFixup = ''
     wrapProgram "$out/bin/gucharmap" \
-      --prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/share:${gnome3.gsettings_desktop_schemas}/share:$out/share:$out/share/${name}"
+      --prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/share:$out/share:$GSETTINGS_SCHEMAS_PATH"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/core/mutter/default.nix b/pkgs/desktops/gnome-3/core/mutter/default.nix
index e6454aa8e5d3..0acfa9f36aed 100644
--- a/pkgs/desktops/gnome-3/core/mutter/default.nix
+++ b/pkgs/desktops/gnome-3/core/mutter/default.nix
@@ -1,6 +1,6 @@
 { fetchurl, stdenv, pkgconfig, gnome3, intltool, gobjectIntrospection, upower, cairo
 , pango, cogl, clutter, libstartup_notification, libcanberra, zenity, libcanberra_gtk3
-, libtool }:
+, libtool, makeWrapper }:
 
 
 stdenv.mkDerivation rec {
@@ -19,7 +19,12 @@ stdenv.mkDerivation rec {
   buildInputs = with gnome3;
     [ pkgconfig intltool glib gobjectIntrospection gtk gsettings_desktop_schemas upower
       gnome_desktop cairo pango cogl clutter zenity libstartup_notification libcanberra
-      libcanberra_gtk3 zenity libtool ];
+      libcanberra_gtk3 zenity libtool makeWrapper ];
+
+  preFixup = ''
+    wrapProgram "$out/bin/mutter" \
+      --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
+  '';
 
   meta = with stdenv.lib; {
     platforms = platforms.linux;
diff --git a/pkgs/desktops/gnome-3/core/nautilus/default.nix b/pkgs/desktops/gnome-3/core/nautilus/default.nix
index 091e48626ae8..2041a71a82c3 100644
--- a/pkgs/desktops/gnome-3/core/nautilus/default.nix
+++ b/pkgs/desktops/gnome-3/core/nautilus/default.nix
@@ -15,11 +15,11 @@ stdenv.mkDerivation rec {
   buildInputs = [ pkgconfig libxml2 dbus_glib shared_mime_info libexif gtk libunique intltool exempi librsvg
                   gnome3.gnome_desktop gnome3.gnome_icon_theme gnome3.gnome_icon_theme_symbolic gnome3.gsettings_desktop_schemas libnotify makeWrapper ];
 
-  postInstall = ''
+  preFixup = ''
     wrapProgram "$out/bin/nautilus" \
       --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
       --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
-      --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${gtk}/share:${gnome3.gnome_icon_theme}:${gnome3.gsettings_desktop_schemas}/share:$out/share"
+      --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${gtk}/share:${gnome3.gnome_icon_theme}:${gnome3.gsettings_desktop_schemas}/share:$out/share:$GSETTINGS_SCHEMAS_PATH"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/core/vino/default.nix b/pkgs/desktops/gnome-3/core/vino/default.nix
index b431a199bf72..65668dce6a20 100644
--- a/pkgs/desktops/gnome-3/core/vino/default.nix
+++ b/pkgs/desktops/gnome-3/core/vino/default.nix
@@ -15,9 +15,9 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ gtk3 intltool glib libsoup pkgconfig libnotify file makeWrapper ];
 
-  postInstall = ''
+  preFixup = ''
     for f in "$out/bin/vino-passwd" "$out/libexec/vino-server"; do
-      wrapProgram $f --prefix XDG_DATA_DIRS : "${gtk3}/share:$out/share"
+      wrapProgram $f --prefix XDG_DATA_DIRS : "${gtk3}/share:$out/share:$GSETTINGS_SCHEMAS_PATH"
     done
   '';
 
diff --git a/pkgs/desktops/gnome-3/core/yelp/default.nix b/pkgs/desktops/gnome-3/core/yelp/default.nix
index d84bd288707d..b58aa99721e2 100644
--- a/pkgs/desktops/gnome-3/core/yelp/default.nix
+++ b/pkgs/desktops/gnome-3/core/yelp/default.nix
@@ -20,12 +20,10 @@ stdenv.mkDerivation rec {
                   libxml2 libxslt icu file makeWrapper gnome3.yelp_xsl
                   gnome3.gsettings_desktop_schemas ];
 
-  installFlags = "gsettingsschemadir=\${out}/share/yelp/glib-2.0/schemas/";
-
-  postInstall = ''
+  preFixup = ''
     wrapProgram "$out/bin/yelp" \
       --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
-      --prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/:${gnome3.gnome_themes_standard}/share:${gnome3.yelp_xsl}/share/yelp-xsl:${gnome3.gsettings_desktop_schemas}/share:$out/share:$out/share/yelp:$XDG_ICON_DIRS"
+      --prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/:${gnome3.gnome_themes_standard}/share:${gnome3.yelp_xsl}/share/yelp-xsl:${gnome3.gsettings_desktop_schemas}/share:$out/share:$out/share/yelp:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/misc/gitg/default.nix b/pkgs/desktops/gnome-3/misc/gitg/default.nix
index 26268f4c90c6..7ca35a8255f9 100644
--- a/pkgs/desktops/gnome-3/misc/gitg/default.nix
+++ b/pkgs/desktops/gnome-3/misc/gitg/default.nix
@@ -9,12 +9,10 @@ stdenv.mkDerivation rec {
   name = "gitg-0.3.2";
 
   src = fetchurl {
-    url = "https://download.gnome.org/sources/gitg/0.3/${name}.tar.xz";
+    url = "mirror://gnome/sources/gitg/0.3/${name}.tar.xz";
     sha256 = "03vc59d1r3326piqdph6qjqnc40chm1lpg52lpf8466ddjs0x8vp";
   };
 
-  configureFlags = [ "--disable-static" ];
-
   preCheck = ''
     substituteInPlace tests/libgitg/test-commit.c --replace "/bin/bash" "${bash}/bin/bash"
   '';
@@ -29,14 +27,11 @@ stdenv.mkDerivation rec {
                   libgit2-glib gtkspell3 gnome3.gsettings_desktop_schemas gnome3.gtksourceview librsvg
                   gobjectIntrospection makeWrapper gnome3.gnome_icon_theme_symbolic gnome3.gnome_icon_theme ];
 
-  postInstall = ''
+  preFixup = ''
     wrapProgram "$out/bin/gitg" \
       --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
       --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
-      --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${gtk3}/share:${gnome3.gnome_themes_standard}/share:${gnome3.gsettings_desktop_schemas}/share:$out/share"
-  '';
-
-  preFixup = ''
+      --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${gtk3}/share:${gnome3.gnome_themes_standard}/share:$out/share:$GSETTINGS_SCHEMAS_PATH"
     rm $out/share/icons/hicolor/icon-theme.cache
     rm $out/share/gitg/icons/hicolor/icon-theme.cache
   '';
diff --git a/pkgs/development/libraries/gvfs/default.nix b/pkgs/development/libraries/gvfs/default.nix
index 73b74a12c66b..3f20147d0e97 100644
--- a/pkgs/development/libraries/gvfs/default.nix
+++ b/pkgs/development/libraries/gvfs/default.nix
@@ -31,8 +31,8 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   # ToDo: one probably should specify schemas for samba and others here
-  fixupPhase = ''
-    wrapProgram $out/libexec/gvfsd --set GSETTINGS_SCHEMA_DIR "$out/share/glib-2.0/schemas"
+  preFixup = ''
+    wrapProgram $out/libexec/gvfsd --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
   '';
 
   meta = {
diff --git a/pkgs/development/libraries/ibus/default.nix b/pkgs/development/libraries/ibus/default.nix
index 75eb1b4134c0..905f11dfdc22 100644
--- a/pkgs/development/libraries/ibus/default.nix
+++ b/pkgs/development/libraries/ibus/default.nix
@@ -21,9 +21,9 @@ stdenv.mkDerivation rec {
 
   preBuild = "patchShebangs ./scripts";
 
-  postInstall = ''
+  preFixup = ''
     for f in "$out"/bin/*; do
-      wrapProgram "$f" --prefix XDG_DATA_DIRS : "$out/share" \
+      wrapProgram "$f" --prefix XDG_DATA_DIRS : "$out/share:$GSETTINGS_SCHEMAS_PATH" \
                        --prefix PYTHONPATH : "$(toPythonPath ${pygobject3})" \
                        --prefix LD_LIBRARY_PATH : "${gnome3.gtk3}/lib:${atk}/lib:$out/lib" \
                        --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH:$out/lib/girepository-1.0" \
diff --git a/pkgs/tools/networking/network-manager-applet/default.nix b/pkgs/tools/networking/network-manager-applet/default.nix
index 6db55ada1929..8d0d4521b868 100644
--- a/pkgs/tools/networking/network-manager-applet/default.nix
+++ b/pkgs/tools/networking/network-manager-applet/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [
-    gnome3.gtk libglade networkmanager libnotify libsecret dbus_glib
+    gnome3.gtk libglade networkmanager libnotify libsecret dbus_glib gsettings_desktop_schemas
     polkit isocodes makeWrapper udev gnome3.gconf gnome3.libgnome_keyring
   ];
 
@@ -44,9 +44,12 @@ stdenv.mkDerivation rec {
     ln -s ${networkmanager_openvpn}/libexec/* $out/libexec/
     ln -s ${networkmanager_vpnc}/libexec/* $out/libexec/
     ln -s ${networkmanager_openconnect}/libexec/* $out/libexec/
+  '';
+
+  preFixup = ''
     wrapProgram "$out/bin/nm-applet" \
       --prefix GIO_EXTRA_MODULES : "${glib_networking}/lib/gio/modules" \
-      --prefix XDG_DATA_DIRS : "${gsettings_desktop_schemas}/share:${gnome3.gtk}/share:$out/share" \
+      --prefix XDG_DATA_DIRS : "${gnome3.gtk}/share:$out/share:$GSETTINGS_SCHEMAS_PATH" \
       --set GCONF_CONFIG_SOURCE "xml::~/.gconf" \
       --prefix PATH ":" "${gnome3.gconf}/bin"
   '';
@@ -57,9 +60,5 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2;
     maintainers = with maintainers; [ phreedom urkud rickynils ];
     platforms = platforms.linux;
-
-    # resolve collision between evince and nm-applet for
-    # gschemas.compiled
-    priority = 6;
   };
 }

From 1653c118bd079d0ba19fc85c8abe94e35739db53 Mon Sep 17 00:00:00 2001
From: Luca Bruno <luca.bruno@immobiliare.it>
Date: Thu, 3 Apr 2014 16:39:46 +0200
Subject: [PATCH 052/567] pastebinit: new package

A software that lets you send anything you want directly to a pastebin from the command line

https://launchpad.net/pastebinit
---
 pkgs/tools/misc/pastebinit/default.nix | 33 ++++++++++++++++++++++++++
 pkgs/top-level/all-packages.nix        |  2 ++
 2 files changed, 35 insertions(+)
 create mode 100644 pkgs/tools/misc/pastebinit/default.nix

diff --git a/pkgs/tools/misc/pastebinit/default.nix b/pkgs/tools/misc/pastebinit/default.nix
new file mode 100644
index 000000000000..cf41de29c500
--- /dev/null
+++ b/pkgs/tools/misc/pastebinit/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, fetchurl, python3Packages }:
+
+python3Packages.buildPythonPackage rec {
+  version = "1.4.1";
+  name = "pastebinit-${version}";
+
+  src = fetchurl {
+    url = "https://launchpad.net/pastebinit/trunk/${version}/+download/${name}.tar.bz2";
+    md5 = "b771872a9483cf92be90a3e4420fd3c9";
+  };
+
+  configurePhase = "export DETERMINISTIC_BUILD=1";
+
+  buildPhase = "";
+
+  installPhase = ''
+    mkdir -p $out/bin
+    mkdir -p $out/etc
+    cp -a pastebinit $out/bin
+    cp -a pastebin.d $out/etc
+    substituteInPlace $out/bin/pastebinit --replace "'/etc/pastebin.d" "'$out/etc/pastebin.d"
+  '';
+
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    homepage = https://launchpad.net/pastebinit;
+    description = "A software that lets you send anything you want directly to a pastebin from the command line";
+    maintainers = with maintainers; [ lethalman ];
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index f2b10785962d..550999b438e5 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1763,6 +1763,8 @@ let
 
   cntlm = callPackage ../tools/networking/cntlm { };
 
+  pastebinit = callPackage ../tools/misc/pastebinit { };
+  
   psmisc = callPackage ../os-specific/linux/psmisc { };
 
   pstoedit = callPackage ../tools/graphics/pstoedit { };

From c01cc1a0e42c79cfd2e012c29a395eddbeb6f73b Mon Sep 17 00:00:00 2001
From: Mathijs Kwik <mathijs@bluescreen303.nl>
Date: Sat, 5 Apr 2014 09:48:19 +0200
Subject: [PATCH 053/567] add haskell-cheapskate-0.1.0.1   (markdown processor)

---
 .../libraries/haskell/cheapskate/default.nix  | 20 +++++++++++++++++++
 pkgs/top-level/haskell-packages.nix           |  2 ++
 2 files changed, 22 insertions(+)
 create mode 100644 pkgs/development/libraries/haskell/cheapskate/default.nix

diff --git a/pkgs/development/libraries/haskell/cheapskate/default.nix b/pkgs/development/libraries/haskell/cheapskate/default.nix
new file mode 100644
index 000000000000..0ef18440e373
--- /dev/null
+++ b/pkgs/development/libraries/haskell/cheapskate/default.nix
@@ -0,0 +1,20 @@
+{ cabal, blazeHtml, dataDefault, mtl, syb, text, uniplate
+, xssSanitize
+}:
+
+cabal.mkDerivation (self: {
+  pname = "cheapskate";
+  version = "0.1.0.1";
+  sha256 = "0slrvbaamnwxx89kqjcr62058j00s2dw4c16q1swf817az2p66h8";
+  isLibrary = true;
+  isExecutable = true;
+  buildDepends = [
+    blazeHtml dataDefault mtl syb text uniplate xssSanitize
+  ];
+  meta = {
+    homepage = "http://github.com/jgm/cheapskate";
+    description = "Experimental markdown processor";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 522baf33ff2c..8960e980fc70 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -757,6 +757,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.finalReturn x
 
   ChasingBottoms = callPackage ../development/libraries/haskell/ChasingBottoms {};
 
+  cheapskate = callPackage ../development/libraries/haskell/cheapskate {};
+
   checkers = callPackage ../development/libraries/haskell/checkers {};
 
   chell = callPackage ../development/libraries/haskell/chell {};

From 7f6a2f81b92068c85876662a36a976c4839adb2b Mon Sep 17 00:00:00 2001
From: Mathijs Kwik <mathijs@bluescreen303.nl>
Date: Sat, 5 Apr 2014 09:35:52 +0200
Subject: [PATCH 054/567] idris: upgrade to 0.9.12

---
 pkgs/development/compilers/idris/default.nix | 24 ++++++++++----------
 1 file changed, 12 insertions(+), 12 deletions(-)

diff --git a/pkgs/development/compilers/idris/default.nix b/pkgs/development/compilers/idris/default.nix
index a22c8bf7762a..c32c14cf5848 100644
--- a/pkgs/development/compilers/idris/default.nix
+++ b/pkgs/development/compilers/idris/default.nix
@@ -1,23 +1,23 @@
 { cabal, annotatedWlPprint, ansiTerminal, ansiWlPprint, binary
-, boehmgc, Cabal, deepseq, filepath, gmp, happy, haskeline
-, languageJava, libffi, llvmGeneral, llvmGeneralPure, mtl, network
-, parsers, split, text, time, transformers, trifecta
-, unorderedContainers, utf8String, vector, vectorBinaryInstances
-, xml, zlib
+, boehmgc, Cabal, cheapskate, deepseq, filepath, gmp, happy
+, haskeline, languageJava, lens, libffi, llvmGeneral
+, llvmGeneralPure, mtl, network, parsers, split, text, time
+, transformers, trifecta, unorderedContainers, utf8String, vector
+, vectorBinaryInstances, xml, zlib
 }:
 
 cabal.mkDerivation (self: {
   pname = "idris";
-  version = "0.9.11.2";
-  sha256 = "16xgiygn0j3kl3l36lnv6wz422nz2bvn3lk86xkdfvwjpv4630yn";
+  version = "0.9.12";
+  sha256 = "151h9qkx7yw24q0b60r78hki1y8m6sxmfars7wywnbzk3kalqb6x";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
-    annotatedWlPprint ansiTerminal ansiWlPprint binary Cabal deepseq
-    filepath haskeline languageJava libffi llvmGeneral llvmGeneralPure
-    mtl network parsers split text time transformers trifecta
-    unorderedContainers utf8String vector vectorBinaryInstances xml
-    zlib
+    annotatedWlPprint ansiTerminal ansiWlPprint binary Cabal cheapskate
+    deepseq filepath haskeline languageJava lens libffi llvmGeneral
+    llvmGeneralPure mtl network parsers split text time transformers
+    trifecta unorderedContainers utf8String vector
+    vectorBinaryInstances xml zlib
   ];
   buildTools = [ happy ];
   extraLibraries = [ boehmgc gmp ];

From b36f6ce3d4e7f57c51601cb4d7d4ad70e4ffe42d Mon Sep 17 00:00:00 2001
From: Mathijs Kwik <mathijs@bluescreen303.nl>
Date: Sat, 5 Apr 2014 09:55:11 +0200
Subject: [PATCH 055/567] ghc-mod: upgrade to 4.0.1

---
 .../libraries/haskell/ghc-mod/default.nix        | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/pkgs/development/libraries/haskell/ghc-mod/default.nix b/pkgs/development/libraries/haskell/ghc-mod/default.nix
index 260fff8ae827..0e60526e8fcb 100644
--- a/pkgs/development/libraries/haskell/ghc-mod/default.nix
+++ b/pkgs/development/libraries/haskell/ghc-mod/default.nix
@@ -1,20 +1,20 @@
-{ cabal, Cabal, convertible, doctest, emacs, filepath, ghcPaths
-, ghcSybUtils, hlint, hspec, ioChoice, syb, time, transformers
+{ cabal, Cabal, convertible, doctest, emacs, filepath, ghcSybUtils
+, hlint, hspec, ioChoice, syb, time, transformers
 }:
 
 cabal.mkDerivation (self: {
   pname = "ghc-mod";
-  version = "3.1.7";
-  sha256 = "1mv6m1fcqkm4i27jw1aniwfq2dhpn4m7kicyq4l70zmkfr7y7c5s";
+  version = "4.0.1";
+  sha256 = "13dgphwspp91bycnmcxgxzv4470wpjv5zfswwgmad644i77nixmm";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
-    Cabal convertible filepath ghcPaths ghcSybUtils hlint ioChoice syb
-    time transformers
+    Cabal convertible filepath ghcSybUtils hlint ioChoice syb time
+    transformers
   ];
   testDepends = [
-    Cabal convertible doctest filepath ghcPaths ghcSybUtils hlint hspec
-    ioChoice syb time transformers
+    Cabal convertible doctest filepath ghcSybUtils hlint hspec ioChoice
+    syb time transformers
   ];
   buildTools = [ emacs ];
   postInstall = ''

From cdc4c7039dac9ba520f68923bd995a374fcd2997 Mon Sep 17 00:00:00 2001
From: Mathijs Kwik <mathijs@bluescreen303.nl>
Date: Sat, 5 Apr 2014 10:42:17 +0200
Subject: [PATCH 056/567] add haskell-data-hash-0.2.0.0

---
 .../libraries/haskell/data-hash/default.nix       | 15 +++++++++++++++
 pkgs/top-level/haskell-packages.nix               |  2 ++
 2 files changed, 17 insertions(+)
 create mode 100644 pkgs/development/libraries/haskell/data-hash/default.nix

diff --git a/pkgs/development/libraries/haskell/data-hash/default.nix b/pkgs/development/libraries/haskell/data-hash/default.nix
new file mode 100644
index 000000000000..c8e4887063c4
--- /dev/null
+++ b/pkgs/development/libraries/haskell/data-hash/default.nix
@@ -0,0 +1,15 @@
+{ cabal, QuickCheck, testFramework, testFrameworkQuickcheck2 }:
+
+cabal.mkDerivation (self: {
+  pname = "data-hash";
+  version = "0.2.0.0";
+  sha256 = "1bfsbc4fkg3jqgbgka1mg6k1fizynvvxbhf2zb0x1apgr579mcrm";
+  testDepends = [
+    QuickCheck testFramework testFrameworkQuickcheck2
+  ];
+  meta = {
+    description = "Combinators for building fast hashing functions";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 8960e980fc70..6d52e5843b0e 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -913,6 +913,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.finalReturn x
 
   dataenc = callPackage ../development/libraries/haskell/dataenc {};
 
+  dataHash = callPackage ../development/libraries/haskell/data-hash {};
+
   dataInttrie = callPackage ../development/libraries/haskell/data-inttrie {};
 
   dataLens = callPackage ../development/libraries/haskell/data-lens {};

From 773ce7aa32199bc6b256af4d6a77aabee6ea67fe Mon Sep 17 00:00:00 2001
From: Mathijs Kwik <mathijs@bluescreen303.nl>
Date: Sat, 5 Apr 2014 10:44:52 +0200
Subject: [PATCH 057/567] add haskell-tree-view-0.4

---
 .../libraries/haskell/tree-view/default.nix         | 13 +++++++++++++
 pkgs/top-level/haskell-packages.nix                 |  2 ++
 2 files changed, 15 insertions(+)
 create mode 100644 pkgs/development/libraries/haskell/tree-view/default.nix

diff --git a/pkgs/development/libraries/haskell/tree-view/default.nix b/pkgs/development/libraries/haskell/tree-view/default.nix
new file mode 100644
index 000000000000..7ceefb815d8d
--- /dev/null
+++ b/pkgs/development/libraries/haskell/tree-view/default.nix
@@ -0,0 +1,13 @@
+{ cabal, mtl }:
+
+cabal.mkDerivation (self: {
+  pname = "tree-view";
+  version = "0.4";
+  sha256 = "0mzywp6nipc6zs98dy4ny2s3r9d745lqpjazfnj5y4hx8swyckgn";
+  buildDepends = [ mtl ];
+  meta = {
+    description = "Render trees as foldable HTML and Unicode art";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 6d52e5843b0e..fb0b0dc3aaa0 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -2522,6 +2522,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.finalReturn x
 
   traverseWithClass = callPackage ../development/libraries/haskell/traverse-with-class {};
 
+  treeView = callPackage ../development/libraries/haskell/tree-view {};
+
   trifecta = callPackage ../development/libraries/haskell/trifecta {};
 
   tuple = callPackage ../development/libraries/haskell/tuple {};

From 6249cc729e342c85b5ac222fb2908880847b86ae Mon Sep 17 00:00:00 2001
From: Mathijs Kwik <mathijs@bluescreen303.nl>
Date: Sat, 5 Apr 2014 10:36:21 +0200
Subject: [PATCH 058/567] add haskell-syntactic-1.11

---
 .../libraries/haskell/syntactic/default.nix   | 22 +++++++++++++++++++
 pkgs/top-level/haskell-packages.nix           |  2 ++
 2 files changed, 24 insertions(+)
 create mode 100644 pkgs/development/libraries/haskell/syntactic/default.nix

diff --git a/pkgs/development/libraries/haskell/syntactic/default.nix b/pkgs/development/libraries/haskell/syntactic/default.nix
new file mode 100644
index 000000000000..e18cf7b59371
--- /dev/null
+++ b/pkgs/development/libraries/haskell/syntactic/default.nix
@@ -0,0 +1,22 @@
+{ cabal, constraints, dataHash, mtl, QuickCheck, tasty, tastyGolden
+, tastyQuickcheck, tastyTh, transformers, treeView, tuple
+, utf8String
+}:
+
+cabal.mkDerivation (self: {
+  pname = "syntactic";
+  version = "1.11";
+  sha256 = "1j4k4qwi17x9z0cjf9adndaj5wbs8prs36xpz2icf7mlwcr9pvrz";
+  buildDepends = [
+    constraints dataHash mtl transformers treeView tuple
+  ];
+  testDepends = [
+    mtl QuickCheck tasty tastyGolden tastyQuickcheck tastyTh utf8String
+  ];
+  meta = {
+    homepage = "https://github.com/emilaxelsson/syntactic";
+    description = "Generic abstract syntax, and utilities for embedded languages";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index fb0b0dc3aaa0..186a39ecd772 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -2304,6 +2304,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.finalReturn x
 
   sybWithClassInstancesText = callPackage ../development/libraries/haskell/syb/syb-with-class-instances-text.nix {};
 
+  syntactic = callPackage ../development/libraries/haskell/syntactic {};
+
   syz = callPackage ../development/libraries/haskell/syz {};
 
   SDLImage = callPackage ../development/libraries/haskell/SDL-image {};

From bf129a2c238e5ffe99e7778851042c16ba467496 Mon Sep 17 00:00:00 2001
From: Rickard Nilsson <rickynils@gmail.com>
Date: Sun, 6 Apr 2014 12:39:51 +0200
Subject: [PATCH 059/567] Allow undefined uids and gids when mutableUsers =
 true

Groups and users without gid/uid are created with
useradd/groupadd after the passwd/group merge phase
if mutableUsers = true.

This should fix #2114.
---
 nixos/modules/config/users-groups.nix | 96 ++++++++++++++++++++-------
 1 file changed, 73 insertions(+), 23 deletions(-)

diff --git a/nixos/modules/config/users-groups.nix b/nixos/modules/config/users-groups.nix
index 2d9b941a2cae..c5d44223ecf8 100644
--- a/nixos/modules/config/users-groups.nix
+++ b/nixos/modules/config/users-groups.nix
@@ -7,6 +7,9 @@ let
   ids = config.ids;
   cfg = config.users;
 
+  nonUidUsers = filterAttrs (n: u: u.uid == null) cfg.extraUsers;
+  nonGidGroups = filterAttrs (n: g: g.gid == null) cfg.extraGroups;
+
   passwordDescription = ''
     The options <literal>hashedPassword</literal>,
     <literal>password</literal> and <literal>passwordFile</literal>
@@ -31,7 +34,10 @@ let
 
       name = mkOption {
         type = types.str;
-        description = "The name of the user account. If undefined, the name of the attribute set will be used.";
+        description = ''
+          The name of the user account. If undefined, the name of the
+          attribute set will be used.
+        '';
       };
 
       description = mkOption {
@@ -46,8 +52,14 @@ let
       };
 
       uid = mkOption {
-        type = with types; uniq int;
-        description = "The account UID.";
+        type = with types; nullOr int;
+        default = null;
+        description = ''
+          The account UID. If the <literal>mutableUsers</literal> option
+          is false, the UID cannot be null. Otherwise, the UID might be
+          null, in which case a free UID is picked on activation (by the
+          useradd command).
+        '';
       };
 
       group = mkOption {
@@ -151,12 +163,21 @@ let
 
       name = mkOption {
         type = types.str;
-        description = "The name of the group. If undefined, the name of the attribute set will be used.";
+        description = ''
+          The name of the group. If undefined, the name of the attribute set
+          will be used.
+        '';
       };
 
       gid = mkOption {
-        type = with types; uniq int;
-        description = "The GID of the group.";
+        type = with types; nullOr int;
+        default = null;
+        description = ''
+          The group GID. If the <literal>mutableUsers</literal> option
+          is false, the GID cannot be null. Otherwise, the GID might be
+          null, in which case a free GID is picked on activation (by the
+          groupadd command).
+        '';
       };
 
       members = mkOption {
@@ -218,13 +239,15 @@ let
 
   groupFile = pkgs.writeText "group" (
     concatStringsSep "\n" (map (g: mkGroupEntry g.name) (
-      sortOn "gid" (attrValues cfg.extraGroups)
+      let f = g: g.gid != null; in
+        sortOn "gid" (filter f (attrValues cfg.extraGroups))
     ))
   );
 
   passwdFile = pkgs.writeText "passwd" (
     concatStringsSep "\n" (map (u: mkPasswdEntry u.name) (
-      sortOn "uid" (filter (u: u.createUser) (attrValues cfg.extraUsers))
+      let f = u: u.createUser && (u.uid != null); in
+        sortOn "uid" (filter f (attrValues cfg.extraUsers))
     ))
   );
 
@@ -261,11 +284,11 @@ let
       then builtins.trace "Duplicate ${idAttr} ${id}" { dup = true; acc = null; }
       else { dup = false; acc = newAcc; }
     ) { dup = false; acc = {}; } (builtins.attrNames set)).dup;
-  uidsAreUnique = idsAreUnique cfg.extraUsers "uid";
-  gidsAreUnique = idsAreUnique cfg.extraGroups "gid";
-in
 
-{
+  uidsAreUnique = idsAreUnique (filterAttrs (n: u: u.uid != null) cfg.extraUsers) "uid";
+  gidsAreUnique = idsAreUnique (filterAttrs (n: g: g.gid != null) cfg.extraGroups) "gid";
+
+in {
 
   ###### interface
 
@@ -424,16 +447,31 @@ in
             }
           fi
         '';
-        mkhome = n: u:
-         let
-            uid = toString u.uid;
-            gid = toString ((getGroup u.group).gid);
-            h = u.home;
-          in ''
-            test -a "${h}" || mkdir -p "${h}" || true
-            test "$(stat -c %u "${h}")" = ${uid} || chown ${uid} "${h}" || true
-            test "$(stat -c %g "${h}")" = ${gid} || chgrp ${gid} "${h}" || true
-          '';
+        mkhome = n: u: ''
+          uid="$(id -u ${u.name})"
+          gid="$(id -g ${u.name})"
+          h="${u.home}"
+          test -a "$h" || mkdir -p "$h" || true
+          test "$(stat -c %u "$h")" = $uid || chown $uid "$h" || true
+          test "$(stat -c %g "$h")" = $gid || chgrp $gid "$h" || true
+        '';
+        groupadd = n: g: ''
+          if [ -z "$(getent group "${g.name}")" ]; then
+            echo "Adding group ${g.name}"
+            ${pkgs.shadow}/sbin/groupadd "${g.name}"
+          fi
+        '';
+        useradd = n: u: ''
+          if ! id "${u.name}" &>/dev/null; then
+            echo "Adding user ${u.name}"
+            ${pkgs.shadow}/sbin/useradd \
+              -g "${u.group}" \
+              -s "${u.shell}" \
+              -d "${u.home}" \
+              "${u.name}"
+            echo "${u.name}:x" | ${pkgs.shadow}/sbin/chpasswd -e
+          fi
+        '';
       in stringAfter [ "etc" ] ''
         touch /etc/group
         touch /etc/passwd
@@ -441,6 +479,8 @@ in
         VISUAL=${merger passwdFile} ${pkgs.shadow}/sbin/vipw &>/dev/null
         ${pkgs.shadow}/sbin/grpconv
         ${pkgs.shadow}/sbin/pwconv
+        ${concatStrings (mapAttrsToList groupadd nonGidGroups)}
+        ${concatStrings (mapAttrsToList useradd nonUidUsers)}
         ${concatStrings (mapAttrsToList mkhome mkhomeUsers)}
         ${concatStrings (mapAttrsToList setpw setpwUsers)}
       '';
@@ -448,7 +488,17 @@ in
     # for backwards compatibility
     system.activationScripts.groups = stringAfter [ "users" ] "";
 
-    assertions = [ { assertion = !cfg.enforceIdUniqueness || (uidsAreUnique && gidsAreUnique); message = "uids and gids must be unique!"; } ];
+    assertions = [
+      { assertion = !cfg.enforceIdUniqueness || (uidsAreUnique && gidsAreUnique);
+        message = "uids and gids must be unique!";
+      }
+      { assertion = cfg.mutableUsers || (nonUidUsers == {});
+        message = "When mutableUsers is false, no uid can be null";
+      }
+      { assertion = cfg.mutableUsers || (nonGidGroups == {});
+        message = "When mutableUsers is false, no gid can be null";
+      }
+    ];
 
   };
 

From 7de29bd26f5e514e95d5d261c08f3029337eecb3 Mon Sep 17 00:00:00 2001
From: Oliver Charles <ollie@ocharles.org.uk>
Date: Sun, 6 Apr 2014 11:56:43 +0100
Subject: [PATCH 060/567] Create the 'postgres' superuser

Old PostgreSQL installations were created using the 'root' database
user. In this case, we need to create a new 'postgres' account, as we
now assume that this is the superuser account.

Unfortunately, these machines will be left with a 'root' user as
well (which will have ownership of some databases). While PostgreSQL
does let you rename superuser accounts, you can only do that when you
are connected as a *different* database user. Thus we'd have to create a
special superuser account to do the renaming. As we default to using
ident authentication, we would have to create a system level user to do
this. This all feels rather complex, so I'm currently opting to keep the
'root' user on these old machines.
---
 nixos/modules/services/databases/postgresql.nix | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/nixos/modules/services/databases/postgresql.nix b/nixos/modules/services/databases/postgresql.nix
index 33ee7244e3f4..08a9cdd9f5da 100644
--- a/nixos/modules/services/databases/postgresql.nix
+++ b/nixos/modules/services/databases/postgresql.nix
@@ -197,6 +197,7 @@ in
                 fi
                 rm -f ${cfg.dataDir}/*.conf
                 touch "${cfg.dataDir}/.first_startup"
+                touch "${cfg.dataDir}/postgresql-user-created"
             fi
 
             ln -sfn "${configFile}" "${cfg.dataDir}/postgresql.conf"
@@ -230,6 +231,11 @@ in
                 sleep 0.1
             done
 
+            if ! [ -e ${cfg.dataDir}/postgresql-user-created ]; then
+              createuser --superuser postgres
+              touch ${cfg.dataDir}/postgresql-user-created
+            fi
+
             if test -e "${cfg.dataDir}/.first_startup"; then
               ${optionalString (cfg.initialScript != null) ''
                 cat "${cfg.initialScript}" | su -s ${pkgs.stdenv.shell} postgres -c 'psql postgres'

From e2066841106a6b89093ab685368742efa4e3c2c1 Mon Sep 17 00:00:00 2001
From: Oliver Charles <ollie@ocharles.org.uk>
Date: Sun, 6 Apr 2014 12:00:02 +0100
Subject: [PATCH 061/567] Use PostgreSQL 9.3's `pg_isready` to wait for
 connectivity

The postgresql module has a postStart section that waits for a database
to accept connections before continuing. However, this assumes various
properties about the database - specifically the database user
and (implicitly) the database name. This means that for old
installations, this command fails because there is no 'postgres' user,
and the service never starts.

While 7deff39 does create the 'postgres' user, a better solution is to
use `pg_isready`, who's sole purpose is to check if the database is
accepting connections. This has no dependency on users, so should be
more robust.
---
 nixos/modules/services/databases/postgresql.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/nixos/modules/services/databases/postgresql.nix b/nixos/modules/services/databases/postgresql.nix
index 08a9cdd9f5da..ed66c15e304d 100644
--- a/nixos/modules/services/databases/postgresql.nix
+++ b/nixos/modules/services/databases/postgresql.nix
@@ -226,7 +226,7 @@ in
         # Wait for PostgreSQL to be ready to accept connections.
         postStart =
           ''
-            while ! su -s ${pkgs.stdenv.shell} postgres -c 'psql postgres -c ""' 2> /dev/null; do
+            while ! ${pkgs.postgresql93}/bin/pg_isready > /dev/null; do
                 if ! kill -0 "$MAINPID"; then exit 1; fi
                 sleep 0.1
             done

From 5174e6db807f36e3024adeaa1107c0486e88b135 Mon Sep 17 00:00:00 2001
From: Luca Bruno <lucabru@src.gnome.org>
Date: Sun, 6 Apr 2014 12:25:15 +0200
Subject: [PATCH 062/567] gnome-backgrounds: new package

---
 .../services/x11/desktop-managers/gnome3.nix     |  1 +
 .../gnome-3/core/gnome-backgrounds/default.nix   | 16 ++++++++++++++++
 pkgs/desktops/gnome-3/default.nix                |  2 ++
 3 files changed, 19 insertions(+)
 create mode 100644 pkgs/desktops/gnome-3/core/gnome-backgrounds/default.nix

diff --git a/nixos/modules/services/x11/desktop-managers/gnome3.nix b/nixos/modules/services/x11/desktop-managers/gnome3.nix
index f4230fd1dd26..4f876b9b111c 100644
--- a/nixos/modules/services/x11/desktop-managers/gnome3.nix
+++ b/nixos/modules/services/x11/desktop-managers/gnome3.nix
@@ -57,6 +57,7 @@ in {
         gnome3.yelp
         pkgs.glib_networking
         pkgs.ibus
+        gnome3.gnome-backgrounds
         gnome3.gnome_shell
         gnome3.gnome_settings_daemon
         gnome3.gnome_terminal
diff --git a/pkgs/desktops/gnome-3/core/gnome-backgrounds/default.nix b/pkgs/desktops/gnome-3/core/gnome-backgrounds/default.nix
new file mode 100644
index 000000000000..41f75e6e3c54
--- /dev/null
+++ b/pkgs/desktops/gnome-3/core/gnome-backgrounds/default.nix
@@ -0,0 +1,16 @@
+{ stdenv, fetchurl, pkgconfig, intltool }:
+
+stdenv.mkDerivation rec {
+  name = "gnome-backgrounds-3.12.0";
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/gnome-backgrounds/3.12/${name}.tar.xz";
+    sha256 = "77a893025a0bed5753631a810154cad53fb2cf34c8ee988016217cd8862eab42";
+  };
+
+  nativeBuildInputs = [ pkgconfig intltool ];
+
+  meta = with stdenv.lib; {
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/desktops/gnome-3/default.nix b/pkgs/desktops/gnome-3/default.nix
index b4bb2c8320e6..00bc653c1f92 100644
--- a/pkgs/desktops/gnome-3/default.nix
+++ b/pkgs/desktops/gnome-3/default.nix
@@ -38,6 +38,8 @@ rec {
 
   gjs = callPackage ./core/gjs { };
 
+  gnome-backgrounds = callPackage ./core/gnome-backgrounds { };
+
   gnome_control_center = callPackage ./core/gnome-control-center { };
 
   gnome-calculator = callPackage ./core/gnome-calculator { };

From c70c038624dcefecfc9736d39eba30f516f88dc5 Mon Sep 17 00:00:00 2001
From: Luca Bruno <lucabru@src.gnome.org>
Date: Sun, 6 Apr 2014 12:33:28 +0200
Subject: [PATCH 063/567] gnome-dictionary: new package

Dictionary is the GNOME application to look up definitions

https://wiki.gnome.org/Apps/Dictionary
---
 .../gnome-3/core/gnome-dictionary/default.nix | 38 +++++++++++++++++++
 pkgs/desktops/gnome-3/default.nix             |  2 +
 2 files changed, 40 insertions(+)
 create mode 100644 pkgs/desktops/gnome-3/core/gnome-dictionary/default.nix

diff --git a/pkgs/desktops/gnome-3/core/gnome-dictionary/default.nix b/pkgs/desktops/gnome-3/core/gnome-dictionary/default.nix
new file mode 100644
index 000000000000..6f68916b781e
--- /dev/null
+++ b/pkgs/desktops/gnome-3/core/gnome-dictionary/default.nix
@@ -0,0 +1,38 @@
+{ stdenv, intltool, fetchurl
+, pkgconfig, gtk3, glib, hicolor_icon_theme
+, bash, makeWrapper, itstool, libxml2
+, gnome3, librsvg, gdk_pixbuf, file }:
+
+stdenv.mkDerivation rec {
+  name = "gnome-dictionary-3.10.0";
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/gnome-dictionary/3.10/${name}.tar.xz";
+    sha256 = "258b60fe50f7d0580a7dc3bb83f7fe2f6f0597d4013d97ac083c3f062c350ed7";
+  };
+
+  doCheck = true;
+
+  NIX_CFLAGS_COMPILE = "-I${gnome3.glib}/include/gio-unix-2.0";
+
+  propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
+  propagatedBuildInputs = [ gdk_pixbuf gnome3.gnome_icon_theme librsvg
+                            hicolor_icon_theme gnome3.gnome_icon_theme_symbolic ];
+
+  buildInputs = [ pkgconfig gtk3 glib intltool itstool libxml2 file
+                  gnome3.gsettings_desktop_schemas makeWrapper ];
+
+  preFixup = ''
+    wrapProgram "$out/bin/gnome-dictionary" \
+      --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
+      --prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://wiki.gnome.org/Apps/Dictionary;
+    description = "Dictionary is the GNOME application to look up definitions";
+    maintainers = with maintainers; [ lethalman ];
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/desktops/gnome-3/default.nix b/pkgs/desktops/gnome-3/default.nix
index 00bc653c1f92..4f902a96358c 100644
--- a/pkgs/desktops/gnome-3/default.nix
+++ b/pkgs/desktops/gnome-3/default.nix
@@ -46,6 +46,8 @@ rec {
 
   gnome_common = callPackage ./core/gnome-common { };
 
+  gnome-dictionary = callPackage ./core/gnome-dictionary { };
+
   gnome-disk-utility = callPackage ./core/gnome-disk-utility { };
 
   gnome-font-viewer = callPackage ./core/gnome-font-viewer { };

From eca21f192602e1fafac30e1ca53ac6d769b23a08 Mon Sep 17 00:00:00 2001
From: Luca Bruno <lucabru@src.gnome.org>
Date: Sun, 6 Apr 2014 12:47:17 +0200
Subject: [PATCH 064/567] totem-pl-parser: new package

Simple GObject-based library to parse and save a host of playlist formats

https://wiki.gnome.org/Apps/Videos
---
 .../gnome-3/core/totem-pl-parser/default.nix  | 20 +++++++++++++++++++
 pkgs/desktops/gnome-3/default.nix             |  2 ++
 2 files changed, 22 insertions(+)
 create mode 100644 pkgs/desktops/gnome-3/core/totem-pl-parser/default.nix

diff --git a/pkgs/desktops/gnome-3/core/totem-pl-parser/default.nix b/pkgs/desktops/gnome-3/core/totem-pl-parser/default.nix
new file mode 100644
index 000000000000..f1b3bfe53c13
--- /dev/null
+++ b/pkgs/desktops/gnome-3/core/totem-pl-parser/default.nix
@@ -0,0 +1,20 @@
+{ stdenv, fetchurl, pkgconfig, file, intltool, gmime, libxml2, libsoup }:
+
+stdenv.mkDerivation rec {
+  name = "totem-pl-parser-3.10.2";
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/totem-pl-parser/3.10/${name}.tar.xz";
+    sha256 = "38be09bddc46ddecd2b5ed7c82144ef52aafe879a5ec3d8b192b4b64ba995469";
+  };
+
+  buildInputs = [ pkgconfig file intltool gmime libxml2 libsoup ];
+
+  meta = with stdenv.lib; {
+    homepage = https://wiki.gnome.org/Apps/Videos;
+    description = "Simple GObject-based library to parse and save a host of playlist formats";
+    maintainers = with maintainers; [ lethalman ];
+    license = licenses.lgpl2;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/desktops/gnome-3/default.nix b/pkgs/desktops/gnome-3/default.nix
index 4f902a96358c..04fa0df90033 100644
--- a/pkgs/desktops/gnome-3/default.nix
+++ b/pkgs/desktops/gnome-3/default.nix
@@ -108,6 +108,8 @@ rec {
 
   rest = callPackage ./core/rest { };
 
+  totem-pl-parser = callPackage ./core/totem-pl-parser { };
+
   vte = callPackage ./core/vte { };
 
   vino = callPackage ./core/vino { };

From 994a1ee4ef105401eddbb7419181a6ed5b7b45d4 Mon Sep 17 00:00:00 2001
From: Luca Bruno <lucabru@src.gnome.org>
Date: Sun, 6 Apr 2014 14:44:40 +0200
Subject: [PATCH 065/567] grilo: new package

Framework that provides access to various sources of multimedia content, using a pluggable system

https://wiki.gnome.org/action/show/Projects/Grilo
---
 pkgs/desktops/gnome-3/core/grilo/default.nix | 22 ++++++++++++++++++++
 pkgs/desktops/gnome-3/default.nix            |  2 ++
 2 files changed, 24 insertions(+)
 create mode 100644 pkgs/desktops/gnome-3/core/grilo/default.nix

diff --git a/pkgs/desktops/gnome-3/core/grilo/default.nix b/pkgs/desktops/gnome-3/core/grilo/default.nix
new file mode 100644
index 000000000000..2a7f270300a4
--- /dev/null
+++ b/pkgs/desktops/gnome-3/core/grilo/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, fetchurl, pkgconfig, file, intltool, glib, libxml2, gnome3 }:
+
+stdenv.mkDerivation rec {
+  name = "grilo-0.2.10";
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/grilo/0.2/${name}.tar.xz";
+    sha256 = "559a2470fe541b0090bcfdfac7a33e92dba967727bbab6d0eca70e5636a77b25";
+  };
+
+  configureFlags = [ "--enable-grl-pls" ];
+
+  buildInputs = [ pkgconfig file intltool glib libxml2 gnome3.totem-pl-parser ];
+
+  meta = with stdenv.lib; {
+    homepage = https://wiki.gnome.org/action/show/Projects/Grilo;
+    description = "Framework that provides access to various sources of multimedia content, using a pluggable system";
+    maintainers = with maintainers; [ lethalman ];
+    license = licenses.lgpl2;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/desktops/gnome-3/default.nix b/pkgs/desktops/gnome-3/default.nix
index 04fa0df90033..e471616d9603 100644
--- a/pkgs/desktops/gnome-3/default.nix
+++ b/pkgs/desktops/gnome-3/default.nix
@@ -80,6 +80,8 @@ rec {
 
   gnome_themes_standard = callPackage ./core/gnome-themes-standard { };
 
+  grilo = callPackage ./core/grilo { };
+
   gsettings_desktop_schemas = callPackage ./core/gsettings-desktop-schemas { };
 
   gucharmap = callPackage ./core/gucharmap { };

From 289d554babc7184c8d350fb9ecd86b0ad2b6bda7 Mon Sep 17 00:00:00 2001
From: Luca Bruno <lucabru@src.gnome.org>
Date: Sun, 6 Apr 2014 14:45:33 +0200
Subject: [PATCH 066/567] totem: new package

Movie player for the GNOME desktop based on GStreamer

https://wiki.gnome.org/Apps/Videos
---
 pkgs/desktops/gnome-3/core/totem/default.nix | 48 ++++++++++++++++++++
 pkgs/desktops/gnome-3/default.nix            |  2 +
 2 files changed, 50 insertions(+)
 create mode 100644 pkgs/desktops/gnome-3/core/totem/default.nix

diff --git a/pkgs/desktops/gnome-3/core/totem/default.nix b/pkgs/desktops/gnome-3/core/totem/default.nix
new file mode 100644
index 000000000000..a6acbd192dbe
--- /dev/null
+++ b/pkgs/desktops/gnome-3/core/totem/default.nix
@@ -0,0 +1,48 @@
+{ stdenv, intltool, fetchurl, gst_all_1
+, clutter_gtk, clutter-gst, pygobject3, shared_mime_info
+, pkgconfig, gtk3, glib, hicolor_icon_theme
+, bash, makeWrapper, itstool, libxml2, dbus_glib
+, gnome3, librsvg, gdk_pixbuf, file }:
+
+stdenv.mkDerivation rec {
+  name = "totem-3.10.1";
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/totem/3.10/${name}.tar.xz";
+    sha256 = "b6b6038c9104965671a6d25e98496a487c3a9c590c9c104f668bd9f4fa7be9e2";
+  };
+
+  doCheck = true;
+
+  enableParallelBuilding = true;
+
+  NIX_CFLAGS_COMPILE = "-I${gnome3.glib}/include/gio-unix-2.0";
+
+  propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
+  propagatedBuildInputs = [ gdk_pixbuf gnome3.gnome_icon_theme librsvg
+                            hicolor_icon_theme gnome3.gnome_icon_theme_symbolic ];
+
+  buildInputs = [ pkgconfig gtk3 glib intltool itstool libxml2 gnome3.grilo
+                  clutter_gtk clutter-gst gnome3.totem-pl-parser
+                  gst_all_1.gstreamer gst_all_1.gst-plugins-base
+                  gst_all_1.gst-plugins-good gst_all_1.gst-plugins-bad
+                  gnome3.libpeas pygobject3 shared_mime_info dbus_glib
+                  gnome3.gsettings_desktop_schemas makeWrapper file ];
+
+  preFixup = ''
+    wrapProgram "$out/bin/totem" \
+      --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
+      --prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0" \
+      --prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
+
+    rm $out/share/icons/hicolor/icon-theme.cache
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://wiki.gnome.org/Apps/Videos;
+    description = "Movie player for the GNOME desktop based on GStreamer";
+    maintainers = with maintainers; [ lethalman ];
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/desktops/gnome-3/default.nix b/pkgs/desktops/gnome-3/default.nix
index e471616d9603..ee40ff19e716 100644
--- a/pkgs/desktops/gnome-3/default.nix
+++ b/pkgs/desktops/gnome-3/default.nix
@@ -110,6 +110,8 @@ rec {
 
   rest = callPackage ./core/rest { };
 
+  totem = callPackage ./core/totem { };
+
   totem-pl-parser = callPackage ./core/totem-pl-parser { };
 
   vte = callPackage ./core/vte { };

From 56709a0ac90497dfe1b1e339ba8fbbcb595d6072 Mon Sep 17 00:00:00 2001
From: Luca Bruno <lucabru@src.gnome.org>
Date: Sun, 6 Apr 2014 15:23:08 +0200
Subject: [PATCH 067/567] gnome-disk-utility: remove duplicated preFixup
 attribute

---
 pkgs/desktops/gnome-3/core/gnome-disk-utility/default.nix | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/pkgs/desktops/gnome-3/core/gnome-disk-utility/default.nix b/pkgs/desktops/gnome-3/core/gnome-disk-utility/default.nix
index c02f8f0a6653..e96da3168e0a 100644
--- a/pkgs/desktops/gnome-3/core/gnome-disk-utility/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-disk-utility/default.nix
@@ -29,9 +29,6 @@ stdenv.mkDerivation rec {
     wrapProgram "$out/bin/gnome-disks" \
       --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
       --prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
-  '';
-
-  preFixup = ''
     rm $out/share/icons/hicolor/icon-theme.cache
   '';
 

From 331d234ef6ecd6f32fb2a589a9a97ebf0bf85a9c Mon Sep 17 00:00:00 2001
From: Shea Levy <shea@shealevy.com>
Date: Sun, 6 Apr 2014 10:54:44 -0400
Subject: [PATCH 068/567] Add sproxy

---
 pkgs/tools/networking/sproxy/default.nix | 36 ++++++++++++++++++++++++
 pkgs/top-level/all-packages.nix          |  2 ++
 2 files changed, 38 insertions(+)
 create mode 100644 pkgs/tools/networking/sproxy/default.nix

diff --git a/pkgs/tools/networking/sproxy/default.nix b/pkgs/tools/networking/sproxy/default.nix
new file mode 100644
index 000000000000..342da193ffc7
--- /dev/null
+++ b/pkgs/tools/networking/sproxy/default.nix
@@ -0,0 +1,36 @@
+{ cabal, aeson, attoparsec, caseInsensitive, certificate
+, concurrentExtra, cryptoRandom, curl, dataDefault, hslogger, hspec
+, HTTP, httpTypes, interpolatedstringPerl6, mtl, network
+, optparseApplicative, postgresqlSimple, safe, SHA, split
+, stringConversions, time, tls, unorderedContainers, utf8String
+, x509, yaml, fetchurl
+}:
+
+cabal.mkDerivation (self: {
+  pname = "sproxy";
+  version = "0.7.4";
+  src = fetchurl {
+    url = "https://github.com/zalora/sproxy/archive/0.7.4.tar.gz";
+    sha256 = "1zlsln0ihg7p8jk5gdvm9as6gk4fs8vaa547iq2yvna4c1wb4amr";
+  };
+  isLibrary = false;
+  isExecutable = true;
+  buildDepends = [
+    aeson attoparsec caseInsensitive certificate concurrentExtra
+    cryptoRandom curl dataDefault hslogger HTTP httpTypes
+    interpolatedstringPerl6 mtl network optparseApplicative
+    postgresqlSimple safe SHA split stringConversions time tls
+    unorderedContainers utf8String x509 yaml
+  ];
+  testDepends = [
+    aeson attoparsec caseInsensitive certificate concurrentExtra
+    cryptoRandom curl dataDefault hslogger hspec HTTP httpTypes
+    interpolatedstringPerl6 mtl network optparseApplicative
+    postgresqlSimple safe SHA split stringConversions time tls
+    unorderedContainers utf8String x509 yaml
+  ];
+  meta = {
+    license = self.stdenv.lib.licenses.mit;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 99730b15d3e2..924f6a95d603 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1951,6 +1951,8 @@ let
 
   sparsehash = callPackage ../development/libraries/sparsehash { };
 
+  sproxy = haskellPackages.callPackage ../tools/networking/sproxy { };
+
   stardict = callPackage ../applications/misc/stardict/stardict.nix {
     inherit (gnome) libgnomeui scrollkeeper;
   };

From 79c9d556e0d1d9c3d82786e222784e76abd59358 Mon Sep 17 00:00:00 2001
From: Shea Levy <shea@shealevy.com>
Date: Sun, 6 Apr 2014 11:10:01 -0400
Subject: [PATCH 069/567] Add sproxy-web

---
 pkgs/tools/networking/sproxy-web/default.nix | 26 ++++++++++++++++++++
 pkgs/top-level/all-packages.nix              |  2 ++
 2 files changed, 28 insertions(+)
 create mode 100644 pkgs/tools/networking/sproxy-web/default.nix

diff --git a/pkgs/tools/networking/sproxy-web/default.nix b/pkgs/tools/networking/sproxy-web/default.nix
new file mode 100644
index 000000000000..fa3221a77598
--- /dev/null
+++ b/pkgs/tools/networking/sproxy-web/default.nix
@@ -0,0 +1,26 @@
+{ cabal, aeson, blazeHtml, blazeMarkup, configurator, hflags
+, httpTypes, mtl, postgresqlSimple, resourcePool, scotty, text
+, waiExtra, waiMiddlewareStatic, fetchurl
+}:
+
+cabal.mkDerivation (self: {
+  pname = "sproxy-web";
+  version = "0.1.0.2";
+  src = fetchurl {
+    url = "https://github.com/zalora/sproxy-web/archive/0.1.0.2.tar.gz";
+    sha256 = "1rdzglvsas0rdgq3j5c9ll411yk168x7v3l7w8zdjgafa947j4d4";
+  };
+  isLibrary = false;
+  isExecutable = true;
+  buildDepends = [
+    aeson blazeHtml blazeMarkup configurator hflags httpTypes mtl
+    postgresqlSimple resourcePool scotty text waiExtra
+    waiMiddlewareStatic
+  ];
+  meta = {
+    homepage = "http://bitbucket.org/zalorasea/sproxy-web";
+    description = "Web interface to sproxy";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 924f6a95d603..d8e94a3ba252 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1953,6 +1953,8 @@ let
 
   sproxy = haskellPackages.callPackage ../tools/networking/sproxy { };
 
+  sproxy-web = haskellPackages.callPackage ../tools/networking/sproxy-web { };
+
   stardict = callPackage ../applications/misc/stardict/stardict.nix {
     inherit (gnome) libgnomeui scrollkeeper;
   };

From 8d3d50191d3ca9cbb835d0d73f5daa431b00cda1 Mon Sep 17 00:00:00 2001
From: Austin Seipp <aseipp@pobox.com>
Date: Sun, 6 Apr 2014 01:46:28 -0500
Subject: [PATCH 070/567] spiped: version 1.3.1

Signed-off-by: Austin Seipp <aseipp@pobox.com>
---
 pkgs/tools/networking/spiped/default.nix | 25 ++++++++++++++++++++++++
 pkgs/top-level/all-packages.nix          |  2 ++
 2 files changed, 27 insertions(+)
 create mode 100644 pkgs/tools/networking/spiped/default.nix

diff --git a/pkgs/tools/networking/spiped/default.nix b/pkgs/tools/networking/spiped/default.nix
new file mode 100644
index 000000000000..1dd8804fb3d8
--- /dev/null
+++ b/pkgs/tools/networking/spiped/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchurl, openssl }:
+
+stdenv.mkDerivation rec {
+  name    = "spiped-${version}";
+  version = "1.3.1";
+
+  src = fetchurl {
+    url    = "http://www.tarsnap.com/spiped/${name}.tgz";
+    sha256 = "1viglk61v1v2ga1n31r0h8rvib5gy2h02lhhbbnqh2s6ps1sjn4a";
+  };
+
+  buildInputs = [ openssl ];
+  installPhase = ''
+    mkdir -p $out/bin $out/share/man/man1
+    make install BINDIR=$out/bin MAN1DIR=$out/share/man/man1
+  '';
+
+  meta = {
+    description = "utility for secure encrypted channels between sockets";
+    homepage    = "https://www.tarsnap.com/spiped.html";
+    license     = stdenv.lib.licenses.bsd2;
+    platforms   = stdenv.lib.platforms.unix;
+    maintainers = [ stdenv.lib.maintainers.thoughtpolice ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index d8e94a3ba252..d0fea1417de2 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1951,6 +1951,8 @@ let
 
   sparsehash = callPackage ../development/libraries/sparsehash { };
 
+  spiped = callPackage ../tools/networking/spiped { };
+
   sproxy = haskellPackages.callPackage ../tools/networking/sproxy { };
 
   sproxy-web = haskellPackages.callPackage ../tools/networking/sproxy-web { };

From 43dc48845bb6ca6ec1aaa918f1e33a6874c70eca Mon Sep 17 00:00:00 2001
From: Luca Bruno <lucabru@src.gnome.org>
Date: Sun, 6 Apr 2014 20:36:11 +0200
Subject: [PATCH 071/567] gnome-system-log: remove duplicated preFixup
 attribute

---
 pkgs/desktops/gnome-3/core/gnome-system-log/default.nix | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/pkgs/desktops/gnome-3/core/gnome-system-log/default.nix b/pkgs/desktops/gnome-3/core/gnome-system-log/default.nix
index 7152332217a2..cdc4b732b97e 100644
--- a/pkgs/desktops/gnome-3/core/gnome-system-log/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-system-log/default.nix
@@ -25,9 +25,6 @@ stdenv.mkDerivation rec {
     wrapProgram "$out/bin/gnome-system-log" \
       --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
       --prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
-  '';
-
-  preFixup = ''
     rm $out/share/icons/hicolor/icon-theme.cache
   '';
 

From 2b8002e44babe44e3dba0cc623ffd1d22ba39daf Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= <vcunat@gmail.com>
Date: Sun, 6 Apr 2014 21:20:23 +0200
Subject: [PATCH 072/567] cinnamon: fixup gschemas

---
 pkgs/desktops/cinnamon/cinnamon-desktop.nix | 4 ----
 pkgs/desktops/cinnamon/cinnamon-session.nix | 8 ++++----
 2 files changed, 4 insertions(+), 8 deletions(-)

diff --git a/pkgs/desktops/cinnamon/cinnamon-desktop.nix b/pkgs/desktops/cinnamon/cinnamon-desktop.nix
index e158b4898840..d3cf04e835d1 100644
--- a/pkgs/desktops/cinnamon/cinnamon-desktop.nix
+++ b/pkgs/desktops/cinnamon/cinnamon-desktop.nix
@@ -22,10 +22,6 @@ stdenv.mkDerivation {
     xkeyboard_config libxkbfile libX11 libXrandr libXext
   ];
 
-  postInstall  = ''
-    ${glib}/bin/glib-compile-schemas $out/share/glib-2.0/schemas/
-  '';
-
   meta = {
     homepage = "http://cinnamon.linuxmint.com";
     description = "Library and data for various Cinnamon modules";
diff --git a/pkgs/desktops/cinnamon/cinnamon-session.nix b/pkgs/desktops/cinnamon/cinnamon-session.nix
index 850dd4e6c5af..4caa95be0611 100644
--- a/pkgs/desktops/cinnamon/cinnamon-session.nix
+++ b/pkgs/desktops/cinnamon/cinnamon-session.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation {
   };
 
 
-  configureFlags = "--disable-schemas-compile --enable-systemd --disable-gconf" ;
+  configureFlags = "--enable-systemd --disable-gconf" ;
 
   patches = [ ./remove-sessionmigration.patch ./timeout.patch];
 
@@ -23,17 +23,17 @@ stdenv.mkDerivation {
     gtk3 dbus_glib upower json_glib
     intltool systemd xorg.xtrans
     makeWrapper
+    cinnamon-desktop/*gschemas*/
    ];
 
   preBuild = "patchShebangs ./scripts";
 
 
-  postInstall  = ''
-    ${glib}/bin/glib-compile-schemas $out/share/glib-2.0/schemas/
+  postFixup  = ''
     rm $out/share/icons/hicolor/icon-theme.cache
 
     for f in "$out"/bin/*; do
-      wrapProgram "$f" --prefix XDG_DATA_DIRS : "$out/share:${cinnamon-desktop}/share"
+      wrapProgram "$f" --prefix XDG_DATA_DIRS : "$out/share/gsettings-schemas:$GSETTINGS_SCHEMAS_PATH"
     done
   '';
 

From b4399324c1c8813849c4a4209de118d9cebe8b00 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= <vcunat@gmail.com>
Date: Sun, 6 Apr 2014 21:40:55 +0200
Subject: [PATCH 073/567] cinnamon gschemas: fix wrong and pointless part

---
 pkgs/desktops/cinnamon/cinnamon-session.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pkgs/desktops/cinnamon/cinnamon-session.nix b/pkgs/desktops/cinnamon/cinnamon-session.nix
index 4caa95be0611..534fa11f0467 100644
--- a/pkgs/desktops/cinnamon/cinnamon-session.nix
+++ b/pkgs/desktops/cinnamon/cinnamon-session.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation {
     rm $out/share/icons/hicolor/icon-theme.cache
 
     for f in "$out"/bin/*; do
-      wrapProgram "$f" --prefix XDG_DATA_DIRS : "$out/share/gsettings-schemas:$GSETTINGS_SCHEMAS_PATH"
+      wrapProgram "$f" --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
     done
   '';
 

From 784062214ce43ea9d2f6a1ea068e952d517476fe Mon Sep 17 00:00:00 2001
From: Austin Seipp <aseipp@pobox.com>
Date: Mon, 17 Mar 2014 18:28:10 -0500
Subject: [PATCH 074/567] gradm: fix gradm_pam path

We alredy rewrote /sbin/gradm, which technically matches
/sbin/gradm_pam, so this ends up working exactly as we want. Otherwise
we rewrite twice and gradm can't execute the PAM module with '-p'

Signed-off-by: Austin Seipp <aseipp@pobox.com>
---
 pkgs/os-specific/linux/gradm/default.nix | 1 -
 1 file changed, 1 deletion(-)

diff --git a/pkgs/os-specific/linux/gradm/default.nix b/pkgs/os-specific/linux/gradm/default.nix
index 680547be57cf..7f6f373b098d 100644
--- a/pkgs/os-specific/linux/gradm/default.nix
+++ b/pkgs/os-specific/linux/gradm/default.nix
@@ -15,7 +15,6 @@ stdenv.mkDerivation rec {
     substituteInPlace ./Makefile --replace "/usr/include/security/pam_" "${pam}/include/security/pam_"
     substituteInPlace ./gradm_defs.h --replace "/sbin/grlearn"   "$out/sbin/grlearn"
     substituteInPlace ./gradm_defs.h --replace "/sbin/gradm"     "$out/sbin/gradm"
-    substituteInPlace ./gradm_defs.h --replace "/sbin/gradm_pam" "$out/sbin/gradm_pam"
   '';
 
   postInstall = ''

From ef903555fda39785832f11c2b0b8fb8f3f96dbfc Mon Sep 17 00:00:00 2001
From: Austin Seipp <aseipp@pobox.com>
Date: Mon, 17 Mar 2014 18:29:28 -0500
Subject: [PATCH 075/567] gradm: learn of all accesses for /nix/store

This is necessary for gradm's learning mode to work, as otherwise the
/nix/store directory is marked hidden, which causes the kernel to reject
the linker loading ld-linux.so

Signed-off-by: Austin Seipp <aseipp@pobox.com>
---
 pkgs/os-specific/linux/gradm/default.nix | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/pkgs/os-specific/linux/gradm/default.nix b/pkgs/os-specific/linux/gradm/default.nix
index 7f6f373b098d..62a3cfa631e7 100644
--- a/pkgs/os-specific/linux/gradm/default.nix
+++ b/pkgs/os-specific/linux/gradm/default.nix
@@ -24,6 +24,8 @@ stdenv.mkDerivation rec {
     KERNEL=="grsec",          MODE="0622"
     LABEL="permissions_end"
     EOF
+
+    echo "inherit-learn /nix/store" >> $out/etc/grsec/learn_config
   '';
 
   makeFlags =

From 7863956686ab2243a850164c92e85bc5ce13d8ab Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:19:01 +0200
Subject: [PATCH 076/567] haskell-trifecta: update to version 1.4.2

---
 .../libraries/haskell/trifecta/default.nix        | 15 ++-------------
 1 file changed, 2 insertions(+), 13 deletions(-)

diff --git a/pkgs/development/libraries/haskell/trifecta/default.nix b/pkgs/development/libraries/haskell/trifecta/default.nix
index d9a9a2a01c5a..09f3b112c1b7 100644
--- a/pkgs/development/libraries/haskell/trifecta/default.nix
+++ b/pkgs/development/libraries/haskell/trifecta/default.nix
@@ -6,25 +6,14 @@
 
 cabal.mkDerivation (self: {
   pname = "trifecta";
-  version = "1.4.1";
-  sha256 = "0w8x9n7n57y997iajm42z44nm846fj88shc04dffn1xif3jw5zfc";
+  version = "1.4.2";
+  sha256 = "13kj1xz2bxixsqsrywdx3snl1hjkyv437ifwfrys1m4hnkv4aqai";
   buildDepends = [
     ansiTerminal ansiWlPprint blazeBuilder blazeHtml blazeMarkup
     charset comonad deepseq fingertree hashable lens mtl parsers
     reducers semigroups transformers unorderedContainers utf8String
   ];
   testDepends = [ doctest filepath ];
-  postPatch = ''
-    substituteInPlace trifecta.cabal \
-      --replace "blaze-html           >= 0.5     && < 0.6," "blaze-html           >= 0.5     && < 0.8," \
-      --replace "blaze-html           >= 0.5     && < 0.7," "blaze-html           >= 0.5     && < 0.8," \
-      --replace "blaze-markup         >= 0.5     && < 0.6," "blaze-markup         >= 0.5     && < 0.7," \
-      --replace "hashable             >= 1.2.1   && < 1.3," "hashable             >= 1.1     && < 1.3," \
-      --replace "hashable             >= 1.2     && < 1.3," "hashable             >= 1.1     && < 1.3," \
-      --replace "fingertree           >= 0.0.1   && < 0.1," "fingertree           >= 0.0.1   && < 0.2," \
-      --replace "comonad              == 3.*,"              "comonad              >= 3       && < 5," \
-      --replace "comonad              >= 3       && < 4,"   "comonad              >= 3       && < 5,"
-  '';
   meta = {
     homepage = "http://github.com/ekmett/trifecta/";
     description = "A modern parser combinator library with convenient diagnostics";

From 070f071469a8847f81633ac9a871c2d0d4359e88 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:19:52 +0200
Subject: [PATCH 077/567] cosmetic: re-generate expressions with cabal2nix

---
 pkgs/development/libraries/haskell/math-functions/default.nix | 1 -
 pkgs/development/libraries/haskell/mime-mail/default.nix      | 4 ++--
 pkgs/development/libraries/haskell/twitter-types/default.nix  | 2 +-
 3 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/pkgs/development/libraries/haskell/math-functions/default.nix b/pkgs/development/libraries/haskell/math-functions/default.nix
index a7a9d92fb978..b14449626c87 100644
--- a/pkgs/development/libraries/haskell/math-functions/default.nix
+++ b/pkgs/development/libraries/haskell/math-functions/default.nix
@@ -12,7 +12,6 @@ cabal.mkDerivation (self: {
     HUnit ieee754 QuickCheck testFramework testFrameworkHunit
     testFrameworkQuickcheck2 vector
   ];
-  # fails on i686 at version 0.1.5.2
   doCheck = false;
   meta = {
     homepage = "https://github.com/bos/math-functions";
diff --git a/pkgs/development/libraries/haskell/mime-mail/default.nix b/pkgs/development/libraries/haskell/mime-mail/default.nix
index 7ba509761687..e2559c70fee7 100644
--- a/pkgs/development/libraries/haskell/mime-mail/default.nix
+++ b/pkgs/development/libraries/haskell/mime-mail/default.nix
@@ -1,5 +1,5 @@
 { cabal, base64Bytestring, blazeBuilder, filepath, hspec, random
-, text, sendmail ? "sendmail"
+, sendmail ? "sendmail", text
 }:
 
 cabal.mkDerivation (self: {
@@ -10,7 +10,7 @@ cabal.mkDerivation (self: {
     base64Bytestring blazeBuilder filepath random text
   ];
   testDepends = [ blazeBuilder hspec text ];
-  configureFlags = [ "--ghc-option=-DMIME_MAIL_SENDMAIL_PATH=\"${sendmail}\"" ];
+  configureFlags = "--ghc-option=-DMIME_MAIL_SENDMAIL_PATH=\"${sendmail}\"";
   meta = {
     homepage = "http://github.com/snoyberg/mime-mail";
     description = "Compose MIME email messages";
diff --git a/pkgs/development/libraries/haskell/twitter-types/default.nix b/pkgs/development/libraries/haskell/twitter-types/default.nix
index 299d39c45469..a7fb544afc1f 100644
--- a/pkgs/development/libraries/haskell/twitter-types/default.nix
+++ b/pkgs/development/libraries/haskell/twitter-types/default.nix
@@ -12,6 +12,7 @@ cabal.mkDerivation (self: {
     aeson attoparsec httpTypes HUnit shakespeareText testFramework
     testFrameworkHunit testFrameworkThPrime text unorderedContainers
   ];
+  doCheck = false;
   meta = {
     homepage = "https://github.com/himura/twitter-types";
     description = "Twitter JSON parser and types";
@@ -19,5 +20,4 @@ cabal.mkDerivation (self: {
     platforms = self.ghc.meta.platforms;
     maintainers = [ self.stdenv.lib.maintainers.ocharles ];
   };
-  doCheck = false;
 })

From 483e2d7d7d0a3da5dba3262e568e549df4e30d10 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:20:21 +0200
Subject: [PATCH 078/567] haskell-smtps-gmail: update to version 1.1.1

---
 .../development/libraries/haskell/smtps-gmail/default.nix | 8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

diff --git a/pkgs/development/libraries/haskell/smtps-gmail/default.nix b/pkgs/development/libraries/haskell/smtps-gmail/default.nix
index a61daf6de255..eb8d97805a02 100644
--- a/pkgs/development/libraries/haskell/smtps-gmail/default.nix
+++ b/pkgs/development/libraries/haskell/smtps-gmail/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "smtps-gmail";
-  version = "1.1.0";
-  sha256 = "0zr2ndpwfnb9pkv69vx94p0vpghl0khd0wbmccjpk6hlrp6fsj66";
+  version = "1.1.1";
+  sha256 = "1ccj9rmbplh0c7h6rpg3ry213nb1lrhf7hm2vl7kq9lv0nb7cy97";
   buildDepends = [
     base64Bytestring cprngAes dataDefault filepath mimeMail network
     stringsearch text tls
@@ -16,8 +16,4 @@ cabal.mkDerivation (self: {
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
   };
-  # adding a Setup script as it's needed by nix
-  preConfigure = ''
-    printf "import Distribution.Simple\nmain = defaultMain\n" > Setup.hs
-  '';
 })

From 267a1692f313c84d9a18959c2c2e879c81c603c7 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:23:01 +0200
Subject: [PATCH 079/567] haskell-fdo-notify: add version 0.3.1

---
 .../libraries/haskell/fdo-notify/default.nix       | 14 ++++++++++++++
 pkgs/top-level/haskell-packages.nix                |  3 +++
 2 files changed, 17 insertions(+)
 create mode 100644 pkgs/development/libraries/haskell/fdo-notify/default.nix

diff --git a/pkgs/development/libraries/haskell/fdo-notify/default.nix b/pkgs/development/libraries/haskell/fdo-notify/default.nix
new file mode 100644
index 000000000000..86f3d7e0d1de
--- /dev/null
+++ b/pkgs/development/libraries/haskell/fdo-notify/default.nix
@@ -0,0 +1,14 @@
+{ cabal, dbus }:
+
+cabal.mkDerivation (self: {
+  pname = "fdo-notify";
+  version = "0.3.1";
+  sha256 = "1n4zk1i7g34w0wk5zy8n4r63xbglxf62h8j78kv5fc2yn95l30vh";
+  buildDepends = [ dbus ];
+  meta = {
+    homepage = "http://bitbucket.org/taejo/fdo-notify/";
+    description = "Desktop Notifications client";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 186a39ecd772..08757faf4c8b 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -1080,8 +1080,11 @@ let result = let callPackage = x : y : modifyPrio (newScope result.finalReturn x
   executablePath = callPackage ../development/libraries/haskell/executable-path {};
 
   fay = callPackage ../development/libraries/haskell/fay {};
+
   fayBase = callPackage ../development/libraries/haskell/fay-base {};
 
+  fdoNotify = callPackage ../development/libraries/haskell/fdo-notify {};
+
   filepath_1_3_0_0 = callPackage ../development/libraries/haskell/filepath {};
   filepath = null; # a core package in recent GHCs
 

From 9000db8b1ef49c23c5eded7efa5fdf1a0472a6c2 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:23:06 +0200
Subject: [PATCH 080/567] haskell-git-annex: update to version 5.20140402

---
 .../git-and-tools/git-annex/default.nix          | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/pkgs/applications/version-management/git-and-tools/git-annex/default.nix b/pkgs/applications/version-management/git-and-tools/git-annex/default.nix
index d64230aa50dd..93735d266d6c 100644
--- a/pkgs/applications/version-management/git-and-tools/git-annex/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-annex/default.nix
@@ -1,9 +1,9 @@
 { cabal, aeson, async, blazeBuilder, bloomfilter, bup, byteable
 , caseInsensitive, clientsession, cryptoApi, cryptohash, curl
 , dataDefault, dataenc, DAV, dbus, dlist, dns, editDistance
-, extensibleExceptions, feed, filepath, git, gnupg1, gnutls, hamlet
-, hinotify, hS3, hslogger, HTTP, httpClient, httpConduit, httpTypes
-, IfElse, json, liftedBase, lsof, MissingH
+, extensibleExceptions, fdoNotify, feed, filepath, git, gnupg1
+, gnutls, hamlet, hinotify, hS3, hslogger, HTTP, httpClient
+, httpConduit, httpTypes, IfElse, json, liftedBase, lsof, MissingH
 , MonadCatchIOTransformers, monadControl, mtl, network
 , networkConduit, networkInfo, networkMulticast
 , networkProtocolXmpp, openssh, optparseApplicative, perl
@@ -16,16 +16,16 @@
 
 cabal.mkDerivation (self: {
   pname = "git-annex";
-  version = "5.20140320";
-  sha256 = "0jhg5nbvdsiaprpj4h57fpfskhx0nqva4yx6krfd90i9gwgkm8l5";
+  version = "5.20140402";
+  sha256 = "138zs2nf8k9kvywsajnd5ij9yksaijrgjd75v1b6c6mc3jjy3vhm";
   isLibrary = false;
   isExecutable = true;
   buildDepends = [
     aeson async blazeBuilder bloomfilter byteable caseInsensitive
     clientsession cryptoApi cryptohash dataDefault dataenc DAV dbus
-    dlist dns editDistance extensibleExceptions feed filepath gnutls
-    hamlet hinotify hS3 hslogger HTTP httpClient httpConduit httpTypes
-    IfElse json liftedBase MissingH MonadCatchIOTransformers
+    dlist dns editDistance extensibleExceptions fdoNotify feed filepath
+    gnutls hamlet hinotify hS3 hslogger HTTP httpClient httpConduit
+    httpTypes IfElse json liftedBase MissingH MonadCatchIOTransformers
     monadControl mtl network networkConduit networkInfo
     networkMulticast networkProtocolXmpp optparseApplicative QuickCheck
     random regexTdfa SafeSemaphore securemem SHA stm tasty tastyHunit

From 36ac60f7573fa3b7ac4f9ac6fadaa331bb177d45 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:23:07 +0200
Subject: [PATCH 081/567] haskell-dns: update to version 1.2.1

---
 .../libraries/haskell/dns/default.nix            | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/pkgs/development/libraries/haskell/dns/default.nix b/pkgs/development/libraries/haskell/dns/default.nix
index 5b2d99fb90e5..97a120f21237 100644
--- a/pkgs/development/libraries/haskell/dns/default.nix
+++ b/pkgs/development/libraries/haskell/dns/default.nix
@@ -1,19 +1,19 @@
 { cabal, attoparsec, attoparsecConduit, binary, blazeBuilder
-, conduit, doctest, hspec, iproute, mtl, network, networkConduit
-, random
+, conduit, conduitExtra, doctest, hspec, iproute, mtl, network
+, random, resourcet
 }:
 
 cabal.mkDerivation (self: {
   pname = "dns";
-  version = "1.2.0";
-  sha256 = "1pzwvb1qycjw6qw34xhd4ap9jl0cc79d3i09b23bg0vqcz80vmpr";
+  version = "1.2.1";
+  sha256 = "0xv8mj2x8ijqgi7gnh2shr7ns9qghiczm3lw9n37mxk02zbvw8h0";
   buildDepends = [
-    attoparsec attoparsecConduit binary blazeBuilder conduit iproute
-    mtl network networkConduit random
+    attoparsec attoparsecConduit binary blazeBuilder conduit
+    conduitExtra iproute mtl network random resourcet
   ];
   testDepends = [
-    attoparsec attoparsecConduit binary blazeBuilder conduit doctest
-    hspec iproute mtl network networkConduit random
+    attoparsec attoparsecConduit binary blazeBuilder conduit
+    conduitExtra doctest hspec iproute mtl network random resourcet
   ];
   testTarget = "spec";
   meta = {

From ee105b4a94b201e1185f14b6584dea877b9e253e Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:23:09 +0200
Subject: [PATCH 082/567] haskell-fb: update to version 1.0

---
 .../libraries/haskell/fb/default.nix          | 19 +++++++++----------
 1 file changed, 9 insertions(+), 10 deletions(-)

diff --git a/pkgs/development/libraries/haskell/fb/default.nix b/pkgs/development/libraries/haskell/fb/default.nix
index dbade4c9f84f..89f8a2121f83 100644
--- a/pkgs/development/libraries/haskell/fb/default.nix
+++ b/pkgs/development/libraries/haskell/fb/default.nix
@@ -1,5 +1,5 @@
-{ cabal, aeson, attoparsec, attoparsecConduit, base16Bytestring
-, base64Bytestring, cereal, conduit, cryptoApi, cryptohash
+{ cabal, aeson, attoparsec, base16Bytestring, base64Bytestring
+, cereal, conduit, conduitExtra, cryptoApi, cryptohash
 , cryptohashCryptoapi, dataDefault, hspec, httpConduit, httpTypes
 , HUnit, liftedBase, monadControl, monadLogger, QuickCheck
 , resourcet, text, time, transformers, transformersBase
@@ -8,18 +8,17 @@
 
 cabal.mkDerivation (self: {
   pname = "fb";
-  version = "0.15.2";
-  sha256 = "1nkgw4978kwhqs7h6rlsspx2f9dbmsywjn57v2fg1c1lg271rz1d";
+  version = "1.0";
+  sha256 = "1pkjpzhdysq5vn302wipz62w6v9fibpvd4smaylv8wgn09si91ji";
   buildDepends = [
-    aeson attoparsec attoparsecConduit base16Bytestring
-    base64Bytestring cereal conduit cryptoApi cryptohash
-    cryptohashCryptoapi dataDefault httpConduit httpTypes liftedBase
-    monadControl monadLogger resourcet text time transformers
-    transformersBase unorderedContainers
+    aeson attoparsec base16Bytestring base64Bytestring cereal conduit
+    conduitExtra cryptoApi cryptohash cryptohashCryptoapi dataDefault
+    httpConduit httpTypes liftedBase monadControl monadLogger resourcet
+    text time transformers transformersBase unorderedContainers
   ];
   testDepends = [
     aeson conduit dataDefault hspec httpConduit HUnit liftedBase
-    monadControl QuickCheck text time transformers
+    monadControl QuickCheck resourcet text time transformers
   ];
   doCheck = false;
   meta = {

From 8c022626b207128fa3c396c7850167be5ba5d87d Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:23:11 +0200
Subject: [PATCH 083/567] haskell-hakyll: update to version 4.5.0.1

---
 pkgs/development/libraries/haskell/hakyll/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/hakyll/default.nix b/pkgs/development/libraries/haskell/hakyll/default.nix
index cd051bd938c9..13128b75b9fd 100644
--- a/pkgs/development/libraries/haskell/hakyll/default.nix
+++ b/pkgs/development/libraries/haskell/hakyll/default.nix
@@ -8,8 +8,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hakyll";
-  version = "4.5.0.0";
-  sha256 = "19rmib508zcaada7xj0p84dbkjwzfiaxaszpmc763wlpx15azw8z";
+  version = "4.5.0.1";
+  sha256 = "0zl8zjwkyrh5c0l190q6qw1w6mwhw7jsjk3l7qjpgxbmv730q7nz";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [

From b605e51010972ed9952ac88da39a536605eff94a Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:23:13 +0200
Subject: [PATCH 084/567] haskell-hint: update to version 0.4.1.0

---
 pkgs/development/libraries/haskell/hint/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/hint/default.nix b/pkgs/development/libraries/haskell/hint/default.nix
index 5534c2fc9da8..09fdfe232a66 100644
--- a/pkgs/development/libraries/haskell/hint/default.nix
+++ b/pkgs/development/libraries/haskell/hint/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hint";
-  version = "0.4.0.0";
-  sha256 = "0xs56ws7vwdjgvg7d31iqa111342an6rxvwhh7c3h4z1bq5l1l61";
+  version = "0.4.1.0";
+  sha256 = "1hc66yfzg9jrm5h3hd52rm4ca8ha0j93rhjpjh6hhzr4a40jv0pl";
   buildDepends = [
     exceptions extensibleExceptions filepath ghcMtl ghcPaths mtl random
     utf8String

From 481df7e6cdfb2ba8e7e4a1eb2954c242ef35c9c0 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:23:15 +0200
Subject: [PATCH 085/567] haskell-hoogle: update to version 4.2.31

---
 pkgs/development/libraries/haskell/hoogle/default.nix | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/pkgs/development/libraries/haskell/hoogle/default.nix b/pkgs/development/libraries/haskell/hoogle/default.nix
index 53b037ec3014..995a4ef5d9a4 100644
--- a/pkgs/development/libraries/haskell/hoogle/default.nix
+++ b/pkgs/development/libraries/haskell/hoogle/default.nix
@@ -1,19 +1,19 @@
 { cabal, aeson, binary, blazeBuilder, Cabal, caseInsensitive
 , cmdargs, conduit, deepseq, filepath, haskellSrcExts, httpTypes
-, parsec, QuickCheck, random, safe, shake, tagsoup, text, time
-, transformers, uniplate, vector, vectorAlgorithms, wai, warp
+, parsec, QuickCheck, random, resourcet, safe, shake, tagsoup, text
+, time, transformers, uniplate, vector, vectorAlgorithms, wai, warp
 }:
 
 cabal.mkDerivation (self: {
   pname = "hoogle";
-  version = "4.2.30";
-  sha256 = "0vw0chqsq8wmi1mpdxj1c9g4ah7lqxm8rwh85j2vyp56vfscw9q1";
+  version = "4.2.31";
+  sha256 = "176lyj236ncq0lg7vbl4bbm1a98ficj82aranrhyxdjzmbk3i67x";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
     aeson binary blazeBuilder Cabal caseInsensitive cmdargs conduit
     deepseq filepath haskellSrcExts httpTypes parsec QuickCheck random
-    safe shake tagsoup text time transformers uniplate vector
+    resourcet safe shake tagsoup text time transformers uniplate vector
     vectorAlgorithms wai warp
   ];
   testDepends = [ filepath ];

From 9b4cd56e99bba277f0a8e14f6f8986caf09bf209 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:23:16 +0200
Subject: [PATCH 086/567] haskell-hspec: update to version 1.9.1

---
 pkgs/development/libraries/haskell/hspec/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/hspec/default.nix b/pkgs/development/libraries/haskell/hspec/default.nix
index 0c41ab471f8d..5ba74dde34c9 100644
--- a/pkgs/development/libraries/haskell/hspec/default.nix
+++ b/pkgs/development/libraries/haskell/hspec/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hspec";
-  version = "1.9.0";
-  sha256 = "01nwxx63l9cl1smld7pwm59k6shs865iiy1jqwi97lkhzhy9cvhl";
+  version = "1.9.1";
+  sha256 = "1klx7gxg4a98rjhln6ixlmfvsgpxdkdg56jbl06bfxp2lmfyxm9p";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [

From bda2594998ddd50183259b14d419b60d71bd9188 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:23:17 +0200
Subject: [PATCH 087/567] haskell-language-ecmascript: update to version 0.16.1

---
 .../libraries/haskell/language-ecmascript/default.nix         | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/language-ecmascript/default.nix b/pkgs/development/libraries/haskell/language-ecmascript/default.nix
index 79404ffbcf0a..1a53881fd29e 100644
--- a/pkgs/development/libraries/haskell/language-ecmascript/default.nix
+++ b/pkgs/development/libraries/haskell/language-ecmascript/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "language-ecmascript";
-  version = "0.16";
-  sha256 = "1gz0089llxfmq9v2j5hp85h7w2vw50sgbl6dcd7i0s8m5zd3dmqg";
+  version = "0.16.1";
+  sha256 = "0pqb1r60jjmiwk9giaxnrp9a07h4a97kp6g0nznwpdy32x849gx3";
   buildDepends = [
     dataDefaultClass Diff mtl parsec QuickCheck testingFeat uniplate
     wlPprint

From db1a390d9d494c5295af6ed24bed101dcfac7e52 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:23:18 +0200
Subject: [PATCH 088/567] haskell-hlint: update to version 1.8.60

---
 pkgs/development/tools/haskell/hlint/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/tools/haskell/hlint/default.nix b/pkgs/development/tools/haskell/hlint/default.nix
index 72ba1ba6b87b..17ae7d508d3f 100644
--- a/pkgs/development/tools/haskell/hlint/default.nix
+++ b/pkgs/development/tools/haskell/hlint/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hlint";
-  version = "1.8.59";
-  sha256 = "14yn63zbbqwvxlis0kwga4mrz6qjr8kq1cq7f0rcilgqgh1dkwh8";
+  version = "1.8.60";
+  sha256 = "10kc4g9sipd5758n3x2xndaw1c887263gvff0y395drfgqh5qxal";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [

From 713bac535126f044251e26a7f44162960d10f44d Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:29:29 +0200
Subject: [PATCH 089/567] haskell-attoparsec-conduit: update to version 1.1.0

---
 .../libraries/haskell/attoparsec-conduit/default.nix | 12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)

diff --git a/pkgs/development/libraries/haskell/attoparsec-conduit/default.nix b/pkgs/development/libraries/haskell/attoparsec-conduit/default.nix
index 68b08e50686e..bdf42ba947d7 100644
--- a/pkgs/development/libraries/haskell/attoparsec-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/attoparsec-conduit/default.nix
@@ -1,15 +1,13 @@
-{ cabal, attoparsec, conduit, hspec, resourcet, text, transformers
-}:
+{ cabal, conduit }:
 
 cabal.mkDerivation (self: {
   pname = "attoparsec-conduit";
-  version = "1.0.1.2";
-  sha256 = "1j05r7mvm83wgnka7asmwd1dj4ajkg548mryyhpr7dd53vn5lbx0";
-  buildDepends = [ attoparsec conduit text transformers ];
-  testDepends = [ attoparsec conduit hspec resourcet text ];
+  version = "1.1.0";
+  sha256 = "18xn3nzxfghcd88cana1jw85ijv0ysw3bp36fb6r5wsf6m79z01y";
+  buildDepends = [ conduit ];
   meta = {
     homepage = "http://github.com/snoyberg/conduit";
-    description = "Consume attoparsec parsers via conduit";
+    description = "Consume attoparsec parsers via conduit. (deprecated)";
     license = self.stdenv.lib.licenses.mit;
     platforms = self.ghc.meta.platforms;
     maintainers = [ self.stdenv.lib.maintainers.andres ];

From 6a8decdf5859cb3a3fffcb27ad536ca97e08c1d6 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:29:31 +0200
Subject: [PATCH 090/567] haskell-aws: update to version 0.8.6

---
 .../libraries/haskell/aws/default.nix         | 24 ++++++++++---------
 1 file changed, 13 insertions(+), 11 deletions(-)

diff --git a/pkgs/development/libraries/haskell/aws/default.nix b/pkgs/development/libraries/haskell/aws/default.nix
index af8b2785aa96..de7377c7532a 100644
--- a/pkgs/development/libraries/haskell/aws/default.nix
+++ b/pkgs/development/libraries/haskell/aws/default.nix
@@ -1,21 +1,23 @@
-{ cabal, attempt, base64Bytestring, blazeBuilder, caseInsensitive
-, cereal, conduit, cryptoApi, cryptohash, cryptohashCryptoapi
-, dataDefault, failure, filepath, httpConduit, httpTypes
-, liftedBase, monadControl, mtl, resourcet, text, time
-, transformers, utf8String, xmlConduit
+{ cabal, aeson, attempt, attoparsecConduit, base16Bytestring
+, base64Bytestring, blazeBuilder, caseInsensitive, cereal, conduit
+, cryptoApi, cryptohash, cryptohashCryptoapi, dataDefault, failure
+, filepath, httpConduit, httpTypes, liftedBase, monadControl, mtl
+, resourcet, text, time, transformers, unorderedContainers
+, utf8String, vector, xmlConduit
 }:
 
 cabal.mkDerivation (self: {
   pname = "aws";
-  version = "0.8.4";
-  sha256 = "0p4m07lw33wd82phwfvyr1alqx3bsafnf25n60h1mss7l0rzyn0i";
+  version = "0.8.6";
+  sha256 = "19hjwj15zmhmf33n2d2dkwan59ylwkaslh85sh04v05hsm8y5y1a";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
-    attempt base64Bytestring blazeBuilder caseInsensitive cereal
-    conduit cryptoApi cryptohash cryptohashCryptoapi dataDefault
-    failure filepath httpConduit httpTypes liftedBase monadControl mtl
-    resourcet text time transformers utf8String xmlConduit
+    aeson attempt attoparsecConduit base16Bytestring base64Bytestring
+    blazeBuilder caseInsensitive cereal conduit cryptoApi cryptohash
+    cryptohashCryptoapi dataDefault failure filepath httpConduit
+    httpTypes liftedBase monadControl mtl resourcet text time
+    transformers unorderedContainers utf8String vector xmlConduit
   ];
   meta = {
     homepage = "http://github.com/aristidb/aws";

From 5f8857d4f542dd75d2a0e5913c21a638ca20cf51 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:29:32 +0200
Subject: [PATCH 091/567] haskell-basic-prelude: update to version 0.3.8

---
 pkgs/development/libraries/haskell/basic-prelude/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/basic-prelude/default.nix b/pkgs/development/libraries/haskell/basic-prelude/default.nix
index 807b80b81228..b923e444b1ec 100644
--- a/pkgs/development/libraries/haskell/basic-prelude/default.nix
+++ b/pkgs/development/libraries/haskell/basic-prelude/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "basic-prelude";
-  version = "0.3.7";
-  sha256 = "1lk4f41f226v7na1cw0c8y62lm3pgwmn4560g1wmhvyxcj7185q5";
+  version = "0.3.8";
+  sha256 = "0lywnsds0q1nr466s3pc2izfr58kp23z7ing9k7dlgbmh9cqxypg";
   buildDepends = [
     hashable liftedBase ReadArgs safe systemFilepath text transformers
     unorderedContainers vector

From b19cfe15ae4b5a8da59fe554a7a7fe1b3f7fa96e Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:29:33 +0200
Subject: [PATCH 092/567] haskell-blaze-builder-conduit: update to version
 1.1.0

---
 .../haskell/blaze-builder-conduit/default.nix     | 15 +++++----------
 1 file changed, 5 insertions(+), 10 deletions(-)

diff --git a/pkgs/development/libraries/haskell/blaze-builder-conduit/default.nix b/pkgs/development/libraries/haskell/blaze-builder-conduit/default.nix
index 16c352b7a332..932714cceb45 100644
--- a/pkgs/development/libraries/haskell/blaze-builder-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/blaze-builder-conduit/default.nix
@@ -1,18 +1,13 @@
-{ cabal, blazeBuilder, conduit, hspec, QuickCheck, text
-, transformers
-}:
+{ cabal, conduit }:
 
 cabal.mkDerivation (self: {
   pname = "blaze-builder-conduit";
-  version = "1.0.0";
-  sha256 = "15q0b0k5dxrp9cw2b4qf9mmjwz1mmxrn3890df5rc9z6yajajrc6";
-  buildDepends = [ blazeBuilder conduit text transformers ];
-  testDepends = [
-    blazeBuilder conduit hspec QuickCheck transformers
-  ];
+  version = "1.1.0";
+  sha256 = "0xxyn3lhcn1bkybhrl5dx68d0adf26ilf34gv0mxkwpfj7m7d3k3";
+  buildDepends = [ conduit ];
   meta = {
     homepage = "http://github.com/snoyberg/conduit";
-    description = "Convert streams of builders to streams of bytestrings";
+    description = "Convert streams of builders to streams of bytestrings. (deprecated)";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
     maintainers = [ self.stdenv.lib.maintainers.andres ];

From 2b2ddb51650411b064e39647dd76c5705bb7ef56 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:29:34 +0200
Subject: [PATCH 093/567] haskell-checkers: update to version 0.3.2

---
 pkgs/development/libraries/haskell/checkers/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/checkers/default.nix b/pkgs/development/libraries/haskell/checkers/default.nix
index 4742f5104daa..06b89ba85b42 100644
--- a/pkgs/development/libraries/haskell/checkers/default.nix
+++ b/pkgs/development/libraries/haskell/checkers/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "checkers";
-  version = "0.3.1";
-  sha256 = "0lhy8bk8kkj540kjbc76j4x4xsprqwlmxdrss4r0j1bxgmfwha6p";
+  version = "0.3.2";
+  sha256 = "0v8i6754syvjh2p5qdqh95j3swkar9077gidsnahwk9h6qfsx6r3";
   buildDepends = [ QuickCheck random ];
   meta = {
     description = "Check properties on standard classes and data structures";

From 3c4434726289bc211c7981153549e267bc6f2f1b Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:29:36 +0200
Subject: [PATCH 094/567] haskell-classy-prelude-conduit: update to version
 0.8.1

---
 .../libraries/haskell/classy-prelude-conduit/default.nix      | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/classy-prelude-conduit/default.nix b/pkgs/development/libraries/haskell/classy-prelude-conduit/default.nix
index eec5677a89fa..d128ee0a5a45 100644
--- a/pkgs/development/libraries/haskell/classy-prelude-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/classy-prelude-conduit/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "classy-prelude-conduit";
-  version = "0.8.0";
-  sha256 = "1br2gjzafxgq6ksxl895m5acaffnswd1dhcjppx6gnyfa6i3fq1m";
+  version = "0.8.1";
+  sha256 = "16wiii630ivcsxrjkmks995lcn0q0plmzbg4h08g5mdgscql2ax1";
   buildDepends = [
     classyPrelude conduit conduitCombinators monadControl resourcet
     systemFileio transformers void

From 005dad6f3a655d8bf92753c6f1d8779524fd9ec2 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:29:37 +0200
Subject: [PATCH 095/567] haskell-classy-prelude: update to version 0.8.3.1

---
 .../libraries/haskell/classy-prelude/default.nix       | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/pkgs/development/libraries/haskell/classy-prelude/default.nix b/pkgs/development/libraries/haskell/classy-prelude/default.nix
index 6768e6cfda33..e9b6d71eeb39 100644
--- a/pkgs/development/libraries/haskell/classy-prelude/default.nix
+++ b/pkgs/development/libraries/haskell/classy-prelude/default.nix
@@ -1,17 +1,17 @@
 { cabal, basicPrelude, chunkedData, enclosedExceptions, hashable
-, hspec, liftedBase, monoTraversable, QuickCheck, semigroups
+, hspec, liftedBase, monoTraversable, QuickCheck, semigroups, stm
 , systemFilepath, text, time, transformers, unorderedContainers
 , vector, vectorInstances
 }:
 
 cabal.mkDerivation (self: {
   pname = "classy-prelude";
-  version = "0.8.2";
-  sha256 = "1kvab1vns1mp0i0nyn0flg2m6f2sl8w1yr2c0x54172f20rdm5lv";
+  version = "0.8.3.1";
+  sha256 = "1mszblcww2pqy1zybib7rd4y6sqbd5nih0zzfi9zb69bwwb7mjai";
   buildDepends = [
     basicPrelude chunkedData enclosedExceptions hashable liftedBase
-    monoTraversable semigroups systemFilepath text time transformers
-    unorderedContainers vector vectorInstances
+    monoTraversable semigroups stm systemFilepath text time
+    transformers unorderedContainers vector vectorInstances
   ];
   testDepends = [
     hspec QuickCheck transformers unorderedContainers

From 5a5fe665f8e0bb113b5ff7be173f43ecf039334d Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:29:38 +0200
Subject: [PATCH 096/567] haskell-conduit-combinators: update to version 0.2.4

---
 .../haskell/conduit-combinators/default.nix     | 17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)

diff --git a/pkgs/development/libraries/haskell/conduit-combinators/default.nix b/pkgs/development/libraries/haskell/conduit-combinators/default.nix
index 5431f3dbe3a1..fdf5c4625fd8 100644
--- a/pkgs/development/libraries/haskell/conduit-combinators/default.nix
+++ b/pkgs/development/libraries/haskell/conduit-combinators/default.nix
@@ -1,17 +1,18 @@
 { cabal, base16Bytestring, base64Bytestring, chunkedData, conduit
-, hspec, monoTraversable, mwcRandom, primitive, silently
-, systemFileio, systemFilepath, text, transformers
-, transformersBase, unixCompat, vector, void
+, conduitExtra, hspec, monadControl, monoTraversable, mwcRandom
+, primitive, resourcet, silently, systemFileio, systemFilepath
+, text, transformers, transformersBase, unixCompat, vector, void
 }:
 
 cabal.mkDerivation (self: {
   pname = "conduit-combinators";
-  version = "0.2.3.1";
-  sha256 = "078i0727nhy75y6bxav6sxr1gz9cq04nvskdnzwabljppd34dqg4";
+  version = "0.2.4";
+  sha256 = "0pxzvxd1j48l7j2anv61bxv1accl0jc6vdf9vv0l3s2358smzwwv";
   buildDepends = [
-    base16Bytestring base64Bytestring chunkedData conduit
-    monoTraversable mwcRandom primitive systemFileio systemFilepath
-    text transformers transformersBase unixCompat vector void
+    base16Bytestring base64Bytestring chunkedData conduit conduitExtra
+    monadControl monoTraversable mwcRandom primitive resourcet
+    systemFileio systemFilepath text transformers transformersBase
+    unixCompat vector void
   ];
   testDepends = [
     base16Bytestring base64Bytestring chunkedData hspec monoTraversable

From 940ba2cf76c9cbbacaa5fc5b0228ba1e8fb233a9 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:29:39 +0200
Subject: [PATCH 097/567] haskell-conduit-extra: update to version 1.1.0

---
 .../haskell/conduit-extra/default.nix         | 20 +++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/pkgs/development/libraries/haskell/conduit-extra/default.nix b/pkgs/development/libraries/haskell/conduit-extra/default.nix
index 82ab990947d9..67b4186e6060 100644
--- a/pkgs/development/libraries/haskell/conduit-extra/default.nix
+++ b/pkgs/development/libraries/haskell/conduit-extra/default.nix
@@ -1,13 +1,25 @@
-{ cabal }:
+{ cabal, attoparsec, blazeBuilder, conduit, exceptions, filepath
+, hspec, monadControl, network, primitive, resourcet
+, streamingCommons, text, transformers, transformersBase
+}:
 
 cabal.mkDerivation (self: {
   pname = "conduit-extra";
-  version = "1.0.0";
-  sha256 = "120c3zay8svdw3b9nqgxlrj45a1d4xf0sijkg367m7hp22szvz8a";
+  version = "1.1.0";
+  sha256 = "08s8nafsdkd4dwmi2vsid82z8iv178vm9jbb322ygnbpf2a9y96y";
+  buildDepends = [
+    attoparsec blazeBuilder conduit filepath monadControl network
+    primitive resourcet streamingCommons text transformers
+    transformersBase
+  ];
+  testDepends = [
+    attoparsec blazeBuilder conduit exceptions hspec resourcet text
+    transformers transformersBase
+  ];
   noHaddock = true;
   meta = {
     homepage = "http://github.com/snoyberg/conduit";
-    description = "Temporary placeholder package";
+    description = "Batteries included conduit: adapters for common libraries";
     license = self.stdenv.lib.licenses.mit;
     platforms = self.ghc.meta.platforms;
   };

From 065e44f198974856cd70533d78fc2a1fdd2d47a3 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:29:41 +0200
Subject: [PATCH 098/567] haskell-conduit: update to version 1.1.0

---
 .../libraries/haskell/conduit/default.nix          | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/pkgs/development/libraries/haskell/conduit/default.nix b/pkgs/development/libraries/haskell/conduit/default.nix
index 8a73ef04d1d0..ac6211f2b38d 100644
--- a/pkgs/development/libraries/haskell/conduit/default.nix
+++ b/pkgs/development/libraries/haskell/conduit/default.nix
@@ -1,15 +1,15 @@
-{ cabal, hspec, liftedBase, mmorph, monadControl, mtl, QuickCheck
-, resourcet, text, textStreamDecode, transformers, transformersBase
-, void
+{ cabal, exceptions, hspec, liftedBase, mmorph, monadControl, mtl
+, QuickCheck, resourcet, text, textStreamDecode, transformers
+, transformersBase, void
 }:
 
 cabal.mkDerivation (self: {
   pname = "conduit";
-  version = "1.0.17.1";
-  sha256 = "0s2cszwfmz7j249bdydh0d97r5br1p6nizw7ycbkxlmpcrmdvifk";
+  version = "1.1.0";
+  sha256 = "17y8fnvl9s3676sslhc04abs4zqh90l2rdcazxglv0sfrfsdgwnq";
   buildDepends = [
-    liftedBase mmorph monadControl mtl resourcet text textStreamDecode
-    transformers transformersBase void
+    exceptions liftedBase mmorph monadControl mtl resourcet text
+    textStreamDecode transformers transformersBase void
   ];
   testDepends = [
     hspec mtl QuickCheck resourcet text transformers void

From c94198f13e200d8ade1813d44ad583cbcfdb2063 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:29:42 +0200
Subject: [PATCH 099/567] haskell-diagrams-lib: update to version 1.1.0.4

---
 pkgs/development/libraries/haskell/diagrams/lib.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/diagrams/lib.nix b/pkgs/development/libraries/haskell/diagrams/lib.nix
index c8c8bf5434da..4fcd944c15c2 100644
--- a/pkgs/development/libraries/haskell/diagrams/lib.nix
+++ b/pkgs/development/libraries/haskell/diagrams/lib.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "diagrams-lib";
-  version = "1.1.0.3";
-  sha256 = "1g4kcmpqsnb25yqvd6yv026znp7s5jhnqg1nvfxcaq0zz84w9ckh";
+  version = "1.1.0.4";
+  sha256 = "0i3n07qi7gnlbxxsd8j7wgqdqbjp8h44z837lajfwd108j01fw0i";
   buildDepends = [
     active colour dataDefaultClass diagramsCore filepath fingertree
     hashable intervals lens MemoTrie monoidExtras optparseApplicative

From 7ccdd41c27ecc2ec98924d1948ab07f576ae2bb8 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:29:43 +0200
Subject: [PATCH 100/567] haskell-distributive: update to version 0.4.3.1

---
 pkgs/development/libraries/haskell/distributive/default.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/development/libraries/haskell/distributive/default.nix b/pkgs/development/libraries/haskell/distributive/default.nix
index 4a0167eb0308..053f938ae564 100644
--- a/pkgs/development/libraries/haskell/distributive/default.nix
+++ b/pkgs/development/libraries/haskell/distributive/default.nix
@@ -4,13 +4,13 @@
 
 cabal.mkDerivation (self: {
   pname = "distributive";
-  version = "0.4.1";
-  sha256 = "0izsgasml3didklkk6z274fzfd1c6qnn0wlzprcz0bnd07zkh814";
+  version = "0.4.3.1";
+  sha256 = "17ny7nlxg6x08f88dyl15wsdhgi0cgafxdsl5wdw5vv6y0jsrx27";
   buildDepends = [ tagged transformers transformersCompat ];
   testDepends = [ doctest filepath ];
   meta = {
     homepage = "http://github.com/ekmett/distributive/";
-    description = "Haskell 98 Distributive functors -- Dual to Traversable";
+    description = "Distributive functors -- Dual to Traversable";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
   };

From 0fc2a8e0259d7032941f739ccc0f17cc71126e2d Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:29:44 +0200
Subject: [PATCH 101/567] haskell-esqueleto: update to version 1.3.9

---
 pkgs/development/libraries/haskell/esqueleto/default.nix | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/pkgs/development/libraries/haskell/esqueleto/default.nix b/pkgs/development/libraries/haskell/esqueleto/default.nix
index fd314d12d515..14d5cfda0689 100644
--- a/pkgs/development/libraries/haskell/esqueleto/default.nix
+++ b/pkgs/development/libraries/haskell/esqueleto/default.nix
@@ -5,15 +5,16 @@
 
 cabal.mkDerivation (self: {
   pname = "esqueleto";
-  version = "1.3.5";
-  sha256 = "0lz17fr4by31h1qdw0djbsb1zx9xgll5iphqq18gp587l799iy2p";
+  version = "1.3.9";
+  sha256 = "0dh11q77w0npilnbxyij6z7k7cx9cciwqs479xdjgjygnxa1xwdc";
   buildDepends = [
     conduit monadLogger persistent resourcet tagged text transformers
     unorderedContainers
   ];
   testDepends = [
     conduit hspec HUnit monadControl monadLogger persistent
-    persistentSqlite persistentTemplate QuickCheck text transformers
+    persistentSqlite persistentTemplate QuickCheck resourcet text
+    transformers
   ];
   meta = {
     homepage = "https://github.com/meteficha/esqueleto";

From a0d08de0c6441907bd73d1fddbf16182e3ab286e Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:29:45 +0200
Subject: [PATCH 102/567] haskell-ghc-mtl: update to version 1.2.0.0

---
 pkgs/development/libraries/haskell/ghc-mtl/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/ghc-mtl/default.nix b/pkgs/development/libraries/haskell/ghc-mtl/default.nix
index 1379d4a8ee8f..592961aa5549 100644
--- a/pkgs/development/libraries/haskell/ghc-mtl/default.nix
+++ b/pkgs/development/libraries/haskell/ghc-mtl/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "ghc-mtl";
-  version = "1.1.0.0";
-  sha256 = "1vmiy00fsdp1jzmpjrz8wzxbv3185h27aspw412pmcr4v1n29kxc";
+  version = "1.2.0.0";
+  sha256 = "0fk3adc56nhi46nf2w5ybp3cd9l13qqbpd5nbhfhbqj3g73j8p5a";
   buildDepends = [ exceptions extensibleExceptions mtl ];
   meta = {
     homepage = "http://hub.darcs.net/jcpetruzza/ghc-mtl";

From 77a6ba8e0bf7646c1a153dbbdcad0fbc395039eb Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:29:47 +0200
Subject: [PATCH 103/567] haskell-http-client-conduit: update to version 0.3.0

---
 .../libraries/haskell/http-client-conduit/default.nix  | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/pkgs/development/libraries/haskell/http-client-conduit/default.nix b/pkgs/development/libraries/haskell/http-client-conduit/default.nix
index 1c47b68f06ce..29840fa6ac00 100644
--- a/pkgs/development/libraries/haskell/http-client-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/http-client-conduit/default.nix
@@ -1,13 +1,13 @@
-{ cabal, conduit, httpClient, resourcet, transformers }:
+{ cabal, httpClient }:
 
 cabal.mkDerivation (self: {
   pname = "http-client-conduit";
-  version = "0.2.0.1";
-  sha256 = "0fy9vkxh7hvmp9ijifq8nx6y5y92n6d3s1vdyg53ln65pclc6jn5";
-  buildDepends = [ conduit httpClient resourcet transformers ];
+  version = "0.3.0";
+  sha256 = "0k2vq9y7kfbkhcsszjr74ahq5nw5z7dbzjhw1ixbigcr56axsd19";
+  buildDepends = [ httpClient ];
   meta = {
     homepage = "https://github.com/snoyberg/http-client";
-    description = "Frontend support for using http-client with conduit";
+    description = "Frontend support for using http-client with conduit (deprecated)";
     license = self.stdenv.lib.licenses.mit;
     platforms = self.ghc.meta.platforms;
   };

From ac9a4fc8124b13b1759265e3b320b818104996a0 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:29:48 +0200
Subject: [PATCH 104/567] haskell-http-client-multipart: update to version
 0.3.0.0

---
 .../haskell/http-client-multipart/default.nix     | 15 +++++----------
 1 file changed, 5 insertions(+), 10 deletions(-)

diff --git a/pkgs/development/libraries/haskell/http-client-multipart/default.nix b/pkgs/development/libraries/haskell/http-client-multipart/default.nix
index 068efdcb543d..3cf09f583a7a 100644
--- a/pkgs/development/libraries/haskell/http-client-multipart/default.nix
+++ b/pkgs/development/libraries/haskell/http-client-multipart/default.nix
@@ -1,18 +1,13 @@
-{ cabal, blazeBuilder, filepath, httpClient, httpTypes, mimeTypes
-, random, text, transformers
-}:
+{ cabal, httpClient }:
 
 cabal.mkDerivation (self: {
   pname = "http-client-multipart";
-  version = "0.2.0.0";
-  sha256 = "1bahkysh771p3mrfan1gmm6jyx62w3k57ba4rsnx7h1gwbilm878";
-  buildDepends = [
-    blazeBuilder filepath httpClient httpTypes mimeTypes random text
-    transformers
-  ];
+  version = "0.3.0.0";
+  sha256 = "18za6s3658hgm95rrygghrz0b643c7nkzaimb14v2hv82w3k9crg";
+  buildDepends = [ httpClient ];
   meta = {
     homepage = "https://github.com/snoyberg/http-client";
-    description = "Generate multipart uploads for http-client";
+    description = "Generate multipart uploads for http-client. (deprecated)";
     license = self.stdenv.lib.licenses.mit;
     platforms = self.ghc.meta.platforms;
   };

From e97158dca2cac868811333a3bf506bc1de8666fd Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:29:49 +0200
Subject: [PATCH 105/567] haskell-http-client: update to version 0.3.0.2

---
 .../libraries/haskell/http-client/default.nix | 20 +++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/pkgs/development/libraries/haskell/http-client/default.nix b/pkgs/development/libraries/haskell/http-client/default.nix
index 7ebdd3cee6aa..8816ec91a83c 100644
--- a/pkgs/development/libraries/haskell/http-client/default.nix
+++ b/pkgs/development/libraries/haskell/http-client/default.nix
@@ -1,22 +1,22 @@
-{ cabal, base64Bytestring, blazeBuilder, caseInsensitive, cookie
-, dataDefaultClass, deepseq, failure, hspec, httpTypes
-, monadControl, network, publicsuffixlist, text, time, transformers
-, zlib, zlibBindings
+{ cabal, async, base64Bytestring, blazeBuilder, caseInsensitive
+, cookie, dataDefaultClass, deepseq, exceptions, filepath, hspec
+, httpTypes, mimeTypes, monadControl, network, publicsuffixlist
+, random, streamingCommons, text, time, transformers, zlib
 }:
 
 cabal.mkDerivation (self: {
   pname = "http-client";
-  version = "0.2.2.4";
-  sha256 = "19dymsi39m2m7i99xsmcl9gigqm6jhynnv0w8w230mq8vraq1mcw";
+  version = "0.3.0.2";
+  sha256 = "1r858ml809c21q9q2kv0105y89cizncxym9mf1f0f165aa2hx71m";
   buildDepends = [
     base64Bytestring blazeBuilder caseInsensitive cookie
-    dataDefaultClass deepseq failure httpTypes network publicsuffixlist
-    text time transformers zlibBindings
+    dataDefaultClass deepseq exceptions filepath httpTypes mimeTypes
+    network publicsuffixlist random streamingCommons text time
+    transformers
   ];
   testDepends = [
-    base64Bytestring blazeBuilder caseInsensitive deepseq failure hspec
+    async base64Bytestring blazeBuilder caseInsensitive deepseq hspec
     httpTypes monadControl network text time transformers zlib
-    zlibBindings
   ];
   doCheck = false;
   meta = {

From 837c45dc0a6027c3e02437dc6a01b73904d2d05e Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:29:50 +0200
Subject: [PATCH 106/567] haskell-http-conduit: update to version 2.1.0

---
 .../haskell/http-conduit/default.nix          | 24 +++++++++----------
 1 file changed, 12 insertions(+), 12 deletions(-)

diff --git a/pkgs/development/libraries/haskell/http-conduit/default.nix b/pkgs/development/libraries/haskell/http-conduit/default.nix
index 398459f60769..1ea6ebafd8cc 100644
--- a/pkgs/development/libraries/haskell/http-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/http-conduit/default.nix
@@ -1,22 +1,22 @@
-{ cabal, blazeBuilder, caseInsensitive, conduit, connection, cookie
-, dataDefaultClass, hspec, httpClient, httpClientConduit
-, httpClientMultipart, httpClientTls, httpTypes, HUnit, liftedBase
-, network, networkConduit, resourcet, text, time, transformers
-, utf8String, wai, warp, warpTls
+{ cabal, blazeBuilder, caseInsensitive, conduit, conduitExtra
+, connection, cookie, dataDefaultClass, hspec, httpClient
+, httpClientTls, httpTypes, HUnit, liftedBase, monadControl, mtl
+, network, networkConduit, resourcet, streamingCommons, text, time
+, transformers, utf8String, wai, warp, warpTls
 }:
 
 cabal.mkDerivation (self: {
   pname = "http-conduit";
-  version = "2.0.0.8";
-  sha256 = "1yralv1nalvdpgamnbjl8xm4lrx22m3v6jancrzisq38a680q96b";
+  version = "2.1.0";
+  sha256 = "1qlqhrrc130c8wvgbbbkb7qrm8gp48gkv5xanqgb26amvny98gsv";
   buildDepends = [
-    conduit httpClient httpClientConduit httpClientTls httpTypes
-    liftedBase resourcet transformers
+    conduit httpClient httpClientTls httpTypes liftedBase monadControl
+    mtl resourcet transformers
   ];
   testDepends = [
-    blazeBuilder caseInsensitive conduit connection cookie
-    dataDefaultClass hspec httpClient httpClientMultipart httpTypes
-    HUnit liftedBase network networkConduit text time transformers
+    blazeBuilder caseInsensitive conduit conduitExtra connection cookie
+    dataDefaultClass hspec httpClient httpTypes HUnit liftedBase
+    network networkConduit streamingCommons text time transformers
     utf8String wai warp warpTls
   ];
   doCheck = false;

From 7c5538a58632c469b00d5452db6e020d3bdd56cd Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:29:52 +0200
Subject: [PATCH 107/567] haskell-http-reverse-proxy: update to version 0.3.1.5

---
 .../libraries/haskell/http-reverse-proxy/default.nix     | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/pkgs/development/libraries/haskell/http-reverse-proxy/default.nix b/pkgs/development/libraries/haskell/http-reverse-proxy/default.nix
index 957dbe020069..ff47ba142414 100644
--- a/pkgs/development/libraries/haskell/http-reverse-proxy/default.nix
+++ b/pkgs/development/libraries/haskell/http-reverse-proxy/default.nix
@@ -7,8 +7,8 @@
 
 cabal.mkDerivation (self: {
   pname = "http-reverse-proxy";
-  version = "0.3.1.4";
-  sha256 = "0j7k6njyp3qss08gja5p62zvqxdh7bpqfbzvkm23gdv8v1bgh5h6";
+  version = "0.3.1.5";
+  sha256 = "0rzwh5ph23592qycriam932bgb6q2nvjr7wayqz0sjvvxv661bk0";
   buildDepends = [
     async blazeBuilder caseInsensitive conduit conduitExtra
     dataDefaultClass httpClient httpTypes liftedBase monadControl
@@ -16,8 +16,9 @@ cabal.mkDerivation (self: {
     wai waiLogger word8
   ];
   testDepends = [
-    blazeBuilder conduit hspec httpConduit httpTypes liftedBase network
-    networkConduit transformers wai warp
+    blazeBuilder conduit conduitExtra hspec httpConduit httpTypes
+    liftedBase network networkConduit resourcet streamingCommons
+    transformers wai warp
   ];
   doCheck = false;
   meta = {

From dbd66791a54c3f765db165c7d259e3405f3b70a6 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:29:53 +0200
Subject: [PATCH 108/567] haskell-http-types: update to version 0.8.4

---
 pkgs/development/libraries/haskell/http-types/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/http-types/default.nix b/pkgs/development/libraries/haskell/http-types/default.nix
index ab523e07cf25..a3fa1c8c9ee4 100644
--- a/pkgs/development/libraries/haskell/http-types/default.nix
+++ b/pkgs/development/libraries/haskell/http-types/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "http-types";
-  version = "0.8.3";
-  sha256 = "02l1lhl2ajbm5f7zq363nlb21dpdg1m0qsy330arccmds7z9g7a2";
+  version = "0.8.4";
+  sha256 = "0bz7g537if863vk29z72hndf1x019dj7shj1aa77pssrxma3a685";
   buildDepends = [ blazeBuilder caseInsensitive text ];
   testDepends = [ blazeBuilder hspec QuickCheck text ];
   jailbreak = true;

From d5f85b022a89aca5e963fd54fa7d9bb54aaa44e0 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:29:54 +0200
Subject: [PATCH 109/567] haskell-mime-mail: update to version 0.4.5.1

---
 pkgs/development/libraries/haskell/mime-mail/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/mime-mail/default.nix b/pkgs/development/libraries/haskell/mime-mail/default.nix
index e2559c70fee7..80fc8e1b4af9 100644
--- a/pkgs/development/libraries/haskell/mime-mail/default.nix
+++ b/pkgs/development/libraries/haskell/mime-mail/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "mime-mail";
-  version = "0.4.4.2";
-  sha256 = "0s38xgv6kycnfahqi5dnrjn3wkaq35w87cv8p12pq0qq2x7dvawd";
+  version = "0.4.5.1";
+  sha256 = "01r6dxdp3183ahggda6dizdz1c3qpmpyxn6csalzvss52ds4ilsf";
   buildDepends = [
     base64Bytestring blazeBuilder filepath random text
   ];

From 6bef23dd1518f278eb048379d4e1b8c7af0eb025 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:29:55 +0200
Subject: [PATCH 110/567] haskell-network-conduit-tls: update to version 1.1.0

---
 .../haskell/network-conduit-tls/default.nix       | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

diff --git a/pkgs/development/libraries/haskell/network-conduit-tls/default.nix b/pkgs/development/libraries/haskell/network-conduit-tls/default.nix
index 4884a462a6d4..e4c5bb7ab6b1 100644
--- a/pkgs/development/libraries/haskell/network-conduit-tls/default.nix
+++ b/pkgs/development/libraries/haskell/network-conduit-tls/default.nix
@@ -1,17 +1,18 @@
-{ cabal, conduit, connection, cprngAes, dataDefault, HUnit
-, monadControl, mtl, network, networkConduit, systemFileio
+{ cabal, conduit, conduitExtra, connection, cprngAes, dataDefault
+, HUnit, monadControl, mtl, network, streamingCommons, systemFileio
 , systemFilepath, tls, transformers
 }:
 
 cabal.mkDerivation (self: {
   pname = "network-conduit-tls";
-  version = "1.0.4.2";
-  sha256 = "1pgb6k6g10hy2k4sihj88n6w7400d4grja2crhhv1cydqdn858rc";
+  version = "1.1.0";
+  sha256 = "1q9wx7bvr4a65rkyfn2vd3h9bfpsvm9zcqqjhjsrgb91l6x5bdqi";
   buildDepends = [
-    conduit connection cprngAes dataDefault monadControl network
-    networkConduit systemFileio systemFilepath tls transformers
+    conduit conduitExtra connection cprngAes dataDefault monadControl
+    network streamingCommons systemFileio systemFilepath tls
+    transformers
   ];
-  testDepends = [ conduit connection HUnit mtl networkConduit ];
+  testDepends = [ conduit conduitExtra connection HUnit mtl ];
   meta = {
     homepage = "https://github.com/snoyberg/conduit";
     description = "Create TLS-aware network code with conduits";

From 78fc4f1083817c42102c29be9eb2405a5dd095a9 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:29:57 +0200
Subject: [PATCH 111/567] haskell-network-conduit: update to version 1.1.0

---
 .../libraries/haskell/network-conduit/default.nix  | 14 +++++---------
 1 file changed, 5 insertions(+), 9 deletions(-)

diff --git a/pkgs/development/libraries/haskell/network-conduit/default.nix b/pkgs/development/libraries/haskell/network-conduit/default.nix
index c2f00b68f8f1..7c7b649311a9 100644
--- a/pkgs/development/libraries/haskell/network-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/network-conduit/default.nix
@@ -1,17 +1,13 @@
-{ cabal, conduit, liftedBase, monadControl, network, transformers
-}:
+{ cabal, conduit }:
 
 cabal.mkDerivation (self: {
   pname = "network-conduit";
-  version = "1.0.4";
-  sha256 = "1a7p3gs0rczx0rhz27410rr6fzy3l0nsj6kk5wi0nqvqfyh7jb9c";
-  buildDepends = [
-    conduit liftedBase monadControl network transformers
-  ];
-  testDepends = [ conduit ];
+  version = "1.1.0";
+  sha256 = "06amxl8rg4zfnmgc1iyq5mxy9qihcqddqgqkbfvaf25mwr43992p";
+  buildDepends = [ conduit ];
   meta = {
     homepage = "http://github.com/snoyberg/conduit";
-    description = "Stream socket data using conduits";
+    description = "Stream socket data using conduits. (deprecated)";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
     maintainers = [ self.stdenv.lib.maintainers.andres ];

From c94833a157a193b65489fbd662be4e395aaa76a7 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:29:58 +0200
Subject: [PATCH 112/567] haskell-pipes-safe: update to version 2.1.0

---
 pkgs/development/libraries/haskell/pipes-safe/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/pipes-safe/default.nix b/pkgs/development/libraries/haskell/pipes-safe/default.nix
index dddc27157dd6..c1d5a603da0c 100644
--- a/pkgs/development/libraries/haskell/pipes-safe/default.nix
+++ b/pkgs/development/libraries/haskell/pipes-safe/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "pipes-safe";
-  version = "2.0.2";
-  sha256 = "004xjf0aqa73gxn8kj9844pwbkriv3hk9sbnwxx26pgvqvwjlrsj";
+  version = "2.1.0";
+  sha256 = "0qm02hwmrqlncnlxix7mdgzbf0mzally4k7ydwg06nqi35bb7s3j";
   buildDepends = [ exceptions pipes transformers ];
   meta = {
     description = "Safety for the pipes ecosystem";

From 52eaa92c9f6f1b507063614d1b772df92c65646c Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:29:59 +0200
Subject: [PATCH 113/567] haskell-pool-conduit: update to version 0.1.2.3

---
 pkgs/development/libraries/haskell/pool-conduit/default.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/development/libraries/haskell/pool-conduit/default.nix b/pkgs/development/libraries/haskell/pool-conduit/default.nix
index e7c1489d5cb3..cb1682673af8 100644
--- a/pkgs/development/libraries/haskell/pool-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/pool-conduit/default.nix
@@ -2,14 +2,14 @@
 
 cabal.mkDerivation (self: {
   pname = "pool-conduit";
-  version = "0.1.2.2";
-  sha256 = "1jg7kymr1v82xl9122q9fly385jhm1hr2406g35ydl9wnh4aaiw8";
+  version = "0.1.2.3";
+  sha256 = "1myjbmbh0jm89ycx9d961mpgw8hp7al8wgnsls4p19gvr73gcbfv";
   buildDepends = [
     monadControl resourcePool resourcet transformers
   ];
   meta = {
     homepage = "http://www.yesodweb.com/book/persistent";
-    description = "Resource pool allocations via ResourceT";
+    description = "Resource pool allocations via ResourceT. (deprecated)";
     license = self.stdenv.lib.licenses.mit;
     platforms = self.ghc.meta.platforms;
     maintainers = [ self.stdenv.lib.maintainers.andres ];

From 5ef1beb6d2d90cdf1e51e517c46199bbc64b2e99 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:30:00 +0200
Subject: [PATCH 114/567] haskell-process-conduit: update to version 1.1.0.0

---
 .../libraries/haskell/process-conduit/default.nix     | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/pkgs/development/libraries/haskell/process-conduit/default.nix b/pkgs/development/libraries/haskell/process-conduit/default.nix
index 6148b9b508b3..3ecd88515b2f 100644
--- a/pkgs/development/libraries/haskell/process-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/process-conduit/default.nix
@@ -1,13 +1,14 @@
-{ cabal, conduit, controlMonadLoop, hspec, mtl, shakespeare
-, shakespeareText, text
+{ cabal, conduit, controlMonadLoop, hspec, mtl, resourcet
+, shakespeare, shakespeareText, text
 }:
 
 cabal.mkDerivation (self: {
   pname = "process-conduit";
-  version = "1.0.0.2";
-  sha256 = "0rz18x7gy8w1h2xq0il49k515n0y3gpxnl7mfgkczc86965w7fzj";
+  version = "1.1.0.0";
+  sha256 = "1b3snck651cpb7i3c78cn264zrjan3lzydf59209abkvb6fv1hql";
   buildDepends = [
-    conduit controlMonadLoop mtl shakespeare shakespeareText text
+    conduit controlMonadLoop mtl resourcet shakespeare shakespeareText
+    text
   ];
   testDepends = [ conduit hspec ];
   meta = {

From a9290ec05f24f388141a367cccfe88e2875835b3 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:30:02 +0200
Subject: [PATCH 115/567] haskell-resourcet: update to version 1.1.0.1

---
 .../libraries/haskell/resourcet/default.nix           | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/pkgs/development/libraries/haskell/resourcet/default.nix b/pkgs/development/libraries/haskell/resourcet/default.nix
index 8413802faa19..111afbf6a7a4 100644
--- a/pkgs/development/libraries/haskell/resourcet/default.nix
+++ b/pkgs/development/libraries/haskell/resourcet/default.nix
@@ -1,13 +1,14 @@
-{ cabal, hspec, liftedBase, mmorph, monadControl, mtl, transformers
-, transformersBase
+{ cabal, exceptions, hspec, liftedBase, mmorph, monadControl, mtl
+, transformers, transformersBase
 }:
 
 cabal.mkDerivation (self: {
   pname = "resourcet";
-  version = "0.4.10.2";
-  sha256 = "0k0l4909b30hc2apxgzjz1rxbqqkhqnqchz53wi6zyhvbh46ffh6";
+  version = "1.1.0.1";
+  sha256 = "02w2gz0zn039bz1ig91jd0zkg9w1nxpi3byh6ybdsnbyddwfy376";
   buildDepends = [
-    liftedBase mmorph monadControl mtl transformers transformersBase
+    exceptions liftedBase mmorph monadControl mtl transformers
+    transformersBase
   ];
   testDepends = [ hspec liftedBase transformers ];
   meta = {

From ca00f844ae41fe2ff6628b6c269b990e091c5e3d Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:30:03 +0200
Subject: [PATCH 116/567] haskell-scotty-hastache: update to version 0.2.1

---
 .../libraries/haskell/scotty-hastache/default.nix     | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/pkgs/development/libraries/haskell/scotty-hastache/default.nix b/pkgs/development/libraries/haskell/scotty-hastache/default.nix
index 76e6fe45ad12..7f10ad2d68f1 100644
--- a/pkgs/development/libraries/haskell/scotty-hastache/default.nix
+++ b/pkgs/development/libraries/haskell/scotty-hastache/default.nix
@@ -1,14 +1,13 @@
-{ cabal, blazeHtml, blazeMarkup, filepath, hastache, httpTypes, mtl
-, scotty, text, wai, warp
+{ cabal, filepath, hastache, httpTypes, mtl, scotty, text, wai
+, warp
 }:
 
 cabal.mkDerivation (self: {
   pname = "scotty-hastache";
-  version = "0.2.0";
-  sha256 = "105cxlasj4sl4ddzg8ms6k95078q10zcm2c86jcn76s0jmv95669";
+  version = "0.2.1";
+  sha256 = "1yyip8iq1n71iidmpbfs7rifxvpphyrcaf4z394rx36hq72ka8dn";
   buildDepends = [
-    blazeHtml blazeMarkup filepath hastache httpTypes mtl scotty text
-    wai warp
+    filepath hastache httpTypes mtl scotty text wai warp
   ];
   meta = {
     homepage = "https://github.com/scotty-web/scotty-hastache";

From fe1584ef1834c07cd139d68db4aa9df680929f70 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:30:04 +0200
Subject: [PATCH 117/567] haskell-snap-loader-dynamic: update to version
 0.10.0.1

---
 pkgs/development/libraries/haskell/snap/loader-dynamic.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/snap/loader-dynamic.nix b/pkgs/development/libraries/haskell/snap/loader-dynamic.nix
index abe4d4cc074b..ec054cc80653 100644
--- a/pkgs/development/libraries/haskell/snap/loader-dynamic.nix
+++ b/pkgs/development/libraries/haskell/snap/loader-dynamic.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "snap-loader-dynamic";
-  version = "0.10";
-  sha256 = "0wnrsbnf3crfxhhraz4my08m6yhmqj632rv6cdy9ili3wxjkqd57";
+  version = "0.10.0.1";
+  sha256 = "0iqhspvfp0d6qivis2l3v0rqrnb8qbzvi4n53zgyb9cwvqxx5fix";
   buildDepends = [ directoryTree hint mtl snapCore time ];
   meta = {
     homepage = "http://snapframework.com/";

From 7f143d564660d33b221f09f6cc4f7aa0dfa3fb50 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:30:05 +0200
Subject: [PATCH 118/567] haskell-stm-conduit: update to version 2.4.0

---
 .../libraries/haskell/stm-conduit/default.nix     | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

diff --git a/pkgs/development/libraries/haskell/stm-conduit/default.nix b/pkgs/development/libraries/haskell/stm-conduit/default.nix
index 07d1fc03bf0d..201a2ea02f97 100644
--- a/pkgs/development/libraries/haskell/stm-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/stm-conduit/default.nix
@@ -1,16 +1,17 @@
-{ cabal, async, cereal, cerealConduit, conduit, HUnit, liftedAsync
-, liftedBase, monadControl, monadLoops, QuickCheck, resourcet, stm
-, stmChans, testFramework, testFrameworkHunit
+{ cabal, async, cereal, cerealConduit, conduit, conduitExtra, HUnit
+, liftedAsync, liftedBase, monadControl, monadLoops, QuickCheck
+, resourcet, stm, stmChans, testFramework, testFrameworkHunit
 , testFrameworkQuickcheck2, transformers
 }:
 
 cabal.mkDerivation (self: {
   pname = "stm-conduit";
-  version = "2.3.0";
-  sha256 = "1qvzqzk822sc0sjblgqb5y73mggsvh70zpzz908isfiqcwp7llc4";
+  version = "2.4.0";
+  sha256 = "03ifxr3pspwmzf0xdh7mj3q1wiz13d86w9pdhiqa6b1d1qw6rvha";
   buildDepends = [
-    async cereal cerealConduit conduit liftedAsync liftedBase
-    monadControl monadLoops resourcet stm stmChans transformers
+    async cereal cerealConduit conduit conduitExtra liftedAsync
+    liftedBase monadControl monadLoops resourcet stm stmChans
+    transformers
   ];
   testDepends = [
     conduit HUnit QuickCheck resourcet stm stmChans testFramework

From 30177a3c8f9ecaa126bedad85069c1e0da52b5c7 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:30:06 +0200
Subject: [PATCH 119/567] haskell-tagstream-conduit: update to version 0.5.5.1

---
 .../haskell/tagstream-conduit/default.nix          | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

diff --git a/pkgs/development/libraries/haskell/tagstream-conduit/default.nix b/pkgs/development/libraries/haskell/tagstream-conduit/default.nix
index c28301e41830..ecdcbb1b63c1 100644
--- a/pkgs/development/libraries/haskell/tagstream-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/tagstream-conduit/default.nix
@@ -1,17 +1,19 @@
 { cabal, attoparsec, attoparsecConduit, blazeBuilder
-, blazeBuilderConduit, caseInsensitive, conduit, dataDefault, hspec
-, HUnit, QuickCheck, text, transformers, xmlConduit
+, blazeBuilderConduit, caseInsensitive, conduit, conduitExtra
+, dataDefault, hspec, HUnit, QuickCheck, resourcet, text
+, transformers, xmlConduit
 }:
 
 cabal.mkDerivation (self: {
   pname = "tagstream-conduit";
-  version = "0.5.5";
-  sha256 = "17157chhw610f8az6c25qzq5mmhpb1a8m12kdc2k8khgynpkrj5f";
+  version = "0.5.5.1";
+  sha256 = "0bpxjhqqqigfnwcxx3h2am5zmgr1lyaxaac3lnz490j6zf8x9jn7";
   buildDepends = [
     attoparsec attoparsecConduit blazeBuilder blazeBuilderConduit
-    caseInsensitive conduit dataDefault text transformers xmlConduit
+    caseInsensitive conduit conduitExtra dataDefault resourcet text
+    transformers xmlConduit
   ];
-  testDepends = [ conduit hspec HUnit QuickCheck text ];
+  testDepends = [ conduit hspec HUnit QuickCheck resourcet text ];
   meta = {
     homepage = "http://github.com/yihuang/tagstream-conduit";
     description = "streamlined html tag parser";

From 3b9fff330c5585d80cfcd08a4f834ec6c6a929ac Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:30:08 +0200
Subject: [PATCH 120/567] haskell-thyme: update to version 0.3.2.0

---
 .../libraries/haskell/thyme/default.nix            | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/pkgs/development/libraries/haskell/thyme/default.nix b/pkgs/development/libraries/haskell/thyme/default.nix
index 08563c6f2c5d..fe79454781a1 100644
--- a/pkgs/development/libraries/haskell/thyme/default.nix
+++ b/pkgs/development/libraries/haskell/thyme/default.nix
@@ -1,18 +1,18 @@
-{ cabal, aeson, attoparsec, Cabal, deepseq, filepath, lens
-, QuickCheck, random, systemPosixRedirect, text, time, transformers
+{ cabal, aeson, attoparsec, Cabal, deepseq, filepath, mtl
+, profunctors, QuickCheck, random, systemPosixRedirect, text, time
 , vector, vectorSpace
 }:
 
 cabal.mkDerivation (self: {
   pname = "thyme";
-  version = "0.3.1.1";
-  sha256 = "00c15zy7190mghpvrpwl0hp8w1mp386vvff8w2zdpgl792cvdby8";
+  version = "0.3.2.0";
+  sha256 = "1jrhqrvmkq8n943l6dkyszg4qz47jbddr80qg7k51a9nrg8fins4";
   buildDepends = [
-    aeson attoparsec deepseq lens QuickCheck random text time
-    transformers vector vectorSpace
+    aeson attoparsec deepseq mtl profunctors QuickCheck random text
+    time vector vectorSpace
   ];
   testDepends = [
-    attoparsec Cabal filepath lens QuickCheck random
+    attoparsec Cabal filepath mtl profunctors QuickCheck random
     systemPosixRedirect text time vectorSpace
   ];
   doCheck = false;

From 8375a09cbbc3566f80508ca9b7ecd9cb1c879777 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 4 Apr 2014 23:30:10 +0200
Subject: [PATCH 121/567] haskell-zlib-conduit: update to version 1.1.0

---
 .../libraries/haskell/zlib-conduit/default.nix      | 13 +++++--------
 1 file changed, 5 insertions(+), 8 deletions(-)

diff --git a/pkgs/development/libraries/haskell/zlib-conduit/default.nix b/pkgs/development/libraries/haskell/zlib-conduit/default.nix
index b283c496a299..f9cd966df736 100644
--- a/pkgs/development/libraries/haskell/zlib-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/zlib-conduit/default.nix
@@ -1,16 +1,13 @@
-{ cabal, conduit, hspec, QuickCheck, resourcet, transformers, void
-, zlibBindings
-}:
+{ cabal, conduit }:
 
 cabal.mkDerivation (self: {
   pname = "zlib-conduit";
-  version = "1.0.0";
-  sha256 = "0q0l4qw1f2cwjj71n4i082ba47x1xba695q8xk0ky2vw5s8cg0bv";
-  buildDepends = [ conduit transformers void zlibBindings ];
-  testDepends = [ conduit hspec QuickCheck resourcet transformers ];
+  version = "1.1.0";
+  sha256 = "1b22mca8bbg7f84h8y0qsb5ckzg2dw1b26y27x7b7xdxqbwpz93a";
+  buildDepends = [ conduit ];
   meta = {
     homepage = "http://github.com/snoyberg/conduit";
-    description = "Streaming compression/decompression via conduits";
+    description = "Streaming compression/decompression via conduits. (deprecated)";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
     maintainers = [ self.stdenv.lib.maintainers.andres ];

From 0b3100322e0df7377a6b87e78ec22ea243e0261c Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Sat, 5 Apr 2014 00:33:58 +0200
Subject: [PATCH 122/567] haskell-exceptions: update to version 0.5

---
 pkgs/development/libraries/haskell/exceptions/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/exceptions/default.nix b/pkgs/development/libraries/haskell/exceptions/default.nix
index a206b7c186ec..5d58654e51d4 100644
--- a/pkgs/development/libraries/haskell/exceptions/default.nix
+++ b/pkgs/development/libraries/haskell/exceptions/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "exceptions";
-  version = "0.3.3.1";
-  sha256 = "091frx3hmx7lq10z7f8q98pz0sa1lj23i7z4z98gh1980r525fah";
+  version = "0.5";
+  sha256 = "0l9gpifp23j6hvyq8p48rxsnv9adqbf7z096dzvd8v5xqqybgyxi";
   buildDepends = [ mtl transformers ];
   testDepends = [
     mtl QuickCheck testFramework testFrameworkQuickcheck2 transformers

From 5f45cc48c5180d83e58fcb7b9419e841bdcef0bf Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Sat, 5 Apr 2014 00:33:59 +0200
Subject: [PATCH 123/567] haskell-intervals: update to version 0.7

---
 pkgs/development/libraries/haskell/intervals/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/intervals/default.nix b/pkgs/development/libraries/haskell/intervals/default.nix
index 88a001afadd9..73e1d2d71971 100644
--- a/pkgs/development/libraries/haskell/intervals/default.nix
+++ b/pkgs/development/libraries/haskell/intervals/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "intervals";
-  version = "0.4.2";
-  sha256 = "08l7q22rlhyigls1qksf7lnb7g1yrkmdh9clq68xxaf6wzm26aaz";
+  version = "0.7";
+  sha256 = "00kwq57x72xi5kca7symb98nzs1j82r6bkgvr83aqpvq0ql9ka9d";
   buildDepends = [ distributive ];
   testDepends = [ doctest filepath ];
   meta = {

From ea916f0b323d29172fb547f33b493b7974d7dc9b Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Sun, 6 Apr 2014 18:29:36 +0200
Subject: [PATCH 124/567] haskell-blaze-builder-conduit: there is no code in
 this module to generate documentation for

---
 .../libraries/haskell/blaze-builder-conduit/default.nix          | 1 +
 1 file changed, 1 insertion(+)

diff --git a/pkgs/development/libraries/haskell/blaze-builder-conduit/default.nix b/pkgs/development/libraries/haskell/blaze-builder-conduit/default.nix
index 932714cceb45..1c6670f17ab6 100644
--- a/pkgs/development/libraries/haskell/blaze-builder-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/blaze-builder-conduit/default.nix
@@ -5,6 +5,7 @@ cabal.mkDerivation (self: {
   version = "1.1.0";
   sha256 = "0xxyn3lhcn1bkybhrl5dx68d0adf26ilf34gv0mxkwpfj7m7d3k3";
   buildDepends = [ conduit ];
+  noHaddock = true;
   meta = {
     homepage = "http://github.com/snoyberg/conduit";
     description = "Convert streams of builders to streams of bytestrings. (deprecated)";

From 2a0a12f333dc7a276c3cd47a2a6825da8bc8d4a0 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Sat, 5 Apr 2014 00:58:14 +0200
Subject: [PATCH 125/567] Upgrade hashable to version 1.2.x.

This change in the GHC 7.6.3 profile violates Haskell Platform, but it fixes
many builds that would not succeed otherwise (such as Trifecta). Overriding
hashable locally in an expression is out of question: the package is used
virtually everywhere.
---
 .../libraries/haskell/haskell-platform/2013.2.0.0.nix           | 1 +
 pkgs/top-level/haskell-packages.nix                             | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/pkgs/development/libraries/haskell/haskell-platform/2013.2.0.0.nix b/pkgs/development/libraries/haskell/haskell-platform/2013.2.0.0.nix
index 2e0181bd1a7b..f209c39d438a 100644
--- a/pkgs/development/libraries/haskell/haskell-platform/2013.2.0.0.nix
+++ b/pkgs/development/libraries/haskell/haskell-platform/2013.2.0.0.nix
@@ -30,6 +30,7 @@ cabal.mkDerivation (self : {
     cp ${self.cabalFile} $sourceRoot/${self.pname}.cabal
     cp ${self.setupFile} $sourceRoot/Setup.hs
     touch $sourceRoot/LICENSE
+    sed -i -e 's|hashable  *==1.1.2.5,|hashable,|' $sourceRoot/${self.pname}.cabal
   '';
   noHaddock = true;
   meta = {
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 08757faf4c8b..01462724e039 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -190,7 +190,7 @@ let result = let callPackage = x : y : modifyPrio (newScope result.finalReturn x
     GLUT         = self.GLUT_2_4_0_0;
     GLURaw       = self.GLURaw_1_3_0_0;
     haskellSrc   = self.haskellSrc_1_0_1_5;
-    hashable     = self.hashable_1_1_2_5;
+    hashable     = self.hashable_1_2_1_0;       # not HP (1.1.2.5), but fixes many builds
     html         = self.html_1_0_1_2;
     HTTP         = self.HTTP_4000_2_8;
     HUnit        = self.HUnit_1_2_5_2;

From ee7880993bae18f0de219a6f093aa516c1b7768a Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Sun, 6 Apr 2014 18:49:47 +0200
Subject: [PATCH 126/567] haskell-attoparsec-conduit: there is no code in this
 module to generate documentation for

---
 .../development/libraries/haskell/attoparsec-conduit/default.nix | 1 +
 1 file changed, 1 insertion(+)

diff --git a/pkgs/development/libraries/haskell/attoparsec-conduit/default.nix b/pkgs/development/libraries/haskell/attoparsec-conduit/default.nix
index bdf42ba947d7..21a15ea80e72 100644
--- a/pkgs/development/libraries/haskell/attoparsec-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/attoparsec-conduit/default.nix
@@ -5,6 +5,7 @@ cabal.mkDerivation (self: {
   version = "1.1.0";
   sha256 = "18xn3nzxfghcd88cana1jw85ijv0ysw3bp36fb6r5wsf6m79z01y";
   buildDepends = [ conduit ];
+  noHaddock = true;
   meta = {
     homepage = "http://github.com/snoyberg/conduit";
     description = "Consume attoparsec parsers via conduit. (deprecated)";

From 5fcc9d2b680aeaeb869bb33cca4ebd7a988fd131 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Sun, 6 Apr 2014 20:31:19 +0200
Subject: [PATCH 127/567] haskell-network-conduit: there is no code in this
 module to generate documentation for

---
 pkgs/development/libraries/haskell/network-conduit/default.nix | 1 +
 1 file changed, 1 insertion(+)

diff --git a/pkgs/development/libraries/haskell/network-conduit/default.nix b/pkgs/development/libraries/haskell/network-conduit/default.nix
index 7c7b649311a9..1f252c03660d 100644
--- a/pkgs/development/libraries/haskell/network-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/network-conduit/default.nix
@@ -5,6 +5,7 @@ cabal.mkDerivation (self: {
   version = "1.1.0";
   sha256 = "06amxl8rg4zfnmgc1iyq5mxy9qihcqddqgqkbfvaf25mwr43992p";
   buildDepends = [ conduit ];
+  noHaddock = true;
   meta = {
     homepage = "http://github.com/snoyberg/conduit";
     description = "Stream socket data using conduits. (deprecated)";

From acd673be4b1efe37ed5fa10c70d24215e2e1ae39 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Sun, 6 Apr 2014 20:32:09 +0200
Subject: [PATCH 128/567] haskell-zlib-conduit: there is no code in this module
 to generate documentation for

---
 pkgs/development/libraries/haskell/zlib-conduit/default.nix | 1 +
 1 file changed, 1 insertion(+)

diff --git a/pkgs/development/libraries/haskell/zlib-conduit/default.nix b/pkgs/development/libraries/haskell/zlib-conduit/default.nix
index f9cd966df736..3029cc8c3b61 100644
--- a/pkgs/development/libraries/haskell/zlib-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/zlib-conduit/default.nix
@@ -5,6 +5,7 @@ cabal.mkDerivation (self: {
   version = "1.1.0";
   sha256 = "1b22mca8bbg7f84h8y0qsb5ckzg2dw1b26y27x7b7xdxqbwpz93a";
   buildDepends = [ conduit ];
+  noHaddock = true;
   meta = {
     homepage = "http://github.com/snoyberg/conduit";
     description = "Streaming compression/decompression via conduits. (deprecated)";

From 4b57acece18be9ee5d86349500f6afe01e3da3bd Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Sun, 6 Apr 2014 20:52:50 +0200
Subject: [PATCH 129/567] haskell-http-client-conduit: there is no code in this
 module to generate documentation for

---
 .../libraries/haskell/http-client-conduit/default.nix            | 1 +
 1 file changed, 1 insertion(+)

diff --git a/pkgs/development/libraries/haskell/http-client-conduit/default.nix b/pkgs/development/libraries/haskell/http-client-conduit/default.nix
index 29840fa6ac00..019136e47ca8 100644
--- a/pkgs/development/libraries/haskell/http-client-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/http-client-conduit/default.nix
@@ -5,6 +5,7 @@ cabal.mkDerivation (self: {
   version = "0.3.0";
   sha256 = "0k2vq9y7kfbkhcsszjr74ahq5nw5z7dbzjhw1ixbigcr56axsd19";
   buildDepends = [ httpClient ];
+  noHaddock = true;
   meta = {
     homepage = "https://github.com/snoyberg/http-client";
     description = "Frontend support for using http-client with conduit (deprecated)";

From 65c46befcfc917025d8038d80ab1292c2c9b915d Mon Sep 17 00:00:00 2001
From: Luca Bruno <lucabru@src.gnome.org>
Date: Sun, 6 Apr 2014 23:59:34 +0200
Subject: [PATCH 130/567] gnome-shell: depend upon gnome-settings-daemon
 gsettings schemas

---
 pkgs/desktops/gnome-3/core/gnome-shell/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/desktops/gnome-3/core/gnome-shell/default.nix b/pkgs/desktops/gnome-3/core/gnome-shell/default.nix
index 519347f14c8c..087b57781634 100644
--- a/pkgs/desktops/gnome-3/core/gnome-shell/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-shell/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
       clutter networkmanager libstartup_notification telepathy_glib docbook_xsl docbook_xsl_ns
       libXtst p11_kit networkmanagerapplet gjs mutter pulseaudio caribou evolution_data_server
       libical libtool nss gobjectIntrospection gtk gstreamer makeWrapper gdm gnome_control_center
-      at_spi2_core upower ibus gnome_session gnome_desktop telepathy_logger ];
+      at_spi2_core upower ibus gnome_session gnome_desktop telepathy_logger gnome3.gnome_settings_daemon ];
 
   preBuild = ''
     patchShebangs src/data-to-c.pl
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
       --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
       --prefix LD_LIBRARY_PATH : "${accountservice}/lib:${ibus}/lib:${gdm}/lib" \
       --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
-      --prefix XDG_DATA_DIRS : "${gnome-menus}:/share:${ibus}/share:${gnome_settings_daemon}/share:${gnome_control_center}/share:${gdm}/share:${glib}/share:${gnome_themes_standard}/share:${mutter}/share:${gtk}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
+      --prefix XDG_DATA_DIRS : "${gnome_themes_standard}/share:${gtk}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
 
     wrapProgram "$out/libexec/gnome-shell-calendar-server" \
       --prefix XDG_DATA_DIRS : "${evolution_data_server}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"

From 296dd89030790ab1d95bed7bbe688a18aff38335 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Domen=20Ko=C5=BEar?= <domen@dev.si>
Date: Mon, 7 Apr 2014 00:43:50 +0200
Subject: [PATCH 131/567] buildPythonPackage: don't return on shellHook

Entering environment might not always be the desired effect.
---
 pkgs/development/python-modules/generic/default.nix | 1 -
 1 file changed, 1 deletion(-)

diff --git a/pkgs/development/python-modules/generic/default.nix b/pkgs/development/python-modules/generic/default.nix
index d0234c29ed9a..9dedd3ceae73 100644
--- a/pkgs/development/python-modules/generic/default.nix
+++ b/pkgs/development/python-modules/generic/default.nix
@@ -163,7 +163,6 @@ python.stdenv.mkDerivation (attrs // {
     export PYTHONPATH="/tmp/$name/lib/${python.libPrefix}/site-packages:$PYTHONPATH"
     python setup.py develop --prefix /tmp/$name
     ${postShellHook}
-    return
   '';
 
   meta = with lib.maintainers; {

From 3d3648f26133bad1218e3ba28211a0e7ac8f10ae Mon Sep 17 00:00:00 2001
From: vi <noreply@example.org>
Date: Mon, 7 Apr 2014 12:15:33 +0800
Subject: [PATCH 132/567] Added a derivation for Ozgun's's retry (Haskell.)

---
 .../libraries/haskell/retry/default.nix           | 15 +++++++++++++++
 pkgs/top-level/haskell-packages.nix               |  2 ++
 2 files changed, 17 insertions(+)
 create mode 100644 pkgs/development/libraries/haskell/retry/default.nix

diff --git a/pkgs/development/libraries/haskell/retry/default.nix b/pkgs/development/libraries/haskell/retry/default.nix
new file mode 100644
index 000000000000..d57898593b27
--- /dev/null
+++ b/pkgs/development/libraries/haskell/retry/default.nix
@@ -0,0 +1,15 @@
+{ cabal, dataDefault, liftedBase, monadControl, transformers }:
+
+cabal.mkDerivation (self: {
+  pname = "retry";
+  version = "0.3.0.0";
+  sha256 = "00yjk5784h4w1cckw17w1k5r94acc3ycnprk642ndgggz3lxm36n";
+  buildDepends = [
+    dataDefault liftedBase monadControl transformers
+  ];
+  meta = {
+    description = "Retry combinators for monadic actions that may fail";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 01462724e039..4a97c92bb801 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -2177,6 +2177,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.finalReturn x
 
   resourcet = callPackage ../development/libraries/haskell/resourcet {};
 
+  retry = callPackage ../development/libraries/haskell/retry {};
+
   rethinkdb = callPackage ../development/libraries/haskell/rethinkdb {};
 
   rfc5051 = callPackage ../development/libraries/haskell/rfc5051 {};

From 53d7a1c88215d94e341f6fefbe13b2af820eb54d Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 11:54:38 +0200
Subject: [PATCH 133/567] haskell-criterion: downgrade to hastache 0.5.1 to fix
 the build

Closes <https://github.com/NixOS/nixpkgs/pull/2133>.
---
 .../libraries/haskell/hastache/0.5.1.nix      | 19 +++++++++++++++++++
 .../hastache/{default.nix => 0.6.0.nix}       |  0
 pkgs/top-level/haskell-packages.nix           |  8 ++++++--
 3 files changed, 25 insertions(+), 2 deletions(-)
 create mode 100644 pkgs/development/libraries/haskell/hastache/0.5.1.nix
 rename pkgs/development/libraries/haskell/hastache/{default.nix => 0.6.0.nix} (100%)

diff --git a/pkgs/development/libraries/haskell/hastache/0.5.1.nix b/pkgs/development/libraries/haskell/hastache/0.5.1.nix
new file mode 100644
index 000000000000..462c76a487eb
--- /dev/null
+++ b/pkgs/development/libraries/haskell/hastache/0.5.1.nix
@@ -0,0 +1,19 @@
+{ cabal, blazeBuilder, filepath, HUnit, ieee754, mtl, syb, text
+, transformers, utf8String
+}:
+
+cabal.mkDerivation (self: {
+  pname = "hastache";
+  version = "0.5.1";
+  sha256 = "05lm7mjzc1hamxcj8akq06081bhp907hrjdkhas3wzm6ran6rwn3";
+  buildDepends = [
+    blazeBuilder filepath ieee754 mtl syb text transformers utf8String
+  ];
+  testDepends = [ HUnit mtl syb text ];
+  meta = {
+    homepage = "http://github.com/lymar/hastache";
+    description = "Haskell implementation of Mustache templates";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/hastache/default.nix b/pkgs/development/libraries/haskell/hastache/0.6.0.nix
similarity index 100%
rename from pkgs/development/libraries/haskell/hastache/default.nix
rename to pkgs/development/libraries/haskell/hastache/0.6.0.nix
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 4a97c92bb801..4648d76a7a12 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -849,7 +849,9 @@ let result = let callPackage = x : y : modifyPrio (newScope result.finalReturn x
 
   cprngAes = callPackage ../development/libraries/haskell/cprng-aes {};
 
-  criterion = callPackage ../development/libraries/haskell/criterion {};
+  criterion = callPackage ../development/libraries/haskell/criterion {
+    hastache = self.hastache_0_5_1;
+  };
 
   Crypto = callPackage ../development/libraries/haskell/Crypto {};
 
@@ -1323,7 +1325,9 @@ let result = let callPackage = x : y : modifyPrio (newScope result.finalReturn x
 
   haskore = callPackage ../development/libraries/haskell/haskore {};
 
-  hastache = callPackage ../development/libraries/haskell/hastache {};
+  hastache_0_5_1 = callPackage ../development/libraries/haskell/hastache/0.5.1.nix {};
+  hastache_0_6_0 = callPackage ../development/libraries/haskell/hastache/0.6.0.nix {};
+  hastache = self.hastache_0_6_0;
 
   heredoc = callPackage ../development/libraries/haskell/heredoc {};
 

From 1f6bfa19adfc1e658fc12f541e6dc9a5fde1102f Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Mon, 7 Apr 2014 12:24:17 +0200
Subject: [PATCH 134/567] Gnome 3 should not be a release blocker

---
 nixos/release-combined.nix | 1 -
 1 file changed, 1 deletion(-)

diff --git a/nixos/release-combined.nix b/nixos/release-combined.nix
index 94bc2f796eb7..49c550946409 100644
--- a/nixos/release-combined.nix
+++ b/nixos/release-combined.nix
@@ -61,7 +61,6 @@ in rec {
         (all nixos.tests.printing)
         (all nixos.tests.proxy)
         (all nixos.tests.xfce)
-        (all nixos.tests.gnome3)
 
         nixpkgs.tarball
         (all nixpkgs.emacs)

From fa6b9baea9d2364cac8dffda04cb3bf4f7f77ee7 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Sat, 5 Apr 2014 18:56:45 +0200
Subject: [PATCH 135/567] Revert "udisks1: bump to fix CVE-2014-0004"

This reverts commit 0194a44d63c613065bb5c55d50470881c00563c2 because
it breaks udisks on 13.10 (e.g. running "udisks --enumerate" will
print "Unit udisks.service failed to load").

(cherry picked from commit d7daf1a47f0d3d759555a3f0a0f09398c69c6b28)
---
 pkgs/os-specific/linux/udisks/1-default.nix | 10 +++-------
 1 file changed, 3 insertions(+), 7 deletions(-)

diff --git a/pkgs/os-specific/linux/udisks/1-default.nix b/pkgs/os-specific/linux/udisks/1-default.nix
index 485880f0cbb9..99506e815832 100644
--- a/pkgs/os-specific/linux/udisks/1-default.nix
+++ b/pkgs/os-specific/linux/udisks/1-default.nix
@@ -3,11 +3,11 @@
 , libxslt, docbook_xsl, utillinux }:
 
 stdenv.mkDerivation rec {
-  name = "udisks-1.0.5";
+  name = "udisks-1.0.4";
 
   src = fetchurl {
     url = "http://hal.freedesktop.org/releases/${name}.tar.gz";
-    sha256 = "0wbg3jrv8limdgvcygf4dqin3y6d30y9pcmmk711vq571vmq5v7j";
+    sha256 = "1xgqifddwaavmjc8c30i0mdffyirsld7c6qhfyjw7f9khwv8jjw5";
   };
 
   patches = [ ./purity.patch ./no-pci-db.patch ];
@@ -33,11 +33,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkgconfig ];
 
-  configureFlags = [
-    "--localstatedir=/var"
-    "--enable-lvm2"
-    "--with-systemdsystemunitdir=$(out)/etc/systemd/system"
-  ];
+  configureFlags = "--localstatedir=/var --enable-lvm2";
 
   meta = {
     homepage = http://www.freedesktop.org/wiki/Software/udisks;

From 59ea2d7ba5089b64f5ba7c243c17c73a1a66f8b0 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Sat, 5 Apr 2014 19:10:35 +0200
Subject: [PATCH 136/567] Apply patch for CVE-2014-0004 to udisks-1.0.4

(cherry picked from commit 3b1f9899618f81794ce8b88fe4eaa867e549eb06)
---
 pkgs/os-specific/linux/udisks/1-default.nix   |  2 +-
 .../linux/udisks/cve-2014-0004.patch          | 82 +++++++++++++++++++
 2 files changed, 83 insertions(+), 1 deletion(-)
 create mode 100644 pkgs/os-specific/linux/udisks/cve-2014-0004.patch

diff --git a/pkgs/os-specific/linux/udisks/1-default.nix b/pkgs/os-specific/linux/udisks/1-default.nix
index 99506e815832..8c112417f0a3 100644
--- a/pkgs/os-specific/linux/udisks/1-default.nix
+++ b/pkgs/os-specific/linux/udisks/1-default.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     sha256 = "1xgqifddwaavmjc8c30i0mdffyirsld7c6qhfyjw7f9khwv8jjw5";
   };
 
-  patches = [ ./purity.patch ./no-pci-db.patch ];
+  patches = [ ./purity.patch ./no-pci-db.patch ./cve-2014-0004.patch ];
 
   postPatch =
     ''
diff --git a/pkgs/os-specific/linux/udisks/cve-2014-0004.patch b/pkgs/os-specific/linux/udisks/cve-2014-0004.patch
new file mode 100644
index 000000000000..ce907507538f
--- /dev/null
+++ b/pkgs/os-specific/linux/udisks/cve-2014-0004.patch
@@ -0,0 +1,82 @@
+commit ebf61ed8471a45cf8bce7231de00cb1bbc140708
+Author: Martin Pitt <martin.pitt@ubuntu.com>
+Date:   Wed Mar 5 14:07:44 2014 +0100
+
+    Fix buffer overflow in mount path parsing
+    
+    In the mount monitor we parse mount points from /proc/self/mountinfo.  Ensure
+    that we don't overflow the buffers on platforms where mount paths could be
+    longer than PATH_MAX (unknown if that can actually happen), as at least the
+    mount paths for hotpluggable devices are somewhat user-controlled.
+    
+    Thanks to Florian Weimer for discovering this bug, and to David Zeuthen
+    for his initial patch!
+    
+    CVE-2014-0004
+
+Index: udisks-1.0.4/src/mount-monitor.c
+===================================================================
+--- udisks-1.0.4.orig/src/mount-monitor.c	2011-08-25 20:27:33.000000000 +0200
++++ udisks-1.0.4/src/mount-monitor.c	2014-03-10 13:38:18.309406561 +0100
+@@ -39,6 +39,11 @@
+ #include "mount.h"
+ #include "private.h"
+ 
++/* build a %Ns format string macro with N == PATH_MAX */
++#define xstr(s) str(s)
++#define str(s) #s
++#define PATH_MAX_FMT "%" xstr(PATH_MAX) "s"
++
+ /*--------------------------------------------------------------------------------------------------------------*/
+ 
+ enum
+@@ -320,8 +325,8 @@ mount_monitor_ensure (MountMonitor *moni
+       guint mount_id;
+       guint parent_id;
+       guint major, minor;
+-      gchar encoded_root[PATH_MAX];
+-      gchar encoded_mount_point[PATH_MAX];
++      gchar encoded_root[PATH_MAX + 1];
++      gchar encoded_mount_point[PATH_MAX + 1];
+       gchar *mount_point;
+       dev_t dev;
+ 
+@@ -329,7 +334,7 @@ mount_monitor_ensure (MountMonitor *moni
+         continue;
+ 
+       if (sscanf (lines[n],
+-                  "%d %d %d:%d %s %s",
++                  "%d %d %d:%d " PATH_MAX_FMT " " PATH_MAX_FMT,
+                   &mount_id,
+                   &parent_id,
+                   &major,
+@@ -340,6 +345,8 @@ mount_monitor_ensure (MountMonitor *moni
+           g_warning ("Error parsing line '%s'", lines[n]);
+           continue;
+         }
++      encoded_root[sizeof encoded_root - 1] = '\0';
++      encoded_mount_point[sizeof encoded_mount_point - 1] = '\0';
+ 
+       /* ignore mounts where only a subtree of a filesystem is mounted */
+       if (g_strcmp0 (encoded_root, "/") != 0)
+@@ -358,15 +365,17 @@ mount_monitor_ensure (MountMonitor *moni
+           sep = strstr (lines[n], " - ");
+           if (sep != NULL)
+             {
+-              gchar fstype[PATH_MAX];
+-              gchar mount_source[PATH_MAX];
++              gchar fstype[PATH_MAX + 1];
++              gchar mount_source[PATH_MAX + 1];
+               struct stat statbuf;
+ 
+-              if (sscanf (sep + 3, "%s %s", fstype, mount_source) != 2)
++              if (sscanf (sep + 3, PATH_MAX_FMT " " PATH_MAX_FMT, fstype, mount_source) != 2)
+                 {
+                   g_warning ("Error parsing things past - for '%s'", lines[n]);
+                   continue;
+                 }
++              fstype[sizeof fstype - 1] = '\0';
++              mount_source[sizeof mount_source - 1] = '\0';
+ 
+               if (g_strcmp0 (fstype, "btrfs") != 0)
+                 continue;

From 2f51ca9609fbdec380888640dcec1df2917861df Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Mon, 7 Apr 2014 13:20:29 +0200
Subject: [PATCH 137/567] Add a regression test for udisks

---
 nixos/release-combined.nix |  1 +
 nixos/tests/default.nix    |  1 +
 nixos/tests/udisks.nix     | 56 ++++++++++++++++++++++++++++++++++++++
 3 files changed, 58 insertions(+)
 create mode 100644 nixos/tests/udisks.nix

diff --git a/nixos/release-combined.nix b/nixos/release-combined.nix
index 49c550946409..741ab62bbc03 100644
--- a/nixos/release-combined.nix
+++ b/nixos/release-combined.nix
@@ -60,6 +60,7 @@ in rec {
         (all nixos.tests.openssh)
         (all nixos.tests.printing)
         (all nixos.tests.proxy)
+        (all nixos.tests.udisks)
         (all nixos.tests.xfce)
 
         nixpkgs.tarball
diff --git a/nixos/tests/default.nix b/nixos/tests/default.nix
index 955c87b2714e..0a749ad5fdee 100644
--- a/nixos/tests/default.nix
+++ b/nixos/tests/default.nix
@@ -38,6 +38,7 @@ with import ../lib/testing.nix { inherit system minimal; };
   simple = makeTest (import ./simple.nix);
   #subversion = makeTest (import ./subversion.nix);
   tomcat = makeTest (import ./tomcat.nix);
+  udisks = makeTest (import ./udisks.nix);
   #trac = makeTest (import ./trac.nix);
   xfce = makeTest (import ./xfce.nix);
   runInMachine.test = import ./run-in-machine.nix { inherit system; };
diff --git a/nixos/tests/udisks.nix b/nixos/tests/udisks.nix
new file mode 100644
index 000000000000..e3e3f740d07b
--- /dev/null
+++ b/nixos/tests/udisks.nix
@@ -0,0 +1,56 @@
+{ pkgs, ... }:
+
+let
+
+  stick = pkgs.fetchurl {
+    url = http://nixos.org/~eelco/nix/udisks-test.img.xz;
+    sha256 = "0was1xgjkjad91nipzclaz5biv3m4b2nk029ga6nk7iklwi19l8b";
+  };
+
+in
+
+{
+
+  machine =
+    { config, pkgs, ... }:
+    { services.udisks.enable = true;
+      imports = [ ./common/user-account.nix ];
+
+      security.polkit.extraConfig =
+        ''
+          polkit.addRule(function(action, subject) {
+            if (subject.user == "alice") return "yes";
+          });
+        '';
+    };
+
+  testScript =
+    ''
+      my $stick = $machine->stateDir . "/usbstick.img";
+      system("xz -d < ${stick} > $stick") == 0 or die;
+
+      $machine->succeed("udisks --enumerate | grep /org/freedesktop/UDisks/devices/vda");
+      $machine->fail("udisks --enumerate | grep /org/freedesktop/UDisks/devices/sda1");
+
+      # Attach a USB stick and wait for it to show up.
+      $machine->sendMonitorCommand("usb_add disk:$stick");
+      $machine->waitUntilSucceeds("udisks --enumerate | grep /org/freedesktop/UDisks/devices/sda1");
+      $machine->succeed("udisks --show-info /dev/sda1 | grep 'label:.*USBSTICK'");
+
+      # Mount the stick as a non-root user and do some stuff with it.
+      $machine->succeed("su - alice -c 'udisks --enumerate | grep /org/freedesktop/UDisks/devices/sda1'");
+      $machine->succeed("su - alice -c 'udisks --mount /dev/sda1'");
+      $machine->succeed("su - alice -c 'cat /media/USBSTICK/test.txt'") =~ /Hello World/;
+      $machine->succeed("su - alice -c 'echo foo > /media/USBSTICK/bar.txt'");
+
+      # Unmounting the stick should make the mountpoint disappear.
+      $machine->succeed("su - alice -c 'udisks --unmount /dev/sda1'");
+      $machine->fail("[ -d /media/USBSTICK ]");
+
+      # Remove the USB stick.
+      $machine->sendMonitorCommand("usb_del 0.3"); # FIXME
+      $machine->waitUntilFails("udisks --enumerate | grep /org/freedesktop/UDisks/devices/sda1");
+      $machine->fail("[ -e /dev/sda ]");
+    '';
+
+}
\ No newline at end of file

From eb22e5f0269cd28591b66e456dcb1044570fc165 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Mon, 7 Apr 2014 13:21:13 +0200
Subject: [PATCH 138/567] Remove ignored argument to sync

---
 nixos/lib/test-driver/test-driver.pl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/nixos/lib/test-driver/test-driver.pl b/nixos/lib/test-driver/test-driver.pl
index 31f3281cefe0..358c29e515f2 100644
--- a/nixos/lib/test-driver/test-driver.pl
+++ b/nixos/lib/test-driver/test-driver.pl
@@ -147,7 +147,7 @@ sub runTests {
     $log->nest("syncing", sub {
         foreach my $vm (values %vms) {
             next unless $vm->isUp();
-            $vm->execute("sync /tmp/xchg");
+            $vm->execute("sync");
         }
     });
 

From 98a1d07fd3a8704ee537808d185d06c3bfe35a3a Mon Sep 17 00:00:00 2001
From: Austin Seipp <aseipp@pobox.com>
Date: Sun, 6 Apr 2014 11:47:42 -0500
Subject: [PATCH 139/567] boolector: add version 1.5 and 1.6

There are two versions here because beginning with 1.6.0, Boolector has
a more restrictive, unfree license which disallows commercial use.

As a result, Boolector 1.5 is the default 'boolector' expression.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
---
 .../science/logic/boolector/default.nix       | 47 +++++++++++++++++++
 pkgs/top-level/all-packages.nix               |  6 +++
 2 files changed, 53 insertions(+)
 create mode 100644 pkgs/applications/science/logic/boolector/default.nix

diff --git a/pkgs/applications/science/logic/boolector/default.nix b/pkgs/applications/science/logic/boolector/default.nix
new file mode 100644
index 000000000000..3879ee8ef470
--- /dev/null
+++ b/pkgs/applications/science/logic/boolector/default.nix
@@ -0,0 +1,47 @@
+{ stdenv, fetchurl, zlib, useV16 ? false }:
+
+let
+  v15 = rec {
+    name    = "boolector-${version}";
+    version = "1.5.118";
+    src = fetchurl {
+      url    = "http://fmv.jku.at/boolector/${name}-with-sat-solvers.tar.gz";
+      sha256 = "17j7q02rryvfwgvglxnhx0kv8hxwy8wbhzawn48lw05i98vxlmk9";
+    };
+  };
+
+  v16 = rec {
+    name    = "boolector-${version}";
+    version = "1.6.0";
+    src = fetchurl {
+      url    = "http://fmv.jku.at/boolector/${name}-with-sat-solvers.tar.gz";
+      sha256 = "0jka4r6bc3i24axgdp6qbq6gjadwz9kvi11s2c5sbwmdnjd7cp85";
+    };
+  };
+
+  boolectorPkg = if useV16 then v16 else v15;
+  license = with stdenv.lib.licenses; if useV16 then unfreeRedistributable else gpl3;
+in
+stdenv.mkDerivation (boolectorPkg // {
+  buildInputs = [ zlib ];
+  enableParallelBuilding = false;
+
+  buildPhase = "./build.sh";
+
+  installPhase = ''
+    mkdir -p $out/bin $out/lib $out/include
+    cp boolector/boolector      $out/bin
+    cp boolector/deltabtor      $out/bin
+    cp boolector/synthebtor     $out/bin
+    cp boolector/libboolector.a $out/lib
+    cp boolector/boolector.h    $out/include
+  '';
+
+  meta = {
+    inherit license;
+    description = "An extremely fast SMT solver for bit-vectors and arrays";
+    homepage    = "http://fmv.jku.at/boolector";
+    platforms   = stdenv.lib.platforms.linux;
+    maintainers = [ stdenv.lib.maintainers.thoughtpolice ];
+  };
+})
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index ce9bf517e623..4885dc004d13 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -10278,6 +10278,12 @@ let
 
   z3 = callPackage ../applications/science/logic/z3 {};
 
+  boolector   = boolector15;
+  boolector15 = callPackage ../applications/science/logic/boolector {};
+  boolector16 = lowPrio (callPackage ../applications/science/logic/boolector {
+    useV16 = true;
+  });
+
   ### SCIENCE / ELECTRONICS
 
   eagle = callPackage_i686 ../applications/science/electronics/eagle { };

From c494289c1290fc3350a209ddd498e647ff6a899f Mon Sep 17 00:00:00 2001
From: "Ricardo M. Correia" <rcorreia@wizy.org>
Date: Mon, 7 Apr 2014 15:30:18 +0200
Subject: [PATCH 140/567] linux: Update to 3.13.9

---
 pkgs/os-specific/linux/kernel/linux-3.13.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/os-specific/linux/kernel/linux-3.13.nix b/pkgs/os-specific/linux/kernel/linux-3.13.nix
index b2be5ff20742..136b52413470 100644
--- a/pkgs/os-specific/linux/kernel/linux-3.13.nix
+++ b/pkgs/os-specific/linux/kernel/linux-3.13.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, ... } @ args:
 
 import ./generic.nix (args // rec {
-  version = "3.13.8";
+  version = "3.13.9";
   extraMeta.branch = "3.13";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz";
-    sha256 = "0z6lfsf1ldv7id3fm6l5jdn7c6076605wj7mfi90pgf079kbbqwj";
+    sha256 = "1nfxmxmpvw9lr5595ivsshdhk81bjcbx8k92qs0qql6d06bpa921";
   };
 
   features.iwlwifi = true;

From 807fad571a892abcdca133acb98bbb03ac557efc Mon Sep 17 00:00:00 2001
From: "Ricardo M. Correia" <rcorreia@wizy.org>
Date: Mon, 7 Apr 2014 15:30:37 +0200
Subject: [PATCH 141/567] grsecurity: Update stable and test patches

stable: 3.0-3.2.56-201404012135 -> 3.0-3.2.56-201404062126
test:   3.0-3.13.8-201404011912 -> 3.0-3.13.9-201404062127
---
 pkgs/os-specific/linux/kernel/patches.nix | 14 +++++++-------
 pkgs/top-level/all-packages.nix           |  2 +-
 2 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/pkgs/os-specific/linux/kernel/patches.nix b/pkgs/os-specific/linux/kernel/patches.nix
index c5b6362108e3..5156abc1c4fc 100644
--- a/pkgs/os-specific/linux/kernel/patches.nix
+++ b/pkgs/os-specific/linux/kernel/patches.nix
@@ -75,22 +75,22 @@ rec {
   grsecurity_3_0_3_2_56 =
     { name = "grsecurity-3.0-3.2.56";
       patch = fetchurl {
-        url = http://grsecurity.net/stable/grsecurity-3.0-3.2.56-201404012135.patch;
-        sha256 = "1l7c1l5cxv1j9iw12rxf7nsvbmg6jna96y1bxc8i4yi0jwiwn2nc";
+        url = http://grsecurity.net/stable/grsecurity-3.0-3.2.56-201404062126.patch;
+        sha256 = "0pm8a6h5dky1frg7bi6ldq849w8xz8isnlw5jpbzix46m3myy3x0";
       };
       features.grsecurity = true;
       # The grsec kernel patch seems to include the apparmor patches as of 3.0-3.2.56
       features.apparmor = true;
     };
 
-  grsecurity_3_0_3_13_8 =
-    { name = "grsecurity-3.0-3.13.8";
+  grsecurity_3_0_3_13_9 =
+    { name = "grsecurity-3.0-3.13.9";
       patch = fetchurl {
-        url = http://grsecurity.net/test/grsecurity-3.0-3.13.8-201404011912.patch;
-        sha256 = "1fwb41l7gjkdyl08b6a9mg4ahnw55yk0a7kd69ca8zrqd0j668ci";
+        url = http://grsecurity.net/test/grsecurity-3.0-3.13.9-201404062127.patch;
+        sha256 = "0kwqgw2a44wqhwjwws63ww15apb8jki372iccq7h1w5vi551sl0m";
       };
       features.grsecurity = true;
-      # The grsec kernel patch seems to include the apparmor patches as of 3.0-3.13.8
+      # The grsec kernel patch seems to include the apparmor patches as of 3.0-3.13.9
       features.apparmor = true;
     };
 
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index ce9bf517e623..5383093bcd47 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -6915,7 +6915,7 @@ let
   linux_3_13_grsecurity = lowPrio (lib.addMetaAttrs {
     maintainers = with lib.maintainers; [ wizeman thoughtpolice ];
   } (lib.overrideDerivation (linux_3_13.override (args: {
-    kernelPatches = args.kernelPatches ++ [ kernelPatches.grsecurity_3_0_3_13_8 kernelPatches.grsec_path ];
+    kernelPatches = args.kernelPatches ++ [ kernelPatches.grsecurity_3_0_3_13_9 kernelPatches.grsec_path ];
     argsOverride = {
       modDirVersion = "${linux_3_13.modDirVersion}-grsec";
     };

From 5aa4495cb56ef99df21e9ac42cc2cc98d460426c Mon Sep 17 00:00:00 2001
From: Austin Seipp <aseipp@pobox.com>
Date: Sun, 6 Apr 2014 11:47:42 -0500
Subject: [PATCH 142/567] boolector: add version 1.5 and 1.6

There are two versions here because beginning with 1.6.0, Boolector has
a more restrictive, unfree license which disallows commercial use.

As a result, Boolector 1.5 is the default 'boolector' expression.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
---
 .../science/logic/boolector/default.nix       | 47 +++++++++++++++++++
 pkgs/top-level/all-packages.nix               |  6 +++
 2 files changed, 53 insertions(+)
 create mode 100644 pkgs/applications/science/logic/boolector/default.nix

diff --git a/pkgs/applications/science/logic/boolector/default.nix b/pkgs/applications/science/logic/boolector/default.nix
new file mode 100644
index 000000000000..3879ee8ef470
--- /dev/null
+++ b/pkgs/applications/science/logic/boolector/default.nix
@@ -0,0 +1,47 @@
+{ stdenv, fetchurl, zlib, useV16 ? false }:
+
+let
+  v15 = rec {
+    name    = "boolector-${version}";
+    version = "1.5.118";
+    src = fetchurl {
+      url    = "http://fmv.jku.at/boolector/${name}-with-sat-solvers.tar.gz";
+      sha256 = "17j7q02rryvfwgvglxnhx0kv8hxwy8wbhzawn48lw05i98vxlmk9";
+    };
+  };
+
+  v16 = rec {
+    name    = "boolector-${version}";
+    version = "1.6.0";
+    src = fetchurl {
+      url    = "http://fmv.jku.at/boolector/${name}-with-sat-solvers.tar.gz";
+      sha256 = "0jka4r6bc3i24axgdp6qbq6gjadwz9kvi11s2c5sbwmdnjd7cp85";
+    };
+  };
+
+  boolectorPkg = if useV16 then v16 else v15;
+  license = with stdenv.lib.licenses; if useV16 then unfreeRedistributable else gpl3;
+in
+stdenv.mkDerivation (boolectorPkg // {
+  buildInputs = [ zlib ];
+  enableParallelBuilding = false;
+
+  buildPhase = "./build.sh";
+
+  installPhase = ''
+    mkdir -p $out/bin $out/lib $out/include
+    cp boolector/boolector      $out/bin
+    cp boolector/deltabtor      $out/bin
+    cp boolector/synthebtor     $out/bin
+    cp boolector/libboolector.a $out/lib
+    cp boolector/boolector.h    $out/include
+  '';
+
+  meta = {
+    inherit license;
+    description = "An extremely fast SMT solver for bit-vectors and arrays";
+    homepage    = "http://fmv.jku.at/boolector";
+    platforms   = stdenv.lib.platforms.linux;
+    maintainers = [ stdenv.lib.maintainers.thoughtpolice ];
+  };
+})
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 5383093bcd47..2e4f7db3a94b 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -10278,6 +10278,12 @@ let
 
   z3 = callPackage ../applications/science/logic/z3 {};
 
+  boolector   = boolector15;
+  boolector15 = callPackage ../applications/science/logic/boolector {};
+  boolector16 = lowPrio (callPackage ../applications/science/logic/boolector {
+    useV16 = true;
+  });
+
   ### SCIENCE / ELECTRONICS
 
   eagle = callPackage_i686 ../applications/science/electronics/eagle { };

From ff49602b174c394671bc289db5fe7b899963dc63 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 12:43:08 +0200
Subject: [PATCH 143/567] haskell-git-annex: update to version 5.20140405

---
 .../version-management/git-and-tools/git-annex/default.nix    | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/applications/version-management/git-and-tools/git-annex/default.nix b/pkgs/applications/version-management/git-and-tools/git-annex/default.nix
index 93735d266d6c..dcf76160ec61 100644
--- a/pkgs/applications/version-management/git-and-tools/git-annex/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-annex/default.nix
@@ -16,8 +16,8 @@
 
 cabal.mkDerivation (self: {
   pname = "git-annex";
-  version = "5.20140402";
-  sha256 = "138zs2nf8k9kvywsajnd5ij9yksaijrgjd75v1b6c6mc3jjy3vhm";
+  version = "5.20140405";
+  sha256 = "0nbfnv9z2jhx2jr2nma0y1znvbaa09rv1drl6wk27j6xsbiq3p3k";
   isLibrary = false;
   isExecutable = true;
   buildDepends = [

From 6acbb0df129513a47fc7bce60b3e09ad04190443 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 12:43:10 +0200
Subject: [PATCH 144/567] haskell-DAV: update to version 0.6.2

---
 pkgs/development/libraries/haskell/DAV/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/DAV/default.nix b/pkgs/development/libraries/haskell/DAV/default.nix
index 1fc28b4e50b0..ac5a6636e76d 100644
--- a/pkgs/development/libraries/haskell/DAV/default.nix
+++ b/pkgs/development/libraries/haskell/DAV/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "DAV";
-  version = "0.6.1";
-  sha256 = "0j82fz5z9cwnl41qqs69gv0li25rkjndd8lnf4zy7bbdy558nxgz";
+  version = "0.6.2";
+  sha256 = "1alnjm0rfr7kwj6jax10bg8rcs8523n5dxyvw0mm65qykf78cprl";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [

From 1acfe0a81172d8e8a69f2501b33cf05205e2e45b Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 12:43:12 +0200
Subject: [PATCH 145/567] haskell-HStringTemplate: update to version 0.7.3

---
 .../development/libraries/haskell/HStringTemplate/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/HStringTemplate/default.nix b/pkgs/development/libraries/haskell/HStringTemplate/default.nix
index 6f96bbbcb7f4..0f02d96fcd40 100644
--- a/pkgs/development/libraries/haskell/HStringTemplate/default.nix
+++ b/pkgs/development/libraries/haskell/HStringTemplate/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "HStringTemplate";
-  version = "0.7.1";
-  sha256 = "0hqc1496xazihlww8j90m1cwzj7cihqbfjdly9s8kjf8d5my64ld";
+  version = "0.7.3";
+  sha256 = "1gw4v16nk0878qplcx6by2bl4280lwyn9a252p6ldaqlbk9vygw8";
   buildDepends = [
     blazeBuilder deepseq filepath mtl parsec syb text time utf8String
     void

From e235f6b6081341eb36b7d7dad7c0559504c8114f Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 12:43:14 +0200
Subject: [PATCH 146/567] haskell-Hipmunk: update to version 5.2.0.13

---
 pkgs/development/libraries/haskell/Hipmunk/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/Hipmunk/default.nix b/pkgs/development/libraries/haskell/Hipmunk/default.nix
index e2f78497a7a3..faaed63399a9 100644
--- a/pkgs/development/libraries/haskell/Hipmunk/default.nix
+++ b/pkgs/development/libraries/haskell/Hipmunk/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "Hipmunk";
-  version = "5.2.0.12";
-  sha256 = "0gybmwwij6gs3gsklcvck0nc1niyh6pvirnxgrcwclrz94ivpj42";
+  version = "5.2.0.13";
+  sha256 = "0ddf7cbwaswyszq9rs5jq353npbry8l2cc7p5wq9wq97yplz10bc";
   buildDepends = [ StateVar transformers ];
   meta = {
     homepage = "https://github.com/meteficha/Hipmunk";

From b5ab38cd74dfd91bcc16ca792068669f812dcddf Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 12:43:15 +0200
Subject: [PATCH 147/567] haskell-TypeCompose: update to version 0.9.10

---
 pkgs/development/libraries/haskell/TypeCompose/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/TypeCompose/default.nix b/pkgs/development/libraries/haskell/TypeCompose/default.nix
index b7c1a23d3d5e..083f438e170d 100644
--- a/pkgs/development/libraries/haskell/TypeCompose/default.nix
+++ b/pkgs/development/libraries/haskell/TypeCompose/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "TypeCompose";
-  version = "0.9.9";
-  sha256 = "0i89r1yaglkcc1fdhn0m4hws5rqcpmkg32ddznch7a3rz1l9gqwg";
+  version = "0.9.10";
+  sha256 = "1wpldqdf6czl36fs4pvvj2z3kg1487sanqncp4rbmgrrhbfmqxxq";
   meta = {
     homepage = "https://github.com/conal/TypeCompose";
     description = "Type composition classes & instances";

From 448d6458a64a074e10faf839c2d9cd09b58c50f8 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 12:43:17 +0200
Subject: [PATCH 148/567] haskell-crypto-conduit: update to version 0.5.3

---
 .../libraries/haskell/crypto-conduit/default.nix | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

diff --git a/pkgs/development/libraries/haskell/crypto-conduit/default.nix b/pkgs/development/libraries/haskell/crypto-conduit/default.nix
index 3668c46dc684..bcc357fbed3c 100644
--- a/pkgs/development/libraries/haskell/crypto-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/crypto-conduit/default.nix
@@ -1,15 +1,17 @@
-{ cabal, cereal, conduit, cryptoApi, cryptocipher
-, cryptohashCryptoapi, hspec, skein, transformers
+{ cabal, cereal, conduit, conduitExtra, cryptoApi, cryptocipher
+, cryptohashCryptoapi, hspec, resourcet, skein, transformers
 }:
 
 cabal.mkDerivation (self: {
   pname = "crypto-conduit";
-  version = "0.5.2.2";
-  sha256 = "1969jys4za3m818jvnfcsv5hpc50bcvkrmy9lxr8fz854q01vhk2";
-  buildDepends = [ cereal conduit cryptoApi transformers ];
+  version = "0.5.3";
+  sha256 = "1xvjfkwd4rqlgyz172s2mihfqz1pac84qhc72c4zw1nwadsh6dgl";
+  buildDepends = [
+    cereal conduit conduitExtra cryptoApi resourcet transformers
+  ];
   testDepends = [
-    cereal conduit cryptoApi cryptocipher cryptohashCryptoapi hspec
-    skein transformers
+    cereal conduit conduitExtra cryptoApi cryptocipher
+    cryptohashCryptoapi hspec skein transformers
   ];
   jailbreak = true;
   doCheck = false;

From 9e04637777b27ce615f31265e2610ab52c33aefa Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 12:43:19 +0200
Subject: [PATCH 149/567] haskell-cryptohash-cryptoapi: update to version 0.1.3

---
 .../libraries/haskell/cryptohash-cryptoapi/default.nix        | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/cryptohash-cryptoapi/default.nix b/pkgs/development/libraries/haskell/cryptohash-cryptoapi/default.nix
index 7041bcc52856..020b34298ade 100644
--- a/pkgs/development/libraries/haskell/cryptohash-cryptoapi/default.nix
+++ b/pkgs/development/libraries/haskell/cryptohash-cryptoapi/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "cryptohash-cryptoapi";
-  version = "0.1.2";
-  sha256 = "1i2qxyq5qk4jzgkl7kndy10sbmzmagamfnqvl300qm3msi9k0kfy";
+  version = "0.1.3";
+  sha256 = "0wj53p32js8lfg0i8akrljpash0jdiyv2vcqpmjbd4dq2fx81w2n";
   buildDepends = [ cereal cryptoApi cryptohash tagged ];
   meta = {
     homepage = "http://github.com/vincenthz/hs-cryptohash-cryptoapi";

From ec4e1295ca41a29e79ce69cf3923326e3e0f6e32 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 12:43:21 +0200
Subject: [PATCH 150/567] haskell-fay-base: update to version 0.19.1.1

---
 pkgs/development/libraries/haskell/fay-base/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/fay-base/default.nix b/pkgs/development/libraries/haskell/fay-base/default.nix
index 6e9ed4868847..fae2c8ee93f5 100644
--- a/pkgs/development/libraries/haskell/fay-base/default.nix
+++ b/pkgs/development/libraries/haskell/fay-base/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "fay-base";
-  version = "0.19.1";
-  sha256 = "1b4v8l3adhcpply9yqk1pc1cgsvqlamvk60rvcb89kw5clrbvr4r";
+  version = "0.19.1.1";
+  sha256 = "1qn48aj7j33gvb6vmz986cqi41zvh62sbmmvwgyhpmrhsfkm5wkz";
   buildDepends = [ fay ];
   meta = {
     homepage = "https://github.com/faylang/fay-base";

From 1b32db652a8c802d3dba3df4e3cbae3968ed7062 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 12:43:23 +0200
Subject: [PATCH 151/567] haskell-fay: update to version 0.19.1.2

---
 pkgs/development/libraries/haskell/fay/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/fay/default.nix b/pkgs/development/libraries/haskell/fay/default.nix
index ec5f0a48b871..3af423e57456 100644
--- a/pkgs/development/libraries/haskell/fay/default.nix
+++ b/pkgs/development/libraries/haskell/fay/default.nix
@@ -8,8 +8,8 @@
 
 cabal.mkDerivation (self: {
   pname = "fay";
-  version = "0.19.1.1";
-  sha256 = "1jjv7l4x1bxr4whhcn4vh4b3ac4wfnb6l322jmdj60nh9sj8dzpf";
+  version = "0.19.1.2";
+  sha256 = "1v6fnyzvs55sf602ja74x5cwkg97rc46ybv8ybrnsg9jvhscynpr";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [

From afd7e3c1de8a4121ce557c7c525d09e06f7eabed Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 12:43:25 +0200
Subject: [PATCH 152/567] haskell-hakyll: update to version 4.5.0.2

---
 pkgs/development/libraries/haskell/hakyll/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/hakyll/default.nix b/pkgs/development/libraries/haskell/hakyll/default.nix
index 13128b75b9fd..56977517b9ef 100644
--- a/pkgs/development/libraries/haskell/hakyll/default.nix
+++ b/pkgs/development/libraries/haskell/hakyll/default.nix
@@ -8,8 +8,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hakyll";
-  version = "4.5.0.1";
-  sha256 = "0zl8zjwkyrh5c0l190q6qw1w6mwhw7jsjk3l7qjpgxbmv730q7nz";
+  version = "4.5.0.2";
+  sha256 = "1aphn76iq0cxxnb2ixddr017wbp6caxwjh5azfa4cy2lw2jmznyz";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [

From 7f6404001d5ea5ed24f0735077e812066d2bdc91 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 12:43:26 +0200
Subject: [PATCH 153/567] haskell-hspec-meta: update to version 1.9.2

---
 pkgs/development/libraries/haskell/hspec-meta/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/hspec-meta/default.nix b/pkgs/development/libraries/haskell/hspec-meta/default.nix
index 28edba11cac2..c522dc9f9687 100644
--- a/pkgs/development/libraries/haskell/hspec-meta/default.nix
+++ b/pkgs/development/libraries/haskell/hspec-meta/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hspec-meta";
-  version = "1.9.0";
-  sha256 = "1jvx748aay8ln23p382y03gk6hc19f3z62za4326i0d3cyapfqdv";
+  version = "1.9.2";
+  sha256 = "0df54njh3i2gq10rkibqaq36xzv16pd2pp18wy28w6x5xff5hvm5";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [

From 59f7f63792e049974265dfeaffc641b73d9f3931 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 12:43:28 +0200
Subject: [PATCH 154/567] haskell-hspec: update to version 1.9.2

---
 pkgs/development/libraries/haskell/hspec/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/hspec/default.nix b/pkgs/development/libraries/haskell/hspec/default.nix
index 5ba74dde34c9..8d316caf4c85 100644
--- a/pkgs/development/libraries/haskell/hspec/default.nix
+++ b/pkgs/development/libraries/haskell/hspec/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hspec";
-  version = "1.9.1";
-  sha256 = "1klx7gxg4a98rjhln6ixlmfvsgpxdkdg56jbl06bfxp2lmfyxm9p";
+  version = "1.9.2";
+  sha256 = "0q8a1n03d70l86l2yy98j180xbnfq0ijgcf5llv439b65lc4zcyf";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [

From 7e539c72efa23bfecf36961f045e006daf0c45fa Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 12:43:30 +0200
Subject: [PATCH 155/567] haskell-quickcheck-io: update to version 0.1.1

---
 pkgs/development/libraries/haskell/quickcheck-io/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/quickcheck-io/default.nix b/pkgs/development/libraries/haskell/quickcheck-io/default.nix
index b7c33b6d1a0a..9e345f800531 100644
--- a/pkgs/development/libraries/haskell/quickcheck-io/default.nix
+++ b/pkgs/development/libraries/haskell/quickcheck-io/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "quickcheck-io";
-  version = "0.1.0";
-  sha256 = "167ds7c7p1lcfsylxhq2sr0jxbviyim1n42dhyr0s0b6hazw8cjs";
+  version = "0.1.1";
+  sha256 = "16q3sqvxnaqmbb1zbda8f61mdlmmzxhrznqxab113lmg380nwfm2";
   buildDepends = [ HUnit QuickCheck ];
   meta = {
     description = "Use HUnit assertions as QuickCheck properties";

From cbe4a977de3af36e285df2016393f7e5388c5b39 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 12:43:32 +0200
Subject: [PATCH 156/567] haskell-random-fu: update to version 0.2.5.0

---
 .../libraries/haskell/random-fu/default.nix          | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/pkgs/development/libraries/haskell/random-fu/default.nix b/pkgs/development/libraries/haskell/random-fu/default.nix
index 8dd228ad3db3..41999e535e04 100644
--- a/pkgs/development/libraries/haskell/random-fu/default.nix
+++ b/pkgs/development/libraries/haskell/random-fu/default.nix
@@ -1,14 +1,14 @@
-{ cabal, erf, gamma, monadLoops, mtl, randomShuffle, randomSource
-, rvar, syb, transformers, vector
+{ cabal, erf, mathFunctions, monadLoops, mtl, randomShuffle
+, randomSource, rvar, syb, transformers, vector
 }:
 
 cabal.mkDerivation (self: {
   pname = "random-fu";
-  version = "0.2.4.0";
-  sha256 = "1wiwh52qfs699mcj3ylwc97pyabczn6dr8j92qczs89g8vvi91wd";
+  version = "0.2.5.0";
+  sha256 = "1yfq7mvplzdk64i7z5ip8vjynn48a65z28xrhcv91qi0yjxsxdm0";
   buildDepends = [
-    erf gamma monadLoops mtl randomShuffle randomSource rvar syb
-    transformers vector
+    erf mathFunctions monadLoops mtl randomShuffle randomSource rvar
+    syb transformers vector
   ];
   meta = {
     homepage = "https://github.com/mokus0/random-fu";

From 73411b90dd88f7329e81db361ca174211c118ddf Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 12:43:34 +0200
Subject: [PATCH 157/567] haskell-resourcet: update to version 1.1.1

---
 pkgs/development/libraries/haskell/resourcet/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/resourcet/default.nix b/pkgs/development/libraries/haskell/resourcet/default.nix
index 111afbf6a7a4..7995227a8c0d 100644
--- a/pkgs/development/libraries/haskell/resourcet/default.nix
+++ b/pkgs/development/libraries/haskell/resourcet/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "resourcet";
-  version = "1.1.0.1";
-  sha256 = "02w2gz0zn039bz1ig91jd0zkg9w1nxpi3byh6ybdsnbyddwfy376";
+  version = "1.1.1";
+  sha256 = "0v80wlxpcikr41p8wxa2kr184ghp94bgb5fwym9c27k8djig2awy";
   buildDepends = [
     exceptions liftedBase mmorph monadControl mtl transformers
     transformersBase

From 9b15ca717872f9fba0d4293f78603db042790669 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 12:43:36 +0200
Subject: [PATCH 158/567] haskell-temporary: update to version 1.2.0.2

---
 pkgs/development/libraries/haskell/temporary/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/temporary/default.nix b/pkgs/development/libraries/haskell/temporary/default.nix
index cf5d76f8cd6c..585eaf58682d 100644
--- a/pkgs/development/libraries/haskell/temporary/default.nix
+++ b/pkgs/development/libraries/haskell/temporary/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "temporary";
-  version = "1.2.0.1";
-  sha256 = "12z8qnqn1fg9ymaav5ds7gk067lmj0bv1lhhxcnvmvjcpk1l5b54";
+  version = "1.2.0.2";
+  sha256 = "1ynvhmc6b385sn8qw3sni3cwmz7pmppns546416xil9mhbiya87z";
   buildDepends = [ exceptions filepath transformers ];
   jailbreak = true;
   meta = {

From aebf705dbfad3f20a7e245af069a3b5cf84e97d7 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 12:43:37 +0200
Subject: [PATCH 159/567] haskell-twitter-types: update to version 0.2.20140406

---
 .../libraries/haskell/twitter-types/default.nix           | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/pkgs/development/libraries/haskell/twitter-types/default.nix b/pkgs/development/libraries/haskell/twitter-types/default.nix
index a7fb544afc1f..aea8f3dbc3a2 100644
--- a/pkgs/development/libraries/haskell/twitter-types/default.nix
+++ b/pkgs/development/libraries/haskell/twitter-types/default.nix
@@ -1,15 +1,15 @@
-{ cabal, aeson, attoparsec, httpTypes, HUnit, shakespeareText
+{ cabal, aeson, attoparsec, httpTypes, HUnit, shakespeare
 , testFramework, testFrameworkHunit, testFrameworkThPrime, text
 , unorderedContainers
 }:
 
 cabal.mkDerivation (self: {
   pname = "twitter-types";
-  version = "0.2.20130101";
-  sha256 = "0y7pymwcv8i5f8hqh4h018xp5bd998l8fx9f2a8x6d53c7l34wmd";
+  version = "0.2.20140406";
+  sha256 = "0zzdnmcx57w2j2bypwnxkrmaa2zw945g8717lm0c2wzk31kjbvi8";
   buildDepends = [ aeson httpTypes text unorderedContainers ];
   testDepends = [
-    aeson attoparsec httpTypes HUnit shakespeareText testFramework
+    aeson attoparsec httpTypes HUnit shakespeare testFramework
     testFrameworkHunit testFrameworkThPrime text unorderedContainers
   ];
   doCheck = false;

From 180673ccec593ea5ad5708aa929608c8d329eae5 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 12:43:39 +0200
Subject: [PATCH 160/567] haskell-yesod-bin: update to version 1.2.8

---
 pkgs/development/libraries/haskell/yesod-bin/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/yesod-bin/default.nix b/pkgs/development/libraries/haskell/yesod-bin/default.nix
index baf4a9dd4d50..46b78fcbd8f5 100644
--- a/pkgs/development/libraries/haskell/yesod-bin/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-bin/default.nix
@@ -10,8 +10,8 @@
 
 cabal.mkDerivation (self: {
   pname = "yesod-bin";
-  version = "1.2.7.4";
-  sha256 = "1nhpn8855jhvjmh5fdvjic20lyx6k054kfp8j0lwvdcd79c7bl77";
+  version = "1.2.8";
+  sha256 = "0hic32k1ii1j2hrwxj7pc7vv26dmq8rv7h7as1fw0bwlysrnw8nm";
   isLibrary = false;
   isExecutable = true;
   buildDepends = [

From 8673cef70d2f1c34755c8b3d75a3fa2fcb6b2879 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 12:43:41 +0200
Subject: [PATCH 161/567] haskell-yesod-core: update to version 1.2.11

---
 .../libraries/haskell/yesod-core/default.nix   | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/pkgs/development/libraries/haskell/yesod-core/default.nix b/pkgs/development/libraries/haskell/yesod-core/default.nix
index 3083eb0c9298..ab968a530480 100644
--- a/pkgs/development/libraries/haskell/yesod-core/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-core/default.nix
@@ -1,23 +1,23 @@
 { cabal, aeson, async, attoparsecConduit, blazeBuilder, blazeHtml
 , blazeMarkup, caseInsensitive, cereal, clientsession, conduit
 , conduitExtra, cookie, dataDefault, fastLogger, hamlet, hspec
-, httpTypes, HUnit, liftedBase, monadControl, monadLogger, network
-, networkConduit, parsec, pathPieces, QuickCheck, random, resourcet
-, safe, shakespeare, shakespeareCss, shakespeareI18n, shakespeareJs
-, streamingCommons, text, time, transformers, transformersBase
-, unixCompat, vector, wai, waiExtra, waiLogger, waiTest, warp
-, yesodRoutes
+, httpTypes, HUnit, liftedBase, monadControl, monadLogger, mtl
+, network, networkConduit, parsec, pathPieces, QuickCheck, random
+, resourcet, safe, shakespeare, shakespeareCss, shakespeareI18n
+, shakespeareJs, streamingCommons, text, time, transformers
+, transformersBase, unixCompat, vector, wai, waiExtra, waiLogger
+, waiTest, warp, yesodRoutes
 }:
 
 cabal.mkDerivation (self: {
   pname = "yesod-core";
-  version = "1.2.9.2";
-  sha256 = "1ip5rra426agqv5v2hmxcp1g3xjvi9wnixrpdnxvifflhr7gchfl";
+  version = "1.2.11";
+  sha256 = "0vg07g5735qsr01wpgxpjzjc7w9nrqvkhfnd90jzdvg3kg33dgih";
   buildDepends = [
     aeson attoparsecConduit blazeBuilder blazeHtml blazeMarkup
     caseInsensitive cereal clientsession conduit conduitExtra cookie
     dataDefault fastLogger hamlet httpTypes liftedBase monadControl
-    monadLogger parsec pathPieces random resourcet safe shakespeare
+    monadLogger mtl parsec pathPieces random resourcet safe shakespeare
     shakespeareCss shakespeareI18n shakespeareJs text time transformers
     transformersBase unixCompat vector wai waiExtra waiLogger warp
     yesodRoutes

From 6876e696b4196f31b007a2e8601eb4da98084e9c Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 12:43:43 +0200
Subject: [PATCH 162/567] haskell-HaRe: update to version 0.7.2.2

---
 pkgs/development/tools/haskell/HaRe/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/tools/haskell/HaRe/default.nix b/pkgs/development/tools/haskell/HaRe/default.nix
index 11c36f320f2a..7cbc66305847 100644
--- a/pkgs/development/tools/haskell/HaRe/default.nix
+++ b/pkgs/development/tools/haskell/HaRe/default.nix
@@ -7,8 +7,8 @@
 
 cabal.mkDerivation (self: {
   pname = "HaRe";
-  version = "0.7.2.0";
-  sha256 = "0i769mryjr3v9vh4zkdycpha8skq9xcdln3plrxx55bf42c4aqi9";
+  version = "0.7.2.2";
+  sha256 = "0w9cjs3r99k4mf835higcsllk0h8lbich1v9wb2pvwbqi3i9r0sp";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [

From bdc3361515471f54252783332ebb83c2f8e29146 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 12:43:45 +0200
Subject: [PATCH 163/567] haskell-keter: update to version 1.3.0

---
 .../tools/haskell/keter/default.nix           | 27 +++++++++----------
 1 file changed, 13 insertions(+), 14 deletions(-)

diff --git a/pkgs/development/tools/haskell/keter/default.nix b/pkgs/development/tools/haskell/keter/default.nix
index a56e64953c0d..1cffefd6da31 100644
--- a/pkgs/development/tools/haskell/keter/default.nix
+++ b/pkgs/development/tools/haskell/keter/default.nix
@@ -1,26 +1,25 @@
 { cabal, aeson, async, attoparsec, blazeBuilder, caseInsensitive
-, conduit, dataDefault, filepath, fsnotify, hspec, httpClient
-, httpClientConduit, httpConduit, httpReverseProxy, httpTypes
-, liftedBase, mtl, network, networkConduit, networkConduitTls
-, random, regexTdfa, stm, systemFileio, systemFilepath, tar, text
-, time, transformers, unixCompat, unorderedContainers, vector, wai
-, waiAppStatic, waiExtra, warp, warpTls, yaml, zlib
+, conduit, conduitExtra, dataDefault, filepath, fsnotify, hspec
+, httpConduit, httpReverseProxy, httpTypes, liftedBase, mtl
+, network, networkConduitTls, random, regexTdfa, stm, systemFileio
+, systemFilepath, tar, text, time, transformers, unixCompat
+, unorderedContainers, vector, wai, waiAppStatic, waiExtra, warp
+, warpTls, yaml, zlib
 }:
 
 cabal.mkDerivation (self: {
   pname = "keter";
-  version = "1.2.1";
-  sha256 = "160kw3c2h9i1rwhicm860ahanx9p9qskrnfxsa68484j0cmw1ga9";
+  version = "1.3.0";
+  sha256 = "1fvb93iga4c0kfv29ksrmn9bjznl7wfspg1v9a5d3svwrszl4is3";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
     aeson async attoparsec blazeBuilder caseInsensitive conduit
-    dataDefault filepath fsnotify httpClient httpClientConduit
-    httpConduit httpReverseProxy httpTypes liftedBase mtl network
-    networkConduit networkConduitTls random regexTdfa stm systemFileio
-    systemFilepath tar text time transformers unixCompat
-    unorderedContainers vector wai waiAppStatic waiExtra warp warpTls
-    yaml zlib
+    conduitExtra dataDefault filepath fsnotify httpConduit
+    httpReverseProxy httpTypes liftedBase mtl network networkConduitTls
+    random regexTdfa stm systemFileio systemFilepath tar text time
+    transformers unixCompat unorderedContainers vector wai waiAppStatic
+    waiExtra warp warpTls yaml zlib
   ];
   testDepends = [ conduit hspec transformers ];
   meta = {

From 9ec3e833f7d22594cf63042b67be0e5cd2b7b212 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:03:55 +0200
Subject: [PATCH 164/567] hledger-web: patch to fix build with recent versions
 of conduit

Cc: @simonmichael
---
 .../haskell/hledger-web/build-fix.patch       | 47 +++++++++++++++++++
 .../libraries/haskell/hledger-web/default.nix |  1 +
 2 files changed, 48 insertions(+)
 create mode 100644 pkgs/development/libraries/haskell/hledger-web/build-fix.patch

diff --git a/pkgs/development/libraries/haskell/hledger-web/build-fix.patch b/pkgs/development/libraries/haskell/hledger-web/build-fix.patch
new file mode 100644
index 000000000000..45862bf1679c
--- /dev/null
+++ b/pkgs/development/libraries/haskell/hledger-web/build-fix.patch
@@ -0,0 +1,47 @@
+Only in hledger-web-0.22.4: dist
+diff -urw hledger-web-0.22.4-orig/Hledger/Web/Main.hs hledger-web-0.22.4/Hledger/Web/Main.hs
+--- hledger-web-0.22.4-orig/Hledger/Web/Main.hs	2014-04-07 13:00:41.168884350 +0200
++++ hledger-web-0.22.4/Hledger/Web/Main.hs	2014-04-07 13:14:46.584599468 +0200
+@@ -15,7 +15,8 @@
+ -- import Yesod.Default.Main   (defaultMain)
+ import Settings            --  (parseExtra)
+ import Application          (makeApplication)
+-import Data.Conduit.Network (HostPreference(HostIPv4))
++import Data.String
++import Data.Conduit.Network
+ import Network.Wai.Handler.Warp (runSettings, defaultSettings, settingsPort)
+ import Network.Wai.Handler.Launch (runUrlPort)
+ --
+@@ -65,7 +66,7 @@
+   app <- makeApplication opts j' AppConfig{appEnv = Development
+                                           ,appPort = p
+                                           ,appRoot = pack u
+-                                          ,appHost = HostIPv4
++                                          ,appHost = fromString "*4"
+                                           ,appExtra = Extra "" Nothing staticRoot
+                                           }
+   if server_ opts
+diff -urw hledger-web-0.22.4-orig/hledger-web.cabal hledger-web-0.22.4/hledger-web.cabal
+--- hledger-web-0.22.4-orig/hledger-web.cabal	2014-04-07 13:00:41.168884350 +0200
++++ hledger-web-0.22.4/hledger-web.cabal	2014-04-07 13:16:26.376772344 +0200
+@@ -128,7 +128,7 @@
+                    , http-conduit
+                    , http-client          >= 0.2 && < 0.3
+                    , HUnit
+-                   , network-conduit
++                   , network-conduit, conduit-extra
+                    , old-locale
+                    , parsec
+                    , regexpr              >= 0.5.1
+@@ -220,7 +220,7 @@
+                    , http-conduit
+                    , http-client          >= 0.2 && < 0.3
+                    , HUnit
+-                   , network-conduit
++                   , network-conduit, conduit-extra
+                    , old-locale
+                    , parsec
+                    , regexpr              >= 0.5.1
+Only in hledger-web-0.22.4: Setup
+Only in hledger-web-0.22.4: Setup.hi
+Only in hledger-web-0.22.4: Setup.o
diff --git a/pkgs/development/libraries/haskell/hledger-web/default.nix b/pkgs/development/libraries/haskell/hledger-web/default.nix
index eee84c338e63..58328ae9cf50 100644
--- a/pkgs/development/libraries/haskell/hledger-web/default.nix
+++ b/pkgs/development/libraries/haskell/hledger-web/default.nix
@@ -22,6 +22,7 @@ cabal.mkDerivation (self: {
   testDepends = [ hspec yesod yesodTest ];
   jailbreak = true;
   doCheck = false;
+  patches = [ ./build-fix.patch ];
   meta = {
     homepage = "http://hledger.org";
     description = "A web interface for the hledger accounting tool";

From 017a8975e7a32e125df3a99c17141f5280394cde Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:25:57 +0200
Subject: [PATCH 165/567] haskell-github: patch to fix build with recent
 versions of conduit

Cc: @jwiegley
---
 pkgs/development/libraries/haskell/github/default.nix | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/pkgs/development/libraries/haskell/github/default.nix b/pkgs/development/libraries/haskell/github/default.nix
index 0c1d0b3135d9..5fd23514583c 100644
--- a/pkgs/development/libraries/haskell/github/default.nix
+++ b/pkgs/development/libraries/haskell/github/default.nix
@@ -13,6 +13,9 @@ cabal.mkDerivation (self: {
     unorderedContainers vector
   ];
   jailbreak = true;
+  patchPhase = ''
+    sed -i -e '/^import Data.Conduit (ResourceT)/d' Github/Private.hs
+  '';
   meta = {
     homepage = "https://github.com/fpco/github";
     description = "Access to the Github API, v3";

From a29b90b4c726afb44181ca1b0b5e12207a165540 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:30:12 +0200
Subject: [PATCH 166/567] haskell-language-javascript: update to version 0.5.12

---
 .../haskell/language-javascript/default.nix         | 13 ++++++-------
 pkgs/top-level/haskell-packages.nix                 |  4 +++-
 2 files changed, 9 insertions(+), 8 deletions(-)

diff --git a/pkgs/development/libraries/haskell/language-javascript/default.nix b/pkgs/development/libraries/haskell/language-javascript/default.nix
index 94d693aa7c86..647c3be498d0 100644
--- a/pkgs/development/libraries/haskell/language-javascript/default.nix
+++ b/pkgs/development/libraries/haskell/language-javascript/default.nix
@@ -1,18 +1,17 @@
-{ cabal, blazeBuilder, Cabal, happy, HUnit, mtl, QuickCheck
-, testFramework, testFrameworkHunit, utf8Light, utf8String, alex
+{ cabal, alex, blazeBuilder, Cabal, happy, HUnit, mtl, QuickCheck
+, testFramework, testFrameworkHunit, utf8Light, utf8String
 }:
 
 cabal.mkDerivation (self: {
   pname = "language-javascript";
-  version = "0.5.9";
-  sha256 = "1m1fs2vaw3yn9ryd49aprxc5l10xkr86mlxxf5bk6qp51wnp9xqh";
-  buildDepends = [ blazeBuilder mtl utf8Light utf8String ];
+  version = "0.5.12";
+  sha256 = "1zzgjxqgfl6k2z4cwh0961ipfc5fminfdg2162g45h2nrv63mq05";
+  buildDepends = [ blazeBuilder mtl utf8String ];
   testDepends = [
     blazeBuilder Cabal HUnit mtl QuickCheck testFramework
     testFrameworkHunit utf8Light utf8String
   ];
-  buildTools = [ happy alex ];
-  preConfigure = "rm -rv dist; $SHELL runalex.sh";
+  buildTools = [ alex happy ];
   meta = {
     homepage = "http://github.com/alanz/language-javascript";
     description = "Parser for JavaScript";
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 4648d76a7a12..ca689949b39a 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -1600,7 +1600,9 @@ let result = let callPackage = x : y : modifyPrio (newScope result.finalReturn x
 
   languageJava = callPackage ../development/libraries/haskell/language-java {};
 
-  languageJavascript = callPackage ../development/libraries/haskell/language-javascript {};
+  languageJavascript = callPackage ../development/libraries/haskell/language-javascript {
+    alex = self.alex_3_1_3;
+  };
 
   languageHaskellExtract = callPackage ../development/libraries/haskell/language-haskell-extract {};
 

From 4dc15c087a4b255f7b7c7203bc11e769d23ac49a Mon Sep 17 00:00:00 2001
From: Austin Seipp <aseipp@pobox.com>
Date: Mon, 24 Mar 2014 00:29:30 -0500
Subject: [PATCH 167/567] musl: version 1.0.0

NB: This currently doesn't add a working musl-wrapper around musl-gcc to
allow it to work properly (musl has its own dynamic linker as well as
libc too which must be accounted for). But at the moment it builds fine,
and I plan on working more on it in the future. So lets get it
integrated and building on Hydra.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
---
 pkgs/os-specific/linux/musl/default.nix | 24 ++++++++++++++++++++++++
 pkgs/top-level/all-packages.nix         |  2 ++
 2 files changed, 26 insertions(+)
 create mode 100644 pkgs/os-specific/linux/musl/default.nix

diff --git a/pkgs/os-specific/linux/musl/default.nix b/pkgs/os-specific/linux/musl/default.nix
new file mode 100644
index 000000000000..014591f0b55f
--- /dev/null
+++ b/pkgs/os-specific/linux/musl/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  name    = "musl-${version}";
+  version = "1.0.0";
+
+  src = fetchurl {
+    url    = "http://www.musl-libc.org/releases/${name}.tar.gz";
+    sha256 = "0chs9h8k4d0iwv8w7n1w02nll3ypwqa2gag6r4czznkj55fz9mqs";
+  };
+
+  enableParallelBuilding = true;
+  configurePhase = ''
+    ./configure --enable-shared --enable-static --prefix=$out --syslibdir=$out/lib
+  '';
+
+  meta = {
+    description = "An efficient, small, quality libc implementation";
+    homepage    = "http://www.musl-libc.org";
+    license     = stdenv.lib.licenses.mit;
+    platforms   = stdenv.lib.platforms.linux;
+    maintainers = [ stdenv.lib.maintainers.thoughtpolice ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 2e4f7db3a94b..046eead410cd 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -7170,6 +7170,8 @@ let
 
   multipath_tools = callPackage ../os-specific/linux/multipath-tools { };
 
+  musl = callPackage ../os-specific/linux/musl { };
+
   nettools = callPackage ../os-specific/linux/net-tools { };
 
   neverball = callPackage ../games/neverball {

From 1140f06e0fbafb4cfc64c0760d91cd67ba46ef59 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Domen=20Ko=C5=BEar?= <domen@dev.si>
Date: Mon, 7 Apr 2014 20:31:54 +0200
Subject: [PATCH 168/567] openssl: 1.0.1f -> 1.0.1g

CVE-2014-0160, CVE-2014-0076
---
 pkgs/development/libraries/openssl/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix
index 7d7ccacd14ad..0d57018dcd6f 100644
--- a/pkgs/development/libraries/openssl/default.nix
+++ b/pkgs/development/libraries/openssl/default.nix
@@ -2,7 +2,7 @@
 , withCryptodev ? false, cryptodevHeaders }:
 
 let
-  name = "openssl-1.0.1f";
+  name = "openssl-1.0.1g";
 
   opensslCrossSystem = stdenv.lib.attrByPath [ "openssl" "system" ]
     (throw "openssl needs its platform name cross building" null)
@@ -41,7 +41,7 @@ stdenv.mkDerivation {
       "http://www.openssl.org/source/${name}.tar.gz"
       "http://openssl.linux-mirror.org/source/${name}.tar.gz"
     ];
-    sha256 = "0nnbr70dg67raqsqvlypzxa1v5xsv9gp91f9pavyckfn2w5sihkc";
+    sha256 = "0a70qdqccg16nw4bbawa6pjvzn05vfp5wkwg6jl0grch7f683jsk";
   };
 
   patches = patchesCross false;

From 05ec85105009cbd92af15e6fe8168861ba52580f Mon Sep 17 00:00:00 2001
From: Austin Seipp <aseipp@pobox.com>
Date: Mon, 7 Apr 2014 13:52:01 -0500
Subject: [PATCH 169/567] kernel: longterm updates

 - longterm: 3.4.85  -> 3.4.86
 - longterm: 3.10.35 -> 3.10.36
 - longterm: 3.12.15 -> 3.12.17

Signed-off-by: Austin Seipp <aseipp@pobox.com>
---
 pkgs/os-specific/linux/kernel/linux-3.10.nix | 4 ++--
 pkgs/os-specific/linux/kernel/linux-3.12.nix | 4 ++--
 pkgs/os-specific/linux/kernel/linux-3.4.nix  | 4 ++--
 3 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/pkgs/os-specific/linux/kernel/linux-3.10.nix b/pkgs/os-specific/linux/kernel/linux-3.10.nix
index e5dbfe0d27b4..520b41ec2064 100644
--- a/pkgs/os-specific/linux/kernel/linux-3.10.nix
+++ b/pkgs/os-specific/linux/kernel/linux-3.10.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, ... } @ args:
 
 import ./generic.nix (args // rec {
-  version = "3.10.35";
+  version = "3.10.36";
   extraMeta.branch = "3.10";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz";
-    sha256 = "01hznshgclxgs9hvag1i1a69k95nf61z00q6qly4ym25wb77znyv";
+    sha256 = "1bx94v829qvv5r9h6cj5ddyj5n6qddy8bppnl8minjnqsv5l0vnr";
   };
 
   features.iwlwifi = true;
diff --git a/pkgs/os-specific/linux/kernel/linux-3.12.nix b/pkgs/os-specific/linux/kernel/linux-3.12.nix
index c758768a5ef0..e997e1951efb 100644
--- a/pkgs/os-specific/linux/kernel/linux-3.12.nix
+++ b/pkgs/os-specific/linux/kernel/linux-3.12.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, ... } @ args:
 
 import ./generic.nix (args // rec {
-  version = "3.12.15";
+  version = "3.12.17";
   extraMeta.branch = "3.12";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz";
-    sha256 = "08y42y5piibql0v6pwdp19nxvw5jngs4nw404lwh412zk0cnh4gn";
+    sha256 = "1knjmzk5gyab0b1prmna2bb8zz19sjmmjm24h6agmpq6q4bbnc5q";
   };
 
   features.iwlwifi = true;
diff --git a/pkgs/os-specific/linux/kernel/linux-3.4.nix b/pkgs/os-specific/linux/kernel/linux-3.4.nix
index 5eeddb35adbd..28542b889665 100644
--- a/pkgs/os-specific/linux/kernel/linux-3.4.nix
+++ b/pkgs/os-specific/linux/kernel/linux-3.4.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, ... } @ args:
 
 import ./generic.nix (args // rec {
-  version = "3.4.85";
+  version = "3.4.86";
   extraMeta.branch = "3.4";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz";
-    sha256 = "1ldbq9qka6bdgic4ydl9pnny734gyi2vxzdsnfmfi8mx7bnar29y";
+    sha256 = "1gb0pgpikl2fvwbkzpyh38ji0i656jgz902918kvxsip263w675q";
   };
 
   features.iwlwifi = true;

From 8cd95471d753248f7f7f1c70cd700c62730de3be Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= <bjorn.forsman@gmail.com>
Date: Mon, 7 Apr 2014 21:31:29 +0200
Subject: [PATCH 170/567] nixos: add type definitions to
 virtualisation.libvirtd.* options

---
 nixos/modules/virtualisation/libvirtd.nix | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/nixos/modules/virtualisation/libvirtd.nix b/nixos/modules/virtualisation/libvirtd.nix
index 583b09192e33..6d36fd4caa06 100644
--- a/nixos/modules/virtualisation/libvirtd.nix
+++ b/nixos/modules/virtualisation/libvirtd.nix
@@ -24,6 +24,7 @@ in
 
     virtualisation.libvirtd.enable =
       mkOption {
+        type = types.bool;
         default = false;
         description =
           ''
@@ -36,6 +37,7 @@ in
 
     virtualisation.libvirtd.enableKVM =
       mkOption {
+        type = types.bool;
         default = true;
         description =
           ''
@@ -45,6 +47,7 @@ in
 
     virtualisation.libvirtd.extraConfig =
       mkOption {
+        type = types.lines;
         default = "";
         description =
           ''

From 7dff8a8aaf1c1c86e2b98ec63cf18524fbb76a7a Mon Sep 17 00:00:00 2001
From: Alex Berg <chexxor@gmail.com>
Date: Mon, 7 Apr 2014 07:33:34 +0200
Subject: [PATCH 171/567] Bump Docker to v0.9.1. Tested pulling, committing,
 pushing.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
---
 .../virtualization/docker/default.nix         | 21 ++++++++-----------
 1 file changed, 9 insertions(+), 12 deletions(-)

diff --git a/pkgs/applications/virtualization/docker/default.nix b/pkgs/applications/virtualization/docker/default.nix
index b718d89c8c77..40385d9d36af 100644
--- a/pkgs/applications/virtualization/docker/default.nix
+++ b/pkgs/applications/virtualization/docker/default.nix
@@ -1,36 +1,33 @@
-{ stdenv, fetchurl, makeWrapper, go, lxc, sqlite, iproute, iptables, lvm2
-, bash}:
+{ stdenv, fetchurl, makeWrapper, go, lxc, sqlite, iproute, bridge_utils, devicemapper,
+btrfsProgs, iptables, bash}:
 
 stdenv.mkDerivation rec {
   name = "docker-${version}";
-  version = "0.7.6";
+  version = "0.9.1";
 
   src = fetchurl {
     url = "https://github.com/dotcloud/docker/archive/v${version}.tar.gz";
-    sha256 = "0anlzba2vm1fs5nf0dl2svrgj3ddsbl5iyhsm8vfbi3f23vppkfv";
+    sha256 = "0m4s21dxd1bj08xrmi7iw77djj3cpxvjsin12p6v6v1qnigm18ww";
   };
 
   phases = ["unpackPhase" "preBuild" "buildPhase" "installPhase"];
 
-  buildInputs = [ makeWrapper go sqlite lxc iproute lvm2 iptables ];
+  buildInputs = [ makeWrapper go sqlite lxc iproute bridge_utils devicemapper btrfsProgs iptables ];
 
   preBuild = ''
     patchShebangs ./hack
   '';
 
   buildPhase = ''
-    mkdir -p src/github.com/dotcloud
-    ln -sn "../../../" "src/github.com/dotcloud/docker"
-    export GOPATH="$(pwd):$(pwd)/vendor"
-    export DOCKER_GITCOMMIT="bc3b2ec0622f50879ae96f042056b6bd2e0b4fba"
-    export DOCKER_INITPATH="$out/libexec/docker/dockerinit"
+    export AUTO_GOPATH=1
+    export DOCKER_GITCOMMIT="867b2a90c228f62cdcd44907ceef279a2d8f1ac5"
     ./hack/make.sh dynbinary
   '';
 
   installPhase = ''
     install -Dm755 ./bundles/${version}/dynbinary/docker-${version} $out/bin/docker
-    install -Dm755 ./bundles/${version}/dynbinary/dockerinit-${version} $out/libexec/docker/dockerinit
-    wrapProgram $out/bin/docker --prefix PATH : "${iproute}/sbin:${lvm2}:sbin:${lxc}/bin:${iptables}/sbin"
+    install -Dm755 ./bundles/${version}/dynbinary/dockerinit-${version} $out/bin/dockerinit
+    wrapProgram $out/bin/docker --prefix PATH : "${iproute}/sbin:sbin:${lxc}/bin:${iptables}/sbin"
 
     # systemd
     install -Dm644 ./contrib/init/systemd/docker.service $out/etc/systemd/system/docker.service

From 08c7105503b5c5a3e636d9b55577e619e6706db9 Mon Sep 17 00:00:00 2001
From: Shea Levy <shea@shealevy.com>
Date: Mon, 7 Apr 2014 16:34:29 -0400
Subject: [PATCH 172/567] haskell-scotty: fix build with new conduit

---
 .../libraries/haskell/scotty/default.nix            |  5 +++--
 .../libraries/haskell/scotty/new-conduit.patch      | 13 +++++++++++++
 2 files changed, 16 insertions(+), 2 deletions(-)
 create mode 100644 pkgs/development/libraries/haskell/scotty/new-conduit.patch

diff --git a/pkgs/development/libraries/haskell/scotty/default.nix b/pkgs/development/libraries/haskell/scotty/default.nix
index 278a26d1536e..42f4068f9a9a 100644
--- a/pkgs/development/libraries/haskell/scotty/default.nix
+++ b/pkgs/development/libraries/haskell/scotty/default.nix
@@ -1,15 +1,16 @@
 { cabal, aeson, blazeBuilder, caseInsensitive, conduit, dataDefault
 , httpTypes, mtl, regexCompat, text, transformers, wai, waiExtra
-, warp
+, warp, conduitExtra
 }:
 
 cabal.mkDerivation (self: {
   pname = "scotty";
   version = "0.7.1";
   sha256 = "07aj74jq0hh86ik4x5p5q65b47q44rrnd6mkp039wj9l6dmyrv3c";
+  patches = [ ./new-conduit.patch ];
   buildDepends = [
     aeson blazeBuilder caseInsensitive conduit dataDefault httpTypes
-    mtl regexCompat text transformers wai waiExtra warp
+    mtl regexCompat text transformers wai waiExtra warp conduitExtra
   ];
   jailbreak = true;
   meta = {
diff --git a/pkgs/development/libraries/haskell/scotty/new-conduit.patch b/pkgs/development/libraries/haskell/scotty/new-conduit.patch
new file mode 100644
index 000000000000..74c6ebdc161c
--- /dev/null
+++ b/pkgs/development/libraries/haskell/scotty/new-conduit.patch
@@ -0,0 +1,13 @@
+diff -Naur scotty-0.7.1-orig/scotty.cabal scotty-0.7.1/scotty.cabal
+--- scotty-0.7.1-orig/scotty.cabal	2014-03-19 17:27:33.000000000 -0400
++++ scotty-0.7.1/scotty.cabal	2014-04-07 10:59:39.933144140 -0400
+@@ -82,7 +82,8 @@
+                        transformers     >= 0.3.0.0  && < 0.4,
+                        wai              >= 2.0.0    && < 2.2,
+                        wai-extra        >= 2.0.1    && < 2.2,
+-                       warp             >= 2.1.1    && < 2.2
++                       warp             >= 2.1.1    && < 2.2,
++                       conduit-extra
+ 
+   GHC-options: -Wall -fno-warn-orphans
+ 

From c7899ae8ea52de237bde56fda71372991de78bf0 Mon Sep 17 00:00:00 2001
From: Shea Levy <shea@shealevy.com>
Date: Mon, 7 Apr 2014 16:35:26 -0400
Subject: [PATCH 173/567] haskell-libjenkins: fix build with new conduit

---
 pkgs/development/libraries/haskell/libjenkins/default.nix | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/pkgs/development/libraries/haskell/libjenkins/default.nix b/pkgs/development/libraries/haskell/libjenkins/default.nix
index 722e280c6e54..67f0b698d47b 100644
--- a/pkgs/development/libraries/haskell/libjenkins/default.nix
+++ b/pkgs/development/libraries/haskell/libjenkins/default.nix
@@ -7,6 +7,7 @@ cabal.mkDerivation (self: {
   pname = "libjenkins";
   version = "0.4.2.0";
   sha256 = "11013klk2gvcaf2d2gmi0bf3jg2m82li19szqlwb325kdjmdf546";
+  patches = [ ./new-conduit.patch ];
   buildDepends = [
     async conduit free httpClient httpConduit httpTypes lens
     monadControl network text transformers xmlConduit
@@ -17,6 +18,7 @@ cabal.mkDerivation (self: {
     transformers xmlConduit
   ];
   doCheck = false;
+  jailbreak = true;
   meta = {
     description = "Jenkins API interface";
     license = self.stdenv.lib.licenses.bsd3;

From cea0460d41cd0719b0d82577f8fd6637415ff4ad Mon Sep 17 00:00:00 2001
From: Shea Levy <shea@shealevy.com>
Date: Mon, 7 Apr 2014 16:37:02 -0400
Subject: [PATCH 174/567] Missed file

---
 .../haskell/libjenkins/new-conduit.patch      | 23 +++++++++++++++++++
 1 file changed, 23 insertions(+)
 create mode 100644 pkgs/development/libraries/haskell/libjenkins/new-conduit.patch

diff --git a/pkgs/development/libraries/haskell/libjenkins/new-conduit.patch b/pkgs/development/libraries/haskell/libjenkins/new-conduit.patch
new file mode 100644
index 000000000000..fda68fde5f92
--- /dev/null
+++ b/pkgs/development/libraries/haskell/libjenkins/new-conduit.patch
@@ -0,0 +1,23 @@
+diff -Naur libjenkins-0.4.2.0-orig/libjenkins.cabal libjenkins-0.4.2.0/libjenkins.cabal
+--- libjenkins-0.4.2.0-orig/libjenkins.cabal	2014-02-17 13:11:22.000000000 -0500
++++ libjenkins-0.4.2.0/libjenkins.cabal	2014-04-07 11:40:30.046473593 -0400
+@@ -52,6 +52,7 @@
+     , text          >= 0.11
+     , transformers  >= 0.3
+     , xml-conduit   >= 1.1
++    , resourcet
+ 
+ test-suite doctest
+   default-language:  Haskell2010
+diff -Naur libjenkins-0.4.2.0-orig/src/Jenkins/Rest/Internal.hs libjenkins-0.4.2.0/src/Jenkins/Rest/Internal.hs
+--- libjenkins-0.4.2.0-orig/src/Jenkins/Rest/Internal.hs	2014-02-17 13:11:22.000000000 -0500
++++ libjenkins-0.4.2.0/src/Jenkins/Rest/Internal.hs	2014-04-07 11:40:02.221415450 -0400
+@@ -22,7 +22,7 @@
+ import           Control.Monad.Trans.Reader (ReaderT, runReaderT, ask, local)
+ import           Control.Monad.Trans.Maybe (MaybeT(..), mapMaybeT)
+ import           Data.ByteString.Lazy (ByteString)
+-import           Data.Conduit (ResourceT)
++import           Control.Monad.Trans.Resource (ResourceT)
+ import           Data.Data (Data, Typeable)
+ import           Data.Text (Text)
+ import qualified Data.Text.Encoding as Text

From ff836a6f15dbd4e53d44f436eb25aab87287127e Mon Sep 17 00:00:00 2001
From: Jaka Hudoklin <jakahudoklin@gmail.com>
Date: Tue, 8 Apr 2014 00:18:46 +0200
Subject: [PATCH 175/567] pythonPackages: ipdb, use ipythonLight by default

---
 pkgs/top-level/python-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 5a4be8d1704b..f5af0f6c65b2 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -3370,7 +3370,7 @@ rec {
       url = "http://pypi.python.org/packages/source/i/ipdb/ipdb-0.7.tar.gz";
       md5 = "d879f9b2b0f26e0e999809585dcaec61";
     };
-    propagatedBuildInputs = [ pythonPackages.ipython ];
+    propagatedBuildInputs = [ pythonPackages.ipythonLight ];
   };
 
   ipdbplugin = buildPythonPackage {
@@ -3379,7 +3379,7 @@ rec {
       url = "https://pypi.python.org/packages/source/i/ipdbplugin/ipdbplugin-1.4.tar.gz";
       md5 = "f9a41512e5d901ea0fa199c3f648bba7";
     };
-    propagatedBuildInputs = [ pythonPackages.nose pythonPackages.ipython ];
+    propagatedBuildInputs = [ pythonPackages.nose pythonPackages.ipythonLight ];
   };
 
 

From 593c633aa8fb12cc23cdfe1a750ef9976601a81b Mon Sep 17 00:00:00 2001
From: Mathijs Kwik <mathijs@bluescreen303.nl>
Date: Sun, 6 Apr 2014 20:51:32 +0200
Subject: [PATCH 176/567] emacs-idris-mode: upgrade to support idris 0.9.12

---
 pkgs/applications/editors/emacs-modes/idris/default.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/applications/editors/emacs-modes/idris/default.nix b/pkgs/applications/editors/emacs-modes/idris/default.nix
index 289c8868876d..8671a926f677 100644
--- a/pkgs/applications/editors/emacs-modes/idris/default.nix
+++ b/pkgs/applications/editors/emacs-modes/idris/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchgit, emacs }:
 
 stdenv.mkDerivation rec {
-  name = "idris-mode-20140223";
+  name = "idris-mode-20140405";
 
   src = fetchgit {
     url = https://github.com/idris-hackers/idris-mode.git;
-    rev = "486470533e74c55192e92a1afa050475915ee1e7";
-    sha256 = "ff2e6bd8fbf421e8f2db0789d2ff56c5103775b911b99bab64e4652d332bad43";
+    rev = "2e2d18fb757da4b42940ebe2a57d7a117175489f";
+    sha256 = "d4b52c6c43c038c94a7464cd9c849cd40c01696c440da8b057c00a9be22f9ac0";
   };
 
   buildInputs = [ emacs ];

From a4ebaa61e426b3a9c2625be37cfb4828a64a30d6 Mon Sep 17 00:00:00 2001
From: Rob Vermaas <rob.vermaas@gmail.com>
Date: Tue, 8 Apr 2014 09:27:09 +0200
Subject: [PATCH 177/567] Update dd-agent to 4.2.0

---
 pkgs/tools/networking/dd-agent/default.nix | 11 ++++++-----
 pkgs/top-level/all-packages.nix            |  2 +-
 2 files changed, 7 insertions(+), 6 deletions(-)

diff --git a/pkgs/tools/networking/dd-agent/default.nix b/pkgs/tools/networking/dd-agent/default.nix
index d9fa49320a5a..1e0f26cc92cd 100644
--- a/pkgs/tools/networking/dd-agent/default.nix
+++ b/pkgs/tools/networking/dd-agent/default.nix
@@ -1,16 +1,16 @@
-{ stdenv, fetchurl, python, sysstat, unzip }:
+{ stdenv, fetchurl, python, sysstat, unzip, tornado, makeWrapper }:
 
 stdenv.mkDerivation rec {
-    version = "4.0.1";
+    version = "4.2.0";
     name = "dd-agent-${version}";
 
     src = fetchurl {
       url = "https://github.com/DataDog/dd-agent/archive/${version}.zip";
-      sha256 = "0gybdbjkj7qwnzic03xkypagb30zhm22gp3nkwrdhi8fdmwz3nm1";
+      sha256 = "0lp3h3flb50i64kgkj9kyyf3p1xm0nipxi22w5pmhb71l678d216";
     };
 
-    buildInputs = [ python unzip ];
-    propagatedBuildInputs = [ python ];
+    buildInputs = [ python unzip makeWrapper ];
+    propagatedBuildInputs = [ python tornado ];
 
     postUnpack = "export sourceRoot=$sourceRoot/packaging";
 
@@ -21,6 +21,7 @@ stdenv.mkDerivation rec {
     postInstall = ''
       mv $out/usr/* $out
       rmdir $out/usr
+      wrapProgram $out/bin/dd-forwarder --prefix PYTHONPATH : $PYTHONPATH
     '';
 
     meta = {
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 046eead410cd..ed5a3d3ab731 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -7835,7 +7835,7 @@ let
     inherit (gnome) GConf libglade;
   };
 
-  "dd-agent" = callPackage ../tools/networking/dd-agent { };
+  "dd-agent" = callPackage ../tools/networking/dd-agent { inherit (pythonPackages) tornado; };
 
   dia = callPackage ../applications/graphics/dia {
     inherit (pkgs.gnome) libart_lgpl libgnomeui;

From 694cc6172a4c717d03ec80c2081c2a3f329484d5 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Tue, 8 Apr 2014 09:42:05 +0200
Subject: [PATCH 178/567] Enable the firewall by default

Fixes #2135.
---
 nixos/doc/manual/release-notes.xml             | 18 ++++++++++++++----
 nixos/modules/services/networking/firewall.nix |  2 +-
 2 files changed, 15 insertions(+), 5 deletions(-)

diff --git a/nixos/doc/manual/release-notes.xml b/nixos/doc/manual/release-notes.xml
index 8899cbb21498..68feb80e090b 100644
--- a/nixos/doc/manual/release-notes.xml
+++ b/nixos/doc/manual/release-notes.xml
@@ -21,10 +21,6 @@ enhancements are the following:
   <listitem><para>NixOS is now based on Glibc 2.18 and GCC
   4.8.</para></listitem>
 
-  <listitem><para>The mysql55 service has been merged into the
-  mysql service, which no longer sets a default for the 'package
-  option.</para></listitem>
-
 </itemizedlist>
 
 </para>
@@ -34,10 +30,24 @@ following incompatible changes:
 
 <itemizedlist>
 
+  <listitem><para>The firewall is now enabled by default. If you don’t
+  want this, you need to disable it explicitly:
+
+<programlisting>
+networking.firewall.enable = false;
+</programlisting>
+
+  </para></listitem>
+
   <listitem><para>The option
   <option>boot.loader.grub.memtest86</option> has been renamed to
   <option>boot.loader.grub.memtest86.enable</option>.</para></listitem>
 
+  <listitem><para>The <literal>mysql55</literal> service has been
+  merged into the <literal>mysql</literal> service, which no longer
+  sets a default for the option
+  <option>services.mysql.package</option>.</para></listitem>
+
 </itemizedlist>
 
 </para>
diff --git a/nixos/modules/services/networking/firewall.nix b/nixos/modules/services/networking/firewall.nix
index 07e05fa6d051..62d92ba50e18 100644
--- a/nixos/modules/services/networking/firewall.nix
+++ b/nixos/modules/services/networking/firewall.nix
@@ -54,7 +54,7 @@ in
 
     networking.firewall.enable = mkOption {
       type = types.bool;
-      default = false;
+      default = true;
       description =
         ''
           Whether to enable the firewall.  This is a simple stateful

From 3a9a8b58adaf4755cbbe80a4a485e238216e14bd Mon Sep 17 00:00:00 2001
From: Oliver Charles <ollie@ocharles.org.uk>
Date: Tue, 8 Apr 2014 11:35:18 +0100
Subject: [PATCH 179/567] haskellPackages.httpClientMultipart: Do not build
 haddocks

This package now has no modules, so there is no documentation to build.
The library itself is deprecated, and should probably be removed from
nixpkgs soon.
---
 .../libraries/haskell/http-client-multipart/default.nix         | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/pkgs/development/libraries/haskell/http-client-multipart/default.nix b/pkgs/development/libraries/haskell/http-client-multipart/default.nix
index 3cf09f583a7a..4413bf54d705 100644
--- a/pkgs/development/libraries/haskell/http-client-multipart/default.nix
+++ b/pkgs/development/libraries/haskell/http-client-multipart/default.nix
@@ -11,4 +11,6 @@ cabal.mkDerivation (self: {
     license = self.stdenv.lib.licenses.mit;
     platforms = self.ghc.meta.platforms;
   };
+  # This library now contains now modules as it is deprecated.
+  noHaddock = true;
 })

From 604306c34a43d536ce7c51abcad1a73aa41ec2a1 Mon Sep 17 00:00:00 2001
From: Rickard Nilsson <rickynils@gmail.com>
Date: Tue, 8 Apr 2014 12:33:30 +0200
Subject: [PATCH 180/567] Don't add users if createUser is false

---
 nixos/modules/config/users-groups.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/nixos/modules/config/users-groups.nix b/nixos/modules/config/users-groups.nix
index c5d44223ecf8..061f51ccda7b 100644
--- a/nixos/modules/config/users-groups.nix
+++ b/nixos/modules/config/users-groups.nix
@@ -7,7 +7,7 @@ let
   ids = config.ids;
   cfg = config.users;
 
-  nonUidUsers = filterAttrs (n: u: u.uid == null) cfg.extraUsers;
+  nonUidUsers = filterAttrs (n: u: u.createUser && u.uid == null) cfg.extraUsers;
   nonGidGroups = filterAttrs (n: g: g.gid == null) cfg.extraGroups;
 
   passwordDescription = ''

From 1e7c38920d2cc5c3cfcc3b1c66564bece73188d9 Mon Sep 17 00:00:00 2001
From: Oliver Charles <ollie@ocharles.org.uk>
Date: Tue, 8 Apr 2014 11:44:41 +0100
Subject: [PATCH 181/567] Remove haskellPackages.aesonLens

This doesn't build, has no reverse dependencies, and the lens library
itself now provides this functionality.
---
 .../libraries/haskell/aeson-lens/default.nix      | 15 ---------------
 pkgs/top-level/haskell-packages.nix               |  2 --
 2 files changed, 17 deletions(-)
 delete mode 100644 pkgs/development/libraries/haskell/aeson-lens/default.nix

diff --git a/pkgs/development/libraries/haskell/aeson-lens/default.nix b/pkgs/development/libraries/haskell/aeson-lens/default.nix
deleted file mode 100644
index f2d1915e122c..000000000000
--- a/pkgs/development/libraries/haskell/aeson-lens/default.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ cabal, aeson, doctest, lens, text, unorderedContainers, vector }:
-
-cabal.mkDerivation (self: {
-  pname = "aeson-lens";
-  version = "0.5.0.0";
-  sha256 = "1pr8cxkx41wi7095cp1gpqrwadwx6azcrdi1kr1ik0fs6606dkks";
-  buildDepends = [ aeson lens text unorderedContainers vector ];
-  testDepends = [ doctest ];
-  meta = {
-    description = "Lens of Aeson";
-    license = self.stdenv.lib.licenses.bsd3;
-    platforms = self.ghc.meta.platforms;
-    maintainers = [ self.stdenv.lib.maintainers.ocharles ];
-  };
-})
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index ca689949b39a..89a51db5f9bd 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -532,8 +532,6 @@ let result = let callPackage = x : y : modifyPrio (newScope result.finalReturn x
     blazeBuilder = if (pkgs.stdenv.lib.versionOlder ghc.version "7.6") then self.blazeBuilder else null;
   };
 
-  aesonLens = callPackage ../development/libraries/haskell/aeson-lens {};
-
   aesonPretty = callPackage ../development/libraries/haskell/aeson-pretty {};
 
   alternativeIo = callPackage ../development/libraries/haskell/alternative-io {};

From d9332659d2ef276c40487c7b5c1609d0543d69d8 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Tue, 8 Apr 2014 12:48:00 +0200
Subject: [PATCH 182/567] haskell-Elm: require a recent version of binary

---
 pkgs/top-level/haskell-packages.nix | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index ca689949b39a..e49ddbfc1d5f 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -1035,7 +1035,13 @@ let result = let callPackage = x : y : modifyPrio (newScope result.finalReturn x
 
   elerea = callPackage ../development/libraries/haskell/elerea {};
 
-  Elm = callPackage ../development/compilers/elm/elm.nix {};
+  Elm = callPackage ../development/compilers/elm/elm.nix {
+    binary = self.binary_0_7_1_0;
+    pandoc = self.pandoc.override {
+      binary = self.binary_0_7_1_0;
+      zipArchive = self.zipArchive.override { binary = self.binary_0_7_1_0; };
+    };
+  };
 
   elmServer = callPackage ../development/compilers/elm/elm-server.nix {};
 

From 1b1225fb0b0a1672d7ae72b4b09cbfd98fa7459b Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Tue, 8 Apr 2014 11:52:54 +0200
Subject: [PATCH 183/567] flymake-cursor: remove redundant 'meta.platforms =
 stdenv.lib.platforms.all' setting

---
 .../applications/editors/emacs-modes/flymake-cursor/default.nix | 2 --
 1 file changed, 2 deletions(-)

diff --git a/pkgs/applications/editors/emacs-modes/flymake-cursor/default.nix b/pkgs/applications/editors/emacs-modes/flymake-cursor/default.nix
index 4b2692a5e22a..b47ea0fd866f 100644
--- a/pkgs/applications/editors/emacs-modes/flymake-cursor/default.nix
+++ b/pkgs/applications/editors/emacs-modes/flymake-cursor/default.nix
@@ -26,7 +26,5 @@ stdenv.mkDerivation rec {
     description = "Displays flymake error msg in minibuffer after delay";
     homepage = http://www.emacswiki.org/emacs/flymake-cursor.el;
     license = stdenv.lib.licenses.publicDomain;
-
-    platforms = stdenv.lib.platforms.all;
   };
 }

From 79f19f687cf5b1406325fa34ad0d8fa0e4b3803e Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Tue, 8 Apr 2014 11:52:11 +0200
Subject: [PATCH 184/567] flymake-cursor: the sha256 hash of the file has
 changed

No change was documented on the emacs wiki. Not sure what happened. :-(
---
 .../applications/editors/emacs-modes/flymake-cursor/default.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pkgs/applications/editors/emacs-modes/flymake-cursor/default.nix b/pkgs/applications/editors/emacs-modes/flymake-cursor/default.nix
index b47ea0fd866f..eae338d241de 100644
--- a/pkgs/applications/editors/emacs-modes/flymake-cursor/default.nix
+++ b/pkgs/applications/editors/emacs-modes/flymake-cursor/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "http://www.emacswiki.org/emacs/download/flymake-cursor.el";
-    sha256 = "1qqppd1786w8pl1avjb01n23lwihb7m0hr23abjklsxz03gmp4qz";
+    sha256 = "10cpzrd588ya52blghxss5zkn6x8hc7bx1h0qbcdlybbmkjgpkxr";
   };
 
   phases = [ "buildPhase" "installPhase"];

From 7f90e454fb33fce76c721945f8636517c3443ea5 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Tue, 8 Apr 2014 11:51:28 +0200
Subject: [PATCH 185/567] ikiwiki: update to version 3.20140227

---
 pkgs/applications/misc/ikiwiki/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/applications/misc/ikiwiki/default.nix b/pkgs/applications/misc/ikiwiki/default.nix
index c0dce81c8039..b347f971ee0f 100644
--- a/pkgs/applications/misc/ikiwiki/default.nix
+++ b/pkgs/applications/misc/ikiwiki/default.nix
@@ -23,7 +23,7 @@ assert mercurialSupport -> (mercurial != null);
 
 let
   name = "ikiwiki";
-  version = "3.20140125";
+  version = "3.20140227";
 
   lib = stdenv.lib;
 in
@@ -32,7 +32,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "http://ftp.de.debian.org/debian/pool/main/i/ikiwiki/${name}_${version}.tar.gz";
-    sha256 = "06r95xhm8pnvswgmkf3j7h4n6b1nmk0v0znmnzblkdx7xh12m0hd";
+    sha256 = "1bbpqs4c1la1yqcxcxj3xip3wadjnjq0wawv19j6d6baymm66cr3";
   };
 
   buildInputs = [ perl TextMarkdown URI HTMLParser HTMLScrubber HTMLTemplate

From d9c8db4a20a86d66ab35f5a7f1a11db54973173b Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Tue, 8 Apr 2014 13:17:40 +0200
Subject: [PATCH 186/567] Elm: fix build by ignoring the build instructions
 provided by upstream

According to <https://github.com/elm-lang/Elm/issues/384>, Elm's release
archive comes with a Setup.hs that cannot compile an Elm release. Duh!

Replacing the custom Setup.hs file with a dummy version fixes this
issue.

Close <https://github.com/NixOS/nixpkgs/issues/2089>.
---
 pkgs/development/compilers/elm/elm.nix | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/pkgs/development/compilers/elm/elm.nix b/pkgs/development/compilers/elm/elm.nix
index 5a9ba8f63792..bc9f73b28495 100644
--- a/pkgs/development/compilers/elm/elm.nix
+++ b/pkgs/development/compilers/elm/elm.nix
@@ -23,6 +23,10 @@ cabal.mkDerivation (self: {
     transformers unionFind unorderedContainers
   ];
   doCheck = false;
+  preConfigure = ''
+    rm -f Setup.hs
+    echo -e "import Distribution.Simple\nmain=defaultMain\n" > Setup.hs
+  '';
   meta = {
     homepage = "http://elm-lang.org";
     description = "The Elm language module";

From ccd104940c8b03dc48b665985d633b30ccb85cca Mon Sep 17 00:00:00 2001
From: Austin Seipp <aseipp@pobox.com>
Date: Tue, 8 Apr 2014 06:22:44 -0500
Subject: [PATCH 187/567] spiped: add patch to fix linux build

The build fails with permission denied on /dev/stderr, which I imagine
is due to the fact it's in a chroot build. So disable all that for now.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
---
 pkgs/tools/networking/spiped/default.nix      |  2 ++
 .../networking/spiped/no-dev-stderr.patch     | 26 +++++++++++++++++++
 2 files changed, 28 insertions(+)
 create mode 100644 pkgs/tools/networking/spiped/no-dev-stderr.patch

diff --git a/pkgs/tools/networking/spiped/default.nix b/pkgs/tools/networking/spiped/default.nix
index 1dd8804fb3d8..7f17c981b93c 100644
--- a/pkgs/tools/networking/spiped/default.nix
+++ b/pkgs/tools/networking/spiped/default.nix
@@ -10,6 +10,8 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [ openssl ];
+  patches = [ ./no-dev-stderr.patch ];
+
   installPhase = ''
     mkdir -p $out/bin $out/share/man/man1
     make install BINDIR=$out/bin MAN1DIR=$out/share/man/man1
diff --git a/pkgs/tools/networking/spiped/no-dev-stderr.patch b/pkgs/tools/networking/spiped/no-dev-stderr.patch
new file mode 100644
index 000000000000..742a2e483d4c
--- /dev/null
+++ b/pkgs/tools/networking/spiped/no-dev-stderr.patch
@@ -0,0 +1,26 @@
+From 7a2bbb0d0098d7a33ad3794d0199879ad50e755a Mon Sep 17 00:00:00 2001
+From: Austin Seipp <aseipp@pobox.com>
+Date: Tue, 8 Apr 2014 06:21:41 -0500
+Subject: [PATCH] Remove use of /dev/stderr
+
+Signed-off-by: Austin Seipp <aseipp@pobox.com>
+---
+ POSIX/posix-l.sh | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/POSIX/posix-l.sh b/POSIX/posix-l.sh
+index b3f0e31..71d6fe8 100755
+--- a/POSIX/posix-l.sh
++++ b/POSIX/posix-l.sh
+@@ -7,8 +7,6 @@ for LIB in rt xnet; do
+ 		fi
+ 		printf "%s" "-l${LIB}";
+ 		FIRST=NO;
+-	else
+-		echo "WARNING: POSIX violation: make's CC doesn't understand -l${LIB}" >/dev/stderr
+ 	fi
+ 	rm -f a.out
+ done
+-- 
+1.8.3.2
+

From bab9a16e50918166e518af60b505f9608f0a7719 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:49:37 +0200
Subject: [PATCH 188/567] perlPackages.version: update from 0.9902 to 0.9908

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 6ac7f76e3c51..1edd5dd6c05f 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -9321,10 +9321,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   version = buildPerlPackage rec {
-    name = "version-0.9902";
+    name = "version-0.9908";
     src = fetchurl {
-      url = "mirror://cpan/modules/by-module/version/${name}.tar.gz";
-      sha256 = "17fdj3hxks33plapj3hinjgmyblnh302z52rq4b9spnz22q5vhww";
+      url = "mirror://cpan/authors/id/J/JP/JPEACOCK/${name}.tar.gz";
+      sha256 = "0nq84i1isk01ikwjxxynqyzz4g4g6hcbjq8l426n0hr42znlfmn4";
     };
   };
 

From 4594bd017b9a9afad3194ccbf9cdaeac6ae342a6 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:49:42 +0200
Subject: [PATCH 189/567] perlPackages.DataSerializer: update from 0.59 to 0.60

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 1edd5dd6c05f..ae0520a29b02 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1910,10 +1910,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   DataSerializer = buildPerlPackage {
-    name = "Data-Serializer-0.59";
+    name = "Data-Serializer-0.60";
     src = fetchurl {
-      url = mirror://cpan/authors/id/N/NE/NEELY/Data-Serializer-0.59.tar.gz;
-      sha256 = "1mydpbacrkirafcjxcg1c0gnls1kxiv0qvdd4q2yd6vsyay0ayqr";
+      url = mirror://cpan/authors/id/N/NE/NEELY/Data-Serializer-0.60.tar.gz;
+      sha256 = "0ca4s811l7f2bqkx7vnyxbpp4f0qska89g2pvsfb3k0bhhbk0jdk";
     };
     meta = {
       description = "Modules that serialize data structures";

From f9e3f4f4af4cef32373d87b7f76f0fc719374e39 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:49:47 +0200
Subject: [PATCH 190/567] perlPackages.DataVisitor: update from 0.28 to 0.30

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index ae0520a29b02..c1e29964feaf 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1971,10 +1971,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   DataVisitor = buildPerlPackage rec {
-    name = "Data-Visitor-0.28";
+    name = "Data-Visitor-0.30";
     src = fetchurl {
-      url = "mirror://cpan/modules/by-module/Data/${name}.tar.gz";
-      sha256 = "1998syyprmqnhpgznmk7ia3zd8saw34q7pbaprxarcz7a3bncyjc";
+      url = "mirror://cpan/authors/id/D/DO/DOY/${name}.tar.gz";
+      sha256 = "0m7d1505af9z2hj5aw020grcmjjlvnkjpvjam457d7k5qfy4m8lf";
     };
     buildInputs = [ TestRequires ];
     propagatedBuildInputs =

From ebb5c742d71a8837092dd0b0ab7849bab4cbf264 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:50:02 +0200
Subject: [PATCH 191/567] perlPackages.DateManip: update from 6.42 to 6.43

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index c1e29964feaf..b67c441c971d 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1995,10 +1995,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   DateManip = buildPerlPackage {
-    name = "Date-Manip-6.42";
+    name = "Date-Manip-6.43";
     src = fetchurl {
-      url = mirror://cpan/authors/id/S/SB/SBECK/Date-Manip-6.42.tar.gz;
-      sha256 = "18zkdvam3qddv810hgzszk2zxra14whl0fs03ba79babqhbpbzna";
+      url = mirror://cpan/authors/id/S/SB/SBECK/Date-Manip-6.43.tar.gz;
+      sha256 = "0jwg87j31gw2fn8csm1zyfqxd0dxh8sbv940ma9idg6g7856zfrz";
     };
     propagatedBuildInputs = [ TestInter ];
     meta = {

From de72951544f6fba2ad66ea815de246e9bc97eefe Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:50:07 +0200
Subject: [PATCH 192/567] perlPackages.DateTime: update from 1.07 to 1.08

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index b67c441c971d..848fcace420b 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -2018,10 +2018,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   DateTime = buildPerlModule {
-    name = "DateTime-1.07";
+    name = "DateTime-1.08";
     src = fetchurl {
-      url = mirror://cpan/authors/id/D/DR/DROLSKY/DateTime-1.07.tar.gz;
-      sha256 = "1cm4zsgzz4phigak0nb48l661vkqhz93kfbb9jd83d1hq74myq31";
+      url = mirror://cpan/authors/id/D/DR/DROLSKY/DateTime-1.08.tar.gz;
+      sha256 = "0ijhb1mqrfp1pbj4r3wkpp0hdj3zg355skxdn6dsiv439fp65asf";
     };
     buildInputs = [ TestFatal ];
     propagatedBuildInputs = [ DateTimeLocale DateTimeTimeZone ParamsValidate TryTiny ];

From 55ca4f013513dfb234a69b0e663107d6a4b60ca2 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:50:11 +0200
Subject: [PATCH 193/567] perlPackages.DateTimeSet: update from 0.31 to 0.3400

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 848fcace420b..215f334d18fb 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -2177,10 +2177,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   DateTimeSet = buildPerlPackage {
-    name = "DateTime-Set-0.31";
+    name = "DateTime-Set-0.3400";
     src = fetchurl {
-      url = mirror://cpan/authors/id/F/FG/FGLOCK/DateTime-Set-0.31.tar.gz;
-      sha256 = "499b59e42a1129bf10fd269eb7542d337a29fbbcbf08ef8313fd465d3ae5df02";
+      url = mirror://cpan/authors/id/F/FG/FGLOCK/DateTime-Set-0.3400.tar.gz;
+      sha256 = "1b27699zkj68w5ll9chjhs52vmf39f9via6x5r5844as30qh9zxb";
     };
     propagatedBuildInputs = [ DateTime SetInfinite ];
     meta = {

From 5aeb9b3c61f90db1b1bf9b7644a3c93fb088815e Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:50:15 +0200
Subject: [PATCH 194/567] perlPackages.DebugShowStuff: update from 1.14 to 1.16

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 215f334d18fb..e73a44015ab6 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -2218,10 +2218,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   DebugShowStuff = buildPerlPackage {
-    name = "Debug-ShowStuff-1.14";
+    name = "Debug-ShowStuff-1.16";
     src = fetchurl {
-      url = mirror://cpan/authors/id/M/MI/MIKO/Debug-ShowStuff-1.14.tar.gz;
-      sha256 = "023c6f7y93k9qxxfa2fsvc5jkbv3rh6i3nw6zvxa5cg57xfypd7h";
+      url = mirror://cpan/authors/id/M/MI/MIKO/Debug-ShowStuff-1.16.tar.gz;
+      sha256 = "1drcrnji3yrd0s3xb69bxnqa51s19c13w68vhvjad3nvswn5vpd4";
     };
     propagatedBuildInputs = [ ClassISA DevelStackTrace StringUtil TermReadKey TextTabularDisplay TieIxHash ];
     meta = {

From 1531d1751281f9eafcbac967e88cb00e5f08e376 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:50:20 +0200
Subject: [PATCH 195/567] perlPackages.DevelChecklib: update from 0.98 to 1.01

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index e73a44015ab6..941f358539ed 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -2244,10 +2244,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   DevelChecklib = buildPerlPackage rec {
-    name = "Devel-CheckLib-0.98";
+    name = "Devel-CheckLib-1.01";
     src = fetchurl {
       url = "mirror://cpan/authors/id/M/MA/MATTN/${name}.tar.gz";
-      sha256 = "2b6b62665403bcdce67b53eb3bee7b57b6576026640c01aa57c7126e32ce20da";
+      sha256 = "14q9mibxdgqkia73426q6xw6km5bf1hhkgg2nf7x4zhnlksahbwr";
     };
     propagatedBuildInputs = [ IOCaptureOutput ];
   };

From 697b169bd4c4fff9f33147cef46d8ac85704bbf6 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:50:23 +0200
Subject: [PATCH 196/567] perlPackages.DevelGlobalDestruction: update from 0.09
 to 0.12

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 941f358539ed..2232dc5ea820 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -2465,10 +2465,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   DevelGlobalDestruction = buildPerlPackage {
-    name = "Devel-GlobalDestruction-0.09";
+    name = "Devel-GlobalDestruction-0.12";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RI/RIBASUSHI/Devel-GlobalDestruction-0.09.tar.gz;
-      sha256 = "1hvrv88167rc2chqgxpd6q0ir5fki1q6r3w11v3lxfs118fdi65m";
+      url = mirror://cpan/authors/id/H/HA/HAARG/Devel-GlobalDestruction-0.12.tar.gz;
+      sha256 = "0w4a4y9w4yldxlhks95nx8qaivpbzc40b1p8xg3y8467ixkbg9cq";
     };
     propagatedBuildInputs = [ SubExporterProgressive ];
     meta = {

From 22e43904c393f368d225415bf109d1871f210d32 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:50:29 +0200
Subject: [PATCH 197/567] perlPackages.DevelHide: update from 0.0008 to 0.0009

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 2232dc5ea820..a3936f9e7adc 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -2478,10 +2478,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   DevelHide = buildPerlPackage rec {
-    name = "Devel-Hide-0.0008";
+    name = "Devel-Hide-0.0009";
     src = fetchurl {
       url = "mirror://cpan/authors/id/F/FE/FERREIRA/${name}.tar.gz";
-      sha256 = "14hwwirpc9cnwn50rshb8hb778mia4ni75jv2dih8l9i033m4i26";
+      sha256 = "1phnzbw58v6551nhv6sg86m72nx9w5j4msh1hg4jvkakkq5w9pki";
     };
   };
 

From a0a50476c01798d34cffa8096fbb9d04188619b0 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:50:33 +0200
Subject: [PATCH 198/567] perlPackages.DevelStackTrace: update from 1.30 to
 1.31

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index a3936f9e7adc..cc2cb302cbe6 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -2499,10 +2499,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   DevelStackTrace = buildPerlPackage {
-    name = "Devel-StackTrace-1.30";
+    name = "Devel-StackTrace-1.31";
     src = fetchurl {
-      url = mirror://cpan/authors/id/D/DR/DROLSKY/Devel-StackTrace-1.30.tar.gz;
-      sha256 = "1m13wzg4pmbc0f1w2rn9ybqwkqg66zw9zv34ayk7gr3349v7kbzl";
+      url = mirror://cpan/authors/id/D/DR/DROLSKY/Devel-StackTrace-1.31.tar.gz;
+      sha256 = "0djvqfbq9ag1bpw0bcksidfy13n91xbl53py3d7w0y2323hjc957";
     };
     meta = {
       homepage = http://search.cpan.org/perldoc?CPAN::Meta::Spec;

From b053b81d4ce934e8060b37ef614ab92f950c24b7 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:50:37 +0200
Subject: [PATCH 199/567] perlPackages.DevelStackTraceAsHTML: update from 0.11
 to 0.14

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index cc2cb302cbe6..bcc5891a478d 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -2512,10 +2512,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   DevelStackTraceAsHTML = buildPerlPackage {
-    name = "Devel-StackTrace-AsHTML-0.11";
+    name = "Devel-StackTrace-AsHTML-0.14";
     src = fetchurl {
-      url = mirror://cpan/authors/id/M/MI/MIYAGAWA/Devel-StackTrace-AsHTML-0.11.tar.gz;
-      sha256 = "0y0r42gszp3bxbs9j2nn3xgs8ij1cnadrywwwdc6r0y8m0siyapg";
+      url = mirror://cpan/authors/id/M/MI/MIYAGAWA/Devel-StackTrace-AsHTML-0.14.tar.gz;
+      sha256 = "0yl296y0qfwybwjgqjzd4j2w2bj5a2nz342qqgxchnf5bqynl1c9";
     };
     propagatedBuildInputs = [ DevelStackTrace ];
     meta = {

From b8b23dd8439d578d06484e79b23224db2677c98d Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:50:40 +0200
Subject: [PATCH 200/567] perlPackages.DigestMD4: update from 1.5 to 1.9

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index bcc5891a478d..01450b862456 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -2570,10 +2570,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   DigestMD4 = buildPerlPackage rec {
-    name = "Digest-MD4-1.5";
+    name = "Digest-MD4-1.9";
     src = fetchurl {
       url = "mirror://cpan/authors/id/M/MI/MIKEM/DigestMD4/${name}.tar.gz";
-      sha256 = "c7d7a32f5c2710c929b5688a7b057ec8ddbc51cf278f623e771fc02dcabd6a1f";
+      sha256 = "19ma1hmvgiznq95ngzvm6v4dfxc9zmi69k8iyfcg6w14lfxi0lb6";
     };
   };
 

From adbe515602b9c863d21235296c693ea0601c3460 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:50:44 +0200
Subject: [PATCH 201/567] perlPackages.DistZilla: update from 4.300036 to
 4.300039

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 01450b862456..50923cd19bff 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -2621,10 +2621,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   DistZilla = buildPerlPackage {
-    name = "Dist-Zilla-4.300036";
+    name = "Dist-Zilla-4.300039";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RJ/RJBS/Dist-Zilla-4.300036.tar.gz;
-      sha256 = "d78c1425d51571d9bc61ed3b20c5aaec1eb59e756ceda3ac40ed727e6c93bf21";
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Dist-Zilla-4.300039.tar.gz;
+      sha256 = "10cighwsqp53kbk2gwlnl9m18sbs7ijr2v37vwca9qxbscy2yr21";
     };
     buildInputs = [ FileShareDirInstall SoftwareLicense TestFatal TestFileShareDir TestScript ];
     propagatedBuildInputs = [ AppCmd CPANUploader ClassLoad ConfigINI ConfigMVP ConfigMVPReaderINI DataSection DateTime FileCopyRecursive FileFindRule FileHomeDir FileShareDir FileShareDirInstall Filepushd HashMergeSimple JSON ListAllUtils ListMoreUtils LogDispatchouli Moose MooseAutobox MooseXLazyRequire MooseXRoleParameterized MooseXSetOnce MooseXTypes MooseXTypesPathClass MooseXTypesPerl PPI ParamsUtil PathClass PerlPrereqScanner PerlVersion PodEventual SoftwareLicense StringFormatter StringRewritePrefix SubExporter SubExporterForMethods TermReadKey TestDeep TextGlob TextTemplate TryTiny YAMLTiny autobox namespaceautoclean CPANMetaRequirements ];

From c07739c247b794e85d9db0f65c091e211f9cad0d Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:50:48 +0200
Subject: [PATCH 202/567] perlPackages.DistZillaPluginBundleTestingMania:
 update from 0.20 to 0.21

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 50923cd19bff..373c193b6788 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -2637,10 +2637,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   DistZillaPluginBundleTestingMania = buildPerlPackage {
-    name = "Dist-Zilla-PluginBundle-TestingMania-0.20";
+    name = "Dist-Zilla-PluginBundle-TestingMania-0.21";
     src = fetchurl {
-      url = mirror://cpan/authors/id/D/DO/DOHERTY/Dist-Zilla-PluginBundle-TestingMania-0.20.tar.gz;
-      sha256 = "073e17a98b0f88a1b60ce45a325d7447a19db394fcc6f01472bacb1956106da8";
+      url = mirror://cpan/authors/id/D/DO/DOHERTY/Dist-Zilla-PluginBundle-TestingMania-0.21.tar.gz;
+      sha256 = "1cbq7v799bf93iqp19v1ln6bcf6gvmc0qw3gf4bq445wsm7w62wy";
     };
     buildInputs = [ CaptureTiny DistZilla MooseAutobox perl ];
     propagatedBuildInputs = [ DistZilla DistZillaPluginMojibakeTests DistZillaPluginNoTabsTests DistZillaPluginTestCPANChanges DistZillaPluginTestCPANMetaJSON DistZillaPluginTestCompile DistZillaPluginTestDistManifest DistZillaPluginTestEOL DistZillaPluginTestKwalitee DistZillaPluginTestMinimumVersion DistZillaPluginTestPerlCritic DistZillaPluginTestPodLinkCheck DistZillaPluginTestPortability DistZillaPluginTestSynopsis DistZillaPluginTestUnusedVars DistZillaPluginTestVersion JSONPP ListMoreUtils Moose PodCoverageTrustPod TestCPANMeta TestPerlCritic TestVersion namespaceautoclean ];

From 531c1e65c523b5c855a1178b53241f03a6baea52 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:50:51 +0200
Subject: [PATCH 203/567] perlPackages.DistZillaPluginPodWeaver: update from
 3.101642 to 3.102000

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 373c193b6788..03e2fb7b421b 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -2693,10 +2693,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   DistZillaPluginPodWeaver = buildPerlPackage {
-    name = "Dist-Zilla-Plugin-PodWeaver-3.101642";
+    name = "Dist-Zilla-Plugin-PodWeaver-3.102000";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RJ/RJBS/Dist-Zilla-Plugin-PodWeaver-3.101642.tar.gz;
-      sha256 = "66066a236be7bd0a3e0ae764a4b9ac10408d40693a1c800c5fdd7e03c3542e00";
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Dist-Zilla-Plugin-PodWeaver-3.102000.tar.gz;
+      sha256 = "0xayy50fgfc7wlsnygz28ka2ax9pmr0rn845i8d6p40amrkzzlml";
     };
     buildInputs = [ FileFindRule ];
     propagatedBuildInputs = [ DistZilla ListMoreUtils Moose PPI PodElementalPerlMunger PodWeaver namespaceautoclean ];

From c8e83e488284e3770f7e0b16a62d326e78a8c05d Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:50:55 +0200
Subject: [PATCH 204/567] perlPackages.DistZillaPluginTestEOL: update from 0.07
 to 0.10

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 03e2fb7b421b..d615f3d5d6cf 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -2798,10 +2798,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   DistZillaPluginTestEOL = buildPerlPackage {
-    name = "Dist-Zilla-Plugin-Test-EOL-0.07";
+    name = "Dist-Zilla-Plugin-Test-EOL-0.10";
     src = fetchurl {
-      url = mirror://cpan/authors/id/X/XE/XENO/Dist-Zilla-Plugin-Test-EOL-0.07.tar.gz;
-      sha256 = "c010ef618478e82fbc601abfc241c74fed1fdafe954d8b3ebcb7abe0e09967a8";
+      url = mirror://cpan/authors/id/X/XE/XENO/Dist-Zilla-Plugin-Test-EOL-0.10.tar.gz;
+      sha256 = "1sl7zvjzpwf7wl188a3j13k1qcb63hawx82iy6r3dx2gns8nc0nw";
     };
     buildInputs = [ DistZilla TestScript ];
     propagatedBuildInputs = [ DistZilla Moose TestEOL namespaceautoclean ];

From 293a26e46a2b8cdec16ee13197fb279d34eb4c23 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:50:59 +0200
Subject: [PATCH 205/567] perlPackages.EmailAbstract: update from 3.004 to
 3.007

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index d615f3d5d6cf..c5cb9188a45c 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -2932,10 +2932,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   EmailAbstract = buildPerlPackage {
-    name = "Email-Abstract-3.004";
+    name = "Email-Abstract-3.007";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RJ/RJBS/Email-Abstract-3.004.tar.gz;
-      sha256 = "0fiaagxc2hy5g3qiipv4cspkwbaggdmsxbll1f4jx2qnq5hm668d";
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Email-Abstract-3.007.tar.gz;
+      sha256 = "1a7aynf5jd5lr77x4k51hphnbmxf6p0s2gm1a6fbmxjqlnimm48h";
     };
     propagatedBuildInputs = [ EmailSimple MROCompat ];
     meta = {

From e5e0ba713b40b87161c3894355368bd08aff8a30 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:51:04 +0200
Subject: [PATCH 206/567] perlPackages.EmailAddress: update from 1.897 to 1.901

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index c5cb9188a45c..6aa2040fc157 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -2944,10 +2944,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   EmailAddress = buildPerlPackage {
-    name = "Email-Address-1.897";
+    name = "Email-Address-1.901";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RJ/RJBS/Email-Address-1.897.tar.gz;
-      sha256 = "17v5jvwhkd5clyihwsldnh4k7vpmaisn064s3mkxlr9dnz7nd10r";
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Email-Address-1.901.tar.gz;
+      sha256 = "00svsmv2hk35ybpd7jxcsn7k54i0q9ph5lf8ksv9nkh1abraprkz";
     };
     meta = {
       homepage = http://search.cpan.org/perldoc?CPAN::Meta::Spec;

From 8e5416e01faba60aab90ec67c6a3782dc69528a1 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:51:07 +0200
Subject: [PATCH 207/567] perlPackages.EmailMessageID: update from 1.402 to
 1.404

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 6aa2040fc157..4ce759f4fc5b 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -2969,10 +2969,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   EmailMessageID = buildPerlPackage {
-    name = "Email-MessageID-1.402";
+    name = "Email-MessageID-1.404";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RJ/RJBS/Email-MessageID-1.402.tar.gz;
-      sha256 = "1zzbxdygh992dn9k9jlxjzcmaniy83dqlc8lkas9w9wlhngvwni1";
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Email-MessageID-1.404.tar.gz;
+      sha256 = "0lyq9r3x7cs7cncf0yiazbi7aq4c5d4m3wxwgqdd4r5p9gxdjj4n";
     };
     propagatedBuildInputs = [ EmailAddress ];
     meta = {

From 0e01506bf6e3749b0e03a3ca752452e6a8eb8718 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:51:11 +0200
Subject: [PATCH 208/567] perlPackages.EmailSimple: update from 2.102 to 2.203

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 4ce759f4fc5b..e44ca43a53dd 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -3048,10 +3048,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   EmailSimple = buildPerlPackage {
-    name = "Email-Simple-2.102";
+    name = "Email-Simple-2.203";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RJ/RJBS/Email-Simple-2.102.tar.gz;
-      sha256 = "19da1a06vnixhqfl41mfjrihvvxjgdgkq9bczp8k9mpr29xlbnq4";
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Email-Simple-2.203.tar.gz;
+      sha256 = "0hzbp8ay62d6jwrn4q7hqmhkaigf8lc0plz0g46yhwzp3x9xfa55";
     };
     propagatedBuildInputs = [ EmailDateFormat ];
     meta = {

From d2187ff378e7e822817ece41e30d4a420a1a8c6e Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:51:16 +0200
Subject: [PATCH 209/567] perlPackages.Error: update from 0.17019 to 0.17022

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index e44ca43a53dd..a5245d079e3e 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -3133,10 +3133,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   Error = buildPerlPackage rec {
-    name = "Error-0.17019";
+    name = "Error-0.17022";
     src = fetchurl {
       url = "mirror://cpan/authors/id/S/SH/SHLOMIF/${name}.tar.gz";
-      sha256 = "0m09jwjs2x8j50bh3cg3m2mbxa7qh9i2krgq7z8h1pgl5dscyg2i";
+      sha256 = "1vzpz6syb82ir8svp2wjh95x6lpf01lgkxn2xy60ixrszc24zdya";
     };
   };
 

From 9c90b4faf66ae98beadf1bd33de46e85a514fb42 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:51:19 +0200
Subject: [PATCH 210/567] perlPackages.EvalClosure: update from 0.08 to 0.11

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index a5245d079e3e..0123f31d66ae 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -3141,10 +3141,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   EvalClosure = buildPerlPackage {
-    name = "Eval-Closure-0.08";
+    name = "Eval-Closure-0.11";
     src = fetchurl {
-      url = mirror://cpan/authors/id/D/DO/DOY/Eval-Closure-0.08.tar.gz;
-      sha256 = "01x449ljj8mhr3jgfvnhzn0zz3xc81krslxiq29srqccsqjf933k";
+      url = mirror://cpan/authors/id/D/DO/DOY/Eval-Closure-0.11.tar.gz;
+      sha256 = "1b3rc9smdyyi0janckfiyg1kwph893sqwx7dr5n4mky0x8x3v4m1";
     };
     buildInputs = [ TestFatal TestRequires ];
     propagatedBuildInputs = [ SubExporter TryTiny ];

From b602b53964075610e71d31f8e1c4593395725f57 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:51:26 +0200
Subject: [PATCH 211/567] perlPackages.ExceptionBase: update from 0.25 to
 0.2401

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 0123f31d66ae..10291edea09b 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -3156,10 +3156,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ExceptionBase = buildPerlPackage {
-    name = "Exception-Base-0.25";
+    name = "Exception-Base-0.2401";
     src = fetchurl {
-      url = mirror://cpan/authors/id/D/DE/DEXTER/Exception-Base-0.25.tar.gz;
-      sha256 = "1s2is862xba2yy633wn2nklrya36yrlwxlbpqjrv8m31xj2c8khw";
+      url = mirror://cpan/authors/id/D/DE/DEXTER/Exception-Base-0.2401.tar.gz;
+      sha256 = "0z4pckv3iwzz5s4xrv96kg9620s96kim57nfrxbqhh6pyd5jfazv";
     };
     buildInputs = [ TestUnitLite ];
     meta = {

From 055cf38d5814a7b46225bb631b9735cab2510963 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:51:29 +0200
Subject: [PATCH 212/567] perlPackages.ExporterLite: update from 0.02 to 0.04

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 10291edea09b..c297d6c983ff 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -3223,10 +3223,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ExporterLite = buildPerlPackage {
-    name = "Exporter-Lite-0.02";
+    name = "Exporter-Lite-0.04";
     src = fetchurl {
-      url = mirror://cpan/authors/id/M/MS/MSCHWERN/Exporter-Lite-0.02.tar.gz;
-      sha256 = "20c1e9b7ddc017b788feb34c032fc585e2c5b46a484e93f519373fd18830ce0e";
+      url = mirror://cpan/authors/id/N/NE/NEILB/Exporter-Lite-0.04.tar.gz;
+      sha256 = "01g6a2ixgdi825v0l4ny3vx4chzsfxirka741x0i057cf6y5ciir";
     };
     meta = {
       license = "perl";

From d644332491e496a26563f3eec9c6be04c8636e3e Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:51:36 +0200
Subject: [PATCH 213/567] perlPackages.ExtUtilsCBuilder: update from 0.280212
 to 0.280216

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index c297d6c983ff..f142ac80237a 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -3234,10 +3234,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ExtUtilsCBuilder = buildPerlPackage rec {
-    name = "ExtUtils-CBuilder-0.280212";
+    name = "ExtUtils-CBuilder-0.280216";
     src = fetchurl {
-      url = "mirror://cpan/modules/by-module/ExtUtils/${name}.tar.gz";
-      sha256 = "0zc4hkcb8wk7nm0b2b6pb1lpih52blx6x2w6x99bcr0d581807xg";
+      url = "mirror://cpan/authors/id/A/AM/AMBS/ExtUtils/${name}.tar.gz";
+      sha256 = "09d5sq9mgcnmjf2yp8rwd0cc1fa8kq7nbwjqxiqdykwmavmgm5ml";
     };
     buildInputs = [ PerlOSType ];
   };

From 05ff444d56e621b91f66eec089869f2917ed71b3 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:51:39 +0200
Subject: [PATCH 214/567] perlPackages.ExtUtilsDepends: update from 0.304 to
 0.306

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index f142ac80237a..76fd2591682b 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -3264,10 +3264,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ExtUtilsDepends = buildPerlPackage {
-    name = "ExtUtils-Depends-0.304";
+    name = "ExtUtils-Depends-0.306";
     src = fetchurl {
-      url = mirror://cpan/authors/id/F/FL/FLORA/ExtUtils-Depends-0.304.tar.gz;
-      sha256 = "0fjlkcz1i1j02hhwi1wjgd79qlppjkbasrj44h5ry1f238g6a1q3";
+      url = mirror://cpan/authors/id/X/XA/XAOC/ExtUtils-Depends-0.306.tar.gz;
+      sha256 = "0s935hmxjl6md47i80abcfaghqwhnv0ikzzqln80w4ydhg5qn9a5";
     };
     meta = {
       license = "perl";

From ae520cd46549ade371202afc4db482b116d6825b Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:51:43 +0200
Subject: [PATCH 215/567] perlPackages.ExtUtilsHelpers: update from 0.021 to
 0.022

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 76fd2591682b..20303bd9d79a 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -3277,10 +3277,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ExtUtilsHelpers = buildPerlPackage {
-    name = "ExtUtils-Helpers-0.021";
+    name = "ExtUtils-Helpers-0.022";
     src = fetchurl {
-      url = mirror://cpan/authors/id/L/LE/LEONT/ExtUtils-Helpers-0.021.tar.gz;
-      sha256 = "26b85077f4197b30e62ffec87d3f78111522619d62858d2ab45a64687351892a";
+      url = mirror://cpan/authors/id/L/LE/LEONT/ExtUtils-Helpers-0.022.tar.gz;
+      sha256 = "15dalfwmpfmifw312i5pwiai8134pxf7b2804shlqhdk1xqczy6k";
     };
     meta = {
       description = "Various portability utilities for module builders";

From 3a8fbfda11899eaafffb94a24a26375356159c21 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:51:47 +0200
Subject: [PATCH 216/567] perlPackages.ExtUtilsInstallPaths: update from 0.009
 to 0.010

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 20303bd9d79a..ed369aabf4a9 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -3289,10 +3289,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ExtUtilsInstallPaths = buildPerlPackage {
-    name = "ExtUtils-InstallPaths-0.009";
+    name = "ExtUtils-InstallPaths-0.010";
     src = fetchurl {
-      url = mirror://cpan/authors/id/L/LE/LEONT/ExtUtils-InstallPaths-0.009.tar.gz;
-      sha256 = "1b0827a4acf40d38552c4348767000f7e2d8cf5fd0d19436bf8747d2a72d77bc";
+      url = mirror://cpan/authors/id/L/LE/LEONT/ExtUtils-InstallPaths-0.010.tar.gz;
+      sha256 = "0mi1px42in7i442jqncg3gmxd5zn7sw5b2s85h690rz433qvyk6i";
     };
     propagatedBuildInputs = [ ExtUtilsConfig ];
     meta = {

From 7b13fd4a4e10db25d99c970ecaebb7e5bdad8a34 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:51:50 +0200
Subject: [PATCH 217/567] perlPackages.ExtUtilsParseXS: update from 3.22 to
 3.24

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index ed369aabf4a9..4f1958850e58 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -3334,10 +3334,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ExtUtilsParseXS = buildPerlPackage rec {
-    name = "ExtUtils-ParseXS-3.22";
+    name = "ExtUtils-ParseXS-3.24";
     src = fetchurl {
-      url = "mirror://cpan/modules/by-module/ExtUtils/${name}.tar.gz";
-      sha256 = "03i93xfm9064vg2z70mcfwpnbmciafzrng113vmb8w8g117pvr84";
+      url = "mirror://cpan/authors/id/S/SM/SMUELLER/${name}.tar.gz";
+      sha256 = "07ipa2ssflw3ais8gbjdk4l8z2k1p65nfjwkxm37g6zw1210pdih";
     };
   };
 

From 19cca58cd4331297da8b0c0e21ed6b71f94d4c71 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:51:55 +0200
Subject: [PATCH 218/567] perlPackages.FatalException: update from 0.05 to
 0.0204

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 4f1958850e58..4f98ae2ab30d 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -3380,10 +3380,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   FatalException = buildPerlPackage {
-    name = "Fatal-Exception-0.05";
+    name = "Fatal-Exception-0.0204";
     src = fetchurl {
-      url = mirror://cpan/authors/id/D/DE/DEXTER/Fatal-Exception-0.05.tar.gz;
-      sha256 = "0kzfwc44vpxla3j637kfmnwmv57g6x4899ijqb4ljamk7whms298";
+      url = mirror://cpan/authors/id/D/DE/DEXTER/Fatal-Exception-0.0204.tar.gz;
+      sha256 = "10a9j0fa83s3apv0xgi01l2h6s43my031097hg72wa80n07rgs2c";
     };
     buildInputs = [ ExceptionWarning TestAssert TestUnitLite ];
     propagatedBuildInputs = [ ExceptionBase ExceptionDied ];

From e297787704d0e13f79297d605bf2b3c221a134c8 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:51:58 +0200
Subject: [PATCH 219/567] perlPackages.FileChangeNotify: update from 0.23 to
 0.24

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 4f98ae2ab30d..f7109187fd00 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -3418,10 +3418,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   FileChangeNotify = buildPerlModule rec {
-    name = "File-ChangeNotify-0.23";
+    name = "File-ChangeNotify-0.24";
     src = fetchurl {
       url = "mirror://cpan/authors/id/D/DR/DROLSKY/${name}.tar.gz";
-      sha256 = "18aq6lcldniciw189ihmcji98y6zqa1gdl3mjqdg8f37i9amn4i3";
+      sha256 = "090i265f73jlcl5rv250791vw32j9vvl4nd5abc7myg0klb8109w";
     };
     buildInputs = [ TestException ];
     propagatedBuildInputs =

From 70e0d0a921111fcc94168efa111e482bc868aa03 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:52:02 +0200
Subject: [PATCH 220/567] perlPackages.FileShare: update from 0.02 to 0.03

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index f7109187fd00..5306674f921e 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -3590,10 +3590,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   FileShare = buildPerlPackage {
-    name = "File-Share-0.02";
+    name = "File-Share-0.03";
     src = fetchurl {
-      url = mirror://cpan/authors/id/I/IN/INGY/File-Share-0.02.tar.gz;
-      sha256 = "1vdgyf3m08s4pwj70bgbb31jsj8hixdl940m15phyx2hpy8dkabw";
+      url = mirror://cpan/authors/id/J/JO/JOENIO/File-Share-0.03.tar.gz;
+      sha256 = "0siy9p6b7zbln5yq6g8z1nwm76ia23kkdj1k5pywsh3n6dn2lxa2";
     };
     propagatedBuildInputs = [ FileShareDir ];
     meta = {

From 93e50bec8cc14ecbf4e385948d8d4a38ba8b84eb Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:52:06 +0200
Subject: [PATCH 221/567] perlPackages.FileShareDirInstall: update from 0.04 to
 0.08

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 5306674f921e..6d11ee5c4597 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -3619,10 +3619,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   FileShareDirInstall = buildPerlPackage {
-    name = "File-ShareDir-Install-0.04";
+    name = "File-ShareDir-Install-0.08";
     src = fetchurl {
-      url = mirror://cpan/authors/id/G/GW/GWYN/File-ShareDir-Install-0.04.tar.gz;
-      sha256 = "14gyl1l1crnsb7ihz6czaw7k0v2dnan0380pbxz8kmk66nnhaxzc";
+      url = mirror://cpan/authors/id/G/GW/GWYN/File-ShareDir-Install-0.08.tar.gz;
+      sha256 = "188pgn43wa6hgpcrv997lp3bad50030p4wmrcdzvfrqxj0bx2amf";
     };
     meta = {
       description = "Install shared files";

From f964d637f77b005bbe180cafd697618938b58d68 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:52:10 +0200
Subject: [PATCH 222/567] perlPackages.FontTTF: update from 0.43 to 0.48

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 6d11ee5c4597..8ec6c1acad96 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -3690,10 +3690,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   FontTTF = buildPerlPackage {
-    name = "Font-TTF-0.43";
+    name = "Font-TTF-0.48";
     src = fetchurl {
-      url = mirror://cpan/authors/id/M/MH/MHOSKEN/Font-TTF-0.43.tar.gz;
-      sha256 = "0782mj5n5a2qbghvvr20x51llizly6q5smak98kzhgq9a7q3fg89";
+      url = mirror://cpan/authors/id/M/MH/MHOSKEN/Font-TTF-0.48.tar.gz;
+      sha256 = "0lhz7v8ihaj35y6kr7jb971hgc4iqh1nz3qbfkignb9i8b1dw97r";
     };
   };
 

From 17fd0cc41417a12f07b0c8315e1c0e135f18d797 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:52:14 +0200
Subject: [PATCH 223/567] perlPackages.ForksSuper: update from 0.67 to 0.72

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 8ec6c1acad96..1db752aef132 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -3698,10 +3698,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ForksSuper = buildPerlPackage {
-    name = "Forks-Super-0.67";
+    name = "Forks-Super-0.72";
     src = fetchurl {
-      url = mirror://cpan/authors/id/M/MO/MOB/Forks-Super-0.67.tar.gz;
-      sha256 = "8831cd70e1eb3d4ab7d9a8c3692caa7b7220dc888cd1a8dc5640fb2a08379141";
+      url = mirror://cpan/authors/id/M/MO/MOB/Forks-Super-0.72.tar.gz;
+      sha256 = "0zyqwyndb3gnbsh43b6xyl3wmlnyi18vz3yrbsvp3lccz4d0v7qp";
     };
     doCheck = false;
     meta = {

From 0799fc8cb22acebbcb4a09894f76411a5d3ff7c4 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:52:18 +0200
Subject: [PATCH 224/567] perlPackages.FreezeThaw: update from 0.43 to 0.5001

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 1db752aef132..9c6c6d057dc5 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -3711,10 +3711,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   FreezeThaw = buildPerlPackage {
-    name = "FreezeThaw-0.43";
+    name = "FreezeThaw-0.5001";
     src = fetchurl {
-      url = mirror://cpan/authors/id/I/IL/ILYAZ/modules/FreezeThaw-0.43.tar.gz;
-      sha256 = "1qamc5aggp35xk590a4hy660f2rhc2l7j65hbyxdya9yvg7z437l";
+      url = mirror://cpan/authors/id/I/IL/ILYAZ/modules/FreezeThaw-0.5001.tar.gz;
+      sha256 = "0h8gakd6b9770n2xhld1hhqghdar3hrq2js4mgiwxy86j4r0hpiw";
     };
     doCheck = false;
   };

From 223edd8fe4eb3f97ce8e93ec827d5fb61c179c25 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:52:22 +0200
Subject: [PATCH 225/567] perlPackages.GoogleProtocolBuffers: update from 0.08
 to 0.11

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 9c6c6d057dc5..111615da77b7 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -3803,10 +3803,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   GoogleProtocolBuffers = buildPerlPackage rec {
-    name = "Google-ProtocolBuffers-0.08";
+    name = "Google-ProtocolBuffers-0.11";
     src = fetchurl {
-      url = "mirror://cpan/authors/id/G/GA/GARIEV/${name}.tar.gz";
-      sha256 = "0pxfphg671wh56h59pf0zrj7m1cr0yga95hf3w54563pzcw2vqv3";
+      url = "mirror://cpan/authors/id/S/SA/SAXJAZMAN/protobuf/${name}.tar.gz";
+      sha256 = "0k2skcbfzn2aw1f218l47h4kgq5rj9qsam3sd6zw4qq3zyp0amb1";
     };
     propagatedBuildInputs = [ ClassAccessor ParseRecDescent ];
     patches =

From 08be8f66ec5dd8dc42b5f64ca3a601b4d0392ed1 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:52:25 +0200
Subject: [PATCH 226/567] perlPackages.Graph: update from 0.94 to 0.96

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 111615da77b7..3d71d8501cb3 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -3818,10 +3818,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   Graph = buildPerlPackage rec {
-    name = "Graph-0.94";
+    name = "Graph-0.96";
     src = fetchurl {
       url = "mirror://cpan/authors/id/J/JH/JHI/${name}.tar.gz";
-      sha256 = "1lyfl9s4mkhahnpxk2z5v6j750jqb4sls56b9rnkl5lni9ms7xgn";
+      sha256 = "09wpiz7v0gv07zb7h8gwgjrwj16cdycs60d08cjlyj1s926zlbl3";
     };
 
     buildInputs = [ TestPod TestPodCoverage ];

From 21cbb9eede91df80b64cc80249f99f99e0b1ba3e Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:52:29 +0200
Subject: [PATCH 227/567] perlPackages.HTMLFormHandler: update from 0.40055 to
 0.40056

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 3d71d8501cb3..f98a0135da16 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -4001,10 +4001,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   HTMLFormHandler = buildPerlPackage {
-    name = "HTML-FormHandler-0.40055";
+    name = "HTML-FormHandler-0.40056";
     src = fetchurl {
-      url = mirror://cpan/authors/id/G/GS/GSHANK/HTML-FormHandler-0.40055.tar.gz;
-      sha256 = "47e3cf69e2475cba86356eda340e6622df0525e2d0aa2343aef9f924f13d86cd";
+      url = mirror://cpan/authors/id/G/GS/GSHANK/HTML-FormHandler-0.40056.tar.gz;
+      sha256 = "012wijl69qjazghq2ywikk0jdxjbd9rfsxmwwq7lbpfjy2fiymqx";
     };
     buildInputs = [ FileShareDirInstall PadWalker TestDifferences TestException TestMemoryCycle ];
     propagatedBuildInputs = [ ClassLoad DataClone DateTime DateTimeFormatStrptime EmailValid FileShareDir HTMLTree JSON ListAllUtils Moose MooseXGetopt MooseXTypes MooseXTypesCommon MooseXTypesLoadableClass SubExporter SubName TryTiny aliased namespaceautoclean ];

From c9e26b0632de14a3e1400cbe5635ef8b72f6c8b3 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:52:34 +0200
Subject: [PATCH 228/567] perlPackages.HTMLSelectorXPath: update from 0.15 to
 0.16

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index f98a0135da16..71488d257489 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -4030,10 +4030,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   HTMLSelectorXPath = buildPerlPackage {
-    name = "HTML-Selector-XPath-0.15";
+    name = "HTML-Selector-XPath-0.16";
     src = fetchurl {
-      url = mirror://cpan/authors/id/C/CO/CORION/HTML-Selector-XPath-0.15.tar.gz;
-      sha256 = "0wnb561yp1r3mqw2hmd16zm45lqqm2mp823s1rx2k4qw141rmkpv";
+      url = mirror://cpan/authors/id/C/CO/CORION/HTML-Selector-XPath-0.16.tar.gz;
+      sha256 = "0v12plal866ifcv7m8x22abrddd6cf12gn55qclk53qqa6c8f8m6";
     };
     buildInputs = [ TestBase ];
     meta = {

From dfd408338c2bd9fce7a42151f5caf30e38195a46 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:52:39 +0200
Subject: [PATCH 229/567] perlPackages.HTMLTemplate: update from 2.9 to 2.95

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 71488d257489..90d8210b6a78 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -4069,10 +4069,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   HTMLTemplate = buildPerlPackage rec {
-    name = "HTML-Template-2.9";
+    name = "HTML-Template-2.95";
     src = fetchurl {
-      url = "mirror://cpan/authors/id/S/SA/SAMTREGAR/${name}.tar.gz";
-      sha256 = "0is026jn1731lvfjglv4003dsr8drshvw25zlbjrywk59kx7nsb2";
+      url = "mirror://cpan/authors/id/W/WO/WONKO/${name}.tar.gz";
+      sha256 = "07ahpfgidxsw2yb7y8i7bbr8s64aq6qgq832h9jswmksxbd0l43q";
     };
   };
 

From 8d185a638b165f2161dc97b42370f7e3ea3e40c2 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:52:42 +0200
Subject: [PATCH 230/567] perlPackages.HTTPLite: update from 2.4 to 2.43

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 90d8210b6a78..a645dc15d335 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -4198,10 +4198,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   HTTPLite = buildPerlPackage rec {
-    name = "HTTP-Lite-2.4";
+    name = "HTTP-Lite-2.43";
     src = fetchurl {
       url = "mirror://cpan/authors/id/N/NE/NEILB/${name}.tar.gz";
-      sha256 = "66f4fc0f93eeb42c09737f83b21de1944212ae9b2acb784d5103e8208491477b";
+      sha256 = "10svyy8r5ca86spz21r0k2mdy8g2slzssin4qbg101zc9kr5r65a";
     };
   };
 

From b8487aeb8075d36d73a62c6c227499370187a6ee Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:52:45 +0200
Subject: [PATCH 231/567] perlPackages.HTTPParserXS: update from 0.14 to 0.16

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index a645dc15d335..00dc40024202 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -4232,10 +4232,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   HTTPParserXS = buildPerlPackage rec {
-    name = "HTTP-Parser-XS-0.14";
+    name = "HTTP-Parser-XS-0.16";
     src = fetchurl {
       url = "mirror://cpan/authors/id/K/KA/KAZUHO/${name}.tar.gz";
-      sha256 = "06srbjc380kvvj76r8n5c2y282j5zfgn0s0zmb9h3shwrynfqj05";
+      sha256 = "1sp9vllf012paslmn11b7z7fbk3hhkcp7gj59yp6qzh11xzpxlai";
     };
     buildInputs = [ TestMore ];
   };

From 3dd6683cb21a5181ed16a56a3241c6842b952e77 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:52:49 +0200
Subject: [PATCH 232/567] perlPackages.HashMerge: update from 0.12 to 0.200

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 00dc40024202..63b270c53032 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -3876,10 +3876,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   HashMerge = buildPerlPackage rec {
-    name = "Hash-Merge-0.12";
+    name = "Hash-Merge-0.200";
     src = fetchurl {
-      url = "mirror://cpan/modules/by-module/Hash/${name}.tar.gz";
-      sha256 = "07h7dyldxwqhq3x4fp9hacnc4vgipp0jk50b5cbvib975nfxx98z";
+      url = "mirror://cpan/authors/id/R/RE/REHSACK/${name}.tar.gz";
+      sha256 = "0r1a2axz85wn6573zrl9rk8mkfl2cvf1gp9vwya5qndp60rz1ya7";
     };
     propagatedBuildInputs = [ Clone ];
     meta = {

From 771c5e56582e079f782f47734ead4e7de91005da Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:52:52 +0200
Subject: [PATCH 233/567] perlPackages.HashMultiValue: update from 0.13 to 0.15

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 63b270c53032..981170d0a8ec 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -3902,10 +3902,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   HashMultiValue = buildPerlPackage {
-    name = "Hash-MultiValue-0.13";
+    name = "Hash-MultiValue-0.15";
     src = fetchurl {
-      url = mirror://cpan/authors/id/M/MI/MIYAGAWA/Hash-MultiValue-0.13.tar.gz;
-      sha256 = "0flflmk2kxq9sjmhxr1547lidgigibhck912j4ambdwg21sbxjjd";
+      url = mirror://cpan/authors/id/M/MI/MIYAGAWA/Hash-MultiValue-0.15.tar.gz;
+      sha256 = "1jc37kwpa1fl88va8bd1p95h0vjv1gsvmn7pc2pxj62ga6x0wpc0";
     };
     meta = {
       description = "Store multiple values per key";

From aa3278dd1f5ca6f7dc33c3726abad702436912ed Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:52:56 +0200
Subject: [PATCH 234/567] perlPackages.HashUtilFieldHashCompat: update from
 0.03 to 0.07

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 981170d0a8ec..6795288222cb 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -3914,10 +3914,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   HashUtilFieldHashCompat = buildPerlPackage {
-    name = "Hash-Util-FieldHash-Compat-0.03";
+    name = "Hash-Util-FieldHash-Compat-0.07";
     src = fetchurl {
-      url = mirror://cpan/authors/id/N/NU/NUFFIN/Hash-Util-FieldHash-Compat-0.03.tar.gz;
-      sha256 = "0pmai98a89j82fjksfax87brmpimjn74kr7bl874lc1k40dfhx47";
+      url = mirror://cpan/authors/id/E/ET/ETHER/Hash-Util-FieldHash-Compat-0.07.tar.gz;
+      sha256 = "1fbqcjvp5slkfyf63g8scrbdpkpw3g9z9557xvfaxn09aki7g1bn";
     };
     propagatedBuildInputs = [ Testuseok ];
     meta = {

From 8aef65dc04d4bd42d95ead4a37243e710f23902c Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:53:00 +0200
Subject: [PATCH 235/567] perlPackages.HookLexWrap: update from 0.22 to 0.24

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 6795288222cb..84792f7366d7 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -3939,10 +3939,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   HookLexWrap = buildPerlPackage rec {
-    name = "Hook-LexWrap-0.22";
+    name = "Hook-LexWrap-0.24";
     src = fetchurl {
-      url = "mirror://cpan/authors/id/C/CH/CHORNY/${name}.zip";
-      sha256 = "eda90ba26f8a0cef02d38f08a1786a203beec1309279493c78eed13567d0fa7e";
+      url = "mirror://cpan/authors/id/C/CH/CHORNY/${name}.tar.gz";
+      sha256 = "0nyfirbdrgs2cknifqr1pf8xd5q9xnv91gy7jha4crp1hjqvihj4";
     };
     buildInputs = [ pkgs.unzip ];
   };

From 6d394b51770becff94946dc7d6eee24709323018 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:53:04 +0200
Subject: [PATCH 236/567] perlPackages.IOAll: update from 0.50 to 0.60

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 84792f7366d7..3c16a1a0c25b 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -4292,10 +4292,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   IOAll = buildPerlPackage {
-    name = "IO-All-0.50";
+    name = "IO-All-0.60";
     src = fetchurl {
-      url = mirror://cpan/authors/id/I/IN/INGY/IO-All-0.50.tar.gz;
-      sha256 = "13mc913jqqfkaily48cd886x0n6x6zw59c00fmkhqc97xh1kdckc";
+      url = mirror://cpan/authors/id/F/FR/FREW/IO-All-0.60.tar.gz;
+      sha256 = "1bwsd2f5rlivcqyd7rb0ap5vrzv8s8fappi3b1v553yr5vl5pyq9";
     };
     propagatedBuildInputs = [ IOString ];
     meta = {

From 811474227f610d504559e668b891cf0ec16f64f6 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:53:08 +0200
Subject: [PATCH 237/567] perlPackages.IOCaptureOutput: update from 1.1102 to
 1.1103

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 3c16a1a0c25b..91fcc000aac8 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -4308,10 +4308,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   IOCaptureOutput = buildPerlPackage rec {
-    name = "IO-CaptureOutput-1.1102";
+    name = "IO-CaptureOutput-1.1103";
     src = fetchurl {
-      url = "mirror://cpan/modules/by-module/IO/${name}.tar.gz";
-      sha256 = "2ea16dbecb21a3c2be49a93fb1e7e51275bed3f7ef3ac30cbdbff5d0178d43c7";
+      url = "mirror://cpan/authors/id/D/DA/DAGOLDEN/${name}.tar.gz";
+      sha256 = "1bcl7p87ysbzab6hssq19xn3djzc0yk9l4hk0a2mqbqb8hv6p0m5";
     };
   };
 

From 5a74c9e87a362837fbd562d43592d535b6c3daeb Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:53:12 +0200
Subject: [PATCH 238/567] perlPackages.IODigest: update from 0.10 to 0.11

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 91fcc000aac8..3363c93773d2 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -4331,10 +4331,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   IODigest = buildPerlPackage {
-    name = "IO-Digest-0.10";
+    name = "IO-Digest-0.11";
     src = fetchurl {
-      url = mirror://cpan/authors/id/C/CL/CLKAO/IO-Digest-0.10.tar.gz;
-      sha256 = "1g6ilxqv2a7spf273v7k0721c6am7pwpjrin3h5zaqxfmd312nav";
+      url = mirror://cpan/authors/id/C/CL/CLKAO/IO-Digest-0.11.tar.gz;
+      sha256 = "14kz7z4xw179aya3116wxac29l4y2wmwrba087lya4v2gxdgiz4g";
     };
     propagatedBuildInputs = [PerlIOviadynamic];
   };

From 798a139bd30372e1c124c7994be7fe87f0994ccf Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:53:16 +0200
Subject: [PATCH 239/567] perlPackages.IOTieCombine: update from 1.002 to 1.004

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 3363c93773d2..3001e39c8228 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -4422,10 +4422,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   IOTieCombine = buildPerlPackage {
-    name = "IO-TieCombine-1.002";
+    name = "IO-TieCombine-1.004";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RJ/RJBS/IO-TieCombine-1.002.tar.gz;
-      sha256 = "fd4f59e82852fd8b868dd1642cb6ec9caf32a597803fdce2cbe8d580c3b41d44";
+      url = mirror://cpan/authors/id/R/RJ/RJBS/IO-TieCombine-1.004.tar.gz;
+      sha256 = "0awyyjdbjjawdkzs08rfjhfkkm7pni523x3ddmq9ixa82ibnn430";
     };
     meta = {
       homepage = https://github.com/rjbs/io-tiecombine;

From 67b484af45e7740ab208b858ffc814225f4fe579 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:53:20 +0200
Subject: [PATCH 240/567] perlPackages.IPCRun3: update from 0.046 to 0.048

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 3001e39c8228..f42782ef202c 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -4459,10 +4459,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   IPCRun3 = buildPerlPackage rec {
-    name = "IPC-Run3-0.046";
+    name = "IPC-Run3-0.048";
     src = fetchurl {
       url = "mirror://cpan/authors/id/R/RJ/RJBS/${name}.tar.gz";
-      sha256 = "033miv4z6g50q71blj8l1g846frngm1v5l3mcv38dslkjqimxxp4";
+      sha256 = "0r9m8q78bg7yycpixd7738jm40yz71p2q7inm766kzsw3g6c709x";
     };
   };
 

From 02fce7df41e6be13dc96efe6913dc1938654e5f8 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:53:26 +0200
Subject: [PATCH 241/567] perlPackages.JSONXS: update from 2.33 to 2.34

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index f42782ef202c..1c23b8a53ea5 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -4610,10 +4610,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   JSONXS = buildPerlPackage {
-    name = "JSON-XS-2.33";
+    name = "JSON-XS-2.34";
     src = fetchurl {
-      url = mirror://cpan/authors/id/M/ML/MLEHMANN/JSON-XS-2.33.tar.gz;
-      sha256 = "0p68f85xz6xx2c9ydz4bij5x4d1747rxs3jdq53ab915mnc1qfdl";
+      url = mirror://cpan/authors/id/M/ML/MLEHMANN/JSON-XS-2.34.tar.gz;
+      sha256 = "1sh0i73skxp3rvd9w8phxqncw9m1r5ibnb9qxxm21bmrfwkxybx6";
     };
     propagatedBuildInputs = [ CommonSense ];
     meta = {

From b4c012700f642a3ad2bde1b23d5170eda76c3269 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:53:30 +0200
Subject: [PATCH 242/567] perlPackages.LWPUserAgent: update from 6.04 to 6.05

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 1c23b8a53ea5..f08f7ef99b35 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -4923,10 +4923,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   LWPUserAgent = buildPerlPackage {
-    name = "LWP-UserAgent-6.04";
+    name = "LWP-UserAgent-6.05";
     src = fetchurl {
-      url = mirror://cpan/authors/id/G/GA/GAAS/libwww-perl-6.04.tar.gz;
-      sha256 = "0z92fpwk6lh2gghv050r0qb216jmjl2m0c6zby935q8lv0q5wwgr";
+      url = mirror://cpan/authors/id/G/GA/GAAS/libwww-perl-6.05.tar.gz;
+      sha256 = "08wgwyz7748pv5cyngxia0xl6nragfnhrp4p9s78xhgfyygpj9bv";
     };
     propagatedBuildInputs = [ EncodeLocale FileListing HTMLParser HTTPCookies HTTPDaemon HTTPDate HTTPNegotiate HTTPMessage LWPMediaTypes NetHTTP URI WWWRobotRules ];
     meta = {

From eaf4f0c7c7a8e18c77d3227d0ea8653ee89367cd Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:53:33 +0200
Subject: [PATCH 243/567] perlPackages.LWPxParanoidAgent: update from 1.07 to
 1.10

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index f08f7ef99b35..9c5f8525c529 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -4966,10 +4966,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   LWPxParanoidAgent = buildPerlPackage rec {
-    name = "LWPx-ParanoidAgent-1.07";
+    name = "LWPx-ParanoidAgent-1.10";
     src = fetchurl {
-      url = "mirror://cpan/authors/id/B/BR/BRADFITZ/${name}.tar.gz";
-      sha256 = "bd7ccbe6ed6b64195a967e9b2b04c185b7b97e8ec5a8835bb45dbcd42a18e76a";
+      url = "mirror://cpan/authors/id/S/SA/SAXJAZMAN/lwp/${name}.tar.gz";
+      sha256 = "0i306p7mdqx09qfsf6b3rnn5xw9v9r3md4swlbk9z0mskjl0l4w4";
     };
     doCheck = false; # 3 tests fail, probably because they try to connect to the network
     propagatedBuildInputs = [ LWP NetDNS ];

From 34e0eb81beb6bddfe34e5968cc21635bea06bb5e Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:53:37 +0200
Subject: [PATCH 244/567] perlPackages.LinguaENTagger: update from 0.23 to 0.24

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 9c5f8525c529..4169fb21712f 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -4676,10 +4676,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   LinguaENTagger = buildPerlPackage {
-    name = "Lingua-EN-Tagger-0.23";
+    name = "Lingua-EN-Tagger-0.24";
     src = fetchurl {
-      url = mirror://cpan/authors/id/A/AC/ACOBURN/Lingua-EN-Tagger-0.23.tar.gz;
-      sha256 = "0xq6567gijczxzq72ghfa9jr8zyc1p0ax9s12mv7slibpkfkm2d2";
+      url = mirror://cpan/authors/id/A/AC/ACOBURN/Lingua-EN-Tagger-0.24.tar.gz;
+      sha256 = "0qksqh1zi8fz76a29s2ll4g6yr8y6agmzgq7ngccvgj3gza5q241";
     };
     propagatedBuildInputs = [ HTMLParser HTMLTagset LinguaStem /* MemoizeExpireLRU */ ];
     meta = {

From 25f3995666fb018c0a3f42766933675d820c34b7 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:53:41 +0200
Subject: [PATCH 245/567] perlPackages.LocaleMaketext: update from 1.13 to 1.23

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 4169fb21712f..02577d7faa81 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -4754,10 +4754,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   LocaleMaketext = buildPerlPackage {
-    name = "Locale-Maketext-1.13";
+    name = "Locale-Maketext-1.23";
     src = fetchurl {
-      url = mirror://cpan/authors/id/F/FE/FERREIRA/Locale-Maketext-1.13.tar.gz;
-      sha256 = "0qvrhcs1f28ix3v8hcd5xr4z9s7plz4g5a4q1cjp7bs0c3w2yl6z";
+      url = mirror://cpan/authors/id/T/TO/TODDR/Locale-Maketext-1.23.tar.gz;
+      sha256 = "1r1sq7djafvk5abzc4l068p39dz44hlpgdldj3igvn2bjz78cli1";
     };
     propagatedBuildInputs = [I18NLangTags];
   };

From 7d76f2c4b0debae7a3fcab77bdef3a22f6baa198 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:53:44 +0200
Subject: [PATCH 246/567] perlPackages.LocaleMaketextSimple: update from 0.18
 to 0.21

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 02577d7faa81..a543f7460fee 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -4772,10 +4772,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   LocaleMaketextSimple = buildPerlPackage {
-    name = "Locale-Maketext-Simple-0.18";
+    name = "Locale-Maketext-Simple-0.21";
     src = fetchurl {
-      url = mirror://cpan/authors/id/A/AU/AUDREYT/Locale-Maketext-Simple-0.18.tar.gz;
-      sha256 = "14kx7vkxyfqndy90rzavrjp2346aidyc7x5dzzdj293qf8s4q6ig";
+      url = mirror://cpan/authors/id/J/JE/JESSE/Locale-Maketext-Simple-0.21.tar.gz;
+      sha256 = "1ad9vh45j8c32nzkbjipinawyg1pnjckwlhsjqcqs47vyi8zy2dh";
     };
   };
 

From f52121cab024af49c4355ad294fad4ae3d0cb8cb Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:53:48 +0200
Subject: [PATCH 247/567] perlPackages.LockFileSimple: update from 0.207 to
 0.208

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index a543f7460fee..0755bcc548e2 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -4795,10 +4795,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   LockFileSimple = buildPerlPackage rec {
-    name = "LockFile-Simple-0.207";
+    name = "LockFile-Simple-0.208";
     src = fetchurl {
-      url = "mirror://cpan/authors/id/J/JV/JV/LockFile-Simple-0.207.tar.gz";
-      sha256 = "171vi9y6jlkny0d4jaavz48d1vbxljknnmbq8h22fi8lnc5kvipa";
+      url = "mirror://cpan/authors/id/S/SC/SCHWIGON/lockfile-simple/LockFile-Simple-0.208.tar.gz";
+      sha256 = "18pk5a030dsg1h6wd8c47wl8pzrpyh9zi9h2c9gs9855nab7iis5";
     };
   };
 

From 70c85b5d7af0cfc98bc6b815e9267a1955c4c0a9 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:53:51 +0200
Subject: [PATCH 248/567] perlPackages.Log4Perl: update from 1.41 to 1.43

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 0755bcc548e2..9b4cffa8ff96 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -4842,10 +4842,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   Log4Perl = buildPerlPackage rec {
-    name = "Log-Log4perl-1.41";
+    name = "Log-Log4perl-1.43";
     src = fetchurl {
-      url = "mirror://cpan/modules/by-module/Log/${name}.tar.gz";
-      sha256 = "0dajkgvlwsb4zdw6x3fil2n5phypq829dmqf8l9s88g9smms2a2i";
+      url = "mirror://cpan/authors/id/M/MS/MSCHILLI/${name}.tar.gz";
+      sha256 = "19rmm1nlcradfj74rrvkjwmfighmjj9fiisml2j23i248vyz4cay";
     };
   };
 

From 21d3c04e8075de0b6553a7cd359e1c0d317291ae Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:53:55 +0200
Subject: [PATCH 249/567] perlPackages.LogContextual: update from 0.005003 to
 0.006003

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 9b4cffa8ff96..14802d69549b 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -4803,10 +4803,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   LogContextual = buildPerlPackage {
-    name = "Log-Contextual-0.005003";
+    name = "Log-Contextual-0.006003";
     src = fetchurl {
-      url = mirror://cpan/authors/id/F/FR/FREW/Log-Contextual-0.005003.tar.gz;
-      sha256 = "8519ae92bd8685d003460f99151996e94f38c3c8f12b90634857558605d13719";
+      url = mirror://cpan/authors/id/F/FR/FREW/Log-Contextual-0.006003.tar.gz;
+      sha256 = "0940s910n67arqvz7aji4z6vgzzl52aq3l3jg8vq4ygnkn7c9k21";
     };
     buildInputs = [ TestFatal ];
     propagatedBuildInputs = [ DataDumperConcise ExporterDeclare Moo ];

From b79bfc7de16093c41d0280c34c210e98d62bb3fd Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:54:00 +0200
Subject: [PATCH 250/567] perlPackages.LogDispatchArray: update from 1.002 to
 1.003

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 14802d69549b..d532e03c955a 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -4850,10 +4850,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   LogDispatchArray = buildPerlPackage {
-    name = "Log-Dispatch-Array-1.002";
+    name = "Log-Dispatch-Array-1.003";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RJ/RJBS/Log-Dispatch-Array-1.002.tar.gz;
-      sha256 = "268ec720eec3651d3dadcad7d16f033b47f883c72d6f2547c4ccbe7fb22a4940";
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Log-Dispatch-Array-1.003.tar.gz;
+      sha256 = "0dvzp0gsh17jqg02460ndchyapr1haahndq1p9v6mwkv5wf9680c";
     };
     buildInputs = [ TestDeep ];
     propagatedBuildInputs = [ LogDispatch ];

From 7bc7132ddf939089efd74500e8080a578565fce5 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:54:04 +0200
Subject: [PATCH 251/567] perlPackages.LogDispatchouli: update from 2.006 to
 2.009

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index d532e03c955a..b4cb347a49c9 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -4865,10 +4865,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   LogDispatchouli = buildPerlPackage {
-    name = "Log-Dispatchouli-2.006";
+    name = "Log-Dispatchouli-2.009";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RJ/RJBS/Log-Dispatchouli-2.006.tar.gz;
-      sha256 = "bd33b4fcf88ccfb694593ea6d7b330f053e6afee40f27acdf690c24547365354";
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Log-Dispatchouli-2.009.tar.gz;
+      sha256 = "09iw27r36gmljlm6gjfczn2sf4s1js697q8na8xw4wlnz7x4bv59";
     };
     buildInputs = [ TestDeep TestFatal ];
     propagatedBuildInputs = [ LogDispatch LogDispatchArray ParamsUtil StringFlogger SubExporter SubExporterGlobExporter TryTiny ];

From 96fb4dbb5bb64b8d4e02cce2e35a90d8adafc62d Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:54:07 +0200
Subject: [PATCH 252/567] perlPackages.MailIMAPClient: update from 2.2.9 to
 3.35

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index b4cb347a49c9..9645d8522a10 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -4990,10 +4990,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   MailIMAPClient = buildPerlPackage {
-    name = "Mail-IMAPClient-2.2.9";
+    name = "Mail-IMAPClient-3.35";
     src = fetchurl {
-      url = mirror://cpan/authors/id/D/DJ/DJKERNEN/Mail-IMAPClient-2.2.9.tar.gz;
-      sha256 = "1jb04mn66d6022xjqmax49cdn55f2fdzp6knfnchmrcmf90a8rzs";
+      url = mirror://cpan/authors/id/P/PL/PLOBBES/Mail-IMAPClient-3.35.tar.gz;
+      sha256 = "0qzn8370cr91jnq1kawy6v16bcz49pch6inmw85rhzg87j1h6ica";
     };
     buildInputs = [ParseRecDescent];
   };

From 4c217a50945e59f682e11695ce20e83b84aa37e3 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:54:11 +0200
Subject: [PATCH 253/567] perlPackages.MailTools: update from 2.04 to 2.13

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 9645d8522a10..1ee66882d1da 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -4999,10 +4999,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   MailTools = buildPerlPackage {
-    name = "MailTools-2.04";
+    name = "MailTools-2.13";
     src = fetchurl {
-      url = mirror://cpan/authors/id/M/MA/MARKOV/MailTools-2.04.tar.gz;
-      sha256 = "0w91rcrz4v0pjdnnv2mvlbrm9ww32f7ajhr7xkjdhhr3455p7adx";
+      url = mirror://cpan/authors/id/M/MA/MARKOV/MailTools-2.13.tar.gz;
+      sha256 = "1djjl05ndn8dmwri4vw5wfky5sqy7sf63qaijvhf9g5yh53405kj";
     };
     propagatedBuildInputs = [TimeDate TestPod];
   };

From f79624df5aea1a272258ff90f11226d920ae77a5 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:54:15 +0200
Subject: [PATCH 254/567] perlPackages.MathPlanePath: update from 101 to 114

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 1ee66882d1da..2498fcb7a16d 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -5042,10 +5042,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   MathPlanePath = buildPerlPackage rec {
-    name = "Math-PlanePath-101";
+    name = "Math-PlanePath-114";
     src = fetchurl {
-      url = "mirror://cpan/modules/by-module/Math/${name}.tar.gz";
-      sha256 = "0g24zhgyxs56zv966xb487vvmhqqxvvsbbz4mck8n4l31rabk8jj";
+      url = "mirror://cpan/authors/id/K/KR/KRYDE/${name}.tar.gz";
+      sha256 = "11808k6aqf7gfkv0k0r8586zk8dm0jg5idkdb839gzlr97ns2y61";
     };
     propagatedBuildInputs = [ MathLibm constant-defer ];
   };

From 8b8a07ed17c889fb36cdb29b2acfb8c116e36fd0 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:54:18 +0200
Subject: [PATCH 255/567] perlPackages.ModuleBuildWithXSpp: update from 0.13 to
 0.14

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 2498fcb7a16d..feb547063ced 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -5218,10 +5218,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ModuleBuildWithXSpp = buildPerlModule rec {
-    name = "Module-Build-WithXSpp-0.13";
+    name = "Module-Build-WithXSpp-0.14";
     src = fetchurl {
       url = "mirror://cpan/authors/id/S/SM/SMUELLER/${name}.tar.gz";
-      sha256 = "05c5dssgl7ykj64nkzy4nwfrs0hd1lvfidhflrs3f1c7hc0z9g46";
+      sha256 = "0d39fjg9c0n820bk3fb50vvlwhdny4hdl69xmlyzql5xzp4cicsk";
     };
     propagatedBuildInputs = [ ExtUtilsXSpp ExtUtilsCppGuess ];
   };

From ea1fcba63c3e2a659d56b109c06872aea227eee0 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:54:23 +0200
Subject: [PATCH 256/567] perlPackages.ModuleFind: update from 0.11 to 0.12

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index feb547063ced..53d053cb865e 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -5240,10 +5240,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ModuleFind = buildPerlPackage {
-    name = "Module-Find-0.11";
+    name = "Module-Find-0.12";
     src = fetchurl {
-      url = mirror://cpan/authors/id/C/CR/CRENZ/Module-Find-0.11.tar.gz;
-      sha256 = "15ykcwplbqh5hc0fw4cx6g0f22zr0hrfkdkv1s34n9yg574dq3b5";
+      url = mirror://cpan/authors/id/C/CR/CRENZ/Module-Find-0.12.tar.gz;
+      sha256 = "1lc33jdv4pgmm7nkr9bff0lhwjhhw91kaf6iiy2n7i7mw8dfv47l";
     };
     meta = {
       description = "Find and use installed modules in a (sub)category";

From 7b89b377819ed190ee73c2935db45250f7d28f33 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:54:27 +0200
Subject: [PATCH 257/567] perlPackages.ModuleImplementation: update from 0.06
 to 0.07

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 53d053cb865e..d12b17deae83 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -5252,10 +5252,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ModuleImplementation = buildPerlPackage {
-    name = "Module-Implementation-0.06";
+    name = "Module-Implementation-0.07";
     src = fetchurl {
-      url = mirror://cpan/authors/id/D/DR/DROLSKY/Module-Implementation-0.06.tar.gz;
-      sha256 = "0v8qajzkpkwb9mfj2p46j352bwiszkg1zk778b008axqb817hfys";
+      url = mirror://cpan/authors/id/D/DR/DROLSKY/Module-Implementation-0.07.tar.gz;
+      sha256 = "15r93l8danysfhb7wn2zww1s02hajki4k3xjfxbpz7ckadqq6jbk";
     };
     buildInputs = [ TestFatal TestRequires ];
     propagatedBuildInputs = [ ModuleRuntime TryTiny ];

From f6eb58826f3bbcc5a4f4f19217ebf2075473e657 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:54:31 +0200
Subject: [PATCH 258/567] perlPackages.ModulePath: update from 0.09 to 0.13

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index d12b17deae83..8790926beecd 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -5347,10 +5347,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ModulePath = buildPerlPackage {
-    name = "Module-Path-0.09";
+    name = "Module-Path-0.13";
     src = fetchurl {
-      url = mirror://cpan/authors/id/N/NE/NEILB/Module-Path-0.09.tar.gz;
-      sha256 = "5330a76ff56800778d825548b4d631510a1a6b4f04725dddca95e68c4ed3ac18";
+      url = mirror://cpan/authors/id/N/NE/NEILB/Module-Path-0.13.tar.gz;
+      sha256 = "1kzsi0z142gcspyyp81za29bq0y74l57a8i2q7gz4zcchf2xm23g";
     };
     buildInputs = [ DevelFindPerl ];
     meta = {

From bce3f0f7089ea41c257a909bd5920ded511d2e66 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:54:35 +0200
Subject: [PATCH 259/567] perlPackages.ModulePluggable: update from 4.8 to 5.1

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 8790926beecd..283a8e361718 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -5360,10 +5360,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ModulePluggable = buildPerlPackage {
-    name = "Module-Pluggable-4.8";
+    name = "Module-Pluggable-5.1";
     src = fetchurl {
-      url = mirror://cpan/authors/id/S/SI/SIMONW/Module-Pluggable-4.8.tar.gz;
-      sha256 = "0gc2sanga3207l3dnmb05isc7m87l1j94v9ll3z4sbb3vs49gdd2";
+      url = mirror://cpan/authors/id/S/SI/SIMONW/Module-Pluggable-5.1.tar.gz;
+      sha256 = "0vwi433pk7n1ia5wy67j3545jvmjf1hb4jwcvzrz25mv8d03bp72";
     };
     patches = [
       # !!! merge this patch into Perl itself (which contains Module::Pluggable as well)

From c6dc49d29bf724a5d383ee41d83bce3ab0f7f3d2 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:54:38 +0200
Subject: [PATCH 260/567] perlPackages.ModulePluggableFast: update from 0.18 to
 0.19

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 283a8e361718..775bdaefc277 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -5376,10 +5376,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ModulePluggableFast = buildPerlPackage {
-    name = "Module-Pluggable-Fast-0.18";
+    name = "Module-Pluggable-Fast-0.19";
     src = fetchurl {
-      url = mirror://cpan/authors/id/S/SR/SRI/Module-Pluggable-Fast-0.18.tar.gz;
-      sha256 = "140c311x2darrc2p1drbkafv7qwhzdcff4ad300n6whsx4dfp6wr";
+      url = mirror://cpan/authors/id/M/MR/MRAMBERG/Module-Pluggable-Fast-0.19.tar.gz;
+      sha256 = "0pq758wlasmh77xyd2xh75m5b2x14s8pnsv63g5356gib1q5gj08";
     };
     propagatedBuildInputs = [UNIVERSALrequire];
   };

From aa1a352064729670922c677e22c5f62d40d9d4a9 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:54:41 +0200
Subject: [PATCH 261/567] perlPackages.ModuleRuntime: update from 0.013 to
 0.014

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 775bdaefc277..117833a9f265 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -5385,10 +5385,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ModuleRuntime = buildPerlPackage {
-    name = "Module-Runtime-0.013";
+    name = "Module-Runtime-0.014";
     src = fetchurl {
-      url = mirror://cpan/authors/id/Z/ZE/ZEFRAM/Module-Runtime-0.013.tar.gz;
-      sha256 = "08qhqg1qshrispcpzf24jbbpx2gh5ks84amnv9wmd46wj0yy0dzc";
+      url = mirror://cpan/authors/id/Z/ZE/ZEFRAM/Module-Runtime-0.014.tar.gz;
+      sha256 = "19326f094jmjs6mgpwkyisid54k67w34br8yfh0gvaaml87gwi2c";
     };
     meta = {
       homepage = http://search.cpan.org/perldoc?CPAN::Meta::Spec;

From 0e7425ce2837c514725fd0d74ac275f8452502d3 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:54:46 +0200
Subject: [PATCH 262/567] perlPackages.MooseAutobox: update from 0.13 to 0.15

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 117833a9f265..7db52a1f4cbd 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -5478,10 +5478,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   MooseAutobox = buildPerlPackage {
-    name = "Moose-Autobox-0.13";
+    name = "Moose-Autobox-0.15";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RJ/RJBS/Moose-Autobox-0.13.tar.gz;
-      sha256 = "3474b3e6dfe099fcca34089375ace6612cca35d4d8f9a0b8b4e48fbf88541b21";
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Moose-Autobox-0.15.tar.gz;
+      sha256 = "0xcayrfm08dqas1mq8lnf8nxkvzdgcmv6xs5lqah17bxqxgznrl9";
     };
     buildInputs = [ TestException ];
     propagatedBuildInputs = [ Moose SyntaxKeywordJunction autobox ];

From f7a2bc48dd8a45c7b6454962478ad42200b2b02b Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:54:50 +0200
Subject: [PATCH 263/567] perlPackages.MooseXAliases: update from 0.10 to 0.11

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 7db52a1f4cbd..84a44a9b9f3e 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -5509,10 +5509,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   MooseXAliases = buildPerlPackage rec {
-    name = "MooseX-Aliases-0.10";
+    name = "MooseX-Aliases-0.11";
     src = fetchurl {
-      url = "mirror://cpan/modules/by-module/MooseX/${name}.tar.gz";
-      sha256 = "1n3z06x6d7sl2can7gn1q4qpclg6sjl6i8fd9y3yipmaxbk97clz";
+      url = "mirror://cpan/authors/id/D/DO/DOY/${name}.tar.gz";
+      sha256 = "0j07zqczjfmng3md6nkha7560i786d0cp3gdmrx49hr64jbhz1f4";
     };
     buildInputs = [ TestFatal TestRequires ];
     propagatedBuildInputs = [ Moose ];

From 82457b53b4b331421a6a555a8049b6987966174e Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:54:53 +0200
Subject: [PATCH 264/567] perlPackages.MooseXConfigFromFile: update from 0.11
 to 0.13

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 84a44a9b9f3e..d4c8e04691e0 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -5574,10 +5574,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   MooseXConfigFromFile = buildPerlPackage {
-    name = "MooseX-ConfigFromFile-0.11";
+    name = "MooseX-ConfigFromFile-0.13";
     src = fetchurl {
-      url = mirror://cpan/authors/id/E/ET/ETHER/MooseX-ConfigFromFile-0.11.tar.gz;
-      sha256 = "963e7dbb2bc7ca18995db903c64b0841c4e8d3877009bff5475125673c3b02b4";
+      url = mirror://cpan/authors/id/E/ET/ETHER/MooseX-ConfigFromFile-0.13.tar.gz;
+      sha256 = "0pf5f05hs2i765cnw9sw1hdxf7vz480iyyngjawr4yqjkv4r5nz7";
     };
     buildInputs = [ Moose TestCheckDeps TestDeep TestFatal TestNoWarnings TestRequires TestWithoutModule ];
     propagatedBuildInputs = [ Moose MooseXTypes MooseXTypesPathTiny TryTiny namespaceautoclean ];

From 6678e8e1a360b6bf828378d551c6a28ddf47340e Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:54:56 +0200
Subject: [PATCH 265/567] perlPackages.MooseXNonMoose: update from 0.22 to 0.26

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index d4c8e04691e0..5810caf226d3 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -5710,10 +5710,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   MooseXNonMoose = buildPerlPackage {
-    name = "MooseX-NonMoose-0.22";
+    name = "MooseX-NonMoose-0.26";
     src = fetchurl {
-      url = mirror://cpan/authors/id/D/DO/DOY/MooseX-NonMoose-0.22.tar.gz;
-      sha256 = "0mhyabg5f6kngkm1w7hfglkdzjdn5pbgm7vgia0aqy9mwwclbpdp";
+      url = mirror://cpan/authors/id/D/DO/DOY/MooseX-NonMoose-0.26.tar.gz;
+      sha256 = "0zdaiphc45s5xj0ax5mkijf5d8v6w6yccb3zplgj6f30y7n55gnb";
     };
     buildInputs = [ TestFatal ];
     propagatedBuildInputs = [ ListMoreUtils Moose ];

From 6bfd49596c220b835de9af4dc78889fea733a426 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:55:00 +0200
Subject: [PATCH 266/567] perlPackages.MooseXOneArgNew: update from 0.003 to
 0.004

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 5810caf226d3..cc1970911ade 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -5724,10 +5724,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   MooseXOneArgNew = buildPerlPackage {
-    name = "MooseX-OneArgNew-0.003";
+    name = "MooseX-OneArgNew-0.004";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RJ/RJBS/MooseX-OneArgNew-0.003.tar.gz;
-      sha256 = "bd1879192f542dbc0741dbd1ba71f29bd22a0fce372d7a6ae04dbded51d71123";
+      url = mirror://cpan/authors/id/R/RJ/RJBS/MooseX-OneArgNew-0.004.tar.gz;
+      sha256 = "1frfrqaj283z1x95cqbbj3cvmb6rj50ngs47jq8myz6d1bg4zwff";
     };
     buildInputs = [ Moose ];
     propagatedBuildInputs = [ Moose MooseXRoleParameterized namespaceautoclean ];

From 48cf24ace04fa77bc5fccda16a74d6f8f930ad13 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:55:04 +0200
Subject: [PATCH 267/567] perlPackages.MooseXRoleParameterized: update from
 1.00 to 1.02

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index cc1970911ade..d456d22fc7ba 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -5763,10 +5763,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   MooseXRoleParameterized = buildPerlPackage {
-    name = "MooseX-Role-Parameterized-1.00";
+    name = "MooseX-Role-Parameterized-1.02";
     src = fetchurl {
-      url = mirror://cpan/authors/id/S/SA/SARTAK/MooseX-Role-Parameterized-1.00.tar.gz;
-      sha256 = "0642h71j90i0jrqxz1snizkw9pch8v1s1w0zndrcl5bb85lx3z7y";
+      url = mirror://cpan/authors/id/S/SA/SARTAK/MooseX-Role-Parameterized-1.02.tar.gz;
+      sha256 = "089czh2pipvdajjy4rxlix0y20ilp3ldbzi0vs68b7k6k9q3mqdk";
     };
     buildInputs = [ TestFatal TestMoose ];
     propagatedBuildInputs = [ Moose ];

From 49df464bf4083b3612786a559fe9ca8afb9c2ca2 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:55:07 +0200
Subject: [PATCH 268/567] perlPackages.MooseXTraitsPluggable: update from 0.10
 to 0.12

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index d456d22fc7ba..58176c630a36 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -5863,10 +5863,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   MooseXTraitsPluggable = buildPerlPackage rec {
-    name = "MooseX-Traits-Pluggable-0.10";
+    name = "MooseX-Traits-Pluggable-0.12";
     src = fetchurl {
-      url = "mirror://cpan/modules/by-module/MooseX/${name}.tar.gz";
-      sha256 = "0gv79bsnacrzwpac3dll64zj40qcsbp4kdk8yr9z5bwim7nkvnv3";
+      url = "mirror://cpan/authors/id/R/RK/RKITOVER/${name}.tar.gz";
+      sha256 = "1jjqmcidy4kdgp5yffqqwxrsab62mbhbpvnzdy1rpwnb1savg5mb";
     };
     buildInputs =[ TestException ];
     propagatedBuildInputs =

From cd94d0198f7ced4be95d7134fe19bf33546c05b6 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:55:11 +0200
Subject: [PATCH 269/567] perlPackages.MooseXTypesPerl: update from 0.101341 to
 0.101343

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 58176c630a36..b7b0b34c0c8b 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -5973,10 +5973,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   MooseXTypesPerl = buildPerlPackage {
-    name = "MooseX-Types-Perl-0.101341";
+    name = "MooseX-Types-Perl-0.101343";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RJ/RJBS/MooseX-Types-Perl-0.101341.tar.gz;
-      sha256 = "d1081a734d62121f3262b18170022de2f51ebcc0a8b8afe1b1273d7cb3e58c97";
+      url = mirror://cpan/authors/id/R/RJ/RJBS/MooseX-Types-Perl-0.101343.tar.gz;
+      sha256 = "0nijy676q27bvjb8swxrb1j4lq2xq8jbqkaxs1l9q81k7jpvx17h";
     };
     propagatedBuildInputs = [ MooseXTypes ParamsUtil ];
     meta = {

From 153809475688a97ba41d7fb725c3c9f5ca21752c Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:55:16 +0200
Subject: [PATCH 270/567] perlPackages.MooseXTypesStringlike: update from 0.001
 to 0.002

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index b7b0b34c0c8b..070c309a0158 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -5986,10 +5986,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   MooseXTypesStringlike = buildPerlPackage {
-    name = "MooseX-Types-Stringlike-0.001";
+    name = "MooseX-Types-Stringlike-0.002";
     src = fetchurl {
-      url = mirror://cpan/authors/id/D/DA/DAGOLDEN/MooseX-Types-Stringlike-0.001.tar.gz;
-      sha256 = "2ba71fff105d851ea6aee85bef5d6629726138a2b005b77a163a8bfb403cea03";
+      url = mirror://cpan/authors/id/D/DA/DAGOLDEN/MooseX-Types-Stringlike-0.002.tar.gz;
+      sha256 = "18g07bvhcrhirb1yhcz55y7nsvkw1wq285d1hyb0jxrzgr0ga94k";
     };
     buildInputs = [ Moose ];
     propagatedBuildInputs = [ MooseXTypes ];

From e6b6a0d4fce11d5856faa19d8ff3faf94a2b3802 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:55:19 +0200
Subject: [PATCH 271/567] perlPackages.MooseXTypesStructured: update from 0.28
 to 0.30

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 070c309a0158..8aec006b600e 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6003,10 +6003,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   MooseXTypesStructured = buildPerlPackage {
-    name = "MooseX-Types-Structured-0.28";
+    name = "MooseX-Types-Structured-0.30";
     src = fetchurl {
-      url = mirror://cpan/authors/id/J/JJ/JJNAPIORK/MooseX-Types-Structured-0.28.tar.gz;
-      sha256 = "12snpf65bh3jyx9w1h1sark83l0w51s3jdcr4ygw57cxvq39yl43";
+      url = mirror://cpan/authors/id/E/ET/ETHER/MooseX-Types-Structured-0.30.tar.gz;
+      sha256 = "0svfgbyzwdipywh7bfp954hncm8ihfr8xpppcyy59wr1inx2f55c";
     };
     buildInputs = [ DateTime MooseXTypesDateTime TestFatal ];
     propagatedBuildInputs = [ DevelPartialDump Moose MooseXTypes SubExporter ];

From f4b043b8e09ecaf4a1042dbec681eb38b2505daa Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:55:24 +0200
Subject: [PATCH 272/567] perlPackages.MooseXTypesURI: update from 0.03 to 0.05

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 8aec006b600e..466648fe34c4 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6020,10 +6020,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   MooseXTypesURI = buildPerlPackage {
-    name = "MooseX-Types-URI-0.03";
+    name = "MooseX-Types-URI-0.05";
     src = fetchurl {
-      url = mirror://cpan/authors/id/F/FL/FLORA/MooseX-Types-URI-0.03.tar.gz;
-      sha256 = "056v08kzcd93h8l69iqdxbr05h85bgz6jvp6iwc0vv68dacr299s";
+      url = mirror://cpan/authors/id/E/ET/ETHER/MooseX-Types-URI-0.05.tar.gz;
+      sha256 = "08acqm23ff22hicb3l4wc7szvdhlxpan7qmpgl15ilawrmz60p82";
     };
     propagatedBuildInputs = [ Moose MooseXTypes MooseXTypesPathClass namespaceclean Testuseok URI URIFromHash ];
     meta = {

From 11979f6cfad73868d3b9674bd344bb63826c93cb Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:55:29 +0200
Subject: [PATCH 273/567] perlPackages.NetAddrIP: update from 4.071 to 4.072

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 466648fe34c4..3ee05df6877e 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6120,10 +6120,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   NetAddrIP = buildPerlPackage rec {
-    name = "NetAddr-IP-4.071";
+    name = "NetAddr-IP-4.072";
     src = fetchurl {
       url = "mirror://cpan/authors/id/M/MI/MIKER/${name}.tar.gz";
-      sha256 = "0m8d8ccygpjhbsv00vjfz8cvkjcn8dws0k4x58vbvnbjdv3yhxb3";
+      sha256 = "17gwhhbz25021w5k4ggp8j3plix5yixgb2vr1mj39fa0p3gafm09";
     };
   };
 

From 470adc4acfa83d2f8ae7d5d61db8764ba4021aad Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:55:33 +0200
Subject: [PATCH 274/567] perlPackages.NetAmazonS3Policy: update from 0.1.2 to
 0.1.6

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 3ee05df6877e..22ab24a5e4a4 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6193,10 +6193,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   NetAmazonS3Policy = buildPerlPackage {
-    name = "Net-Amazon-S3-Policy-0.1.2";
+    name = "Net-Amazon-S3-Policy-0.1.6";
     src = fetchurl {
-      url = mirror://cpan/authors/id/P/PO/POLETTIX/Net-Amazon-S3-Policy-0.1.2.tar.gz;
-      sha256 = "1kkzimvxwxx0mypf75dalksxmvwsb8b575yx2nzmvjkvjg3j9na0";
+      url = mirror://cpan/authors/id/P/PO/POLETTIX/Net-Amazon-S3-Policy-0.1.6.tar.gz;
+      sha256 = "056rhq6vsdpwi2grbmxj8341qjrz0258civpnhs78j37129nxcfj";
     };
     propagatedBuildInputs = [ JSON ];
     meta = {

From 8da8abba86c0e74b2e7e9ae4ccdf9b817b71cca9 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:55:37 +0200
Subject: [PATCH 275/567] perlPackages.NetDNS: update from 0.63 to 0.74

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 22ab24a5e4a4..2a18f79d2101 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6257,10 +6257,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   NetDNS = buildPerlPackage {
-    name = "Net-DNS-0.63";
+    name = "Net-DNS-0.74";
     src = fetchurl {
-      url = mirror://cpan/authors/id/O/OL/OLAF/Net-DNS-0.63.tar.gz;
-      sha256 = "1pswrwhkav051xahm3k4cbyhi8kqpfmaz85lw44kwi2wc7mz4prk";
+      url = mirror://cpan/authors/id/N/NL/NLNETLABS/Net-DNS-0.74.tar.gz;
+      sha256 = "0clwl4nqzg23d6l9d9gc8ijl1lbghhfrbavjlvhd1wll5r8ayr7g";
     };
     propagatedBuildInputs = [NetIP DigestHMAC];
     doCheck = false;

From c168ae1bbfad8c23dc28dcc7a6f5767f834f54aa Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:55:41 +0200
Subject: [PATCH 276/567] perlPackages.NetHTTP: update from 6.05 to 6.06

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 2a18f79d2101..cb24b5801f65 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6267,10 +6267,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   NetHTTP = buildPerlPackage {
-    name = "Net-HTTP-6.05";
+    name = "Net-HTTP-6.06";
     src = fetchurl {
-      url = mirror://cpan/authors/id/G/GA/GAAS/Net-HTTP-6.05.tar.gz;
-      sha256 = "1r2bv3cw4m054qfsm6i7rpvhrql1d78izpc36prv3xvahfsqxawc";
+      url = mirror://cpan/authors/id/G/GA/GAAS/Net-HTTP-6.06.tar.gz;
+      sha256 = "1m1rvniffadq99gsy25298ia3lixwymr6kan64jd3ylyi7nkqkhx";
     };
     meta = {
       description = "Low-level HTTP connection (client)";

From acf86052dd046a318f25b82e9493449a4191e77d Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:55:44 +0200
Subject: [PATCH 277/567] perlPackages.NetLDAP: update from 0.43 to 0.4001

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index cb24b5801f65..49ebe0623033 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6290,11 +6290,11 @@ let self = _self // overrides; _self = with self; {
   };
 
   NetLDAP = buildPerlPackage {
-    name = "Net-LDAP-0.43";
+    name = "Net-LDAP-0.4001";
     propagatedBuildInputs = [ ConvertASN1 ];
     src = fetchurl {
-      url = mirror://cpan/authors/id/G/GB/GBARR/perl-ldap-0.43.tar.gz;
-      sha256 = "0ak7393zs8ps6r6in5ilr9l1mzxxh529jr768sjzx4273p7li3m0";
+      url = mirror://cpan/authors/id/G/GB/GBARR/perl-ldap-0.4001.tar.gz;
+      sha256 = "0spwid70yxkh5zbad3ldw8yb2m5shkm59a7f0kllw8bb7ccczqps";
     };
   };
 

From d94a1ee167cede96ab1aa8dfa3459c7820316da1 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:55:50 +0200
Subject: [PATCH 278/567] perlPackages.NetOpenIDCommon: update from 1.14 to
 1.18

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 49ebe0623033..13ada85e0194 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6455,10 +6455,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   NetOpenIDCommon = buildPerlPackage rec {
-    name = "Net-OpenID-Common-1.14";
+    name = "Net-OpenID-Common-1.18";
     src = fetchurl {
       url = "mirror://cpan/authors/id/W/WR/WROG/${name}.tar.gz";
-      sha256 = "24ac83539b188d85bd2c7bd67e355aab0ede3f98170b23cb50bd30b11b4387ff";
+      sha256 = "13hy5j6hcggb4l2r4pnwdh30p20wwja0chpmqm8y6wnnsp1km07f";
     };
     propagatedBuildInputs = [ CryptDHGMP URI HTMLParser HTTPMessage XMLSimple ];
   };

From 2a1b8bc26a3c3ecab22edcdab0e17233397d1f7c Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:55:55 +0200
Subject: [PATCH 279/567] perlPackages.NetOpenIDConsumer: update from 1.13 to
 1.15

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 13ada85e0194..c64c61670379 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6464,10 +6464,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   NetOpenIDConsumer = buildPerlPackage rec {
-    name = "Net-OpenID-Consumer-1.13";
+    name = "Net-OpenID-Consumer-1.15";
     src = fetchurl {
       url = "mirror://cpan/authors/id/W/WR/WROG/${name}.tar.gz";
-      sha256 = "4ab927b6756366fa4cef2b54088645849f32fc7e0cd8de0a50001bbf62946fd8";
+      sha256 = "1nh9988436rmmmd6x2zz1fyrqy2005a1gvqzgvnc1pg2ylg61fqf";
     };
     propagatedBuildInputs = [ NetOpenIDCommon JSON LWP ];
   };

From 97e5d3c0d0dfc2696445f4121e3ad9f8ab1d680b Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:55:59 +0200
Subject: [PATCH 280/567] perlPackages.NetSMTP: update from 1.22 to 1.25

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index c64c61670379..f555f676ba71 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6341,10 +6341,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   NetSMTP = buildPerlPackage {
-    name = "Net-SMTP-1.22";
+    name = "Net-SMTP-1.25";
     src = fetchurl {
-      url = mirror://cpan/authors/id/G/GB/GBARR/libnet-1.22.tar.gz;
-      sha256 = "113c36qilbvd69yhkm2i2ba20ajff7cdpgvlqx96j9bb1hfmhb1p";
+      url = mirror://cpan/authors/id/S/SH/SHAY/libnet-1.25.tar.gz;
+      sha256 = "01f3l4aj3ynl8syyrl122k4bmfds77yw5q36aafrgaq22fnb3b2a";
     };
     patchPhase = "chmod a-x Configure";
     doCheck = false; # The test suite fails, because it requires network access.

From 0c5d9983bf0e9943f7c3677336c43ca7937ab3cf Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:56:02 +0200
Subject: [PATCH 281/567] perlPackages.NetSSLeay: update from 1.52 to 1.58

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index f555f676ba71..d19aaf2d5ac0 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6378,10 +6378,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   NetSSLeay = buildPerlPackage rec {
-    name = "Net-SSLeay-1.52";
+    name = "Net-SSLeay-1.58";
     src = fetchurl {
-      url = "mirror://cpan/modules/by-module/Net/${name}.tar.gz";
-      sha256 = "1fkpdlpg99rdq2vlm6bgmqc8iazhcrfzvbpwxnn20k0viwpy7v28";
+      url = "mirror://cpan/authors/id/M/MI/MIKEM/${name}.tar.gz";
+      sha256 = "0mizg2g07fa4c13zpnhmjc87psal5gp5hi23kqpynigmkp0m1p0b";
     };
     buildInputs = [ pkgs.openssl ];
     OPENSSL_PREFIX = pkgs.openssl;

From 630586c6059af3acb68f8c40037c7e098cdd43e6 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:56:07 +0200
Subject: [PATCH 282/567] perlPackages.NumberCompare: update from 0.01 to 0.03

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index d19aaf2d5ac0..fea135fa8883 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6408,10 +6408,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   NumberCompare = buildPerlPackage rec {
-    name = "Number-Compare-0.01";
+    name = "Number-Compare-0.03";
     src = fetchurl {
-      url = "mirror://cpan/modules/by-module/Number/${name}.tar.gz";
-      sha256 = "1vs95lbax3f63jg98jwkiahlvg1jhmd0xyyzmbxxifsl7fkv1d9j";
+      url = "mirror://cpan/authors/id/R/RC/RCLAMP/${name}.tar.gz";
+      sha256 = "09q8i0mxvr7q9vajwlgawsi0hlpc119gnhq4hc933d03x0vkfac3";
     };
   };
 

From 68dd97208cb5c4b285d886b258737b46f6d156dd Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:56:11 +0200
Subject: [PATCH 283/567] perlPackages.ObjectInsideOut: update from 3.97 to
 3.98

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index fea135fa8883..8279bce760ce 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6424,10 +6424,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ObjectInsideOut = buildPerlPackage {
-    name = "Object-InsideOut-3.97";
+    name = "Object-InsideOut-3.98";
     src = fetchurl {
-      url = mirror://cpan/authors/id/J/JD/JDHEDDEN/Object-InsideOut-3.97.tar.gz;
-      sha256 = "19yr15w361lxxx2djy0ciwjpyd5bcs0skm3yw97w3xidw6r0wf0v";
+      url = mirror://cpan/authors/id/J/JD/JDHEDDEN/Object-InsideOut-3.98.tar.gz;
+      sha256 = "1zxfm2797p8b9dsvnbgd6aa4mgpxqxjqzbpfbla1g7f9alxm9f1z";
     };
     propagatedBuildInputs = [ ExceptionClass ];
     meta = {

From ab6accf891b28372eb7fb3cab8b0d310b9568f7c Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:56:43 +0200
Subject: [PATCH 284/567] perlPackages.ObjectSignature: update from 1.05 to
 1.07

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 8279bce760ce..6c38c8f6c2a2 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6439,10 +6439,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ObjectSignature = buildPerlPackage {
-    name = "Object-Signature-1.05";
+    name = "Object-Signature-1.07";
     src = fetchurl {
-      url = mirror://cpan/authors/id/A/AD/ADAMK/Object-Signature-1.05.tar.gz;
-      sha256 = "10k9j18jpb16brv0hs7592r7hx877290pafb8gnk6ydy7hcq9r2j";
+      url = mirror://cpan/authors/id/A/AD/ADAMK/Object-Signature-1.07.tar.gz;
+      sha256 = "0c8l7195bjvx0v6zmkgdnxvwg7yj2zq8hi7xd25a3iikd12dc4f6";
     };
   };
 

From c07679d2efbc8568a637736a6d33359c1e3133c3 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:56:47 +0200
Subject: [PATCH 285/567] perlPackages.PPIxRegexp: update from 0.034 to 0.036

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 6c38c8f6c2a2..de57c1c5b70b 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6788,10 +6788,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   PPIxRegexp = buildPerlPackage {
-    name = "PPIx-Regexp-0.034";
+    name = "PPIx-Regexp-0.036";
     src = fetchurl {
-      url = mirror://cpan/authors/id/W/WY/WYANT/PPIx-Regexp-0.034.tar.gz;
-      sha256 = "512a358f4bd6196df0601ff36f7831e0ba142fb8ef2bc3995e19bceabd0b5ae7";
+      url = mirror://cpan/authors/id/W/WY/WYANT/PPIx-Regexp-0.036.tar.gz;
+      sha256 = "1nnaxf1dmywacdgh8f1s2ki8jkrf2vi6bfhk70p1r9k1001idlfk";
     };
     propagatedBuildInputs = [ ListMoreUtils PPI TaskWeaken ];
     meta = {

From fcec9de869b4833318b2eb2094469d35275078c6 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:56:51 +0200
Subject: [PATCH 286/567] perlPackages.PSGI: update from 1.03 to 1.102

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index de57c1c5b70b..84b41d8b716a 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6824,10 +6824,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   PSGI = buildPerlPackage rec {
-    name = "PSGI-1.03";
+    name = "PSGI-1.102";
     src = fetchurl {
       url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/${name}.tar.gz";
-      sha256 = "0b1k7smg50xfdhrjifa2gkkm52vna41alvbw8vb2pk99jmgnngh6";
+      sha256 = "0iqzxs8fv63510knm3zr3jr3ky4x7diwd7y24mlshzci81kl8v55";
     };
   };
 

From 5adbf4d447a4dd1229eaeb0627834e5e444d7083 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:56:55 +0200
Subject: [PATCH 287/567] perlPackages.PackageStash: update from 0.34 to 0.36

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 84b41d8b716a..2e9339042ff8 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6488,10 +6488,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   PackageStash = buildPerlPackage {
-    name = "Package-Stash-0.34";
+    name = "Package-Stash-0.36";
     src = fetchurl {
-      url = mirror://cpan/authors/id/D/DO/DOY/Package-Stash-0.34.tar.gz;
-      sha256 = "1674zs96ndq3czs6v8xkdqqz4fnka0i2835nnns9zbw2q01yirj6";
+      url = mirror://cpan/authors/id/D/DO/DOY/Package-Stash-0.36.tar.gz;
+      sha256 = "1wbkdkm5gp5cpp84kr9cbbsrg0v908kxrcg4k86mx8ypgj6g8750";
     };
     buildInputs = [ DistCheckConflicts TestFatal TestRequires ];
     propagatedBuildInputs = [ DistCheckConflicts ModuleImplementation PackageDeprecationManager ];

From 3aed6ef4e900a0921e04a25c67cd212f2f950ae4 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:56:59 +0200
Subject: [PATCH 288/567] perlPackages.PackageStashXS: update from 0.26 to 0.28

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 2e9339042ff8..ef5e8d28e5af 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6503,10 +6503,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   PackageStashXS = buildPerlPackage {
-    name = "Package-Stash-XS-0.26";
+    name = "Package-Stash-XS-0.28";
     src = fetchurl {
-      url = mirror://cpan/authors/id/D/DO/DOY/Package-Stash-XS-0.26.tar.gz;
-      sha256 = "1pfdpb3x40f5ldp5kp0d9xvrz4wk2fc3ww53wrq4dp326s08h7r9";
+      url = mirror://cpan/authors/id/D/DO/DOY/Package-Stash-XS-0.28.tar.gz;
+      sha256 = "11nl69n8i56p91pd0ia44ip0vpv2cxwpbfakrv01vvv8az1cbn13";
     };
     buildInputs = [ TestRequires TestFatal ];
     meta = {

From 5a410b1a9d46f164ce3c5e8a73d8e1dba7e075ec Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:57:03 +0200
Subject: [PATCH 289/567] perlPackages.PadWalker: update from 1.96 to 1.98

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index ef5e8d28e5af..49748367f66a 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6832,10 +6832,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   PadWalker = buildPerlPackage {
-    name = "PadWalker-1.96";
+    name = "PadWalker-1.98";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RO/ROBIN/PadWalker-1.96.tar.gz;
-      sha256 = "180c72l3ssnsdbyifl9lzdz83x4zidf3nfgyx6l0j41a5wj0w9fz";
+      url = mirror://cpan/authors/id/R/RO/ROBIN/PadWalker-1.98.tar.gz;
+      sha256 = "0v2pldb5awflf10w1p9pwn8w37lkpfc2h459gd9zz6p57883ibw0";
     };
     meta = {
     };

From 2c967e872eadf17f132bdcf639d39a60f547dc27 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:57:06 +0200
Subject: [PATCH 290/567] perlPackages.ParamsValidate: update from 1.07 to 1.08

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 49748367f66a..bc6fca2944f3 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6539,10 +6539,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ParamsValidate = buildPerlModule {
-    name = "Params-Validate-1.07";
+    name = "Params-Validate-1.08";
     src = fetchurl {
-      url = mirror://cpan/authors/id/D/DR/DROLSKY/Params-Validate-1.07.tar.gz;
-      sha256 = "15mz2wxarxjlr3365m1hhcnfs6d2mw3m0yimnlv06j13cxs39py1";
+      url = mirror://cpan/authors/id/D/DR/DROLSKY/Params-Validate-1.08.tar.gz;
+      sha256 = "0641hbz5bx6jnk8dx2djnkd67fh7h1zx6x1bgmivkrh2yky9ch6h";
     };
     buildInputs = [ TestFatal ];
     propagatedBuildInputs = [ ModuleImplementation ];

From 0f845d8e8b16807653c5608359a2a77d8bae52a1 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:57:10 +0200
Subject: [PATCH 291/567] perlPackages.ParseRecDescent: update from 1.965001 to
 1.967009

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index bc6fca2944f3..03afc7288df9 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6582,10 +6582,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ParseRecDescent = buildPerlPackage rec {
-    name = "Parse-RecDescent-1.965001";
+    name = "Parse-RecDescent-1.967009";
     src = fetchurl {
-      url = "mirror://cpan/authors/id/D/DC/DCONWAY/${name}.tar.gz";
-      sha256 = "0r4dnrjgxv5irkyx1kgkg8vj6wqx67q5hbkifpb54906kc1n7yh0";
+      url = "mirror://cpan/authors/id/J/JT/JTBRAUN/${name}.tar.gz";
+      sha256 = "11y6fpz4j6kdimyaz2a6ig0jz0x7csqslhxaipxnjqi5h85hy071";
     };
   };
 

From 745dd43b0513b359b86f1d0c30e4ec515c43cc17 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:57:13 +0200
Subject: [PATCH 292/567] perlPackages.PathClass: update from 0.29 to 0.33

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 03afc7288df9..f825775ba54d 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6590,10 +6590,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   PathClass = buildPerlPackage {
-    name = "Path-Class-0.29";
+    name = "Path-Class-0.33";
     src = fetchurl {
-      url = mirror://cpan/authors/id/K/KW/KWILLIAMS/Path-Class-0.29.tar.gz;
-      sha256 = "1z3wvci2qcb1m9qrkxphbnfnr4jqgxbxnxrmdb25ks8gap98hk4z";
+      url = mirror://cpan/authors/id/K/KW/KWILLIAMS/Path-Class-0.33.tar.gz;
+      sha256 = "0xy6s04xpslpzbb90x67yvfv0pjqnj1szxlx16vfx690iskcd36d";
     };
     meta = {
       description = "Cross-platform path specification manipulation";

From 09c37dbe2e2e293ddd0329789915d5326e9bac38 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:57:17 +0200
Subject: [PATCH 293/567] perlPackages.PathTiny: update from 0.026 to 0.052

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index f825775ba54d..b850d6f8514b 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6602,10 +6602,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   PathTiny = buildPerlPackage {
-    name = "Path-Tiny-0.026";
+    name = "Path-Tiny-0.052";
     src = fetchurl {
-      url = mirror://cpan/authors/id/D/DA/DAGOLDEN/Path-Tiny-0.026.tar.gz;
-      sha256 = "e79ee187bbf7fdef387886a8c929bd0a1171fb54db1984d79f4e04d90f733cc6";
+      url = mirror://cpan/authors/id/D/DA/DAGOLDEN/Path-Tiny-0.052.tar.gz;
+      sha256 = "1b70yhbdww9k5m4a4lhdd71jrxdxhi10533slmxynxa04nyn2f0a";
     };
     buildInputs = [ DevelHide Filepushd TestDeep TestFailWarnings TestFatal perl ];
     propagatedBuildInputs = [ autodie ];

From ef5891c1fbb7ada5a39997defe000563882e8708 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:57:20 +0200
Subject: [PATCH 294/567] perlPackages.PerlCritic: update from 1.118 to 1.121

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index b850d6f8514b..74a2f40df1f2 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6635,10 +6635,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   PerlCritic = buildPerlPackage {
-    name = "Perl-Critic-1.118";
+    name = "Perl-Critic-1.121";
     src = fetchurl {
-      url = mirror://cpan/authors/id/T/TH/THALJEF/Perl-Critic-1.118.tar.gz;
-      sha256 = "666d2bef3ac924598c06a05277680da5910e10d94c5ec161336f6509c11155e8";
+      url = mirror://cpan/authors/id/T/TH/THALJEF/Perl-Critic-1.121.tar.gz;
+      sha256 = "1y2bxjwzlp6ix51h36a5g3dqpaviaajij1rn22hpvcqxh4hh6car";
     };
     buildInputs = [ TestDeep ];
     propagatedBuildInputs = [ BKeywords ConfigTiny EmailAddress ExceptionClass IOString ListMoreUtils PPI PPIxRegexp PPIxUtilities PerlTidy PodSpell Readonly StringFormat TaskWeaken ];

From 3594bdb5086e9f0ed3116f53212ea154fb6d44ce Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:57:24 +0200
Subject: [PATCH 295/567] perlPackages.PerlIOviadynamic: update from 0.12 to
 0.14

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 74a2f40df1f2..2e69e8f009d4 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6658,10 +6658,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   PerlIOviadynamic = buildPerlPackage {
-    name = "PerlIO-via-dynamic-0.12";
+    name = "PerlIO-via-dynamic-0.14";
     src = fetchurl {
-      url = mirror://cpan/authors/id/C/CL/CLKAO/PerlIO-via-dynamic-0.12.tar.gz;
-      sha256 = "140hay9q8q9sz1fa2s57ijp5l2448fkcg7indgn6k4vc7yshmqz2";
+      url = mirror://cpan/authors/id/A/AL/ALEXMV/PerlIO-via-dynamic-0.14.tar.gz;
+      sha256 = "0jbb3xpbqzmr625blvnjszd69l3cwxzi7bhmkj5x48dgv3s7mkca";
     };
   };
 

From f85e0bf18d91bb91b1dc406d53890e13de97f711 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:57:29 +0200
Subject: [PATCH 296/567] perlPackages.PerlMagick: update from 6.86 to 6.87

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 2e69e8f009d4..c883549dbd01 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6674,10 +6674,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   PerlMagick = buildPerlPackage rec {
-    name = "PerlMagick-6.86";
+    name = "PerlMagick-6.87";
     src = fetchurl {
       url = "mirror://cpan/authors/id/J/JC/JCRISTY/${name}.tar.gz";
-      sha256 = "18xgh8r9pjxg9yi119gnsln1r4p4sk1r8bxd3iy0qj77frmksisi";
+      sha256 = "1bf2g80wdny2dfrrmfgk7cqrxzflx3qp1dnd3919grvrqdviyh16";
     };
     buildInputs = [pkgs.imagemagick];
     preConfigure =

From 16baef6c4f6aaee80100282e9558792446a3f6df Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:57:34 +0200
Subject: [PATCH 297/567] perlPackages.PerlOSType: update from 1.002 to 1.007

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index c883549dbd01..b65a59a48ad7 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6688,10 +6688,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   PerlOSType = buildPerlPackage rec {
-    name = "Perl-OSType-1.002";
+    name = "Perl-OSType-1.007";
     src = fetchurl {
-      url = "mirror://cpan/modules/by-module/Perl/${name}.tar.gz";
-      sha256 = "0clbfgq0800dip3821ibh29vrwcc159qnakidbiqrmhcisd95xbs";
+      url = "mirror://cpan/authors/id/D/DA/DAGOLDEN/${name}.tar.gz";
+      sha256 = "0aryn8dracfjfnks07b5rvsza4csinlsj6cn92jv3sv8sg3rmdxk";
     };
   };
 

From 5ba155ff1c53ca3862d69b06925da1403a903615 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:57:37 +0200
Subject: [PATCH 298/567] perlPackages.PerlPrereqScanner: update from 1.018 to
 1.019

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index b65a59a48ad7..cfb703536720 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6864,10 +6864,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   PerlPrereqScanner = buildPerlPackage {
-    name = "Perl-PrereqScanner-1.018";
+    name = "Perl-PrereqScanner-1.019";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RJ/RJBS/Perl-PrereqScanner-1.018.tar.gz;
-      sha256 = "11zkam8svpgcjhjda0ap3afd797a69ndcc64fy3xw0j8v8kxa6hc";
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Perl-PrereqScanner-1.019.tar.gz;
+      sha256 = "1ndgq2c7s1042c3zxjsmjfpf4lnwfg6w36hmvhh3yk9qihcprbgj";
     };
     buildInputs = [ PPI TryTiny ];
     propagatedBuildInputs = [ GetoptLongDescriptive ListMoreUtils ModulePath Moose PPI ParamsUtil StringRewritePrefix namespaceautoclean ];

From 0dc0068ac9ee720860e95e029f8e470bb16ea7ad Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:57:40 +0200
Subject: [PATCH 299/567] perlPackages.Plack: update from 1.0024 to 1.0030

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index cfb703536720..b89597188e92 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6716,10 +6716,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   Plack = buildPerlPackage {
-    name = "Plack-1.0024";
+    name = "Plack-1.0030";
     src = fetchurl {
-      url = mirror://cpan/authors/id/M/MI/MIYAGAWA/Plack-1.0024.tar.gz;
-      sha256 = "485f69275d73401739a829cfee3bbc9bfa20a0843470791066365ac07fac04a1";
+      url = mirror://cpan/authors/id/M/MI/MIYAGAWA/Plack-1.0030.tar.gz;
+      sha256 = "0bb9aqb0h9q4qjgkw756gf695h4qg6vim54s6f2icgsazdi63zq7";
     };
     buildInputs = [ FileShareDirInstall TestRequires ];
     propagatedBuildInputs = [ ApacheLogFormatCompiler DevelStackTrace DevelStackTraceAsHTML FileShareDir FilesysNotifySimple HTTPBody HTTPMessage HashMultiValue LWP StreamBuffered TestTCP TryTiny URI ];

From c7298cceb513a779bac9b708397d02cf38ed6614 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:57:44 +0200
Subject: [PATCH 300/567] perlPackages.PodCoverage: update from 0.19 to 0.23

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index b89597188e92..e48fbd255e8c 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6892,10 +6892,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   PodCoverage = buildPerlPackage rec {
-    name = "Pod-Coverage-0.19";
+    name = "Pod-Coverage-0.23";
     src = fetchurl {
       url = "mirror://cpan/authors/id/R/RC/RCLAMP/${name}.tar.gz";
-      sha256 = "1krsz4zwmnmq3z29p5vmyr5fdzrn8v0sg6rf3qxk7xpxw4z5np84";
+      sha256 = "01xifj83dv492lxixijmg6va02rf3ydlxly0a9slmx22r6qa1drh";
     };
     propagatedBuildInputs = [DevelSymdump];
   };

From de844a8a78d0df67db34ed116ac922f58bb6db07 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:57:47 +0200
Subject: [PATCH 301/567] perlPackages.PodElemental: update from 0.102362 to
 0.103000

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index e48fbd255e8c..aebf06dc4455 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6915,10 +6915,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   PodElemental = buildPerlPackage {
-    name = "Pod-Elemental-0.102362";
+    name = "Pod-Elemental-0.103000";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RJ/RJBS/Pod-Elemental-0.102362.tar.gz;
-      sha256 = "2b56a2783650f170bc7131bb36de65e4e3372a54bab596a798debebbf2af8732";
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Pod-Elemental-0.103000.tar.gz;
+      sha256 = "0ykf49n6ysm7ab5zwm8a009zzrzsnhxw94a9jvbq80yywzhnm847";
     };
     buildInputs = [ TestDeep TestDifferences ];
     propagatedBuildInputs = [ MixinLinewise Moose MooseAutobox MooseXTypes PodEventual StringRewritePrefix StringTruncate SubExporter SubExporterForMethods TestDeep TestDifferences namespaceautoclean ];

From 61db692996eb72e71af38896dc90b8ac740a541d Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:57:50 +0200
Subject: [PATCH 302/567] perlPackages.PodEscapes: update from 1.04 to 1.06

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index aebf06dc4455..b89484f2ba28 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6945,10 +6945,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   PodEscapes = buildPerlPackage {
-    name = "Pod-Escapes-1.04";
+    name = "Pod-Escapes-1.06";
     src = fetchurl {
-      url = mirror://cpan/authors/id/S/SB/SBURKE/Pod-Escapes-1.04.tar.gz;
-      sha256 = "1wrg5dnsl785ygga7bp6qmakhjgh9n4g3jp2l85ab02r502cagig";
+      url = mirror://cpan/authors/id/N/NE/NEILB/Pod-Escapes-1.06.tar.gz;
+      sha256 = "15dpzlgc2ywyxk2svc810nmyx6pm1nj8cji7a0rqr9x6m0v11xdm";
     };
   };
 

From 4ee3b69644f3cae7b5b8b3dae23344e8c3a6b1bf Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:57:54 +0200
Subject: [PATCH 303/567] perlPackages.PodMarkdown: update from 1.322 to 2.000

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index b89484f2ba28..0a1423801269 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6980,10 +6980,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   PodMarkdown = buildPerlPackage {
-    name = "Pod-Markdown-1.322";
+    name = "Pod-Markdown-2.000";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RW/RWSTAUNER/Pod-Markdown-1.322.tar.gz;
-      sha256 = "375091d89d9662b0c41bedad391927d6904d05f740e1bb689b494b4b35e979f7";
+      url = mirror://cpan/authors/id/R/RW/RWSTAUNER/Pod-Markdown-2.000.tar.gz;
+      sha256 = "0qix7gmrc2ypm5dl1w5ajnjy32xlmy73wb3zycc1pxl5lipigsx8";
     };
     buildInputs = [ TestDifferences ];
     meta = {

From b587ad6d82b04b5dd9a66afddf4ba98d6739f1e7 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:57:58 +0200
Subject: [PATCH 304/567] perlPackages.ProbePerl: update from 0.01 to 0.03

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 0a1423801269..0a836ea53d16 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -7026,10 +7026,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ProbePerl = buildPerlPackage rec {
-    name = "Probe-Perl-0.01";
+    name = "Probe-Perl-0.03";
     src = fetchurl {
       url = "mirror://cpan/authors/id/K/KW/KWILLIAMS/${name}.tar.gz";
-      sha256 = "9b7d211139e42b2a2952c9a4b9f55ac12705e256f4a0acd4ac6ff665aeaddd87";
+      sha256 = "0c9wiaz0mqqknafr4jdr0g2gdzxnn539182z0icqaqvp5qgd5r6r";
     };
   };
 

From 4c6399941c6a8ef338cd5145fdcdff9322f55914 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:58:01 +0200
Subject: [PATCH 305/567] perlPackages.Redis: update from 1.961 to 1.2001

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 0a836ea53d16..1e5c5892f366 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -7050,10 +7050,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   Redis = buildPerlPackage {
-    name = "Redis-1.961";
+    name = "Redis-1.2001";
     src = fetchurl {
-      url = mirror://cpan/authors/id/M/ME/MELO/Redis-1.961.tar.gz;
-      sha256 = "029g4s1ima354yv1j26nlq4f0yahkllkibicml6p3mj5gg2ywbbq";
+      url = mirror://cpan/authors/id/D/DP/DPAVLIN/Redis-1.2001.tar.gz;
+      sha256 = "1d16dr2qjmb3vswghrk5ygggcmz2rzw7qnw3g87prwi08z5ryih0";
     };
     buildInputs = [ IOString TestDeep TestFatal ];
     propagatedBuildInputs = [ TryTiny ];

From a051b5a491f5ed082f0de0c22013935855e88bc9 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:58:05 +0200
Subject: [PATCH 306/567] perlPackages.ReturnValue: update from 1.302 to
 1.666004

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 1e5c5892f366..238fd657ebf2 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -7130,10 +7130,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ReturnValue = buildPerlPackage {
-    name = "Return-Value-1.302";
+    name = "Return-Value-1.666004";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RJ/RJBS/Return-Value-1.302.tar.gz;
-      sha256 = "0hf5rmfap49jh8dnggdpvapy5r4awgx5hdc3acc9ff0vfqav8azm";
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Return-Value-1.666004.tar.gz;
+      sha256 = "0xr7ic212p36arzdpph2l2yy1y88c7qaf4nng3gqb29zc9kzy3bc";
     };
   };
 

From 9ca920edd45befcce8ddf98a0065e3aef89261d7 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:58:08 +0200
Subject: [PATCH 307/567] perlPackages.RoleHasMessage: update from 0.005 to
 0.006

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 238fd657ebf2..cdb514c26abc 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -7138,10 +7138,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   RoleHasMessage = buildPerlPackage {
-    name = "Role-HasMessage-0.005";
+    name = "Role-HasMessage-0.006";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RJ/RJBS/Role-HasMessage-0.005.tar.gz;
-      sha256 = "bc6cecf3022159dc415fb931e38291425d6aa8a9542d980b14ea692141337ca9";
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Role-HasMessage-0.006.tar.gz;
+      sha256 = "1lylfvarjfy6wy34dfny3032pc6r33mjby5yzzhmxybg8zhdp9pn";
     };
     buildInputs = [ Moose ];
     propagatedBuildInputs = [ Moose MooseXRoleParameterized StringErrf TryTiny namespaceclean ];

From 53a801d5694aaa36d2939d3f6b080e55fa002fa7 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:58:11 +0200
Subject: [PATCH 308/567] perlPackages.RoleIdentifiable: update from 0.005 to
 0.007

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index cdb514c26abc..6f6d68615e0f 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -7152,10 +7152,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   RoleIdentifiable = buildPerlPackage {
-    name = "Role-Identifiable-0.005";
+    name = "Role-Identifiable-0.007";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RJ/RJBS/Role-Identifiable-0.005.tar.gz;
-      sha256 = "86910b6052d50bc64d1613bc1274f2ae17d553bfc3f0247a3fe3f7bb2cdd3aee";
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Role-Identifiable-0.007.tar.gz;
+      sha256 = "1bbkj2wqpbfdw1cbm99vg9d94rvzba19m18xhnylaym0l78lc4sn";
     };
     buildInputs = [ Moose ];
     propagatedBuildInputs = [ Moose ];

From 36e00c99bc75903509a51ed180c1459473d29b7c Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:58:15 +0200
Subject: [PATCH 309/567] perlPackages.RoleTiny: update from 1.002004 to
 1.003003

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 6f6d68615e0f..ed7a71f0bad1 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -7166,10 +7166,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   RoleTiny = buildPerlPackage {
-    name = "Role-Tiny-1.002004";
+    name = "Role-Tiny-1.003003";
     src = fetchurl {
-      url = mirror://cpan/authors/id/I/IL/ILMARI/Role-Tiny-1.002004.tar.gz;
-      sha256 = "0n126kazifmx6grdk4rmq226xklfc996cqw4ix26z9jcccl4v756";
+      url = mirror://cpan/authors/id/H/HA/HAARG/Role-Tiny-1.003003.tar.gz;
+      sha256 = "1k823g4wnya18yx2v1xrfl73qqavqpzvaydyg1r7gdzcdvdwl4mp";
     };
     buildInputs = [ TestFatal ];
     meta = {

From 290b3b42c86a9d1f8cb55340cb9c887e3bb8b84d Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:58:18 +0200
Subject: [PATCH 310/567] perlPackages.RpcXML: update from 0.73 to 0.78

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index ed7a71f0bad1..31fbf128bc58 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -7120,10 +7120,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   RpcXML = buildPerlPackage {
-    name = "RPC-XML-0.73";
+    name = "RPC-XML-0.78";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RJ/RJRAY/RPC-XML-0.73.tar.gz;
-      sha256 = "a023649603240e7a19fc52a8316a41c854639c0600058ea4d1e436fe1b1b7734";
+      url = mirror://cpan/authors/id/R/RJ/RJRAY/RPC-XML-0.78.tar.gz;
+      sha256 = "0spci3sj2hq9k916sk9k2gchqrbnz9lwmlcnwf1k33wzl8j2gh52";
     };
     propagatedBuildInputs = [LWP XMLLibXML XMLParser];
     doCheck = false;

From 9f4358e8d58c86debb908bee51a1b8b78692947d Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:58:23 +0200
Subject: [PATCH 311/567] perlPackages.SOAPLite: update from 0.716 to 1.11

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 31fbf128bc58..074f439415bf 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -7278,10 +7278,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   SOAPLite = buildPerlPackage {
-    name = "SOAP-Lite-0.716";
+    name = "SOAP-Lite-1.11";
     src = fetchurl {
-      url = mirror://cpan/authors/id/P/PH/PHRED/SOAP-Lite-0.716.tar.gz;
-      sha256 = "0vhnv5bdhy3gzwiaw1ly69r7lxvahz796v210x5nyij7a04ndwbz";
+      url = mirror://cpan/authors/id/P/PH/PHRED/SOAP-Lite-1.11.tar.gz;
+      sha256 = "1zhy06v72r95ih3lx5rlx0bvkq214ndmcmn97m5k2rkxxy4ybpp4";
     };
     propagatedBuildInputs = [ ClassInspector HTTPDaemon LWP TaskWeaken URI XMLParser ];
     meta = {

From 4578679a41219bbe29e5cc25b164c083da02d43c Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:58:26 +0200
Subject: [PATCH 312/567] perlPackages.SafeIsa: update from 1.000002 to
 1.000004

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 074f439415bf..ea06e2c3ed2f 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -7192,10 +7192,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   SafeIsa = buildPerlPackage {
-    name = "Safe-Isa-1.000002";
+    name = "Safe-Isa-1.000004";
     src = fetchurl {
-      url = mirror://cpan/authors/id/M/MS/MSTROUT/Safe-Isa-1.000002.tar.gz;
-      sha256 = "07jr4fy6zbw9zwpalxzxlkn4nym6fd0304fsrb5ag0v156ygpwvl";
+      url = mirror://cpan/authors/id/E/ET/ETHER/Safe-Isa-1.000004.tar.gz;
+      sha256 = "0sqwma0xqxrgnsm0jfy17szq87bskzq67cdh7p934qdifh5nfwn9";
     };
     meta = {
       homepage = http://search.cpan.org/perldoc?CPAN::Meta::Spec;

From 481cb548162cd7a35fbaa866c307475d49015344 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:58:29 +0200
Subject: [PATCH 313/567] perlPackages.ScopeUpper: update from 0.21 to 0.24

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index ea06e2c3ed2f..8048c066dafe 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -7225,10 +7225,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ScopeUpper = buildPerlPackage {
-    name = "Scope-Upper-0.21";
+    name = "Scope-Upper-0.24";
     src = fetchurl {
-      url = mirror://cpan/authors/id/V/VP/VPIT/Scope-Upper-0.21.tar.gz;
-      sha256 = "058nfnzp31k7hmdvbsr72nvrw0i23gwjplb6g6pag3s18m7fl1p6";
+      url = mirror://cpan/authors/id/V/VP/VPIT/Scope-Upper-0.24.tar.gz;
+      sha256 = "159jcwliyb7j80858pi052hkmhgy4cdbjha419kmhhqc9s1rhd5g";
     };
     meta = {
       homepage = http://search.cpan.org/dist/Scope-Upper/;

From a0bf9e77f3b073342b5e4dee08bf3023053e24d8 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:58:33 +0200
Subject: [PATCH 314/567] perlPackages.SetObject: update from 1.26 to 1.34

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 8048c066dafe..cac5f050deb2 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -7249,10 +7249,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   SetObject = buildPerlPackage {
-    name = "Set-Object-1.26";
+    name = "Set-Object-1.34";
     src = fetchurl {
-      url = mirror://cpan/authors/id/S/SA/SAMV/Set-Object-1.26.tar.gz;
-      sha256 = "1hx3wrw8xkvaggacc8zyn86hfi3079ahmia1n8vsw7dglp1bbhmj";
+      url = mirror://cpan/authors/id/R/RU/RURBAN/Set-Object-1.34.tar.gz;
+      sha256 = "1dipd6k572pzqjzbj9vagb2k347qcg29lsxzx9y214bhnw7fgvjp";
     };
   };
 

From e79643d5eab91ab5ae19ab457dcafca8ac29d3e7 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:58:36 +0200
Subject: [PATCH 315/567] perlPackages.SetScalar: update from 1.26 to 1.29

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index cac5f050deb2..a3fa4a3d27fa 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -7257,10 +7257,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   SetScalar = buildPerlPackage {
-    name = "Set-Scalar-1.26";
+    name = "Set-Scalar-1.29";
     src = fetchurl {
-      url = mirror://cpan/authors/id/J/JH/JHI/Set-Scalar-1.26.tar.gz;
-      sha256 = "121r9n8lqk081vjzn9ppm4zklz1l0c0v0ab94c05y5vrsn5l0zl8";
+      url = mirror://cpan/authors/id/D/DA/DAVIDO/Set-Scalar-1.29.tar.gz;
+      sha256 = "07aiqkyi1p22drpcyrrmv7f8qq6fhrxh007achy2vryxyck1bp53";
     };
     meta = {
       license = "perl";

From ffba45324f7d097b8b71b6041a0eedde06fa514a Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:58:40 +0200
Subject: [PATCH 316/567] perlPackages.Socket6: update from 0.23 to 0.25

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index a3fa4a3d27fa..8b84c885adc3 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -7293,10 +7293,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   Socket6 = buildPerlPackage rec {
-    name = "Socket6-0.23";
+    name = "Socket6-0.25";
     src = fetchurl {
       url = "mirror://cpan/authors/id/U/UM/UMEMOTO/${name}.tar.gz";
-      sha256 = "eda753f0197e8c3c8d4ab20a634561ce84011fa51aa5ff40d4dbcb326ace0833";
+      sha256 = "1ads4k4vvq6pnxkdw0s8gaj03w4h9snxyw7zyikfzd20fy76yx6s";
     };
     buildInputs = [ pkgs.which ];
   };

From 872ff90fd164715e18d132719a402b5caaf6e0db Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:58:45 +0200
Subject: [PATCH 317/567] perlPackages.SpreadsheetParseExcel: update from 0.58
 to 0.2603

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 8b84c885adc3..09509bad862d 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -7333,10 +7333,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   SpreadsheetParseExcel = buildPerlPackage rec {
-    name = "Spreadsheet-ParseExcel-0.58";
+    name = "Spreadsheet-ParseExcel-0.2603";
     src = fetchurl {
-      url = "mirror://cpan/authors/id/J/JM/JMCNAMARA/${name}.tar.gz";
-      sha256 = "1ha32kfgf0b9mk00dvsx0jq72xsx0qskmgrnixcdfh044lcxzk17";
+      url = "mirror://cpan/authors/id/K/KW/KWITKNR/${name}.tar.gz";
+      sha256 = "0q5qq982528cdpqdj2wszrnf5g2rfphx0b413lczx7nvkkyy9xqz";
     };
 
     propagatedBuildInputs = [ IOStringy OLEStorageLight ];

From 83e8666cdded9d0aadb6a12ca71c6b2be0825326 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:58:48 +0200
Subject: [PATCH 318/567] perlPackages.StringCRC32: update from 1.4 to 1.5

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 09509bad862d..765290eb9531 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -7494,10 +7494,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   StringCRC32 = buildPerlPackage rec {
-      name = "String-CRC32-1.4";
+      name = "String-CRC32-1.5";
       src = fetchurl {
-        url = mirror://cpan/authors/id/S/SO/SOENKE/String-CRC32-1.4.tar.gz;
-        sha256 = "0lc3d4szxagwzcw6pxq3mmkvdlrz2zkw4i13crf42nvivv7gda8l";
+        url = mirror://cpan/authors/id/S/SO/SOENKE/String-CRC32-1.5.tar.gz;
+        sha256 = "0m3hjk292hnxyi8nkfy8hlr1khnbf2clgkb4kzj0ycq8gcd2z0as";
       };
       meta = {
         maintainers = with maintainers; [ ocharles ];

From 110a78818e0ebb3d5f0c7aa4878e125fb835d15e Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:58:52 +0200
Subject: [PATCH 319/567] perlPackages.StringErrf: update from 0.006 to 0.007

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 765290eb9531..4c5c527e7072 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -7506,10 +7506,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   StringErrf = buildPerlPackage {
-    name = "String-Errf-0.006";
+    name = "String-Errf-0.007";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RJ/RJBS/String-Errf-0.006.tar.gz;
-      sha256 = "2c09631fbece8e85a94785abede882f5d29e0f21f72239d01332b3bafd9c53ac";
+      url = mirror://cpan/authors/id/R/RJ/RJBS/String-Errf-0.007.tar.gz;
+      sha256 = "1apnmxdsqwrvn1kkbba4sw6yh6hdfxxar545p6m9dkid7xsiqjfj";
     };
     buildInputs = [ JSON TimeDate ];
     propagatedBuildInputs = [ ParamsUtil StringFormatter SubExporter ];

From 9bac327a0dc8a3fdd6d7b787d51c401824e85ad6 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:58:55 +0200
Subject: [PATCH 320/567] perlPackages.StringFormat: update from 1.16 to 1.17

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 4c5c527e7072..c6801e252425 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -7546,10 +7546,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   StringFormat = buildPerlPackage rec {
-    name = "String-Format-1.16";
+    name = "String-Format-1.17";
     src = fetchurl {
       url = "mirror://cpan/authors/id/D/DA/DARREN/${name}.tar.gz";
-      sha256 = "edb27dd055ad71012a439f262f9394517adb585a5c27ba72c1819bae2c23729a";
+      sha256 = "0sxfavcsb349rfafxflq2f9h3xpxabrw0q7vhmh9n3hjij8fa1jk";
     };
   };
 

From 8a1d56b8fc09fb433fbc301d6239982e7b49ab77 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:58:58 +0200
Subject: [PATCH 321/567] perlPackages.StringMkPasswd: update from 0.02 to 0.05

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index c6801e252425..9eb790080373 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -7567,10 +7567,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   StringMkPasswd = buildPerlPackage {
-    name = "String-MkPasswd-0.02";
+    name = "String-MkPasswd-0.05";
     src = fetchurl {
-      url = mirror://cpan/authors/id/C/CG/CGRAU/String-MkPasswd-0.02.tar.gz;
-      sha256 = "0si4xfgf8c2pfag1cqbr9jbyvg3hak6wkmny56kn2qwa4ljp9bk6";
+      url = mirror://cpan/authors/id/C/CG/CGRAU/String-MkPasswd-0.05.tar.gz;
+      sha256 = "15lvcc8c9hp6mg3jx02wd3b85aphn8yl5db62q3pam04c0sgh42k";
     };
   };
 

From ba3e8121b730f40692c600d310882c49434504ea Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:59:02 +0200
Subject: [PATCH 322/567] perlPackages.StringRewritePrefix: update from 0.006
 to 0.007

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 9eb790080373..b7003dffa73c 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -7575,10 +7575,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   StringRewritePrefix = buildPerlPackage {
-    name = "String-RewritePrefix-0.006";
+    name = "String-RewritePrefix-0.007";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RJ/RJBS/String-RewritePrefix-0.006.tar.gz;
-      sha256 = "1b9fg805g0agsyij28w8hhmnf485bii8zl03i092mv1p2hqrpxll";
+      url = mirror://cpan/authors/id/R/RJ/RJBS/String-RewritePrefix-0.007.tar.gz;
+      sha256 = "18nxl1vgkcx0r7ifkmbl9fp73f8ihiqhqqf3vq6sj5b3cgawrfsw";
     };
     propagatedBuildInputs = [ SubExporter ];
     meta = {

From 2c6ece8bad0c7484c37f564c4c18fc622040d1a8 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:59:05 +0200
Subject: [PATCH 323/567] perlPackages.StringToIdentifierEN: update from 0.10
 to 0.11

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index b7003dffa73c..1fa0b9e11d67 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -7601,10 +7601,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   StringToIdentifierEN = buildPerlPackage rec {
-    name = "String-ToIdentifier-EN-0.10";
+    name = "String-ToIdentifier-EN-0.11";
     src = fetchurl {
-      url = "mirror://cpan/modules/by-module/String/${name}.tar.gz";
-      sha256 = "1xm0v1cq9hdgx4mswa9wdr2lqk7z9kh1bwjkx4wb5xljd0lxhas6";
+      url = "mirror://cpan/authors/id/R/RK/RKITOVER/${name}.tar.gz";
+      sha256 = "1bawghkgkkx7j3avnrj5sg3vix1z5564ks6wf9az3jc2knh8s5nh";
     };
     propagatedBuildInputs =
       [ LinguaENInflectPhrase TextUnidecode namespaceclean ];

From dfac5cabcebe6a2c380dc894e3357d94d7d36f91 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:59:08 +0200
Subject: [PATCH 324/567] perlPackages.StringTruncate: update from 1.100601 to
 1.100602

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 1fa0b9e11d67..86bc49b515b7 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -7611,10 +7611,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   StringTruncate = buildPerlPackage {
-    name = "String-Truncate-1.100601";
+    name = "String-Truncate-1.100602";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RJ/RJBS/String-Truncate-1.100601.tar.gz;
-      sha256 = "1mas04qa6sj6x34mid8i6swddcnb3c9zfkgkd72kvz5zip2f4f24";
+      url = mirror://cpan/authors/id/R/RJ/RJBS/String-Truncate-1.100602.tar.gz;
+      sha256 = "0vjz4fd4cvcy12gk5bdha7z73ifmfpmk748khha94dhiq3pd98xa";
     };
     propagatedBuildInputs = [ SubExporter SubInstall ];
     meta = {

From 38f98cb4f9a5b1d4a0df70398be7840e0e783166 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:59:12 +0200
Subject: [PATCH 325/567] perlPackages.SubExporterForMethods: update from
 0.100050 to 0.100051

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 86bc49b515b7..a6f6a971e8d0 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -7666,10 +7666,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   SubExporterForMethods = buildPerlPackage {
-    name = "Sub-Exporter-ForMethods-0.100050";
+    name = "Sub-Exporter-ForMethods-0.100051";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RJ/RJBS/Sub-Exporter-ForMethods-0.100050.tar.gz;
-      sha256 = "67dfaa39c58995ed1d341d7f2e785a68b7ba4ade72608f491459b8d2dee6df33";
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Sub-Exporter-ForMethods-0.100051.tar.gz;
+      sha256 = "127wniw53p7pp7r2vazicply3v1gmnhw4w7jl6p74i0grnsixipm";
     };
     propagatedBuildInputs = [ SubExporter SubName ];
     meta = {

From 515e5a3bee5f2b075f3de8d3aca43bd20875216b Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:59:16 +0200
Subject: [PATCH 326/567] perlPackages.SubExporterGlobExporter: update from
 0.003 to 0.004

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index a6f6a971e8d0..0918a933ace8 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -7679,10 +7679,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   SubExporterGlobExporter = buildPerlPackage {
-    name = "Sub-Exporter-GlobExporter-0.003";
+    name = "Sub-Exporter-GlobExporter-0.004";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RJ/RJBS/Sub-Exporter-GlobExporter-0.003.tar.gz;
-      sha256 = "4cb082331151360756f3b2f8122fdd44597a207d62bd3f2ecb13578005116ab1";
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Sub-Exporter-GlobExporter-0.004.tar.gz;
+      sha256 = "025wgjavrbzh52jb4v0w2fxqh7r5181k935h9cyy2rm1qk49fg8p";
     };
     propagatedBuildInputs = [ SubExporter ];
     meta = {

From 2443fb656b716ba960e10a65acb7fbbb6f76f72c Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:59:20 +0200
Subject: [PATCH 327/567] perlPackages.SubExporterProgressive: update from
 0.001006 to 0.001011

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 0918a933ace8..ceefcf8cfcb5 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -7693,10 +7693,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   SubExporterProgressive = buildPerlPackage {
-    name = "Sub-Exporter-Progressive-0.001006";
+    name = "Sub-Exporter-Progressive-0.001011";
     src = fetchurl {
-      url = mirror://cpan/authors/id/L/LE/LEONT/Sub-Exporter-Progressive-0.001006.tar.gz;
-      sha256 = "0s13fz86c8slhgban10sywp2skjdxnl3nvkqqy7pbwg81g3v9rr2";
+      url = mirror://cpan/authors/id/F/FR/FREW/Sub-Exporter-Progressive-0.001011.tar.gz;
+      sha256 = "01kwzbqwdhvadpphnczid03nlyj0h4cxaq3m3v2401bckkkcc606";
     };
     meta = {
       homepage = http://search.cpan.org/perldoc?CPAN::Meta::Spec;

From bf37d845a44f5454f50448d787391f78dfe86d5d Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:59:24 +0200
Subject: [PATCH 328/567] perlPackages.SubName: update from 0.05 to 0.0502

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index ceefcf8cfcb5..8042d088ddf6 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -7741,10 +7741,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   SubName = buildPerlPackage {
-    name = "Sub-Name-0.05";
+    name = "Sub-Name-0.0502";
     src = fetchurl {
-      url = mirror://cpan/authors/id/F/FL/FLORA/Sub-Name-0.05.tar.gz;
-      sha256 = "1w9sf51ai2r3i0kv5wnq7h9g3hcd6zb6i51ivvykb3hzx82vilf9";
+      url = mirror://cpan/authors/id/C/CH/CHIPS/Sub-Name-0.0502.tar.gz;
+      sha256 = "1r197binpdy4xfh65qkxxvi9c39pmvvcny4rl8a7zrk1jcws6fac";
     };
     meta = {
       description = "(Re)name a sub";

From f3ceb4529259195b3cc8eea29cf112b4d7f039c6 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:59:28 +0200
Subject: [PATCH 329/567] perlPackages.Switch: update from 2.16 to 2.17

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 8042d088ddf6..f959fb0276d9 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -7812,10 +7812,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   Switch = buildPerlPackage rec {
-    name = "Switch-2.16";
+    name = "Switch-2.17";
     src = fetchurl {
-      url = "mirror://cpan/authors/id/R/RG/RGARCIA/Switch-2.16.tar.gz";
-      sha256 = "1n7rgp1q3zwglv1pka3bnhq5g41334lwc53g31w6g44my8kqz31h";
+      url = "mirror://cpan/authors/id/C/CH/CHORNY/Switch-2.17.tar.gz";
+      sha256 = "0xbdjdgzfj9zwa4j3ipr8bfk7bcici4hk89hq5d27rhg2isljd9i";
     };
     doCheck = false;                             # FIXME: 2/293 test failures
   };

From f8da8e1b54fb8736d9f14ca21bc055b389cfcc6f Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:59:32 +0200
Subject: [PATCH 330/567] perlPackages.SyntaxKeywordJunction: update from
 0.003006 to 0.003007

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index f959fb0276d9..57c486df8b27 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -7847,10 +7847,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   SyntaxKeywordJunction = buildPerlPackage {
-    name = "Syntax-Keyword-Junction-0.003006";
+    name = "Syntax-Keyword-Junction-0.003007";
     src = fetchurl {
-      url = mirror://cpan/authors/id/F/FR/FREW/Syntax-Keyword-Junction-0.003006.tar.gz;
-      sha256 = "182ab56d86bf3acf292d4ed5893ae0134f43843cdadba3e18f9885e6f86035ec";
+      url = mirror://cpan/authors/id/F/FR/FREW/Syntax-Keyword-Junction-0.003007.tar.gz;
+      sha256 = "0c8jvy5lkshw5gyl037gmkh7c51k3sdvpywq0zwlw4ikvrcgsglj";
     };
     propagatedBuildInputs = [ SubExporterProgressive TestRequires syntax ];
     meta = {

From 63b750c25763ea23d08ac5fad1c56f203eea4c27 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:59:36 +0200
Subject: [PATCH 331/567] perlPackages.TAPParserSourceHandlerpgTAP: update from
 3.29 to 3.30

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 57c486df8b27..0f2d25d9739c 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -7869,10 +7869,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   TAPParserSourceHandlerpgTAP = buildPerlModule {
-    name = "TAP-Parser-SourceHandler-pgTAP-3.29";
+    name = "TAP-Parser-SourceHandler-pgTAP-3.30";
     src = fetchurl {
-      url = mirror://cpan/authors/id/D/DW/DWHEELER/TAP-Parser-SourceHandler-pgTAP-3.29.tar.gz;
-      sha256 = "918aa9ada7a05334ace7304e7b9e002bbf0b569bfcf8fb06118777bdabd60e1b";
+      url = mirror://cpan/authors/id/D/DW/DWHEELER/TAP-Parser-SourceHandler-pgTAP-3.30.tar.gz;
+      sha256 = "08gadqf898r23sx07sn13555cp9zkwp8igjlh1fza2ycfivpfl9f";
     };
     meta = {
       homepage = http://search.cpan.org/dist/Tap-Parser-Sourcehandler-pgTAP/;

From df775c9f0c49dc71a27bff226c6905fd651b753e Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:59:39 +0200
Subject: [PATCH 332/567] perlPackages.TermProgressBar: update from 2.13 to
 2.14

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 0f2d25d9739c..84b1b279775d 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -8019,10 +8019,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   TermProgressBar = buildPerlPackage {
-    name = "Term-ProgressBar-2.13";
+    name = "Term-ProgressBar-2.14";
     src = fetchurl {
-      url = mirror://cpan/authors/id/S/SZ/SZABGAB/Term-ProgressBar-2.13.tar.gz;
-      sha256 = "95a56e1529928b7a0d7adf5bc2f54b9b9ae9da58c43b519af74a1e6596209b3c";
+      url = mirror://cpan/authors/id/S/SZ/SZABGAB/Term-ProgressBar-2.14.tar.gz;
+      sha256 = "18cj7mzbis9xk0v32g2700vq9b4p9v5msk02mglf244cj77bflf6";
     };
     buildInputs = [ CaptureTiny TestException ];
     propagatedBuildInputs = [ ClassMethodMaker TermReadKey ];

From 1ac32ce082e58f81a0ffa0008cd5ecb62de3916e Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:59:43 +0200
Subject: [PATCH 333/567] perlPackages.TermReadKey: update from 2.30 to 2.31

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 84b1b279775d..cf0599b51797 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -8055,10 +8055,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   TermReadKey = buildPerlPackage {
-    name = "TermReadKey-2.30";
+    name = "TermReadKey-2.31";
     src = fetchurl {
-      url = mirror://cpan/authors/id/J/JS/JSTOWE/TermReadKey-2.30.tar.gz;
-      md5 = "f0ef2cea8acfbcc58d865c05b0c7e1ff";
+      url = mirror://cpan/authors/id/J/JS/JSTOWE/TermReadKey-2.31.tar.gz;
+      sha256 = "1czarrdxgnxmmbaasjnq3sj14nf1cvzhm37padq6xvl7h7r2acb2";
     };
   };
 

From 702568c6b03cf1e8f2de87edeb0814a83e9aef2b Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:59:47 +0200
Subject: [PATCH 334/567] perlPackages.TestBase: update from 0.60 to 0.62

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index cf0599b51797..704fb05f0135 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -8132,10 +8132,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   TestBase = buildPerlPackage rec {
-    name = "Test-Base-0.60";
+    name = "Test-Base-0.62";
     src = fetchurl {
-      url = "mirror://cpan/modules/by-module/Test/${name}.tar.gz";
-      sha256 = "0yf030nay85xzas1qxn1nw6lhfsrcbgh3nq7bxbb11nxhvdaj2bx";
+      url = "mirror://cpan/authors/id/I/IN/INGY/${name}.tar.gz";
+      sha256 = "1b11xllllp49kkq1wwr57pijqlx1c37nbyssdlszvvhrp6kww363";
     };
     propagatedBuildInputs = [ Spiffy ];
   };

From 0c65639e50222cff778adee1071477e92226d58f Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:59:51 +0200
Subject: [PATCH 335/567] perlPackages.TestDeep: update from 0.110 to 0.112

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 704fb05f0135..dd6bf007344f 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -8167,10 +8167,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   TestDeep = buildPerlPackage {
-    name = "Test-Deep-0.110";
+    name = "Test-Deep-0.112";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RJ/RJBS/Test-Deep-0.110.tar.gz;
-      sha256 = "12rd9fknm778685ypyc599lcmzbqvbqnjhcrkybgpq2siai9q4h5";
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Test-Deep-0.112.tar.gz;
+      sha256 = "1vg1bb1lpqpj0pxk738ykip4kw3agbi88g90wxb3pc11l84nlsan";
     };
     propagatedBuildInputs = [ TestNoWarnings TestTester ];
     meta = {

From f2d9a7231e1191cfcf357cc6f3adb065077eb44e Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:59:55 +0200
Subject: [PATCH 336/567] perlPackages.TestDifferences: update from 0.61 to
 0.4801

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index dd6bf007344f..1f48312c8aeb 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -8179,10 +8179,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   TestDifferences = buildPerlPackage {
-    name = "Test-Differences-0.61";
+    name = "Test-Differences-0.4801";
     src = fetchurl {
-      url = mirror://cpan/authors/id/O/OV/OVID/Test-Differences-0.61.tar.gz;
-      sha256 = "044wg7nqmhvh5ms8z305f9bzldhigr020l1a7iqycxqv05h6b6vm";
+      url = mirror://cpan/authors/id/O/OV/OVID/Test-Differences-0.4801.tar.gz;
+      sha256 = "1p5bqyq3gxfb1q4wajd28498fsbqk7f2y7pk9c3rnh0x36cqbvyw";
     };
     propagatedBuildInputs = [ TextDiff ];
     meta = {

From 6794e6c6c5b796896d025027876a07d59e4db471 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 13:59:59 +0200
Subject: [PATCH 337/567] perlPackages.TestException: update from 0.31 to 0.32

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 1f48312c8aeb..f43463fa9387 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -8222,10 +8222,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   TestException = buildPerlPackage rec {
-    name = "Test-Exception-0.31";
+    name = "Test-Exception-0.32";
     src = fetchurl {
-      url = "mirror://cpan/modules/by-module/Test/${name}.tar.gz";
-      sha256 = "1lyd6mcg00348xsn9fl59spx68a69ybli7h7gd2k0p4y21q8p0ks";
+      url = "mirror://cpan/authors/id/A/AD/ADIE/${name}.tar.gz";
+      sha256 = "0issbjh5yl62lpaff5zhn28zhbf8sv8n2g79vklfr5s703k2fi5s";
     };
     propagatedBuildInputs = [ SubUplevel ];
   };

From 1b9a23e35570d8f76a31a1efa177cf6e2cd68775 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:00:03 +0200
Subject: [PATCH 338/567] perlPackages.TestMinimumVersion: update from 0.101080
 to 0.101081

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index f43463fa9387..5b3fb79a9c58 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -8841,10 +8841,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   TestMinimumVersion = buildPerlPackage {
-    name = "Test-MinimumVersion-0.101080";
+    name = "Test-MinimumVersion-0.101081";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RJ/RJBS/Test-MinimumVersion-0.101080.tar.gz;
-      sha256 = "51fc0bd73ece9d41887f8d0a57ee27fbc205c271c5b5246111efe7d3247ddfb0";
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Test-MinimumVersion-0.101081.tar.gz;
+      sha256 = "1javb92s0bl7gj2m3fsvzd0mn5r76clmayq8878mq12g4smdvpi2";
     };
     buildInputs = [ TestTester ];
     propagatedBuildInputs = [ FileFindRule FileFindRulePerl PerlMinimumVersion YAMLTiny ];

From 8c51e9cadc5788c2c8f3de9452185f108860157e Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:00:07 +0200
Subject: [PATCH 339/567] perlPackages.TestMockTime: update from 0.09 to 0.12

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 5b3fb79a9c58..22482612b6a6 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -8371,10 +8371,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   TestMockTime = buildPerlPackage rec {
-    name = "Test-MockTime-0.09";
+    name = "Test-MockTime-0.12";
     src = fetchurl {
       url = "mirror://cpan/authors/id/D/DD/DDICK/${name}.tar.gz";
-      sha256 = "1j2riyikzyfkxsgkfdqirs7xa8q5d06b9klpk7l9sgydwqdvxdv3";
+      sha256 = "104p9qsqcchfbxh6b6w7q9jhkwb4hc424js0cyivyanjm6bcqvj9";
     };
   };
 

From a36bb367f1e66d295b0d0340152a64a41936924f Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:00:12 +0200
Subject: [PATCH 340/567] perlPackages.TestMojibake: update from 0.8 to 0.9

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 22482612b6a6..b59d0e059e67 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -8379,10 +8379,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   TestMojibake = buildPerlPackage {
-    name = "Test-Mojibake-0.8";
+    name = "Test-Mojibake-0.9";
     src = fetchurl {
-      url = mirror://cpan/authors/id/S/SY/SYP/Test-Mojibake-0.8.tar.gz;
-      sha256 = "66d82ca4fe539bb69ee8179d96370e50777a9547176428baf4dbe190ef78b4cb";
+      url = mirror://cpan/authors/id/S/SY/SYP/Test-Mojibake-0.9.tar.gz;
+      sha256 = "0b7jamkmws6k3cvzwrz3r5vcpjrdhr8wndf82i5nx2z19xsy33ym";
     };
     meta = {
       homepage = https://github.com/creaktive/Test-Mojibake;

From 7f6a6111b761f6a3a086e93d407154fbdbe6f994 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:00:18 +0200
Subject: [PATCH 341/567] perlPackages.TestMost: update from 0.31 to 0.33

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index b59d0e059e67..1cc94f959e3a 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -8394,10 +8394,10 @@ let self = _self // overrides; _self = with self; {
   TestMore = TestSimple;
 
   TestMost = buildPerlPackage {
-    name = "Test-Most-0.31";
+    name = "Test-Most-0.33";
     src = fetchurl {
-      url = mirror://cpan/authors/id/O/OV/OVID/Test-Most-0.31.tar.gz;
-      sha256 = "0ddc6034dc7cde3631dde41ecb558ed823fc07804bfd051b8ec9a70131862ab7";
+      url = mirror://cpan/authors/id/O/OV/OVID/Test-Most-0.33.tar.gz;
+      sha256 = "0jp4jcwk97bgf85wwyjpxfsx4165s6w1v4ymn9gnv03yn77inyij";
     };
     propagatedBuildInputs = [ ExceptionClass TestDeep TestDifferences TestException TestWarn ];
     meta = {

From 781d9a018599d4171c4b508d77282bb859be81d9 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:00:21 +0200
Subject: [PATCH 342/567] perlPackages.TestRoutine: update from 0.015 to 0.018

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 1cc94f959e3a..40a95c46747e 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -8523,10 +8523,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   TestRoutine = buildPerlPackage {
-    name = "Test-Routine-0.015";
+    name = "Test-Routine-0.018";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RJ/RJBS/Test-Routine-0.015.tar.gz;
-      sha256 = "04hm18sx90k38vxk70g8zj9wp0i7h4436cxflbc6pspvphv2fjg3";
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Test-Routine-0.018.tar.gz;
+      sha256 = "1slaljcija2pbsxdyrqsh09pgajxbln68gb47l9fwffb6gsp5f3m";
     };
     buildInputs = [ TestFatal ];
     propagatedBuildInputs = [ Moose namespaceautoclean namespaceclean ParamsUtil SubExporter ];

From 64c178f2c4ef3b50ddc3a0ca4291ac5528a18004 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:00:25 +0200
Subject: [PATCH 343/567] perlPackages.TestSynopsis: update from 0.06 to 0.10

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 40a95c46747e..85c458c43a06 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -8568,10 +8568,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   TestSynopsis = buildPerlPackage {
-    name = "Test-Synopsis-0.06";
+    name = "Test-Synopsis-0.10";
     src = fetchurl {
-      url = mirror://cpan/authors/id/M/MI/MIYAGAWA/Test-Synopsis-0.06.tar.gz;
-      sha256 = "fb3eed184eaf8a3c2338ec14b7235fa75fc43cf5f3774d927a4c947a5141db1b";
+      url = mirror://cpan/authors/id/Z/ZO/ZOFFIX/Test-Synopsis-0.10.tar.gz;
+      sha256 = "0gbk4d2vwlldsj5shmbdar3a29vgrw84ldsvm26mflkr5ji34adv";
     };
     meta = {
       description = "Test your SYNOPSIS code";

From 9dbec03ddebb739436ba264fbb213adc9cdda325 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:00:29 +0200
Subject: [PATCH 344/567] perlPackages.TestWWWMechanizeCatalyst: update from
 0.58 to 0.59

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 85c458c43a06..dd45234c8fec 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -8698,10 +8698,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   TestWWWMechanizeCatalyst = buildPerlPackage {
-    name = "Test-WWW-Mechanize-Catalyst-0.58";
+    name = "Test-WWW-Mechanize-Catalyst-0.59";
     src = fetchurl {
-      url = mirror://cpan/authors/id/B/BO/BOBTFISH/Test-WWW-Mechanize-Catalyst-0.58.tar.gz;
-      sha256 = "1pa2m064skxfwsm93hffxcyky4kcn2q418vnw2fn79ich6wrcijd";
+      url = mirror://cpan/authors/id/I/IL/ILMARI/Test-WWW-Mechanize-Catalyst-0.59.tar.gz;
+      sha256 = "1hr1p8m3sv16ws8qb90nshza28qlmllnb6qxriwdvwddp2y517jv";
     };
     doCheck = false; # listens on an external port
     propagatedBuildInputs = [ CatalystRuntime LWP Moose namespaceclean TestWWWMechanize WWWMechanize ];

From 167a636e5c1092465558e4da168b6f161b1bf7eb Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:00:32 +0200
Subject: [PATCH 345/567] perlPackages.TextAligner: update from 0.07 to 0.10

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index dd45234c8fec..1eda7822edc4 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -8751,10 +8751,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   TextAligner = buildPerlPackage {
-    name = "Text-Aligner-0.07";
+    name = "Text-Aligner-0.10";
     src = fetchurl {
-      url = mirror://cpan/authors/id/A/AN/ANNO/Text-Aligner-0.07.tar.gz;
-      sha256 = "1vpb87binmmysr4sxfjinxg4bh3rb4rmrx48yyczgmyddmda9rik";
+      url = mirror://cpan/authors/id/S/SH/SHLOMIF/Text-Aligner-0.10.tar.gz;
+      sha256 = "0d80x5jrv5j9yi234rdnjvnsnmhm4jsssqv7bpkl1fhjd1kfc7v0";
     };
     meta = {
       description = "Align text in columns";

From 9b26002d06b991b8ac10379b802fcea7fb9e4e03 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:00:36 +0200
Subject: [PATCH 346/567] perlPackages.TextBibTeX: update from 0.66 to 0.69

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 1eda7822edc4..a001e81b0bfe 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -8762,11 +8762,11 @@ let self = _self // overrides; _self = with self; {
   };
 
   TextBibTeX = buildPerlModule {
-    name = "Text-BibTeX-0.66";
+    name = "Text-BibTeX-0.69";
     buildInputs = [ ConfigAutoConf ExtUtilsLibBuilder ];
     src = fetchurl {
-      url = mirror://cpan/authors/id/A/AM/AMBS/Text/Text-BibTeX-0.66.tar.gz;
-      sha256 = "0wymg190afqfhr5i9ws02jgnksk06h3w45770ynjjr1fs343b9j7";
+      url = mirror://cpan/authors/id/A/AM/AMBS/Text/Text-BibTeX-0.69.tar.gz;
+      sha256 = "1gzh5zh2ggfp15q5im7gpr1krq4mzmhbjdivyb2x03vcg0qdkk3z";
     };
     meta = {
       description = "Interface to read and parse BibTeX files";

From b2fa401f5966d8e100764341c03ba7d7dc77bf1d Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:00:40 +0200
Subject: [PATCH 347/567] perlPackages.TextCSV: update from 1.10 to 1.32

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index a001e81b0bfe..5232a0da3098 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -8775,10 +8775,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   TextCSV = buildPerlPackage rec {
-    name = "Text-CSV-1.10";
+    name = "Text-CSV-1.32";
     src = fetchurl {
       url = "mirror://cpan/authors/id/M/MA/MAKAMAKA/${name}.tar.gz";
-      sha256 = "0vb0093v3kk7iczb46zzdg7myfyjldwrk8wbk7ibk56gvj350f7c";
+      sha256 = "1bzrizyp8n2013nhd34j52bzdqcp9la30aqbdfkij52ssxkfm7xl";
     };
   };
 

From 53778344ef498d318c0ac3b5716917938f5d9211 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:00:43 +0200
Subject: [PATCH 348/567] perlPackages.TextMicroTemplate: update from 0.19 to
 0.20

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 5232a0da3098..cd88f85a28be 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -8855,10 +8855,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   TextMicroTemplate = buildPerlPackage {
-    name = "Text-MicroTemplate-0.19";
+    name = "Text-MicroTemplate-0.20";
     src = fetchurl {
-      url = mirror://cpan/authors/id/K/KA/KAZUHO/Text-MicroTemplate-0.19.tar.gz;
-      sha256 = "0hli95kn67slr6ixffcx6qvv36hlr03hij28029k3f8d7b7f32za";
+      url = mirror://cpan/authors/id/K/KA/KAZUHO/Text-MicroTemplate-0.20.tar.gz;
+      sha256 = "0da44kd3z4n23wivy99583cscmiay2xv0wq9dzx6mg8vq874kx74";
     };
     meta = {
       description = "Micro template engine with Perl5 language";

From ad5b3a3b1affc24def30c57e74e5db66757c667c Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:00:47 +0200
Subject: [PATCH 349/567] perlPackages.TextTable: update from 1.128 to 1.129

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index cd88f85a28be..de69d2e4f232 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -8905,10 +8905,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   TextTable = buildPerlPackage {
-    name = "Text-Table-1.128";
+    name = "Text-Table-1.129";
     src = fetchurl {
-      url = mirror://cpan/authors/id/S/SH/SHLOMIF/Text-Table-1.128.tar.gz;
-      sha256 = "0j9y38y9x9ljjpnvp5clwkfvhnja6vjlnhb8yshv2mmz2h6by70c";
+      url = mirror://cpan/authors/id/S/SH/SHLOMIF/Text-Table-1.129.tar.gz;
+      sha256 = "1b8l86yvvsncnx0w45w095n1h7lff6nxjy87dzk7zgvkmr0ary7c";
     };
     buildInputs = [ TestPod TestPodCoverage ];
     propagatedBuildInputs = [ TextAligner ];

From 684245d61ef5e50d321f46fa03e075f5c5bf961b Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:00:51 +0200
Subject: [PATCH 350/567] perlPackages.TextWikiFormat: update from 0.80 to 0.81

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index de69d2e4f232..ad3538725038 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -9017,10 +9017,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   TextWikiFormat = buildPerlPackage {
-    name = "Text-WikiFormat-0.80";
+    name = "Text-WikiFormat-0.81";
     src = fetchurl {
-      url = mirror://cpan/authors/id/C/CY/CYCLES/Text-WikiFormat-0.80.tar.gz;
-      sha256 = "0i1mg3ivxhx09x0w06k15izc92bknwqwh0ghpmhlq9s9iw12mmry";
+      url = mirror://cpan/authors/id/C/CY/CYCLES/Text-WikiFormat-0.81.tar.gz;
+      sha256 = "0cxbgx879bsskmnhjzamgsa5862ddixyx4yr77lafmwimnaxjg74";
     };
     propagatedBuildInputs = [ URI ];
     meta = {

From c6b1a953e12a323589805d2d1a59a03e36f8483d Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:00:56 +0200
Subject: [PATCH 351/567] perlPackages.TieIxHash: update from 1.22 to 1.23

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index ad3538725038..da74a6792ed2 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -9051,10 +9051,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   TieIxHash = buildPerlPackage {
-    name = "Tie-IxHash-1.22";
+    name = "Tie-IxHash-1.23";
     src = fetchurl {
-      url = mirror://cpan/authors/id/C/CH/CHORNY/Tie-IxHash-1.22.tar.gz;
-      sha256 = "0f0m0x8nkidxd0pxnls1i8kc8d7bd89dqgihz29wj3ggk43qffr7";
+      url = mirror://cpan/authors/id/C/CH/CHORNY/Tie-IxHash-1.23.tar.gz;
+      sha256 = "0mmg9iyh42syal3z1p2pn9airq65yrkfs66cnqs9nz76jy60pfzs";
     };
     meta = {
       description = "Ordered associative arrays for Perl";

From 7f1aa495cac761492385801cafa11c350f929e2c Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:00:59 +0200
Subject: [PATCH 352/567] perlPackages.TimeDate: update from 1.16 to 2.30

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index da74a6792ed2..002151b5eb26 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -9072,10 +9072,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   TimeDate = buildPerlPackage {
-    name = "TimeDate-1.16";
+    name = "TimeDate-2.30";
     src = fetchurl {
-      url = mirror://cpan/authors/id/G/GB/GBARR/TimeDate-1.16.tar.gz;
-      sha256 = "1cvcpaghn7dc14m9871sfw103g3m3a00m2mrl5iqb0mmh40yyhkr";
+      url = mirror://cpan/authors/id/G/GB/GBARR/TimeDate-2.30.tar.gz;
+      sha256 = "11lf54akr9nbivqkjrhvkmfdgkbhw85sq0q4mak56n6bf542bgbm";
     };
   };
 

From 060058691370a7a75f8da3d804d8521f63d49fc1 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:01:02 +0200
Subject: [PATCH 353/567] perlPackages.TimeDuration: update from 1.1 to 1.06

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 002151b5eb26..b496495fb6f0 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -9080,10 +9080,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   TimeDuration = buildPerlPackage {
-    name = "Time-Duration-1.1";
+    name = "Time-Duration-1.06";
     src = fetchurl {
-      url = mirror://cpan/authors/id/A/AV/AVIF/Time-Duration-1.1.tar.gz;
-      sha256 = "a69c419c4892f21eba10002e2ab8c55b657b6691cf6873544ef99ef5fd188f4e";
+      url = mirror://cpan/authors/id/A/AV/AVIF/Time-Duration-1.06.tar.gz;
+      sha256 = "0krzgxifghwir1ibxg147sfpqyyv8xpvipx0nwlwgyay46x4gdpp";
     };
     buildInputs = [ TestPod TestPodCoverage ];
     meta = {

From 8ae221d62127838a999531b91ac4ed5af70e14e5 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:01:06 +0200
Subject: [PATCH 354/567] perlPackages.TreeSimpleVisitorFactory: update from
 0.10 to 0.12

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index b496495fb6f0..2a222cc0e71a 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -9142,10 +9142,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   TreeSimpleVisitorFactory = buildPerlPackage {
-    name = "Tree-Simple-VisitorFactory-0.10";
+    name = "Tree-Simple-VisitorFactory-0.12";
     src = fetchurl {
-      url = mirror://cpan/authors/id/S/ST/STEVAN/Tree-Simple-VisitorFactory-0.10.tar.gz;
-      sha256 = "1ghcgnb3xvqjyh4h4aa37x98613aldnpj738z9b80p33bbfxq158";
+      url = mirror://cpan/authors/id/R/RS/RSAVAGE/Tree-Simple-VisitorFactory-0.12.tgz;
+      sha256 = "1g27xl48q1vr7aikhxg4vvcsj1si8allxz59vmnks61wsw4by7vg";
     };
     propagatedBuildInputs = [TreeSimple];
     buildInputs = [TestException];

From e4559ba4365b2b29c9725a695c9ff9b37f6ecda1 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:01:09 +0200
Subject: [PATCH 355/567] perlPackages.URIFromHash: update from 0.03 to 0.04

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 2a222cc0e71a..08277f33214e 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -9277,10 +9277,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   URIFromHash = buildPerlPackage {
-    name = "URI-FromHash-0.03";
+    name = "URI-FromHash-0.04";
     src = fetchurl {
-      url = mirror://cpan/authors/id/D/DR/DROLSKY/URI-FromHash-0.03.tar.gz;
-      sha256 = "0yzk69mdf8rmkx1wxm5mn1a1zzd0zq4x1w83vyj9ja40v73q0k4i";
+      url = mirror://cpan/authors/id/D/DR/DROLSKY/URI-FromHash-0.04.tar.gz;
+      sha256 = "03yckli4fj8cgsyh1l1lmyxj56q9qc04a3r8kv0whbnb37zz1j23";
     };
     propagatedBuildInputs = [ ParamsValidate URI ];
     meta = {

From c0048552ff9faa2f2d0264500c1d37ca1650774f Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:01:12 +0200
Subject: [PATCH 356/567] perlPackages.WWWCurl: update from 4.15 to 4.17

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 08277f33214e..b3aa2bb9ec9d 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -9353,10 +9353,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   WWWCurl = buildPerlPackage rec {
-    name = "WWW-Curl-4.15";
+    name = "WWW-Curl-4.17";
     src = fetchurl {
-      url = "mirror://cpan/modules/by-module/WWW/${name}.tar.gz";
-      sha256 = "18az7k0jsr642lp6dfy0b2s7vx0cd7sj9dgk93wff73safa09x1y";
+      url = "mirror://cpan/authors/id/S/SZ/SZBALINT/${name}.tar.gz";
+      sha256 = "1fmp9aib1kaps9vhs4dwxn7b15kgnlz9f714bxvqsd1j1q8spzsj";
     };
     buildInputs = [ pkgs.curl ];
     preConfigure =

From 81f0e185f0670b9a74cbaa81efe719ce0102c214 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:01:16 +0200
Subject: [PATCH 357/567] perlPackages.WWWMechanize: update from 1.72 to 1.73

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index b3aa2bb9ec9d..a363e490f5d2 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -9367,10 +9367,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   WWWMechanize = buildPerlPackage {
-    name = "WWW-Mechanize-1.72";
+    name = "WWW-Mechanize-1.73";
     src = fetchurl {
-      url = mirror://cpan/authors/id/J/JE/JESSE/WWW-Mechanize-1.72.tar.gz;
-      sha256 = "0vs3p2697675bswjayfmm37lg3xsxm94z1mif18s732kwvnpg6m6";
+      url = mirror://cpan/authors/id/E/ET/ETHER/WWW-Mechanize-1.73.tar.gz;
+      sha256 = "1zrw8aadhwy48q51x2z2rqlkwf17bya4j4h3hy89mw783j96rmg9";
     };
     propagatedBuildInputs = [ HTMLForm HTMLParser HTMLTree HTTPDaemon HTTPMessage HTTPServerSimple LWP LWPUserAgent TestWarn URI ];
     doCheck = false;

From 0d2fb0040ce477b725d0c537fbf3ec8e4a0ec6d4 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:01:20 +0200
Subject: [PATCH 358/567] perlPackages.Wx: update from 0.9922 to 0.9923

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index a363e490f5d2..1a98f5fb2d5a 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -9412,10 +9412,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   Wx = buildPerlPackage rec {
-    name = "Wx-0.9922";
+    name = "Wx-0.9923";
     src = fetchurl {
       url = "mirror://cpan/authors/id/M/MD/MDOOTSON/${name}.tar.gz";
-      sha256 = "11x3cvffcyi4b2c6pz9awks3zrg83bg1cwapm4psdiqnd568safw";
+      sha256 = "1ja2fkz0xabafyc6gnp3nnwsbkkjsf44kq9x5zz6cb5fsp3p9sck";
     };
     propagatedBuildInputs = [ ExtUtilsXSpp AlienWxWidgets ];
     # Testing requires an X server:

From 3aec099b907813a97b600d5c243213b671322ab8 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:01:23 +0200
Subject: [PATCH 359/567] perlPackages.X11GUITest: update from 0.21 to 0.28

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 1a98f5fb2d5a..2deb69e6da71 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -9435,10 +9435,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   X11GUITest = buildPerlPackage rec {
-    name = "X11-GUITest-0.21";
+    name = "X11-GUITest-0.28";
     src = fetchurl {
       url = "mirror://cpan/authors/id/C/CT/CTRONDLP/${name}.tar.gz";
-      sha256 = "0akjk2x2d3j1f95wn93mh6nvq8p6c9jcqmvkh1mli5jxr1rmhjx8";
+      sha256 = "0jznws68skdzkhgkgcgjlj40qdyh9i75r7fw8bqzy406f19xxvnw";
     };
     buildInputs = [pkgs.x11 pkgs.xorg.libXtst pkgs.xorg.libXi];
     NIX_CFLAGS_LINK = "-lX11 -lXext -lXtst";

From abdd1e4ce5b0e1c0f48b4316ac7ecb7a82e1c94e Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:01:27 +0200
Subject: [PATCH 360/567] perlPackages.XMLLibXML: update from 2.0014 to 2.0115

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 2deb69e6da71..595c43d023fa 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -9455,10 +9455,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   XMLLibXML = buildPerlPackage rec {
-    name = "XML-LibXML-2.0014";
+    name = "XML-LibXML-2.0115";
     src = fetchurl {
-      url = "mirror://cpan/modules/by-module/XML/${name}.tar.gz";
-      sha256 = "0r2mw6pnygj2bpng9f4q5jfn4iawhkj47ys3sbnvqymyp1afihf6";
+      url = "mirror://cpan/authors/id/S/SH/SHLOMIF/${name}.tar.gz";
+      sha256 = "0d6l6idl2920x9xi097fvzfdn9i0s8qa9ksw4bz2w1wh3zsn07zm";
     };
     SKIP_SAX_INSTALL = 1;
     buildInputs = [ pkgs.libxml2 ];

From 5789357f363f5c6cea883fac1db24f580715243f Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:01:31 +0200
Subject: [PATCH 361/567] perlPackages.XMLLibXSLT: update from 1.87 to 1.89

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 595c43d023fa..7a03c9659444 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -9479,10 +9479,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   XMLLibXSLT = buildPerlPackage rec {
-    name = "XML-LibXSLT-1.87";
+    name = "XML-LibXSLT-1.89";
     src = fetchurl {
       url = "mirror://cpan/authors/id/S/SH/SHLOMIF/${name}.tar.gz";
-      sha256 = "18kxa51a0prr8dx0w7q7wa8gdgalswzqa24sjkxmgs0f9yhcixz1";
+      sha256 = "0py7ll5vj2k977l4r2g8bbz0hdy0hhkdq0mzblrwizify0825b12";
     };
     buildInputs = [ pkgs.zlib pkgs.libxml2 pkgs.libxslt ];
     propagatedBuildInputs = [ XMLLibXML ];

From 8626dc7d49cbcfe5a2a794bdfbce424814fd17b3 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:01:34 +0200
Subject: [PATCH 362/567] perlPackages.XMLNamespaceSupport: update from 1.09 to
 1.11

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 7a03c9659444..c13004daaa76 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -9489,10 +9489,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   XMLNamespaceSupport = buildPerlPackage {
-    name = "XML-NamespaceSupport-1.09";
+    name = "XML-NamespaceSupport-1.11";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RB/RBERJON/XML-NamespaceSupport-1.09.tar.gz;
-      sha256 = "0ny2i4pf6j8ggfj1x02rm5zm9a37hfalgx9w9kxnk69xsixfwb51";
+      url = mirror://cpan/authors/id/P/PE/PERIGRIN/XML-NamespaceSupport-1.11.tar.gz;
+      sha256 = "1sklgcldl3w6gn706vx1cgz6pm4y5lfgsjxnfqyk20pilgq530bd";
     };
   };
 

From a6d0e043300a1c1640a27b1903bd70788d848f46 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:01:38 +0200
Subject: [PATCH 363/567] perlPackages.XMLParser: update from 2.36 to 2.41

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index c13004daaa76..e42cd8afeeb6 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -9497,10 +9497,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   XMLParser = buildPerlPackage {
-    name = "XML-Parser-2.36";
+    name = "XML-Parser-2.41";
     src = fetchurl {
-      url = mirror://cpan/authors/id/M/MS/MSERGEANT/XML-Parser-2.36.tar.gz;
-      sha256 = "0gyp5qfbflhkin1zv8l6wlkjwfjvsf45a3py4vc6ni82fj32kmcz";
+      url = mirror://cpan/authors/id/T/TO/TODDR/XML-Parser-2.41.tar.gz;
+      sha256 = "1sadi505g5qmxr36lgcbrcrqh3a5gcdg32b405gnr8k54b6rg0dl";
     };
     makeMakerFlags = "EXPATLIBPATH=${pkgs.expat}/lib EXPATINCPATH=${pkgs.expat}/include";
   };

From 0a019d402304e204283cc627a7b7e2f80b75c7df Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:01:41 +0200
Subject: [PATCH 364/567] perlPackages.XMLRegExp: update from 0.03 to 0.04

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index e42cd8afeeb6..b5c56e23435d 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -9528,10 +9528,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   XMLRegExp = buildPerlPackage {
-    name = "XML-RegExp-0.03";
+    name = "XML-RegExp-0.04";
     src = fetchurl {
-      url = mirror://cpan/authors/id/T/TJ/TJMATHER/XML-RegExp-0.03.tar.gz;
-      sha256 = "1gkarylvdk3mddmchcwvzq09gpvx5z26nybp38dg7mjixm5bs226";
+      url = mirror://cpan/authors/id/T/TJ/TJMATHER/XML-RegExp-0.04.tar.gz;
+      sha256 = "0m7wj00a2kik7wj0azhs1zagwazqh3hlz4255n75q21nc04r06fz";
     };
   };
 

From a296adc1a1a1b43c98045e46025822f3e8b7329d Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:01:46 +0200
Subject: [PATCH 365/567] perlPackages.XMLSimple: update from 2.18 to 2.20

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index b5c56e23435d..0c5a63c18d9f 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -9558,10 +9558,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   XMLSimple = buildPerlPackage {
-    name = "XML-Simple-2.18";
+    name = "XML-Simple-2.20";
     src = fetchurl {
-      url = mirror://cpan/authors/id/G/GR/GRANTM/XML-Simple-2.18.tar.gz;
-      sha256 = "09k8fvc9m5nd5rqq00rwm3m0wx7iwd6vx0vc947y58ydi30nfjd5";
+      url = mirror://cpan/authors/id/G/GR/GRANTM/XML-Simple-2.20.tar.gz;
+      sha256 = "0jj3jiray1l4pi9wkjcpxjc3v431whdwx5aqnhgdm4i7h3817zsw";
     };
     propagatedBuildInputs = [XMLParser];
   };

From f2e9c3dad181306b3471f0613892c0b42636e5d1 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:01:49 +0200
Subject: [PATCH 366/567] perlPackages.XMLWriter: update from 0.612 to 0.624

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 0c5a63c18d9f..51f59da14e35 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -9577,10 +9577,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   XMLWriter = buildPerlPackage rec {
-    name = "XML-Writer-0.612";
+    name = "XML-Writer-0.624";
     src = fetchurl {
       url = "mirror://cpan/authors/id/J/JO/JOSEPHW/${name}.tar.gz";
-      sha256 = "1prvgbjxynxg6061qxzfbbimjvil04513hf3hsilv0hdg58nb9jk";
+      sha256 = "0yyz0dh9b4clailbxyi90dfrqpyc6py77rmmz6qmkx7ynlpyxk46";
     };
   };
 

From 5bad11016b802649dc800315372098970a1a5822 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:01:52 +0200
Subject: [PATCH 367/567] perlPackages.YAMLSyck: update from 1.22 to 1.27

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 51f59da14e35..f9a26ec4ca34 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -9598,10 +9598,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   YAMLSyck = buildPerlPackage {
-    name = "YAML-Syck-1.22";
+    name = "YAML-Syck-1.27";
     src = fetchurl {
-      url = mirror://cpan/authors/id/T/TO/TODDR/YAML-Syck-1.22.tar.gz;
-      sha256 = "0n3k71i0b8mhdrl5kp1cwyvjbkqahyqkhp81wl3qnkfhyi39f55y";
+      url = mirror://cpan/authors/id/T/TO/TODDR/YAML-Syck-1.27.tar.gz;
+      sha256 = "1y9dw18fz3s8v4n80wf858cjq4jlaza25wvsgv60a6z2l0sfax6y";
     };
     meta = {
       homepage = http://search.cpan.org/dist/YAML-Syck;

From 0273315c627bdbf9b0a134c86703b04bb53635cd Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:01:56 +0200
Subject: [PATCH 368/567] perlPackages.aliased: update from 0.30 to 0.31

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index f9a26ec4ca34..3a27db6cbbed 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -88,10 +88,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   aliased = buildPerlPackage rec {
-    name = "aliased-0.30";
+    name = "aliased-0.31";
     src = fetchurl {
       url = "mirror://cpan/authors/id/O/OV/OVID/${name}.tar.gz";
-      sha256 = "1iqcbfv600m31rfvl7r9ckr0hh0vny63q7a6yyhfrh4ppcgj4ig4";
+      sha256 = "0gxfqdddlq5g1b2zs99b251hz52z9ys4yni7j2p8gyk5zij3wm1s";
     };
   };
 

From ca577f28b1683121b63e4998f07cbdbecdf2ecd4 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:02:00 +0200
Subject: [PATCH 369/567] perlPackages.boolean: update from 0.30 to 0.32

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 3a27db6cbbed..64e64bb71fd2 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -385,10 +385,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   boolean = buildPerlPackage {
-    name = "boolean-0.30";
+    name = "boolean-0.32";
     src = fetchurl {
-      url = mirror://cpan/authors/id/I/IN/INGY/boolean-0.30.tar.gz;
-      sha256 = "f46e7a6121d5728ef2ce285a82d1dde94f6dfa0b846a612db75b1dcd37b9fc7f";
+      url = mirror://cpan/authors/id/I/IN/INGY/boolean-0.32.tar.gz;
+      sha256 = "1icihm1cib90klfjrk069s7031n1c7xk3fmkr2bfxrwqda4di7jg";
     };
     meta = {
       homepage = https://github.com/ingydotnet/boolean-pm/tree;

From 0cb15d8ff8013ab7b8f010dae3611760a72835c8 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:02:03 +0200
Subject: [PATCH 370/567] perlPackages.cam_pdf: update from 1.52 to 1.60

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 64e64bb71fd2..a43b97bf2323 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -516,10 +516,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   cam_pdf = buildPerlPackage rec {
-    name = "CAM-PDF-1.52";
+    name = "CAM-PDF-1.60";
     src = fetchurl {
       url = "mirror://cpan/authors/id/C/CD/CDOLAN/${name}.tar.gz";
-      sha256 = "1lamnx0vcqzzcxdmj5038gvyn6z5xcy9756jhndgpggjfkzilwkh";
+      sha256 = "12dv5ssf3y7yjz9mrrqnfzx8nf4ydk1qijf5fx59495671zzqsp7";
     };
     propagatedBuildInputs = [ CryptRC4 TextPDF ];
     buildInputs = [ TestMore ];

From 7514552d3eb126d1d340df4170add0b38747bddb Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:02:06 +0200
Subject: [PATCH 371/567] perlPackages.constant: update from 1.15 to 1.27

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index a43b97bf2323..ae9e48b32341 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1509,10 +1509,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   constant = buildPerlPackage {
-    name = "constant-1.15";
+    name = "constant-1.27";
     src = fetchurl {
-      url = mirror://cpan/authors/id/S/SA/SAPER/constant-1.15.tar.gz;
-      sha256 = "1ygz0hd1fd3q88r6dlw14kpyh06zjprksdci7qva6skxz3261636";
+      url = mirror://cpan/authors/id/S/SA/SAPER/constant-1.27.tar.gz;
+      sha256 = "0ari0jggiifz3q7vxb8nlcsc3g6bj8c0c0drsrphv0079c956i3l";
     };
   };
 

From 3984a70646de79a8ff7e36b94bce8231ab9dbb5d Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:02:10 +0200
Subject: [PATCH 372/567] perlPackages.if: update from 0.0601 to 0.01000001

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index ae9e48b32341..648ef3b15d7f 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -4282,10 +4282,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   "if" = buildPerlPackage {
-    name = "if-0.0601";
+    name = "if-0.01000001";
     src = fetchurl {
-      url = mirror://cpan/authors/id/I/IL/ILYAZ/modules/if-0.0601.tar.gz;
-      sha256 = "fb2b7329aa111a673cd22dc2889167e52058aead0de2fe0855b32dd658d5c1b7";
+      url = mirror://cpan/authors/id/I/IL/ILYAZ/modules/if-0.01000001.tar.gz;
+      sha256 = "0vb40cb20b22layp5v9xa30hmcnhxidwjkfwcrxwhrvwypy2cmgw";
     };
     meta = {
     };

From 2a43291e62583d359bbc09c303fed13e290a5c8b Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:02:15 +0200
Subject: [PATCH 373/567] perlPackages.maatkit: update from 4790 to 7540

---
 pkgs/development/perl-modules/maatkit/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/perl-modules/maatkit/default.nix b/pkgs/development/perl-modules/maatkit/default.nix
index d9a1f777f3ab..b30e2f12fc62 100644
--- a/pkgs/development/perl-modules/maatkit/default.nix
+++ b/pkgs/development/perl-modules/maatkit/default.nix
@@ -1,11 +1,11 @@
 {buildPerlPackage, stdenv, fetchurl, DBDmysql}:
 
 buildPerlPackage rec {
-  name = "maatkit-4790";
+  name = "maatkit-7540";
 
   src = fetchurl {
     url = "http://maatkit.googlecode.com/files/${name}.tar.gz" ;
-    sha256 = "0lf6dgh1w96m234hrkhagyyvv1m1ldchpzsg6iswvkj6sbvv7d7h";
+    sha256 = "1a7rxrddkrsfxb2wj01ha91ld0vapfkqcy8j9p08l76zz2l8p2v1";
   };
 
   buildInputs = [ DBDmysql ] ;

From 4955d0e8764564dbf41d07cca34754a7a73f27c8 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:02:19 +0200
Subject: [PATCH 374/567] perlPackages.namespaceclean: update from 0.24 to 0.25

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 648ef3b15d7f..2c93e6a8d16c 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6106,10 +6106,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   namespaceclean = buildPerlPackage rec {
-    name = "namespace-clean-0.24";
+    name = "namespace-clean-0.25";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RI/RIBASUSHI/namespace-clean-0.24.tar.gz;
-      sha256 = "0c0jj44f3y26scybnxp2lnkcydjqh0lfr6l1jsy13r3x9r4d8qd6";
+      url = mirror://cpan/authors/id/R/RI/RIBASUSHI/namespace-clean-0.25.tar.gz;
+      sha256 = "016dds70ql1mp18b07chkxiy4drn976ibnbshqc2hmhrh9xjnsll";
     };
     propagatedBuildInputs = [ BHooksEndOfScope PackageStash ];
     meta = {

From 18a14b3455d61ddbb322a76bd5a135da3c9fe503 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:02:22 +0200
Subject: [PATCH 375/567] perlPackages.strictures: update from 1.004004 to
 1.005004

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 2c93e6a8d16c..87b3d4d217ad 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -7473,10 +7473,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   strictures = buildPerlPackage {
-    name = "strictures-1.004004";
+    name = "strictures-1.005004";
     src = fetchurl {
-      url = mirror://cpan/authors/id/E/ET/ETHER/strictures-1.004004.tar.gz;
-      sha256 = "0d7fanr4ggmlqvdxf63ci7nxba2vrdz9558xy35hfpm8max7s48j";
+      url = mirror://cpan/authors/id/H/HA/HAARG/strictures-1.005004.tar.gz;
+      sha256 = "0y9q0v68060x5r3wfprwnjry6si7x9x5rkqz7nrf8fkxng7ndw5v";
     };
     meta = {
       homepage = http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=p5sagit/strictures.git;

From ecc8da9672d4a77b45d71c0b6da0f5fca3361765 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:02:26 +0200
Subject: [PATCH 376/567] perlPackages.AlienWxWidgets: update from 0.64 to 0.65

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 87b3d4d217ad..23d1a2419dde 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -96,10 +96,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   AlienWxWidgets = buildPerlPackage rec {
-    name = "Alien-wxWidgets-0.64";
+    name = "Alien-wxWidgets-0.65";
     src = fetchurl {
       url = "mirror://cpan/authors/id/M/MD/MDOOTSON/${name}.tar.gz";
-      sha256 = "1frmvdppzw1vrbk2jvwxh5a5qafl7bigflpgwpkzdg4v9nswgbmx";
+      sha256 = "0h4g7jl0p8a35kyvsji3qlb75mbcfqpvvmwh7s9krkbqklqjlxxl";
     };
     propagatedBuildInputs = [ pkgs.pkgconfig pkgs.gtk2 pkgs.wxGTK ];
   };

From f548b6c06a6e5f1fe0657d70b0c1fc80506327c2 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:02:29 +0200
Subject: [PATCH 377/567] perlPackages.AnyEvent: update from 7.05 to 7.07

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 23d1a2419dde..dea2d6f75227 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -105,10 +105,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   AnyEvent = buildPerlPackage {
-    name = "AnyEvent-7.05";
+    name = "AnyEvent-7.07";
     src = fetchurl {
-      url = mirror://cpan/authors/id/M/ML/MLEHMANN/AnyEvent-7.05.tar.gz;
-      sha256 = "0022y5xbn3dn5x0q1kzvx15icf3g1cqqljrfhyriy794a42fply6";
+      url = mirror://cpan/authors/id/M/ML/MLEHMANN/AnyEvent-7.07.tar.gz;
+      sha256 = "01iilh11xc2gw6fxxr6il3r6n1k4cf6swaddgbhi525wfzlchk2c";
     };
     meta = {
       maintainers = with maintainers; [ ocharles ];

From 79d6aa625d481f5eee46f92a68944e7c7c3d8de1 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:02:33 +0200
Subject: [PATCH 378/567] perlPackages.AppCLI: update from 0.07 to 0.313

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index dea2d6f75227..7d6ab4a64ad3 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -156,10 +156,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   AppCLI = buildPerlPackage {
-    name = "App-CLI-0.07";
+    name = "App-CLI-0.313";
     src = fetchurl {
-      url = mirror://cpan/authors/id/C/CL/CLKAO/App-CLI-0.07.tar.gz;
-      sha256 = "000866qsm7jck3ini69b02sgbjwp6s297lsds002r7xk2wb6fqcz";
+      url = mirror://cpan/authors/id/C/CO/CORNELIUS/App-CLI-0.313.tar.gz;
+      sha256 = "0ni1z14xis1b634qjc3zra9c9pl2icfr6sp5qxs0xy8nvib65037";
     };
     propagatedBuildInputs = [LocaleMaketextSimple];
   };

From 353bb1c2f7d3e837dba3a392703fd3d57b8579a7 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:02:36 +0200
Subject: [PATCH 379/567] perlPackages.BHooksEndOfScope: update from 0.12 to
 0.13

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 7d6ab4a64ad3..9a91d33b2068 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -331,10 +331,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   BHooksEndOfScope = buildPerlPackage {
-    name = "B-Hooks-EndOfScope-0.12";
+    name = "B-Hooks-EndOfScope-0.13";
     src = fetchurl {
-      url = mirror://cpan/authors/id/B/BO/BOBTFISH/B-Hooks-EndOfScope-0.12.tar.gz;
-      sha256 = "1gagn8b9zhbwk4f4cllrvir1mspvq0ladsy0pfkwl9w85q1843lj";
+      url = mirror://cpan/authors/id/E/ET/ETHER/B-Hooks-EndOfScope-0.13.tar.gz;
+      sha256 = "1f5d0lbkwf23dfjn60g6fynmjhy5rxdyxcpdfb07srm73qpg2zpi";
     };
     propagatedBuildInputs = [ ModuleImplementation ModuleRuntime SubExporterProgressive ];
     meta = {

From 282fe2da2ab7bdf106208acd0c8572976a342cba Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:02:40 +0200
Subject: [PATCH 380/567] perlPackages.BoostGeometryUtils: update from 0.12 to
 0.15

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 9a91d33b2068..98a1c6d45f39 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -398,10 +398,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   BoostGeometryUtils = buildPerlModule rec {
-    name = "Boost-Geometry-Utils-0.12";
+    name = "Boost-Geometry-Utils-0.15";
     src = fetchurl {
       url = "mirror://cpan/authors/id/A/AA/AAR/${name}.tar.gz";
-      sha256 = "1pywbxjf05qpcixshblhd2cham601zwa9w7c3k5waz4cdild6g1m";
+      sha256 = "1jnihz3029x51a455nxa0jx2z125x38q3vkkggsgdlrvawzxsm00";
     };
     propagatedBuildInputs = [ ModuleBuildWithXSpp ExtUtilsTypemapsDefault ];
   };

From d8cd48542b7c18472c7f912f8c79d4a24fa0c04f Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:02:44 +0200
Subject: [PATCH 381/567] perlPackages.CGICookieXS: update from 0.16 to 0.18

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 98a1c6d45f39..2a7e04ae5b16 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1037,10 +1037,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   CGICookieXS = buildPerlPackage rec {
-    name = "CGI-Cookie-XS-0.16";
+    name = "CGI-Cookie-XS-0.18";
     src = fetchurl {
       url = "mirror://cpan/authors/id/A/AG/AGENT/${name}.tar.gz";
-      sha256 = "1jrd3f11sz17117nvssrrf6r80fr412615n5ffspbsap4n816bnn";
+      sha256 = "1iixvnm0l1q24vdlnayb4vd8fns2bdlhm6zb7fpi884ppm5cp6a6";
     };
   };
 

From 626061e79d7c26f7ed4efcbb3033c232ce295fd0 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:02:48 +0200
Subject: [PATCH 382/567] perlPackages.CGIExpand: update from 2.03 to 2.04

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 2a7e04ae5b16..c8bd1bac447d 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1045,10 +1045,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   CGIExpand = buildPerlPackage {
-    name = "CGI-Expand-2.03";
+    name = "CGI-Expand-2.04";
     src = fetchurl {
-      url = mirror://cpan/authors/id/B/BO/BOWMANBS/CGI-Expand-2.03.tar.gz;
-      sha256 = "0p59is2mynybii8r1cpci2i17xzwhrrs4741hndhkcp4spggr0z1";
+      url = mirror://cpan/authors/id/B/BO/BOWMANBS/CGI-Expand-2.04.tar.gz;
+      sha256 = "0jk2vvk4mlz7phq3h3wpryix46adi7fkkzvkv0ssn5xkqy3pqlny";
     };
     propagatedBuildInputs = [ TestException ];
     meta = {

From beeb78701738bc7b070540486e2846ca42f4be63 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:02:51 +0200
Subject: [PATCH 383/567] perlPackages.CaptureTiny: update from 0.21 to 0.24

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index c8bd1bac447d..e036b7a94885 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -540,10 +540,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   CaptureTiny = buildPerlPackage {
-    name = "Capture-Tiny-0.21";
+    name = "Capture-Tiny-0.24";
     src = fetchurl {
-      url = mirror://cpan/authors/id/D/DA/DAGOLDEN/Capture-Tiny-0.21.tar.gz;
-      sha256 = "1lvz2639zsjpr3001b2xyidnsd4kcgll5fvaa0pm928wzldb49wg";
+      url = mirror://cpan/authors/id/D/DA/DAGOLDEN/Capture-Tiny-0.24.tar.gz;
+      sha256 = "0rg0m9irhx8jwamxdi2ms4vhhxy7q050gjrn2m051spqfa26zkwv";
     };
     meta = {
       homepage = https://metacpan.org/release/Capture-Tiny;

From 9d8ef258e361b20f1254a596062fc542706d0566 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:02:53 +0200
Subject: [PATCH 384/567] perlPackages.CatalystAuthenticationStoreDBIxClass:
 update from 0.1503 to 0.1506

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index e036b7a94885..e527c0bf54f6 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -639,10 +639,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   CatalystAuthenticationStoreDBIxClass = buildPerlPackage {
-    name = "Catalyst-Authentication-Store-DBIx-Class-0.1503";
+    name = "Catalyst-Authentication-Store-DBIx-Class-0.1506";
     src = fetchurl {
-      url = mirror://cpan/authors/id/B/BO/BOBTFISH/Catalyst-Authentication-Store-DBIx-Class-0.1503.tar.gz;
-      sha256 = "1l11if91gjfrga7i7bjxwa0zybhkkrpgg6ps3nxm30vmg7xqaf4d";
+      url = mirror://cpan/authors/id/I/IL/ILMARI/Catalyst-Authentication-Store-DBIx-Class-0.1506.tar.gz;
+      sha256 = "0i5ja7690fs9nhxcij6lw51j804sm8s06m5mvk1n8pi8jljrymvw";
     };
     propagatedBuildInputs = [ CatalystModelDBICSchema CatalystPluginAuthentication CatalystRuntime DBIxClass ListMoreUtils Moose namespaceautoclean TryTiny ];
     meta = {

From b5f3b441605f6bfd4a1ab554292169a409f4cb0b Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:02:58 +0200
Subject: [PATCH 385/567] perlPackages.CatalystDevel: update from 1.37 to 1.39

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index e527c0bf54f6..fc236501478f 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -676,10 +676,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   CatalystDevel = buildPerlPackage {
-    name = "Catalyst-Devel-1.37";
+    name = "Catalyst-Devel-1.39";
     src = fetchurl {
-      url = mirror://cpan/authors/id/B/BO/BOBTFISH/Catalyst-Devel-1.37.tar.gz;
-      sha256 = "0yk526py65iy40z10d6w0fspb8fam5rf1hzsxnfyy4lpy91lp7s9";
+      url = mirror://cpan/authors/id/I/IL/ILMARI/Catalyst-Devel-1.39.tar.gz;
+      sha256 = "12m50bbkggjmpxihv3wnvr0g2qng0zwhlzi5ygppjz8wh2x73qxw";
     };
     buildInputs = [ TestFatal ];
     propagatedBuildInputs = [ CatalystRuntime CatalystActionRenderView CatalystPluginConfigLoader CatalystPluginStaticSimple ConfigGeneral FileChangeNotify FileCopyRecursive FileShareDir ModuleInstall Moose MooseXDaemonize MooseXEmulateClassAccessorFast namespaceautoclean namespaceclean PathClass Starman TemplateToolkit ];

From b62a1edf53018f91aa88579ff9770377bd62f08d Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:03:02 +0200
Subject: [PATCH 386/567] perlPackages.CatalystDispatchTypeRegex: update from
 5.90032 to 5.90033

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index fc236501478f..2d41641508d0 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -692,10 +692,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   CatalystDispatchTypeRegex = buildPerlModule {
-    name = "Catalyst-DispatchType-Regex-5.90032";
+    name = "Catalyst-DispatchType-Regex-5.90033";
     src = fetchurl {
-      url = mirror://cpan/authors/id/M/MG/MGRIMES/Catalyst-DispatchType-Regex-5.90032.tar.gz;
-      sha256 = "003e31fe0c1d6dfc6be4d9cd47cb058a9b53a73bb6a9f74a132a43dbfbbb5e3c";
+      url = mirror://cpan/authors/id/M/MG/MGRIMES/Catalyst-DispatchType-Regex-5.90033.tar.gz;
+      sha256 = "0rdi8jxj9fz81l9pxl7q190v69vkgxgixcpals555xyiafnqk4vy";
     };
     propagatedBuildInputs = [ Moose TextSimpleTable ];
     meta = {

From 599ae0f43c911fc741e1ebced1e9c71f2a34dff8 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:03:06 +0200
Subject: [PATCH 387/567] perlPackages.CatalystManual: update from 5.9006 to
 5.9007

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 2d41641508d0..61d9a2e87105 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -723,10 +723,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   CatalystManual = buildPerlPackage {
-    name = "Catalyst-Manual-5.9006";
+    name = "Catalyst-Manual-5.9007";
     src = fetchurl {
-      url = mirror://cpan/authors/id/H/HK/HKCLARK/Catalyst-Manual-5.9006.tar.gz;
-      sha256 = "0cl9nqg5jrqcf2h3pgk6q8408czf5s0k0xh3ra884c9cnx84mr95";
+      url = mirror://cpan/authors/id/E/ET/ETHER/Catalyst-Manual-5.9007.tar.gz;
+      sha256 = "140526pzzqc1vyxkk9fxvp9ds3kk2rncf8nf7iz0adlr219pkg3j";
     };
     meta = {
       description = "The Catalyst developer's manual";

From 04cdf8a974f674cdf853f02f1388da9738eb2e65 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:03:09 +0200
Subject: [PATCH 388/567] perlPackages.CatalystPluginConfigLoader: update from
 0.30 to 0.33

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 61d9a2e87105..4c906ad6330d 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -860,10 +860,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   CatalystPluginConfigLoader = buildPerlPackage rec {
-    name = "Catalyst-Plugin-ConfigLoader-0.30";
+    name = "Catalyst-Plugin-ConfigLoader-0.33";
     src = fetchurl {
-      url = "mirror://cpan/modules/by-module/Catalyst/${name}.tar.gz";
-      sha256 = "1rshgsvs9ngpd4nang4flq6mx9v71w1z5klp1rm8llc88pxlqahm";
+      url = "mirror://cpan/authors/id/B/BO/BOBTFISH/${name}.tar.gz";
+      sha256 = "0m18yqcwx5fzz4lrd5db8x8wyir1061pclv5jb9g963wbg4zk43g";
     };
     propagatedBuildInputs = [CatalystRuntime DataVisitor ConfigAny MROCompat];
   };

From 2017c7a1eba156fbff5fb817b44288e380311b59 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:03:12 +0200
Subject: [PATCH 389/567] perlPackages.CatalystPluginSession: update from 0.36
 to 0.39

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 4c906ad6330d..f646597cd8cd 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -894,10 +894,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   CatalystPluginSession = buildPerlPackage {
-    name = "Catalyst-Plugin-Session-0.36";
+    name = "Catalyst-Plugin-Session-0.39";
     src = fetchurl {
-      url = mirror://cpan/authors/id/B/BO/BOBTFISH/Catalyst-Plugin-Session-0.36.tar.gz;
-      sha256 = "14wgkrg3w69gwg6zg991k5f611xqsnyx0i0xzhw9rx2j5nf9rj4b";
+      url = mirror://cpan/authors/id/J/JJ/JJNAPIORK/Catalyst-Plugin-Session-0.39.tar.gz;
+      sha256 = "0m4a003qgz7848iyckwbigg2vw3kmfxggh1razrnzxrbz3n6x5gi";
     };
     buildInputs = [ TestDeep TestException TestWWWMechanizePSGI ];
     propagatedBuildInputs = [ CatalystRuntime Moose MooseXEmulateClassAccessorFast MROCompat namespaceclean ObjectSignature ];

From 66d3ba9cae7001533d90a0e579205238f6648f56 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:03:16 +0200
Subject: [PATCH 390/567] perlPackages.CatalystPluginStackTrace: update from
 0.11 to 0.12

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index f646597cd8cd..0bc1fb42da0f 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -928,10 +928,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   CatalystPluginStackTrace = buildPerlPackage {
-    name = "Catalyst-Plugin-StackTrace-0.11";
+    name = "Catalyst-Plugin-StackTrace-0.12";
     src = fetchurl {
-      url = mirror://cpan/authors/id/M/MS/MSTROUT/Catalyst-Plugin-StackTrace-0.11.tar.gz;
-      sha256 = "1ingivnga1yb4dqsj6icc4a58i9wdalzpn2qflsn8n2skgm223qb";
+      url = mirror://cpan/authors/id/B/BO/BOBTFISH/Catalyst-Plugin-StackTrace-0.12.tar.gz;
+      sha256 = "1b2ksz74cpigxqzf63rddar3vfmnbpwpdcbs11v0ml89pb8ar79j";
     };
     propagatedBuildInputs = [ CatalystRuntime DevelStackTrace MROCompat ];
     meta = {

From 03e9004bc82a17656c422bb3bc1cc6a44774b561 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:03:19 +0200
Subject: [PATCH 391/567] perlPackages.CatalystPluginStaticSimple: update from
 0.30 to 0.31

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 0bc1fb42da0f..eba267938506 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -941,10 +941,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   CatalystPluginStaticSimple = buildPerlPackage {
-    name = "Catalyst-Plugin-Static-Simple-0.30";
+    name = "Catalyst-Plugin-Static-Simple-0.31";
     src = fetchurl {
-      url = mirror://cpan/authors/id/A/AB/ABRAXXA/Catalyst-Plugin-Static-Simple-0.30.tar.gz;
-      sha256 = "18zar1n4imgnv7b4dr5sxyikry4668ngqgc6f0dr210bqafvwv7w";
+      url = mirror://cpan/authors/id/A/AB/ABRAXXA/Catalyst-Plugin-Static-Simple-0.31.tar.gz;
+      sha256 = "1mcns9qdpnja153prbyypwjicgpm1sn7rw75k7hm28g3vf59z733";
     };
     patches = [ ../development/perl-modules/catalyst-plugin-static-simple-etag.patch ];
     propagatedBuildInputs = [ CatalystRuntime MIMETypes Moose MooseXTypes namespaceautoclean ];

From da172c171ba459c5bbf4a04dcbff6a3786fefafc Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:03:23 +0200
Subject: [PATCH 392/567] perlPackages.CatalystViewDownload: update from 0.07
 to 0.09

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index eba267938506..04a37fbdd3c8 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -955,10 +955,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   CatalystViewDownload = buildPerlPackage rec {
-    name = "Catalyst-View-Download-0.07";
+    name = "Catalyst-View-Download-0.09";
     src = fetchurl {
-      url = "mirror://cpan/modules/by-module/Catalyst/${name}.tar.gz";
-      sha256 = "1c6k4x6az0fkany16zlyaqhlp7bcx922vl4qzd3z707vs6pc06rz";
+      url = "mirror://cpan/authors/id/G/GA/GAUDEON/${name}.tar.gz";
+      sha256 = "1qgq6y9iwfbhbkbgpw9czang2ami6z8jk1zlagrzdisy4igqzkvs";
     };
     buildInputs = [  TestWWWMechanizeCatalyst Testuseok ];
     propagatedBuildInputs = [ CatalystRuntime TextCSV XMLSimple ];

From d67240b5b90d0912bd44de4b11fc5cd48a30e32f Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:03:28 +0200
Subject: [PATCH 393/567] perlPackages.CatalystViewTT: update from 0.40 to 0.41

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 04a37fbdd3c8..2ef0e3bd8ccf 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -979,10 +979,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   CatalystViewTT = buildPerlPackage {
-    name = "Catalyst-View-TT-0.40";
+    name = "Catalyst-View-TT-0.41";
     src = fetchurl {
-      url = mirror://cpan/authors/id/I/IL/ILMARI/Catalyst-View-TT-0.40.tar.gz;
-      sha256 = "0j73mk631p9x0b0l24ikavh9nxl6lpya4g46fpanjk396d2zj8bs";
+      url = mirror://cpan/authors/id/J/JJ/JJNAPIORK/Catalyst-View-TT-0.41.tar.gz;
+      sha256 = "1yrigxqapxj4k1qkykiiqy6a30ljb7hlkaw80d7n0n5mpm67j1nb";
     };
     propagatedBuildInputs = [ CatalystRuntime ClassAccessor MROCompat PathClass TemplateToolkit TemplateTimer ];
     meta = {

From 442f027c69ef41d89c46f1cddc5c530e7566d0fa Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:03:31 +0200
Subject: [PATCH 394/567] perlPackages.CatalystXComponentTraits: update from
 0.16 to 0.19

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 2ef0e3bd8ccf..321be019f4c1 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -992,10 +992,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   CatalystXComponentTraits = buildPerlPackage rec {
-    name = "CatalystX-Component-Traits-0.16";
+    name = "CatalystX-Component-Traits-0.19";
     src = fetchurl {
-      url = "mirror://cpan/modules/by-module/CatalystX/${name}.tar.gz";
-      sha256 = "0a2mhfgv0kqmaxf2crs8mqk44lyhd9qcwlpzhrc0b0dh4z503mr4";
+      url = "mirror://cpan/authors/id/R/RK/RKITOVER/${name}.tar.gz";
+      sha256 = "0iq4ci8m6g2c4g01fvdl568y7pjz28f3widk986v3pyhr7ll8j88";
     };
     propagatedBuildInputs =
       [ CatalystRuntime MooseXTraitsPluggable namespaceautoclean ListMoreUtils ];

From 3049b02731bc80d0f4dc12fc5573f85bad9209e4 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:03:34 +0200
Subject: [PATCH 395/567] perlPackages.ClassBase: update from 0.03 to 0.05

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 321be019f4c1..9f5452b70445 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1144,10 +1144,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ClassBase = buildPerlPackage rec {
-    name = "Class-Base-0.03";
+    name = "Class-Base-0.05";
     src = fetchurl {
-      url = "mirror://cpan/authors/id/A/AB/ABW/${name}.tar.gz";
-      sha256 = "149875qzfyayvkb6dm8frg0kmkzyjswwrjz7gyvwi7l8b19kiyk4";
+      url = "mirror://cpan/authors/id/S/SZ/SZABGAB/${name}.tar.gz";
+      sha256 = "0vryy6b64f2wbfc2zzzvh6ravkp5i4kjdxhjbj3s08g9pwyc67y6";
     };
   };
 

From adaa09ea51eb51c77ee0c66b243d01ae49172010 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:03:37 +0200
Subject: [PATCH 396/567] perlPackages.ClassC3: update from 0.24 to 0.26

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 9f5452b70445..f56d86027e2a 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1152,10 +1152,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ClassC3 = buildPerlPackage {
-    name = "Class-C3-0.24";
+    name = "Class-C3-0.26";
     src = fetchurl {
-      url = mirror://cpan/authors/id/F/FL/FLORA/Class-C3-0.24.tar.gz;
-      sha256 = "1nhwf7bj7z5szk7sxmq0ynqh2k9p42a7zkfyikkairfb78xckpkz";
+      url = mirror://cpan/authors/id/H/HA/HAARG/Class-C3-0.26.tar.gz;
+      sha256 = "008xg6gf5qp2fdjqzfpg0fzhw7f308ddkxwvzdcaa9zq59sg5x6s";
     };
     propagatedBuildInputs = [ AlgorithmC3 ];
     meta = {

From 9fbd2668a5824b0313daca41f4dc422dca4ed143 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:03:41 +0200
Subject: [PATCH 397/567] perlPackages.ClassLoad: update from 0.20 to 0.21

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index f56d86027e2a..5a6255da5103 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1309,10 +1309,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ClassLoad = buildPerlPackage {
-    name = "Class-Load-0.20";
+    name = "Class-Load-0.21";
     src = fetchurl {
-      url = mirror://cpan/authors/id/D/DR/DROLSKY/Class-Load-0.20.tar.gz;
-      sha256 = "084cxrm0hcpyz3ly1iqkcjpl4bs03n42na37d3pzwa8xbs44ag42";
+      url = mirror://cpan/authors/id/E/ET/ETHER/Class-Load-0.21.tar.gz;
+      sha256 = "0z04r0jdk8l3qd96f75q3042p76hr4i747dg87s7xrpp0bjbmn8h";
     };
     buildInputs = [ TestFatal TestRequires ];
     propagatedBuildInputs = [ DataOptList ModuleImplementation ModuleRuntime PackageStash TryTiny ];

From a826bd48361d47c31bd0c4af9ad39cf876623637 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:03:45 +0200
Subject: [PATCH 398/567] perlPackages.ClassMethodMaker: update from 2.18 to
 2.21

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 5a6255da5103..37a2e216d835 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1255,10 +1255,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ClassMethodMaker = buildPerlPackage {
-    name = "Class-MethodMaker-2.18";
+    name = "Class-MethodMaker-2.21";
     src = fetchurl {
-      url = mirror://cpan/authors/id/S/SC/SCHWIGON/Class-MethodMaker-2.18.tar.gz;
-      sha256 = "223b7a79025e9bff984d755f9744182505e110680b13eedbac2831d45ddbeeba";
+      url = mirror://cpan/authors/id/S/SC/SCHWIGON/class-methodmaker/Class-MethodMaker-2.21.tar.gz;
+      sha256 = "0gca1cjy2k0mrpfnbyzm5islzfayqfvg3zzlrlm7n60p0cb48y7w";
     };
     preConfigure = "patchShebangs .";
     meta = {

From 9a091a98b87ebd048a4b715b4a8000fe680ca6a9 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:03:49 +0200
Subject: [PATCH 399/567] perlPackages.ClassMethodModifiers: update from 2.00
 to 2.10

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 37a2e216d835..35941ada7908 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1268,10 +1268,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ClassMethodModifiers = buildPerlPackage {
-    name = "Class-Method-Modifiers-2.00";
+    name = "Class-Method-Modifiers-2.10";
     src = fetchurl {
-      url = mirror://cpan/authors/id/S/SA/SARTAK/Class-Method-Modifiers-2.00.tar.gz;
-      sha256 = "0lvj38ahqqyhv9dpi7ks1cq35f19nfw8ygxw22x2mcmagl8mnkhs";
+      url = mirror://cpan/authors/id/E/ET/ETHER/Class-Method-Modifiers-2.10.tar.gz;
+      sha256 = "1dp757rzv6a9k7q0bpmjxv69g4r893vb143qq7fyqlwzg0zva3s2";
     };
     buildInputs = [ TestFatal ];
     meta = {

From 4c05aacb52c51c4a96508e1e0431735fbde9350c Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:03:52 +0200
Subject: [PATCH 400/567] perlPackages.ClassThrowable: update from 0.10 to 0.11

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 35941ada7908..346ad4190ffc 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1301,10 +1301,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ClassThrowable = buildPerlPackage {
-    name = "Class-Throwable-0.10";
+    name = "Class-Throwable-0.11";
     src = fetchurl {
-      url = mirror://cpan/authors/id/S/ST/STEVAN/Class-Throwable-0.10.tar.gz;
-      sha256 = "01hjrfb951c9j83ncg5drnam8vsfdgkjjv0kjshxhkl93sgnlvdl";
+      url = mirror://cpan/authors/id/K/KM/KMX/Class-Throwable-0.11.tar.gz;
+      sha256 = "1vjadr0kqmfi9s3wfxjbqqgc7fqrk87n6b1a5979sbxxk5yh8hyk";
     };
   };
 

From 5198214d7074abe6208c90ccea504ac4ad431fcc Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:03:55 +0200
Subject: [PATCH 401/567] perlPackages.ClassUnload: update from 0.07 to 0.08

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 346ad4190ffc..d3de94f5848a 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1339,10 +1339,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ClassUnload = buildPerlPackage rec {
-    name = "Class-Unload-0.07";
+    name = "Class-Unload-0.08";
     src = fetchurl {
-      url = "mirror://cpan/modules/by-module/Class//${name}.tar.gz";
-      sha256 = "1alvn94j0wgfyyym092g9cq0mbhzin0zf7lfja6578jk5cc788rr";
+      url = "mirror://cpan/authors/id/I/IL/ILMARI/${name}.tar.gz";
+      sha256 = "097gr3r2jgnm1175m4lpg4a97hv2mxrn9r0b2c6bn1x9xdhkywgh";
     };
     propagatedBuildInputs = [ ClassInspector ];
   };

From 02cd3d3f2dbf6edc053e5c6a30326ba212bd889c Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:03:58 +0200
Subject: [PATCH 402/567] perlPackages.ClassXSAccessor: update from 1.16 to
 1.19

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index d3de94f5848a..8a7a910db8a2 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1348,10 +1348,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ClassXSAccessor = buildPerlPackage {
-    name = "Class-XSAccessor-1.16";
+    name = "Class-XSAccessor-1.19";
     src = fetchurl {
-      url = mirror://cpan/authors/id/S/SM/SMUELLER/Class-XSAccessor-1.16.tar.gz;
-      sha256 = "1yjpw9kssy4m52407k45hxjnqz02494z7x8j44pjzkyi8msafvg5";
+      url = mirror://cpan/authors/id/S/SM/SMUELLER/Class-XSAccessor-1.19.tar.gz;
+      sha256 = "1wm6013il899jnm0vn50a7iv9v6r4nqywbqzj0csyf8jbwwnpicr";
     };
     meta = {
       description = "Generate fast XS accessors without runtime compilation";

From 35a8be6a0c524c7d27f9700939a999ab5aa24fe3 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:04:02 +0200
Subject: [PATCH 403/567] perlPackages.CompressRawBzip2: update from 2.063 to
 2.064

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 8a7a910db8a2..07b3667ebd5d 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1383,10 +1383,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   CompressRawBzip2 = buildPerlPackage {
-    name = "Compress-Raw-Bzip2-2.063";
+    name = "Compress-Raw-Bzip2-2.064";
     src = fetchurl {
-      url = mirror://cpan/authors/id/P/PM/PMQS/Compress-Raw-Bzip2-2.063.tar.gz;
-      sha256 = "0qi2jg76pgx1qkh4897g746cxqjr2njzzbyv2k9pq4m1m2v3jr6s";
+      url = mirror://cpan/authors/id/P/PM/PMQS/Compress-Raw-Bzip2-2.064.tar.gz;
+      sha256 = "0aqbggr9yf4hn21a9fra111rlmva3w8f3mqvbchl5l86knkbkwy3";
     };
 
     # Don't build a private copy of bzip2.

From 00eaaf091a46dad3d84025f11fd3ee49ac34051a Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:04:05 +0200
Subject: [PATCH 404/567] perlPackages.CompressRawZlib: update from 2.063 to
 2.065

---
 pkgs/development/perl-modules/Compress-Raw-Zlib/default.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/development/perl-modules/Compress-Raw-Zlib/default.nix b/pkgs/development/perl-modules/Compress-Raw-Zlib/default.nix
index 9310e3ca0816..5d22970155b6 100644
--- a/pkgs/development/perl-modules/Compress-Raw-Zlib/default.nix
+++ b/pkgs/development/perl-modules/Compress-Raw-Zlib/default.nix
@@ -1,11 +1,11 @@
 { fetchurl, buildPerlPackage, zlib, stdenv }:
 
 buildPerlPackage rec {
-  name = "Compress-Raw-Zlib-2.063";
+  name = "Compress-Raw-Zlib-2.065";
 
   src = fetchurl {
-    url = "mirror://cpan/modules/by-module/Compress/${name}.tar.gz";
-    sha256 = "16cn9pq4pngncs3qhlam0yw2l0q7hq4qfdyxp03jaad6ndc4dzp9";
+    url = "mirror://cpan/authors/id/P/PM/PMQS/${name}.tar.gz";
+    sha256 = "1i09h3dvn8ipaj1l2nq2qd19wzhn7wcpbsipdkcniwi0sgy1kf1p";
   };
 
   preConfigure = ''

From 8843b31863ffd230c60e9b337483091ea2dc9164 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:04:08 +0200
Subject: [PATCH 405/567] perlPackages.ConfigMVP: update from 2.200004 to
 2.200007

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 07b3667ebd5d..1a728886a0f2 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1464,10 +1464,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ConfigMVP = buildPerlPackage {
-    name = "Config-MVP-2.200004";
+    name = "Config-MVP-2.200007";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RJ/RJBS/Config-MVP-2.200004.tar.gz;
-      sha256 = "dbe473f4b0fc649b82574aa71b0c5da3359058e181928d5e9197fc0ef247c3ec";
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Config-MVP-2.200007.tar.gz;
+      sha256 = "10hc8v22mv56wqi6drpl4pw3r8y3xrgh80ayrb2gir80ah9s5bvi";
     };
     buildInputs = [ TestFatal ];
     propagatedBuildInputs = [ ClassLoad Moose MooseXOneArgNew ParamsUtil RoleHasMessage RoleIdentifiable Throwable TieIxHash TryTiny ];

From 42d2cf897eb67947ccca17c16646654c9fb8a3e2 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:04:12 +0200
Subject: [PATCH 406/567] perlPackages.ConfigTiny: update from 2.12 to 2.20

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 1a728886a0f2..477d831ecf15 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1493,10 +1493,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   ConfigTiny = buildPerlPackage rec {
-    name = "Config-Tiny-2.12";
+    name = "Config-Tiny-2.20";
     src = fetchurl {
-      url = "mirror://cpan/authors/id/A/AD/ADAMK/${name}.tar.gz";
-      sha256 = "1a5b7f5e8245a3e7be859df571209353be30abc7292815ee0f459b8dc87cdb5b";
+      url = "mirror://cpan/authors/id/R/RS/RSAVAGE/${name}.tgz";
+      sha256 = "0grgb7av1hwpl20xh91jipla1xi0h7vx6c538arxmvgm1f71cql2";
     };
   };
 

From 665f7e653a7bd6c8d359262bce008d942f738709 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:04:15 +0200
Subject: [PATCH 407/567] perlPackages.Coro: update from 6.33 to 6.37

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 477d831ecf15..4d7a2d1288f5 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1559,10 +1559,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   Coro = buildPerlPackage {
-    name = "Coro-6.33";
+    name = "Coro-6.37";
     src = fetchurl {
-      url = mirror://cpan/authors/id/M/ML/MLEHMANN/Coro-6.33.tar.gz;
-      sha256 = "1497wd9df10y65rb0w5h4h6wiy3smw9maw7z0gbz6dir774znfb5";
+      url = mirror://cpan/authors/id/M/ML/MLEHMANN/Coro-6.37.tar.gz;
+      sha256 = "08qkwv7rpyb7zcp128crjakflc027sjkx9d2s1gzc21grsq9a456";
     };
     propagatedBuildInputs = [ AnyEvent Guard CommonSense ];
     meta = {

From 4b906253d80a4209575896c70791cbf09e46f2aa Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:04:22 +0200
Subject: [PATCH 408/567] perlPackages.CryptDHGMP: update from 0.00011 to
 0.00012

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 4d7a2d1288f5..797bb2a1a231 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1671,10 +1671,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   CryptDHGMP = buildPerlPackage rec {
-    name = "Crypt-DH-GMP-0.00011";
+    name = "Crypt-DH-GMP-0.00012";
     src = fetchurl {
-      url = "mirror://cpan/authors/id//D/DM/DMAKI/${name}.tar.gz";
-      sha256 = "0c9sz67lh2d2pn9z82hngzns4sqqnawdc8a1yl7p7pc0l4r0q3hz";
+      url = "mirror://cpan/authors/id/D/DM/DMAKI/${name}.tar.gz";
+      sha256 = "0f5gdprcql4kwzgxl2s6ngcfg1jl45lzcqh7dkv5bkwlwmxa9rsi";
     };
     buildInputs = [ DevelChecklib TestRequires pkgs.gmp ];
     NIX_CFLAGS_COMPILE = "-I${pkgs.gmp}/include";

From 33d9f8bd5c9a6d51970b93a57b98983ec71eb588 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:04:25 +0200
Subject: [PATCH 409/567] perlPackages.CryptOpenSSLRandom: update from 0.04 to
 0.06

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 797bb2a1a231..4b4bbf3183d7 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1765,10 +1765,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   CryptOpenSSLRandom = buildPerlPackage rec {
-    name = "Crypt-OpenSSL-Random-0.04";
+    name = "Crypt-OpenSSL-Random-0.06";
     src = fetchurl {
-      url = "mirror://cpan/authors/id/I/IR/IROBERTS/${name}.tar.gz";
-      sha256 = "acf7eb81023cd1f40d8c60b893096d041513df2be2aefe145cc7ae1a3dcc78c7";
+      url = "mirror://cpan/authors/id/R/RU/RURBAN/${name}.tar.gz";
+      sha256 = "10yhjh04jxdf4ghqqvrcfds7vvylxv671l57lkkbg3k8qzpdzd7g";
     };
     NIX_CFLAGS_COMPILE = "-I${pkgs.openssl}/include";
     NIX_CFLAGS_LINK = "-L${pkgs.openssl}/lib -lcrypto";

From 3f323615b286d9c4372b83e42b599f55d2854b50 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:04:28 +0200
Subject: [PATCH 410/567] perlPackages.CryptPasswdMD5: update from 1.3 to 1.40

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 4b4bbf3183d7..6144f62d5639 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1691,10 +1691,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   CryptPasswdMD5 = buildPerlPackage {
-    name = "Crypt-PasswdMD5-1.3";
+    name = "Crypt-PasswdMD5-1.40";
     src = fetchurl {
-      url = mirror://cpan/authors/id/L/LU/LUISMUNOZ/Crypt-PasswdMD5-1.3.tar.gz;
-      sha256 = "13j0v6ihgx80q8jhyas4k48b64gnzf202qajyn097vj8v48khk54";
+      url = mirror://cpan/authors/id/R/RS/RSAVAGE/Crypt-PasswdMD5-1.40.tgz;
+      sha256 = "0j0r74f18nk63phddzqbf7wqma2ci4p4bxvrwrxsy0aklbp6lzdp";
     };
   };
 

From d3a072b81c48ff40c5894f5d3e9f7b332204541f Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:04:37 +0200
Subject: [PATCH 411/567] perlPackages.CryptRandPasswd: update from 0.03 to
 0.05

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 6144f62d5639..c086312e5e4c 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1724,10 +1724,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   CryptRandPasswd = buildPerlPackage {
-    name = "Crypt-RandPasswd-0.03";
+    name = "Crypt-RandPasswd-0.05";
     src = fetchurl {
-      url = mirror://cpan/authors/id/N/NE/NEILB/Crypt-RandPasswd-0.03.tar.gz;
-      sha256 = "0sz2b4gj2mcwj0nqvxw3gs5m49jzfbi0vla51hj957dvfk00plhf";
+      url = mirror://cpan/authors/id/N/NE/NEILB/Crypt-RandPasswd-0.05.tar.gz;
+      sha256 = "0djcjzk0wmlf02gx9935m7c1dhpmdwx3hjal8x80aa92baavwf2s";
     };
   };
 

From 4f8820cce6e797cfc497d175381b0d9b69c87c2f Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:04:40 +0200
Subject: [PATCH 412/567] perlPackages.CryptRijndael: update from 1.11 to 1.12

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index c086312e5e4c..bdd2ee151fff 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1741,10 +1741,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   CryptRijndael = buildPerlPackage rec {
-    name = "Crypt-Rijndael-1.11";
+    name = "Crypt-Rijndael-1.12";
     src = fetchurl {
       url = "mirror://cpan/authors/id/B/BD/BDFOY/${name}.tar.gz";
-      sha256 = "8f8833bc8839e0d4aa3c26d86d2f39ceb9b13e52a9f5e4fd928da2e71989d3b4";
+      sha256 = "1rgzlxp882cc52287awwha4ipglm6nxw5jryd6cshrr99qcx55m0";
     };
   };
 

From ce938b40bf49e3ec3adcf36090757f917ab436d0 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:04:44 +0200
Subject: [PATCH 413/567] perlPackages.CryptUnixCryptXS: update from 0.09 to
 0.10

---
 pkgs/top-level/perl-packages.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index bdd2ee151fff..a1b4f5d1fe1b 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1749,10 +1749,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   CryptUnixCryptXS = buildPerlPackage rec {
-    name = "Crypt-UnixCrypt_XS-0.09";
+    name = "Crypt-UnixCrypt_XS-0.10";
     src = fetchurl {
       url = "mirror://cpan/authors/id/B/BO/BORISZ/${name}.tar.gz";
-      sha256 = "527c32b8b6eb50d52b081ceae4be2d748e718e40ea85940da59a3adeb3a33156";
+      sha256 = "1d3xamq2mm3v2bfb1ay66crljm0bigfbhay1fqglcsrb75b7ls7r";
     };
   };
 

From c67a5180bf402edc5f9a9d2e0d587cffee909e71 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:04:49 +0200
Subject: [PATCH 414/567] perlPackages.DBDPg: update from 2.19.3 to 3.0.0

---
 pkgs/development/perl-modules/DBD-Pg/default.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/development/perl-modules/DBD-Pg/default.nix b/pkgs/development/perl-modules/DBD-Pg/default.nix
index be5faa330aea..619f2f14b96b 100644
--- a/pkgs/development/perl-modules/DBD-Pg/default.nix
+++ b/pkgs/development/perl-modules/DBD-Pg/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, buildPerlPackage, DBI, postgresql }:
 
 buildPerlPackage rec {
-  name = "DBD-Pg-2.19.3";
+  name = "DBD-Pg-3.0.0";
 
   src = fetchurl {
-    url = "mirror://cpan/modules/by-module/DBD/${name}.tar.gz";
-    sha256 = "0ai6p2094hrh6kjlwfjvpw2z8wqa3scr4ba3p6rqza3z9c9hsd9p";
+    url = "mirror://cpan/authors/id/T/TU/TURNSTEP/${name}.tar.gz";
+    sha256 = "10s1dhpxxqfl421388l6gzfdm1gzxf5iah42i1w6yji9mgkz8hf8";
   };
 
   buildInputs = [ postgresql ];

From 2624dc357571ab5ff96f2d3ceb4662bb6e74a748 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:04:53 +0200
Subject: [PATCH 415/567] perlPackages.DBDSQLite: update from 1.37 to 1.42

---
 pkgs/development/perl-modules/DBD-SQLite/default.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/development/perl-modules/DBD-SQLite/default.nix b/pkgs/development/perl-modules/DBD-SQLite/default.nix
index 06688ded22a5..7b1741c3d1e9 100644
--- a/pkgs/development/perl-modules/DBD-SQLite/default.nix
+++ b/pkgs/development/perl-modules/DBD-SQLite/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, buildPerlPackage, DBI, sqlite }:
 
 buildPerlPackage rec {
-  name = "DBD-SQLite-1.37";
+  name = "DBD-SQLite-1.42";
 
   src = fetchurl {
-    url = "mirror://cpan/authors/id/A/AD/ADAMK/${name}.tar.gz";
-    sha256 = "0197kvlziaj2wfdbzlhdlqmzvb29fmfyy6y2isbbwlg0b0f7ccd1";
+    url = "mirror://cpan/authors/id/I/IS/ISHIGAKI/${name}.tar.gz";
+    sha256 = "14x9cjsc8dz8ad1nad0bqiq9cbk1rjfb8h5y0rpk3pdl38y6afxb";
   };
 
   propagatedBuildInputs = [ DBI ];

From 639c075ca54c782f84bb42593383080d90ed1254 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:04:57 +0200
Subject: [PATCH 416/567] perlPackages.DBI: update from 1.630 to 1.631

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index a1b4f5d1fe1b..ad489448dd4c 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -2287,10 +2287,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   DBI = buildPerlPackage {
-    name = "DBI-1.630";
+    name = "DBI-1.631";
     src = fetchurl {
-      url = mirror://cpan/authors/id/T/TI/TIMB/DBI-1.630.tar.gz;
-      sha256 = "18szayj2bl28fm9frf9v1dwncj67bx3rvw8ny1zwbvc6alshs5ji";
+      url = mirror://cpan/authors/id/T/TI/TIMB/DBI-1.631.tar.gz;
+      sha256 = "04fmrnchhwi7jx4niaiv93vmi343hdm3xj04w9zr2m9hhqh782np";
     };
     meta = {
       homepage = http://dbi.perl.org/;

From bfe8e8148ac8212c61978be63090a9e1a16392eb Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:05:01 +0200
Subject: [PATCH 417/567] perlPackages.DBIxClassCandy: update from 0.002103 to
 0.002104

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index ad489448dd4c..82d89f55ee7d 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -2315,10 +2315,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   DBIxClassCandy = buildPerlPackage {
-    name = "DBIx-Class-Candy-0.002103";
+    name = "DBIx-Class-Candy-0.002104";
     src = fetchurl {
-      url = mirror://cpan/authors/id/F/FR/FREW/DBIx-Class-Candy-0.002103.tar.gz;
-      sha256 = "1vcaigvzxq9jjkhw2bkayrnsa76sakr3wrv7009f1dxyfa0iyrsk";
+      url = mirror://cpan/authors/id/F/FR/FREW/DBIx-Class-Candy-0.002104.tar.gz;
+      sha256 = "0b0fsm3waqm43qmhcynb2s6p8hi9yr41p9c4c5aq6l58x3xwvp34";
     };
     propagatedBuildInputs = [ TestDeep TestFatal DBIxClass LinguaENInflect StringCamelCase ];
     meta = {

From 83a4c1ed79038e618d30a9e67f6247862d76b34b Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:05:04 +0200
Subject: [PATCH 418/567] perlPackages.DataCompare: update from 1.22 to 1.2102

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 82d89f55ee7d..cc76cac2146e 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1810,10 +1810,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   DataCompare = buildPerlPackage rec {
-    name = "Data-Compare-1.22";
+    name = "Data-Compare-1.2102";
     src = fetchurl {
-      url = "mirror://cpan/modules/by-module/Data/${name}.tar.gz";
-      sha256 = "1bz8qasp3ndiprxq2l0llbc0xbnjq11lz0l1lfzxiap7v1y2r3yf";
+      url = "mirror://cpan/authors/id/D/DC/DCANTRELL/${name}.tar.gz";
+      sha256 = "0v1997gnq3gpcr7f64jmyay2l60s5z6gsiy5hbpn1p2l2hrfnwlj";
     };
     propagatedBuildInputs = [ FileFindRule ];
   };

From 28410f40b4f15c3f14698bcdec62c07bf9c43d12 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Mon, 7 Apr 2014 14:05:09 +0200
Subject: [PATCH 419/567] perlPackages.DataPage: update from 2.01 to 2.02

---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index cc76cac2146e..df06b82ab298 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1887,10 +1887,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   DataPage = buildPerlPackage {
-    name = "Data-Page-2.01";
+    name = "Data-Page-2.02";
     src = fetchurl {
-      url = mirror://cpan/authors/id/L/LB/LBROCARD/Data-Page-2.01.tar.gz;
-      sha256 = "0mvhlid9qx9yd94rgr4lfz9kvflimc1dzcah0x7q5disw39aqrzr";
+      url = mirror://cpan/authors/id/L/LB/LBROCARD/Data-Page-2.02.tar.gz;
+      sha256 = "1hvi92c4h2angryc6pngw7gbm3ysc2jfmyxk2wh9ia4vdwpbs554";
     };
     propagatedBuildInputs = [TestException ClassAccessorChained];
   };

From 2ba552fb2e7745ddbc52001208f89f7f82310251 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Tue, 8 Apr 2014 13:27:51 +0200
Subject: [PATCH 420/567] Revert "Fix services.udisks.enable."

This reverts commit 02a30bea44edf1116dcab16c5e64501312b2927b,
necessary after reverting to udisks 1.0.4.

http://hydra.nixos.org/build/10194840
---
 nixos/modules/services/hardware/udisks.nix  | 2 --
 pkgs/os-specific/linux/udisks/1-default.nix | 5 -----
 2 files changed, 7 deletions(-)

diff --git a/nixos/modules/services/hardware/udisks.nix b/nixos/modules/services/hardware/udisks.nix
index a3527468cce6..531ee192573a 100644
--- a/nixos/modules/services/hardware/udisks.nix
+++ b/nixos/modules/services/hardware/udisks.nix
@@ -40,8 +40,6 @@ with pkgs.lib;
       '';
 
     services.udev.packages = [ pkgs.udisks ];
-
-    systemd.packages = [ pkgs.udisks ];
   };
 
 }
diff --git a/pkgs/os-specific/linux/udisks/1-default.nix b/pkgs/os-specific/linux/udisks/1-default.nix
index 8c112417f0a3..09731d54ab75 100644
--- a/pkgs/os-specific/linux/udisks/1-default.nix
+++ b/pkgs/os-specific/linux/udisks/1-default.nix
@@ -19,11 +19,6 @@ stdenv.mkDerivation rec {
       substituteInPlace src/main.c --replace \
         "/sbin:/bin:/usr/sbin:/usr/bin" \
         "${utillinux}/bin:${mdadm}/sbin:/var/run/current-system/sw/bin:/var/run/current-system/sw/sbin"
-
-      # For some reason @libexec@ is set to 'lib/' when building.
-      # Passing --libexecdir in configureFlags didn't help.
-      substituteInPlace data/systemd/udisks.service.in \
-        --replace "@libexecdir@" "$out/libexec"
     '';
 
   buildInputs =

From 06614031d634f2b4af90d87c140465cba0731275 Mon Sep 17 00:00:00 2001
From: Luca Bruno <lucabru@src.gnome.org>
Date: Sun, 6 Apr 2014 21:20:45 +0200
Subject: [PATCH 421/567] accountservice: add dbus and systemd services

Enable by default with gnome3.
---
 nixos/modules/module-list.nix                 |  1 +
 .../services/desktops/accountservice.nix      | 40 +++++++++++++++++++
 .../services/x11/desktop-managers/gnome3.nix  |  1 +
 .../libraries/accountservice/default.nix      |  7 +++-
 4 files changed, 47 insertions(+), 2 deletions(-)
 create mode 100644 nixos/modules/services/desktops/accountservice.nix

diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index 86bb87e91dec..0b482dcda1bc 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -96,6 +96,7 @@
   ./services/databases/postgresql.nix
   ./services/databases/virtuoso.nix
   ./services/databases/monetdb.nix
+  ./services/desktops/accountservice.nix
   ./services/games/ghost-one.nix
   ./services/games/minecraft-server.nix
   ./services/hardware/acpid.nix
diff --git a/nixos/modules/services/desktops/accountservice.nix b/nixos/modules/services/desktops/accountservice.nix
new file mode 100644
index 000000000000..b21207f05a11
--- /dev/null
+++ b/nixos/modules/services/desktops/accountservice.nix
@@ -0,0 +1,40 @@
+# AccountsService daemon.
+
+{ config, pkgs, ... }:
+
+with pkgs.lib;
+
+{
+
+  ###### interface
+
+  options = {
+
+    services.accounts-daemon = {
+
+      enable = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Whether to enable AccountsService, a DBus service for accessing
+          the list of user accounts and information attached to those accounts.
+        '';
+      };
+
+    };
+
+  };
+
+
+  ###### implementation
+
+  config = mkIf config.services.accounts-daemon.enable {
+
+    environment.systemPackages = [ pkgs.accountservice ];
+
+    services.dbus.packages = [ pkgs.accountservice ];
+
+    systemd.packages = [ pkgs.accountservice ];
+  };
+
+}
diff --git a/nixos/modules/services/x11/desktop-managers/gnome3.nix b/nixos/modules/services/x11/desktop-managers/gnome3.nix
index 4f876b9b111c..381ebc7ad29f 100644
--- a/nixos/modules/services/x11/desktop-managers/gnome3.nix
+++ b/nixos/modules/services/x11/desktop-managers/gnome3.nix
@@ -22,6 +22,7 @@ in {
     # Enable helpful DBus services.
     security.polkit.enable = true;
     services.udisks2.enable = true;
+    services.accounts-daemon.enable = true;
     networking.networkmanager.enable = true;
     services.upower.enable = config.powerManagement.enable;
 
diff --git a/pkgs/development/libraries/accountservice/default.nix b/pkgs/development/libraries/accountservice/default.nix
index 8cab9e39e19d..9734a6bc9804 100644
--- a/pkgs/development/libraries/accountservice/default.nix
+++ b/pkgs/development/libraries/accountservice/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchurl, pkgconfig, glib, intltool, libtool, gobjectIntrospection, polkit }:
+{ stdenv, fetchurl, pkgconfig, glib, intltool
+, libtool, gobjectIntrospection, polkit, systemd }:
 
 stdenv.mkDerivation rec {
   name = "accountsservice-0.6.35";
@@ -8,6 +9,8 @@ stdenv.mkDerivation rec {
     sha256 = "0f1hzl6hw56xvwgmd4yvmdyj15xj1fafw45pzv3qarww7h0wg8b5";
   };
 
-  buildInputs = [ pkgconfig glib intltool libtool gobjectIntrospection polkit ];
+  buildInputs = [ pkgconfig glib intltool libtool
+                  gobjectIntrospection polkit systemd ];
 
+  configureFlags = [ "--with-systemdsystemunitdir=$(out)/etc/systemd/system" ];
 }

From b0d0ffc0b2231064ec0d00003a2f757bc27de414 Mon Sep 17 00:00:00 2001
From: Luca Bruno <lucabru@src.gnome.org>
Date: Mon, 7 Apr 2014 18:35:02 +0200
Subject: [PATCH 422/567] libxklavier: add gobject introspection support

---
 pkgs/development/libraries/libxklavier/default.nix | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/pkgs/development/libraries/libxklavier/default.nix b/pkgs/development/libraries/libxklavier/default.nix
index cb3c3b23e7f8..18f57473fb91 100644
--- a/pkgs/development/libraries/libxklavier/default.nix
+++ b/pkgs/development/libraries/libxklavier/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, pkgconfig, libX11, libXi, xkeyboard_config, libxml2
-, libICE, glib, libxkbfile, isocodes }:
+, libICE, glib, libxkbfile, isocodes, gobjectIntrospection }:
 
 let
   version = "5.3";
@@ -17,6 +17,8 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkgconfig ];
 
+  buildInputs = [ gobjectIntrospection ];
+
   configureFlags = ''
     --with-xkb-base=${xkeyboard_config}/etc/X11/xkb
     --disable-xmodmap-support

From 285d8f013c2b49401d30300b33a0bce7a3a3c501 Mon Sep 17 00:00:00 2001
From: Luca Bruno <lucabru@src.gnome.org>
Date: Mon, 7 Apr 2014 18:35:47 +0200
Subject: [PATCH 423/567] libgnomekbd: new package

Keyboard management library. Used by gnome-control-center.
---
 .../gnome-3/core/libgnomekbd/default.nix      | 24 +++++++++++++++++++
 pkgs/desktops/gnome-3/default.nix             |  2 ++
 2 files changed, 26 insertions(+)
 create mode 100644 pkgs/desktops/gnome-3/core/libgnomekbd/default.nix

diff --git a/pkgs/desktops/gnome-3/core/libgnomekbd/default.nix b/pkgs/desktops/gnome-3/core/libgnomekbd/default.nix
new file mode 100644
index 000000000000..1156474e5a7c
--- /dev/null
+++ b/pkgs/desktops/gnome-3/core/libgnomekbd/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchurl, pkgconfig, file, intltool, glib, gtk3, libxklavier, makeWrapper }:
+
+stdenv.mkDerivation rec {
+  name = "libgnomekbd-3.6.0";
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/libgnomekbd/3.6/${name}.tar.xz";
+    sha256 = "c41ea5b0f64da470925ba09f9f1b46b26b82d4e433e594b2c71eab3da8856a09";
+  };
+
+  buildInputs = [ pkgconfig file intltool glib gtk3 libxklavier makeWrapper ];
+
+  preFixup = ''
+    wrapProgram $out/bin/gkbd-keyboard-display \
+      --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Keyboard management library";
+    maintainers = with maintainers; [ lethalman ];
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/desktops/gnome-3/default.nix b/pkgs/desktops/gnome-3/default.nix
index ee40ff19e716..0a9a0b39aaf1 100644
--- a/pkgs/desktops/gnome-3/default.nix
+++ b/pkgs/desktops/gnome-3/default.nix
@@ -62,6 +62,8 @@ rec {
 
   libgnome_keyring = callPackage ./core/libgnome-keyring { };
 
+  libgnomekbd = callPackage ./core/libgnomekbd { };
+
   folks = callPackage ./core/folks { };
 
   gnome_online_accounts = callPackage ./core/gnome-online-accounts { };

From 04c2fe4cbe017277db058291e7e4c46d6427fa39 Mon Sep 17 00:00:00 2001
From: Luca Bruno <lucabru@src.gnome.org>
Date: Mon, 7 Apr 2014 18:36:23 +0200
Subject: [PATCH 424/567] gnome-control-center: propagate libgnomekbd in user
 env

---
 pkgs/desktops/gnome-3/core/gnome-control-center/default.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix b/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix
index a3f2e2b7584d..92a6b6c2c40d 100644
--- a/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
     sha256 = "1ac34kqkf174w0qc12p927dfhcm69xnv7fqzmbhjab56rn49wypn";
   };
 
-  propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
+  propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard gnome3.libgnomekbd ];
   propagatedBuildInputs = [ gdk_pixbuf gnome3.gnome_icon_theme librsvg
                             hicolor_icon_theme gnome3.gnome_icon_theme_symbolic ];
 

From 79cef74f4ddbbcb4affd5cafe9f693b689109a0a Mon Sep 17 00:00:00 2001
From: Luca Bruno <lucabru@src.gnome.org>
Date: Mon, 7 Apr 2014 21:29:46 +0200
Subject: [PATCH 425/567] gnome-system-monitor: new package

System Monitor shows you what programs are running and how much processor time, memory, and disk space are being used

https://help.gnome.org/users/gnome-system-monitor/3.10/
---
 .../core/gnome-system-monitor/default.nix     | 38 +++++++++++++++++++
 pkgs/desktops/gnome-3/default.nix             |  2 +
 2 files changed, 40 insertions(+)
 create mode 100644 pkgs/desktops/gnome-3/core/gnome-system-monitor/default.nix

diff --git a/pkgs/desktops/gnome-3/core/gnome-system-monitor/default.nix b/pkgs/desktops/gnome-3/core/gnome-system-monitor/default.nix
new file mode 100644
index 000000000000..91fbe67957fe
--- /dev/null
+++ b/pkgs/desktops/gnome-3/core/gnome-system-monitor/default.nix
@@ -0,0 +1,38 @@
+{ stdenv, intltool, fetchurl, pkgconfig, gtkmm3, libxml2
+, bash, gtk3, glib, hicolor_icon_theme, makeWrapper
+, itstool, gnome3, librsvg, gdk_pixbuf, libgtop }:
+
+stdenv.mkDerivation rec {
+  name = "gnome-system-monitor-3.10.2";
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/gnome-system-monitor/3.10/${name}.tar.xz";
+    sha256 = "bd009e15672afe4ad3ebd7ed286cce79b9f76420fd39bc77a5826b29134b9db0";
+  };
+
+  doCheck = true;
+
+  propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
+  propagatedBuildInputs = [ gdk_pixbuf gnome3.gnome_icon_theme librsvg
+                            hicolor_icon_theme gnome3.gnome_icon_theme_symbolic ];
+
+  buildInputs = [ bash pkgconfig gtk3 glib intltool itstool libxml2
+                  gtkmm3 libgtop makeWrapper
+                  gnome3.gsettings_desktop_schemas ];
+
+  preFixup = ''
+    wrapProgram "$out/bin/gnome-system-monitor" \
+      --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
+      --prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
+  '';
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    homepage = https://help.gnome.org/users/gnome-system-monitor/3.10/;
+    description = "System Monitor shows you what programs are running and how much processor time, memory, and disk space are being used";
+    maintainers = with maintainers; [ lethalman ];
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/desktops/gnome-3/default.nix b/pkgs/desktops/gnome-3/default.nix
index 0a9a0b39aaf1..dac1a730eb0e 100644
--- a/pkgs/desktops/gnome-3/default.nix
+++ b/pkgs/desktops/gnome-3/default.nix
@@ -78,6 +78,8 @@ rec {
 
   gnome-system-log = callPackage ./core/gnome-system-log { };
 
+  gnome-system-monitor = callPackage ./core/gnome-system-monitor { };
+
   gnome_terminal = callPackage ./core/gnome-terminal { };
 
   gnome_themes_standard = callPackage ./core/gnome-themes-standard { };

From 9b737eb28222f701f16d7e278f0db6c5b809e8c9 Mon Sep 17 00:00:00 2001
From: Luca Bruno <lucabru@src.gnome.org>
Date: Mon, 7 Apr 2014 23:52:40 +0200
Subject: [PATCH 426/567] libmusicbrainz5: new major version

---
 .../libraries/libmusicbrainz/5.x.nix          | 25 +++++++++++++++++++
 pkgs/top-level/all-packages.nix               |  2 ++
 2 files changed, 27 insertions(+)
 create mode 100644 pkgs/development/libraries/libmusicbrainz/5.x.nix

diff --git a/pkgs/development/libraries/libmusicbrainz/5.x.nix b/pkgs/development/libraries/libmusicbrainz/5.x.nix
new file mode 100644
index 000000000000..7cdb8fb46910
--- /dev/null
+++ b/pkgs/development/libraries/libmusicbrainz/5.x.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchurl, cmake, neon, libdiscid }:
+
+stdenv.mkDerivation rec {
+  name = "libmusicbrainz-5.0.1";
+
+  buildInputs = [ cmake neon libdiscid ];
+
+  src = fetchurl {
+    url = "https://github.com/downloads/metabrainz/libmusicbrainz/${name}.tar.gz";
+    md5 = "a0406b94c341c2b52ec0fe98f57cadf3";
+  };
+
+  dontUseCmakeBuildDir=true;
+
+  meta = {
+    homepage = http://musicbrainz.org/doc/libmusicbrainz;
+    description = "MusicBrainz Client Library (5.x version)";
+    longDescription = ''
+      The libmusicbrainz (also known as mb_client or MusicBrainz Client
+      Library) is a development library geared towards developers who wish to
+      add MusicBrainz lookup capabilities to their applications.'';
+    maintainers = [ stdenv.lib.maintainers.urkud ];
+    platforms = stdenv.lib.platforms.all;
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index d0fea1417de2..9bee27b52eb9 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -5065,6 +5065,8 @@ let
 
   libmusicbrainz3 = callPackage ../development/libraries/libmusicbrainz { };
 
+  libmusicbrainz5 = callPackage ../development/libraries/libmusicbrainz/5.x.nix { };
+
   libmusicbrainz = libmusicbrainz3;
 
   libnet = callPackage ../development/libraries/libnet { };

From 3feb20356e8b82c9a3638fbda655a14ea11d6e38 Mon Sep 17 00:00:00 2001
From: Luca Bruno <lucabru@src.gnome.org>
Date: Mon, 7 Apr 2014 23:53:07 +0200
Subject: [PATCH 427/567] evince: enable gobject introspection

---
 pkgs/desktops/gnome-3/core/evince/default.nix | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/pkgs/desktops/gnome-3/core/evince/default.nix b/pkgs/desktops/gnome-3/core/evince/default.nix
index 3a2688a64b93..4b50840534cf 100644
--- a/pkgs/desktops/gnome-3/core/evince/default.nix
+++ b/pkgs/desktops/gnome-3/core/evince/default.nix
@@ -2,6 +2,7 @@
 , glib, gtk3, pango, atk, gdk_pixbuf, shared_mime_info, itstool, gnome3
 , poppler, ghostscriptX, djvulibre, libspectre, libsecret , makeWrapper
 , librsvg, recentListSize ? null # 5 is not enough, allow passing a different number
+, gobjectIntrospection
 }:
 
 stdenv.mkDerivation rec {
@@ -14,7 +15,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     pkgconfig intltool perl perlXMLParser libxml2
-    glib gtk3 pango atk gdk_pixbuf
+    glib gtk3 pango atk gdk_pixbuf gobjectIntrospection
     itstool gnome3.gnome_icon_theme gnome3.gnome_icon_theme_symbolic
     gnome3.libgnome_keyring gnome3.gsettings_desktop_schemas
     poppler ghostscriptX djvulibre libspectre
@@ -23,6 +24,7 @@ stdenv.mkDerivation rec {
 
   configureFlags = [
     "--disable-nautilus" # Do not use nautilus
+    "--enable-introspection"
   ];
 
   NIX_CFLAGS_COMPILE = "-I${gnome3.glib}/include/gio-unix-2.0";

From ea3644cb098306fb767ae50426270491d190547a Mon Sep 17 00:00:00 2001
From: Luca Bruno <lucabru@src.gnome.org>
Date: Mon, 7 Apr 2014 23:54:07 +0200
Subject: [PATCH 428/567] sushi: new package

A quick previewer for Nautilus

http://en.wikipedia.org/wiki/Sushi_(software)
---
 nixos/modules/module-list.nix                 |  1 +
 .../services/desktops/gnome3/sushi.nix        | 38 +++++++++++++++++++
 .../services/x11/desktop-managers/gnome3.nix  |  1 +
 pkgs/desktops/gnome-3/core/sushi/default.nix  | 38 +++++++++++++++++++
 pkgs/desktops/gnome-3/default.nix             |  2 +
 5 files changed, 80 insertions(+)
 create mode 100644 nixos/modules/services/desktops/gnome3/sushi.nix
 create mode 100644 pkgs/desktops/gnome-3/core/sushi/default.nix

diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index 0b482dcda1bc..ecf1901d500d 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -97,6 +97,7 @@
   ./services/databases/virtuoso.nix
   ./services/databases/monetdb.nix
   ./services/desktops/accountservice.nix
+  ./services/desktops/gnome3/sushi.nix
   ./services/games/ghost-one.nix
   ./services/games/minecraft-server.nix
   ./services/hardware/acpid.nix
diff --git a/nixos/modules/services/desktops/gnome3/sushi.nix b/nixos/modules/services/desktops/gnome3/sushi.nix
new file mode 100644
index 000000000000..7fe37e26f436
--- /dev/null
+++ b/nixos/modules/services/desktops/gnome3/sushi.nix
@@ -0,0 +1,38 @@
+# GNOME Sushi daemon.
+
+{ config, pkgs, ... }:
+
+with pkgs.lib;
+
+{
+
+  ###### interface
+
+  options = {
+
+    services.gnome3.sushi = {
+
+      enable = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Whether to enable Sushi, a quick previewer for nautilus.
+        '';
+      };
+
+    };
+
+  };
+
+
+  ###### implementation
+
+  config = mkIf config.services.gnome3.sushi.enable {
+
+    environment.systemPackages = [ pkgs.gnome3.sushi ];
+
+    services.dbus.packages = [ pkgs.gnome3.sushi ];
+
+  };
+
+}
diff --git a/nixos/modules/services/x11/desktop-managers/gnome3.nix b/nixos/modules/services/x11/desktop-managers/gnome3.nix
index 381ebc7ad29f..985884595ab6 100644
--- a/nixos/modules/services/x11/desktop-managers/gnome3.nix
+++ b/nixos/modules/services/x11/desktop-managers/gnome3.nix
@@ -23,6 +23,7 @@ in {
     security.polkit.enable = true;
     services.udisks2.enable = true;
     services.accounts-daemon.enable = true;
+    services.gnome3.sushi.enable = true;
     networking.networkmanager.enable = true;
     services.upower.enable = config.powerManagement.enable;
 
diff --git a/pkgs/desktops/gnome-3/core/sushi/default.nix b/pkgs/desktops/gnome-3/core/sushi/default.nix
new file mode 100644
index 000000000000..55729a546697
--- /dev/null
+++ b/pkgs/desktops/gnome-3/core/sushi/default.nix
@@ -0,0 +1,38 @@
+{ stdenv, fetchurl, pkgconfig, file, intltool, gobjectIntrospection, glib
+, clutter_gtk, clutter-gst, gnome3, gtksourceview, libmusicbrainz
+, webkitgtk, libmusicbrainz5, icu, makeWrapper, gst_all_1
+, gdk_pixbuf, librsvg, hicolor_icon_theme }:
+
+stdenv.mkDerivation rec {
+  name = "sushi-3.8.1";
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/sushi/3.8/${name}.tar.xz";
+    sha256 = "c4f24d0961ce8fc5ef3a4fe9af178e368c7117459df2c0be12c8f953646c82dd";
+  };
+
+  propagatedUserEnvPkgs = [ gst_all_1.gstreamer gst_all_1.gst-plugins-base gst_all_1.gst-plugins-good ];
+
+  buildInputs = [ pkgconfig file intltool gobjectIntrospection glib
+                  clutter_gtk clutter-gst gnome3.gjs gtksourceview gdk_pixbuf librsvg
+                  gnome3.gnome_icon_theme hicolor_icon_theme gnome3.gnome_icon_theme_symbolic
+                  libmusicbrainz5 webkitgtk gnome3.evince icu makeWrapper ];
+
+  enableParallelBuilding = true;
+
+  preFixup = ''
+    wrapProgram $out/libexec/sushi-start \
+      --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
+      --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
+      --prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0" \
+      --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = "http://en.wikipedia.org/wiki/Sushi_(software)";
+    description = "A quick previewer for Nautilus";
+    maintainers = with maintainers; [ lethalman ];
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/desktops/gnome-3/default.nix b/pkgs/desktops/gnome-3/default.nix
index dac1a730eb0e..fb92cd80998f 100644
--- a/pkgs/desktops/gnome-3/default.nix
+++ b/pkgs/desktops/gnome-3/default.nix
@@ -114,6 +114,8 @@ rec {
 
   rest = callPackage ./core/rest { };
 
+  sushi = callPackage ./core/sushi { };
+
   totem = callPackage ./core/totem { };
 
   totem-pl-parser = callPackage ./core/totem-pl-parser { };

From 968740e0c1e36d5cab3e6bfe566e3ee709a620b5 Mon Sep 17 00:00:00 2001
From: Austin Seipp <aseipp@pobox.com>
Date: Tue, 8 Apr 2014 07:04:11 -0500
Subject: [PATCH 429/567] capstone: version 2.1.2

Signed-off-by: Austin Seipp <aseipp@pobox.com>
---
 .../libraries/capstone/default.nix            | 22 +++++++++++++++++++
 pkgs/top-level/all-packages.nix               |  2 ++
 2 files changed, 24 insertions(+)
 create mode 100644 pkgs/development/libraries/capstone/default.nix

diff --git a/pkgs/development/libraries/capstone/default.nix b/pkgs/development/libraries/capstone/default.nix
new file mode 100644
index 000000000000..37d1c118e4a3
--- /dev/null
+++ b/pkgs/development/libraries/capstone/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  name    = "capstone-${version}";
+  version = "2.1.2";
+
+  src = fetchurl {
+    url    = "http://www.capstone-engine.org/download/${version}/${name}.tgz";
+    sha256 = "1k6px3vdcsfby3lakss5sazs875kbzkzqk7cj79xrm2y5ik1vr29";
+  };
+
+  buildPhase = false;
+  installPhase = "PREFIX=$out ./make.sh install";
+
+  meta = {
+    description = "advanced disassembly library";
+    homepage    = "http://www.capstone-engine.org";
+    license     = stdenv.lib.licenses.bsd3;
+    platforms   = stdenv.lib.platforms.unix;
+    maintainers = [ stdenv.lib.maintainers.thoughtpolice ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index ed5a3d3ab731..7b9cc109f59f 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -576,6 +576,8 @@ let
 
   ccnet = callPackage ../tools/networking/ccnet { };
 
+  capstone = callPackage ../development/libraries/capstone { };
+
   ditaa = callPackage ../tools/graphics/ditaa { };
 
   direnv = callPackage ../tools/misc/direnv { };

From caf98828bb2f8d40448ca3a6782b881a0f2cec58 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Tue, 8 Apr 2014 15:13:27 +0200
Subject: [PATCH 430/567] nixos-generate-config: Fix PCI/USB checks

As reported by Kirill Elagin, read_file doesn't chomp its output. So
the equality tests on PCI/USB vendor and device IDs were failing.
---
 .../installer/tools/nixos-generate-config.pl       | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

diff --git a/nixos/modules/installer/tools/nixos-generate-config.pl b/nixos/modules/installer/tools/nixos-generate-config.pl
index d42c4c1f1dc2..da1d26882772 100644
--- a/nixos/modules/installer/tools/nixos-generate-config.pl
+++ b/nixos/modules/installer/tools/nixos-generate-config.pl
@@ -96,9 +96,9 @@ my $videoDriver;
 
 sub pciCheck {
     my $path = shift;
-    my $vendor = read_file "$path/vendor";
-    my $device = read_file "$path/device";
-    my $class = read_file "$path/class";
+    my $vendor = read_file "$path/vendor"; chomp $vendor;
+    my $device = read_file "$path/device"; chomp $device;
+    my $class = read_file "$path/class"; chomp $class;
 
     my $module;
     if (-e "$path/driver/module") {
@@ -130,6 +130,7 @@ sub pciCheck {
 
     # broadcom STA driver (wl.ko)
     # list taken from http://www.broadcom.com/docs/linux_sta/README.txt
+    # FIXME: still needed?
     if ($vendor eq "0x14e4" &&
         ($device eq "0x4311" || $device eq "0x4312" || $device eq "0x4313" ||
          $device eq "0x4315" || $device eq "0x4327" || $device eq "0x4328" ||
@@ -156,6 +157,7 @@ sub pciCheck {
 
     # Assume that all NVIDIA cards are supported by the NVIDIA driver.
     # There may be exceptions (e.g. old cards).
+    # FIXME: do we want to enable an unfree driver here?
     $videoDriver = "nvidia" if $vendor eq "0x10de" && $class =~ /^0x03/;
 }
 
@@ -170,9 +172,9 @@ push @attrs, "hardware.opengl.videoDrivers = [ \"$videoDriver\" ];" if $videoDri
 
 sub usbCheck {
     my $path = shift;
-    my $class = read_file "$path/bInterfaceClass";
-    my $subclass = read_file "$path/bInterfaceSubClass";
-    my $protocol = read_file "$path/bInterfaceProtocol";
+    my $class = read_file "$path/bInterfaceClass"; chomp $class;
+    my $subclass = read_file "$path/bInterfaceSubClass"; chomp $subclass;
+    my $protocol = read_file "$path/bInterfaceProtocol"; chomp $protocol;
 
     my $module;
     if (-e "$path/driver/module") {

From 57cfb4315e875f9755bc3a7e8f73d8401797ad3a Mon Sep 17 00:00:00 2001
From: Austin Seipp <aseipp@pobox.com>
Date: Tue, 8 Apr 2014 10:12:52 -0500
Subject: [PATCH 431/567] haskell: sbv 3.0

Signed-off-by: Austin Seipp <aseipp@pobox.com>
---
 .../libraries/haskell/sbv/default.nix         | 19 +++++++++++++++++++
 pkgs/top-level/haskell-packages.nix           |  2 ++
 2 files changed, 21 insertions(+)
 create mode 100644 pkgs/development/libraries/haskell/sbv/default.nix

diff --git a/pkgs/development/libraries/haskell/sbv/default.nix b/pkgs/development/libraries/haskell/sbv/default.nix
new file mode 100644
index 000000000000..a4450bdc8924
--- /dev/null
+++ b/pkgs/development/libraries/haskell/sbv/default.nix
@@ -0,0 +1,19 @@
+{ cabal, deepseq, filepath, HUnit, mtl, QuickCheck, random, syb }:
+
+cabal.mkDerivation (self: {
+  pname = "sbv";
+  version = "3.0";
+  sha256 = "16k9f0x4amg7mm8ib22nyk1rngrbf9311gl2m15hbdq49jp8ik9i";
+  isLibrary = true;
+  isExecutable = true;
+  buildDepends = [
+    deepseq filepath HUnit mtl QuickCheck random syb
+  ];
+  testDepends = [ filepath HUnit syb ];
+  meta = {
+    homepage = "http://leventerkok.github.com/sbv/";
+    description = "SMT Based Verification: Symbolic Haskell theorem prover using SMT solving";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index acffb2b08b5c..7172f4d0f424 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -2207,6 +2207,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.finalReturn x
 
   SafeSemaphore = callPackage ../development/libraries/haskell/SafeSemaphore {};
 
+  sbv = callPackage ../development/libraries/haskell/sbv {};
+
   scientific = callPackage ../development/libraries/haskell/scientific {};
 
   scotty = callPackage ../development/libraries/haskell/scotty {};

From 54a8e0ed0f8bdbd6dafe8a9af38ca15df2645c1b Mon Sep 17 00:00:00 2001
From: "Ricardo M. Correia" <rcorreia@wizy.org>
Date: Tue, 8 Apr 2014 17:42:04 +0200
Subject: [PATCH 432/567] flashplayer: Update from 11.2.202.346 -> 11.2.202.350

---
 .../browsers/mozilla-plugins/flashplayer-11/default.nix     | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-11/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-11/default.nix
index a33c879ad92d..a78ab7d27f72 100644
--- a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-11/default.nix
+++ b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer-11/default.nix
@@ -36,7 +36,7 @@
 
 let
   # -> http://get.adobe.com/flashplayer/
-  version = "11.2.202.346";
+  version = "11.2.202.350";
 
   src =
     if stdenv.system == "x86_64-linux" then
@@ -47,7 +47,7 @@ let
       else rec {
         inherit version;
         url = "http://fpdownload.macromedia.com/get/flashplayer/pdc/${version}/install_flash_player_11_linux.x86_64.tar.gz";
-        sha256 = "19jgiw5f0ksxqgi6jkla4qq7gx9gnn9jmpjgqanb7mhl5fdl0v55";
+        sha256 = "0f5y05c0acvdzd7a7qi93kd17byazf9swm6gml5rph5bc25aw77l";
       }
     else if stdenv.system == "i686-linux" then
       if debug then {
@@ -58,7 +58,7 @@ let
       } else rec {
         inherit version;
         url = "http://fpdownload.macromedia.com/get/flashplayer/pdc/${version}/install_flash_player_11_linux.i386.tar.gz";
-        sha256 = "01f4zady0r0n5rfqq2285svc13wiypmfrm8fnirmr5lpwl5d89ra";
+        sha256 = "0nsrj56xbpn8r4365zby8qbc38cl2anb5ky0h7jwyh7xyrs9xmml";
       }
     else throw "Flash Player is not supported on this platform";
 

From 35abc43092d4a1d8452b6f40e3be0df508ddfdc0 Mon Sep 17 00:00:00 2001
From: Austin Seipp <aseipp@pobox.com>
Date: Tue, 8 Apr 2014 10:49:04 -0500
Subject: [PATCH 433/567] cb1cat: 20140328100000 -> 20140403153000

Signed-off-by: Austin Seipp <aseipp@pobox.com>
---
 pkgs/tools/security/cb1cat/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/tools/security/cb1cat/default.nix b/pkgs/tools/security/cb1cat/default.nix
index 7c3d9a1661e2..546ace2d8ed3 100644
--- a/pkgs/tools/security/cb1cat/default.nix
+++ b/pkgs/tools/security/cb1cat/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name    = "cb1cat-${version}";
-  version = "20140328100000";
+  version = "20140403153000";
 
   src = fetchurl {
     url    = "https://www.cblnk.com/cb1cat/dist/${name}.tgz";
-    sha256 = "0fbly4fg2qsb4kx9wgv357bsa3mmmy8xmy0yszw80k50ixphjswv";
+    sha256 = "1zi0rxbgmp6vkcarg493gfgn7pnfdpz0iplcgslbc45n2bxkv70q";
   };
 
   installPhase = ''

From f14540a6191ea5652a01245fc51197baf0ead2f5 Mon Sep 17 00:00:00 2001
From: Austin Seipp <aseipp@pobox.com>
Date: Tue, 8 Apr 2014 10:53:50 -0500
Subject: [PATCH 434/567] fsharp: 3.1 -> 3.1.0

This matches the traditional upstream versioning for FSharp in the wild

Signed-off-by: Austin Seipp <aseipp@pobox.com>
---
 pkgs/development/compilers/fsharp/default.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pkgs/development/compilers/fsharp/default.nix b/pkgs/development/compilers/fsharp/default.nix
index 963c7e2cb5c5..1d7955045893 100644
--- a/pkgs/development/compilers/fsharp/default.nix
+++ b/pkgs/development/compilers/fsharp/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   name = "fsharp-${version}";
-  version = "3.1";
+  version = "3.1.0";
 
   src = fetchgit {
     url = "https://github.com/fsharp/fsharp";

From 95272dc61a4824554f3190d29fc10f240bad7667 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Tue, 8 Apr 2014 18:14:46 +0200
Subject: [PATCH 435/567] nixUnstable: Update to 1.7pre3576_2b6c8ef

---
 pkgs/tools/package-management/nix/unstable.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/tools/package-management/nix/unstable.nix b/pkgs/tools/package-management/nix/unstable.nix
index 28497647f86d..c9cf7dc79167 100644
--- a/pkgs/tools/package-management/nix/unstable.nix
+++ b/pkgs/tools/package-management/nix/unstable.nix
@@ -5,11 +5,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "nix-1.7pre3538_4900957";
+  name = "nix-1.7pre3576_2b6c8ef";
 
   src = fetchurl {
-    url = "http://hydra.nixos.org/build/9862372/download/5/${name}.tar.xz";
-    sha256 = "05l9j892cscf0ig6s0kxkfigzqwrsza4g38a40s87yvd2cr14pxq";
+    url = "http://hydra.nixos.org/build/10201398/download/5/${name}.tar.xz";
+    sha256 = "7a735ac859a88a7042b1a7f33f3ab94e9374a0695c68cceb63d4536a79986236";
   };
 
   nativeBuildInputs = [ perl pkgconfig ];

From f251d0d3867a0350e9dd6f21d1812c1f38ea8233 Mon Sep 17 00:00:00 2001
From: Oliver Charles <ollie@ocharles.org.uk>
Date: Tue, 8 Apr 2014 17:21:47 +0100
Subject: [PATCH 436/567] Remove haskellPackages.lensAeson

This is now part of haskellPackages.lens
---
 .../libraries/haskell/lens-aeson/default.nix  | 23 -------------------
 pkgs/top-level/haskell-packages.nix           |  2 --
 2 files changed, 25 deletions(-)
 delete mode 100644 pkgs/development/libraries/haskell/lens-aeson/default.nix

diff --git a/pkgs/development/libraries/haskell/lens-aeson/default.nix b/pkgs/development/libraries/haskell/lens-aeson/default.nix
deleted file mode 100644
index 7ea890a5eb35..000000000000
--- a/pkgs/development/libraries/haskell/lens-aeson/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ cabal, aeson, attoparsec, doctest, filepath, genericDeriving
-, lens, semigroups, simpleReflect, text, unorderedContainers
-, utf8String, vector
-}:
-
-cabal.mkDerivation (self: {
-  pname = "lens-aeson";
-  version = "0.1.2";
-  sha256 = "1h0w8p227r8gzvgqjl210i0z7xxv3435vwyi3j7vkm7a05cdk03l";
-  buildDepends = [
-    aeson attoparsec lens text unorderedContainers utf8String vector
-  ];
-  testDepends = [
-    doctest filepath genericDeriving semigroups simpleReflect
-  ];
-  meta = {
-    homepage = "http://github.com/lens/lens-aeson/";
-    description = "Law-abiding lenses for aeson";
-    license = self.stdenv.lib.licenses.bsd3;
-    platforms = self.ghc.meta.platforms;
-    maintainers = [ self.stdenv.lib.maintainers.ocharles ];
-  };
-})
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index ca689949b39a..7e03102f624f 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -1620,8 +1620,6 @@ let result = let callPackage = x : y : modifyPrio (newScope result.finalReturn x
 
   lens = callPackage ../development/libraries/haskell/lens {};
 
-  lensAeson = callPackage ../development/libraries/haskell/lens-aeson {};
-
   lensDatetime = callPackage ../development/libraries/haskell/lens-datetime {};
 
   lensFamilyCore = callPackage ../development/libraries/haskell/lens-family-core {};

From 6a3d9a84c43869589c804f8b7590220d815cb064 Mon Sep 17 00:00:00 2001
From: Matej Cotman <cotman.matej@gmail.com>
Date: Tue, 8 Apr 2014 20:13:19 +0200
Subject: [PATCH 437/567] searx: upgrade to latest

---
 pkgs/top-level/python-packages.nix | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index bed95bf29fb0..4fe14a3bbe22 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -8795,19 +8795,21 @@ rec {
   };
 
   searx = buildPythonPackage rec {
-    name = "searx-${version}";
-    version = "0.2.0";
+    name = "searx-${rev}";
+    rev = "44d3af9fb2482cd0df1a8ababbe2fdf27ab33172";
 
-    src = fetchurl {
-      url = "https://pypi.python.org/packages/source/s/searx/${name}.tar.gz";
-      sha256 = "19hxjg3vhq7fygcvfhsr3i40c8kbi7i76ym9cv2s03b3zijd38w0";
+    src = fetchgit {
+      url = "git://github.com/asciimoo/searx";
+      inherit rev;
+      sha256 = "1w505pzdkkcglq782wg7f5fxrw9i5jzp7px20c2xz18pps2m3rsm";
     };
 
-    propagatedBuildInputs = [ pyyaml lxml grequests flaskbabel flask requests gevent speaklater Babel pytz ];
+    propagatedBuildInputs = [ pyyaml lxml grequests flaskbabel flask requests
+      gevent speaklater Babel pytz dateutil ];
 
     meta = {
       homepage = https://github.com/asciimoo/searx;
-      description = "A privacy-respecting, hackable metasearch engine.";
+      description = "A privacy-respecting, hackable metasearch engine";
       license = stdenv.lib.licenses.agpl3Plus;
       maintainers = [ stdenv.lib.maintainers.matejc ];
     };

From f5865a515529557820198fab173d48fda85fbdf9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= <vcunat@gmail.com>
Date: Sun, 6 Apr 2014 19:54:59 +0200
Subject: [PATCH 438/567] linux: switch to 3.12 by default (latest longterm)

Close #2151.
---
 pkgs/top-level/all-packages.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 7b9cc109f59f..4862a0cdcf68 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -7105,7 +7105,7 @@ let
 
   # The current default kernel / kernel modules.
   linux = linuxPackages.kernel;
-  linuxPackages = linuxPackages_3_10;
+  linuxPackages = linuxPackages_3_12;
 
   # A function to build a manually-configured kernel
   linuxManualConfig = pkgs.buildLinux;

From 23c7a249d33b22c1e19437679339110e9dfb8b50 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Tue, 8 Apr 2014 21:35:30 +0200
Subject: [PATCH 439/567] ghc: add release version 7.8.1

---
 pkgs/development/compilers/ghc/7.8.1.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/development/compilers/ghc/7.8.1.nix b/pkgs/development/compilers/ghc/7.8.1.nix
index f58ca9cc1fc2..c007eb23da85 100644
--- a/pkgs/development/compilers/ghc/7.8.1.nix
+++ b/pkgs/development/compilers/ghc/7.8.1.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, ghc, perl, gmp, ncurses }:
 
 stdenv.mkDerivation rec {
-  version = "7.8.0.20140228";
+  version = "7.8.1";
   name = "ghc-${version}";
 
   src = fetchurl {
-    url = "http://www.haskell.org/ghc/dist/7.8.1-rc2/${name}-src.tar.bz2";
-    sha256 = "09xlgz1xg0182wjy62h3j0xvnhllhjlyvj30vc3him98parnr76w";
+    url = "http://www.haskell.org/ghc/dist/7.8.1/${name}-src.tar.xz";
+    sha256 = "1j4b7ap87vbwqvf8ck1ksrldw2w626f50w20gs4klm6jpvz66xp0";
   };
 
   buildInputs = [ ghc perl gmp ncurses ];

From 9553141e21e9c2b31ed6480039e6524d26081711 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Tue, 8 Apr 2014 13:29:45 +0200
Subject: [PATCH 440/567] haskell-Chart-cairo: update to version 1.2.2

---
 pkgs/development/libraries/haskell/Chart-cairo/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/Chart-cairo/default.nix b/pkgs/development/libraries/haskell/Chart-cairo/default.nix
index 55c893bcc815..90f93edd4dcd 100644
--- a/pkgs/development/libraries/haskell/Chart-cairo/default.nix
+++ b/pkgs/development/libraries/haskell/Chart-cairo/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "Chart-cairo";
-  version = "1.2";
-  sha256 = "08aaf7yb2vry75g15md2012rnmyfrn7awwvba7c38d4h6vm95llg";
+  version = "1.2.2";
+  sha256 = "1bbi5bvrh8wmgzv5am5ndgdr68gd68ipparkkk9ld4majwf4vm6w";
   buildDepends = [
     cairo Chart colour dataDefaultClass lens mtl operational time
   ];

From b7f8dbf57d2cab0b0b0d3664cc863f9ec1bc276a Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Tue, 8 Apr 2014 13:29:47 +0200
Subject: [PATCH 441/567] haskell-Chart-diagrams: update to version 1.2.2

---
 pkgs/development/libraries/haskell/Chart-diagrams/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/Chart-diagrams/default.nix b/pkgs/development/libraries/haskell/Chart-diagrams/default.nix
index 2593b67edbcb..22e432f2f329 100644
--- a/pkgs/development/libraries/haskell/Chart-diagrams/default.nix
+++ b/pkgs/development/libraries/haskell/Chart-diagrams/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "Chart-diagrams";
-  version = "1.2";
-  sha256 = "11pvyasra4mxid6826z6rkjhr71lg37fihzr8mgvjw3arascgqxz";
+  version = "1.2.2";
+  sha256 = "144dy9vp3x04s03jrkyfqczpwayb8k7dq702w9wm3d8q4ysva62q";
   buildDepends = [
     blazeSvg Chart colour dataDefaultClass diagramsCore diagramsLib
     diagramsPostscript diagramsSvg lens mtl operational SVGFonts text

From 849b2144ab72ae78e2a8b3a549ae3ef197d8358e Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Tue, 8 Apr 2014 13:29:48 +0200
Subject: [PATCH 442/567] haskell-Chart-gtk: update to version 1.2.2

---
 pkgs/development/libraries/haskell/Chart-gtk/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/Chart-gtk/default.nix b/pkgs/development/libraries/haskell/Chart-gtk/default.nix
index 4745dda31cc2..8b1ce6b89e73 100644
--- a/pkgs/development/libraries/haskell/Chart-gtk/default.nix
+++ b/pkgs/development/libraries/haskell/Chart-gtk/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "Chart-gtk";
-  version = "1.2";
-  sha256 = "0qq72cf1m2gvcksa1jj5g9qi6b47pmpzh3grhs7kh3m7qyq0a56g";
+  version = "1.2.2";
+  sha256 = "1mg6nln0jwp6hals9vhhsfqiwix424fv1v1p4h99s0xwy5cna1z9";
   buildDepends = [ cairo Chart ChartCairo colour gtk mtl time ];
   jailbreak = true;
   meta = {

From 485dc4d93b05303de33334ffce00bd451a475b44 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Tue, 8 Apr 2014 13:29:50 +0200
Subject: [PATCH 443/567] haskell-Chart: update to version 1.2.2

---
 pkgs/development/libraries/haskell/Chart/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/Chart/default.nix b/pkgs/development/libraries/haskell/Chart/default.nix
index 5f7e8c2cb4bd..7604cd28b8e3 100644
--- a/pkgs/development/libraries/haskell/Chart/default.nix
+++ b/pkgs/development/libraries/haskell/Chart/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "Chart";
-  version = "1.2";
-  sha256 = "0cvp2j2hgsdk93f4rbd8y7s11hlr3zg15qkpxhd7p7sl2k6j2r5x";
+  version = "1.2.2";
+  sha256 = "0yd3xca500lbzvlvhdsbrkiy53laikq6hc290rc061agvd535a7p";
   buildDepends = [
     colour dataDefaultClass lens mtl operational time
   ];

From 26972702e0779b10be04034895447a0d16ba6579 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Tue, 8 Apr 2014 13:29:52 +0200
Subject: [PATCH 444/567] haskell-dyre: update to version 0.8.12

---
 pkgs/development/libraries/haskell/dyre/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/dyre/default.nix b/pkgs/development/libraries/haskell/dyre/default.nix
index 8b3d2cab677a..178f01952ea4 100644
--- a/pkgs/development/libraries/haskell/dyre/default.nix
+++ b/pkgs/development/libraries/haskell/dyre/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "dyre";
-  version = "0.8.11";
-  sha256 = "0sg5csshznbbyvq72s4sps7bkjlkfxiwcy4i3ip83lrxjw1msvr8";
+  version = "0.8.12";
+  sha256 = "10hnlysy4bjvvznk8v902mlk4jx95qf972clyi1l32xkqrf30972";
   buildDepends = [
     binary executablePath filepath ghcPaths ioStorage time xdgBasedir
   ];

From 363d62dbfd0229bb0997e96d95f8570cf05fb632 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Tue, 8 Apr 2014 13:29:54 +0200
Subject: [PATCH 445/567] haskell-ghc-mod: update to version 4.0.2

---
 pkgs/development/libraries/haskell/ghc-mod/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/ghc-mod/default.nix b/pkgs/development/libraries/haskell/ghc-mod/default.nix
index 0e60526e8fcb..185f70785e53 100644
--- a/pkgs/development/libraries/haskell/ghc-mod/default.nix
+++ b/pkgs/development/libraries/haskell/ghc-mod/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "ghc-mod";
-  version = "4.0.1";
-  sha256 = "13dgphwspp91bycnmcxgxzv4470wpjv5zfswwgmad644i77nixmm";
+  version = "4.0.2";
+  sha256 = "10ndlydx0ymz8fbcgjjnzyak7lly34012bsghwj0i0dc5ja1pic8";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [

From 556736cc2be80f767f448ee66d7b2f6ff58c95c7 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Tue, 8 Apr 2014 13:29:56 +0200
Subject: [PATCH 446/567] haskell-hakyll: update to version 4.5.1.0

---
 pkgs/development/libraries/haskell/hakyll/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/hakyll/default.nix b/pkgs/development/libraries/haskell/hakyll/default.nix
index 56977517b9ef..5e40bb851f08 100644
--- a/pkgs/development/libraries/haskell/hakyll/default.nix
+++ b/pkgs/development/libraries/haskell/hakyll/default.nix
@@ -8,8 +8,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hakyll";
-  version = "4.5.0.2";
-  sha256 = "1aphn76iq0cxxnb2ixddr017wbp6caxwjh5azfa4cy2lw2jmznyz";
+  version = "4.5.1.0";
+  sha256 = "0p78wscz9gwg1as49wjl49ydzbv972w6wmbmvhw1rfb9d5xana1i";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [

From b885ecf16c0e0bbc1a10451250c471e0180c32f3 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Tue, 8 Apr 2014 13:29:57 +0200
Subject: [PATCH 447/567] haskell-http-client-multipart: update to version
 0.3.0.0

---
 .../libraries/haskell/http-client-multipart/default.nix        | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/http-client-multipart/default.nix b/pkgs/development/libraries/haskell/http-client-multipart/default.nix
index 4413bf54d705..9cad23a79991 100644
--- a/pkgs/development/libraries/haskell/http-client-multipart/default.nix
+++ b/pkgs/development/libraries/haskell/http-client-multipart/default.nix
@@ -5,12 +5,11 @@ cabal.mkDerivation (self: {
   version = "0.3.0.0";
   sha256 = "18za6s3658hgm95rrygghrz0b643c7nkzaimb14v2hv82w3k9crg";
   buildDepends = [ httpClient ];
+  noHaddock = true;
   meta = {
     homepage = "https://github.com/snoyberg/http-client";
     description = "Generate multipart uploads for http-client. (deprecated)";
     license = self.stdenv.lib.licenses.mit;
     platforms = self.ghc.meta.platforms;
   };
-  # This library now contains now modules as it is deprecated.
-  noHaddock = true;
 })

From ef5661c01f57f49381b69269f440567aaa64f296 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Tue, 8 Apr 2014 13:29:59 +0200
Subject: [PATCH 448/567] haskell-tasty: update to version 0.8.0.4

---
 pkgs/development/libraries/haskell/tasty/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/tasty/default.nix b/pkgs/development/libraries/haskell/tasty/default.nix
index 706053a3e031..13e4e37e4b06 100644
--- a/pkgs/development/libraries/haskell/tasty/default.nix
+++ b/pkgs/development/libraries/haskell/tasty/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "tasty";
-  version = "0.8.0.2";
-  sha256 = "0xn0qc1d7bq8s7988x58snq5ipvmi7g87rg89r1l21yxl6a85zw5";
+  version = "0.8.0.4";
+  sha256 = "016niwympxbxpg3yq7samgh92l20wxm2h6cwhqal4zdj8n9262j0";
   buildDepends = [
     ansiTerminal async deepseq mtl optparseApplicative regexTdfa stm
     tagged unboundedDelays

From bed88f0ff7a1ddbbf45a4b36dbe87871474c0eb1 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Tue, 8 Apr 2014 13:30:01 +0200
Subject: [PATCH 449/567] haskell-twitter-conduit: update to version 0.0.2.1

---
 .../libraries/haskell/twitter-conduit/default.nix  | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/pkgs/development/libraries/haskell/twitter-conduit/default.nix b/pkgs/development/libraries/haskell/twitter-conduit/default.nix
index d39858770777..4d14ed4582af 100644
--- a/pkgs/development/libraries/haskell/twitter-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/twitter-conduit/default.nix
@@ -1,21 +1,21 @@
 { cabal, aeson, attoparsec, attoparsecConduit, authenticateOauth
 , conduit, dataDefault, doctest, failure, filepath, hlint
-, httpClientMultipart, httpConduit, httpTypes, lens, liftedBase
-, monadControl, monadLogger, resourcet, shakespeareText, text, time
+, httpClient, httpConduit, httpTypes, lens, liftedBase
+, monadControl, monadLogger, resourcet, shakespeare, text, time
 , transformers, transformersBase, twitterTypes
 }:
 
 cabal.mkDerivation (self: {
   pname = "twitter-conduit";
-  version = "0.0.2";
-  sha256 = "1bkn0lfwwr5lnw4xfzdjiad48r1qz6m4z0nq1inz45gflmjwmghj";
+  version = "0.0.2.1";
+  sha256 = "1z0d8hwjrdw8gkww9zkn9cqv3g40my952li8pm3c164d7ywswszq";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
     aeson attoparsec attoparsecConduit authenticateOauth conduit
-    dataDefault failure httpClientMultipart httpConduit httpTypes lens
-    liftedBase monadControl monadLogger resourcet shakespeareText text
-    time transformers transformersBase twitterTypes
+    dataDefault failure httpClient httpConduit httpTypes lens
+    liftedBase monadControl monadLogger resourcet shakespeare text time
+    transformers transformersBase twitterTypes
   ];
   testDepends = [ doctest filepath hlint ];
   meta = {

From e49e74ebf48ba1edd6ee2bcfa5d14158beb7aaf8 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Tue, 8 Apr 2014 13:30:02 +0200
Subject: [PATCH 450/567] haskell-twitter-types: update to version 0.2.20140407

---
 pkgs/development/libraries/haskell/twitter-types/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/twitter-types/default.nix b/pkgs/development/libraries/haskell/twitter-types/default.nix
index aea8f3dbc3a2..05c37c02f417 100644
--- a/pkgs/development/libraries/haskell/twitter-types/default.nix
+++ b/pkgs/development/libraries/haskell/twitter-types/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "twitter-types";
-  version = "0.2.20140406";
-  sha256 = "0zzdnmcx57w2j2bypwnxkrmaa2zw945g8717lm0c2wzk31kjbvi8";
+  version = "0.2.20140407";
+  sha256 = "171m7fqq82g630r1x5advq04qfkdljvc8d8ygyafr2x44ss2a996";
   buildDepends = [ aeson httpTypes text unorderedContainers ];
   testDepends = [
     aeson attoparsec httpTypes HUnit shakespeare testFramework

From 3010e63fb780cffad90e224e80ffcaf8651a7dac Mon Sep 17 00:00:00 2001
From: Luca Bruno <lucabru@src.gnome.org>
Date: Mon, 7 Apr 2014 15:37:02 +0200
Subject: [PATCH 451/567] gst-plugins-bad: disable faac by default because it's
 unfree

A lot of packages are not built in hydra due to gst-plugins-bad
being unfree. Make faac dependency optional.
---
 pkgs/development/libraries/gstreamer/bad/default.nix | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/pkgs/development/libraries/gstreamer/bad/default.nix b/pkgs/development/libraries/gstreamer/bad/default.nix
index 7647c0f64dba..eed4c12f2547 100644
--- a/pkgs/development/libraries/gstreamer/bad/default.nix
+++ b/pkgs/development/libraries/gstreamer/bad/default.nix
@@ -1,11 +1,14 @@
 { stdenv, fetchurl, pkgconfig, python, gst-plugins-base, orc
-, faac, faad2, libass, libkate, libmms
+, faacSupport ? false, faac ? null
+, faad2, libass, libkate, libmms
 , libmodplug, mpeg2dec, mpg123 
 , openjpeg, libopus, librsvg
 , timidity, libvdpau, wayland
 , libwebp, xvidcore, gnutls
 }:
 
+assert faacSupport -> faac != null;
+
 stdenv.mkDerivation rec {
   name = "gst-plugins-bad-1.2.3";
 
@@ -32,10 +35,10 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     gst-plugins-base orc
-    faac faad2 libass libkate libmms
+    faad2 libass libkate libmms
     libmodplug mpeg2dec mpg123 
     openjpeg libopus librsvg
     timidity libvdpau wayland
     libwebp xvidcore gnutls
-  ];
+  ] ++ stdenv.lib.optional faacSupport faac;
 }

From dcd0e68b177954278a767e55e63e80260daa3ea0 Mon Sep 17 00:00:00 2001
From: Austin Seipp <aseipp@pobox.com>
Date: Tue, 8 Apr 2014 16:13:08 -0500
Subject: [PATCH 452/567] stunnel: adopt, bump to version 5.01

Signed-off-by: Austin Seipp <aseipp@pobox.com>
---
 pkgs/tools/networking/stunnel/default.nix | 26 +++++++++++------------
 1 file changed, 13 insertions(+), 13 deletions(-)

diff --git a/pkgs/tools/networking/stunnel/default.nix b/pkgs/tools/networking/stunnel/default.nix
index 672f05577dd5..0ea7a948c8d5 100644
--- a/pkgs/tools/networking/stunnel/default.nix
+++ b/pkgs/tools/networking/stunnel/default.nix
@@ -1,22 +1,22 @@
 { stdenv, fetchurl, openssl }:
 
-stdenv.mkDerivation {
-  name = "stunnel-5.00";
-  
+stdenv.mkDerivation rec {
+  name    = "stunnel-${version}";
+  version = "5.01";
+
   src = fetchurl {
-    url = http://www.stunnel.org/downloads/stunnel-5.00.tar.gz;
-    sha256 = "04xwfppvmj0wrzar3rbypax93jb10f1skh3gq86gy6pglx96v648";
+    url    = "http://www.stunnel.org/downloads/${name}.tar.gz";
+    sha256 = "0sw87x7yrgjx43a5x0cy71p2vr5j0l8n5pv49hq159p8zxcbyr95";
   };
 
-  buildInputs = [openssl];
+  buildInputs = [ openssl ];
+  configureFlags = [ "--with-ssl=${openssl}" ];
 
-  configureFlags = [
-    "--with-ssl=${openssl}"
-  ];
-  
   meta = {
-    description = "Stunnel - Universal SSL wrapper";
-    homepage = http://www.stunnel.org/;
-    license = "GPLv2";
+    description = "universal tls/ssl wrapper";
+    homepage    = "http://www.stunnel.org/";
+    license     = stdenv.lib.licenses.gpl2Plus;
+    platforms   = stdenv.lib.platforms.unix;
+    maintainers = [ stdenv.lib.maintainers.thoughtpolice ];
   };
 }

From e09250d41ccaf65c570ba94c0335493365807770 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Wed, 9 Apr 2014 00:09:31 +0200
Subject: [PATCH 453/567] Disable allowUnfree by default

Fixes #2134.
---
 nixos/doc/manual/release-notes.xml        | 21 +++++++++++++++++++--
 nixos/lib/eval-config.nix                 |  7 ++++++-
 nixos/modules/services/security/fprot.nix |  6 ++++--
 pkgs/stdenv/generic/default.nix           |  2 +-
 4 files changed, 30 insertions(+), 6 deletions(-)

diff --git a/nixos/doc/manual/release-notes.xml b/nixos/doc/manual/release-notes.xml
index 68feb80e090b..10815ba613ad 100644
--- a/nixos/doc/manual/release-notes.xml
+++ b/nixos/doc/manual/release-notes.xml
@@ -7,7 +7,7 @@
 
 <section xml:id="sec-release-14.02">
 
-<title>Release 14.02 (“Baboon”, 2014/02/??)</title>
+<title>Release 14.04 (“Baboon”, 2014/04/??)</title>
 
 <para>This is the second stable release branch of NixOS.  The main
 enhancements are the following:
@@ -18,7 +18,7 @@ enhancements are the following:
   <xref linkend="sec-uefi-installation"/> for
   details.</para></listitem>
 
-  <listitem><para>NixOS is now based on Glibc 2.18 and GCC
+  <listitem><para>NixOS is now based on Glibc 2.19 and GCC
   4.8.</para></listitem>
 
 </itemizedlist>
@@ -30,6 +30,23 @@ following incompatible changes:
 
 <itemizedlist>
 
+  <listitem><para>Nixpkgs no longer exposes unfree packages by
+  default. If your NixOS configuration requires unfree packages from
+  Nixpkgs, you need to enable support for them explicitly by setting:
+
+<programlisting>
+nixpkgs.config.allowUnfree = true;
+</programlisting>
+
+  Otherwise, you get an error message such as:
+
+<screen>
+error: package ‘nvidia-x11-331.49-3.12.17’ in ‘…/nvidia-x11/default.nix:56’
+  has an unfree license, refusing to evaluate
+</screen>
+
+  </para></listitem>
+
   <listitem><para>The firewall is now enabled by default. If you don’t
   want this, you need to disable it explicitly:
 
diff --git a/nixos/lib/eval-config.nix b/nixos/lib/eval-config.nix
index 4b8c7354a7ec..e082b174454e 100644
--- a/nixos/lib/eval-config.nix
+++ b/nixos/lib/eval-config.nix
@@ -26,10 +26,15 @@ rec {
 
   # These are the extra arguments passed to every module.  In
   # particular, Nixpkgs is passed through the "pkgs" argument.
+  # FIXME: we enable config.allowUnfree to make packages like
+  # nvidia-x11 available. This isn't a problem because if the user has
+  # ‘nixpkgs.config.allowUnfree = false’, then evaluation will fail on
+  # the 64-bit package anyway. However, it would be cleaner to respect
+  # nixpkgs.config here.
   extraArgs = extraArgs_ // {
     inherit pkgs modules baseModules;
     modulesPath = ../modules;
-    pkgs_i686 = import ./nixpkgs.nix { system = "i686-linux"; };
+    pkgs_i686 = import ./nixpkgs.nix { system = "i686-linux"; config.allowUnfree = true; };
     utils = import ./utils.nix pkgs;
   };
 
diff --git a/nixos/modules/services/security/fprot.nix b/nixos/modules/services/security/fprot.nix
index 9f1fc4ed6d8b..a109191be550 100644
--- a/nixos/modules/services/security/fprot.nix
+++ b/nixos/modules/services/security/fprot.nix
@@ -18,7 +18,6 @@ in {
 	};
 
 	productData = mkOption {
-	  default = "${pkgs.fprot}/opt/f-prot/product.data";
 	  description = ''
 	    product.data file. Defaults to the one supplied with installation package.
 	  '';
@@ -32,7 +31,6 @@ in {
 	};
 
 	licenseKeyfile = mkOption {
-	  default = "${pkgs.fprot}/opt/f-prot/license.key";
 	  description = ''
 	    License keyfile. Defaults to the one supplied with installation package.
 	  '';
@@ -45,6 +43,10 @@ in {
   ###### implementation
 
   config = mkIf cfg.updater.enable {
+
+    services.fprot.updater.productData = "${pkgs.fprot}/opt/f-prot/product.data";
+    services.fprot.updater.licenseKeyfile = "${pkgs.fprot}/opt/f-prot/license.key";
+
     environment.systemPackages = [ pkgs.fprot ];
     environment.etc = singleton {
       source = "${pkgs.fprot}/opt/f-prot/f-prot.conf";
diff --git a/pkgs/stdenv/generic/default.nix b/pkgs/stdenv/generic/default.nix
index f1cf34b160c6..03000d0cdd89 100644
--- a/pkgs/stdenv/generic/default.nix
+++ b/pkgs/stdenv/generic/default.nix
@@ -14,7 +14,7 @@ let lib = import ../../../lib; in lib.makeOverridable (
 
 let
 
-  allowUnfree = config.allowUnfree or true && builtins.getEnv "HYDRA_DISALLOW_UNFREE" != "1";
+  allowUnfree = config.allowUnfree or false && builtins.getEnv "HYDRA_DISALLOW_UNFREE" != "1";
 
   allowBroken = builtins.getEnv "NIXPKGS_ALLOW_BROKEN" == "1";
 

From 627923d5b7dd4d2a7633a9b7771f76f522961810 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Wed, 9 Apr 2014 00:12:48 +0200
Subject: [PATCH 454/567] Replace $HYDRA_DISALLOW_UNFREE with
 $NIXPKGS_ALLOW_UNFREE

We've never used this environment variable in Hydra (except for a few
days). This is also more consistent with $NIXPKGS_ALLOW_BROKEN.
---
 pkgs/stdenv/generic/default.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pkgs/stdenv/generic/default.nix b/pkgs/stdenv/generic/default.nix
index 03000d0cdd89..ea61e7d68a28 100644
--- a/pkgs/stdenv/generic/default.nix
+++ b/pkgs/stdenv/generic/default.nix
@@ -14,7 +14,7 @@ let lib = import ../../../lib; in lib.makeOverridable (
 
 let
 
-  allowUnfree = config.allowUnfree or false && builtins.getEnv "HYDRA_DISALLOW_UNFREE" != "1";
+  allowUnfree = config.allowUnfree or false || builtins.getEnv "NIXPKGS_ALLOW_UNFREE" == "1";
 
   allowBroken = builtins.getEnv "NIXPKGS_ALLOW_BROKEN" == "1";
 

From 331fa06c79ff562fbf39ff842404fd316a6e81bb Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Wed, 9 Apr 2014 00:13:52 +0200
Subject: [PATCH 455/567] =?UTF-8?q?Add=20a=20flag=20=E2=80=98config.allowB?=
 =?UTF-8?q?roken=E2=80=99?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 pkgs/stdenv/generic/default.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pkgs/stdenv/generic/default.nix b/pkgs/stdenv/generic/default.nix
index ea61e7d68a28..3a475933d24f 100644
--- a/pkgs/stdenv/generic/default.nix
+++ b/pkgs/stdenv/generic/default.nix
@@ -16,7 +16,7 @@ let
 
   allowUnfree = config.allowUnfree or false || builtins.getEnv "NIXPKGS_ALLOW_UNFREE" == "1";
 
-  allowBroken = builtins.getEnv "NIXPKGS_ALLOW_BROKEN" == "1";
+  allowBroken = config.allowBroken or false || builtins.getEnv "NIXPKGS_ALLOW_BROKEN" == "1";
 
   unsafeGetAttrPos = builtins.unsafeGetAttrPos or (n: as: null);
 

From 2bb8d963b1b5b3925f22efdd3dbecbbad2961425 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Wed, 9 Apr 2014 00:17:16 +0200
Subject: [PATCH 456/567] Die tabs die

---
 nixos/modules/services/security/fprot.nix | 66 +++++++++++------------
 1 file changed, 33 insertions(+), 33 deletions(-)

diff --git a/nixos/modules/services/security/fprot.nix b/nixos/modules/services/security/fprot.nix
index a109191be550..5f8d398996f2 100644
--- a/nixos/modules/services/security/fprot.nix
+++ b/nixos/modules/services/security/fprot.nix
@@ -10,31 +10,31 @@ in {
 
     services.fprot = {
       updater = {
-	enable = mkOption {
-	  default = false;
-	  description = ''
-	    Whether to enable automatic F-Prot virus definitions database updates.
-	  '';
-	};
+        enable = mkOption {
+          default = false;
+          description = ''
+            Whether to enable automatic F-Prot virus definitions database updates.
+          '';
+        };
 
-	productData = mkOption {
-	  description = ''
-	    product.data file. Defaults to the one supplied with installation package.
-	  '';
-	};
+        productData = mkOption {
+          description = ''
+            product.data file. Defaults to the one supplied with installation package.
+          '';
+        };
 
-	frequency = mkOption {
-	  default = 30;
-	  description = ''
-	    Update virus definitions every X minutes.
-	  '';
-	};
+        frequency = mkOption {
+          default = 30;
+          description = ''
+            Update virus definitions every X minutes.
+          '';
+        };
 
-	licenseKeyfile = mkOption {
-	  description = ''
-	    License keyfile. Defaults to the one supplied with installation package.
-	  '';
-	};
+        licenseKeyfile = mkOption {
+          description = ''
+            License keyfile. Defaults to the one supplied with installation package.
+          '';
+        };
 
       };
     };
@@ -44,8 +44,8 @@ in {
 
   config = mkIf cfg.updater.enable {
 
-    services.fprot.updater.productData = "${pkgs.fprot}/opt/f-prot/product.data";
-    services.fprot.updater.licenseKeyfile = "${pkgs.fprot}/opt/f-prot/license.key";
+    services.fprot.updater.productData = mkDefault "${pkgs.fprot}/opt/f-prot/product.data";
+    services.fprot.updater.licenseKeyfile = mkDefault "${pkgs.fprot}/opt/f-prot/license.key";
 
     environment.systemPackages = [ pkgs.fprot ];
     environment.etc = singleton {
@@ -69,22 +69,22 @@ in {
 
     jobs = {
       fprot_updater = {
-	name = "fprot-updater";
-	  task = true;
+        name = "fprot-updater";
+          task = true;
 
-	  # have to copy fpupdate executable because it insists on storing the virus database in the same dir
+          # have to copy fpupdate executable because it insists on storing the virus database in the same dir
           preStart = ''
             mkdir -m 0755 -p ${stateDir}
             chown ${fprotUser}:${fprotGroup} ${stateDir}
-	    cp ${pkgs.fprot}/opt/f-prot/fpupdate ${stateDir}
-	    ln -sf ${cfg.updater.productData} ${stateDir}/product.data
+            cp ${pkgs.fprot}/opt/f-prot/fpupdate ${stateDir}
+            ln -sf ${cfg.updater.productData} ${stateDir}/product.data
           '';
-	  #setuid = fprotUser;
-	  #setgid = fprotGroup;
+          #setuid = fprotUser;
+          #setgid = fprotGroup;
           exec = "/var/lib/fprot/fpupdate --keyfile ${cfg.updater.licenseKeyfile}";
-      }; 
+      };
     };
 
  };
 
-}
\ No newline at end of file
+}

From 452a1f9318ef3baeb967b648b439e0de10e41b88 Mon Sep 17 00:00:00 2001
From: Shea Levy <shea@shealevy.com>
Date: Tue, 8 Apr 2014 18:26:52 -0400
Subject: [PATCH 457/567] Revert "Turn on user-controlled wpa-cli on the
 livecd"

user-controlled wpa-cli requires explicit interface setting for some
reason

This reverts commit c6797b373f379f7a7f8a7da01bdf3f6751f11f2e.
---
 nixos/modules/profiles/installation-device.nix | 1 -
 1 file changed, 1 deletion(-)

diff --git a/nixos/modules/profiles/installation-device.nix b/nixos/modules/profiles/installation-device.nix
index 85ae51ec68e8..3b058c6e9715 100644
--- a/nixos/modules/profiles/installation-device.nix
+++ b/nixos/modules/profiles/installation-device.nix
@@ -45,7 +45,6 @@ with pkgs.lib;
 
     # Enable wpa_supplicant, but don't start it by default.
     networking.wireless.enable = true;
-    networking.wireless.userControlled.enable = true;
     jobs.wpa_supplicant.startOn = pkgs.lib.mkOverride 50 "";
 
     # Tell the Nix evaluator to garbage collect more aggressively.

From 2bc0f7b701a41aaf2e2f4615ab3dbe66e38573c8 Mon Sep 17 00:00:00 2001
From: Luca Bruno <lucabru@src.gnome.org>
Date: Tue, 8 Apr 2014 13:23:12 +0200
Subject: [PATCH 458/567] evolution-data-server: fix gsettings schemas and add
 dbus service

---
 nixos/modules/module-list.nix                 |  1 +
 .../desktops/gnome3/evolution-data-server.nix | 39 +++++++++++++++++++
 .../services/x11/desktop-managers/gnome3.nix  |  1 +
 .../core/evolution-data-server/default.nix    | 10 ++++-
 4 files changed, 49 insertions(+), 2 deletions(-)
 create mode 100644 nixos/modules/services/desktops/gnome3/evolution-data-server.nix

diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index ecf1901d500d..7e69eabdeacf 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -97,6 +97,7 @@
   ./services/databases/virtuoso.nix
   ./services/databases/monetdb.nix
   ./services/desktops/accountservice.nix
+  ./services/desktops/gnome3/evolution-data-server.nix
   ./services/desktops/gnome3/sushi.nix
   ./services/games/ghost-one.nix
   ./services/games/minecraft-server.nix
diff --git a/nixos/modules/services/desktops/gnome3/evolution-data-server.nix b/nixos/modules/services/desktops/gnome3/evolution-data-server.nix
new file mode 100644
index 000000000000..645921336669
--- /dev/null
+++ b/nixos/modules/services/desktops/gnome3/evolution-data-server.nix
@@ -0,0 +1,39 @@
+# Evolution Data Server daemon.
+
+{ config, pkgs, ... }:
+
+with pkgs.lib;
+
+{
+
+  ###### interface
+
+  options = {
+
+    services.gnome3.evolution-data-server = {
+
+      enable = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Whether to enable Evolution Data Server, a collection of services for 
+          storing addressbooks and calendars.
+        '';
+      };
+
+    };
+
+  };
+
+
+  ###### implementation
+
+  config = mkIf config.services.gnome3.evolution-data-server.enable {
+
+    environment.systemPackages = [ pkgs.evolution_data_server ];
+
+    services.dbus.packages = [ pkgs.evolution_data_server ];
+
+  };
+
+}
diff --git a/nixos/modules/services/x11/desktop-managers/gnome3.nix b/nixos/modules/services/x11/desktop-managers/gnome3.nix
index 985884595ab6..626c683f9dc6 100644
--- a/nixos/modules/services/x11/desktop-managers/gnome3.nix
+++ b/nixos/modules/services/x11/desktop-managers/gnome3.nix
@@ -23,6 +23,7 @@ in {
     security.polkit.enable = true;
     services.udisks2.enable = true;
     services.accounts-daemon.enable = true;
+    services.gnome3.evolution-data-server.enable = true;
     services.gnome3.sushi.enable = true;
     networking.networkmanager.enable = true;
     services.upower.enable = config.powerManagement.enable;
diff --git a/pkgs/desktops/gnome-3/core/evolution-data-server/default.nix b/pkgs/desktops/gnome-3/core/evolution-data-server/default.nix
index 0ded30b11abb..9e7d0cb3da0a 100644
--- a/pkgs/desktops/gnome-3/core/evolution-data-server/default.nix
+++ b/pkgs/desktops/gnome-3/core/evolution-data-server/default.nix
@@ -1,5 +1,5 @@
 { fetchurl, stdenv, pkgconfig, gnome3, python, intltool, libsoup, libxml2, libsecret
-, p11_kit, db, nspr, nss, libical, gperf, valaSupport ? true, vala }:
+, p11_kit, db, nspr, nss, libical, gperf, makeWrapper, valaSupport ? true, vala }:
 
 
 stdenv.mkDerivation rec {
@@ -12,13 +12,19 @@ stdenv.mkDerivation rec {
 
   buildInputs = with gnome3;
     [ pkgconfig glib python intltool libsoup libxml2 gtk gnome_online_accounts libsecret
-      gcr p11_kit db nspr nss libgweather libical libgdata gperf ]
+      gcr p11_kit db nspr nss libgweather libical libgdata gperf makeWrapper ]
     ++ stdenv.lib.optional valaSupport vala;
 
   # uoa irrelevant for now
   configureFlags = ["--disable-uoa" "--with-nspr-includes=${nspr}/include/nspr" "--with-nss-includes=${nss}/include/nss"]
                    ++ stdenv.lib.optional valaSupport "--enable-vala-bindings";
 
+  preFixup = ''
+    for f in "$out/libexec/evolution-addressbook-factory" "$out/libexec/evolution-calendar-factory"; do
+      wrapProgram $f --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
+    done
+  '';
+
   meta = with stdenv.lib; {
     platforms = platforms.linux;
   };

From f88597d6e4feb5bb11e8e84f7c396d02a245cb44 Mon Sep 17 00:00:00 2001
From: Luca Bruno <lucabru@src.gnome.org>
Date: Tue, 8 Apr 2014 13:24:56 +0200
Subject: [PATCH 459/567] gnome-contacts: new package

Contacts is GNOME's integrated address book

https://wiki.gnome.org/Apps/Contacts
---
 .../gnome-contacts/configure_dbus_glib.patch  | 10 ++++
 .../gnome-3/core/gnome-contacts/default.nix   | 51 +++++++++++++++++++
 .../gnome-contacts/fix_row_selected.patch     | 11 ++++
 pkgs/desktops/gnome-3/default.nix             |  2 +
 4 files changed, 74 insertions(+)
 create mode 100644 pkgs/desktops/gnome-3/core/gnome-contacts/configure_dbus_glib.patch
 create mode 100644 pkgs/desktops/gnome-3/core/gnome-contacts/default.nix
 create mode 100644 pkgs/desktops/gnome-3/core/gnome-contacts/fix_row_selected.patch

diff --git a/pkgs/desktops/gnome-3/core/gnome-contacts/configure_dbus_glib.patch b/pkgs/desktops/gnome-3/core/gnome-contacts/configure_dbus_glib.patch
new file mode 100644
index 000000000000..926762defbde
--- /dev/null
+++ b/pkgs/desktops/gnome-3/core/gnome-contacts/configure_dbus_glib.patch
@@ -0,0 +1,10 @@
+--- configure.ac.orig	2014-04-08 10:25:49.497620879 +0200
++++ configure.ac	2014-04-08 10:26:36.639440950 +0200
+@@ -43,6 +43,7 @@
+ 	     folks-telepathy
+ 	     folks-eds
+ 	     libnotify
++	     dbus-glib-1
+ 	     telepathy-glib >= 0.17.5
+ 	     libebook-1.2 >= 3.5.3
+ 	     libedataserver-1.2 >= 3.5.3
diff --git a/pkgs/desktops/gnome-3/core/gnome-contacts/default.nix b/pkgs/desktops/gnome-3/core/gnome-contacts/default.nix
new file mode 100644
index 000000000000..f8059f952e62
--- /dev/null
+++ b/pkgs/desktops/gnome-3/core/gnome-contacts/default.nix
@@ -0,0 +1,51 @@
+{ stdenv, intltool, fetchurl, evolution_data_server, db
+, pkgconfig, gtk3, glib, hicolor_icon_theme, libsecret
+, bash, makeWrapper, itstool, folks, libnotify, libxml2
+, gnome3, librsvg, gdk_pixbuf, file, telepathy_glib, nspr, nss
+, libsoup, vala, dbus_glib, automake114x, autoconf }:
+
+stdenv.mkDerivation rec {
+  name = "gnome-contacts-3.10.1";
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/gnome-contacts/3.10/${name}.tar.xz";
+    sha256 = "e119c32bb10136e7190f11f79334fa82ed56468cff5bb7836da0ebf7b572779b";
+  };
+
+  doCheck = true;
+
+  propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard evolution_data_server ];
+  propagatedBuildInputs = [ gdk_pixbuf gnome3.gnome_icon_theme librsvg
+                            hicolor_icon_theme gnome3.gnome_icon_theme_symbolic ];
+
+  # force build from vala
+  preBuild = ''
+   touch src/*.vala
+  '';
+
+  buildInputs = [ pkgconfig gtk3 glib intltool itstool evolution_data_server
+                  gnome3.gsettings_desktop_schemas makeWrapper file libnotify
+                  folks gnome3.gnome_desktop telepathy_glib libsecret dbus_glib
+                  libxml2 libsoup gnome3.gnome_online_accounts nspr nss
+                  vala automake114x autoconf db ];
+
+  preFixup = ''
+    for f in "$out/bin/gnome-contacts" "$out/libexec/gnome-contacts-search-provider"; do
+      wrapProgram $f \
+        --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
+        --prefix XDG_DATA_DIRS : "${gtk3}/share:${gnome3.gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
+    done
+  '';
+
+  patches = [ ./configure_dbus_glib.patch ./fix_row_selected.patch ];
+
+  patchFlags = "-p0";
+
+  meta = with stdenv.lib; {
+    homepage = https://wiki.gnome.org/Apps/Contacts;
+    description = "Contacts is GNOME's integrated address book";
+    maintainers = with maintainers; [ lethalman ];
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/desktops/gnome-3/core/gnome-contacts/fix_row_selected.patch b/pkgs/desktops/gnome-3/core/gnome-contacts/fix_row_selected.patch
new file mode 100644
index 000000000000..b379b4b8ee97
--- /dev/null
+++ b/pkgs/desktops/gnome-3/core/gnome-contacts/fix_row_selected.patch
@@ -0,0 +1,11 @@
+--- src/contacts-view.vala.orig	2014-04-08 11:35:36.302252460 +0200
++++ src/contacts-view.vala	2014-04-08 11:37:37.045343221 +0200
+@@ -265,7 +265,7 @@
+     data.destroy ();
+   }
+ 
+-  public override void row_selected (ListBoxRow row) {
++  public override void row_selected (ListBoxRow? row) {
+     var data = row as ContactDataRow;
+     var contact = data != null ? data.contact : null;
+     selection_changed (contact);
diff --git a/pkgs/desktops/gnome-3/default.nix b/pkgs/desktops/gnome-3/default.nix
index fb92cd80998f..73a3843bad28 100644
--- a/pkgs/desktops/gnome-3/default.nix
+++ b/pkgs/desktops/gnome-3/default.nix
@@ -40,6 +40,8 @@ rec {
 
   gnome-backgrounds = callPackage ./core/gnome-backgrounds { };
 
+  gnome-contacts = callPackage ./core/gnome-contacts { };
+
   gnome_control_center = callPackage ./core/gnome-control-center { };
 
   gnome-calculator = callPackage ./core/gnome-calculator { };

From 8553993887fcb821c06f91e43b0a5ca3b6c3111e Mon Sep 17 00:00:00 2001
From: Luca Bruno <lucabru@src.gnome.org>
Date: Tue, 8 Apr 2014 15:02:15 +0200
Subject: [PATCH 460/567] telepathy-mission-control: add dbus service, enabled
 by default on gnome3

---
 nixos/modules/module-list.nix                 |  1 +
 nixos/modules/services/desktops/telepathy.nix | 39 +++++++++++++++++++
 .../services/x11/desktop-managers/gnome3.nix  |  1 +
 .../telepathy/mission-control/default.nix     |  9 ++++-
 4 files changed, 48 insertions(+), 2 deletions(-)
 create mode 100644 nixos/modules/services/desktops/telepathy.nix

diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index 7e69eabdeacf..867cedacaec1 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -99,6 +99,7 @@
   ./services/desktops/accountservice.nix
   ./services/desktops/gnome3/evolution-data-server.nix
   ./services/desktops/gnome3/sushi.nix
+  ./services/desktops/telepathy.nix
   ./services/games/ghost-one.nix
   ./services/games/minecraft-server.nix
   ./services/hardware/acpid.nix
diff --git a/nixos/modules/services/desktops/telepathy.nix b/nixos/modules/services/desktops/telepathy.nix
new file mode 100644
index 000000000000..bd417db88afa
--- /dev/null
+++ b/nixos/modules/services/desktops/telepathy.nix
@@ -0,0 +1,39 @@
+# Telepathy daemon.
+
+{ config, pkgs, ... }:
+
+with pkgs.lib;
+
+{
+
+  ###### interface
+
+  options = {
+
+    services.telepathy = {
+
+      enable = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Whether to enable Telepathy service, a communications framework
+          that enables real-time communication via pluggable protocol backends.
+        '';
+      };
+
+    };
+
+  };
+
+
+  ###### implementation
+
+  config = mkIf config.services.telepathy.enable {
+
+    environment.systemPackages = [ pkgs.telepathy_mission_control ];
+
+    services.dbus.packages = [ pkgs.telepathy_mission_control ];
+
+  };
+
+}
diff --git a/nixos/modules/services/x11/desktop-managers/gnome3.nix b/nixos/modules/services/x11/desktop-managers/gnome3.nix
index 626c683f9dc6..dffa82437c88 100644
--- a/nixos/modules/services/x11/desktop-managers/gnome3.nix
+++ b/nixos/modules/services/x11/desktop-managers/gnome3.nix
@@ -25,6 +25,7 @@ in {
     services.accounts-daemon.enable = true;
     services.gnome3.evolution-data-server.enable = true;
     services.gnome3.sushi.enable = true;
+    services.telepathy.enable = true;
     networking.networkmanager.enable = true;
     services.upower.enable = config.powerManagement.enable;
 
diff --git a/pkgs/applications/networking/instant-messengers/telepathy/mission-control/default.nix b/pkgs/applications/networking/instant-messengers/telepathy/mission-control/default.nix
index 5d44f97a1be1..a8142fc1e5cf 100644
--- a/pkgs/applications/networking/instant-messengers/telepathy/mission-control/default.nix
+++ b/pkgs/applications/networking/instant-messengers/telepathy/mission-control/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, telepathy_glib, libxslt }:
+{ stdenv, fetchurl, pkgconfig, telepathy_glib, libxslt, makeWrapper }:
 
 stdenv.mkDerivation rec {
   name = "${pname}-5.16.0";
@@ -9,7 +9,12 @@ stdenv.mkDerivation rec {
     sha256 = "1l61w6j04mbrjsbcfrlc0safh9nlsjnj0z6lszal64r9bhkcghzd";
   };
 
-  buildInputs = [ telepathy_glib ];
+  buildInputs = [ telepathy_glib makeWrapper ];
 
   nativeBuildInputs = [ pkgconfig libxslt ];
+
+  preFixup = ''
+    wrapProgram "$out/libexec/mission-control-5" \
+      --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
+  '';
 }

From 9219c503c940e87806139fed4d9c94ca20fe726c Mon Sep 17 00:00:00 2001
From: Luca Bruno <lucabru@src.gnome.org>
Date: Tue, 8 Apr 2014 20:27:37 +0200
Subject: [PATCH 461/567] file-roller: fix gsettings schemas

---
 pkgs/desktops/gnome-3/desktop/file-roller/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/desktops/gnome-3/desktop/file-roller/default.nix b/pkgs/desktops/gnome-3/desktop/file-roller/default.nix
index 0f48103c93d4..41f1fb0097fb 100644
--- a/pkgs/desktops/gnome-3/desktop/file-roller/default.nix
+++ b/pkgs/desktops/gnome-3/desktop/file-roller/default.nix
@@ -18,9 +18,9 @@ stdenv.mkDerivation rec {
   buildInputs = [ glib pkgconfig gnome3.gtk intltool itstool libxml2 libarchive
                   attr bzip2 acl makeWrapper ];
 
-  postInstall = ''
+  preFixup = ''
     wrapProgram "$out/bin/file-roller" \
-      --prefix XDG_DATA_DIRS : "${gnome3.gtk}/share:$out/share"
+      --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
   '';
 
   meta = with stdenv.lib; {

From c56af6102a53dd6463483b968cf82d14646f03b7 Mon Sep 17 00:00:00 2001
From: Luca Bruno <lucabru@src.gnome.org>
Date: Tue, 8 Apr 2014 22:44:22 +0200
Subject: [PATCH 462/567] at-spi2-core: add dbus module, enabled on gnome3 by
 default

---
 nixos/modules/module-list.nix                 |  1 +
 .../services/desktops/gnome3/at-spi2-core.nix | 39 +++++++++++++++++++
 .../services/x11/desktop-managers/gnome3.nix  |  1 +
 3 files changed, 41 insertions(+)
 create mode 100644 nixos/modules/services/desktops/gnome3/at-spi2-core.nix

diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index 867cedacaec1..b9da7786d2cf 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -97,6 +97,7 @@
   ./services/databases/virtuoso.nix
   ./services/databases/monetdb.nix
   ./services/desktops/accountservice.nix
+  ./services/desktops/gnome3/at-spi2-core.nix
   ./services/desktops/gnome3/evolution-data-server.nix
   ./services/desktops/gnome3/sushi.nix
   ./services/desktops/telepathy.nix
diff --git a/nixos/modules/services/desktops/gnome3/at-spi2-core.nix b/nixos/modules/services/desktops/gnome3/at-spi2-core.nix
new file mode 100644
index 000000000000..7a25a794c2ed
--- /dev/null
+++ b/nixos/modules/services/desktops/gnome3/at-spi2-core.nix
@@ -0,0 +1,39 @@
+# at-spi2-core daemon.
+
+{ config, pkgs, ... }:
+
+with pkgs.lib;
+
+{
+
+  ###### interface
+
+  options = {
+
+    services.gnome3.at-spi2-core = {
+
+      enable = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Whether to enable at-spi2-core, a service for the Assistive Technologies
+          available on the GNOME platform.
+        '';
+      };
+
+    };
+
+  };
+
+
+  ###### implementation
+
+  config = mkIf config.services.gnome3.at-spi2-core.enable {
+
+    environment.systemPackages = [ pkgs.gnome3.at_spi2_core ];
+
+    services.dbus.packages = [ pkgs.gnome3.at_spi2_core ];
+
+  };
+
+}
diff --git a/nixos/modules/services/x11/desktop-managers/gnome3.nix b/nixos/modules/services/x11/desktop-managers/gnome3.nix
index dffa82437c88..0a4afcd81a3f 100644
--- a/nixos/modules/services/x11/desktop-managers/gnome3.nix
+++ b/nixos/modules/services/x11/desktop-managers/gnome3.nix
@@ -23,6 +23,7 @@ in {
     security.polkit.enable = true;
     services.udisks2.enable = true;
     services.accounts-daemon.enable = true;
+    services.gnome3.at-spi2-core.enable = true;
     services.gnome3.evolution-data-server.enable = true;
     services.gnome3.sushi.enable = true;
     services.telepathy.enable = true;

From ba200a2c3cfe1e122eec30e588f37430a50feff7 Mon Sep 17 00:00:00 2001
From: Luca Bruno <lucabru@src.gnome.org>
Date: Tue, 8 Apr 2014 23:09:57 +0200
Subject: [PATCH 463/567] gnome-dictionary: remove the duplicated entry under
 desktop/

---
 pkgs/desktops/gnome-3/default.nix             |  2 --
 .../desktop/gnome-dictionary/default.nix      | 20 -------------------
 2 files changed, 22 deletions(-)
 delete mode 100644 pkgs/desktops/gnome-3/desktop/gnome-dictionary/default.nix

diff --git a/pkgs/desktops/gnome-3/default.nix b/pkgs/desktops/gnome-3/default.nix
index 73a3843bad28..d9a673fb4c79 100644
--- a/pkgs/desktops/gnome-3/default.nix
+++ b/pkgs/desktops/gnome-3/default.nix
@@ -139,8 +139,6 @@ rec {
 
   file-roller = callPackage ./desktop/file-roller { };
 
-  gnome_dictionary = callPackage ./desktop/gnome-dictionary { };
-
   gnome_desktop = callPackage ./desktop/gnome-desktop { };
 
   gtksourceview = callPackage ./desktop/gtksourceview { };
diff --git a/pkgs/desktops/gnome-3/desktop/gnome-dictionary/default.nix b/pkgs/desktops/gnome-3/desktop/gnome-dictionary/default.nix
deleted file mode 100644
index 3e952f99eb01..000000000000
--- a/pkgs/desktops/gnome-3/desktop/gnome-dictionary/default.nix
+++ /dev/null
@@ -1,20 +0,0 @@
-{ stdenv, fetchurl, pkgconfig, gnome3, gnome_doc_utils, intltool, which
-, libxml2, libxslt, itstool }:
-
-stdenv.mkDerivation rec {
-  version = "3.10.0";
-  name = "gnome-dictionary-${version}";
-
-  src = fetchurl {
-    url = "mirror://gnome/sources/gnome-dictionary/3.10/${name}.tar.xz";
-    sha256 = "1mqf6ln0cgrw12n9fg81sjbhavrgzvvq7fy3gl55il7pa3z612r5";
-  };
-
-  buildInputs = [ gnome3.gtk ];
-  nativeBuildInputs = [ pkgconfig intltool gnome_doc_utils which libxml2 libxslt itstool ];
-
-  meta = with stdenv.lib; {
-    platforms = platforms.linux;
-  };
-
-}

From a3115707dd1563cfdab75ae716a33aeba4c651ce Mon Sep 17 00:00:00 2001
From: Luca Bruno <lucabru@src.gnome.org>
Date: Wed, 9 Apr 2014 00:02:20 +0200
Subject: [PATCH 464/567] Add environment.gnome3.excludePackages

Give the user a full desktop, and the possibility to exclude
non-base packages from the default list of packages.
---
 lib/lists.nix                                 |  3 ++
 .../services/x11/desktop-managers/gnome3.nix  | 47 +++++++++++++------
 2 files changed, 35 insertions(+), 15 deletions(-)

diff --git a/lib/lists.nix b/lib/lists.nix
index 71a897027962..6c7773304def 100644
--- a/lib/lists.nix
+++ b/lib/lists.nix
@@ -226,4 +226,7 @@ in rec {
   deepSeqList = xs: y: if any (x: deepSeq x false) xs then y else y;
 
   crossLists = f: foldl (fs: args: concatMap (f: map f args) fs) [f];
+
+  # List difference, xs - ys. Removes elements of ys from xs.
+  difference = xs: ys: filter (y: !(builtins.elem y ys)) xs;
 }
diff --git a/nixos/modules/services/x11/desktop-managers/gnome3.nix b/nixos/modules/services/x11/desktop-managers/gnome3.nix
index 0a4afcd81a3f..bebda772352f 100644
--- a/nixos/modules/services/x11/desktop-managers/gnome3.nix
+++ b/nixos/modules/services/x11/desktop-managers/gnome3.nix
@@ -15,6 +15,13 @@ in {
       description = "Enable Gnome 3 desktop manager.";
     };
 
+    environment.gnome3.excludePackages = mkOption {
+      default = [];
+      example = "[ pkgs.gnome3.totem ]";
+      type = types.listOf types.package;
+      description = "Which packages gnome should exclude from the default environment";
+    };
+
   };
 
   config = mkIf cfg.enable {
@@ -51,25 +58,35 @@ in {
     environment.variables.GIO_EXTRA_MODULES = [ "${gnome3.dconf}/lib/gio/modules"
                                                 "${pkgs.glib_networking}/lib/gio/modules" ];
     environment.systemPackages =
-      [ gnome3.evince
-        gnome3.eog
-        gnome3.dconf
-        gnome3.vino
-        gnome3.epiphany
-        gnome3.baobab
-        gnome3.gucharmap
-        gnome3.nautilus
-        gnome3.yelp
+      [ gnome3.dconf
         pkgs.glib_networking
         pkgs.ibus
         gnome3.gnome-backgrounds
-        gnome3.gnome_shell
-        gnome3.gnome_settings_daemon
-        gnome3.gnome_terminal
-        gnome3.gnome_icon_theme
-        gnome3.gnome_themes_standard
         gnome3.gnome_control_center
-      ];
+        gnome3.gnome_icon_theme
+        gnome3.gnome_settings_daemon
+        gnome3.gnome_shell
+        gnome3.gnome_themes_standard
+      ] ++ (lists.difference [
+        gnome3.baobab
+        gnome3.eog
+        gnome3.epiphany
+        gnome3.evince
+        gnome3.gucharmap
+        gnome3.nautilus
+        gnome3.totem
+        gnome3.vino
+        gnome3.yelp
+        gnome3.gnome-calculator
+        gnome3.gnome-contacts
+        gnome3.gnome-font-viewer
+        gnome3.gnome-screenshot
+        gnome3.gnome-system-log
+        gnome3.gnome-system-monitor
+        gnome3.gnome_terminal
+
+        gnome3.file-roller
+      ] config.environment.gnome3.excludePackages);
   };
 
 

From 3ff158289a22a259db35abd80e317be7e34b32b8 Mon Sep 17 00:00:00 2001
From: Austin Seipp <aseipp@pobox.com>
Date: Tue, 8 Apr 2014 19:21:06 -0500
Subject: [PATCH 465/567] lockdep: refactor into non-kernel package

Lockdep doesn't *really* require the kernel package - just the kernel
sources. It's really a user-space tool just compiled from some portable
code within the kernel, nothing more.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
---
 .../{kernel/lockdep.nix => lockdep/default.nix}  | 16 ++++++++++------
 pkgs/top-level/all-packages.nix                  |  4 ++--
 2 files changed, 12 insertions(+), 8 deletions(-)
 rename pkgs/os-specific/linux/{kernel/lockdep.nix => lockdep/default.nix} (58%)

diff --git a/pkgs/os-specific/linux/kernel/lockdep.nix b/pkgs/os-specific/linux/lockdep/default.nix
similarity index 58%
rename from pkgs/os-specific/linux/kernel/lockdep.nix
rename to pkgs/os-specific/linux/lockdep/default.nix
index 4b1805fc39e8..77cb43a7b53c 100644
--- a/pkgs/os-specific/linux/kernel/lockdep.nix
+++ b/pkgs/os-specific/linux/lockdep/default.nix
@@ -1,9 +1,13 @@
-{ stdenv, kernel }:
+{ stdenv, fetchurl }:
 
-assert stdenv.lib.versionAtLeast kernel.version "3.14";
-stdenv.mkDerivation {
-  name = "lockdep-linux-${kernel.version}";
-  inherit (kernel) src patches;
+stdenv.mkDerivation rec {
+  name    = "lockdep-${version}";
+  version = "3.14";
+
+  src = fetchurl {
+    url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz";
+    sha256 = "61558aa490855f42b6340d1a1596be47454909629327c49a5e4e10268065dffa";
+  };
 
   preConfigure = "cd tools/lib/lockdep";
   installPhase = ''
@@ -16,7 +20,7 @@ stdenv.mkDerivation {
   '';
 
   meta = {
-    description = "User-space locking validation via the kernel";
+    description = "userspace locking validation tool built on the Linux kernel";
     homepage    = "https://kernel.org/";
     license     = stdenv.lib.licenses.gpl2;
     platforms   = stdenv.lib.platforms.linux;
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 4862a0cdcf68..016f95820661 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -7065,8 +7065,6 @@ let
 
     perf = callPackage ../os-specific/linux/kernel/perf.nix { };
 
-    lockdep = callPackage ../os-specific/linux/kernel/lockdep.nix { };
-
     psmouse_alps = callPackage ../os-specific/linux/psmouse-alps { };
 
     spl = callPackage ../os-specific/linux/spl/default.nix { };
@@ -7131,6 +7129,8 @@ let
 
   lm_sensors = callPackage ../os-specific/linux/lm-sensors { };
 
+  lockdep = callPackage ../os-specific/linux/lockdep { };
+
   lsiutil = callPackage ../os-specific/linux/lsiutil { };
 
   kmod = callPackage ../os-specific/linux/kmod { };

From 692ee73af1ca3bad404f89fcf73ce3f679ffafe4 Mon Sep 17 00:00:00 2001
From: Austin Seipp <aseipp@pobox.com>
Date: Tue, 8 Apr 2014 19:37:47 -0500
Subject: [PATCH 466/567] libseccomp: version 2.1.1

Signed-off-by: Austin Seipp <aseipp@pobox.com>
---
 .../libraries/libseccomp/default.nix          | 30 +++++++++++++++++++
 pkgs/top-level/all-packages.nix               |  2 ++
 2 files changed, 32 insertions(+)
 create mode 100644 pkgs/development/libraries/libseccomp/default.nix

diff --git a/pkgs/development/libraries/libseccomp/default.nix b/pkgs/development/libraries/libseccomp/default.nix
new file mode 100644
index 000000000000..32ac480c1f83
--- /dev/null
+++ b/pkgs/development/libraries/libseccomp/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchurl, getopt }:
+
+stdenv.mkDerivation rec {
+  name    = "libseccomp-${version}";
+  version = "2.1.1";
+
+  src = fetchurl {
+    url    = "mirror://sourceforge/libseccomp/libseccomp-${version}.tar.gz";
+    sha256 = "0744mjx5m3jl1hzz13zypivl88m0wn44mf5gsrd3yf3w80gc24l8";
+  };
+
+  # This fixes the check for 'getopt' to function appropriately.
+  # Additionally, this package can optionally include the kernel
+  # headers if they exist, or use its own inline copy of the source
+  # for talking to the seccomp filter - we opt to always use the
+  # inline copy
+  patchPhase = ''
+    substituteInPlace ./configure --replace "verify_deps getopt" ""
+    substituteInPlace ./configure --replace getopt ${getopt}/bin/getopt
+    substituteInPlace ./configure --replace 'opt_sysinc_seccomp="yes"' 'opt_sysinc_seccomp="no"'
+  '';
+
+  meta = {
+    description = "high level library for the Linux Kernel seccomp filter";
+    homepage    = "http://sourceforge.net/projects/libseccomp";
+    license     = stdenv.lib.licenses.lgpl2;
+    platforms   = stdenv.lib.platforms.linux;
+    maintainers = [ stdenv.lib.maintainers.thoughtpolice ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 016f95820661..397f6574bc24 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -4868,6 +4868,8 @@ let
   libgnome_keyring = callPackage ../development/libraries/libgnome-keyring { };
   libgnome_keyring3 = gnome3.libgnome_keyring;
 
+  libseccomp = callPackage ../development/libraries/libseccomp { };
+
   libsecret = callPackage ../development/libraries/libsecret { };
 
   libgtop = callPackage ../development/libraries/libgtop {};

From 29c0d0047faffed8055da6a7c84c0a36743f8ce0 Mon Sep 17 00:00:00 2001
From: Austin Seipp <aseipp@pobox.com>
Date: Tue, 8 Apr 2014 21:15:55 -0500
Subject: [PATCH 467/567] luajit: adopt, upgrade, optimize

 - Build the 'amalgamation' by default - more RAM needed to build, but
   better overall performance
 - Upgrade to version 2.0.3
 - Adopt as maintainer

Signed-off-by: Austin Seipp <aseipp@pobox.com>
---
 .../interpreters/luajit/default.nix           | 45 ++++++++++---------
 1 file changed, 24 insertions(+), 21 deletions(-)

diff --git a/pkgs/development/interpreters/luajit/default.nix b/pkgs/development/interpreters/luajit/default.nix
index f74ad18d5e41..46c0b49c3b89 100644
--- a/pkgs/development/interpreters/luajit/default.nix
+++ b/pkgs/development/interpreters/luajit/default.nix
@@ -1,28 +1,31 @@
 { stdenv, fetchurl }:
 
-stdenv.mkDerivation rec{
-    version = "2.0.2";
-    name = "LuaJIT-${version}";
+stdenv.mkDerivation rec {
+  name    = "luajit-${version}";
+  version = "2.0.3";
 
-    src = fetchurl {
-        url="http://luajit.org/download/${name}.tar.gz";
-        sha256="0f3cykihfdn3gi6na9p0xjd4jnv26z18m441n5vyg42q9abh4ln0";
-    };
+  src = fetchurl {
+    url    = "http://luajit.org/download/LuaJIT-${version}.tar.gz";
+    sha256 = "0ydxpqkmsn2c341j4r2v6r5r0ig3kbwv3i9jran3iv81s6r6rgjm";
+  };
 
-    patchPhase = stdenv.lib.optionalString (stdenv.gcc.libc != null)
-    ''
-      substituteInPlace Makefile \
-        --replace ldconfig ${stdenv.gcc.libc}/sbin/ldconfig
-    '';
+  enableParallelBuilding = true;
 
-    installPhase = ''
-        make install PREFIX=$out
-    '';
+  patchPhase = stdenv.lib.optionalString (stdenv.gcc.libc != null)
+  ''
+    substituteInPlace Makefile \
+      --replace ldconfig ${stdenv.gcc.libc}/sbin/ldconfig
+  '';
 
-    meta = {
-        description= "Just-in-time compiler and interpreter for lua 5.1.";
-        homepage = http://luajit.org;
-        license = stdenv.lib.licenses.mit;
-	platorms = stdenv.lib.platforms.linux;
-    };
+  configurePhase = false;
+  buildFlags     = [ "amalg" ]; # Build highly optimized version
+  installPhase   = "make install PREFIX=$out";
+
+  meta = {
+    description = "high-performance JIT compiler for Lua 5.1";
+    homepage    = http://luajit.org;
+    license     = stdenv.lib.licenses.mit;
+    platforms   = stdenv.lib.platforms.linux;
+    maintainers = [ stdenv.lib.maintainers.thoughtpolice ];
+  };
 }

From d2efe82eaab157b935723de85727d03a6033fa20 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Domen=20Ko=C5=BEar?= <domen@dev.si>
Date: Wed, 9 Apr 2014 11:21:16 +0200
Subject: [PATCH 468/567] munin: 2.0.19 -> 2.0.20

---
 pkgs/servers/monitoring/munin/default.nix | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/pkgs/servers/monitoring/munin/default.nix b/pkgs/servers/monitoring/munin/default.nix
index a0c0423042e8..8d1b03ddf344 100644
--- a/pkgs/servers/monitoring/munin/default.nix
+++ b/pkgs/servers/monitoring/munin/default.nix
@@ -1,15 +1,14 @@
-{ stdenv, fetchgit, makeWrapper, which, coreutils, rrdtool, perl, perlPackages
+{ stdenv, fetchurl, makeWrapper, which, coreutils, rrdtool, perl, perlPackages
 , python, ruby, openjdk, nettools
 }:
 
 stdenv.mkDerivation rec {
-  version = "2.0.19";
+  version = "2.0.20";
   name = "munin-${version}";
 
-  src = fetchgit {
-    url = "git://github.com/munin-monitoring/munin.git";
-    rev = "refs/tags/${version}";
-    sha256 = "0027rrdrmcql68b475jlxnfgkijbfngynkjpdii6fgaszswqz3ay";
+  src = fetchurl {
+    url = "https://github.com/munin-monitoring/munin/archive/${version}.tar.gz";
+    sha256 = "17b24fsr8abipq09hipnh6cd4h2aiwyzyjhg0wpplngwals54qmc";
   };
 
   buildInputs = [ 

From 09e245b3ab146ea721c00e82bc22ba45b4e47296 Mon Sep 17 00:00:00 2001
From: vi <noreply@example.org>
Date: Wed, 9 Apr 2014 16:32:14 +0800
Subject: [PATCH 469/567] Derivations for HandsomeSoup and hxt-xpath (Haskell.)

---
 .../libraries/haskell/HandsomeSoup/default.nix | 18 ++++++++++++++++++
 .../libraries/haskell/hxt-http/default.nix     | 14 ++++++++++++++
 .../libraries/haskell/hxt-xpath/default.nix    | 14 ++++++++++++++
 pkgs/top-level/haskell-packages.nix            |  6 ++++++
 4 files changed, 52 insertions(+)
 create mode 100644 pkgs/development/libraries/haskell/HandsomeSoup/default.nix
 create mode 100644 pkgs/development/libraries/haskell/hxt-http/default.nix
 create mode 100644 pkgs/development/libraries/haskell/hxt-xpath/default.nix

diff --git a/pkgs/development/libraries/haskell/HandsomeSoup/default.nix b/pkgs/development/libraries/haskell/HandsomeSoup/default.nix
new file mode 100644
index 000000000000..f20efdae4cfe
--- /dev/null
+++ b/pkgs/development/libraries/haskell/HandsomeSoup/default.nix
@@ -0,0 +1,18 @@
+{ cabal, HTTP, hxt, hxtHttp, MaybeT, mtl, network, parsec
+, transformers
+}:
+
+cabal.mkDerivation (self: {
+  pname = "HandsomeSoup";
+  version = "0.3.2";
+  sha256 = "0ixqk32sfv6kj41vc6fzflv6f6jwvnkvcdf9pmgkc675218ggh53";
+  buildDepends = [
+    HTTP hxt hxtHttp MaybeT mtl network parsec transformers
+  ];
+  meta = {
+    homepage = "https://github.com/egonSchiele/HandsomeSoup";
+    description = "Work with HTML more easily in HXT";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/hxt-http/default.nix b/pkgs/development/libraries/haskell/hxt-http/default.nix
new file mode 100644
index 000000000000..14867df7fc19
--- /dev/null
+++ b/pkgs/development/libraries/haskell/hxt-http/default.nix
@@ -0,0 +1,14 @@
+{ cabal, HTTP, hxt, network, parsec }:
+
+cabal.mkDerivation (self: {
+  pname = "hxt-http";
+  version = "9.1.4";
+  sha256 = "176k71dc30cnjjr9y9vphs0aixs3ww16197qyc491qjrzhymm2g2";
+  buildDepends = [ HTTP hxt network parsec ];
+  meta = {
+    homepage = "http://www.fh-wedel.de/~si/HXmlToolbox/index.html";
+    description = "Interface to native Haskell HTTP package HTTP";
+    license = self.stdenv.lib.licenses.mit;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/hxt-xpath/default.nix b/pkgs/development/libraries/haskell/hxt-xpath/default.nix
new file mode 100644
index 000000000000..91524320ece7
--- /dev/null
+++ b/pkgs/development/libraries/haskell/hxt-xpath/default.nix
@@ -0,0 +1,14 @@
+{ cabal, filepath, hxt, parsec }:
+
+cabal.mkDerivation (self: {
+  pname = "hxt-xpath";
+  version = "9.1.2.1";
+  sha256 = "0r9xzxwdqaj0arz9pv6f272dz73m83agbln9q9bclmgqys6l0kr9";
+  buildDepends = [ filepath hxt parsec ];
+  meta = {
+    homepage = "http://www.fh-wedel.de/~si/HXmlToolbox/index.html";
+    description = "The XPath modules for HXT";
+    license = self.stdenv.lib.licenses.mit;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 7172f4d0f424..6a72057b190c 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -1519,10 +1519,14 @@ let result = let callPackage = x : y : modifyPrio (newScope result.finalReturn x
 
   hxtCharproperties = callPackage ../development/libraries/haskell/hxt-charproperties {};
 
+  hxtHttp = callPackage ../development/libraries/haskell/hxt-http {};
+
   hxtRegexXmlschema = callPackage ../development/libraries/haskell/hxt-regex-xmlschema {};
 
   hxtUnicode = callPackage ../development/libraries/haskell/hxt-unicode {};
 
+  hxtXpath = callPackage ../development/libraries/haskell/hxt-xpath {};
+
   hybridVectors = callPackage ../development/libraries/haskell/hybrid-vectors {};
 
   iCalendar = callPackage ../development/libraries/haskell/iCalendar {};
@@ -2875,6 +2879,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.finalReturn x
   haddock_2_14_1 = callPackage ../development/tools/documentation/haddock/2.14.1.nix {};
   haddock = self.haddock_2_14_1;
 
+  HandsomeSoup = callPackage ../development/libraries/haskell/HandsomeSoup {};
+
   happy_1_18_4 = callPackage ../development/tools/parsing/happy/1.18.4.nix {};
   happy_1_18_5 = callPackage ../development/tools/parsing/happy/1.18.5.nix {};
   happy_1_18_6 = callPackage ../development/tools/parsing/happy/1.18.6.nix {};

From cf5ac3bded304a00685907b90475dcc797f4f1b7 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Wed, 9 Apr 2014 12:16:43 +0200
Subject: [PATCH 470/567] zsh: update from 5.0.2 to 5.0.5

---
 pkgs/shells/zsh/default.nix | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/pkgs/shells/zsh/default.nix b/pkgs/shells/zsh/default.nix
index 50a33700b3b2..37ffb09288e0 100644
--- a/pkgs/shells/zsh/default.nix
+++ b/pkgs/shells/zsh/default.nix
@@ -2,13 +2,13 @@
 
 let
 
-  version = "5.0.2";
+  version = "5.0.5";
 
   documentation = fetchurl {
     url = "mirror://sourceforge/zsh/zsh-${version}-doc.tar.bz2";
-    sha256 = "99ee08cfc91935af8714bd98db652f016d6c7a8a71ba7c6d6223910cd0b7fbf1";
+    sha256 = "1wljqii2lkz5kc4y3xs65isnahvnlj678b9zv31bn444mapjpwp4";
   };
-  
+
 in
 
 stdenv.mkDerivation {
@@ -16,9 +16,9 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "mirror://sourceforge/zsh/zsh-${version}.tar.bz2";
-    sha256 = "eb220ae5a8076191ec6b4c6a5a2f18122d074a19f25b45f0320b44b8166c5a03";
+    sha256 = "1bwfz9n850pclzmzrb437icfhzv1s5pgh2dhs92f194gdkxx4936";
   };
-  
+
   buildInputs = [ ncurses coreutils ];
 
   preConfigure = ''

From 30aa995a42975faca880cf2348dc2fab2a818fa2 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Wed, 9 Apr 2014 12:16:49 +0200
Subject: [PATCH 471/567] busybox: update from 1.21.1 to 1.22.1

---
 pkgs/os-specific/linux/busybox/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/os-specific/linux/busybox/default.nix b/pkgs/os-specific/linux/busybox/default.nix
index fd1e83100ed5..7226acf0e579 100644
--- a/pkgs/os-specific/linux/busybox/default.nix
+++ b/pkgs/os-specific/linux/busybox/default.nix
@@ -37,11 +37,11 @@ let
 in
 
 stdenv.mkDerivation rec {
-  name = "busybox-1.21.1";
+  name = "busybox-1.22.1";
 
   src = fetchurl {
     url = "http://busybox.net/downloads/${name}.tar.bz2";
-    sha256 = "00qk938q90jv14mxmadm8pgs3jymkknc6xicw4512mn85s8y0nyd";
+    sha256 = "12v7nri79v8gns3inmz4k24q7pcnwi00hybs0wddfkcy1afh42xf";
   };
 
   configurePhase = ''

From 715a61ad7ad3d1d0c334438df3489c9da4a43a33 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Wed, 9 Apr 2014 12:16:55 +0200
Subject: [PATCH 472/567] docbook5_xsl: update from 1.75.2 to 1.78.1

---
 .../data/sgml+xml/stylesheets/xslt/docbook-xsl-ns/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/data/sgml+xml/stylesheets/xslt/docbook-xsl-ns/default.nix b/pkgs/data/sgml+xml/stylesheets/xslt/docbook-xsl-ns/default.nix
index c143ce166983..bfe454a49fe1 100644
--- a/pkgs/data/sgml+xml/stylesheets/xslt/docbook-xsl-ns/default.nix
+++ b/pkgs/data/sgml+xml/stylesheets/xslt/docbook-xsl-ns/default.nix
@@ -1,11 +1,11 @@
 {stdenv, fetchurl}:
 
 stdenv.mkDerivation rec {
-  name = "docbook-xsl-ns-1.75.2";
+  name = "docbook-xsl-ns-1.78.1";
   
   src = fetchurl {
     url = "mirror://sourceforge/docbook/${name}.tar.bz2";
-    sha256 = "1pr7m0hmqilk25hjx33kq2vqn2xf6cx6zhxqm35fdvnjccazlxg2";
+    sha256 = "1x3sc0axk9z3i6n0jhlsmzlmb723a4sjgslm9g12by6phirdx3ng";
   };
 
   buildPhase = "true";

From 37f327acfd753fff64e3a78681f61a26ab5ecedd Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Wed, 9 Apr 2014 12:17:04 +0200
Subject: [PATCH 473/567] fail2ban: update from 0.8.12 to 0.8.13

---
 pkgs/tools/security/fail2ban/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/tools/security/fail2ban/default.nix b/pkgs/tools/security/fail2ban/default.nix
index b28c761ec2cf..8d6a6241ad3f 100644
--- a/pkgs/tools/security/fail2ban/default.nix
+++ b/pkgs/tools/security/fail2ban/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, pythonPackages, unzip, gamin }:
 
-let version = "0.8.12"; in
+let version = "0.8.13"; in
 
 pythonPackages.buildPythonPackage {
   name = "fail2ban-${version}";
@@ -9,7 +9,7 @@ pythonPackages.buildPythonPackage {
   src = fetchurl {
     url    = "https://github.com/fail2ban/fail2ban/zipball/${version}";
     name   = "fail2ban-${version}.zip";
-    sha256 = "17cassfn3gdgw530g7gh9fvffsixfb30zamzlfmx7s5x80rnqd3k";
+    sha256 = "0c63i5jsn2n6hv6fb6q922ksxfpppah9415vpydiv0vpf23pq0cb";
   };
 
   buildInputs = [ unzip ];

From 44e8fe67d032bab39c2a78607d544ff9e43118eb Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Wed, 9 Apr 2014 12:17:11 +0200
Subject: [PATCH 474/567] flex: update from 2.5.35 to 2.5.39

---
 pkgs/development/tools/parsing/flex/default.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/development/tools/parsing/flex/default.nix b/pkgs/development/tools/parsing/flex/default.nix
index 8047080a125d..c5337d647de3 100644
--- a/pkgs/development/tools/parsing/flex/default.nix
+++ b/pkgs/development/tools/parsing/flex/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, bison, m4 }:
 
 stdenv.mkDerivation {
-  name = "flex-2.5.35";
+  name = "flex-2.5.39";
 
   src = fetchurl {
-    url = mirror://sourceforge/flex/flex-2.5.35.tar.bz2;
-    sha256 = "0ysff249mwhq0053bw3hxh58djc0gy7vjan2z1krrf9n5d5vvv0b";
+    url = mirror://sourceforge/flex/flex-2.5.39.tar.bz2;
+    sha256 = "0zv15giw3gma03y2bzw78hjfy49vyir7vbcgnh9bb3637dgvblmd";
   };
 
   buildInputs = [ bison ];

From c244d6e1b853c7513ddaaabedca0508230074f32 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Wed, 9 Apr 2014 12:17:23 +0200
Subject: [PATCH 475/567] gitAndTools.stgit: update from 0.16 to 0.17.1

---
 .../version-management/git-and-tools/stgit/default.nix        | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/applications/version-management/git-and-tools/stgit/default.nix b/pkgs/applications/version-management/git-and-tools/stgit/default.nix
index 6518f32ef7c6..d4b74390c4cc 100644
--- a/pkgs/applications/version-management/git-and-tools/stgit/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/stgit/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchurl, python, git }:
 
 let
-  name = "stgit-0.16";
+  name = "stgit-0.17.1";
 in
 stdenv.mkDerivation {
   inherit name;
 
   src = fetchurl {
     url = "http://download.gna.org/stgit/${name}.tar.gz";
-    sha256 = "0hla6401g2kicaakz4awk67yf8fhqbw1shn1p9ma5x6ca29s3w82";
+    sha256 = "1pka0ns9x0kabn036zsf0mwmwiynckhnva51kgxsch9fqah6acyl";
   };
 
   buildInputs = [ python git ];

From 1682bde4e0a9101fa0aeb69af63b94ee1c3bc6d8 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Wed, 9 Apr 2014 12:17:25 +0200
Subject: [PATCH 476/567] gitAndTools.svn2git: update from 2.2.2 to 2.2.5

---
 .../version-management/git-and-tools/svn2git/default.nix      | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/applications/version-management/git-and-tools/svn2git/default.nix b/pkgs/applications/version-management/git-and-tools/svn2git/default.nix
index 0053a1dfafbe..b0cfcaeb1108 100644
--- a/pkgs/applications/version-management/git-and-tools/svn2git/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/svn2git/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchurl, ruby, makeWrapper, git }:
 
 let
-  version = "2.2.2";
+  version = "2.2.5";
 in
 stdenv.mkDerivation {
   name = "svn2git-${version}";
 
   src = fetchurl {
     url = "https://github.com/nirvdrum/svn2git/archive/v${version}.tar.gz";
-    sha256 = "14zinkpgybz15jvbfw0sb432w6f5w4sa5pdqycjwva8v8lxqn9mh";
+    sha256 = "1afmrr80357pg3kawyghhc55z1pszaq8fyrrjmxa6nr9dcrqjwwh";
   };
 
   buildInputs = [ ruby makeWrapper ];

From 9def1935980346ef7b166014bfba6990ccd24b55 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Wed, 9 Apr 2014 12:17:36 +0200
Subject: [PATCH 477/567] libsigcxx: update from 2.2.11 to 2.3.1

---
 pkgs/development/libraries/libsigcxx/default.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/development/libraries/libsigcxx/default.nix b/pkgs/development/libraries/libsigcxx/default.nix
index a127e7322eb7..610d14568ae5 100644
--- a/pkgs/development/libraries/libsigcxx/default.nix
+++ b/pkgs/development/libraries/libsigcxx/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, pkgconfig, gnum4 }:
 
 stdenv.mkDerivation rec {
-  name = "libsigc++-2.2.11";
+  name = "libsigc++-2.3.1";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/libsigc++/2.2/${name}.tar.xz";
-    sha256 = "0ms93q7r8zznsqkfdj1ds9533f0aqfaw3kdkqv154rzmfigh8d4q";
+    url = "mirror://gnome/sources/libsigc++/2.3/${name}.tar.xz";
+    sha256 = "14q3sq6d43f6wfcmwhw4v1aal4ba0h5x9v6wkxy2dnqznd95il37";
   };
 
   buildInputs = [ pkgconfig gnum4 ];

From b7d0a9a61460c92b9575823602037d31ec220a31 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Wed, 9 Apr 2014 12:17:40 +0200
Subject: [PATCH 478/567] ltrace: update from 0.5.3 to 0.7.3

---
 pkgs/development/tools/misc/ltrace/default.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/development/tools/misc/ltrace/default.nix b/pkgs/development/tools/misc/ltrace/default.nix
index a436f29df14c..af7368216689 100644
--- a/pkgs/development/tools/misc/ltrace/default.nix
+++ b/pkgs/development/tools/misc/ltrace/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, elfutils }:
 
 stdenv.mkDerivation rec {
-  name = "ltrace-0.5.3";
+  name = "ltrace-0.7.3";
 
   src = fetchurl {
-    url = ftp://ftp.debian.org/debian/pool/main/l/ltrace/ltrace_0.5.3.orig.tar.gz;
-    sha256 = "0cmyw8zyw8b1gszrwizcm53cr0mig1iw3kv18v5952m9spb2frjw";
+    url = ftp://ftp.debian.org/debian/pool/main/l/ltrace/ltrace_0.7.3.orig.tar.bz2;
+    sha256 = "00wmbdghqbz6x95m1mcdd3wd46l6hgcr4wggdp049dbifh3qqvqf";
   };
 
   buildInputs = [ elfutils ];

From 2cc462eb114c224f3d2dca09f8bf7060b3f10523 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Wed, 9 Apr 2014 12:17:45 +0200
Subject: [PATCH 479/567] lxc: update from 1.0.1 to 1.0.3

---
 pkgs/os-specific/linux/lxc/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/os-specific/linux/lxc/default.nix b/pkgs/os-specific/linux/lxc/default.nix
index d59bb142f9f6..1fcdcbc2837a 100644
--- a/pkgs/os-specific/linux/lxc/default.nix
+++ b/pkgs/os-specific/linux/lxc/default.nix
@@ -3,11 +3,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "lxc-1.0.1";
+  name = "lxc-1.0.3";
 
   src = fetchurl {
     url = "http://github.com/lxc/lxc/archive/${name}.tar.gz";
-    sha256 = "14fjzicv1s3niwag301i7m9vb9jlh3hnd9ks9jjkzp8xyxgb0rrv";
+    sha256 = "04k45jgj2i501yhm467s1a1yk7h7q0fjhspys158w1a2m1hari4z";
   };
 
   buildInputs = [ libcap apparmor perl docbook2x gnutls autoreconfHook pkgconfig ];

From 740c502a775bf1783ddcef757124eb712e9479f9 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Wed, 9 Apr 2014 12:17:57 +0200
Subject: [PATCH 480/567] swiProlog: update from 6.6.2 to 6.6.3

---
 pkgs/development/compilers/swi-prolog/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/compilers/swi-prolog/default.nix b/pkgs/development/compilers/swi-prolog/default.nix
index aa027401b4dc..2070da0bee41 100644
--- a/pkgs/development/compilers/swi-prolog/default.nix
+++ b/pkgs/development/compilers/swi-prolog/default.nix
@@ -4,14 +4,14 @@
 }:
 
 let
-  version = "6.6.2";
+  version = "6.6.3";
 in
 stdenv.mkDerivation {
   name = "swi-prolog-${version}";
 
   src = fetchurl {
     url = "http://www.swi-prolog.org/download/stable/src/pl-${version}.tar.gz";
-    sha256 = "1kdnc1r5c4320v5s6axk6w0jnqbkza295hdi9s5kyd8r78v6x6g4";
+    sha256 = "01dr66d7rm2xvxwm6wy71bbjvfrmzxgvmaz3sl1fb63cn8d78nz3";
   };
 
   buildInputs = [ gmp readline openssl libjpeg unixODBC libXinerama

From 2d4919dbb46669ec88394436919cf5662de6491b Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Wed, 9 Apr 2014 12:18:03 +0200
Subject: [PATCH 481/567] apacheHttpd_2_4: update from 2.4.7 to 2.4.9

---
 pkgs/servers/http/apache-httpd/2.4.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/servers/http/apache-httpd/2.4.nix b/pkgs/servers/http/apache-httpd/2.4.nix
index 2bbe9798de46..7deab6584f83 100644
--- a/pkgs/servers/http/apache-httpd/2.4.nix
+++ b/pkgs/servers/http/apache-httpd/2.4.nix
@@ -14,12 +14,12 @@ assert sslSupport -> aprutil.sslSupport && openssl != null;
 assert ldapSupport -> aprutil.ldapSupport && openldap != null;
 
 stdenv.mkDerivation rec {
-  version = "2.4.7";
+  version = "2.4.9";
   name = "apache-httpd-${version}";
 
   src = fetchurl {
     url = "mirror://apache/httpd/httpd-${version}.tar.bz2";
-    sha256 = "06z7ij0avr8f3rvp6ifk3dn8j73i17cn4avz4fp1as43061qsdk4";
+    sha256 = "00vnhki0rdwlhl4cjgvkq5vpf8szx2sdd3yi7bcg7jj7z86wk37p";
   };
 
   buildInputs = [perl] ++

From fd9ea0f6398017f7b71e93a5018321f61d94e800 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Wed, 9 Apr 2014 12:40:11 +0200
Subject: [PATCH 482/567] ltrace: fix build with latest gcc (by disabling
 -Werror)

---
 pkgs/development/tools/misc/ltrace/default.nix | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/pkgs/development/tools/misc/ltrace/default.nix b/pkgs/development/tools/misc/ltrace/default.nix
index af7368216689..1d20d8eef456 100644
--- a/pkgs/development/tools/misc/ltrace/default.nix
+++ b/pkgs/development/tools/misc/ltrace/default.nix
@@ -10,8 +10,9 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ elfutils ];
 
-  preBuild =
+  preConfigure =
     ''
+      configureFlags="--disable-werror"
       makeFlagsArray=(INSTALL="install -c")
     '';
 

From 8cd9a5145be6d2a9d3be646baf44bccda07a517a Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Wed, 9 Apr 2014 12:12:41 +0200
Subject: [PATCH 483/567] haskell-scotty: update to version 0.7.2

---
 .../libraries/haskell/scotty/default.nix          | 15 +++++++--------
 .../libraries/haskell/scotty/new-conduit.patch    | 13 -------------
 2 files changed, 7 insertions(+), 21 deletions(-)
 delete mode 100644 pkgs/development/libraries/haskell/scotty/new-conduit.patch

diff --git a/pkgs/development/libraries/haskell/scotty/default.nix b/pkgs/development/libraries/haskell/scotty/default.nix
index 42f4068f9a9a..cc5ae2604777 100644
--- a/pkgs/development/libraries/haskell/scotty/default.nix
+++ b/pkgs/development/libraries/haskell/scotty/default.nix
@@ -1,16 +1,15 @@
-{ cabal, aeson, blazeBuilder, caseInsensitive, conduit, dataDefault
-, httpTypes, mtl, regexCompat, text, transformers, wai, waiExtra
-, warp, conduitExtra
+{ cabal, aeson, blazeBuilder, caseInsensitive, conduit
+, conduitExtra, dataDefault, httpTypes, mtl, regexCompat, text
+, transformers, wai, waiExtra, warp
 }:
 
 cabal.mkDerivation (self: {
   pname = "scotty";
-  version = "0.7.1";
-  sha256 = "07aj74jq0hh86ik4x5p5q65b47q44rrnd6mkp039wj9l6dmyrv3c";
-  patches = [ ./new-conduit.patch ];
+  version = "0.7.2";
+  sha256 = "1y14af3qciwycgaxzx6rjan2jgfchjzs4zbxzh8p8s1d0l4gsqlb";
   buildDepends = [
-    aeson blazeBuilder caseInsensitive conduit dataDefault httpTypes
-    mtl regexCompat text transformers wai waiExtra warp conduitExtra
+    aeson blazeBuilder caseInsensitive conduit conduitExtra dataDefault
+    httpTypes mtl regexCompat text transformers wai waiExtra warp
   ];
   jailbreak = true;
   meta = {
diff --git a/pkgs/development/libraries/haskell/scotty/new-conduit.patch b/pkgs/development/libraries/haskell/scotty/new-conduit.patch
deleted file mode 100644
index 74c6ebdc161c..000000000000
--- a/pkgs/development/libraries/haskell/scotty/new-conduit.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff -Naur scotty-0.7.1-orig/scotty.cabal scotty-0.7.1/scotty.cabal
---- scotty-0.7.1-orig/scotty.cabal	2014-03-19 17:27:33.000000000 -0400
-+++ scotty-0.7.1/scotty.cabal	2014-04-07 10:59:39.933144140 -0400
-@@ -82,7 +82,8 @@
-                        transformers     >= 0.3.0.0  && < 0.4,
-                        wai              >= 2.0.0    && < 2.2,
-                        wai-extra        >= 2.0.1    && < 2.2,
--                       warp             >= 2.1.1    && < 2.2
-+                       warp             >= 2.1.1    && < 2.2,
-+                       conduit-extra
- 
-   GHC-options: -Wall -fno-warn-orphans
- 

From 7ff62b5ddc996bf712e9206e358bb14639beb27c Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Wed, 9 Apr 2014 12:13:35 +0200
Subject: [PATCH 484/567] haskell-direct-sqlite: update to version 2.3.12

---
 pkgs/development/libraries/haskell/direct-sqlite/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/direct-sqlite/default.nix b/pkgs/development/libraries/haskell/direct-sqlite/default.nix
index 12e61ebb9efb..14be91cd1bf3 100644
--- a/pkgs/development/libraries/haskell/direct-sqlite/default.nix
+++ b/pkgs/development/libraries/haskell/direct-sqlite/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "direct-sqlite";
-  version = "2.3.11";
-  sha256 = "0pd5qv8aq47d5n2sd99yblxiq70zvmy2rc71ys73a3d846k0ncs0";
+  version = "2.3.12";
+  sha256 = "14dcgmn3mfx69qx412dc8cxa4ia3adsf8gm5q4yscpp8rf78m178";
   buildDepends = [ text ];
   testDepends = [ base16Bytestring HUnit text ];
   meta = {

From 51c6724fa3cebc6248bbc6408581c5f5906e615a Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Wed, 9 Apr 2014 12:13:37 +0200
Subject: [PATCH 485/567] haskell-esqueleto: update to version 1.3.10

---
 pkgs/development/libraries/haskell/esqueleto/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/esqueleto/default.nix b/pkgs/development/libraries/haskell/esqueleto/default.nix
index 14d5cfda0689..9103480d48f9 100644
--- a/pkgs/development/libraries/haskell/esqueleto/default.nix
+++ b/pkgs/development/libraries/haskell/esqueleto/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "esqueleto";
-  version = "1.3.9";
-  sha256 = "0dh11q77w0npilnbxyij6z7k7cx9cciwqs479xdjgjygnxa1xwdc";
+  version = "1.3.10";
+  sha256 = "0q333m7xaanxb1vzgf2yn6d7y3pgkbj9mjw5gnywms36v5zsfik7";
   buildDepends = [
     conduit monadLogger persistent resourcet tagged text transformers
     unorderedContainers

From 346f6037c005658c441fda931db74f93b9de4708 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Wed, 9 Apr 2014 12:13:39 +0200
Subject: [PATCH 486/567] haskell-hashed-storage: update to version 0.5.11

---
 pkgs/development/libraries/haskell/hashed-storage/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/hashed-storage/default.nix b/pkgs/development/libraries/haskell/hashed-storage/default.nix
index 77a4251259d3..e2a82e13b3ea 100644
--- a/pkgs/development/libraries/haskell/hashed-storage/default.nix
+++ b/pkgs/development/libraries/haskell/hashed-storage/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hashed-storage";
-  version = "0.5.10";
-  sha256 = "1k7drnk0y5apjvwsiw85032yvxllbi7ndg6h9x207gnjxm64m0h5";
+  version = "0.5.11";
+  sha256 = "0s8mnayxlvwrrii2l63b372yi5g08br6gpbgz2256d8y128mwjvk";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [

From b34cc2cd2e7628b9485dd435fca0e28c973fbb44 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Wed, 9 Apr 2014 12:13:41 +0200
Subject: [PATCH 487/567] haskell-mime-types: update to version 0.1.0.4

---
 pkgs/development/libraries/haskell/mime-types/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/mime-types/default.nix b/pkgs/development/libraries/haskell/mime-types/default.nix
index 5dd5f65c9e74..50c25ada340f 100644
--- a/pkgs/development/libraries/haskell/mime-types/default.nix
+++ b/pkgs/development/libraries/haskell/mime-types/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "mime-types";
-  version = "0.1.0.3";
-  sha256 = "0mzhkqcjlnrs9mwn2crsr1m2mf6pgygs1s3ks8akz1618v6jm6y1";
+  version = "0.1.0.4";
+  sha256 = "0bxhkwz8p7mhg5kspbpc5zm4k50pc0r5pzjr6807y88x8vjpvj2x";
   buildDepends = [ text ];
   meta = {
     homepage = "https://github.com/yesodweb/wai";

From 7fdd6b188015b784c09b076a87e08ba08e6918b4 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Wed, 9 Apr 2014 12:13:43 +0200
Subject: [PATCH 488/567] haskell-monad-logger: update to version 0.3.5.1

---
 .../libraries/haskell/monad-logger/default.nix        | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/pkgs/development/libraries/haskell/monad-logger/default.nix b/pkgs/development/libraries/haskell/monad-logger/default.nix
index 4aa394aff408..ba6efdac8352 100644
--- a/pkgs/development/libraries/haskell/monad-logger/default.nix
+++ b/pkgs/development/libraries/haskell/monad-logger/default.nix
@@ -1,15 +1,16 @@
-{ cabal, blazeBuilder, conduit, fastLogger, liftedBase
+{ cabal, blazeBuilder, conduit, exceptions, fastLogger, liftedBase
 , monadControl, monadLoops, mtl, resourcet, stm, stmChans, text
 , transformers, transformersBase
 }:
 
 cabal.mkDerivation (self: {
   pname = "monad-logger";
-  version = "0.3.4.1";
-  sha256 = "1i5192060svqhc1iv215b98hah6p29bzdqin6ng5qpq8d44hdnpm";
+  version = "0.3.5.1";
+  sha256 = "0kc23y1l3ja2ym0pr19kcm8aiv8g8skh24p9i3vm74chadsn81pv";
   buildDepends = [
-    blazeBuilder conduit fastLogger liftedBase monadControl monadLoops
-    mtl resourcet stm stmChans text transformers transformersBase
+    blazeBuilder conduit exceptions fastLogger liftedBase monadControl
+    monadLoops mtl resourcet stm stmChans text transformers
+    transformersBase
   ];
   meta = {
     homepage = "https://github.com/kazu-yamamoto/logger";

From f063e5e5927f6513b3bebac49167f5fe74ec4cab Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Wed, 9 Apr 2014 12:13:45 +0200
Subject: [PATCH 489/567] haskell-network-simple: update to version 0.3.1

---
 pkgs/development/libraries/haskell/network-simple/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/network-simple/default.nix b/pkgs/development/libraries/haskell/network-simple/default.nix
index 72d8c8af8c89..cde31643c719 100644
--- a/pkgs/development/libraries/haskell/network-simple/default.nix
+++ b/pkgs/development/libraries/haskell/network-simple/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "network-simple";
-  version = "0.3.0";
-  sha256 = "046nbgdwazbqffcim1gxry1mf35yg41g52zdk86h9whhiwjzlywz";
+  version = "0.3.1";
+  sha256 = "0bk015d0np07887flah76vgrgrqaqj4x1sdxmghvazj8c78nkan8";
   buildDepends = [ exceptions network transformers ];
   meta = {
     homepage = "https://github.com/k0001/network-simple";

From 2986e7cb24ecf5839d7c063dc5470de34b61167e Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Wed, 9 Apr 2014 12:13:48 +0200
Subject: [PATCH 490/567] haskell-streaming-commons: update to version 0.1.1

---
 .../libraries/haskell/streaming-commons/default.nix    | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/pkgs/development/libraries/haskell/streaming-commons/default.nix b/pkgs/development/libraries/haskell/streaming-commons/default.nix
index fec0ddf79cd3..4bcb46887bc8 100644
--- a/pkgs/development/libraries/haskell/streaming-commons/default.nix
+++ b/pkgs/development/libraries/haskell/streaming-commons/default.nix
@@ -1,13 +1,13 @@
-{ cabal, deepseq, hspec, network, QuickCheck, text, transformers
-, zlib
+{ cabal, async, deepseq, hspec, network, QuickCheck, text
+, transformers, zlib
 }:
 
 cabal.mkDerivation (self: {
   pname = "streaming-commons";
-  version = "0.1.0.2";
-  sha256 = "1idlhvlv5pg20xq8h4rmphyflvpc9q88krwm498mh3s4983ik28c";
+  version = "0.1.1";
+  sha256 = "1mzpdhdc5kq9pfpsjs6v1j1qa1pdj1ca4s32z4bjq751jayj6ds6";
   buildDepends = [ network text transformers zlib ];
-  testDepends = [ deepseq hspec QuickCheck text zlib ];
+  testDepends = [ async deepseq hspec network QuickCheck text zlib ];
   meta = {
     homepage = "https://github.com/fpco/streaming-commons";
     description = "Common lower-level functions needed by various streaming data libraries";

From 0a74f6d3e7f313a4fa0158b5c3cb65a943967c9a Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Wed, 9 Apr 2014 12:13:50 +0200
Subject: [PATCH 491/567] haskell-wai: update to version 2.1.0.2

---
 pkgs/development/libraries/haskell/wai/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/wai/default.nix b/pkgs/development/libraries/haskell/wai/default.nix
index a0164a3950c9..18c6e08c0b36 100644
--- a/pkgs/development/libraries/haskell/wai/default.nix
+++ b/pkgs/development/libraries/haskell/wai/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "wai";
-  version = "2.1.0.1";
-  sha256 = "03gp3ijdpyyh7zic89laj0y4wsi8f49lbqlqq8w9msfgizjhvdv6";
+  version = "2.1.0.2";
+  sha256 = "02hj07s3vlhbd2hds5pyksghildadjqhr8mmiyabwb7ap8iybidg";
   buildDepends = [
     blazeBuilder conduit conduitExtra httpTypes network text
     transformers vault

From b67feb09902605d527f2e9b25fff883ee66c6216 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Wed, 9 Apr 2014 12:13:52 +0200
Subject: [PATCH 492/567] haskell-warp-tls: update to version 2.0.3.3

---
 pkgs/development/libraries/haskell/warp-tls/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/warp-tls/default.nix b/pkgs/development/libraries/haskell/warp-tls/default.nix
index b04d9439d2df..cca9da9eb3df 100644
--- a/pkgs/development/libraries/haskell/warp-tls/default.nix
+++ b/pkgs/development/libraries/haskell/warp-tls/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "warp-tls";
-  version = "2.0.3.2";
-  sha256 = "1dqaq1z4gb3sya41hiwsxgl4f0v7sqza7aazf2vc7dd5x5izp02w";
+  version = "2.0.3.3";
+  sha256 = "03fjghsa9zvrvg7ickph577zzr62n91gsb99v9k47s4nd2xri2rj";
   buildDepends = [
     conduit conduitExtra cprngAes dataDefaultClass network
     networkConduit resourcet streamingCommons tls transformers wai warp

From cde2e2839ac17c29dab2cb6890124516f06e3c45 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Wed, 9 Apr 2014 12:13:54 +0200
Subject: [PATCH 493/567] haskell-warp: update to version 2.1.4

---
 pkgs/development/libraries/haskell/warp/default.nix | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/pkgs/development/libraries/haskell/warp/default.nix b/pkgs/development/libraries/haskell/warp/default.nix
index c67ea5c25e07..75ccd0e6f5d4 100644
--- a/pkgs/development/libraries/haskell/warp/default.nix
+++ b/pkgs/development/libraries/haskell/warp/default.nix
@@ -1,4 +1,4 @@
-{ cabal, blazeBuilder, blazeBuilderConduit, caseInsensitive
+{ cabal, async, blazeBuilder, blazeBuilderConduit, caseInsensitive
 , conduit, conduitExtra, doctest, hashable, hspec, HTTP, httpDate
 , httpTypes, HUnit, liftedBase, network, networkConduit, QuickCheck
 , simpleSendfile, streamingCommons, text, time, transformers
@@ -7,8 +7,8 @@
 
 cabal.mkDerivation (self: {
   pname = "warp";
-  version = "2.1.3.3";
-  sha256 = "1dbarrjb6y4cbc1dc265b008b6d5qziqnikdbnbdlrwfzr97cz23";
+  version = "2.1.4";
+  sha256 = "090xbjqwj8wzxiaal2jdsk7dbqv07c1cw32w7v8xxi2dkvv6nwbb";
   buildDepends = [
     blazeBuilder blazeBuilderConduit caseInsensitive conduit
     conduitExtra hashable httpDate httpTypes liftedBase network
@@ -16,7 +16,7 @@ cabal.mkDerivation (self: {
     unixCompat void wai
   ];
   testDepends = [
-    blazeBuilder blazeBuilderConduit caseInsensitive conduit
+    async blazeBuilder blazeBuilderConduit caseInsensitive conduit
     conduitExtra doctest hashable hspec HTTP httpDate httpTypes HUnit
     liftedBase network networkConduit QuickCheck simpleSendfile
     streamingCommons text time transformers unixCompat void wai

From a138d54df290504c939b244d88ec17870634ab4f Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Wed, 9 Apr 2014 12:13:55 +0200
Subject: [PATCH 494/567] haskell-websockets: update to version 0.8.2.1

---
 pkgs/development/libraries/haskell/websockets/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/websockets/default.nix b/pkgs/development/libraries/haskell/websockets/default.nix
index c0d500ace719..cc5caddb6ec9 100644
--- a/pkgs/development/libraries/haskell/websockets/default.nix
+++ b/pkgs/development/libraries/haskell/websockets/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "websockets";
-  version = "0.8.2.0";
-  sha256 = "1gphlil7n0g9y6vqwyn9fc4sl2ccninznc59p11052j8q6yb34ia";
+  version = "0.8.2.1";
+  sha256 = "0ayh20a6xj3ab9ld3lmrazx94vbbf1xn65nxcpkq7cvm8ggim7a6";
   buildDepends = [
     attoparsec base64Bytestring binary blazeBuilder caseInsensitive
     entropy ioStreams mtl network random SHA text

From 011f22e49bb085209c6805ccb48f9a469aa19c2c Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Wed, 9 Apr 2014 12:13:57 +0200
Subject: [PATCH 495/567] haskell-yesod-core: update to version 1.2.11.1

---
 pkgs/development/libraries/haskell/yesod-core/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/yesod-core/default.nix b/pkgs/development/libraries/haskell/yesod-core/default.nix
index ab968a530480..cea81592ba4a 100644
--- a/pkgs/development/libraries/haskell/yesod-core/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-core/default.nix
@@ -11,8 +11,8 @@
 
 cabal.mkDerivation (self: {
   pname = "yesod-core";
-  version = "1.2.11";
-  sha256 = "0vg07g5735qsr01wpgxpjzjc7w9nrqvkhfnd90jzdvg3kg33dgih";
+  version = "1.2.11.1";
+  sha256 = "079nhpfsp8sqm0j5wck3fqx5b3g12r0l9214wybj2wnxpaddzhzx";
   buildDepends = [
     aeson attoparsecConduit blazeBuilder blazeHtml blazeMarkup
     caseInsensitive cereal clientsession conduit conduitExtra cookie

From 1bf2bd612c62ff9e99e5fa7aadf00966ef750728 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Wed, 9 Apr 2014 12:14:04 +0200
Subject: [PATCH 496/567] haskell-HTF: update to version 0.11.3.0

---
 pkgs/development/libraries/haskell/HTF/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/HTF/default.nix b/pkgs/development/libraries/haskell/HTF/default.nix
index 877fa68ab008..041c619850a9 100644
--- a/pkgs/development/libraries/haskell/HTF/default.nix
+++ b/pkgs/development/libraries/haskell/HTF/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "HTF";
-  version = "0.11.2.1";
-  sha256 = "194wjcs06cbxjfgfcax697405c0vlaklnvh705ffrxmrrww77z7l";
+  version = "0.11.3.0";
+  sha256 = "0kw0yxmxr3whi6cvrxnrpzyikbjqwvcram5mjc27b46k2p38zxpj";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [

From 316e809ff869c38c78d2cd561416b5168fab9de0 Mon Sep 17 00:00:00 2001
From: Emery Hemingway <emery@vfemail.net>
Date: Sat, 22 Mar 2014 21:38:04 -0400
Subject: [PATCH 497/567] cjdns: update to 20130303

build system is now nodejs based
new nixos module to start cjdns
---
 nixos/modules/module-list.nix               |   1 +
 nixos/modules/services/networking/cjdns.nix | 207 ++++++++++++++++++++
 pkgs/tools/networking/cjdns/builder.sh      |   9 +
 pkgs/tools/networking/cjdns/default.nix     |  26 ++-
 4 files changed, 228 insertions(+), 15 deletions(-)
 create mode 100644 nixos/modules/services/networking/cjdns.nix
 create mode 100644 pkgs/tools/networking/cjdns/builder.sh

diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index 86bb87e91dec..94d5afdb097f 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -159,6 +159,7 @@
   ./services/networking/bind.nix
   ./services/networking/bitlbee.nix
   ./services/networking/btsync.nix
+  ./services/networking/cjdns.nix
   ./services/networking/connman.nix
   ./services/networking/cntlm.nix
   ./services/networking/chrony.nix
diff --git a/nixos/modules/services/networking/cjdns.nix b/nixos/modules/services/networking/cjdns.nix
new file mode 100644
index 000000000000..9b715ec63849
--- /dev/null
+++ b/nixos/modules/services/networking/cjdns.nix
@@ -0,0 +1,207 @@
+# You may notice the commented out sections in this file,
+# it would be great to configure cjdns from nix, but cjdns 
+# reads its configuration from stdin, including the private
+# key and admin password, all nested in a JSON structure.
+#
+# Until a good method of storing the keys outside the nix 
+# store and mixing them back into a string is devised
+# (without too much shell hackery), a skeleton of the
+# configuration building lies commented out.
+
+{ config, pkgs, ... }:
+
+with pkgs.lib;
+
+let
+
+  cfg = config.services.cjdns;
+
+  /*
+  # can't keep keys and passwords in the nix store,
+  # but don't want to deal with this stdin quagmire.
+
+  cjdrouteConf = '' {
+    "admin": {"bind": "${cfg.admin.bind}", "password": "\${CJDNS_ADMIN}" },
+    "privateKey": "\${CJDNS_KEY}",
+
+    "interfaces": {
+    ''
+
+    + optionalString (cfg.interfaces.udp.bind.address != null) ''
+      "UDPInterface": [ {
+        "bind": "${cfg.interfaces.udp.bind.address}:"''
+	   ${if cfg.interfaces.upd.bind.port != null
+             then ${toString cfg.interfaces.udp.bind.port}
+	     else ${RANDOM}
+	   fi)
+      + '' } ]''
+
+    + (if cfg.interfaces.eth.bind != null then ''
+      "ETHInterface": [ {
+        "bind": "${cfg.interfaces.eth.bind}",
+        "beacon": ${toString cfg.interfaces.eth.beacon}
+      } ]
+    '' fi )
+    + ''
+    },
+    "router": { "interface": { "type": "TUNInterface" }, },
+    "security": [ { "setuser": "nobody" } ]
+    }
+    '';   
+
+    cjdrouteConfFile = pkgs.writeText "cjdroute.conf" cjdrouteConf
+    */
+in
+
+{
+  options = {
+
+    services.cjdns = {
+
+      enable = mkOption {
+        type = types.bool;
+	default = false;
+        description = ''
+          Enable this option to start a instance of the 
+          cjdns network encryption and and routing engine.
+          Configuration will be read from <literal>confFile</literal>.
+        '';
+      };
+
+      confFile = mkOption {
+	default = "/etc/cjdroute.conf";
+        description = ''
+          Configuration file to pipe to cjdroute.
+        '';
+      };
+
+      /*
+      admin = {
+        bind = mkOption {
+	  default = "127.0.0.1:11234";
+	  description = ''
+            Bind the administration port to this address and port.
+	  '';
+        };
+
+	passwordFile = mkOption {
+	  example = "/root/cjdns.adminPassword";
+	  description = ''
+	    File containing a password to the administration port.
+	  '';
+	};
+      };
+
+      keyFile = mkOption {
+        type = types.str;
+	example = "/root/cjdns.key";
+	description = ''
+	  Path to a file containing a cjdns private key on a single line.
+	'';
+      };
+      
+      passwordsFile = mkOption {
+        type = types.str;
+	default = null;
+	example = "/root/cjdns.authorizedPasswords";
+	description = ''
+	  A file containing a list of json dictionaries with passwords.
+	  For example:
+	    {"password": "s8xf5z7znl4jt05g922n3wpk75wkypk"},
+	    { "name": "nice guy",
+	      "password": "xhthk1mglz8tpjrbbvdlhyc092rhpx5"},
+	    {"password": "3qfxyhmrht7uwzq29pmhbdm9w4bnc8w"}
+	  '';
+	};
+
+      interfaces = {
+        udp = {
+	  bind = { 
+            address = mkOption {
+	      default = "0.0.0.0";
+	      description = ''
+	        Address to bind UDP tunnels to; disable by setting to null;
+	      '';
+ 	    };
+	    port = mkOption {
+	      type = types.int;
+	      default = null;
+	      description = ''
+	        Port to bind UDP tunnels to.
+	        A port will be choosen at random if this is not set.
+	        This option is required to act as the server end of 
+	        a tunnel.
+	      '';
+ 	    };
+	  };
+	};
+
+	eth = {
+	  bind = mkOption {
+	    default = null;
+	    example = "eth0";
+	    description = ''
+	      Bind to this device and operate with native wire format.
+	    '';
+	  };
+
+	  beacon = mkOption {
+	    default = 2;
+	    description = ''
+	      Auto-connect to other cjdns nodes on the same network.
+	      Options:
+	        0 -- Disabled.
+
+                1 -- Accept beacons, this will cause cjdns to accept incoming
+		     beacon messages and try connecting to the sender.
+
+		2 -- Accept and send beacons, this will cause cjdns to broadcast
+		     messages on the local network which contain a randomly
+		     generated per-session password, other nodes which have this
+                     set to 1 or 2 will hear the beacon messages and connect
+                     automatically.
+            '';
+	  };
+	  
+	  connectTo = mkOption {
+	    type = types.listOf types.str;
+	    default = [];
+	    description = ''
+	      Credentials for connecting look similar to UDP credientials
+              except they begin with the mac address, for example:
+              "01:02:03:04:05:06":{"password":"a","publicKey":"b"}
+	    '';
+	  };
+        };
+      };
+      */
+    };
+  };
+
+  config = mkIf config.services.cjdns.enable {
+
+    boot.kernelModules = [ "tun" ];
+
+    /*
+    networking.firewall.allowedUDPPorts = mkIf (cfg.udp.bind.port != null) [
+      cfg.udp.bind.port
+    ];
+    */
+
+    systemd.services.cjdns = {
+      description = "encrypted networking for everybody";
+      wantedBy = [ "multi-user.target" ];
+      wants = [ "network.target" ];
+      before = [ "network.target" ];
+      path = [ pkgs.cjdns ];
+
+      serviceConfig = {
+        Type = "forking";
+	ExecStart = ''
+          ${pkgs.stdenv.shell} -c "${pkgs.cjdns}/sbin/cjdroute < ${cfg.confFile}"
+	'';
+	Restart = "on-failure";
+      };
+    };
+  };
+}
diff --git a/pkgs/tools/networking/cjdns/builder.sh b/pkgs/tools/networking/cjdns/builder.sh
new file mode 100644
index 000000000000..c2e3701c0468
--- /dev/null
+++ b/pkgs/tools/networking/cjdns/builder.sh
@@ -0,0 +1,9 @@
+source $stdenv/setup
+
+unpackPhase
+cd git-export
+
+bash do
+
+mkdir -p $out/sbin
+cp cjdroute $out/sbin
diff --git a/pkgs/tools/networking/cjdns/default.nix b/pkgs/tools/networking/cjdns/default.nix
index b42f202099b1..48e21f4507e5 100644
--- a/pkgs/tools/networking/cjdns/default.nix
+++ b/pkgs/tools/networking/cjdns/default.nix
@@ -1,31 +1,27 @@
-{ stdenv, fetchgit, cmake }:
+{ stdenv, fetchgit, nodejs, which, python27 }:
 
 let
-  rev = "f7b02ac0cc";
+  date = "20140303";
+  rev = "f11ce1fd4795b0173ac0ef18c8a6f752aa824adb";
 in
 stdenv.mkDerivation {
-  name = "cjdns-20130620-${stdenv.lib.strings.substring 0 7 rev}";
+  name = "cjdns-${date}-${stdenv.lib.strings.substring 0 7 rev}";
 
   src = fetchgit {
-    url = "https://github.com/cjdelisle/cjdns.git";
+    url = "git://github.com/cjdelisle/cjdns.git";
     inherit rev;
-    sha256 = "1580a62yhph62nv7q2jdqrbkyk9a9g5i17snibkxyykc7rili5zq";
+    sha256 = "1bxhf9f1v0slf9mz3ll6jf45mkwvwxlf3yqxx9k23kjyr1nsc8s8";
   };
 
-  preConfigure = ''
-    sed -i -e '/toolchain.*CACHE/d' CMakeLists.txt
-  '';
+  buildInputs = [ which python27 nodejs];
 
-  doCheck = true;
-  checkPhase = "ctest";
-
-  buildInputs = [ cmake ];
+  builder = ./builder.sh;
 
   meta = {
     homepage = https://github.com/cjdelisle/cjdns;
     description = "Encrypted networking for regular people";
-    license = "GPLv3+";
-    maintainers = with stdenv.lib.maintainers; [viric];
-    platforms = with stdenv.lib.platforms; linux;
+    license = stdenv.lib.licenses.gpl3;
+    maintainers = with stdenv.lib.maintainers; [ viric emery ];
+    platforms = stdenv.lib.platforms.linux;
   };
 }

From d54a8052812d7ab93a18f667edc15bcda4640bae Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Domen=20Ko=C5=BEar?= <domen@dev.si>
Date: Wed, 9 Apr 2014 18:56:54 +0200
Subject: [PATCH 498/567] gnome3: downgrade 3.12 packages to 3.10

---
 pkgs/desktops/gnome-3/core/gnome-backgrounds/default.nix  | 6 +++---
 pkgs/desktops/gnome-3/core/gnome-calculator/default.nix   | 6 +++---
 pkgs/desktops/gnome-3/core/gnome-disk-utility/default.nix | 6 +++---
 pkgs/desktops/gnome-3/core/gnome-screenshot/default.nix   | 6 +++---
 4 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/pkgs/desktops/gnome-3/core/gnome-backgrounds/default.nix b/pkgs/desktops/gnome-3/core/gnome-backgrounds/default.nix
index 41f75e6e3c54..3879b81859a4 100644
--- a/pkgs/desktops/gnome-3/core/gnome-backgrounds/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-backgrounds/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, pkgconfig, intltool }:
 
 stdenv.mkDerivation rec {
-  name = "gnome-backgrounds-3.12.0";
+  name = "gnome-backgrounds-3.10.1";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/gnome-backgrounds/3.12/${name}.tar.xz";
-    sha256 = "77a893025a0bed5753631a810154cad53fb2cf34c8ee988016217cd8862eab42";
+    url = "mirror://gnome/sources/gnome-backgrounds/3.10/${name}.tar.xz";
+    sha256 = "11rv03m4hznpx0brf47hil04199z3jjvl1aq7q0lnill3yrffiyc";
   };
 
   nativeBuildInputs = [ pkgconfig intltool ];
diff --git a/pkgs/desktops/gnome-3/core/gnome-calculator/default.nix b/pkgs/desktops/gnome-3/core/gnome-calculator/default.nix
index 981ae3bd9dfc..205961a91713 100644
--- a/pkgs/desktops/gnome-3/core/gnome-calculator/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-calculator/default.nix
@@ -3,11 +3,11 @@
 , itstool, gnome3, librsvg, gdk_pixbuf }:
 
 stdenv.mkDerivation rec {
-  name = "gnome-calculator-3.12.0";
+  name = "gnome-calculator-3.10.2";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/gnome-calculator/3.12/${name}.tar.xz";
-    sha256 = "22882c770251203be85f728d73b0d3946728774fd437cf460cd6d958fc4b4dc5";
+    url = "mirror://gnome/sources/gnome-calculator/3.10/${name}.tar.xz";
+    sha256 = "0gkddnk9x76895xrz0ps4yny36w62fhi459gwmxqqb9kx5934n1f";
   };
 
   NIX_CFLAGS_COMPILE = "-I${gnome3.glib}/include/gio-unix-2.0";
diff --git a/pkgs/desktops/gnome-3/core/gnome-disk-utility/default.nix b/pkgs/desktops/gnome-3/core/gnome-disk-utility/default.nix
index e96da3168e0a..334471c2943c 100644
--- a/pkgs/desktops/gnome-3/core/gnome-disk-utility/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-disk-utility/default.nix
@@ -4,11 +4,11 @@
 , libcanberra_gtk3, libxslt, libtool, docbook_xsl, libpwquality }:
 
 stdenv.mkDerivation rec {
-  name = "gnome-disk-utility-3.12.0";
+  name = "gnome-disk-utility-3.10.0";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/gnome-disk-utility/3.12/${name}.tar.xz";
-    sha256 = "46e0698c4a7baa8719a79935066e103447011fb47528a28dbb49e35eeec409d8";
+    url = "mirror://gnome/sources/gnome-disk-utility/3.10/${name}.tar.xz";
+    sha256 = "1amqi2bribxn8r8k8mvxh3710rmdll9963smf0v59v0iwxi3mqil";
   };
 
   doCheck = true;
diff --git a/pkgs/desktops/gnome-3/core/gnome-screenshot/default.nix b/pkgs/desktops/gnome-3/core/gnome-screenshot/default.nix
index 349df0b103c9..7b94d0f90270 100644
--- a/pkgs/desktops/gnome-3/core/gnome-screenshot/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-screenshot/default.nix
@@ -3,11 +3,11 @@
 , itstool, gnome3, librsvg, gdk_pixbuf }:
 
 stdenv.mkDerivation rec {
-  name = "gnome-screenshot-3.12.0";
+  name = "gnome-screenshot-3.10.0";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/gnome-screenshot/3.12/${name}.tar.xz";
-    sha256 = "ae4bf706652ae9b28c7930d22c2c37469a78d7f6656d312960b3c75ee5c36eb1";
+    url = "mirror://gnome/sources/gnome-screenshot/3.10/${name}.tar.xz";
+    sha256 = "1nb56kzcj5z4hmrmxap5r53smi52ki3pc8qmhi4rymkgqswyk7bh";
   };
 
   doCheck = true;

From 5d12cbf1c20f45fe0c47dc94ee7894ee5c09be3b Mon Sep 17 00:00:00 2001
From: Aristid Breitkreuz <aristidb@gmail.com>
Date: Wed, 9 Apr 2014 20:42:08 +0200
Subject: [PATCH 499/567] add back old version of flex for grub2

---
 .../development/tools/parsing/flex/2.5.35.nix | 26 +++++++++++++++++++
 pkgs/top-level/all-packages.nix               |  3 ++-
 2 files changed, 28 insertions(+), 1 deletion(-)
 create mode 100644 pkgs/development/tools/parsing/flex/2.5.35.nix

diff --git a/pkgs/development/tools/parsing/flex/2.5.35.nix b/pkgs/development/tools/parsing/flex/2.5.35.nix
new file mode 100644
index 000000000000..8047080a125d
--- /dev/null
+++ b/pkgs/development/tools/parsing/flex/2.5.35.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchurl, bison, m4 }:
+
+stdenv.mkDerivation {
+  name = "flex-2.5.35";
+
+  src = fetchurl {
+    url = mirror://sourceforge/flex/flex-2.5.35.tar.bz2;
+    sha256 = "0ysff249mwhq0053bw3hxh58djc0gy7vjan2z1krrf9n5d5vvv0b";
+  };
+
+  buildInputs = [ bison ];
+
+  propagatedNativeBuildInputs = [ m4 ];
+
+  crossAttrs = {
+    preConfigure = ''
+      export ac_cv_func_malloc_0_nonnull=yes
+      export ac_cv_func_realloc_0_nonnull=yes
+    '';
+  };
+
+  meta = {
+    homepage = http://flex.sourceforge.net/;
+    description = "A fast lexical analyser generator";
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 6ea5b6864ed9..e0727ec42223 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1122,7 +1122,7 @@ let
     buggyBiosCDSupport = config.grub.buggyBiosCDSupport or true;
   };
 
-  grub2 = callPackage ../tools/misc/grub/2.0x.nix { libusb = libusb1; };
+  grub2 = callPackage ../tools/misc/grub/2.0x.nix { libusb = libusb1; flex = flex_2_5_35; };
 
   grub2_efi = grub2.override { EFIsupport = true; };
 
@@ -3733,6 +3733,7 @@ let
   checkstyle = callPackage ../development/tools/analysis/checkstyle { };
 
   flex = callPackage ../development/tools/parsing/flex { };
+  flex_2_5_35 = callPackage ../development/tools/parsing/flex/2.5.35.nix { };
 
   m4 = gnum4;
 

From e856584e1a38688bcb5c2ad9153172111e62969b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= <bjorn.forsman@gmail.com>
Date: Wed, 9 Apr 2014 21:04:49 +0200
Subject: [PATCH 500/567] nixos/jenkins-service: fix 'group' option
 documentation

Both for master and slave.
---
 .../services/continuous-integration/jenkins/default.nix        | 3 ++-
 .../modules/services/continuous-integration/jenkins/slave.nix  | 3 ++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/nixos/modules/services/continuous-integration/jenkins/default.nix b/nixos/modules/services/continuous-integration/jenkins/default.nix
index c3dc59a9fbd0..b264a2e4bb42 100644
--- a/nixos/modules/services/continuous-integration/jenkins/default.nix
+++ b/nixos/modules/services/continuous-integration/jenkins/default.nix
@@ -25,7 +25,8 @@ in {
         default = "jenkins";
         type = with types; string;
         description = ''
-          User the jenkins server should execute under.
+          If the default user "jenkins" is configured then this is the primary
+          group of that user.
         '';
       };
 
diff --git a/nixos/modules/services/continuous-integration/jenkins/slave.nix b/nixos/modules/services/continuous-integration/jenkins/slave.nix
index 1d31ab830f6c..9d952b2d2bef 100644
--- a/nixos/modules/services/continuous-integration/jenkins/slave.nix
+++ b/nixos/modules/services/continuous-integration/jenkins/slave.nix
@@ -33,7 +33,8 @@ in {
         default = "jenkins";
         type = with types; string;
         description = ''
-          User the jenkins slave agent should execute under.
+          If the default slave agent user "jenkins" is configured then this is
+          the primary group of that user.
         '';
       };
 

From 8fdf8984d2e83fef0602456c75baafaf274bd8d7 Mon Sep 17 00:00:00 2001
From: "Ricardo M. Correia" <rcorreia@wizy.org>
Date: Wed, 9 Apr 2014 01:57:26 +0200
Subject: [PATCH 501/567] chromium: Update stable channel from 33.0.1750.152 ->
 34.0.1847.116

---
 pkgs/applications/networking/browsers/chromium/sources.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/applications/networking/browsers/chromium/sources.nix b/pkgs/applications/networking/browsers/chromium/sources.nix
index 782356640c8d..49b5e2b42215 100644
--- a/pkgs/applications/networking/browsers/chromium/sources.nix
+++ b/pkgs/applications/networking/browsers/chromium/sources.nix
@@ -11,8 +11,8 @@
     sha256 = "1na5d6z4a0wkabn7cj62vyiv3mmvcb6qdvrkyy6fj79h7gk2hb7k";
   };
   stable = {
-    version = "33.0.1750.152";
-    url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-33.0.1750.152.tar.xz";
-    sha256 = "0byc23vwn9alsva0jqvwvgnbx2bm7x48m3jln02y4fpf1f265m4z";
+    version = "34.0.1847.116";
+    url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-34.0.1847.116.tar.xz";
+    sha256 = "04cpfav5rqa117igvzmrw0045r2ljxg5fqb46qgqvkgff30pjrfx";
   };
 }

From a644b7ba601f541ceda2e4a2f492cff8683feaaf Mon Sep 17 00:00:00 2001
From: "Ricardo M. Correia" <rcorreia@wizy.org>
Date: Mon, 7 Apr 2014 16:03:01 +0200
Subject: [PATCH 502/567] icedtea7: Update from 2.4.5 -> 2.4.6

---
 .../development/compilers/icedtea/sources.nix | 32 +++++++++----------
 1 file changed, 16 insertions(+), 16 deletions(-)

diff --git a/pkgs/development/compilers/icedtea/sources.nix b/pkgs/development/compilers/icedtea/sources.nix
index 95d6928b3ab4..6600c8117862 100644
--- a/pkgs/development/compilers/icedtea/sources.nix
+++ b/pkgs/development/compilers/icedtea/sources.nix
@@ -2,54 +2,54 @@
 {
   icedtea7 = rec {
     branch = "2.4";
-    version = "${branch}.5";
+    version = "${branch}.6";
 
     url = "http://icedtea.wildebeest.org/download/source/icedtea-${version}.tar.xz";
-    sha256 = "0nrhbn2q7cm21hpq1f5ds0v0rnsznmdyiifi8w4l1ykyqw9n9yfk";
+    sha256 = "06gsrci7934xmlddmi9wpawpgb1mp7c8cx3jmjsq91kdljmvqcy3";
 
     hg_url = "http://icedtea.classpath.org/hg/release/icedtea7-forest-${branch}";
 
     bundles = {
       openjdk = rec {
-        changeset = "410eb7fef869";
+        changeset = "b028e58c1b77";
         url = "${hg_url}/archive/${changeset}.tar.gz";
-        sha256 = "2de151c7275d91ef082e63fcc0957c5f9290404ec6e20ecfa1e752e16bfab707";
+        sha256 = "e6be030ac5934781d9682dc3108980fa7d2330c32da3cea4ae74df11fbaa92f2";
       };
 
       corba = rec {
-        changeset = "3594dbde270d";
+        changeset = "48ef1bb6d120";
         url = "${hg_url}/corba/archive/${changeset}.tar.gz";
-        sha256 = "d1f97e143fe94ae3a56b45bb5a90f8ab10ec2be4ff770a788f0a1ac677e27a7d";
+        sha256 = "2fcfe699797154da8b4ba5242e32468b2f3f42a0cb17039915bfb1f84887a5b6";
       };
 
       jaxp = rec {
-        changeset = "8fe156ad49e2";
+        changeset = "e0ba4b9a8b91";
         url = "${hg_url}/jaxp/archive/${changeset}.tar.gz";
-        sha256 = "0a2a40186cedfbeb8f87b0bc86bea2830943943081d4289fc74f7a783b2e1af3";
+        sha256 = "e7014057721b8392676bd24760c3f7b3dd40548abb3c8dfbe8df2fa04d7c1fca";
       };
 
       jaxws = rec {
-        changeset = "32ea8b1ed91a";
+        changeset = "4bd947cd146b";
         url = "${hg_url}/jaxws/archive/${changeset}.tar.gz";
-        sha256 = "08a169b6b02883759ec7a412aa91aa3e37480761cb50b95d092dbcdb2fc9a3d0";
+        sha256 = "17ed5278872ad0c9ec3a849caf1480e5942b714e35c9a4a949d09daac4b34c5a";
       };
 
       jdk = rec {
-        changeset = "9db88c18e114";
+        changeset = "b5282042aae0";
         url = "${hg_url}/jdk/archive/${changeset}.tar.gz";
-        sha256 = "285e5b8ccbb29f3f9f9ea9ea7856d1ed97465c57d091fbcd9b2e55a1ffbb543e";
+        sha256 = "ab9b0e973625604b12a2f027cb2a6f9bc5160ef7df55408da6ca8a9c3aaed2d5";
       };
 
       langtools = rec {
-        changeset = "dabd37b7e295";
+        changeset = "06eeb77dac24";
         url = "${hg_url}/langtools/archive/${changeset}.tar.gz";
-        sha256 = "86cb370ce2084c4b699d8c002ebe6c026e86206ffa82a2f3d7906aadb94ed79f";
+        sha256 = "a67e62618c70ef9190b2aef2b49be9d79624be9363bda258828b17494e092477";
       };
 
       hotspot = rec {
-        changeset = "2cb58882dac3";
+        changeset = "172674e0ab65";
         url = "${hg_url}/hotspot/archive/${changeset}.tar.gz";
-        sha256 = "d8c1681ae76e660c1888065933cedbbc1309869c7a2fb98f07c424716d5ebaf9";
+        sha256 = "2aadfe9b1848a619bd2d35f802b3e71ef5286e7822f9e7b02ce2539ca817d9b0";
       };
     };
   };

From 442e1bbaaba7f8274c8003b01e6c1ed8a38921f8 Mon Sep 17 00:00:00 2001
From: "Ricardo M. Correia" <rcorreia@wizy.org>
Date: Mon, 7 Apr 2014 23:17:05 +0200
Subject: [PATCH 503/567] icedtea7: Fix building v2.4.6 by backporting fix

See http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1726
---
 .../compilers/icedtea/build-fix-2.4.6.patch   | 58 +++++++++++++++++++
 .../development/compilers/icedtea/default.nix |  2 +
 2 files changed, 60 insertions(+)
 create mode 100644 pkgs/development/compilers/icedtea/build-fix-2.4.6.patch

diff --git a/pkgs/development/compilers/icedtea/build-fix-2.4.6.patch b/pkgs/development/compilers/icedtea/build-fix-2.4.6.patch
new file mode 100644
index 000000000000..d5fcd9f44565
--- /dev/null
+++ b/pkgs/development/compilers/icedtea/build-fix-2.4.6.patch
@@ -0,0 +1,58 @@
+
+# HG changeset patch
+# User Andrew John Hughes <gnu_andrew@member.fsf.org>
+# Date 1396030366 0
+# Node ID e8e59c50a451b45bd10cd495b81e5c61b2b4bca8
+# Parent  46f9059509fec2498b1a04ccefee538a45aeff8c
+PR1726: configure fails looking for ecj.jar before even trying to find javac
+
+2014-03-28  Andrew John Hughes  <gnu.andrew@redhat.com>
+
+	* acinclude.m4:
+	(IT_FIND_COMPILER): Check value of ECJ_JAR
+	and JAVAC here ...
+	(IT_FIND_ECJ_JAR): ... rather than here where
+	${JAVAC} may not yet be defined.
+
+diff -r 46f9059509fe -r e8e59c50a451 NEWS
+--- a/NEWS	Fri Mar 28 18:06:31 2014 +0000
++++ b/NEWS	Fri Mar 28 18:12:46 2014 +0000
+@@ -14,6 +14,9 @@
+ 
+ New in release 2.4.7 (2014-04-XX):
+ 
++* Bug fixes
++  - PR1726: configure fails looking for ecj.jar before even trying to find javac
++
+ New in release 2.4.6 (2014-03-28):
+ 
+ * Backports
+diff -r 46f9059509fe -r e8e59c50a451 acinclude.m4
+--- a/acinclude.m4	Fri Mar 28 18:06:31 2014 +0000
++++ b/acinclude.m4	Fri Mar 28 18:12:46 2014 +0000
+@@ -134,6 +134,12 @@
+   IT_USING_ECJ
+   IT_WITH_GCJ
+   
++  if test "x${ECJ_JAR}" = "xno"; then
++    if test "x${JAVAC}" = "x"; then
++      AC_MSG_ERROR("No compiler or ecj JAR file was found.")
++    fi
++  fi
++
+   if test x"${GCJ}" != xno ; then
+     JAVAC="${JAVA} -classpath ${ECJ_JAR} org.eclipse.jdt.internal.compiler.batch.Main"
+   fi
+@@ -350,11 +356,6 @@
+       fi
+   fi
+   AC_MSG_RESULT(${ECJ_JAR})
+-  if test "x${ECJ_JAR}" = "xno"; then
+-    if test "x${JAVAC}" = "x"; then
+-      AC_MSG_ERROR("No compiler or ecj JAR file was found.")
+-    fi
+-  fi
+   AC_SUBST(ECJ_JAR)
+ ])
+ 
+
diff --git a/pkgs/development/compilers/icedtea/default.nix b/pkgs/development/compilers/icedtea/default.nix
index a8f9617a6340..de3a013e7df9 100644
--- a/pkgs/development/compilers/icedtea/default.nix
+++ b/pkgs/development/compilers/icedtea/default.nix
@@ -43,6 +43,8 @@ with srcInfo; stdenv.mkDerivation {
     inherit url sha256;
   };
 
+  patches = [ ./build-fix-2.4.6.patch ];
+
   outputs = [ "out" "jre" ];
 
   # TODO: Probably some more dependencies should be on this list but are being

From f6799983bd736465735c387c4f5cbe0919d07350 Mon Sep 17 00:00:00 2001
From: "Ricardo M. Correia" <rcorreia@wizy.org>
Date: Mon, 7 Apr 2014 16:03:31 +0200
Subject: [PATCH 504/567] icedtea7_web: Update from 1.4.2 -> 1.5

Fixes CVE-2012-4540.
---
 pkgs/development/compilers/icedtea-web/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/compilers/icedtea-web/default.nix b/pkgs/development/compilers/icedtea-web/default.nix
index 9123aaa988cb..14a203770f86 100644
--- a/pkgs/development/compilers/icedtea-web/default.nix
+++ b/pkgs/development/compilers/icedtea-web/default.nix
@@ -3,12 +3,12 @@
 stdenv.mkDerivation rec {
   name = "icedtea-web-${version}";
 
-  version = "1.4.2";
+  version = "1.5";
 
   src = fetchurl {
     url = "http://icedtea.wildebeest.org/download/source/${name}.tar.gz";
 
-    sha256 = "0bfw4icxjfkdxqmiqgp9lfs1ca9rydl57g3yhlxrif0fpzyyb3fl";
+    sha256 = "0bbwa944kaam0r8ldlqrrj9z9zj54v6zdc3q663ck59shw5z828w";
   };
 
   buildInputs = [ gtk2 xulrunner zip pkgconfig npapi_sdk ];

From 76551abef2e5490af5ec3e37924cf29748798f32 Mon Sep 17 00:00:00 2001
From: "Ricardo M. Correia" <rcorreia@wizy.org>
Date: Tue, 8 Apr 2014 11:36:44 +0200
Subject: [PATCH 505/567] icedtea7_web: Fix configure phase not finding bash

---
 pkgs/development/compilers/icedtea-web/default.nix | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/pkgs/development/compilers/icedtea-web/default.nix b/pkgs/development/compilers/icedtea-web/default.nix
index 14a203770f86..c9697bac36c7 100644
--- a/pkgs/development/compilers/icedtea-web/default.nix
+++ b/pkgs/development/compilers/icedtea-web/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, jdk, gtk2, xulrunner, zip, pkgconfig, perl, npapi_sdk }:
+{ stdenv, fetchurl, jdk, gtk2, xulrunner, zip, pkgconfig, perl, npapi_sdk, bash }:
 
 stdenv.mkDerivation rec {
   name = "icedtea-web-${version}";
@@ -15,6 +15,8 @@ stdenv.mkDerivation rec {
 
   preConfigure = ''
     substituteInPlace javac.in --replace '#!/usr/bin/perl' '#!${perl}/bin/perl'
+
+    configureFlags="BIN_BASH=${bash}/bin/bash $configureFlags"
   '';
 
   configureFlags = [

From c50abd0e136cb8eec3527edc292d195a16fd5149 Mon Sep 17 00:00:00 2001
From: "Ricardo M. Correia" <rcorreia@wizy.org>
Date: Thu, 10 Apr 2014 00:34:59 +0200
Subject: [PATCH 506/567] linux: Update to 3.2.57

---
 pkgs/os-specific/linux/kernel/linux-3.2.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/os-specific/linux/kernel/linux-3.2.nix b/pkgs/os-specific/linux/kernel/linux-3.2.nix
index 1dd13724857f..a73ded41edfc 100644
--- a/pkgs/os-specific/linux/kernel/linux-3.2.nix
+++ b/pkgs/os-specific/linux/kernel/linux-3.2.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, ... } @ args:
 
 import ./generic.nix (args // rec {
-  version = "3.2.56";
+  version = "3.2.57";
   extraMeta.branch = "3.2";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz";
-    sha256 = "08858sx63bsay185ywwyh01wnms7lyh9rvgwznwnzmjpnfi3hihm";
+    sha256 = "0njiqa5fi82a4dls9z1cp33lza00bg15x93c19bsyalp53xqbnab";
   };
 
   features.iwlwifi = true;

From 5dfc6584a505956648d31ee3cc664d48dff458c6 Mon Sep 17 00:00:00 2001
From: "Ricardo M. Correia" <rcorreia@wizy.org>
Date: Thu, 10 Apr 2014 00:34:59 +0200
Subject: [PATCH 507/567] grsecurity: Update stable patch from
 3.0-3.2.56-201404062126 -> 3.0-3.2.57-201404091758

---
 pkgs/os-specific/linux/kernel/patches.nix | 10 +++++-----
 pkgs/top-level/all-packages.nix           |  2 +-
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/pkgs/os-specific/linux/kernel/patches.nix b/pkgs/os-specific/linux/kernel/patches.nix
index 5156abc1c4fc..8e3cb5f7aaa3 100644
--- a/pkgs/os-specific/linux/kernel/patches.nix
+++ b/pkgs/os-specific/linux/kernel/patches.nix
@@ -72,14 +72,14 @@ rec {
   };
 
 
-  grsecurity_3_0_3_2_56 =
-    { name = "grsecurity-3.0-3.2.56";
+  grsecurity_3_0_3_2_57 =
+    { name = "grsecurity-3.0-3.2.57";
       patch = fetchurl {
-        url = http://grsecurity.net/stable/grsecurity-3.0-3.2.56-201404062126.patch;
-        sha256 = "0pm8a6h5dky1frg7bi6ldq849w8xz8isnlw5jpbzix46m3myy3x0";
+        url = http://grsecurity.net/stable/grsecurity-3.0-3.2.57-201404091758.patch;
+        sha256 = "07rswg6vqyak9ccan954izx1fr0c6c6fn8whlzl0787dabpai3i3";
       };
       features.grsecurity = true;
-      # The grsec kernel patch seems to include the apparmor patches as of 3.0-3.2.56
+      # The grsec kernel patch seems to include the apparmor patches as of 3.0-3.2.57
       features.apparmor = true;
     };
 
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index e0727ec42223..0de56da83113 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -6913,7 +6913,7 @@ let
   linux_3_2_grsecurity = lowPrio (lib.addMetaAttrs {
     maintainers = with lib.maintainers; [ wizeman thoughtpolice ];
   } (lib.overrideDerivation (linux_3_2.override (args: {
-    kernelPatches = args.kernelPatches ++ [ kernelPatches.grsecurity_3_0_3_2_56 kernelPatches.grsec_path ];
+    kernelPatches = args.kernelPatches ++ [ kernelPatches.grsecurity_3_0_3_2_57 kernelPatches.grsec_path ];
     argsOverride = {
       modDirVersion = "${linux_3_2.modDirVersion}-grsec";
     };

From d912cdf264d3ecba17fbf8e156bee6c65055dced Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Domen=20Ko=C5=BEar?= <domen@dev.si>
Date: Wed, 9 Apr 2014 23:04:47 +0000
Subject: [PATCH 508/567] gstreamer-1.0: use different function name for env
 hook than gstreamer-0.10

---
 pkgs/development/libraries/gstreamer/core/setup-hook.sh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/gstreamer/core/setup-hook.sh b/pkgs/development/libraries/gstreamer/core/setup-hook.sh
index 4e75044e732a..04863ab3b612 100644
--- a/pkgs/development/libraries/gstreamer/core/setup-hook.sh
+++ b/pkgs/development/libraries/gstreamer/core/setup-hook.sh
@@ -1,9 +1,9 @@
-addGstreamerLibPath () {
+addGstreamer1LibPath () {
     if test -d "$1/lib/gstreamer-1.0"
     then
         export GST_PLUGIN_SYSTEM_PATH_1_0="${GST_PLUGIN_SYSTEM_PATH_1_0}${GST_PLUGIN_SYSTEM_PATH_1_0:+:}$1/lib/gstreamer-1.0"
     fi
 }
 
-envHooks=(${envHooks[@]} addGstreamerLibPath)
+envHooks=(${envHooks[@]} addGstreamer1LibPath)
 

From ab12d10f8705216fb9c5bcfafb00fd5a0335a868 Mon Sep 17 00:00:00 2001
From: Linquize <linquize@yahoo.com.hk>
Date: Thu, 10 Apr 2014 02:02:59 +0200
Subject: [PATCH 509/567] git: Update to 1.9.2

---
 .../version-management/git-and-tools/git/default.nix          | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/applications/version-management/git-and-tools/git/default.nix b/pkgs/applications/version-management/git-and-tools/git/default.nix
index 9eaa7d219b0b..649b0a7e4a2c 100644
--- a/pkgs/applications/version-management/git-and-tools/git/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git/default.nix
@@ -10,7 +10,7 @@
 
 let
 
-  version = "1.9.1";
+  version = "1.9.2";
 
   svn = subversionClient.override { perlBindings = true; };
 
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "https://www.kernel.org/pub/software/scm/git/git-${version}.tar.xz";
-    sha256 = "0yx7qf9hqgfvrliqvk775pw3zh982nx5r16iw7n997q4ik7gnqpr";
+    sha256 = "1x4rb06vw4ckdflmn01r5l9spvn7cng4i5mm3sbd0n8cz0n6xz13";
   };
 
   patches = [ ./docbook2texi.patch ./symlinks-in-bin.patch ];

From 5dd14a1059efcc26193cc37e61b8da94a25cbba9 Mon Sep 17 00:00:00 2001
From: aszlig <aszlig@redmoonstudios.org>
Date: Thu, 10 Apr 2014 07:52:26 +0200
Subject: [PATCH 510/567] nixos/phpfpm: Add option to set PHP package.

This allows to easily override the used PHP package, especially for
example if you want to use PHP 5.5 or if you want to override the
derivation.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
---
 nixos/modules/services/web-servers/phpfpm.nix | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/nixos/modules/services/web-servers/phpfpm.nix b/nixos/modules/services/web-servers/phpfpm.nix
index 76ec41244627..6ffe4beaa5d5 100644
--- a/nixos/modules/services/web-servers/phpfpm.nix
+++ b/nixos/modules/services/web-servers/phpfpm.nix
@@ -35,6 +35,13 @@ in {
         '';
       };
 
+      phpPackage = mkOption {
+        default = pkgs.php54;
+        description = ''
+          The PHP package to use for running the FPM service.
+        '';
+      };
+
       poolConfigs = mkOption {
         type = types.attrsOf types.lines;
         default = {};
@@ -68,7 +75,7 @@ in {
         mkdir -p "${stateDir}"
       '';
       serviceConfig = {
-        ExecStart = "${pkgs.php54}/sbin/php-fpm -y ${cfgFile}";
+        ExecStart = "${cfg.phpPackage}/sbin/php-fpm -y ${cfgFile}";
         PIDFile = pidFile;
       };
     };

From c7e94de91f903f7484e2bd644de9c179d76973a8 Mon Sep 17 00:00:00 2001
From: Jaka Hudoklin <jakahudoklin@gmail.com>
Date: Thu, 10 Apr 2014 02:27:43 +0200
Subject: [PATCH 511/567] lxc: set rootfs path somewhere outside /nix/store

This commit fixes lxc to eventually work
---
 pkgs/os-specific/linux/lxc/default.nix | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/pkgs/os-specific/linux/lxc/default.nix b/pkgs/os-specific/linux/lxc/default.nix
index 1fcdcbc2837a..12305687c299 100644
--- a/pkgs/os-specific/linux/lxc/default.nix
+++ b/pkgs/os-specific/linux/lxc/default.nix
@@ -14,10 +14,14 @@ stdenv.mkDerivation rec {
 
   patches = [ ./install-localstatedir-in-store.patch ./support-db2x.patch ];
 
-  preConfigure = "export XML_CATALOG_FILES=${docbook_xml_dtd_45}/xml/dtd/docbook/catalog.xml";
+  preConfigure = ''
+    export XML_CATALOG_FILES=${docbook_xml_dtd_45}/xml/dtd/docbook/catalog.xml
+    substituteInPlace doc/rootfs/Makefile.am --replace '@LXCROOTFSMOUNT@' '$out/lib/lxc/rootfs'
+  '';
 
   configureFlags = [
     "--localstatedir=/var"
+    "--with-rootfs-path=/var/lib/lxc/rootfs"
     "--enable-doc"
     "--enable-tests"
     "--enable-apparmor"

From 4219eb430d0f41508ef153dcfed6b665bbe83ae8 Mon Sep 17 00:00:00 2001
From: Mathijs Kwik <mathijs@bluescreen303.nl>
Date: Wed, 9 Apr 2014 11:40:26 +0200
Subject: [PATCH 512/567] intel-microcode: upgrade to 20140122

---
 pkgs/os-specific/linux/microcode/intel.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/os-specific/linux/microcode/intel.nix b/pkgs/os-specific/linux/microcode/intel.nix
index d96a49436251..8de75fbc734e 100644
--- a/pkgs/os-specific/linux/microcode/intel.nix
+++ b/pkgs/os-specific/linux/microcode/intel.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl, microcode2ucode }:
 
-let version = "20130906"; in
+let version = "20140122"; in
 
 stdenv.mkDerivation {
   name = "microcode-intel-${version}";
 
   src = fetchurl {
-    url = "http://downloadmirror.intel.com/23166/eng/microcode-${version}.tgz";
-    sha256 = "11k327icvijadq2zkgkc3sqwzraip9cviqm25566g09523ds0svv";
+    url = "http://downloadmirror.intel.com/23574/eng/microcode-${version}.tgz";
+    sha256 = "0r5ldb1jvrf0b6b112v3wdr7ikf2zky2jgby2lnqi1xwd34x42k8";
   };
 
   buildInputs = [ microcode2ucode ];

From bf929ef73b00bc699b3035274f4a60e68ba1cbd7 Mon Sep 17 00:00:00 2001
From: Mathijs Kwik <mathijs@bluescreen303.nl>
Date: Wed, 9 Apr 2014 06:51:37 +0200
Subject: [PATCH 513/567] faac is redistributable, hydra is allowed to build
 it.

---
 pkgs/development/libraries/faac/default.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pkgs/development/libraries/faac/default.nix b/pkgs/development/libraries/faac/default.nix
index 8bfaaf3ea497..2c4f8da77835 100644
--- a/pkgs/development/libraries/faac/default.nix
+++ b/pkgs/development/libraries/faac/default.nix
@@ -15,6 +15,6 @@ stdenv.mkDerivation rec {
     homepage = http://www.audiocoding.com/faac.html;
     # Incompatible with GPL. Some changes to the base code, included in faac,
     # are under LGPL though.
-    license = "unfree";
+    license = "unfree-redistributable";
   };
 }

From 3ada08785f2bd191d3195e332b5c225f1d730038 Mon Sep 17 00:00:00 2001
From: Mathijs Kwik <mathijs@bluescreen303.nl>
Date: Wed, 9 Apr 2014 11:06:46 +0200
Subject: [PATCH 514/567] avidemux: make faacSupport optional

---
 pkgs/applications/video/avidemux/default.nix | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

diff --git a/pkgs/applications/video/avidemux/default.nix b/pkgs/applications/video/avidemux/default.nix
index d706d16241ce..485d8c54eb36 100644
--- a/pkgs/applications/video/avidemux/default.nix
+++ b/pkgs/applications/video/avidemux/default.nix
@@ -1,20 +1,23 @@
 {stdenv, fetchurl, cmake, pkgconfig, libxml2, qt4, gtk, gettext, SDL,
 libXv, pixman, libpthreadstubs, libXau, libXdmcp, libxslt, x264,
-alsaLib, lame, faac, faad2, libvorbis, yasm, libvpx, xvidcore, libva }:
+alsaLib, lame, faad2, libvorbis, yasm, libvpx, xvidcore, libva,
+faac ? null, faacSupport ? false }:
 
 assert stdenv ? glibc;
+assert faacSupport -> faac != null;
 
 stdenv.mkDerivation {
   name = "avidemux-2.5.6";
-  
+
   src = fetchurl {
     url = mirror://sourceforge/avidemux/avidemux_2.5.6.tar.gz;
     sha256 = "12wvxz0n2g85f079d8mdkkp2zm279d34m9v7qgcqndh48cn7znnn";
   };
-  
+
   buildInputs = [ cmake pkgconfig libxml2 qt4 gtk gettext SDL libXv
-    pixman libpthreadstubs libXau libXdmcp libxslt x264 alsaLib 
-    lame faac faad2 libvorbis yasm libvpx xvidcore libva ];
+    pixman libpthreadstubs libXau libXdmcp libxslt x264 alsaLib
+    lame faad2 libvorbis yasm libvpx xvidcore libva
+  ] ++ stdenv.lib.optional faacSupport faac;
 
   cmakeFlags = "-DPTHREAD_INCLUDE_DIR=${stdenv.glibc}/include" +
     " -DGETTEXT_INCLUDE_DIR=${gettext}/include" +
@@ -34,7 +37,7 @@ stdenv.mkDerivation {
     make install
   '';
 
-  meta = { 
+  meta = {
     homepage = http://fixounet.free.fr/avidemux/;
     description = "Free video editor designed for simple video editing tasks";
     maintainers = with stdenv.lib.maintainers; [viric];

From c69577b7d6ea96cd605043440145ea6e094674b5 Mon Sep 17 00:00:00 2001
From: Jaka Hudoklin <jakahudoklin@gmail.com>
Date: Thu, 10 Apr 2014 12:20:50 +0200
Subject: [PATCH 515/567] nixos: fix shell on conatiners

---
 nixos/modules/programs/shadow.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/nixos/modules/programs/shadow.nix b/nixos/modules/programs/shadow.nix
index 15b083b72d28..7e9133099edf 100644
--- a/nixos/modules/programs/shadow.nix
+++ b/nixos/modules/programs/shadow.nix
@@ -94,7 +94,7 @@ in
         groupmod = { rootOK = true; };
         groupmems = { rootOK = true; };
         groupdel = { rootOK = true; };
-        login = { startSession = true; allowNullPassword = true; showMotd = true; updateWtmp = true; };
+        login = { startSession = !config.boot.isContainer; allowNullPassword = true; showMotd = true; updateWtmp = true; };
         chpasswd = { rootOK = true; };
         chgpasswd = { rootOK = true; };
       };

From 0b170187e364e6af9892e6d83247c090a132739c Mon Sep 17 00:00:00 2001
From: Jaka Hudoklin <jakahudoklin@gmail.com>
Date: Thu, 10 Apr 2014 12:29:46 +0200
Subject: [PATCH 516/567] nixos: disable ntp on containers by default

---
 nixos/modules/services/networking/ntpd.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/nixos/modules/services/networking/ntpd.nix b/nixos/modules/services/networking/ntpd.nix
index 3d388cb10648..fb7d6802136c 100644
--- a/nixos/modules/services/networking/ntpd.nix
+++ b/nixos/modules/services/networking/ntpd.nix
@@ -36,7 +36,7 @@ in
     services.ntp = {
 
       enable = mkOption {
-        default = true;
+        default = !config.boot.isContainer;
         description = ''
           Whether to synchronise your machine's time using the NTP
           protocol.

From c3c045c59d52e0282eb89d3a50b8d016d658ee61 Mon Sep 17 00:00:00 2001
From: Rob Vermaas <rob.vermaas@gmail.com>
Date: Thu, 10 Apr 2014 13:31:23 +0200
Subject: [PATCH 517/567] Add logstash-forwarder.

---
 .../tools/misc/logstash-forwarder/default.nix | 19 +++++++++++++++++++
 pkgs/top-level/all-packages.nix               |  2 ++
 2 files changed, 21 insertions(+)
 create mode 100644 pkgs/tools/misc/logstash-forwarder/default.nix

diff --git a/pkgs/tools/misc/logstash-forwarder/default.nix b/pkgs/tools/misc/logstash-forwarder/default.nix
new file mode 100644
index 000000000000..52180c75c981
--- /dev/null
+++ b/pkgs/tools/misc/logstash-forwarder/default.nix
@@ -0,0 +1,19 @@
+{ stdenv, fetchgit, go }:
+stdenv.mkDerivation {
+  name = "logstash-forwarder-20140410";
+  src = fetchgit {
+    url = https://github.com/elasticsearch/logstash-forwarder.git;
+    rev = "ec504792108ab6536b45bcf6dff6d26a6b56fef3";
+    sha256 = "309545ceaec171bee997cad260bef1433e041b9f3bfe617d475bcf79924f943d";
+  };
+  buildInputs = [ go ];
+  installPhase = ''
+    mkdir -p $out/bin
+    cp build/bin/logstash-forwarder $out/bin
+  '';
+
+  meta = {
+    license = stdenv.lib.licenses.asl20;
+    homepage = https://github.com/elasticsearch/logstash-forwarder;
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 0de56da83113..9e8c8487ec28 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1282,6 +1282,8 @@ let
 
   logstash = callPackage ../tools/misc/logstash { };
 
+  logstash-forwarder = callPackage ../tools/misc/logstash-forwarder { };
+
   kippo = callPackage ../servers/kippo { };
 
   klavaro = callPackage ../games/klavaro {};

From fe7599b2b2c0f327d2a7672d081f64bbdf6ec2f3 Mon Sep 17 00:00:00 2001
From: Rickard Nilsson <rickynils@gmail.com>
Date: Thu, 10 Apr 2014 14:10:00 +0200
Subject: [PATCH 518/567] openldap: Update from 2.4.38 to 2.4.39

---
 pkgs/development/libraries/openldap/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/openldap/default.nix b/pkgs/development/libraries/openldap/default.nix
index c4be3358049f..c8e8ff352773 100644
--- a/pkgs/development/libraries/openldap/default.nix
+++ b/pkgs/development/libraries/openldap/default.nix
@@ -1,11 +1,11 @@
 {stdenv, fetchurl, openssl, cyrus_sasl, db, groff}:
 
 stdenv.mkDerivation rec {
-  name = "openldap-2.4.38";
+  name = "openldap-2.4.39";
 
   src = fetchurl {
     url = "ftp://ftp.nl.uu.net/pub/unix/db/openldap/openldap-release/${name}.tgz";
-    sha256 = "1l8zng86alhcmmmw09r1c4dzl7yvk6dy5fq9zia96pgck4srl848";
+    sha256 = "19zq9dc7dl03wmqd11fbsdii1npyq1vlicl3nxbfygqh8xrwhrw2";
   };
 
   buildInputs = [ openssl cyrus_sasl db groff ];

From 3dca6b98cb6549ef7ba0195a6ac1bbc811f8db66 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu, 10 Apr 2014 10:53:49 +0200
Subject: [PATCH 519/567] Fix permissions on /var/lib/startup-done

---
 nixos/modules/virtualisation/containers.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix
index 097dd3993eb5..9d54ddb9948e 100644
--- a/nixos/modules/virtualisation/containers.nix
+++ b/nixos/modules/virtualisation/containers.nix
@@ -159,7 +159,7 @@ in
             # Create a named pipe to get a signal when the container
             # has finished booting.
             rm -f $root/var/lib/startup-done
-            mkfifo $root/var/lib/startup-done
+            mkfifo -m 0600 $root/var/lib/startup-done
          '';
 
         script =

From da4f180252e9a8f539a019569efc82000ffe5440 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu, 10 Apr 2014 11:32:50 +0200
Subject: [PATCH 520/567] =?UTF-8?q?Bring=20back=20=E2=80=98nixos-container?=
 =?UTF-8?q?=20update=E2=80=99?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../modules/virtualisation/nixos-container.pl | 71 +++++++++++++------
 1 file changed, 50 insertions(+), 21 deletions(-)

diff --git a/nixos/modules/virtualisation/nixos-container.pl b/nixos/modules/virtualisation/nixos-container.pl
index e42a3edd0243..b6919852b285 100644
--- a/nixos/modules/virtualisation/nixos-container.pl
+++ b/nixos/modules/virtualisation/nixos-container.pl
@@ -54,6 +54,25 @@ if ($action eq "list") {
 my $containerName = $ARGV[1] or die "$0: no container name specified\n";
 $containerName =~ /^[a-zA-Z0-9\-]+$/ or die "$0: invalid container name\n";
 
+sub writeNixOSConfig {
+    my ($nixosConfigFile) = @_;
+
+    my $nixosConfig = <<EOF;
+{ config, pkgs, ... }:
+
+with pkgs.lib;
+
+{ boot.isContainer = true;
+  security.initialRootPassword = mkDefault "!";
+  networking.hostName = mkDefault "$containerName";
+  networking.useDHCP = false;
+  $extraConfig
+}
+EOF
+
+    write_file($nixosConfigFile, $nixosConfig);
+}
+
 if ($action eq "create") {
     # Acquire an exclusive lock to prevent races with other
     # invocations of ‘nixos-container create’.
@@ -108,20 +127,8 @@ if ($action eq "create") {
 
     mkpath("$root/etc/nixos", 0, 0755);
 
-    my $nixosConfig = <<EOF;
-{ config, pkgs, ... }:
-
-with pkgs.lib;
-
-{ boot.isContainer = true;
-  security.initialRootPassword = mkDefault "!";
-  networking.hostName = mkDefault "$containerName";
-  networking.useDHCP = false;
-  $extraConfig
-}
-EOF
     my $nixosConfigFile = "$root/etc/nixos/configuration.nix";
-    write_file($nixosConfigFile, $nixosConfig);
+    writeNixOSConfig $nixosConfigFile;
 
     # The per-container directory is restricted to prevent users on
     # the host from messing with guest users who happen to have the
@@ -140,9 +147,16 @@ EOF
     exit 0;
 }
 
+my $root = "/var/lib/containers/$containerName";
+my $profileDir = "/nix/var/nix/profiles/per-container/$containerName";
 my $confFile = "/etc/containers/$containerName.conf";
 die "$0: container ‘$containerName’ does not exist\n" if !-e $confFile;
 
+sub isContainerRunning {
+    my $status = `systemctl show 'container\@$containerName'`;
+    return $status =~ /ActiveState=active/;
+}
+
 sub stopContainer {
     system("systemctl", "stop", "container\@$containerName") == 0
         or die "$0: failed to stop container\n";
@@ -152,11 +166,7 @@ if ($action eq "destroy") {
     die "$0: cannot destroy declarative container (remove it from your configuration.nix instead)\n"
         unless POSIX::access($confFile, &POSIX::W_OK);
 
-    my $root = "/var/lib/containers/$containerName";
-    my $profileDir = "/nix/var/nix/profiles/per-container/$containerName";
-
-    my $status = `systemctl show 'container\@$containerName'`;
-    stopContainer if $status =~ /ActiveState=active/;
+    stopContainer if isContainerRunning;
 
     rmtree($profileDir) if -e $profileDir;
     rmtree($root) if -e $root;
@@ -172,18 +182,37 @@ elsif ($action eq "stop") {
     stopContainer;
 }
 
+elsif ($action eq "update") {
+    my $nixosConfigFile = "$root/etc/nixos/configuration.nix";
+
+    # FIXME: may want to be more careful about clobbering the existing
+    # configuration.nix.
+    writeNixOSConfig $nixosConfigFile if defined $extraConfig;
+
+    system("nix-env", "-p", "$profileDir/system",
+           "-I", "nixos-config=$nixosConfigFile", "-f", "<nixpkgs/nixos>",
+           "--set", "-A", "system") == 0
+        or die "$0: failed to build container configuration\n";
+
+    if (isContainerRunning) {
+        print STDERR "reloading container...\n";
+        system("systemctl", "reload", "container\@$containerName") == 0
+            or die "$0: failed to reload container\n";
+    }
+}
+
 elsif ($action eq "login") {
-    exec($socat, "unix:/var/lib/containers/$containerName/var/lib/login.socket", "-,echo=0,raw");
+    exec($socat, "unix:$root/var/lib/login.socket", "-,echo=0,raw");
 }
 
 elsif ($action eq "root-shell") {
-    exec($socat, "unix:/var/lib/containers/$containerName/var/lib/root-shell.socket", "-");
+    exec($socat, "unix:$root/var/lib/root-shell.socket", "-");
 }
 
 elsif ($action eq "set-root-password") {
     # FIXME: don't get password from the command line.
     my $password = $ARGV[2] or die "$0: no password given\n";
-    open(SOCAT, "|-", $socat, "unix:/var/lib/containers/$containerName/var/lib/root-shell.socket", "-");
+    open(SOCAT, "|-", $socat, "unix:$root/var/lib/root-shell.socket", "-");
     print SOCAT "passwd\n";
     print SOCAT "$password\n";
     print SOCAT "$password\n";

From ac8c924c0931237461266c2780e744c63880180c Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu, 10 Apr 2014 13:12:34 +0200
Subject: [PATCH 521/567] =?UTF-8?q?nixos-container:=20Add=20=E2=80=98run?=
 =?UTF-8?q?=E2=80=99=20and=20=E2=80=98root-login=E2=80=99=20commands?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

And remove ‘root-shell’.
---
 .../virtualisation/container-config.nix       | 51 +++++++++++++++----
 nixos/modules/virtualisation/containers.nix   |  2 +-
 .../modules/virtualisation/nixos-container.pl | 16 ++++--
 3 files changed, 54 insertions(+), 15 deletions(-)

diff --git a/nixos/modules/virtualisation/container-config.nix b/nixos/modules/virtualisation/container-config.nix
index 3d107899e4fe..21e64c8c0957 100644
--- a/nixos/modules/virtualisation/container-config.nix
+++ b/nixos/modules/virtualisation/container-config.nix
@@ -30,29 +30,60 @@ with lib;
           };
       };
 
-    # Provide a non-interactive login root shell on
-    # /var/lib/root-shell.socket.  On the host, you can connect to it
-    # by running ‘socat unix:<path-to-container>/var/lib/root-shell.socket -’.
-    systemd.sockets.root-shell =
-      { description = "Root Shell Socket";
+    # Also provide a root login prompt on /var/lib/root-login.socket
+    # that doesn't ask for a password. This socket can only be used by
+    # root on the host.
+    systemd.sockets.root-login =
+      { description = "Root Login Socket";
         wantedBy = [ "sockets.target" ];
         socketConfig =
-          { ListenStream = "/var/lib/root-shell.socket";
-            SocketMode = "0600"; # only root can connect, obviously
+          { ListenStream = "/var/lib/root-login.socket";
+            SocketMode = "0600";
             Accept = true;
           };
       };
 
-    systemd.services."root-shell@" =
-      { description = "Root Shell %i";
+    systemd.services."root-login@" =
+      { description = "Root Login %i";
+        environment.TERM = "linux";
         serviceConfig =
           { Type = "simple";
             StandardInput = "socket";
-            ExecStart = "${pkgs.bash}/bin/bash --login";
+            ExecStart = "${pkgs.socat}/bin/socat -t0 - \"exec:${pkgs.shadow}/bin/login -f root,pty,setsid,setpgid,stderr,ctty\"";
             TimeoutStopSec = 1; # FIXME
           };
       };
 
+    # Provide a daemon on /var/lib/run-command.socket that reads a
+    # command from stdin and executes it.
+    systemd.sockets.run-command =
+      { description = "Run Command Socket";
+        wantedBy = [ "sockets.target" ];
+        socketConfig =
+          { ListenStream = "/var/lib/run-command.socket";
+            SocketMode = "0600";  # only root can connect
+            Accept = true;
+          };
+      };
+
+    systemd.services."run-command@" =
+      { description = "Run Command %i";
+        environment.TERM = "linux";
+        serviceConfig =
+          { Type = "simple";
+            StandardInput = "socket";
+            TimeoutStopSec = 1; # FIXME
+          };
+        script =
+          ''
+            #! ${pkgs.stdenv.shell} -e
+            source /etc/bashrc
+            read c
+            eval "command=($c)"
+            exec "''${command[@]}"
+          '';
+      };
+
     systemd.services.container-startup-done =
       { description = "Container Startup Notification";
         wantedBy = [ "multi-user.target" ];
diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix
index 9d54ddb9948e..fbdd3f9034c6 100644
--- a/nixos/modules/virtualisation/containers.nix
+++ b/nixos/modules/virtualisation/containers.nix
@@ -256,7 +256,7 @@ in
               . "/etc/containers/$INSTANCE.conf"
             fi
             echo $SYSTEM_PATH/bin/switch-to-configuration test | \
-              ${pkgs.socat}/bin/socat unix:$root/var/lib/root-shell.socket -
+              ${pkgs.socat}/bin/socat unix:$root/var/lib/run-command.socket -
           '';
 
         serviceConfig.SyslogIdentifier = "container %i";
diff --git a/nixos/modules/virtualisation/nixos-container.pl b/nixos/modules/virtualisation/nixos-container.pl
index b6919852b285..d7e8c7339b6d 100644
--- a/nixos/modules/virtualisation/nixos-container.pl
+++ b/nixos/modules/virtualisation/nixos-container.pl
@@ -19,7 +19,8 @@ Usage: nixos-container list
        nixos-container start <container-name>
        nixos-container stop <container-name>
        nixos-container login <container-name>
-       nixos-container root-shell <container-name>
+       nixos-container root-login <container-name>
+       nixos-container run <container-name> -- args...
        nixos-container set-root-password <container-name> <password>
        nixos-container show-ip <container-name>
 EOF
@@ -205,14 +206,21 @@ elsif ($action eq "login") {
     exec($socat, "unix:$root/var/lib/login.socket", "-,echo=0,raw");
 }
 
-elsif ($action eq "root-shell") {
-    exec($socat, "unix:$root/var/lib/root-shell.socket", "-");
+elsif ($action eq "root-login") {
+    exec($socat, "unix:$root/var/lib/root-login.socket", "-,echo=0,raw");
+}
+
+elsif ($action eq "run") {
+    shift @ARGV; shift @ARGV;
+    open(SOCAT, "|-", $socat, "unix:$root/var/lib/run-command.socket", "-");
+    print SOCAT join(' ', map { "'$_'" } @ARGV), "\n";
+    close(SOCAT);
 }
 
 elsif ($action eq "set-root-password") {
     # FIXME: don't get password from the command line.
     my $password = $ARGV[2] or die "$0: no password given\n";
-    open(SOCAT, "|-", $socat, "unix:$root/var/lib/root-shell.socket", "-");
+    open(SOCAT, "|-", $socat, "unix:$root/var/lib/run-command.socket", "-");
     print SOCAT "passwd\n";
     print SOCAT "$password\n";
     print SOCAT "$password\n";

From a34bfbab4cac9d7abcab88a47694e1cc32111dba Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu, 10 Apr 2014 14:23:38 +0200
Subject: [PATCH 522/567] Add option networking.nat.internalInterfaces

This allows applying NAT to an interface, rather than an IP range.
---
 nixos/modules/services/networking/nat.nix | 55 +++++++++++++++++------
 1 file changed, 41 insertions(+), 14 deletions(-)

diff --git a/nixos/modules/services/networking/nat.nix b/nixos/modules/services/networking/nat.nix
index ce28f0188284..d684d8e31222 100644
--- a/nixos/modules/services/networking/nat.nix
+++ b/nixos/modules/services/networking/nat.nix
@@ -10,6 +10,8 @@ let
 
   cfg = config.networking.nat;
 
+  dest = if cfg.externalIP == null then "-j MASQUERADE" else "-j SNAT --to-source ${cfg.externalIP}";
+
 in
 
 {
@@ -27,14 +29,27 @@ in
         '';
     };
 
+    networking.nat.internalInterfaces = mkOption {
+      type = types.listOf types.str;
+      default = [];
+      example = [ "eth0" ];
+      description =
+        ''
+          The interfaces for which to perform NAT. Packets coming from
+          these interface and destined for the external interface will
+          be rewritten.
+        '';
+    };
+
     networking.nat.internalIPs = mkOption {
       type = types.listOf types.str;
-      example = [ "192.168.1.0/24" ] ;
+      default = [];
+      example = [ "192.168.1.0/24" ];
       description =
         ''
           The IP address ranges for which to perform NAT.  Packets
-          coming from these networks and destined for the external
-          interface will be rewritten.
+          coming from these addresses (on any interface) and destined
+          for the external interface will be rewritten.
         '';
     };
 
@@ -80,25 +95,37 @@ in
 
         preStart =
           ''
+            iptables -t nat -F PREROUTING
             iptables -t nat -F POSTROUTING
             iptables -t nat -X
-          ''
-          + (concatMapStrings (network:
-            ''
-            iptables -t nat -A POSTROUTING \
-              -s ${network} -o ${cfg.externalInterface} \
-              ${if cfg.externalIP == null
-                then "-j MASQUERADE"
-                else "-j SNAT --to-source ${cfg.externalIP}"}
-            ''
-          ) cfg.internalIPs) +
-          ''
+
+            # We can't match on incoming interface in POSTROUTING, so
+            # mark packets coming from the external interfaces.
+            ${concatMapStrings (iface: ''
+              iptables -t nat -A PREROUTING \
+                -i '${iface}' -j MARK --set-mark 1
+            '') cfg.internalInterfaces}
+
+            # NAT the marked packets.
+            ${optionalString (cfg.internalInterfaces != []) ''
+              iptables -t nat -A POSTROUTING -m mark --mark 1 \
+                -o ${cfg.externalInterface} ${dest}
+            ''}
+
+            # NAT packets coming from the internal IPs.
+            ${concatMapStrings (range: ''
+              iptables -t nat -A POSTROUTING \
+                -s '${range}' -o ${cfg.externalInterface} ${dest}}
+            '') cfg.internalIPs}
+
             echo 1 > /proc/sys/net/ipv4/ip_forward
           '';
 
         postStop =
           ''
+            iptables -t nat -F PREROUTING
             iptables -t nat -F POSTROUTING
+            iptables -t nat -X
           '';
       };
   };

From 6a7a8a144fae43fae51232703bf742c8bcee8d67 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu, 10 Apr 2014 14:57:40 +0200
Subject: [PATCH 523/567] Document NixOS containers

---
 nixos/doc/manual/containers.xml             | 242 ++++++++++++++++++++
 nixos/doc/manual/manual.xml                 |   1 +
 nixos/modules/virtualisation/containers.nix |   2 +
 3 files changed, 245 insertions(+)
 create mode 100644 nixos/doc/manual/containers.xml

diff --git a/nixos/doc/manual/containers.xml b/nixos/doc/manual/containers.xml
new file mode 100644
index 000000000000..b8f170fc614f
--- /dev/null
+++ b/nixos/doc/manual/containers.xml
@@ -0,0 +1,242 @@
+<chapter xmlns="http://docbook.org/ns/docbook"
+         xmlns:xlink="http://www.w3.org/1999/xlink"
+         xml:id="ch-containers">
+
+<title>Containers</title>
+
+<para>NixOS allows you to easily run other NixOS instances as
+<emphasis>containers</emphasis>. Containers are a light-weight
+approach to virtualisation that runs software in the container at the
+same speed as in the host system. NixOS containers share the Nix store
+of the host, making container creation very efficient.</para>
+
+<warning><para>Currently, NixOS containers are not perfectly isolated
+from the host system. This means that a user with root access to the
+container can do things that affect the host. So you should not give
+container root access to untrusted users.</para></warning>
+
+<para>NixOS containers can be created in two ways: imperatively, using
+the command <command>nixos-container</command>, and declaratively, by
+specifying them in your <filename>configuration.nix</filename>. The
+declarative approach implies that containers get upgraded along with
+your host system when you run <command>nixos-rebuild</command>, which
+is often not what you want. By contrast, in the imperative approach,
+containers are configured and updated independently from the host
+system.</para>
+
+
+<section><title>Imperative container management</title>
+
+<para>We’ll cover imperative container management using
+<command>nixos-container</command> first. You create a container with
+identifier <literal>foo</literal> as follows:
+
+<screen>
+$ nixos-container create foo
+</screen>
+
+This creates the container’s root directory in
+<filename>/var/lib/containers/foo</filename> and a small configuration
+file in <filename>/etc/containers/foo.conf</filename>. It also builds
+the container’s initial system configuration and stores it in
+<filename>/nix/var/nix/profiles/per-container/foo/system</filename>. You
+can modify the initial configuration of the container on the command
+line. For instance, to create a container that has
+<command>sshd</command> running, with the given public key for
+<literal>root</literal>:
+
+<screen>
+$ nixos-container create foo --config 'services.openssh.enable = true; \
+  users.extraUsers.root.openssh.authorizedKeys.keys = ["ssh-dss AAAAB3N…"];'
+</screen>
+
+</para>
+
+<para>Creating a container does not start it. To start the container,
+run:
+
+<screen>
+$ nixos-container start foo
+</screen>
+
+This command will return as soon as the container has booted and has
+reached <literal>multi-user.target</literal>. On the host, the
+container runs within a systemd unit called
+<literal>container@<replaceable>container-name</replaceable>.service</literal>.
+Thus, if something went wrong, you can get status info using
+<command>systemctl</command>:
+
+<screen>
+$ systemctl status container@foo
+</screen>
+
+</para>
+
+<para>If the container has started succesfully, you can log in as
+root using the <command>root-login</command> operation:
+
+<screen>
+$ nixos-container root-login foo
+[root@foo:~]#
+</screen>
+
+Note that only root on the host can do this (since there is no
+authentication).  You can also get a regular login prompt using the
+<command>login</command> operation, which is available to all users on
+the host:
+
+<screen>
+$ nixos-container login foo
+foo login: alice
+Password: ***
+</screen>
+
+With <command>nixos-container run</command>, you can execute arbitrary
+commands in the container:
+
+<screen>
+$ nixos-container run foo -- uname -a
+Linux foo 3.4.82 #1-NixOS SMP Thu Mar 20 14:44:05 UTC 2014 x86_64 GNU/Linux
+</screen>
+
+</para>
+
+<para>There are several ways to change the configuration of the
+container. First, on the host, you can edit
+<literal>/var/lib/container/<replaceable>name</replaceable>/etc/nixos/configuration.nix</literal>,
+and run
+
+<screen>
+$ nixos-container update foo
+</screen>
+
+This will build and activate the new configuration. You can also
+specify a new configuration on the command line:
+
+<screen>
+$ nixos-container update foo --config 'services.httpd.enable = true; \
+  services.httpd.adminAddr = "foo@example.org";'
+
+$ curl http://$(nixos-container show-ip foo)/
+&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">…
+</screen>
+
+However, note that this will overwrite the container’s
+<filename>/etc/nixos/configuration.nix</filename>.</para>
+
+<para>Alternatively, you can change the configuration from within the
+container itself by running <command>nixos-rebuild switch</command>
+inside the container. Note that the container by default does not have
+a copy of the NixOS channel, so you should run <command>nix-channel
+--update</command> first.</para>
+
+<para>Containers can be stopped and started using
+<literal>nixos-container stop</literal> and <literal>nixos-container
+start</literal>, respectively, or by using
+<command>systemctl</command> on the container’s service unit. To
+destroy a container, including its file system, do
+
+<screen>
+$ nixos-container destroy foo
+</screen>
+
+</para>
+
+</section>
+
+
+<section><title>Declarative container specification</title>
+
+<para>You can also specify containers and their configuration in the
+host’s <filename>configuration.nix</filename>.  For example, the
+following specifies that there shall be a container named
+<literal>database</literal> running PostgreSQL:
+
+<programlisting>
+containers.database =
+  { config =
+      { config, pkgs, ... }:
+      { services.postgresql.enable = true;
+        services.postgresql.package = pkgs.postgresql92;
+      };
+  };
+</programlisting>
+
+If you run <literal>nixos-rebuild switch</literal>, the container will
+be built and started. If the container was already running, it will be
+updated in place, without rebooting.</para>
+
+<para>By default, declarative containers share the network namespace
+of the host, meaning that they can listen on (privileged)
+ports. However, they cannot change the network configuration. You can
+give a container its own network as follows:
+
+<programlisting>
+containers.database =
+  { privateNetwork = true;
+    hostAddress = "192.168.100.10";
+    localAddress = "192.168.100.11";
+  };
+</programlisting>
+
+This gives the container a private virtual Ethernet interface with IP
+address <literal>192.168.100.11</literal>, which is hooked up to a
+virtual Ethernet interface on the host with IP address
+<literal>192.168.100.10</literal>.  (See the next section for details
+on container networking.)</para>
+
+<para>To disable the container, just remove it from
+<filename>configuration.nix</filename> and run <literal>nixos-rebuild
+switch</literal>. Note that this will not delete the root directory of
+the container in <literal>/var/lib/containers</literal>.</para>
+
+</section>
+
+
+<section><title>Networking</title>
+
+<para>When you create a container using <literal>nixos-container
+create</literal>, it gets it own private IPv4 address in the range
+<literal>10.233.0.0/16</literal>. You can get the container’s IPv4
+address as follows:
+
+<screen>
+$ nixos-container show-ip foo
+10.233.4.2
+
+$ ping -c1 10.233.4.2
+64 bytes from 10.233.4.2: icmp_seq=1 ttl=64 time=0.106 ms
+</screen>
+
+</para>
+
+<para>Networking is implemented using a pair of virtual Ethernet
+devices. The network interface in the container is called
+<literal>eth0</literal>, while the matching interface in the host is
+called <literal>c-<replaceable>container-name</replaceable></literal>
+(e.g., <literal>c-foo</literal>).  The container has its own network
+namespace and the <literal>CAP_NET_ADMIN</literal> capability, so it
+can perform arbitrary network configuration such as setting up
+firewall rules, without affecting or having access to the host’s
+network.</para>
+
+<para>By default, containers cannot talk to the outside network. If
+you want that, you should set up Network Address Translation (NAT)
+rules on the host to rewrite container traffic to use your external
+IP address. This can be accomplished using the following configuration
+on the host:
+
+<programlisting>
+networking.nat.enable = true;
+networking.nat.internalInterfaces = ["c-+"];
+networking.nat.externalInterface = "eth0";
+</programlisting>
+where <literal>eth0</literal> should be replaced with the desired
+external interface. Note that <literal>c-+</literal> is a wildcard
+that matches all container interfaces.</para>
+
+</section>
+
+
+</chapter>
+
diff --git a/nixos/doc/manual/manual.xml b/nixos/doc/manual/manual.xml
index f9775f4f0170..5753a8ff9e74 100644
--- a/nixos/doc/manual/manual.xml
+++ b/nixos/doc/manual/manual.xml
@@ -54,6 +54,7 @@
   <xi:include href="running.xml" />
   <!-- <xi:include href="userconfiguration.xml" /> -->
   <xi:include href="troubleshooting.xml" />
+  <xi:include href="containers.xml" />
   <xi:include href="development.xml" />
 
   <xi:include href="release-notes.xml" />
diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix
index fbdd3f9034c6..c53bd7d3509d 100644
--- a/nixos/modules/virtualisation/containers.nix
+++ b/nixos/modules/virtualisation/containers.nix
@@ -281,6 +281,8 @@ in
           '';
       }) config.containers;
 
+    # FIXME: auto-start containers.
+
     # Generate /etc/hosts entries for the containers.
     networking.extraHosts = concatStrings (mapAttrsToList (name: cfg: optionalString (cfg.localAddress != null)
       ''

From 8aa84644f9ffaed98b73706c2822ba06955c5c60 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Carles=20Pag=C3=A8s?= <page@cubata.homelinux.net>
Date: Wed, 9 Apr 2014 22:32:11 +0200
Subject: [PATCH 524/567] libtxc_dxtn_s2tc: add v1.0 (close #2194)

S2TC is a patent-free S3TC compatible implementation and provides texture
compression to mesa.
---
 .../libraries/libtxc_dxtn_s2tc/default.nix    | 23 +++++++++++++++++++
 pkgs/top-level/all-packages.nix               |  2 ++
 2 files changed, 25 insertions(+)
 create mode 100644 pkgs/development/libraries/libtxc_dxtn_s2tc/default.nix

diff --git a/pkgs/development/libraries/libtxc_dxtn_s2tc/default.nix b/pkgs/development/libraries/libtxc_dxtn_s2tc/default.nix
new file mode 100644
index 000000000000..86f5029e9a59
--- /dev/null
+++ b/pkgs/development/libraries/libtxc_dxtn_s2tc/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchurl, autoreconfHook, mesa }:
+
+let version = "1.0"; in
+
+stdenv.mkDerivation rec {
+  name = "libtxc_dxtn_s2tc-${version}";
+
+  src = fetchurl {
+    url = "https://github.com/divVerent/s2tc/archive/v${version}.tar.gz";
+    sha256 = "0ibfdib277fhbqvxzan0bmglwnsl1y1rw2g8skvz82l1sfmmn752";
+  };
+
+  buildInputs = [ autoreconfHook mesa ];
+
+  meta = {
+    description = "A patent-free S3TC compatible implementation";
+    homepage = https://github.com/divVerent/s2tc;
+    repositories.git = https://github.com/divVerent/s2tc.git;
+    license = stdenv.lib.licenses.mit;
+    platforms = stdenv.lib.platforms.linux;
+    maintainers = [ stdenv.lib.maintainers.page ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 9e8c8487ec28..7e368d1820d1 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -5203,6 +5203,8 @@ let
 
   libtxc_dxtn = callPackage ../development/libraries/libtxc_dxtn { };
 
+  libtxc_dxtn_s2tc = callPackage ../development/libraries/libtxc_dxtn_s2tc { };
+
   libgeotiff = callPackage ../development/libraries/libgeotiff { };
 
   libunistring = callPackage ../development/libraries/libunistring { };

From 297bcd2088d5bd85641aa47c52949a512838a250 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= <vcunat@gmail.com>
Date: Thu, 10 Apr 2014 20:37:52 +0200
Subject: [PATCH 525/567] pango on darwin: attempt to fix build

Supply older flex (new doesn't build), and disable introspection.
---
 pkgs/development/libraries/pango/default.nix | 6 +++---
 pkgs/top-level/all-packages.nix              | 4 +++-
 2 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/pkgs/development/libraries/pango/default.nix b/pkgs/development/libraries/pango/default.nix
index b94a00b1b541..fbf3b0f34d40 100644
--- a/pkgs/development/libraries/pango/default.nix
+++ b/pkgs/development/libraries/pango/default.nix
@@ -9,9 +9,9 @@ stdenv.mkDerivation rec {
     sha256 = "08aqis6j8nd1lb4f2h4h9d9kjvp54iwf8zvqzss0qn4v7nfcjyvx";
   };
 
-  buildInputs = [ gobjectIntrospection ]
-    ++ stdenv.lib.optionals stdenv.isDarwin [ gettext fontconfig ];
-
+  buildInputs = with stdenv.lib;
+    optional (!stdenv.isDarwin) gobjectIntrospection # build problems
+    ++ optionals stdenv.isDarwin [ gettext fontconfig ];
 
   nativeBuildInputs = [ pkgconfig ];
 
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 7e368d1820d1..c9336b254fcd 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -4564,7 +4564,9 @@ let
   };
   cairomm = callPackage ../development/libraries/cairomm { };
 
-  pango = callPackage ../development/libraries/pango { };
+  pango = callPackage ../development/libraries/pango (
+    lib.optionalAttrs stdenv.isDarwin { flex = flex_2_5_35; } # flex fails to build
+  );
   pangomm = callPackage ../development/libraries/pangomm { };
 
   pangox_compat = callPackage ../development/libraries/pangox-compat { };

From 88691049ae48f07503daecae2ea317bfa83ea29d Mon Sep 17 00:00:00 2001
From: Jaka Hudoklin <jakahudoklin@gmail.com>
Date: Thu, 10 Apr 2014 20:40:38 +0200
Subject: [PATCH 526/567] postgresql93: fix darwin builds

ossp-uuid does not build on darwin
---
 pkgs/servers/sql/postgresql/9.3.x.nix | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/pkgs/servers/sql/postgresql/9.3.x.nix b/pkgs/servers/sql/postgresql/9.3.x.nix
index 3b5c820c94d1..672eeb8da6e1 100644
--- a/pkgs/servers/sql/postgresql/9.3.x.nix
+++ b/pkgs/servers/sql/postgresql/9.3.x.nix
@@ -1,5 +1,7 @@
 { stdenv, fetchurl, zlib, readline, libossp_uuid }:
 
+with stdenv.lib;
+
 let version = "9.3.3"; in
 
 stdenv.mkDerivation rec {
@@ -10,13 +12,13 @@ stdenv.mkDerivation rec {
     sha256 = "e925d8abe7157bd8bece6b7c0dd0c343d87a2b4336f85f4681ce596af99c3879";
   };
 
-  buildInputs = [ zlib readline libossp_uuid ];
+  buildInputs = [ zlib readline ] ++ optionals (!stdenv.isDarwin) [ libossp_uuid ];
 
   enableParallelBuilding = true;
 
   makeFlags = [ "world" ];
 
-  configureFlags =
+  configureFlags = optional (!stdenv.isDarwin)
     ''
       --with-ossp-uuid
     '';

From 07dc578572a2d0cad3a9c531c91d4e86e5446d86 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= <vcunat@gmail.com>
Date: Thu, 10 Apr 2014 21:19:40 +0200
Subject: [PATCH 527/567] llvm(Packages) on darwin: attempts to fix

- mark llvm34 as broken on darwin (so it doesn't install by default with nix-env)
- don't use our gcc for llvm_34 (might fix the build)
- switch also clang default to 3.3 on darwin (llvm was before)
---
 pkgs/development/compilers/llvm/3.4/llvm.nix |  1 +
 pkgs/top-level/all-packages.nix              | 19 ++++++++++---------
 2 files changed, 11 insertions(+), 9 deletions(-)

diff --git a/pkgs/development/compilers/llvm/3.4/llvm.nix b/pkgs/development/compilers/llvm/3.4/llvm.nix
index 7f58abea1fa9..fad11b7a123e 100644
--- a/pkgs/development/compilers/llvm/3.4/llvm.nix
+++ b/pkgs/development/compilers/llvm/3.4/llvm.nix
@@ -54,5 +54,6 @@ in stdenv.mkDerivation rec {
     license     = stdenv.lib.licenses.bsd3;
     maintainers = with stdenv.lib.maintainers; [ shlevy lovek323 raskin viric ];
     platforms   = stdenv.lib.platforms.all;
+    broken      = stdenv.isDarwin;
   };
 }
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index c9336b254fcd..fff43792fccb 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -2424,7 +2424,7 @@ let
   clangUnwrapped = llvm: pkg: callPackage pkg {
       stdenv = if stdenv.isDarwin
          then stdenvAdapters.overrideGCC stdenv gccApple
-         else stdenvAdapters.overrideGCC stdenv gcc48;
+         else stdenv;
       llvm = llvm;
   };
 
@@ -2926,10 +2926,9 @@ let
 
   lessc = callPackage ../development/compilers/lessc { };
 
-  llvm = if stdenv.isDarwin then llvm_33 # until someone solves build problems with _34
-    else llvmPackages.llvm;
+  llvm = llvmPackages.llvm;
 
-  llvm_34 = llvmPackages.llvm;
+  llvm_34 = llvmPackages_34.llvm;
   llvm_33 = llvm_v ../development/compilers/llvm/3.3/llvm.nix;
   llvm_32 = llvm_v ../development/compilers/llvm/3.2;
   llvm_31 = llvm_v ../development/compilers/llvm/3.1;
@@ -2940,12 +2939,14 @@ let
       else stdenv;
   };
 
-  llvmPackages = recurseIntoAttrs (import ../development/compilers/llvm/3.4 {
-    inherit newScope fetchurl;
+  llvmPackages = if !stdenv.isDarwin then llvmPackages_34 else {
+    # until someone solves build problems with _34
+    llvm = llvm_33;
+    clang = clang_33;
+  };
+  llvmPackages_34 = recurseIntoAttrs (import ../development/compilers/llvm/3.4 {
+    inherit stdenv newScope fetchurl;
     isl = isl_0_12;
-    stdenv = if stdenv.isDarwin
-      then stdenvAdapters.overrideGCC stdenv gcc48
-      else stdenv;
   });
   llvmPackagesSelf = import ../development/compilers/llvm/3.4 { inherit newScope fetchurl; isl = isl_0_12; stdenv = libcxxStdenv; };
 

From 7839df9a092570cfd7e5db2f3fc895ed0ada7aea Mon Sep 17 00:00:00 2001
From: vi <me@vikramverma.com>
Date: Fri, 11 Apr 2014 10:20:21 +0800
Subject: [PATCH 528/567] New derivation: language-c-inline (haskell)

---
 .../haskell/language-c-inline/default.nix         | 15 +++++++++++++++
 pkgs/top-level/haskell-packages.nix               |  2 ++
 2 files changed, 17 insertions(+)
 create mode 100644 pkgs/development/libraries/haskell/language-c-inline/default.nix

diff --git a/pkgs/development/libraries/haskell/language-c-inline/default.nix b/pkgs/development/libraries/haskell/language-c-inline/default.nix
new file mode 100644
index 000000000000..9e57490db341
--- /dev/null
+++ b/pkgs/development/libraries/haskell/language-c-inline/default.nix
@@ -0,0 +1,15 @@
+{ cabal, filepath, languageCQuote, mainlandPretty }:
+
+cabal.mkDerivation (self: {
+  pname = "language-c-inline";
+  version = "0.3.0.1";
+  sha256 = "0dw1fqwg9hhwgvak0ykhafbxp4gnb2ww9lc83m8kzkyzn1ccb6hg";
+  buildDepends = [ filepath languageCQuote mainlandPretty ];
+  doCheck = false;
+  meta = {
+    homepage = "https://github.com/mchakravarty/language-c-inline/";
+    description = "Inline C & Objective-C code in Haskell for language interoperability";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 81e894db95e1..2d837ec8433f 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -1601,6 +1601,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.finalReturn x
   knob = callPackage ../development/libraries/haskell/knob {};
 
   languageC = callPackage ../development/libraries/haskell/language-c {};
+  
+  languageCInline = callPackage ../development/libraries/haskell/language-c-inline {};
 
   languageCQuote = callPackage ../development/libraries/haskell/language-c-quote {};
 

From 31f375532759e5ace6ed3738011e2028bbebabc6 Mon Sep 17 00:00:00 2001
From: Michael Raskin <7c6f434c@mail.ru>
Date: Fri, 11 Apr 2014 11:08:22 +0400
Subject: [PATCH 529/567] Adding TCPFlow: a tool to separate tcp streams when
 capturing

---
 pkgs/tools/networking/tcpflow/default.nix     | 29 +++++++++++++++++++
 .../tools/networking/tcpflow/default.upstream |  1 +
 pkgs/top-level/all-packages.nix               |  2 ++
 3 files changed, 32 insertions(+)
 create mode 100644 pkgs/tools/networking/tcpflow/default.nix
 create mode 100644 pkgs/tools/networking/tcpflow/default.upstream

diff --git a/pkgs/tools/networking/tcpflow/default.nix b/pkgs/tools/networking/tcpflow/default.nix
new file mode 100644
index 000000000000..9c5f6f44ae05
--- /dev/null
+++ b/pkgs/tools/networking/tcpflow/default.nix
@@ -0,0 +1,29 @@
+{stdenv, fetchurl, openssl, zlib, libpcap, boost, cairo}:
+let
+  s = # Generated upstream information
+  rec {
+    baseName="tcpflow";
+    version="1.4.4";
+    name="${baseName}-${version}";
+    hash="0k2lxlvn1x8avkrijc22scrj4p2g5agfskbgfc2d0w9zgrg61xdn";
+    url="http://www.digitalcorpora.org/downloads/tcpflow/tcpflow-1.4.4.tar.gz";
+    sha256="0k2lxlvn1x8avkrijc22scrj4p2g5agfskbgfc2d0w9zgrg61xdn";
+  };
+  buildInputs = [
+    openssl zlib libpcap boost cairo
+  ];
+in
+stdenv.mkDerivation {
+  inherit (s) name version;
+  inherit buildInputs;
+  src = fetchurl {
+    inherit (s) url sha256;
+  };
+  meta = {
+    inherit (s) version;
+    description = ''TCP stream extractor'';
+    license = stdenv.lib.licenses.gpl3 ;
+    maintainers = [stdenv.lib.maintainers.raskin];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/tools/networking/tcpflow/default.upstream b/pkgs/tools/networking/tcpflow/default.upstream
new file mode 100644
index 000000000000..72802e4d0469
--- /dev/null
+++ b/pkgs/tools/networking/tcpflow/default.upstream
@@ -0,0 +1 @@
+url http://www.digitalcorpora.org/downloads/tcpflow/
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index fff43792fccb..583a51a5e709 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -2035,6 +2035,8 @@ let
   tcpcrypt = callPackage ../tools/security/tcpcrypt { };
 
   tcpdump = callPackage ../tools/networking/tcpdump { };
+  
+  tcpflow = callPackage ../tools/networking/tcpflow { };
 
   teamviewer = callPackage_i686 ../applications/networking/remote/teamviewer { };
 

From d65daf11b0706c1289f761133f37f5066132b949 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Thu, 10 Apr 2014 12:56:22 +0200
Subject: [PATCH 530/567] haskell-HTF: update to version 0.11.3.4

---
 pkgs/development/libraries/haskell/HTF/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/HTF/default.nix b/pkgs/development/libraries/haskell/HTF/default.nix
index 041c619850a9..aeb80822f619 100644
--- a/pkgs/development/libraries/haskell/HTF/default.nix
+++ b/pkgs/development/libraries/haskell/HTF/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "HTF";
-  version = "0.11.3.0";
-  sha256 = "0kw0yxmxr3whi6cvrxnrpzyikbjqwvcram5mjc27b46k2p38zxpj";
+  version = "0.11.3.4";
+  sha256 = "0db47fvp33k83dnhvpygprm06p3z397f5ci154vqk7krjpxb2ynx";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [

From 6c0ce0abf7c6a52178b5909da4b583525ae63bde Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Thu, 10 Apr 2014 12:56:24 +0200
Subject: [PATCH 531/567] haskell-active: update to version 0.1.0.11

---
 pkgs/development/libraries/haskell/active/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/active/default.nix b/pkgs/development/libraries/haskell/active/default.nix
index 99e217ba647d..168b555bd4a8 100644
--- a/pkgs/development/libraries/haskell/active/default.nix
+++ b/pkgs/development/libraries/haskell/active/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "active";
-  version = "0.1.0.10";
-  sha256 = "173ri9hv86sjfp3a0jp1y3v8rz0lfb6nz3yilcfvgc9sglcxa4bm";
+  version = "0.1.0.11";
+  sha256 = "0acm039s8aja54r66y6m456x49g8w3adyx1zs7yv1h6xyy7v7gcv";
   buildDepends = [ newtype semigroupoids semigroups vectorSpace ];
   testDepends = [
     newtype QuickCheck semigroupoids semigroups vectorSpace

From b0d1df0f8fbe6f245ab7c0f3778a06388e235303 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Thu, 10 Apr 2014 12:56:25 +0200
Subject: [PATCH 532/567] haskell-aws: update to version 0.9

---
 .../libraries/haskell/aws/default.nix         | 25 +++++++++----------
 1 file changed, 12 insertions(+), 13 deletions(-)

diff --git a/pkgs/development/libraries/haskell/aws/default.nix b/pkgs/development/libraries/haskell/aws/default.nix
index de7377c7532a..7394583c6674 100644
--- a/pkgs/development/libraries/haskell/aws/default.nix
+++ b/pkgs/development/libraries/haskell/aws/default.nix
@@ -1,23 +1,22 @@
-{ cabal, aeson, attempt, attoparsecConduit, base16Bytestring
-, base64Bytestring, blazeBuilder, caseInsensitive, cereal, conduit
-, cryptoApi, cryptohash, cryptohashCryptoapi, dataDefault, failure
-, filepath, httpConduit, httpTypes, liftedBase, monadControl, mtl
-, resourcet, text, time, transformers, unorderedContainers
-, utf8String, vector, xmlConduit
+{ cabal, aeson, base16Bytestring, base64Bytestring, blazeBuilder
+, byteable, caseInsensitive, cereal, conduit, conduitExtra
+, cryptohash, dataDefault, filepath, httpConduit, httpTypes
+, liftedBase, monadControl, mtl, resourcet, text, time
+, transformers, unorderedContainers, utf8String, vector, xmlConduit
 }:
 
 cabal.mkDerivation (self: {
   pname = "aws";
-  version = "0.8.6";
-  sha256 = "19hjwj15zmhmf33n2d2dkwan59ylwkaslh85sh04v05hsm8y5y1a";
+  version = "0.9";
+  sha256 = "07sdz179vqfdcnm6rrdg068xdyqw8m2565bdba5a1s987vdvps21";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
-    aeson attempt attoparsecConduit base16Bytestring base64Bytestring
-    blazeBuilder caseInsensitive cereal conduit cryptoApi cryptohash
-    cryptohashCryptoapi dataDefault failure filepath httpConduit
-    httpTypes liftedBase monadControl mtl resourcet text time
-    transformers unorderedContainers utf8String vector xmlConduit
+    aeson base16Bytestring base64Bytestring blazeBuilder byteable
+    caseInsensitive cereal conduit conduitExtra cryptohash dataDefault
+    filepath httpConduit httpTypes liftedBase monadControl mtl
+    resourcet text time transformers unorderedContainers utf8String
+    vector xmlConduit
   ];
   meta = {
     homepage = "http://github.com/aristidb/aws";

From 6cbf27406d14d57ade63a19a298e0aaeeba3147b Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Thu, 10 Apr 2014 12:56:26 +0200
Subject: [PATCH 533/567] haskell-binary-conduit: update to version 1.2.1.1

---
 .../libraries/haskell/binary-conduit/default.nix       | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/pkgs/development/libraries/haskell/binary-conduit/default.nix b/pkgs/development/libraries/haskell/binary-conduit/default.nix
index 0149fcabe724..4126910db752 100644
--- a/pkgs/development/libraries/haskell/binary-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/binary-conduit/default.nix
@@ -1,14 +1,14 @@
 { cabal, binary, conduit, hspec, QuickCheck, quickcheckAssertions
-, vector
+, resourcet, vector
 }:
 
 cabal.mkDerivation (self: {
   pname = "binary-conduit";
-  version = "1.2";
-  sha256 = "1m58zgmivapn51gs5983vpsivzkki94kkac014mwvnp90q46nkvx";
-  buildDepends = [ binary conduit vector ];
+  version = "1.2.1.1";
+  sha256 = "0f6ki793fbgxpsqadfj796b4rbv6zhn4v4rrd48r48zzw9hmxmzd";
+  buildDepends = [ binary conduit resourcet vector ];
   testDepends = [
-    binary conduit hspec QuickCheck quickcheckAssertions
+    binary conduit hspec QuickCheck quickcheckAssertions resourcet
   ];
   meta = {
     homepage = "http://github.com/qnikst/binary-conduit";

From 3dd79d7e62a767f9e698c63cc82912c670eb13bf Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Thu, 10 Apr 2014 12:56:27 +0200
Subject: [PATCH 534/567] haskell-classy-prelude-conduit: update to version
 0.9.0

---
 .../libraries/haskell/classy-prelude-conduit/default.nix      | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/classy-prelude-conduit/default.nix b/pkgs/development/libraries/haskell/classy-prelude-conduit/default.nix
index d128ee0a5a45..5324054423b4 100644
--- a/pkgs/development/libraries/haskell/classy-prelude-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/classy-prelude-conduit/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "classy-prelude-conduit";
-  version = "0.8.1";
-  sha256 = "16wiii630ivcsxrjkmks995lcn0q0plmzbg4h08g5mdgscql2ax1";
+  version = "0.9.0";
+  sha256 = "1lvi5n2km6l2saspiczpkvaq6670bp658kn83s334h6s6wlba3dz";
   buildDepends = [
     classyPrelude conduit conduitCombinators monadControl resourcet
     systemFileio transformers void

From 820757f40293d5fba60a0a0b04d43810168129a9 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Thu, 10 Apr 2014 12:56:28 +0200
Subject: [PATCH 535/567] haskell-classy-prelude: update to version 0.9.0

---
 pkgs/development/libraries/haskell/classy-prelude/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/classy-prelude/default.nix b/pkgs/development/libraries/haskell/classy-prelude/default.nix
index e9b6d71eeb39..4c142a23f3a2 100644
--- a/pkgs/development/libraries/haskell/classy-prelude/default.nix
+++ b/pkgs/development/libraries/haskell/classy-prelude/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "classy-prelude";
-  version = "0.8.3.1";
-  sha256 = "1mszblcww2pqy1zybib7rd4y6sqbd5nih0zzfi9zb69bwwb7mjai";
+  version = "0.9.0";
+  sha256 = "1y4440jy7x9ns4kyb638f5lfa1h3vq3wwcwzkpswr8rf8f7z1bj6";
   buildDepends = [
     basicPrelude chunkedData enclosedExceptions hashable liftedBase
     monoTraversable semigroups stm systemFilepath text time

From 73b6fdefa8597d937ee640dbf0fb8df6a2f71d51 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Thu, 10 Apr 2014 12:56:29 +0200
Subject: [PATCH 536/567] haskell-criterion: update to version 0.8.0.2

---
 pkgs/development/libraries/haskell/criterion/default.nix | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/pkgs/development/libraries/haskell/criterion/default.nix b/pkgs/development/libraries/haskell/criterion/default.nix
index ba8f1b70c77d..e106138ef249 100644
--- a/pkgs/development/libraries/haskell/criterion/default.nix
+++ b/pkgs/development/libraries/haskell/criterion/default.nix
@@ -1,15 +1,15 @@
 { cabal, aeson, binary, deepseq, filepath, Glob, hastache, mtl
-, mwcRandom, parsec, statistics, time, transformers, vector
+, mwcRandom, parsec, statistics, text, time, transformers, vector
 , vectorAlgorithms
 }:
 
 cabal.mkDerivation (self: {
   pname = "criterion";
-  version = "0.8.0.1";
-  sha256 = "1f4wsaiyq0zks71jgfx43774vxkf9l362a9kfd2jhsnxx7zkv5sq";
+  version = "0.8.0.2";
+  sha256 = "126c3i9i88wqs5ihif4kpsc1gdqas57acd8h5jbyfqhgbwi1s7gz";
   buildDepends = [
     aeson binary deepseq filepath Glob hastache mtl mwcRandom parsec
-    statistics time transformers vector vectorAlgorithms
+    statistics text time transformers vector vectorAlgorithms
   ];
   meta = {
     homepage = "https://github.com/bos/criterion";

From e39071103ea9e226e5a1bc67d6e0e2647a8f8153 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Thu, 10 Apr 2014 12:56:30 +0200
Subject: [PATCH 537/567] haskell-diagrams-core: update to version 1.1.0.2

---
 pkgs/development/libraries/haskell/diagrams/core.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/diagrams/core.nix b/pkgs/development/libraries/haskell/diagrams/core.nix
index 3529faaf6afe..eb9207a936fe 100644
--- a/pkgs/development/libraries/haskell/diagrams/core.nix
+++ b/pkgs/development/libraries/haskell/diagrams/core.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "diagrams-core";
-  version = "1.1.0.1";
-  sha256 = "1jr827cd3qa631glwc9h247w0wnrx84gj2iwxj18b4y78d0ajz69";
+  version = "1.1.0.2";
+  sha256 = "1py1dk6w6f00kd48kxbdbxmd3rakxdmwgpb09g346vmkbxkj56mq";
   buildDepends = [
     dualTree lens MemoTrie monoidExtras newtype semigroups vectorSpace
     vectorSpacePoints

From 5b0bd8e16e03cd4de1fc7e4ea43233c7f1707983 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Thu, 10 Apr 2014 12:56:31 +0200
Subject: [PATCH 538/567] haskell-fay: update to version 0.19.2

---
 pkgs/development/libraries/haskell/fay/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/fay/default.nix b/pkgs/development/libraries/haskell/fay/default.nix
index 3af423e57456..f7bf07b4fbab 100644
--- a/pkgs/development/libraries/haskell/fay/default.nix
+++ b/pkgs/development/libraries/haskell/fay/default.nix
@@ -8,8 +8,8 @@
 
 cabal.mkDerivation (self: {
   pname = "fay";
-  version = "0.19.1.2";
-  sha256 = "1v6fnyzvs55sf602ja74x5cwkg97rc46ybv8ybrnsg9jvhscynpr";
+  version = "0.19.2";
+  sha256 = "08lq2x87gsf5szdj613k9h3qxzpb99hjhxnq3vggs2kf0ijp6xmh";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [

From 8fb3c001ee3dbb3dcac9f06ebdc4495c6a4373db Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Thu, 10 Apr 2014 12:56:32 +0200
Subject: [PATCH 539/567] haskell-hmatrix: update to version 0.15.2.1

---
 pkgs/development/libraries/haskell/hmatrix/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/hmatrix/default.nix b/pkgs/development/libraries/haskell/hmatrix/default.nix
index 51670f639735..bb0c48b91183 100644
--- a/pkgs/development/libraries/haskell/hmatrix/default.nix
+++ b/pkgs/development/libraries/haskell/hmatrix/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hmatrix";
-  version = "0.15.2.0";
-  sha256 = "0rlgyqgl9x08f38nznbv50asbph0zp9dqk0l156hxz792590payl";
+  version = "0.15.2.1";
+  sha256 = "0pcs3dsxmaznsb82r71f4kf7xbwvj94cy1fmyya52nv3nldnk1jg";
   buildDepends = [ binary deepseq random storableComplex vector ];
   extraLibraries = [ blas gsl liblapack ];
   meta = {

From 47a7805337751d0ec25214c467a18574cc0ac150 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Thu, 10 Apr 2014 12:56:33 +0200
Subject: [PATCH 540/567] haskell-hxt-xpath: update to version 9.1.2.1

---
 pkgs/development/libraries/haskell/hxt-xpath/default.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pkgs/development/libraries/haskell/hxt-xpath/default.nix b/pkgs/development/libraries/haskell/hxt-xpath/default.nix
index 91524320ece7..73e350bd77b1 100644
--- a/pkgs/development/libraries/haskell/hxt-xpath/default.nix
+++ b/pkgs/development/libraries/haskell/hxt-xpath/default.nix
@@ -8,7 +8,7 @@ cabal.mkDerivation (self: {
   meta = {
     homepage = "http://www.fh-wedel.de/~si/HXmlToolbox/index.html";
     description = "The XPath modules for HXT";
-    license = self.stdenv.lib.licenses.mit;
+    license = "unknown";
     platforms = self.ghc.meta.platforms;
   };
 })

From 237bf0f8b7c55ddf0745e82bbd567e3bce89309d Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Thu, 10 Apr 2014 12:56:35 +0200
Subject: [PATCH 541/567] haskell-language-c: update to version 0.4.4

---
 pkgs/development/libraries/haskell/language-c/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/language-c/default.nix b/pkgs/development/libraries/haskell/language-c/default.nix
index c415e3a2b930..188ca99a5be9 100644
--- a/pkgs/development/libraries/haskell/language-c/default.nix
+++ b/pkgs/development/libraries/haskell/language-c/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "language-c";
-  version = "0.4.3";
-  sha256 = "0y5yn0jaairqixxqx7c80z5y5mc6czshps7wghjci1s39mn9cjf6";
+  version = "0.4.4";
+  sha256 = "0pfadijrcfvxvdrwk8n54pqvpmi4qa5w7s0l9shxbkvpj0dmnp50";
   buildDepends = [ filepath syb ];
   buildTools = [ alex happy ];
   meta = {

From 977aa979bf7c02b350018a9b0eb6bd34520629d1 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Thu, 10 Apr 2014 12:56:37 +0200
Subject: [PATCH 542/567] haskell-quickcheck-instances: update to version 0.3.8

---
 .../libraries/haskell/quickcheck-instances/default.nix        | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/quickcheck-instances/default.nix b/pkgs/development/libraries/haskell/quickcheck-instances/default.nix
index 00ea65388fd9..b45fab000ca5 100644
--- a/pkgs/development/libraries/haskell/quickcheck-instances/default.nix
+++ b/pkgs/development/libraries/haskell/quickcheck-instances/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "quickcheck-instances";
-  version = "0.3.7";
-  sha256 = "0zf2b2zisfx7j7i4jnb79w5hhk5dy53w23fi876flx3vl6mfvszw";
+  version = "0.3.8";
+  sha256 = "0132a37zi1haz1aaggxa1hr421bcmxlbaa4m2l53m2rmr4z5mgkg";
   buildDepends = [
     hashable QuickCheck text time unorderedContainers
   ];

From 37b804f7df01711c8959a59f51e319ceb1181872 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Thu, 10 Apr 2014 12:56:38 +0200
Subject: [PATCH 543/567] haskell-semigroups: update to version 0.13.0.1

---
 pkgs/development/libraries/haskell/semigroups/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/semigroups/default.nix b/pkgs/development/libraries/haskell/semigroups/default.nix
index 432eb77ae3ee..22dfb5e8896f 100644
--- a/pkgs/development/libraries/haskell/semigroups/default.nix
+++ b/pkgs/development/libraries/haskell/semigroups/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "semigroups";
-  version = "0.12.2";
-  sha256 = "0qk6m477iwk17j2a1yfxfkhvfrdv94nnx32zlqjqqxjfbi71c30g";
+  version = "0.13.0.1";
+  sha256 = "12zd1pvggjj81hi7vm9z8fxcwsg6r2xbsg3qjs8snnybadi0qlfl";
   buildDepends = [ hashable nats text unorderedContainers ];
   meta = {
     homepage = "http://github.com/ekmett/semigroups/";

From 9b2b87379c76ddb9d49f022c9e728710ea2b5c31 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Thu, 10 Apr 2014 12:56:39 +0200
Subject: [PATCH 544/567] haskell-tf-random: update to version 0.5

---
 pkgs/development/libraries/haskell/tf-random/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/tf-random/default.nix b/pkgs/development/libraries/haskell/tf-random/default.nix
index 3ff0b2d9b844..79e27f87fc69 100644
--- a/pkgs/development/libraries/haskell/tf-random/default.nix
+++ b/pkgs/development/libraries/haskell/tf-random/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "tf-random";
-  version = "0.4";
-  sha256 = "0yi7699zswpsn9a39ccqkyd0117sppjnqggclnhs1wm7ql1glc27";
+  version = "0.5";
+  sha256 = "0445r2nns6009fmq0xbfpyv7jpzwv0snccjdg7hwj4xk4z0cwc1f";
   buildDepends = [ primitive random time ];
   meta = {
     description = "High-quality splittable pseudorandom number generator";

From 967027576bb4e60a74b30c219249a29fbd03e976 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Thu, 10 Apr 2014 12:56:40 +0200
Subject: [PATCH 545/567] haskell-thyme: update to version 0.3.3.0

---
 pkgs/development/libraries/haskell/thyme/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/thyme/default.nix b/pkgs/development/libraries/haskell/thyme/default.nix
index fe79454781a1..e321f21b2ca4 100644
--- a/pkgs/development/libraries/haskell/thyme/default.nix
+++ b/pkgs/development/libraries/haskell/thyme/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "thyme";
-  version = "0.3.2.0";
-  sha256 = "1jrhqrvmkq8n943l6dkyszg4qz47jbddr80qg7k51a9nrg8fins4";
+  version = "0.3.3.0";
+  sha256 = "0mpwwpc82xcdyawz87rcmvga1miw7cx538nnh379m2ibn0g71zaa";
   buildDepends = [
     aeson attoparsec deepseq mtl profunctors QuickCheck random text
     time vector vectorSpace

From a72ef2976c2b4f55d9173693ee9de06e0594dccd Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Thu, 10 Apr 2014 12:56:41 +0200
Subject: [PATCH 546/567] haskell-yesod-auth: update to version 1.3.0.4

---
 pkgs/development/libraries/haskell/yesod-auth/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/yesod-auth/default.nix b/pkgs/development/libraries/haskell/yesod-auth/default.nix
index 93e1bb9cadd2..182e6bcf5b27 100644
--- a/pkgs/development/libraries/haskell/yesod-auth/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-auth/default.nix
@@ -9,8 +9,8 @@
 
 cabal.mkDerivation (self: {
   pname = "yesod-auth";
-  version = "1.3.0.2";
-  sha256 = "1lx9xz5jrr63256w64isndwr323khsyyn8ah1iv1vy7n54y9afpk";
+  version = "1.3.0.4";
+  sha256 = "0r4xhr9xg6n3jxpj3mrcaf4mgzz8h4is772k84sgnir5my9lrsr7";
   buildDepends = [
     aeson authenticate base16Bytestring blazeHtml blazeMarkup
     cryptohash dataDefault emailValidate fileEmbed hamlet httpConduit

From 8c3a7ea68cb0784c13816c47904a95e09db2a35e Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Thu, 10 Apr 2014 12:56:42 +0200
Subject: [PATCH 547/567] haskell-yesod-form: update to version 1.3.8.2

---
 pkgs/development/libraries/haskell/yesod-form/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/yesod-form/default.nix b/pkgs/development/libraries/haskell/yesod-form/default.nix
index a67eccb00c2a..42e1f13242e8 100644
--- a/pkgs/development/libraries/haskell/yesod-form/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-form/default.nix
@@ -7,8 +7,8 @@
 
 cabal.mkDerivation (self: {
   pname = "yesod-form";
-  version = "1.3.8.1";
-  sha256 = "0cyvyr3whrbswawv5rcfmq9nhk3kf4d3vgfm8z01prcqdsc4yh21";
+  version = "1.3.8.2";
+  sha256 = "0sx2rk4z4hzwz3nzcg487wm5bdpdm612ikp0slfph1wkzc39h12a";
   buildDepends = [
     aeson attoparsec blazeBuilder blazeHtml blazeMarkup byteable
     dataDefault emailValidate hamlet network persistent resourcet

From cf000e0d0fffa14b9c86621ed858da07eaaee2f1 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Thu, 10 Apr 2014 12:56:43 +0200
Subject: [PATCH 548/567] haskell-yesod-persistent: update to version 1.2.2.3

---
 .../libraries/haskell/yesod-persistent/default.nix            | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/development/libraries/haskell/yesod-persistent/default.nix b/pkgs/development/libraries/haskell/yesod-persistent/default.nix
index a96db23f9527..432adeee9af8 100644
--- a/pkgs/development/libraries/haskell/yesod-persistent/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-persistent/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "yesod-persistent";
-  version = "1.2.2.2";
-  sha256 = "112wr85k8a7ah1m5s8b9h1dm3hbglckdhngp12d67rccrr4mmgjq";
+  version = "1.2.2.3";
+  sha256 = "1699grrxb1qwfiivh9ihnczkcbwl4gcqdk7m02lc09r9gjr920p8";
   buildDepends = [
     blazeBuilder conduit persistent persistentTemplate resourcePool
     resourcet transformers yesodCore

From b62ac3995c5ceddc35c45b043d1efc956156995a Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Thu, 10 Apr 2014 23:30:31 +0200
Subject: [PATCH 549/567] haskell-hastache: remove obsolete version 0.5.1

---
 .../libraries/haskell/hastache/0.5.1.nix      | 19 -------------------
 .../hastache/{0.6.0.nix => default.nix}       |  0
 pkgs/top-level/haskell-packages.nix           |  8 ++------
 3 files changed, 2 insertions(+), 25 deletions(-)
 delete mode 100644 pkgs/development/libraries/haskell/hastache/0.5.1.nix
 rename pkgs/development/libraries/haskell/hastache/{0.6.0.nix => default.nix} (100%)

diff --git a/pkgs/development/libraries/haskell/hastache/0.5.1.nix b/pkgs/development/libraries/haskell/hastache/0.5.1.nix
deleted file mode 100644
index 462c76a487eb..000000000000
--- a/pkgs/development/libraries/haskell/hastache/0.5.1.nix
+++ /dev/null
@@ -1,19 +0,0 @@
-{ cabal, blazeBuilder, filepath, HUnit, ieee754, mtl, syb, text
-, transformers, utf8String
-}:
-
-cabal.mkDerivation (self: {
-  pname = "hastache";
-  version = "0.5.1";
-  sha256 = "05lm7mjzc1hamxcj8akq06081bhp907hrjdkhas3wzm6ran6rwn3";
-  buildDepends = [
-    blazeBuilder filepath ieee754 mtl syb text transformers utf8String
-  ];
-  testDepends = [ HUnit mtl syb text ];
-  meta = {
-    homepage = "http://github.com/lymar/hastache";
-    description = "Haskell implementation of Mustache templates";
-    license = self.stdenv.lib.licenses.bsd3;
-    platforms = self.ghc.meta.platforms;
-  };
-})
diff --git a/pkgs/development/libraries/haskell/hastache/0.6.0.nix b/pkgs/development/libraries/haskell/hastache/default.nix
similarity index 100%
rename from pkgs/development/libraries/haskell/hastache/0.6.0.nix
rename to pkgs/development/libraries/haskell/hastache/default.nix
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 81e894db95e1..4cd017471670 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -847,9 +847,7 @@ let result = let callPackage = x : y : modifyPrio (newScope result.finalReturn x
 
   cprngAes = callPackage ../development/libraries/haskell/cprng-aes {};
 
-  criterion = callPackage ../development/libraries/haskell/criterion {
-    hastache = self.hastache_0_5_1;
-  };
+  criterion = callPackage ../development/libraries/haskell/criterion {};
 
   Crypto = callPackage ../development/libraries/haskell/Crypto {};
 
@@ -1329,9 +1327,7 @@ let result = let callPackage = x : y : modifyPrio (newScope result.finalReturn x
 
   haskore = callPackage ../development/libraries/haskell/haskore {};
 
-  hastache_0_5_1 = callPackage ../development/libraries/haskell/hastache/0.5.1.nix {};
-  hastache_0_6_0 = callPackage ../development/libraries/haskell/hastache/0.6.0.nix {};
-  hastache = self.hastache_0_6_0;
+  hastache = callPackage ../development/libraries/haskell/hastache {};
 
   heredoc = callPackage ../development/libraries/haskell/heredoc {};
 

From e2e74154e2e286079b75bab18d4e6b2ba7696893 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= <vcunat@gmail.com>
Date: Fri, 11 Apr 2014 09:44:47 +0200
Subject: [PATCH 550/567] fix tarball (dragonegg missing in llvmPackages on
 darwin)

---
 pkgs/top-level/all-packages.nix | 1 +
 1 file changed, 1 insertion(+)

diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 583a51a5e709..d3882ee625b0 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -2945,6 +2945,7 @@ let
     # until someone solves build problems with _34
     llvm = llvm_33;
     clang = clang_33;
+    dragonegg = null;
   };
   llvmPackages_34 = recurseIntoAttrs (import ../development/compilers/llvm/3.4 {
     inherit stdenv newScope fetchurl;

From 8c12816d594e4cc6ab590012e67cbbaca440e8c4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= <vcunat@gmail.com>
Date: Fri, 11 Apr 2014 09:55:46 +0200
Subject: [PATCH 551/567] pango on darwin: amend the wrong fix

I didn't realize pango doesn't depend on flex directly,
only through introspection which caused build problems by itself, too.
---
 pkgs/development/libraries/pango/default.nix | 2 +-
 pkgs/top-level/all-packages.nix              | 4 +---
 2 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/pkgs/development/libraries/pango/default.nix b/pkgs/development/libraries/pango/default.nix
index fbf3b0f34d40..2dc71bb2d11b 100644
--- a/pkgs/development/libraries/pango/default.nix
+++ b/pkgs/development/libraries/pango/default.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = with stdenv.lib;
-    optional (!stdenv.isDarwin) gobjectIntrospection # build problems
+    optional (!stdenv.isDarwin) gobjectIntrospection # build problems of itself and flex
     ++ optionals stdenv.isDarwin [ gettext fontconfig ];
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index d3882ee625b0..64c91fb05bc3 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -4568,9 +4568,7 @@ let
   };
   cairomm = callPackage ../development/libraries/cairomm { };
 
-  pango = callPackage ../development/libraries/pango (
-    lib.optionalAttrs stdenv.isDarwin { flex = flex_2_5_35; } # flex fails to build
-  );
+  pango = callPackage ../development/libraries/pango { };
   pangomm = callPackage ../development/libraries/pangomm { };
 
   pangox_compat = callPackage ../development/libraries/pangox-compat { };

From f741be954cb408642117f4d63ebf7de7f612c621 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 11 Apr 2014 10:05:12 +0200
Subject: [PATCH 552/567] Offer consistently named attributes for the two
 available flex versions.

---
 .../development/tools/parsing/flex/{default.nix => 2.5.39.nix} | 0
 pkgs/top-level/all-packages.nix                                | 3 ++-
 2 files changed, 2 insertions(+), 1 deletion(-)
 rename pkgs/development/tools/parsing/flex/{default.nix => 2.5.39.nix} (100%)

diff --git a/pkgs/development/tools/parsing/flex/default.nix b/pkgs/development/tools/parsing/flex/2.5.39.nix
similarity index 100%
rename from pkgs/development/tools/parsing/flex/default.nix
rename to pkgs/development/tools/parsing/flex/2.5.39.nix
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 64c91fb05bc3..16e266b59c1f 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -3738,8 +3738,9 @@ let
 
   checkstyle = callPackage ../development/tools/analysis/checkstyle { };
 
-  flex = callPackage ../development/tools/parsing/flex { };
   flex_2_5_35 = callPackage ../development/tools/parsing/flex/2.5.35.nix { };
+  flex_2_5_39 = callPackage ../development/tools/parsing/flex/2.5.39.nix { };
+  flex = flex_2_5_39;
 
   m4 = gnum4;
 

From 6913650adcd72d2f9823bb5a20b8adbcde5c185d Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 11 Apr 2014 10:05:53 +0200
Subject: [PATCH 553/567] maude: use old flex version; the new one causes build
 errors

This issue has been fixed in the latest alpha release.
---
 pkgs/top-level/all-packages.nix | 1 +
 1 file changed, 1 insertion(+)

diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 16e266b59c1f..589ad51ff492 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -3309,6 +3309,7 @@ let
 
   maude = callPackage ../development/interpreters/maude {
     bison = bison2;
+    flex = flex_2_5_35;
   };
 
   octave = callPackage ../development/interpreters/octave {

From e35c2f6d4c8467de94afcf9187c97730341c30ab Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 11 Apr 2014 10:06:06 +0200
Subject: [PATCH 554/567] all-packages.nix: drop trailing whitespace

---
 pkgs/top-level/all-packages.nix | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 589ad51ff492..467d092eab97 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1771,7 +1771,7 @@ let
   cntlm = callPackage ../tools/networking/cntlm { };
 
   pastebinit = callPackage ../tools/misc/pastebinit { };
-  
+
   psmisc = callPackage ../os-specific/linux/psmisc { };
 
   pstoedit = callPackage ../tools/graphics/pstoedit { };
@@ -1911,7 +1911,7 @@ let
   sg3_utils = callPackage ../tools/system/sg3_utils { };
 
   sharutils = callPackage ../tools/archivers/sharutils { };
-  
+
   shotwell = callPackage ../applications/graphics/shotwell { };
 
   shebangfix = callPackage ../tools/misc/shebangfix { };
@@ -2035,7 +2035,7 @@ let
   tcpcrypt = callPackage ../tools/security/tcpcrypt { };
 
   tcpdump = callPackage ../tools/networking/tcpdump { };
-  
+
   tcpflow = callPackage ../tools/networking/tcpflow { };
 
   teamviewer = callPackage_i686 ../applications/networking/remote/teamviewer { };
@@ -5144,7 +5144,7 @@ let
   libpseudo = callPackage ../development/libraries/libpseudo { };
 
   libpwquality = callPackage ../development/libraries/libpwquality { };
-  
+
   libqalculate = callPackage ../development/libraries/libqalculate { };
 
   librsvg = callPackage ../development/libraries/librsvg {
@@ -6225,7 +6225,7 @@ let
   perlArchiveCpio = perlPackages.ArchiveCpio;
 
   perlcritic = perlPackages.PerlCritic;
-  
+
   planetary_annihilation = callPackage ../games/planetaryannihilation { };
 
 
@@ -7040,8 +7040,8 @@ let
     cryptodev = callPackage ../os-specific/linux/cryptodev { };
 
     e1000e = callPackage ../os-specific/linux/e1000e {};
-    
-    v4l2loopback = callPackage ../os-specific/linux/v4l2loopback { }; 
+
+    v4l2loopback = callPackage ../os-specific/linux/v4l2loopback { };
 
     frandom = callPackage ../os-specific/linux/frandom { };
 
@@ -9722,8 +9722,8 @@ let
   mars = callPackage ../games/mars { };
 
   micropolis = callPackage ../games/micropolis { };
-  
-  mnemosyne = callPackage ../games/mnemosyne { 
+
+  mnemosyne = callPackage ../games/mnemosyne {
     inherit (pythonPackages) matplotlib cherrypy sqlite3;
   };
 

From 846906fc53e5cf1b4d6a893bfbfcc6abf6028451 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 11 Apr 2014 11:09:59 +0200
Subject: [PATCH 555/567] ipsec-tools: fix build by passing old version of flex

---
 pkgs/top-level/all-packages.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 467d092eab97..8fe3d87190a6 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1679,7 +1679,7 @@ let
            { hurd = gnu.hurdCrossIntermediate; })
     else null;
 
-  ipsecTools = callPackage ../os-specific/linux/ipsec-tools { };
+  ipsecTools = callPackage ../os-specific/linux/ipsec-tools { flex = flex_2_5_35; };
 
   patch = gnupatch;
 

From b5773eeccb378026be547cc71d6bf5bcb211945c Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 11 Apr 2014 11:41:32 +0200
Subject: [PATCH 556/567] R: update to version 3.1.0

---
 pkgs/applications/science/math/R/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/applications/science/math/R/default.nix b/pkgs/applications/science/math/R/default.nix
index 88f4653cf7b4..4a58c15941c8 100644
--- a/pkgs/applications/science/math/R/default.nix
+++ b/pkgs/applications/science/math/R/default.nix
@@ -5,11 +5,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "R-3.0.3";
+  name = "R-3.1.0";
 
   src = fetchurl {
     url = "http://cran.r-project.org/src/base/R-3/${name}.tar.gz";
-    sha256 = "1mp6zp25nycn8bxnnq97gq6n21c6vprm6qc4drwap57j82azsz5r";
+    sha256 = "1qjzbw341bvi1h4jwbvdkvq8j0z9l3m85mpgrlfw0n2cz2806s4a";
   };
 
   buildInputs = [ blas bzip2 gfortran liblapack libX11 libXmu libXt

From ad65a1e064a8fce60232f09b219c52ea2913e8ee Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 11 Apr 2014 11:47:01 +0200
Subject: [PATCH 557/567] Revert "nixos: fix shell on conatiners"

This reverts commit c69577b7d6ea96cd605043440145ea6e094674b5.
See https://github.com/NixOS/nixpkgs/pull/2198 for further details.
---
 nixos/modules/programs/shadow.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/nixos/modules/programs/shadow.nix b/nixos/modules/programs/shadow.nix
index 7e9133099edf..15b083b72d28 100644
--- a/nixos/modules/programs/shadow.nix
+++ b/nixos/modules/programs/shadow.nix
@@ -94,7 +94,7 @@ in
         groupmod = { rootOK = true; };
         groupmems = { rootOK = true; };
         groupdel = { rootOK = true; };
-        login = { startSession = !config.boot.isContainer; allowNullPassword = true; showMotd = true; updateWtmp = true; };
+        login = { startSession = true; allowNullPassword = true; showMotd = true; updateWtmp = true; };
         chpasswd = { rootOK = true; };
         chgpasswd = { rootOK = true; };
       };

From 2da09363bf49a17ce6ce2ac2d390ee7ca0cc8fa3 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Fri, 11 Apr 2014 11:50:37 +0200
Subject: [PATCH 558/567] nix: Update to 1.7

---
 nixos/modules/services/misc/nix-daemon.nix         |  2 +-
 pkgs/tools/package-management/nix/default.nix      |  6 ++----
 pkgs/tools/package-management/nix/hash-check.patch | 14 --------------
 pkgs/top-level/all-packages.nix                    |  3 +++
 4 files changed, 6 insertions(+), 19 deletions(-)
 delete mode 100644 pkgs/tools/package-management/nix/hash-check.patch

diff --git a/nixos/modules/services/misc/nix-daemon.nix b/nixos/modules/services/misc/nix-daemon.nix
index 785d43973473..bbcf290a7956 100644
--- a/nixos/modules/services/misc/nix-daemon.nix
+++ b/nixos/modules/services/misc/nix-daemon.nix
@@ -253,7 +253,7 @@ in
 
   config = {
 
-    nix.chrootDirs = [ "/dev" "/dev/pts" "/proc" "/bin" ];
+    nix.chrootDirs = [ "/bin" ];
 
     environment.etc."nix/nix.conf".source = nixConf;
 
diff --git a/pkgs/tools/package-management/nix/default.nix b/pkgs/tools/package-management/nix/default.nix
index b02d80078aae..16a276273cc3 100644
--- a/pkgs/tools/package-management/nix/default.nix
+++ b/pkgs/tools/package-management/nix/default.nix
@@ -5,15 +5,13 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "nix-1.6.1";
+  name = "nix-1.7";
 
   src = fetchurl {
     url = "http://nixos.org/releases/nix/${name}/${name}.tar.xz";
-    sha256 = "31d15f99b2405924a4be278334cc973a71999303631e6798c1d294db9be4bf84";
+    sha256 = "349163654f2ae3e1a17fb3da7ed164a4cac153728bbe9a26764e17556d3dcc92";
   };
 
-  patches = [ ./hash-check.patch ];
-
   nativeBuildInputs = [ perl pkgconfig ];
 
   buildInputs = [ curl openssl boehmgc sqlite ];
diff --git a/pkgs/tools/package-management/nix/hash-check.patch b/pkgs/tools/package-management/nix/hash-check.patch
deleted file mode 100644
index 421ebb70a4f8..000000000000
--- a/pkgs/tools/package-management/nix/hash-check.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-commit 11cb4bfb257f18c906ef1d6f14ed450be8fa49fe upstream
-
-diff --git a/src/libstore/build.cc b/src/libstore/build.cc
-index dcd7343..4329d9a 100644
---- a/src/libstore/build.cc
-+++ b/src/libstore/build.cc
-@@ -2749,6 +2749,7 @@ void SubstitutionGoal::finished()
-     logPipe.readSide.close();
- 
-     /* Get the hash info from stdout. */
-+    string dummy = readLine(outPipe.readSide);
-     string expectedHashStr = statusOk(status) ? readLine(outPipe.readSide) : "";
-     outPipe.readSide.close();
-
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 8fe3d87190a6..0d2caf45b108 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -10510,10 +10510,13 @@ let
     stateDir = config.nix.stateDir or "/nix/var";
   };
 
+  nixUnstable = nixStable;
+  /*
   nixUnstable = callPackage ../tools/package-management/nix/unstable.nix {
     storeDir = config.nix.storeDir or "/nix/store";
     stateDir = config.nix.stateDir or "/nix/var";
   };
+  */
 
   nixops = callPackage ../tools/package-management/nixops { };
 

From ed82f188f9aa44d37212235e54d3be995ddc233f Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Fri, 11 Apr 2014 12:54:44 +0200
Subject: [PATCH 559/567] nix-repl: Update

---
 pkgs/tools/package-management/nix-repl/default.nix | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/pkgs/tools/package-management/nix-repl/default.nix b/pkgs/tools/package-management/nix-repl/default.nix
index 648abe882c4f..f812ea58a0b0 100644
--- a/pkgs/tools/package-management/nix-repl/default.nix
+++ b/pkgs/tools/package-management/nix-repl/default.nix
@@ -7,8 +7,8 @@ stdenv.mkDerivation rec {
 
   src = fetchgit {
     url = https://github.com/edolstra/nix-repl.git;
-    rev = "81d658fe4afda234028cd4551e12491db4303957";
-    sha256 = "067mj8as99n0hkrr2qss3y3hnr8c5zy4n8bqx3z900n3j43cwzyc";
+    rev = "1734e8a1491ef831c83c2620b6b0f4a590b67c1f";
+    sha256 = "12fld2780jh3ww2n59s9z7afwjkmfhwh4dqn3wjva4ff8fx3n0mf";
   };
 
   buildInputs = [ nix readline boehmgc ];
@@ -21,8 +21,9 @@ stdenv.mkDerivation rec {
       mkdir -p $out/bin
       g++ -O3 -Wall -std=c++0x \
         -o $out/bin/nix-repl nix-repl.cc \
-        -I${nix}/include/nix -L${nix}/lib/nix \
-        -lformat -lutil -lstore -lexpr -lmain -lreadline -lgc
+        -I${nix}/include/nix \
+        -lnixformat -lnixutil -lnixstore -lnixexpr -lnixmain -lreadline -lgc \
+        -DNIX_VERSION=${(builtins.parseDrvName nix.name).version}
     '';
 
   meta = {

From 62521d9ec65ac7fef9f67b45e101411f8b300d8a Mon Sep 17 00:00:00 2001
From: Mathijs Kwik <mathijs@bluescreen303.nl>
Date: Sun, 2 Feb 2014 20:15:38 +0100
Subject: [PATCH 560/567] openttd: upgrade to 1.4.0

---
 pkgs/games/openttd/default.nix | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pkgs/games/openttd/default.nix b/pkgs/games/openttd/default.nix
index 6b385bc2e564..7e2b4221d523 100644
--- a/pkgs/games/openttd/default.nix
+++ b/pkgs/games/openttd/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "openttd-${version}";
-  version = "1.3.3";
+  version = "1.4.0";
 
   src = fetchurl {
     url = "http://binaries.openttd.org/releases/${version}/${name}-source.tar.xz";
-    sha256 = "0pfagqw8i1c6zrzarlwivrcac8b8ai1inam9qc01hj3h04nfv4b9";
+    sha256 = "0m89pr7m7xg71q1j3869dfrbhv88g90cw9zn0jlpg8crsj4wnnyq";
   };
 
   buildInputs = [ SDL libpng pkgconfig xz zlib freetype fontconfig ];

From d87ae02fc1522d5208fcf833156fe9d7cc9ca36a Mon Sep 17 00:00:00 2001
From: Mathijs Kwik <mathijs@bluescreen303.nl>
Date: Mon, 24 Feb 2014 15:19:23 +0100
Subject: [PATCH 561/567] synergy: upgrade to 1.4.17

---
 pkgs/applications/misc/synergy/cryptopp.patch | 51 ++++++++-----------
 pkgs/applications/misc/synergy/default.nix    | 20 ++++----
 2 files changed, 32 insertions(+), 39 deletions(-)

diff --git a/pkgs/applications/misc/synergy/cryptopp.patch b/pkgs/applications/misc/synergy/cryptopp.patch
index d0aebb872610..1c296423acd6 100644
--- a/pkgs/applications/misc/synergy/cryptopp.patch
+++ b/pkgs/applications/misc/synergy/cryptopp.patch
@@ -1,32 +1,30 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 3b61fc0..2206646 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -133,6 +133,9 @@ if (UNIX)
+diff -urN synergy-1.4.17-Source/CMakeLists.txt synergy-1.4.17-Source-fix/CMakeLists.txt
+--- synergy-1.4.17-Source/CMakeLists.txt	2014-03-14 21:34:19.000000000 +0100
++++ synergy-1.4.17-Source-fix/CMakeLists.txt	2014-04-11 13:37:18.839338710 +0200
+@@ -145,6 +145,9 @@
  	check_type_size(long SIZEOF_LONG)
  	check_type_size(short SIZEOF_SHORT)
  
-+    # let's just assume cryptopp exists (provided by the Nix expression)
-+    list(APPEND libs cryptopp)
++	# let's just assume cryptopp exists (provided by the Nix expression)
++	list(APPEND libs cryptopp)
 +
  	# pthread is used on both Linux and Mac
  	check_library_exists("pthread" pthread_create "" HAVE_PTHREAD)
  	if (HAVE_PTHREAD)
-@@ -303,7 +306,6 @@ if (VNC_SUPPORT)
+@@ -317,7 +320,6 @@
  endif()
  
  add_subdirectory(src)
--add_subdirectory(tools)
+-add_subdirectory(ext)
  
  if (WIN32)
- 	# add /analyze in order to unconver potential bugs in the source code
-diff --git a/src/lib/io/CCryptoMode.h b/src/lib/io/CCryptoMode.h
-index 9b7e8ad..0d659ac 100644
---- a/src/lib/io/CCryptoMode.h
-+++ b/src/lib/io/CCryptoMode.h
-@@ -17,9 +17,9 @@
- 
- #pragma once
+ 	# TODO:	consider using /analyze to uncover potential bugs in the source code.
+diff -urN synergy-1.4.17-Source/src/lib/io/CryptoMode_cryptopp.h synergy-1.4.17-Source-fix/src/lib/io/CryptoMode_cryptopp.h
+--- synergy-1.4.17-Source/src/lib/io/CryptoMode_cryptopp.h	2014-02-28 13:36:45.000000000 +0100
++++ synergy-1.4.17-Source-fix/src/lib/io/CryptoMode_cryptopp.h	2014-04-11 13:36:01.111985556 +0200
+@@ -25,6 +25,6 @@
+ #	pragma GCC system_header
+ #endif 
  
 -#include <cryptopp562/gcm.h>
 -#include <cryptopp562/modes.h>
@@ -34,21 +32,14 @@ index 9b7e8ad..0d659ac 100644
 +#include <cryptopp/gcm.h>
 +#include <cryptopp/modes.h>
 +#include <cryptopp/aes.h>
- #include "ECryptoMode.h"
- #include "CString.h"
+diff -urN synergy-1.4.17-Source/src/lib/io/CryptoStream_cryptopp.h synergy-1.4.17-Source-fix/src/lib/io/CryptoStream_cryptopp.h
+--- synergy-1.4.17-Source/src/lib/io/CryptoStream_cryptopp.h	2014-02-28 13:36:45.000000000 +0100
++++ synergy-1.4.17-Source-fix/src/lib/io/CryptoStream_cryptopp.h	2014-04-11 13:36:07.173013005 +0200
+@@ -25,5 +25,5 @@
+ #	pragma GCC system_header
+ #endif
  
-diff --git a/src/lib/io/CCryptoStream.h b/src/lib/io/CCryptoStream.h
-index 104b1f6..09c4dc4 100644
---- a/src/lib/io/CCryptoStream.h
-+++ b/src/lib/io/CCryptoStream.h
-@@ -20,8 +20,8 @@
- #include "BasicTypes.h"
- #include "CStreamFilter.h"
- #include "CCryptoMode.h"
 -#include <cryptopp562/osrng.h>
 -#include <cryptopp562/sha.h>
 +#include <cryptopp/osrng.h>
 +#include <cryptopp/sha.h>
- 
- class CCryptoOptions;
- 
diff --git a/pkgs/applications/misc/synergy/default.nix b/pkgs/applications/misc/synergy/default.nix
index c01d67943e57..834b514148b6 100644
--- a/pkgs/applications/misc/synergy/default.nix
+++ b/pkgs/applications/misc/synergy/default.nix
@@ -1,29 +1,31 @@
-{ stdenv, fetchurl, cmake, x11, libX11, libXi, libXtst, libXrandr, xinput
-, cryptopp ? null, unzip ? null }:
+{ stdenv, fetchurl, cmake, x11, libX11, libXi, libXtst, libXrandr, xinput, curl
+, cryptopp ? null, unzip }:
 
 assert stdenv.isLinux -> cryptopp != null;
-assert !stdenv.isLinux -> unzip != null;
 
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  name = "synergy-1.4.15";
+  name = "synergy-1.4.17";
 
   src = fetchurl {
-    url = "http://synergy.googlecode.com/files/${name}-Source.tar.gz";
-    sha256 = "0l1mxxky9hacyva0npzkgkwg4wkmihzq3abdrds0w5f6is44adv4";
+    url = "http://fossfiles.com/synergy/${name}-r2055-Source.tar.gz";
+    sha256 = "1mwaapvq9vsm0rdpq99fyzcw6wbp83rg6cylcqcgjjd21c6y9iwm";
   };
 
   patches = optional stdenv.isLinux ./cryptopp.patch;
 
-  postPatch = if stdenv.isLinux then ''
+  postPatch = (if stdenv.isLinux then ''
     sed -i -e '/HAVE_X11_EXTENSIONS_XRANDR_H/c \
       set(HAVE_X11_EXTENSIONS_XRANDR_H true)' CMakeLists.txt
   '' else ''
-    ${unzip}/bin/unzip -d tools/cryptopp562 tools/cryptopp562.zip
+    ${unzip}/bin/unzip -d ext/cryptopp562 ext/cryptopp562.zip
+  '') + ''
+    ${unzip}/bin/unzip -d ext/gmock-1.6.0 ext/gmock-1.6.0.zip
+    ${unzip}/bin/unzip -d ext/gtest-1.6.0 ext/gtest-1.6.0.zip
   '';
 
-  buildInputs = [ cmake x11 libX11 libXi libXtst libXrandr xinput ]
+  buildInputs = [ cmake x11 libX11 libXi libXtst libXrandr xinput curl ]
              ++ optional stdenv.isLinux cryptopp;
 
   # At this moment make install doesn't work for synergy

From 2396e9d036522e4f4aa81a7735ab6241cc5aed88 Mon Sep 17 00:00:00 2001
From: Peter Simons <simons@cryp.to>
Date: Fri, 11 Apr 2014 15:21:38 +0200
Subject: [PATCH 562/567] perlPackages.PackageStash: Revert "update from 0.34
 to 0.36"

This reverts commit 5adbf4d447a4dd1229eaeb0627834e5e444d7083. The update broke
the test suite of perl-Moose [1], which is required by Hydra.

[1] http://hydra.nixos.org/build/10268974
---
 pkgs/top-level/perl-packages.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index df06b82ab298..a6bd4c82e6e0 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -6488,10 +6488,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   PackageStash = buildPerlPackage {
-    name = "Package-Stash-0.36";
+    name = "Package-Stash-0.34";
     src = fetchurl {
-      url = mirror://cpan/authors/id/D/DO/DOY/Package-Stash-0.36.tar.gz;
-      sha256 = "1wbkdkm5gp5cpp84kr9cbbsrg0v908kxrcg4k86mx8ypgj6g8750";
+      url = mirror://cpan/authors/id/D/DO/DOY/Package-Stash-0.34.tar.gz;
+      sha256 = "1674zs96ndq3czs6v8xkdqqz4fnka0i2835nnns9zbw2q01yirj6";
     };
     buildInputs = [ DistCheckConflicts TestFatal TestRequires ];
     propagatedBuildInputs = [ DistCheckConflicts ModuleImplementation PackageDeprecationManager ];

From b8a6eef6fa4641babc2a05118c955026fea9a44d Mon Sep 17 00:00:00 2001
From: "Ricardo M. Correia" <rcorreia@wizy.org>
Date: Fri, 11 Apr 2014 16:36:02 +0200
Subject: [PATCH 563/567] gradm: Attempt to fix build failure by using older
 flex

Thanks to @thoughtpolice for noticing and suggesting the fix!
---
 pkgs/top-level/all-packages.nix | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 0d2caf45b108..6685f2590614 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -6817,7 +6817,9 @@ let
 
   gpm = callPackage ../servers/gpm { };
 
-  gradm = callPackage ../os-specific/linux/gradm { };
+  gradm = callPackage ../os-specific/linux/gradm {
+    flex = flex_2_5_35;
+  };
 
   hdparm = callPackage ../os-specific/linux/hdparm { };
 

From b9281e6a2dd3252052e69e15609b8e871c97c711 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Fri, 11 Apr 2014 16:26:00 +0200
Subject: [PATCH 564/567] Fix NAT module

---
 nixos/modules/services/networking/nat.nix | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/nixos/modules/services/networking/nat.nix b/nixos/modules/services/networking/nat.nix
index d684d8e31222..3d3899a5c41a 100644
--- a/nixos/modules/services/networking/nat.nix
+++ b/nixos/modules/services/networking/nat.nix
@@ -115,7 +115,7 @@ in
             # NAT packets coming from the internal IPs.
             ${concatMapStrings (range: ''
               iptables -t nat -A POSTROUTING \
-                -s '${range}' -o ${cfg.externalInterface} ${dest}}
+                -s '${range}' -o ${cfg.externalInterface} ${dest}
             '') cfg.internalIPs}
 
             echo 1 > /proc/sys/net/ipv4/ip_forward

From 017408e048ae2419baf0adba424b51d85b063a30 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Fri, 11 Apr 2014 16:29:45 +0200
Subject: [PATCH 565/567] =?UTF-8?q?Use=20iptables'=20=E2=80=98-w=E2=80=99?=
 =?UTF-8?q?=20flag?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

This prevents errors like "Another app is currently holding the
xtables lock" if the firewall and NAT services are starting in
parallel.  (Longer term, we should probably move to a single service
for managing the iptables rules.)
---
 nixos/modules/services/networking/firewall.nix |  6 +++---
 nixos/modules/services/networking/nat.nix      | 18 +++++++++---------
 2 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/nixos/modules/services/networking/firewall.nix b/nixos/modules/services/networking/firewall.nix
index 62d92ba50e18..a1ca5dcdcb19 100644
--- a/nixos/modules/services/networking/firewall.nix
+++ b/nixos/modules/services/networking/firewall.nix
@@ -32,9 +32,9 @@ let
     ''
       # Helper command to manipulate both the IPv4 and IPv6 tables.
       ip46tables() {
-        iptables "$@"
+        iptables -w "$@"
         ${optionalString config.networking.enableIPv6 ''
-          ip6tables "$@"
+          ip6tables -w "$@"
         ''}
       }
     '';
@@ -386,7 +386,7 @@ in
 
             # Optionally respond to ICMPv4 pings.
             ${optionalString cfg.allowPing ''
-              iptables -A nixos-fw -p icmp --icmp-type echo-request ${optionalString (cfg.pingLimit != null)
+              iptables -w -A nixos-fw -p icmp --icmp-type echo-request ${optionalString (cfg.pingLimit != null)
                 "-m limit ${cfg.pingLimit} "
               }-j nixos-fw-accept
             ''}
diff --git a/nixos/modules/services/networking/nat.nix b/nixos/modules/services/networking/nat.nix
index 3d3899a5c41a..7f4094de12f1 100644
--- a/nixos/modules/services/networking/nat.nix
+++ b/nixos/modules/services/networking/nat.nix
@@ -95,26 +95,26 @@ in
 
         preStart =
           ''
-            iptables -t nat -F PREROUTING
-            iptables -t nat -F POSTROUTING
-            iptables -t nat -X
+            iptables -w -t nat -F PREROUTING
+            iptables -w -t nat -F POSTROUTING
+            iptables -w -t nat -X
 
             # We can't match on incoming interface in POSTROUTING, so
             # mark packets coming from the external interfaces.
             ${concatMapStrings (iface: ''
-              iptables -t nat -A PREROUTING \
+              iptables -w -t nat -A PREROUTING \
                 -i '${iface}' -j MARK --set-mark 1
             '') cfg.internalInterfaces}
 
             # NAT the marked packets.
             ${optionalString (cfg.internalInterfaces != []) ''
-              iptables -t nat -A POSTROUTING -m mark --mark 1 \
+              iptables -w -t nat -A POSTROUTING -m mark --mark 1 \
                 -o ${cfg.externalInterface} ${dest}
             ''}
 
             # NAT packets coming from the internal IPs.
             ${concatMapStrings (range: ''
-              iptables -t nat -A POSTROUTING \
+              iptables -w -t nat -A POSTROUTING \
                 -s '${range}' -o ${cfg.externalInterface} ${dest}
             '') cfg.internalIPs}
 
@@ -123,9 +123,9 @@ in
 
         postStop =
           ''
-            iptables -t nat -F PREROUTING
-            iptables -t nat -F POSTROUTING
-            iptables -t nat -X
+            iptables -w -t nat -F PREROUTING
+            iptables -w -t nat -F POSTROUTING
+            iptables -w -t nat -X
           '';
       };
   };

From 13185280fee4111dc07f794e528fa3a73f421f3a Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Fri, 11 Apr 2014 17:15:56 +0200
Subject: [PATCH 566/567] Fix tests broken due to the firewall being enabled by
 default

---
 .../continuous-integration/jenkins/default.nix     |  2 +-
 nixos/modules/services/networking/avahi-daemon.nix |  4 ++++
 nixos/tests/bittorrent.nix                         |  8 ++++++--
 nixos/tests/containers.nix                         |  4 +++-
 nixos/tests/firewall.nix                           |  3 ++-
 nixos/tests/installer.nix                          |  2 ++
 nixos/tests/ipv6.nix                               |  1 +
 nixos/tests/jenkins.nix                            | 14 ++++++++++----
 nixos/tests/mumble.nix                             |  1 +
 nixos/tests/mysql-replication.nix                  |  9 +++++----
 nixos/tests/nat.nix                                |  3 +++
 nixos/tests/nfs.nix                                |  2 ++
 nixos/tests/printing.nix                           |  3 ++-
 nixos/tests/proxy.nix                              | 11 +++++------
 nixos/tests/quake3.nix                             |  1 +
 nixos/tests/tomcat.nix                             |  9 ++++-----
 16 files changed, 52 insertions(+), 25 deletions(-)

diff --git a/nixos/modules/services/continuous-integration/jenkins/default.nix b/nixos/modules/services/continuous-integration/jenkins/default.nix
index b264a2e4bb42..23fa32ef511f 100644
--- a/nixos/modules/services/continuous-integration/jenkins/default.nix
+++ b/nixos/modules/services/continuous-integration/jenkins/default.nix
@@ -43,7 +43,7 @@ in {
         default = 8080;
         type = types.uniq types.int;
         description = ''
-          Specifies port number on which the jenkins HTTP interface listens. The default is 8080
+          Specifies port number on which the jenkins HTTP interface listens. The default is 8080.
         '';
       };
 
diff --git a/nixos/modules/services/networking/avahi-daemon.nix b/nixos/modules/services/networking/avahi-daemon.nix
index 2256de89630d..d7dfca2c8dc9 100644
--- a/nixos/modules/services/networking/avahi-daemon.nix
+++ b/nixos/modules/services/networking/avahi-daemon.nix
@@ -142,6 +142,10 @@ in
     services.dbus.enable = true;
     services.dbus.packages = [avahi];
 
+    # Enabling Avahi without exposing it in the firewall doesn't make
+    # sense.
+    networking.firewall.allowedUDPPorts = [ 5353 ];
+
   };
 
 }
diff --git a/nixos/tests/bittorrent.nix b/nixos/tests/bittorrent.nix
index 6e67edb0b820..f84b65699d36 100644
--- a/nixos/tests/bittorrent.nix
+++ b/nixos/tests/bittorrent.nix
@@ -33,6 +33,8 @@ in
           services.httpd.enable = true;
           services.httpd.adminAddr = "foo@example.org";
           services.httpd.documentRoot = "/tmp";
+
+          networking.firewall.enable = false; # FIXME: figure out what ports we actually need
         };
 
       router =
@@ -50,11 +52,13 @@ in
           virtualisation.vlans = [ 2 ];
           networking.defaultGateway =
             nodes.router.config.networking.interfaces.eth2.ipAddress;
+          networking.firewall.enable = false;
         };
 
       client2 =
         { config, pkgs, ... }:
         { environment.systemPackages = [ pkgs.transmission ];
+          networking.firewall.enable = false;
         };
     };
 
@@ -66,8 +70,8 @@ in
       # Enable NAT on the router and start miniupnpd.
       $router->waitForUnit("nat");
       $router->succeed(
-          "iptables -t nat -N MINIUPNPD",
-          "iptables -t nat -A PREROUTING -i eth1 -j MINIUPNPD",
+          "iptables -w -t nat -N MINIUPNPD",
+          "iptables -w -t nat -A PREROUTING -i eth1 -j MINIUPNPD",
           "echo 1 > /proc/sys/net/ipv4/ip_forward",
           "miniupnpd -f ${miniupnpdConf nodes}"
       );
diff --git a/nixos/tests/containers.nix b/nixos/tests/containers.nix
index d72e80b71aff..06b793ed7ac1 100644
--- a/nixos/tests/containers.nix
+++ b/nixos/tests/containers.nix
@@ -17,6 +17,8 @@
           config =
             { services.httpd.enable = true;
               services.httpd.adminAddr = "foo@example.org";
+              networking.firewall.allowedTCPPorts = [ 80 ];
+              networking.firewall.allowPing = true;
             };
         };
 
@@ -65,7 +67,7 @@
       $machine->succeed("nixos-container start $id1");
 
       # Execute commands via the root shell.
-      $machine->succeed("echo uname | nixos-container root-shell $id1") =~ /Linux/;
+      $machine->succeed("nixos-container run $id1 -- uname") =~ /Linux/;
       $machine->succeed("nixos-container set-root-password $id1 foobar");
 
       # Destroy the containers.
diff --git a/nixos/tests/firewall.nix b/nixos/tests/firewall.nix
index de32b98e5d2f..15653dedf3ca 100644
--- a/nixos/tests/firewall.nix
+++ b/nixos/tests/firewall.nix
@@ -17,6 +17,7 @@
         { config, pkgs, ... }:
         { services.httpd.enable = true;
           services.httpd.adminAddr = "foo@example.org";
+          networking.firewall.enable = false;
         };
     };
 
@@ -33,7 +34,7 @@
       $walled->succeed("curl -v http://localhost/ >&2");
 
       # Connections to the firewalled machine should fail.
-      $attacker->fail("curl -v http://walled/ >&2");
+      $attacker->fail("curl --fail --connect-timeout 2 http://walled/ >&2");
       $attacker->fail("ping -c 1 walled >&2");
 
       # Outgoing connections/pings should still work.
diff --git a/nixos/tests/installer.nix b/nixos/tests/installer.nix
index 151458fbd5ee..b0c0aa328f00 100644
--- a/nixos/tests/installer.nix
+++ b/nixos/tests/installer.nix
@@ -79,6 +79,8 @@ let
       virtualisation.writableStore = true;
       virtualisation.pathsInNixDB = channelContents ++ [ pkgs.hello.src ];
       virtualisation.memorySize = 768;
+
+      networking.firewall.allowedTCPPorts = [ 80 ];
     };
 
   channelContents = [ pkgs.rlwrap ];
diff --git a/nixos/tests/ipv6.nix b/nixos/tests/ipv6.nix
index 29d675e180a3..48c20d7f5c92 100644
--- a/nixos/tests/ipv6.nix
+++ b/nixos/tests/ipv6.nix
@@ -12,6 +12,7 @@
         { config, pkgs, ... }:
         { services.httpd.enable = true;
           services.httpd.adminAddr = "foo@example.org";
+          networking.firewall.allowedTCPPorts = [ 80 ];
         };
 
       router =
diff --git a/nixos/tests/jenkins.nix b/nixos/tests/jenkins.nix
index e6524ec56538..402234827914 100644
--- a/nixos/tests/jenkins.nix
+++ b/nixos/tests/jenkins.nix
@@ -3,21 +3,27 @@
 #   2. jenkins user can be extended on both master and slave
 #   3. jenkins service not started on slave node
 { pkgs, ... }:
+
 {
   nodes = {
-    master = { pkgs, config, ... }: {
-        services.jenkins.enable = true;
+
+    master =
+      { config, pkgs, ... }:
+      { services.jenkins.enable = true;
 
         # should have no effect
         services.jenkinsSlave.enable = true;
 
         users.extraUsers.jenkins.extraGroups = [ "users" ];
       };
-    slave = { pkgs, config, ... }: {
-        services.jenkinsSlave.enable = true;
+
+    slave =
+      { config, pkgs, ... }:
+      { services.jenkinsSlave.enable = true;
 
         users.extraUsers.jenkins.extraGroups = [ "users" ];
       };
+
   };
 
   testScript = ''
diff --git a/nixos/tests/mumble.nix b/nixos/tests/mumble.nix
index 509742f2899b..10658eb5f02a 100644
--- a/nixos/tests/mumble.nix
+++ b/nixos/tests/mumble.nix
@@ -11,6 +11,7 @@ in
     server = { config, pkgs, ... }: {
       services.murmur.enable       = true;
       services.murmur.registerName = "NixOS tests";
+      networking.firewall.allowedTCPPorts = [ config.services.murmur.port ];
     };
 
     client1 = client;
diff --git a/nixos/tests/mysql-replication.nix b/nixos/tests/mysql-replication.nix
index f8c82f7ce9c8..44586322600d 100644
--- a/nixos/tests/mysql-replication.nix
+++ b/nixos/tests/mysql-replication.nix
@@ -15,10 +15,11 @@ in
         services.mysql.replication.role = "master";
         services.mysql.initialDatabases = [ { name = "testdb"; schema = ./testdb.sql; } ];
         services.mysql.initialScript = pkgs.writeText "initmysql"
-        ''
-          create user '${replicateUser}'@'%' identified by '${replicatePassword}';
-          grant replication slave on *.* to '${replicateUser}'@'%';
-        '';
+          ''
+            create user '${replicateUser}'@'%' identified by '${replicatePassword}';
+            grant replication slave on *.* to '${replicateUser}'@'%';
+          '';
+        networking.firewall.allowedTCPPorts = [ 3306 ];
       };
 
     slave1 =
diff --git a/nixos/tests/nat.nix b/nixos/tests/nat.nix
index a13714d60a94..259ab99d3016 100644
--- a/nixos/tests/nat.nix
+++ b/nixos/tests/nat.nix
@@ -12,6 +12,7 @@
     { client =
         { config, pkgs, nodes, ... }:
         { virtualisation.vlans = [ 1 ];
+          networking.firewall.allowPing = true;
           networking.defaultGateway =
             nodes.router.config.networking.interfaces.eth2.ipAddress;
         };
@@ -19,6 +20,7 @@
       router =
         { config, pkgs, ... }:
         { virtualisation.vlans = [ 2 1 ];
+          networking.firewall.allowPing = true;
           networking.nat.enable = true;
           networking.nat.internalIPs = [ "192.168.1.0/24" ];
           networking.nat.externalInterface = "eth1";
@@ -27,6 +29,7 @@
       server =
         { config, pkgs, ... }:
         { virtualisation.vlans = [ 2 ];
+          networking.firewall.enable = false;
           services.httpd.enable = true;
           services.httpd.adminAddr = "foo@example.org";
           services.vsftpd.enable = true;
diff --git a/nixos/tests/nfs.nix b/nixos/tests/nfs.nix
index 51abf57e1b75..7bc99aef3b5e 100644
--- a/nixos/tests/nfs.nix
+++ b/nixos/tests/nfs.nix
@@ -13,6 +13,7 @@ let
             options = "vers=${toString version}";
           }
         ];
+      networking.firewall.enable = false; # FIXME: only open statd
     };
 
 in
@@ -31,6 +32,7 @@ in
               /data 192.168.1.0/255.255.255.0(rw,no_root_squash,no_subtree_check,fsid=0)
             '';
           services.nfs.server.createMountPoints = true;
+          networking.firewall.enable = false; # FIXME: figure out what ports need to be allowed
         };
     };
 
diff --git a/nixos/tests/printing.nix b/nixos/tests/printing.nix
index 13cc3115d50e..b5ca0f25e21c 100644
--- a/nixos/tests/printing.nix
+++ b/nixos/tests/printing.nix
@@ -17,6 +17,7 @@
               Allow from all
             </Location>
           '';
+        networking.firewall.allowedTCPPorts = [ 631 ];
       };
 
     client =
@@ -37,7 +38,7 @@
       $client->succeed("lpstat -H") =~ "/var/run/cups/cups.sock" or die;
       $client->succeed("curl --fail http://localhost:631/");
       $client->succeed("curl --fail http://server:631/");
-      $server->fail("curl --fail http://client:631/");
+      $server->fail("curl --fail --connect-timeout 2  http://client:631/");
 
       # Add a HP Deskjet printer connected via USB to the server.
       $server->succeed("lpadmin -p DeskjetLocal -v usb://HP/Deskjet%205400%20series?serial=TH93I152S123XY -m 'drv:///sample.drv/deskjet.ppd' -E");
diff --git a/nixos/tests/proxy.nix b/nixos/tests/proxy.nix
index 3b79c16ea2c4..dd64ca02e169 100644
--- a/nixos/tests/proxy.nix
+++ b/nixos/tests/proxy.nix
@@ -5,12 +5,10 @@ let
   backend =
     { config, pkgs, ... }:
 
-    {
-      services.openssh.enable = true;
-
-      services.httpd.enable = true;
+    { services.httpd.enable = true;
       services.httpd.adminAddr = "foo@example.org";
       services.httpd.documentRoot = "${pkgs.valgrind}/share/doc/valgrind/html";
+      networking.firewall.allowedTCPPorts = [ 80 ];
     };
 
 in
@@ -21,8 +19,7 @@ in
     { proxy =
         { config, pkgs, nodes, ... }:
 
-        {
-          services.httpd.enable = true;
+        { services.httpd.enable = true;
           services.httpd.adminAddr = "bar@example.org";
           services.httpd.extraModules = ["proxy_balancer"];
 
@@ -50,6 +47,8 @@ in
               # For testing; don't want to wait forever for dead backend servers.
               ProxyTimeout      5
             '';
+
+          networking.firewall.allowedTCPPorts = [ 80 ];
         };
 
       backend1 = backend;
diff --git a/nixos/tests/quake3.nix b/nixos/tests/quake3.nix
index fefbd75b4a3c..2ebac84ca06b 100644
--- a/nixos/tests/quake3.nix
+++ b/nixos/tests/quake3.nix
@@ -37,6 +37,7 @@ rec {
                 "'+map q3dm7' '+addbot grunt' '+addbot daemia' 2> /tmp/log";
             };
           nixpkgs.config.packageOverrides = overrides;
+          networking.firewall.allowedUDPPorts = [ 27960 ];
         };
 
       client1 = client;
diff --git a/nixos/tests/tomcat.nix b/nixos/tests/tomcat.nix
index 6bc88ec82fa2..6ec21a721924 100644
--- a/nixos/tests/tomcat.nix
+++ b/nixos/tests/tomcat.nix
@@ -5,13 +5,12 @@
     server =
       { pkgs, config, ... }:
 
-      {
-        services.tomcat.enable = true;
+      { services.tomcat.enable = true;
         services.httpd.enable = true;
         services.httpd.adminAddr = "foo@bar.com";
-        services.httpd.extraSubservices = [
-          { serviceType = "tomcat-connector"; }
-        ];
+        services.httpd.extraSubservices =
+          [ { serviceType = "tomcat-connector"; } ];
+        networking.firewall.allowedTCPPorts = [ 80 ];
       };
 
     client = { };

From e2bc9a3d14d08ddfaeb08b02065a6adb026e7582 Mon Sep 17 00:00:00 2001
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Fri, 11 Apr 2014 17:16:23 +0200
Subject: [PATCH 567/567] Include Archive::Cpio in the installation CD

http://hydra.nixos.org/build/10268978
---
 nixos/modules/installer/cd-dvd/installation-cd-base.nix | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/nixos/modules/installer/cd-dvd/installation-cd-base.nix b/nixos/modules/installer/cd-dvd/installation-cd-base.nix
index 07c054b391af..74a2f50f027b 100644
--- a/nixos/modules/installer/cd-dvd/installation-cd-base.nix
+++ b/nixos/modules/installer/cd-dvd/installation-cd-base.nix
@@ -29,8 +29,9 @@ with pkgs.lib;
   boot.kernel.sysctl."vm.overcommit_memory" = "1";
 
   # To speed up installation a little bit, include the complete stdenv
-  # in the Nix store on the CD.
-  isoImage.storeContents = [ pkgs.stdenv pkgs.busybox ];
+  # in the Nix store on the CD.  Archive::Cpio is needed for the
+  # initrd builder.
+  isoImage.storeContents = [ pkgs.stdenv pkgs.busybox pkgs.perlPackages.ArchiveCpio ];
 
   # EFI booting
   isoImage.makeEfiBootable = true;