about summary refs log tree commit diff
path: root/pkgs/top-level
diff options
context:
space:
mode:
authorWilliam A. Kennington III <william@wkennington.com>2015-10-02 12:41:04 -0700
committerWilliam A. Kennington III <william@wkennington.com>2015-10-02 12:41:04 -0700
commited71860928c2c645d388ef55b51623c42b948596 (patch)
treed047ab77f7dd7fc66adfc46cae3e34163ea2ef61 /pkgs/top-level
parent9f3c0d9967548602a10ccfa12f1327cbef86c894 (diff)
parenta27ca029ee2b39e04d7d2a516a7228f4b62067fb (diff)
downloadnixlib-ed71860928c2c645d388ef55b51623c42b948596.tar
nixlib-ed71860928c2c645d388ef55b51623c42b948596.tar.gz
nixlib-ed71860928c2c645d388ef55b51623c42b948596.tar.bz2
nixlib-ed71860928c2c645d388ef55b51623c42b948596.tar.lz
nixlib-ed71860928c2c645d388ef55b51623c42b948596.tar.xz
nixlib-ed71860928c2c645d388ef55b51623c42b948596.tar.zst
nixlib-ed71860928c2c645d388ef55b51623c42b948596.zip
Merge branch 'staging.upstream' into staging.post-15.06
Diffstat (limited to 'pkgs/top-level')
-rw-r--r--pkgs/top-level/all-packages.nix472
-rw-r--r--pkgs/top-level/emacs-packages.nix124
-rw-r--r--pkgs/top-level/go-packages.nix75
-rw-r--r--pkgs/top-level/haskell-packages.nix11
-rw-r--r--pkgs/top-level/perl-packages.nix34
-rw-r--r--pkgs/top-level/python-packages.nix449
-rw-r--r--pkgs/top-level/release-small.nix1
-rw-r--r--pkgs/top-level/rust-packages.nix6
8 files changed, 841 insertions, 331 deletions
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 8792976d4a56..cfc7d8b5d43d 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -181,17 +181,6 @@ let
   path = ../..;
 
 
-  ### Symbolic names.
-
-  x11 = xlibsWrapper;
-
-  # `xlibs' is the set of X library components.  This used to be the
-  # old modular X libraries project (called `xlibs') but now it's just
-  # the set of packages in the modular X.org tree (which also includes
-  # non-library components like the server, drivers, fonts, etc.).
-  xlibs = xorg // {xlibs = xlibsWrapper;};
-
-
   ### Helper functions.
 
   inherit lib config stdenvAdapters;
@@ -269,7 +258,7 @@ let
   autonix = import ../build-support/autonix { inherit pkgs; };
 
   autoreconfHook = makeSetupHook
-    { substitutions = { inherit autoconf automake libtool gettext; }; }
+    { substitutions = { inherit autoconf automake gettext libtool; }; }
     ../build-support/setup-hooks/autoreconf.sh;
 
   buildEnv = callPackage ../build-support/buildenv {};
@@ -610,6 +599,8 @@ let
 
   apg = callPackage ../tools/security/apg { };
 
+  bonnie = callPackage ../tools/filesystems/bonnie { };
+
   grc = callPackage ../tools/misc/grc { };
 
   lastpass-cli = callPackage ../tools/security/lastpass-cli { };
@@ -637,7 +628,9 @@ let
 
   inherit (androidenv) androidsdk_4_4 androidndk;
 
-  aria2 = callPackage ../tools/networking/aria2 { };
+  aria2 = callPackage ../tools/networking/aria2 {
+    inherit (darwin.apple_sdk.frameworks) Security;
+  };
   aria = aria2;
 
   at = callPackage ../tools/system/at { };
@@ -814,6 +807,8 @@ let
 
   ddate = callPackage ../tools/misc/ddate { };
 
+  deis = goPackages.deis.bin // { outputs = [ "bin" ]; };
+
   dfilemanager = callPackage ../applications/misc/dfilemanager { };
 
   diagrams-builder = callPackage ../tools/graphics/diagrams-builder {
@@ -1006,7 +1001,7 @@ let
 
   davix = callPackage ../tools/networking/davix { };
 
-  cantata = callPackage ../applications/audio/cantata { };
+  cantata = qt5Libs.callPackage ../applications/audio/cantata { };
 
   can-utils = callPackage ../os-specific/linux/can-utils { };
 
@@ -1143,7 +1138,7 @@ let
 
   convmv = callPackage ../tools/misc/convmv { };
 
-  cool-retro-term = callPackage ../applications/misc/cool-retro-term { };
+  cool-retro-term = qt5Libs.callPackage ../applications/misc/cool-retro-term { };
 
   coreutils = callPackage ../tools/misc/coreutils {
     aclSupport = stdenv.isLinux;
@@ -1391,6 +1386,8 @@ let
 
   euca2ools = callPackage ../tools/virtualization/euca2ools { };
 
+  eventstat = callPackage ../os-specific/linux/eventstat { };
+
   evtest = callPackage ../applications/misc/evtest { };
 
   exempi = callPackage ../development/libraries/exempi { };
@@ -1585,6 +1582,8 @@ let
 
   gitfs = callPackage ../tools/filesystems/gitfs { };
 
+  gitinspector = callPackage ../applications/version-management/gitinspector { };
+
   gitlab = callPackage ../applications/version-management/gitlab {
     ruby = ruby_2_1_3;
   };
@@ -1674,7 +1673,7 @@ let
   graphviz = callPackage ../tools/graphics/graphviz { };
 
   graphviz-nox = callPackage ../tools/graphics/graphviz {
-    xlibs = null;
+    xorg = null;
     libdevil = libdevil-nox;
   };
 
@@ -1702,7 +1701,7 @@ let
 
   calamares = callPackage ../tools/misc/calamares rec {
     python = python3;
-    boost = callPackage ../development/libraries/boost/1.57.nix { python=python3; };
+    boost = pkgs.boost.override { python=python3; };
     libyamlcpp = callPackage ../development/libraries/libyaml-cpp { makePIC=true; boost=boost; };
     inherit (kf5_stable) extra-cmake-modules kconfig ki18n kcoreaddons solid;
   };
@@ -1862,8 +1861,12 @@ let
   ifuse = callPackage ../tools/filesystems/ifuse/default.nix { };
 
   ihaskell = callPackage ../development/tools/haskell/ihaskell/wrapper.nix {
-    inherit (pythonPackages) ipython;
     inherit (haskellPackages) ihaskell ghcWithPackages;
+
+    ipython = pythonFull.buildEnv.override {
+      extraLibs = with pythonPackages; [ ipython ipykernel jupyter_client notebook ];
+    };
+
     packages = config.ihaskell.packages or (self: []);
   };
 
@@ -1877,9 +1880,11 @@ let
 
   inetutils = callPackage ../tools/networking/inetutils { };
 
-  innoextract = callPackage ../tools/archivers/innoextract {};
+  innoextract = callPackage ../tools/archivers/innoextract { };
 
-  ioping = callPackage ../tools/system/ioping {};
+  ioping = callPackage ../tools/system/ioping { };
+
+  iops = callPackage ../tools/system/iops { };
 
   iodine = callPackage ../tools/networking/iodine { };
 
@@ -1891,6 +1896,8 @@ let
   iperf3 = callPackage ../tools/networking/iperf/3.nix { };
   iperf = iperf3;
 
+  ipfs = goPackages.ipfs.bin // { outputs = [ "bin" ]; };
+
   ipmitool = callPackage ../tools/system/ipmitool {
     static = false;
   };
@@ -2011,10 +2018,11 @@ let
 
   ninka = callPackage ../development/tools/misc/ninka { };
 
-  nodejs-0_12 = callPackage ../development/web/nodejs {
-    libuv = libuvVersions.v1_6_1;
+  nodejs-4_1 = callPackage ../development/web/nodejs {
     libtool = darwin.cctools;
+    openssl = openssl_1_0_2;
   };
+
   nodejs-0_10 = callPackage ../development/web/nodejs/v0_10.nix {
     libtool = darwin.cctools;
     inherit (darwin.apple_sdk.frameworks) CoreServices ApplicationServices Carbon Foundation;
@@ -2023,20 +2031,16 @@ let
   nodejs = if stdenv.system == "armv5tel-linux" then
     nodejs-0_10
   else
-    nodejs-0_12;
+    nodejs-4_1;
 
-  nodePackages_0_12 = callPackage ./node-packages.nix { self = nodePackages_0_12; nodejs = nodejs-0_12; };
+  nodePackages_4_1 = recurseIntoAttrs (callPackage ./node-packages.nix { self = nodePackages_4_1; nodejs = nodejs-4_1; });
 
   nodePackages_0_10 = callPackage ./node-packages.nix { self = nodePackages_0_10; nodejs = nodejs-0_10; };
 
   nodePackages = if stdenv.system == "armv5tel-linux" then
     nodePackages_0_10
   else
-    nodePackages_0_12;
-
-  iojs = callPackage ../development/web/iojs { libuv = libuvVersions.v1_6_1; };
-
-  iojsPackages = callPackage ./node-packages.nix { self = iojsPackages; nodejs = iojs; };
+    nodePackages_4_1;
 
   npm2nix = nodePackages.npm2nix;
 
@@ -2227,6 +2231,8 @@ let
 
   modemmanager = callPackage ../tools/networking/modemmanager {};
 
+  modsecurity_standalone = callPackage ../tools/security/modsecurity { };
+
   monit = callPackage ../tools/system/monit { };
 
   moreutils = callPackage ../tools/misc/moreutils {
@@ -2242,6 +2248,8 @@ let
 
   mpage = callPackage ../tools/text/mpage { };
 
+  mpw = callPackage ../tools/security/mpw { };
+
   mr = callPackage ../applications/version-management/mr { };
 
   mrtg = callPackage ../tools/misc/mrtg { };
@@ -3154,6 +3162,8 @@ let
 
   tmsu = callPackage ../tools/filesystems/tmsu { };
 
+  toilet = callPackage ../tools/misc/toilet { };
+
   tor = callPackage ../tools/security/tor { };
 
   tor-arm = callPackage ../tools/security/tor/tor-arm.nix { };
@@ -3271,6 +3281,8 @@ let
     inherit (gnome3) gexiv2;
   };
 
+  vit = callPackage ../applications/misc/vit { };
+
   vnc2flv = callPackage ../tools/video/vnc2flv {};
 
   vncrec = builderDefsPackage (callPackage ../tools/video/vncrec) {};
@@ -3409,8 +3421,10 @@ let
   uptimed = callPackage ../tools/system/uptimed { };
 
   urjtag = callPackage ../tools/misc/urjtag {
+    svfSupport = true;
+    bsdlSupport = true;
+    staplSupport = true;
     jedecSupport = true;
-    pythonBindings = true;
   };
 
   urlwatch = callPackage ../tools/networking/urlwatch { };
@@ -3443,6 +3457,7 @@ let
 
   wget = callPackage ../tools/networking/wget {
     inherit (perlPackages) LWP;
+    libpsl = null;
   };
 
   which = callPackage ../tools/system/which { };
@@ -3570,6 +3585,8 @@ let
   zinnia = callPackage ../tools/inputmethods/zinnia { };
   tegaki-zinnia-japanese = callPackage ../tools/inputmethods/tegaki-zinnia-japanese { };
 
+  zimreader = callPackage ../tools/text/zimreader { };
+
   zimwriterfs = callPackage ../tools/text/zimwriterfs { };
 
   zip = callPackage ../tools/archivers/zip { };
@@ -3897,7 +3914,7 @@ let
     inherit zip unzip zlib boehmgc gettext pkgconfig perl;
     inherit gtk;
     inherit (gnome) libart_lgpl;
-    inherit (xlibs) libX11 libXt libSM libICE libXtst libXi libXrender
+    inherit (xorg) libX11 libXt libSM libICE libXtst libXi libXrender
       libXrandr xproto renderproto xextproto inputproto randrproto;
   });
 
@@ -3982,6 +3999,7 @@ let
   haskellPackages = haskell.packages.ghc7102.override {
     overrides = config.haskellPackageOverrides or (self: super: {});
   };
+  inherit (haskellPackages) ghc cabal-install stack;
 
   haxe = callPackage ../development/compilers/haxe {
     inherit (ocamlPackages) camlp4;
@@ -4130,7 +4148,7 @@ let
   llvm_34 = llvmPackages_34.llvm;
   llvm_33 = callPackage ../development/compilers/llvm/3.3/llvm.nix { };
 
-  llvmPackages = recurseIntoAttrs llvmPackages_36;
+  llvmPackages = recurseIntoAttrs llvmPackages_37;
 
   llvmPackagesSelf = llvmPackages_34.override {
     stdenv = libcxxStdenv;
@@ -4369,6 +4387,10 @@ let
 
     fix = callPackage ../development/ocaml-modules/fix { };
 
+    fontconfig = callPackage ../development/ocaml-modules/fontconfig {
+      inherit (pkgs) fontconfig;
+    };
+
     functory = callPackage ../development/ocaml-modules/functory { };
 
     herelib = callPackage ../development/ocaml-modules/herelib { };
@@ -4664,10 +4686,12 @@ let
   rustPlatform = rustStable;
 
   rustStable = recurseIntoAttrs (makeRustPlatform rustc cargo rustStable);
-  rustUnstable = recurseIntoAttrs (makeRustPlatform rustcMaster cargo rustUnstable);
+  rustUnstable = recurseIntoAttrs (makeRustPlatform rustcMaster
+    (cargo.override { rustPlatform = rustUnstableCargoPlatform;  }) rustUnstable);
 
   # rust platform to build cargo itself (with cargoSnapshot)
   rustCargoPlatform = makeRustPlatform rustc cargoSnapshot.cargo rustCargoPlatform;
+  rustUnstableCargoPlatform = makeRustPlatform rustcMaster cargoSnapshot.cargo rustUnstableCargoPlatform;
 
   makeRustPlatform = rustc: cargo: self:
     let
@@ -4683,9 +4707,7 @@ let
   rustfmt = callPackage ../development/tools/rust/rustfmt { };
 
   sbclBootstrap = callPackage ../development/compilers/sbcl/bootstrap.nix {};
-  sbcl = callPackage ../development/compilers/sbcl {
-    clisp = clisp;
-  };
+  sbcl = callPackage ../development/compilers/sbcl {};
   # For StumpWM
   sbcl_1_2_5 = callPackage ../development/compilers/sbcl/1.2.5.nix {
     clisp = clisp;
@@ -5074,23 +5096,13 @@ let
   bundlerEnv = callPackage ../development/interpreters/ruby/bundler-env { };
 
   ruby_1_8_7 = callPackage ../development/interpreters/ruby/ruby-1.8.7.nix { };
-  ruby_1_9_3 = callPackage ../development/interpreters/ruby/ruby-1.9.3.nix {
-    inherit (darwin) libobjc;
-  };
-  ruby_2_0_0 = callPackage ../development/interpreters/ruby/ruby-2.0.0.nix { };
-  ruby_2_1_0 = callPackage ../development/interpreters/ruby/ruby-2.1.0.nix { };
-  ruby_2_1_1 = callPackage ../development/interpreters/ruby/ruby-2.1.1.nix { };
-  ruby_2_1_2 = callPackage ../development/interpreters/ruby/ruby-2.1.2.nix { };
-  ruby_2_1_3 = callPackage ../development/interpreters/ruby/ruby-2.1.3.nix { };
-  ruby_2_1_6 = callPackage ../development/interpreters/ruby/ruby-2.1.6.nix {
-    inherit (darwin) libobjc libunwind;
-  };
-  ruby_2_2_0 = callPackage ../development/interpreters/ruby/ruby-2.2.0.nix {
-    inherit (darwin) libobjc libunwind;
-  };
-  ruby_2_2_2 = callPackage ../development/interpreters/ruby/ruby-2.2.2.nix {
-    inherit (darwin) libobjc libunwind;
-  };
+  inherit (callPackage ../development/interpreters/ruby {})
+    # TODO: uncomment when ruby_1_8_7 doesn't need autoconf
+    # ruby_1_8_7
+    ruby_1_9_3
+    ruby_2_0_0
+    ruby_2_1_0 ruby_2_1_1 ruby_2_1_2 ruby_2_1_3 ruby_2_1_6
+    ruby_2_2_0 ruby_2_2_2;
 
   # Ruby aliases
   ruby = ruby_2_2;
@@ -5452,6 +5464,7 @@ let
 
   doxygen = callPackage ../development/tools/documentation/doxygen {
     qt4 = null;
+    inherit (darwin.apple_sdk.frameworks) CoreServices;
   };
 
   doxygen_gui = lowPrio (doxygen.override { inherit qt4; });
@@ -5510,6 +5523,8 @@ let
 
   gob2 = callPackage ../development/tools/misc/gob2 { };
 
+  gotty = goPackages.gotty.bin // { outputs = [ "bin" ]; };
+
   gradle = callPackage ../development/tools/build-managers/gradle { };
 
   gperf = callPackage ../development/tools/misc/gperf { };
@@ -5566,6 +5581,7 @@ let
 
   lemon = callPackage ../development/tools/parsing/lemon { };
 
+
   libtool = libtool_2;
 
   libtool_1_5 = callPackage ../development/tools/misc/libtool { };
@@ -5827,10 +5843,10 @@ let
 
   accelio = callPackage ../development/libraries/accelio { };
 
-  accounts-qt = callPackage ../development/libraries/accounts-qt { };
-
   accountsservice = callPackage ../development/libraries/accountsservice { };
 
+  accounts-qt = callPackage ../development/libraries/accounts-qt/old.nix {};
+
   acl = callPackage ../development/libraries/acl { };
 
   activemq = callPackage ../development/libraries/apache-activemq { };
@@ -5984,6 +6000,10 @@ let
     cogl = cogl_1_20;
   };
 
+  clutter_1_24 = callPackage ../development/libraries/clutter/1.24.nix {
+    cogl = cogl_1_22;
+  };
+
   clutter-gst = callPackage ../development/libraries/clutter-gst { };
 
   clutter-gst_3_0 = callPackage ../development/libraries/clutter-gst/3.0.nix {
@@ -6002,6 +6022,8 @@ let
 
   cogl_1_20 = callPackage ../development/libraries/cogl/1.20.nix { };
 
+  cogl_1_22 = callPackage ../development/libraries/cogl/1.22.nix { };
+
   coin3d = callPackage ../development/libraries/coin3d { };
 
   CoinMP = callPackage ../development/libraries/CoinMP { };
@@ -6014,6 +6036,8 @@ let
 
   ctl = callPackage ../development/libraries/ctl { };
 
+  ctpp2 = callPackage ../development/libraries/ctpp2 { };
+
   cpp-netlib = callPackage ../development/libraries/cpp-netlib { };
 
   cppunit = callPackage ../development/libraries/cppunit { };
@@ -6258,6 +6282,8 @@ let
 
   libgit2 = callPackage ../development/libraries/git2 { };
 
+  libgit2_0_21 = callPackage ../development/libraries/git2/0.21.nix { };
+
   glew = callPackage ../development/libraries/glew { };
 
   glfw = glfw3;
@@ -6405,7 +6431,7 @@ let
 
   grantlee = callPackage ../development/libraries/grantlee { };
 
-  grantlee5 = callPackage ../development/libraries/grantlee/5.x.nix { };
+  grantlee5 = callPackage ../development/libraries/grantlee/5.x-old.nix { };
 
   gsasl = callPackage ../development/libraries/gsasl { };
 
@@ -6613,10 +6639,6 @@ let
     lua = lua5_1;
   };
 
-  k9copy = callPackage ../applications/video/k9copy {
-    kf5 = kf510;
-  };
-
   keybinder3 = callPackage ../development/libraries/keybinder3 {
     automake = automake111x;
   };
@@ -6625,6 +6647,48 @@ let
   kf512 = recurseIntoAttrs (callPackage ../development/libraries/kde-frameworks-5.12 { });
   kf5_latest = kf512;
   kf5_stable = kf510;
+  kf513 = recurseIntoAttrs (import ../development/libraries/kde-frameworks-5.13 { inherit pkgs; });
+
+  kf5PackagesFun = self: with self; {
+
+    k9copy = callPackage ../applications/video/k9copy {};
+
+    quassel = callPackage ../applications/networking/irc/quassel/qt-5.nix {
+      monolithic = true;
+      daemon = false;
+      client = false;
+      withKDE = true;
+      dconf = gnome3.dconf;
+      tag = "-kf5";
+    };
+
+    quasselClient = quassel.override {
+      monolithic = false;
+      client = true;
+      tag = "-client-kf5";
+    };
+
+    quassel_qt5 = quassel.override {
+      withKDE = false;
+      tag = "-qt5";
+    };
+
+    quasselClient_qt5 = quasselClient.override {
+      withKDE = false;
+      tag = "-client-qt5";
+    };
+
+    quasselDaemon = quassel.override {
+      monolithic = false;
+      daemon = true;
+      tag = "-daemon-qt5";
+      withKDE = false;
+    };
+
+  };
+
+  kf513Packages = lib.makeScope kf513.newScope kf5PackagesFun;
+  kf5Packages = kf513Packages;
 
   kinetic-cpp-client = callPackage ../development/libraries/kinetic-cpp-client { };
 
@@ -6779,7 +6843,8 @@ let
   };
 
   libdbusmenu_qt = callPackage ../development/libraries/libdbusmenu-qt { };
-  libdbusmenu_qt5 = callPackage ../development/libraries/libdbusmenu-qt/qt5.nix { };
+
+  libdbusmenu_qt5 = callPackage ../development/libraries/libdbusmenu-qt/qt-5.4.nix { };
 
   libdc1394 = callPackage ../development/libraries/libdc1394 { };
 
@@ -6822,6 +6887,8 @@ let
 
   libeatmydata = callPackage ../development/libraries/libeatmydata { };
 
+  libeb = callPackage ../development/libraries/libeb { };
+
   libebml = callPackage ../development/libraries/libebml { };
 
   libebur128 = callPackage ../development/libraries/libebur128 { };
@@ -7066,7 +7133,7 @@ let
 
   libjpeg_original = callPackage ../development/libraries/libjpeg { };
   libjpeg_turbo = callPackage ../development/libraries/libjpeg-turbo { };
-  libjpeg = if (stdenv.isLinux) then libjpeg_turbo else libjpeg_original; # some problems, both on FreeBSD and Darwin
+  libjpeg = if stdenv.isLinux then libjpeg_turbo else libjpeg_original; # some problems, both on FreeBSD and Darwin
 
   libjpeg62 = callPackage ../development/libraries/libjpeg/62.nix {
     libtool = libtool_1_5;
@@ -7078,8 +7145,6 @@ let
 
   libkate = callPackage ../development/libraries/libkate { };
 
-  libkeyfinder = callPackage ../development/libraries/libkeyfinder { };
-
   libksba = callPackage ../development/libraries/libksba { };
 
   libksi = callPackage ../development/libraries/libksi { };
@@ -7349,7 +7414,7 @@ let
     inherit (darwin.apple_sdk.frameworks) ApplicationServices CoreServices;
   });
 
-  libuv = libuvVersions.v1_6_1;
+  libuv = libuvVersions.v1_7_5;
 
   libv4l = lowPrio (v4l_utils.override {
     alsaLib = null;
@@ -7490,7 +7555,6 @@ let
     # makes it slower, but during runtime we link against just mesa_drivers
     # through /run/opengl-driver*, which is overriden according to config.grsecurity
     grsecEnabled = true;
-    llvmPackages = llvmPackages_36;
   });
   mesa_glu =  mesaDarwinOr (callPackage ../development/libraries/mesa-glu { });
   mesa_drivers = mesaDarwinOr (
@@ -7547,7 +7611,7 @@ let
     qt = qt4;
   };
 
-  mlt-qt5 = callPackage ../development/libraries/mlt/qt5.nix { };
+  mlt-qt5 = callPackage ../development/libraries/mlt/qt-5.4.nix { };
 
   movit = callPackage ../development/libraries/movit { };
 
@@ -7595,6 +7659,8 @@ let
 
   ncurses = callPackage ../development/libraries/ncurses { };
 
+  neardal = callPackage ../development/libraries/neardal { };
+
   neon = callPackage ../development/libraries/neon {
     compressionSupport = true;
     sslSupport = true;
@@ -7647,8 +7713,6 @@ let
 
   openbabel = callPackage ../development/libraries/openbabel { };
 
-  openbr = callPackage ../development/libraries/openbr { };
-
   opencascade = callPackage ../development/libraries/opencascade {
     tcl = tcl-8_5;
     tk = tk-8_5;
@@ -7746,11 +7810,9 @@ let
 
   phonon_backend_vlc = callPackage ../development/libraries/phonon-backend-vlc/qt4 {};
 
-  phonon_qt5 = callPackage ../development/libraries/phonon/qt5 { };
-
-  phonon_qt5_backend_gstreamer = callPackage ../development/libraries/phonon-backend-gstreamer/qt5 { };
+  phonon_qt5 = callPackage ../development/libraries/phonon/qt5/old.nix {};
 
-  phonon_qt5_backend_vlc = callPackage ../development/libraries/phonon-backend-vlc/qt5 { };
+  phonon_qt5_backend_gstreamer = callPackage ../development/libraries/phonon-backend-gstreamer/qt5/old.nix {};
 
   physfs = callPackage ../development/libraries/physfs { };
 
@@ -7776,9 +7838,7 @@ let
 
   polkit_qt4 = callPackage ../development/libraries/polkit-qt-1 { };
 
-  polkit_qt5 = callPackage ../development/libraries/polkit-qt-1 {
-    withQt5 = true;
-  };
+  polkit_qt5 = callPackage ../development/libraries/polkit-qt-1/old.nix { withQt5 = true; };
 
   policykit = callPackage ../development/libraries/policykit { };
 
@@ -7794,10 +7854,7 @@ let
     suffix = "qt4";
   };
 
-  poppler_qt5 = poppler.override {
-    qt5Support = true;
-    suffix = "qt5";
-  };
+  poppler_qt5 = qt5Libs.popplerQt;
 
   poppler_utils = poppler.override { suffix = "utils"; utils = true; };
 
@@ -7834,14 +7891,12 @@ let
 
   qca2 = callPackage ../development/libraries/qca2 { qt = qt4; };
 
-  qca-qt5 = callPackage ../development/libraries/qca-qt5 { };
+  qca-qt5 = callPackage ../development/libraries/qca-qt5/old.nix { };
 
   qimageblitz = callPackage ../development/libraries/qimageblitz {};
 
   qjson = callPackage ../development/libraries/qjson { };
 
-  qmltermwidget = callPackage ../development/libraries/qmltermwidget { };
-
   qoauth = callPackage ../development/libraries/qoauth { };
 
   quazip = callPackage ../development/libraries/quazip {
@@ -7870,9 +7925,58 @@ let
   });
 
   qt54 = recurseIntoAttrs (callPackage ../development/libraries/qt-5/5.4 {});
+  qt55 = recurseIntoAttrs (import ../development/libraries/qt-5/5.5 { inherit pkgs; });
 
   qt5 = qt54;
 
+  qt5LibsFun = self: with self; {
+
+    accounts-qt = callPackage ../development/libraries/accounts-qt { };
+
+    grantlee = callPackage ../development/libraries/grantlee/5.x.nix { };
+
+    libdbusmenu = callPackage ../development/libraries/libdbusmenu-qt/qt-5.5.nix { };
+
+    libkeyfinder = callPackage ../development/libraries/libkeyfinder { };
+
+    mlt = callPackage ../development/libraries/mlt/qt-5.5.nix {};
+
+    openbr = callPackage ../development/libraries/openbr { };
+
+    phonon = callPackage ../development/libraries/phonon/qt5 { };
+
+    phonon_backend_gstreamer = callPackage ../development/libraries/phonon-backend-gstreamer/qt5 { };
+
+    phonon_backend_vlc = callPackage ../development/libraries/phonon-backend-vlc/qt5 { };
+
+    polkitQt = callPackage ../development/libraries/polkit-qt-1 {
+      withQt5 = true;
+    };
+
+    popplerQt = callPackage ../development/libraries/poppler {
+      lcms = lcms2;
+      qt5Support = true;
+      suffix = "qt5";
+    };
+
+    qca-qt5 = callPackage ../development/libraries/qca-qt5 { };
+
+    qmltermwidget = callPackage ../development/libraries/qmltermwidget { };
+
+    signon = callPackage ../development/libraries/signon { };
+
+    telepathy = callPackage ../development/libraries/telepathy/qt5 { };
+
+    vlc = callPackage ../applications/video/vlc {
+      qt4 = null;
+      withQt5 = true;
+    };
+
+  };
+
+  qt55Libs = lib.makeScope qt55.newScope qt5LibsFun;
+  qt5Libs = qt55Libs;
+
   qtEnv = callPackage ../development/libraries/qt-5/qt-env.nix {};
 
   qt5Full = appendToName "full" (qtEnv {
@@ -8025,6 +8129,8 @@ let
 
   sfml = callPackage ../development/libraries/sfml { };
 
+  signon = callPackage ../development/libraries/signon/old.nix {};
+
   skalibs = callPackage ../development/libraries/skalibs { };
 
   slang = callPackage ../development/libraries/slang { };
@@ -8055,8 +8161,6 @@ let
 
   soundtouch = callPackage ../development/libraries/soundtouch {};
 
-  signon = callPackage ../development/libraries/signon { };
-
   spandsp = callPackage ../development/libraries/spandsp {};
 
   spatialite_tools = callPackage ../development/libraries/spatialite-tools { };
@@ -8169,7 +8273,7 @@ let
 
   telepathy_qt = callPackage ../development/libraries/telepathy/qt { };
 
-  telepathy_qt5 = callPackage ../development/libraries/telepathy/qt5 { };
+  telepathy_qt5 = callPackage ../development/libraries/telepathy/qt5/old.nix {};
 
   tevent = callPackage ../development/libraries/tevent {
     python = python2;
@@ -8236,7 +8340,6 @@ let
 
   v8_3_16_14 = callPackage ../development/libraries/v8/3.16.14.nix {
     inherit (pythonPackages) gyp;
-    stdenv = overrideCC stdenv gcc48;
   };
 
   v8_3_24_10 = callPackage ../development/libraries/v8/3.24.10.nix {
@@ -8360,11 +8463,12 @@ let
 
   xercesc = callPackage ../development/libraries/xercesc {};
 
+  # Avoid using this. It isn't really a wrapper anymore, but we keep the name.
   xlibsWrapper = callPackage ../development/libraries/xlibs-wrapper {
     packages = [
-      freetype fontconfig xlibs.xproto xlibs.libX11 xlibs.libXt
-      xlibs.libXft xlibs.libXext xlibs.libSM xlibs.libICE
-      xlibs.xextproto
+      freetype fontconfig xorg.xproto xorg.libX11 xorg.libXt
+      xorg.libXft xorg.libXext xorg.libSM xorg.libICE
+      xorg.xextproto
     ];
   };
 
@@ -8907,6 +9011,8 @@ let
 
   memcached = callPackage ../servers/memcached {};
 
+  meteor = callPackage ../servers/meteor/default.nix { };
+
   # Backwards compatibility.
   mod_dnssd = pkgs.apacheHttpdPackages.mod_dnssd;
   mod_evasive = pkgs.apacheHttpdPackages.mod_evasive;
@@ -8934,6 +9040,8 @@ let
 
   myserver = callPackage ../servers/http/myserver { };
 
+  neard = callPackage ../servers/neard { };
+
   nginx = callPackage ../servers/http/nginx {
     rtmp        = true;
     fullWebDAV  = true;
@@ -8966,6 +9074,8 @@ let
 
   osrm-backend_luajit = callPackage ../servers/osrm-backend { luabind = luabind_luajit; };
 
+  p910nd = callPackage ../servers/p910nd { };
+
   petidomo = callPackage ../servers/mail/petidomo { };
 
   popa3d = callPackage ../servers/mail/popa3d { };
@@ -9227,19 +9337,21 @@ let
   zookeeper_mt = callPackage ../development/libraries/zookeeper_mt { };
 
   xquartz = callPackage ../servers/x11/xquartz { };
-  quartz-wm = callPackage ../servers/x11/quartz-wm { stdenv = clangStdenv; };
+  quartz-wm = callPackage ../servers/x11/quartz-wm {
+    stdenv = clangStdenv;
+  };
 
   xorg = recurseIntoAttrs (lib.callPackagesWith pkgs ../servers/x11/xorg/default.nix {
     inherit clangStdenv fetchurl fetchgit fetchpatch stdenv pkgconfig intltool freetype fontconfig
       libxslt expat libpng zlib perl mesa_drivers spice_protocol
       dbus libuuid openssl gperf m4 libevdev tradcpp libinput mcpp makeWrapper autoreconfHook
       autoconf automake libtool xmlto asciidoc flex bison python mtdev pixman;
-    inherit (darwin) apple_sdk;
+    inherit (darwin) apple_sdk libobjc CF;
     bootstrap_cmds = if stdenv.isDarwin then darwin.bootstrap_cmds else null;
     mesa = mesa_noglu;
     udev = if stdenv.isLinux then udev else null;
     libdrm = if stdenv.isLinux then libdrm else null;
-  });
+  } // { inherit xlibsWrapper; } );
 
   xorgReplacements = callPackage ../servers/x11/xorg/replacements.nix { };
 
@@ -9553,6 +9665,10 @@ let
 
   linuxConsoleTools = callPackage ../os-specific/linux/consoletools { };
 
+  openiscsi = callPackage ../os-specific/linux/open-iscsi { };
+
+  tgt = callPackage ../tools/networking/tgt { };
+
   # -- Linux kernel expressions ------------------------------------------------
 
   linuxHeaders = linuxHeaders_3_12;
@@ -9733,8 +9849,6 @@ let
 
     openafsClient = callPackage ../servers/openafs-client { };
 
-    openiscsi = callPackage ../os-specific/linux/open-iscsi { };
-
     wis_go7007 = callPackage ../os-specific/linux/wis-go7007 { };
 
     kernelHeaders = callPackage ../os-specific/linux/kernel-headers { };
@@ -9766,10 +9880,6 @@ let
       configFile = "kernel";
       inherit kernel;
     };
-    spl_git = callPackage ../os-specific/linux/spl/git.nix {
-      configFile = "kernel";
-      inherit kernel;
-    };
 
     sysdig = callPackage ../os-specific/linux/sysdig {};
 
@@ -9796,14 +9906,10 @@ let
       configFile = "kernel";
       inherit kernel spl;
     };
-    zfs_git = callPackage ../os-specific/linux/zfs/git.nix {
-      configFile = "kernel";
-      inherit kernel spl_git;
-    };
   };
 
   # The current default kernel / kernel modules.
-  linuxPackages = linuxPackages_3_18;
+  linuxPackages = linuxPackages_4_1;
   linux = linuxPackages.kernel;
 
   # Update this when adding the newest kernel major version!
@@ -9884,7 +9990,11 @@ let
 
   libcap_manpages = callPackage ../os-specific/linux/libcap/man.nix { };
 
-  libcap_ng = callPackage ../os-specific/linux/libcap-ng { };
+  libcap_ng = callPackage ../os-specific/linux/libcap-ng {
+    swig = null; # Currently not using the python2/3 bindings
+    python2 = null; # Currently not using the python2 bindings
+    python3 = null; # Currently not using the python3 bindings
+  };
 
   libnscd = callPackage ../os-specific/linux/libnscd { };
 
@@ -10040,9 +10150,6 @@ let
   spl = callPackage ../os-specific/linux/spl {
     configFile = "user";
   };
-  spl_git = callPackage ../os-specific/linux/spl/git.nix {
-    configFile = "user";
-  };
 
   sysdig = callPackage ../os-specific/linux/sysdig {
     kernel = null;
@@ -10279,9 +10386,6 @@ let
   zfs = callPackage ../os-specific/linux/zfs {
     configFile = "user";
   };
-  zfs_git = callPackage ../os-specific/linux/zfs/git.nix {
-    configFile = "user";
-  };
 
   ### DATA
 
@@ -10392,6 +10496,7 @@ let
   hicolor_icon_theme = callPackage ../data/icons/hicolor-icon-theme { };
 
   inconsolata = callPackage ../data/fonts/inconsolata {};
+  inconsolata-lgc = callPackage ../data/fonts/inconsolata/lgc.nix {};
 
   ipafont = callPackage ../data/fonts/ipafont {};
 
@@ -10433,6 +10538,9 @@ let
 
   nafees = callPackage ../data/fonts/nafees { };
 
+  inherit (callPackages ../data/fonts/noto-fonts {})
+    noto-fonts noto-fonts-cjk noto-fonts-emoji;
+
   numix-icon-theme = callPackage ../data/icons/numix-icon-theme { };
 
   numix-icon-theme-circle = callPackage ../data/icons/numix-icon-theme-circle { };
@@ -10726,6 +10834,8 @@ let
 
   bristol = callPackage ../applications/audio/bristol { };
 
+  bs1770gain = callPackage ../applications/audio/bs1770gain { };
+
   bspwm = callPackage ../applications/window-managers/bspwm { };
 
   bvi = callPackage ../applications/editors/bvi { };
@@ -10900,7 +11010,7 @@ let
     plugins = [];
   };
 
-  dfasma = callPackage ../applications/audio/dfasma { };
+  dfasma = qt5Libs.callPackage ../applications/audio/dfasma { };
 
   dia = callPackage ../applications/graphics/dia {
     inherit (pkgs.gnome) libart_lgpl libgnomeui;
@@ -10983,13 +11093,15 @@ let
 
   emacs24 = callPackage ../applications/editors/emacs-24 {
     # use override to enable additional features
-    libXaw = xlibs.libXaw;
+    libXaw = xorg.libXaw;
     Xaw3d = null;
     gconf = null;
     alsaLib = null;
     imagemagick = null;
     acl = null;
     gpm = null;
+    inherit (darwin.apple_sdk.frameworks) AppKit Foundation;
+    inherit (darwin) libobjc;
   };
 
   emacs24-nox = lowPrio (appendToName "nox" (emacs24.override {
@@ -11004,8 +11116,9 @@ let
   emacs24Macport_24_4 = lowPrio (callPackage ../applications/editors/emacs-24/macport-24.4.nix {
     stdenv = pkgs.clangStdenv;
   });
-  emacs24Macport_24_5 = lowPrio (callPackage ../applications/editors/emacs-24/macport-24.5.nix {
+  emacs24Macport_24_5 = lowPrio (newScope darwin.apple_sdk.frameworks ../applications/editors/emacs-24/macport-24.5.nix {
     stdenv = pkgs.clangStdenv;
+    inherit (darwin) libobjc;
   });
   emacs24Macport = self.emacs24Macport_24_5;
 
@@ -11179,6 +11292,7 @@ let
 
     external = {
       inherit (haskellPackages) ghc-mod structured-haskell-mode Agda;
+      inherit (pythonPackages) elpy;
     };
   };
 
@@ -11235,7 +11349,7 @@ let
 
   fluidsynth = callPackage ../applications/audio/fluidsynth { };
 
-  fmit = callPackage ../applications/audio/fmit { };
+  fmit = qt5Libs.callPackage ../applications/audio/fmit { };
 
   focuswriter = callPackage ../applications/editors/focuswriter { };
 
@@ -11562,7 +11676,7 @@ let
     inherit (gnome) gnome_python;
   };
 
-  hello = callPackage ../applications/misc/hello/ex-2 { };
+  hello = callPackage ../applications/misc/hello { };
 
   helmholtz = callPackage ../applications/audio/pd-plugins/helmholtz { };
 
@@ -11722,6 +11836,7 @@ let
   kdeApps_15_04 = recurseIntoAttrs (callPackage ../applications/kde-apps-15.04 {});
   kdeApps_stable = kdeApps_15_04;
   kdeApps_latest = kdeApps_15_04;
+  kdeApps_15_08 = recurseIntoAttrs (import ../applications/kde-apps-15.08 { inherit pkgs; });
 
   keepnote = callPackage ../applications/office/keepnote {
     pygtk = pyGtkGlade;
@@ -11729,9 +11844,9 @@ let
 
   kermit = callPackage ../tools/misc/kermit { };
 
-  keyfinder = callPackage ../applications/audio/keyfinder { };
+  keyfinder = qt5Libs.callPackage ../applications/audio/keyfinder { };
 
-  keyfinder-cli = callPackage ../applications/audio/keyfinder-cli { };
+  keyfinder-cli = qt5Libs.callPackage ../applications/audio/keyfinder-cli { };
 
   keymon = callPackage ../applications/video/key-mon { };
 
@@ -11747,6 +11862,8 @@ let
     inherit (gnome) libglade;
   };
 
+  kiwix = callPackage ../applications/misc/kiwix { };
+
   koji = callPackage ../tools/package-management/koji { };
 
   ksuperkey = callPackage ../tools/X11/ksuperkey { };
@@ -11908,7 +12025,7 @@ let
     guiSupport = false; # use mercurialFull to get hgk GUI
   };
 
-  mercurialFull = appendToName "full" (pkgs.mercurial.override { guiSupport = true; });
+  mercurialFull = appendToName "full" (pkgs.mercurial.override { inherit (pythonPackages) hg-crecord; guiSupport = true; });
 
   merkaartor = callPackage ../applications/misc/merkaartor { };
 
@@ -12029,7 +12146,7 @@ let
 
   mrxvt = callPackage ../applications/misc/mrxvt { };
 
-  mudlet = callPackage ../games/mudlet {
+  mudlet = qt5Libs.callPackage ../games/mudlet {
     inherit (lua51Packages) luafilesystem lrexlib luazip luasqlite3;
   };
 
@@ -12058,7 +12175,7 @@ let
     iceSupport = config.murmur.iceSupport or true;
   };
 
-  musescore = callPackage ../applications/audio/musescore { };
+  musescore = qt5Libs.callPackage ../applications/audio/musescore { };
 
   mutt = callPackage ../applications/networking/mailreaders/mutt { };
   mutt-with-sidebar = callPackage ../applications/networking/mailreaders/mutt {
@@ -12215,6 +12332,8 @@ let
 
   opusTools = callPackage ../applications/audio/opus-tools { };
 
+  orpie = callPackage ../applications/misc/orpie { };
+
   osmo = callPackage ../applications/office/osmo { };
 
   pamixer = callPackage ../applications/audio/pamixer { };
@@ -12381,47 +12500,6 @@ let
 
   qtractor = callPackage ../applications/audio/qtractor { };
 
-  quassel_qt5 = callPackage ../applications/networking/irc/quassel {
-    monolithic = true;
-    daemon = false;
-    client = false;
-    withKDE = false;
-    useQt5 = true;
-    qt = qt5;
-    dconf = gnome3.dconf;
-    tag = "-qt5";
-  };
-
-  quasselClient_qt5 = quassel_qt5.override {
-    monolithic = false;
-    client = true;
-    tag = "-client-qt5";
-  };
-
-  quasselDaemon_qt5 = quassel_qt5.override {
-    monolithic = false;
-    daemon = true;
-    tag = "-daemon-qt5";
-  };
-
-  quassel_kf5 = callPackage ../applications/networking/irc/quassel {
-    monolithic = true;
-    daemon = false;
-    client = false;
-    withKDE = true;
-    useQt5 = true;
-    qt = qt5;
-    kf5 = kf510;
-    dconf = gnome3.dconf;
-    tag = "-kf5";
-  };
-
-  quasselClient_kf5 = quassel_kf5.override {
-    monolithic = false;
-    client = true;
-    tag = "-client-kf5";
-  };
-
   quirc = callPackage ../tools/graphics/quirc {};
 
   quodlibet = callPackage ../applications/audio/quodlibet {
@@ -12612,16 +12690,20 @@ let
 
   copy-com = callPackage ../applications/networking/copy-com { };
 
-  dropbox = callPackage ../applications/networking/dropbox { };
+  dropbox = callPackage ../applications/networking/dropbox {
+    qtbase = qt5.base;
+    qtdeclarative = qt5.declarative;
+    qtwebkit = qt5.webkit;
+  };
 
   dropbox-cli = callPackage ../applications/networking/dropbox-cli { };
 
-  lightdm = callPackage ../applications/display-managers/lightdm {
+  lightdm = qt5Libs.callPackage ../applications/display-managers/lightdm {
     qt4 = null;
-    qt5 = null;
+    withQt5 = false;
   };
 
-  lightdm_qt = lightdm.override { qt5 = qt5; };
+  lightdm_qt = lightdm.override { withQt5 = true; };
 
   lightdm_gtk_greeter = callPackage ../applications/display-managers/lightdm-gtk-greeter { };
 
@@ -12637,7 +12719,7 @@ let
 
   printrun = callPackage ../applications/misc/printrun { };
 
-  sddm = callPackage ../applications/display-managers/sddm { };
+  sddm = qt5Libs.callPackage ../applications/display-managers/sddm { };
 
   slim = callPackage ../applications/display-managers/slim {
     libpng = libpng12;
@@ -12657,7 +12739,7 @@ let
 
   sipp = callPackage ../development/tools/misc/sipp { };
 
-  sonic-visualiser = callPackage ../applications/audio/sonic-visualiser {
+  sonic-visualiser = qt5Libs.callPackage ../applications/audio/sonic-visualiser {
     inherit (pkgs.vamp) vampSDK;
   };
 
@@ -12998,9 +13080,7 @@ let
     ffmpeg = ffmpeg_2;
   };
 
-  vlc_qt5 = vlc.override {
-    withQt5 = true;
-  };
+  vlc_qt5 = qt5Libs.vlc;
 
   vmpk = callPackage ../applications/audio/vmpk { };
 
@@ -13099,7 +13179,7 @@ let
           ++ lib.optional (cfg.enableBluejeans or false) bluejeans
          );
       libs = [ gstreamer gst_plugins_base ] ++ lib.optionals (cfg.enableQuakeLive or false)
-             (with xlibs; [ stdenv.cc libX11 libXxf86dga libXxf86vm libXext libXt alsaLib zlib ])
+             (with xorg; [ stdenv.cc libX11 libXxf86dga libXxf86vm libXext libXt alsaLib zlib ])
              ++ lib.optional (enableAdobeFlash && (cfg.enableAdobeFlashDRM or false)) hal-flash
              ++ lib.optional (config.pulseaudio or false) libpulseaudio;
       gst_plugins = [ gst_plugins_base gst_plugins_good gst_plugins_bad gst_plugins_ugly gst_ffmpeg ];
@@ -13465,6 +13545,10 @@ let
 
   crrcsim = callPackage ../games/crrcsim {};
 
+  dfhack = callPackage_i686 ../games/dfhack {
+    inherit (pkgsi686Linux.perlPackages) XMLLibXML XMLLibXSLT;
+  };
+
   dhewm3 = callPackage ../games/dhewm3 {};
 
   drumkv1 = callPackage ../applications/audio/drumkv1 { };
@@ -13491,7 +13575,7 @@ let
 
   fairymax = callPackage ../games/fairymax {};
 
-  flightgear = callPackage ../games/flightgear { };
+  flightgear = qt5Libs.callPackage ../games/flightgear { };
 
   freecell-solver = callPackage ../games/freecell-solver { };
 
@@ -13576,6 +13660,8 @@ let
 
   oilrush = callPackage ../games/oilrush { };
 
+  openmw = callPackage ../games/openmw { };
+
   openra = callPackage ../games/openra { lua = lua5_1; };
 
   openttd = callPackage ../games/openttd {
@@ -13830,6 +13916,8 @@ let
 
   gnome3_16 = recurseIntoAttrs (callPackage ../desktops/gnome-3/3.16 { });
 
+  gnome3_18 = recurseIntoAttrs (callPackage ../desktops/gnome-3/3.18 { });
+
   gnome3 = gnome3_16;
 
   gnome = recurseIntoAttrs gnome2;
@@ -13846,7 +13934,7 @@ let
         libusb = libusb1;
         libcanberra = libcanberra_kde;
         boost = boost155;
-        kdelibs = kdeApps_stable.kdelibs;
+        kdelibs = kdeApps_15_08.kdelibs;
       }
       ../desktops/kde-4.14;
 
@@ -13871,10 +13959,7 @@ let
 
           colord-kde = callPackage ../tools/misc/colord-kde { };
 
-          digikam = if builtins.compareVersions "4.9" kde4.release == 1 then
-              callPackage ../applications/graphics/digikam/2.nix { }
-            else
-              callPackage ../applications/graphics/digikam { };
+          digikam = callPackage ../applications/graphics/digikam { };
 
           eventlist = callPackage ../applications/office/eventlist {};
 
@@ -13944,8 +14029,6 @@ let
 
           massif-visualizer = callPackage ../development/tools/analysis/massif-visualizer { };
 
-          networkmanagement = callPackage ../tools/networking/networkmanagement { };
-
           partitionManager = callPackage ../tools/misc/partition-manager { };
 
           plasma-nm = callPackage ../tools/networking/plasma-nm { };
@@ -14071,6 +14154,7 @@ let
   plasma53 = recurseIntoAttrs (callPackage ../desktops/plasma-5.3 { });
   plasma5_latest = plasma53;
   plasma5_stable = plasma53;
+  plasma54 = recurseIntoAttrs (callPackage ../desktops/plasma-5.4 { inherit pkgs; });
 
   kde5 = kf5_stable // plasma5_stable // kdeApps_stable;
 
@@ -14330,6 +14414,8 @@ let
             ocaml_mysql ocamlnet ulex08 camlzip ocaml_pcre;
   });
 
+  metis-prover = callPackage ../applications/science/logic/metis-prover { };
+
   minisat = callPackage ../applications/science/logic/minisat {};
 
   opensmt = callPackage ../applications/science/logic/opensmt { };
@@ -14663,7 +14749,7 @@ let
 
   nixops = callPackage ../tools/package-management/nixops { };
 
-  nixopsUnstable = callPackage ../tools/package-management/nixops/unstable.nix { };
+  nixopsUnstable = nixops;
 
   nixui = callPackage ../tools/package-management/nixui { node_webkit = node_webkit_0_11; };
 
@@ -14883,7 +14969,7 @@ let
   vbam = callPackage ../misc/emulators/vbam {};
 
   vice = callPackage ../misc/emulators/vice {
-    libX11 = xlibs.libX11;
+    libX11 = xorg.libX11;
     giflib = giflib_4_1;
   };
 
@@ -15020,8 +15106,12 @@ let
 
   mg = callPackage ../applications/editors/mg { };
 
+}; # self_ =
 
-  # Attributes for backward compatibility.
+
+  ### Deprecated aliases - for backward compatibility
+
+aliases = with self; rec {
   adobeReader = adobe-reader;
   arduino_core = arduino-core;  # added 2015-02-04
   asciidocFull = asciidoc-full;  # added 2014-06-22
@@ -15044,13 +15134,27 @@ let
   lttngTools = lttng-tools;  # added 2014-07-31
   lttngUst = lttng-ust;  # added 2014-07-31
   nfsUtils = nfs-utils;  # added 2014-12-06
+  quassel_qt5 = kf5Packages.quassel_qt5; # added 2015-09-30
+  quasselClient_qt5 = kf5Packages.quasselClient_qt5; # added 2015-09-30
+  quasselDaemon_qt5 = kf5Packages.quasselDaemon; # added 2015-09-30
+  quassel_kf5 = kf5Packages.quassel; # added 2015-09-30
+  quasselClient_kf5 = kf5Packages.quasselClient; # added 2015-09-30
   rdiff_backup = rdiff-backup;  # added 2014-11-23
   rssglx = rss-glx; #added 2015-03-25
   rxvt_unicode_with-plugins = rxvt_unicode-with-plugins; # added 2015-04-02
   speedtest_cli = speedtest-cli;  # added 2015-02-17
   sqliteInteractive = sqlite-interactive;  # added 2014-12-06
+  x11 = xlibsWrapper; # added 2015-09
   xf86_video_nouveau = xorg.xf86videonouveau; # added 2015-09
+  xlibs = xorg; # added 2015-09
   youtube-dl = pythonPackages.youtube-dl; # added 2015-06-07
   youtubeDL = youtube-dl;  # added 2014-10-26
+};
+
+tweakAlias = _n: alias: with lib;
+  if alias.recurseForDerivations or false then
+    removeAttrs alias ["recurseForDerivations"]
+  else alias;
+
+in lib.mapAttrs tweakAlias aliases // self; in pkgs
 
-}; in self; in pkgs
diff --git a/pkgs/top-level/emacs-packages.nix b/pkgs/top-level/emacs-packages.nix
index 2600fe1b82a6..d331850b504b 100644
--- a/pkgs/top-level/emacs-packages.nix
+++ b/pkgs/top-level/emacs-packages.nix
@@ -440,6 +440,44 @@ let self = _self // overrides;
     };
   };
 
+  elpy = melpaBuild rec {
+    pname   = "elpy";
+    version = external.elpy.version;
+    src = fetchFromGitHub {
+      owner  = "jorgenschaefer";
+      repo   = pname;
+      rev    = "39ea47c73f040ce8dcc1c2d2639ebc0eb57ab8c8";
+      sha256 = "0q3av1qv4m6aj4bil608f688hjpr5px8zqnnrdqx784nz98rpjrs";
+    };
+
+    patchPhase = ''
+      for file in elpy.el elpy-pkg.el; do
+        substituteInPlace $file \
+            --replace "company \"0.8.2\"" "company \"${company.version}\"" \
+            --replace "find-file-in-project \"3.3\"" "find-file-in-project \"${find-file-in-project.version}\"" \
+            --replace "highlight-indentation \"0.5.0\"" "highlight-indentation \"${highlight-indentation.version}\"" \
+            --replace "pyvenv \"1.3\"" "pyvenv \"${pyvenv.version}\"" \
+            --replace "yasnippet \"0.8.0\"" "yasnippet \"${yasnippet.version}\""
+     done
+    '';
+
+    packageRequires = [
+      company find-file-in-project highlight-indentation pyvenv yasnippet
+    ];
+
+    propagatedUserEnvPkgs = [ external.elpy ] ++ packageRequires;
+
+    meta = {
+      description = "Emacs Python Development Environment";
+      longDescription = ''
+        Elpy is an Emacs package to bring powerful Python editing to Emacs.
+        It combines a number of other packages, both written in Emacs Lisp as
+        well as Python.
+      '';
+      license = gpl3Plus;
+    };
+  };
+
   engine-mode = melpaBuild rec {
     pname = "engine-mode";
     version = "1.0.0";
@@ -571,6 +609,26 @@ let self = _self // overrides;
     };
   };
 
+  find-file-in-project = melpaBuild rec {
+    pname = "find-file-in-project";
+    version = "3.5";
+    src = fetchFromGitHub {
+      owner  = "technomancy";
+      repo   = pname;
+      rev    = "53a8d8174f915d9dcf5ac6954b1c0cae61266177";
+      sha256 = "0wky8vqg08iw34prbz04bqmhfhj82y93swb8zkz6la2vf9da0gmd";
+    };
+    meta = {
+      description = "Quick access to project files in Emacs";
+      longDescription = ''
+        Find files in a project quickly.
+        This program provides a couple methods for quickly finding any file in a
+        given project. It depends on GNU find.
+      '';
+      license = gpl3Plus;
+    };
+  };
+
   flim = melpaBuild rec {
     pname = "flim";
     version = "1.14.9"; # 20141216
@@ -832,6 +890,30 @@ let self = _self // overrides;
     meta = { license = gpl3Plus; };
   };
 
+  highlight-indentation = melpaBuild rec {
+    pname = "highlight-indentation";
+    version = "0.7.0";
+    src = fetchFromGitHub {
+      owner = "antonj";
+      repo = "Highlight-Indentation-for-Emacs";
+      rev = "v${version}";
+      sha256 = "00l54k75qk24a0znzl4ij3s3nrnr2wy9ha3za8apphzlm98m907k";
+    };
+    meta = {
+      description = "Minor modes to highlight indentation guides in emacs";
+      longDescription = ''
+        Provides two minor modes highlight-indentation-mode and
+        highlight-indentation-current-column-mode
+
+        - highlight-indentation-mode displays guidelines indentation
+        (space indentation only).
+        - highlight-indentation-current-column-mode displays guidelines for the
+        current-point indentation (space indentation only).
+      '';
+      license = gpl2Plus;
+    };
+  };
+
   ibuffer-vc = melpaBuild rec {
     pname   = "ibuffer-vc";
     version = "0.10";
@@ -1189,6 +1271,25 @@ let self = _self // overrides;
     meta = { license = gpl3Plus; };
   };
 
+  pyvenv = melpaBuild rec {
+    pname = "pyvenv";
+    version = "1.7";
+    src = fetchFromGitHub {
+      owner  = "jorgenschaefer";
+      repo   = pname;
+      rev    = "e4f2fa7a32cf480f34d628d8eb5b9b60374d0e8e";
+      sha256 = "1669id1p69kpq8zzldxj1p6iyz68701snn462g22k2acfzc2bfha";
+    };
+    meta = {
+      description = "Python virtual environment interface for Emacs";
+      longDescription = ''
+        This is a simple global minor mode which will replicate the changes done
+        by virtualenv activation inside Emacs.
+      '';
+      license = gpl2Plus;
+    };
+  };
+
   rainbow-delimiters = melpaBuild rec {
     pname = "rainbow-delimiters";
     version = "2.1.1";
@@ -1506,6 +1607,29 @@ let self = _self // overrides;
     meta = { license = gpl3Plus; };
   };
 
+  yasnippet = melpaBuild rec {
+    pname = "yasnippet";
+    version = "0.8.1";
+    src = fetchFromGitHub {
+      owner  = "capitaomorte";
+      repo   = pname;
+      rev    = "01139a2deb9eda272b9b771fbbe15d096061efa4";
+      sha256 = "1b0bxzkmw7yd1yf6326zf52aq63n283vy57pysj8cc34d9bk6nnk";
+    };
+    meta = {
+      description = "A template system for Emacs";
+      longDescription = ''
+        YASnippet is a template system for Emacs.
+        It allows you to type an abbreviation and automatically expand it into
+        function templates. Bundled language templates include: C, C++, C#,
+        Perl, Python, Ruby, SQL, LaTeX, HTML, CSS and more.
+        The snippet syntax is inspired from TextMate's syntax, you can even import
+        most TextMate templates to YASnippet.
+      '';
+      license = gpl2Plus;
+    };
+  };
+
   zenburn-theme = melpaBuild rec {
     pname   = "zenburn-theme";
     version = "2.2";
diff --git a/pkgs/top-level/go-packages.nix b/pkgs/top-level/go-packages.nix
index 6264a6fb4fa5..2bf0a96a5aa1 100644
--- a/pkgs/top-level/go-packages.nix
+++ b/pkgs/top-level/go-packages.nix
@@ -490,6 +490,20 @@ let
     };
   };
 
+  deis = buildFromGitHub {
+    rev = "v1.10.0";
+    owner = "deis";
+    repo = "deis";
+    sha256 = "0qji0dcfqgvjrfn5fjagjib606n24iy9qank2ckh202s75rxx5w9";
+    subPackages = [ "client" ];
+    buildInputs = [ docopt-go crypto yaml-v2 ];
+    postInstall = ''
+      if [ -f "$bin/bin/client" ]; then
+        mv "$bin/bin/client" "$bin/bin/deis"
+      fi
+    '';
+  };
+
   dns = buildFromGitHub {
     rev    = "e59f851c912767b1db587dcabee6e6652e495c75";
     date   = "2015-07-22";
@@ -796,6 +810,22 @@ let
     sha256 = "0yg1jpr7lcaqh6i8n9wbs9r128kk541qjv06r9a6fp9vj56rqr3m";
   };
 
+  gotty = buildFromGitHub {
+    rev     = "v0.0.10";
+    owner   = "yudai";
+    repo    = "gotty";
+    sha256  = "0gvnbr61d5si06ik2j075jg00r9b94ryfgg06nqxkf10dp8lgi09";
+
+    buildInputs = [ cli-go go manners go-bindata-assetfs go-multierror structs websocket hcl pty ];
+
+    meta = with stdenv.lib; {
+      description = "Share your terminal as a web application";
+      homepage = "https://github.com/yudai/gotty";
+      maintainers = with maintainers; [ matthiasbeyer ];
+      license = licenses.mit;
+    };
+  };
+
   govers = buildFromGitHub {
     rev = "3b5f175f65d601d06f48d78fcbdb0add633565b9";
     date = "2015-01-09";
@@ -989,6 +1019,22 @@ let
     };
   };
 
+  go-bindata-assetfs = buildFromGitHub {
+    rev     = "d5cac425555ca5cf00694df246e04f05e6a55150";
+    owner   = "elazarl";
+    repo    = "go-bindata-assetfs";
+    sha256  = "636ce247ff6f85c14f38a421f46662fa77bdc29762692e1f72b3cd1f9d7a1d17";
+
+    date = "2015-08-13";
+
+    meta = with stdenv.lib; {
+      description = "Serves embedded files from jteeuwen/go-bindata with net/http";
+      homepage = "https://github.com/elazarl/go-bindata-assetfs";
+      maintainers = with maintainers; [ matthiasbeyer ];
+      license = licenses.bsd2;
+    };
+  };
+
   pmylund.go-cache = buildGoPackage rec {
     rev = "93d85800f2fa6bd0a739e7bd612bfa3bc008b72d";
     name = "go-cache-${stdenv.lib.strings.substring 0 7 rev}";
@@ -1546,11 +1592,11 @@ let
   };
 
   ipfs = buildFromGitHub{
-    rev = "ff26c312000da12d395c9cdba05c43f29b68b456";
+    rev = "9c6ec296e396cc6be551c9807ae220fb50dd07d4";
+    date   = "2015-09-23";
     owner  = "ipfs";
     repo   = "go-ipfs";
-    sha256 = "0qj3rwq5i4aiwn0i09skpi1s3mzqm8ma9v1cpjl7rya2y6ypx8xg";
-    disabled = !isGo14;
+    sha256 = "0lmj2s9ihl1a5r8yn6w0lvb8z3n6c9b8wi1yvi77vgzm6b6lfl3a";
   };
 
   ldap = buildGoPackage rec {
@@ -1676,6 +1722,20 @@ let
     '';
   };
 
+  manners = buildFromGitHub {
+    rev = "0.4.0";
+    owner = "braintree";
+    repo = "manners";
+    sha256 = "07985pbfhwlhbglr9zwh2wx8kkp0wzqr1lf0xbbxbhga4hn9q3ak";
+
+    meta = with stdenv.lib; {
+      description = "A polite Go HTTP server that shuts down gracefully";
+      homepage = "https://github.com/braintree/manners";
+      maintainers = with maintainers; [ matthiasbeyer ];
+      license = licenses.mit;
+    };
+  };
+
   mapstructure = buildFromGitHub {
     rev    = "281073eb9eb092240d33ef253c404f1cca550309";
     owner  = "mitchellh";
@@ -2745,8 +2805,9 @@ let
     sha256 = "1l7nw00pazp317n5nprrxwhcq56kdblc774lsznxmbb30xcp8nmf";
   };
 
-  syncthing = buildFromGitHub {
-    rev = "v0.11.25";
+  syncthing = buildFromGitHub rec {
+    version = "0.11.25";
+    rev = "v${version}";
     owner = "syncthing";
     repo = "syncthing";
     sha256 = "17phkj0dxzc1j755ddpf15rq34yp52pw2lx9kpg7gyc9qp0pzacl";
@@ -2755,6 +2816,10 @@ let
       go-lz4 du luhn xdr snappy ratelimit osext syncthing-protocol relaysrv
       goleveldb suture qart crypto net text
     ];
+    postPatch = ''
+      # Mostly a costmetic change
+      sed -i 's,unknown-dev,${version},g' cmd/syncthing/main.go
+    '';
   };
 
   syncthing-lib = buildFromGitHub {
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 6140137accb3..f45e3c3c2a3c 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -61,7 +61,8 @@ rec {
 
   packages = {
 
-    ghc6104 = callPackage ../development/haskell-modules { ghc = compiler.ghc6104; };
+    # Support for this compiler is broken, because it can't deal with directory-based package databases.
+    # ghc6104 = callPackage ../development/haskell-modules { ghc = compiler.ghc6104; };
     ghc6123 = callPackage ../development/haskell-modules {
       ghc = compiler.ghc6123;
       compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-6.12.x.nix { };
@@ -311,5 +312,13 @@ rec {
       packageSetConfig = callPackage ../development/haskell-modules/configuration-lts-3.5.nix { };
     };
 
+    lts-3_6 = packages.ghc7102.override {
+      packageSetConfig = callPackage ../development/haskell-modules/configuration-lts-3.6.nix { };
+    };
+
+    lts-3_7 = packages.ghc7102.override {
+      packageSetConfig = callPackage ../development/haskell-modules/configuration-lts-3.7.nix { };
+    };
+
   };
 }
diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index d73f8210941c..ead04c0f088d 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -3739,10 +3739,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   EmailAddress = buildPerlPackage {
-    name = "Email-Address-1.901";
+    name = "Email-Address-1.908";
     src = fetchurl {
-      url = mirror://cpan/authors/id/R/RJ/RJBS/Email-Address-1.901.tar.gz;
-      sha256 = "00svsmv2hk35ybpd7jxcsn7k54i0q9ph5lf8ksv9nkh1abraprkz";
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Email-Address-1.908.tar.gz;
+      sha256 = "0i6ljdvpy279hpbqf6lgv4figr376rb2sh4yphj86xkdzsyn1y75";
     };
     meta = {
       homepage = http://search.cpan.org/perldoc?CPAN::Meta::Spec;
@@ -4469,10 +4469,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   FileLibMagic = buildPerlPackage rec {
-    name = "File-LibMagic-1.13";
+    name = "File-LibMagic-1.15";
     src = fetchurl {
       url = "mirror://cpan/authors/id/D/DR/DROLSKY/${name}.tar.gz";
-      sha256 = "61f92c3137a3b86d63e61313b51aa2673991110d655eee792ea11c68bf2c0092";
+      sha256 = "2c7fb54912caf2c22d06b02d6a88edad970e0f8b017634dc30eec46e53763e84";
     };
     buildInputs = [ TestFatal pkgs.file ];
     makeMakerFlags = "--lib=${pkgs.file}/lib";
@@ -4767,7 +4767,7 @@ let self = _self // overrides; _self = with self; {
     };
 
     buildInputs = [ pkgs.gd pkgs.libjpeg pkgs.zlib pkgs.freetype
-                    pkgs.libpng pkgs.fontconfig pkgs.xlibs.libXpm GetoptLong ];
+                    pkgs.libpng pkgs.fontconfig pkgs.xorg.libXpm GetoptLong ];
 
     # Patch needed to get arguments past the first GetOptions call
     # and to specify libfontconfig search path.
@@ -4777,7 +4777,7 @@ let self = _self // overrides; _self = with self; {
     # tests fail
     doCheck = false;
 
-    makeMakerFlags = "--lib_png_path=${pkgs.libpng} --lib_jpeg_path=${pkgs.libjpeg} --lib_zlib_path=${pkgs.zlib} --lib_ft_path=${pkgs.freetype} --lib_fontconfig_path=${pkgs.fontconfig} --lib_xpm_path=${pkgs.xlibs.libXpm}";
+    makeMakerFlags = "--lib_png_path=${pkgs.libpng} --lib_jpeg_path=${pkgs.libjpeg} --lib_zlib_path=${pkgs.zlib} --lib_ft_path=${pkgs.freetype} --lib_fontconfig_path=${pkgs.fontconfig} --lib_xpm_path=${pkgs.xorg.libXpm}";
   };
 
   GDSecurityImage = buildPerlPackage {
@@ -5621,10 +5621,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   IOSocketSSL = buildPerlPackage {
-    name = "IO-Socket-SSL-2.016";
+    name = "IO-Socket-SSL-2.020";
     src = fetchurl {
-      url = mirror://cpan/authors/id/S/SU/SULLR/IO-Socket-SSL-2.016.tar.gz;
-      sha256 = "0hgyggdbw16nm85fds48m79lxy5318panqhpkh7r192jq6rnhqlk";
+      url = mirror://cpan/authors/id/S/SU/SULLR/IO-Socket-SSL-2.020.tar.gz;
+      sha256 = "1nqjwnyd8iy0whisa352a97ihxw2zc78cmbxa0ccs4547bljr3js";
     };
     propagatedBuildInputs = [ URI NetSSLeay ];
     meta = {
@@ -8376,7 +8376,7 @@ let self = _self // overrides; _self = with self; {
       sha256 = "0k2k8zg84qj1ry77i9dvmfdfpg13s6117wy5bc4nvnzv37qcvy32";
     };
 
-    buildInputs = with pkgs; [ mesa mesa_glu freeglut xlibs.libX11 xlibs.libXi xlibs.libXmu xlibs.libXext xdummy ];
+    buildInputs = with pkgs; [ mesa mesa_glu freeglut xorg.libX11 xorg.libXi xorg.libXmu xorg.libXext xdummy ];
 
     patches = [ ../development/perl-modules/perl-opengl.patch ];
 
@@ -11876,8 +11876,8 @@ let self = _self // overrides; _self = with self; {
       url = "http://search.cpan.org/CPAN/authors/id/S/SR/SREZIC/${name}.tar.gz";
       sha256 = "10fsvyr56gm59chc8b70n6bvhd3lh9c05sp8m4arcahid0rpgbwa";
     };
-    makeMakerFlags = "X11LIB=${pkgs.xlibs.libX11}/lib";
-    buildInputs = with pkgs; [ xlibs.libX11 libpng ];
+    makeMakerFlags = "X11LIB=${pkgs.xorg.libX11}/lib";
+    buildInputs = with pkgs; [ xorg.libX11 libpng ];
     configurePhase = ''
       perl Makefile.PL PREFIX=$out $makeMakerFlags
     '';
@@ -12302,9 +12302,9 @@ let self = _self // overrides; _self = with self; {
       url = "mirror://cpan/authors/id/A/AW/AWENDT/${name}.tar.gz";
       sha256 = "0j27cb9yy9ymni8cbiyxplbg086b8lv6b330nwqyx0briq3xrzfq";
     };
-    buildInputs = [ pkgs.xlibs.libXext pkgs.xlibs.libXScrnSaver pkgs.xlibs.libX11 ];
+    buildInputs = [ pkgs.xorg.libXext pkgs.xorg.libXScrnSaver pkgs.xorg.libX11 ];
     propagatedBuildInputs = [ InlineC ];
-    patchPhase = ''sed -ie 's,-L/usr/X11R6/lib/,-L${pkgs.xlibs.libX11}/lib/ -L${pkgs.xlibs.libXext}/lib/ -L${pkgs.xlibs.libXScrnSaver}/lib/,' IdleTime.pm'';
+    patchPhase = ''sed -ie 's,-L/usr/X11R6/lib/,-L${pkgs.xorg.libX11}/lib/ -L${pkgs.xorg.libXext}/lib/ -L${pkgs.xorg.libXScrnSaver}/lib/,' IdleTime.pm'';
     meta = {
       description = "Get the idle time of X11";
     };
@@ -12316,7 +12316,7 @@ let self = _self // overrides; _self = with self; {
       url = "mirror://cpan/authors/id/S/SM/SMCCAM/${name}.tar.gz";
       sha256 = "1dq89bh6fqv7l5mbffqcismcljpq5f869bx7g8lg698zgindv5ny";
     };
-    buildInputs = [pkgs.x11];
+    buildInputs = [pkgs.xlibsWrapper];
     NIX_CFLAGS_LINK = "-lX11";
     doCheck = false; # requires an X server
   };
@@ -12327,7 +12327,7 @@ let self = _self // overrides; _self = with self; {
       url = "mirror://cpan/authors/id/C/CT/CTRONDLP/${name}.tar.gz";
       sha256 = "0jznws68skdzkhgkgcgjlj40qdyh9i75r7fw8bqzy406f19xxvnw";
     };
-    buildInputs = [pkgs.x11 pkgs.xorg.libXtst pkgs.xorg.libXi];
+    buildInputs = [pkgs.xlibsWrapper pkgs.xorg.libXtst pkgs.xorg.libXi];
     NIX_CFLAGS_LINK = "-lX11 -lXext -lXtst";
     doCheck = false; # requires an X server
   };
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 3e114986ebbf..41f5d5925893 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -980,6 +980,23 @@ let
     };
   });
 
+  # flexget needs beatifulsoup < 4.4 for now
+  beautifulsoup_4_1_3 = buildPythonPackage (rec {
+    name = "beautifulsoup4-4.1.3";
+
+    src = pkgs.fetchurl {
+      url = "http://pypi.python.org/packages/source/b/beautifulsoup4/${name}.tar.gz";
+      sha256 = "0cbcml88bkx9gf1wznxa0kqz1wpyakfbyh9gmxw0wljhda1q0zk1";
+    };
+
+    meta = {
+      homepage = http://crummy.com/software/BeautifulSoup/bs4/;
+      description = "HTML and XML parser";
+      license = licenses.mit;
+      maintainers = with maintainers; [ iElectric ];
+    };
+  });
+
   beaker = buildPythonPackage rec {
     name = "Beaker-1.6.4";
 
@@ -2616,24 +2633,24 @@ let
        license = licenses.mit;
      };
   };
-  
+
   pytestrunner = buildPythonPackage rec {
     version = "2.6.2";
     name = "pytest-runner-${version}";
-    
+
     src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/pytest-runner/${name}.tar.gz";
       sha256 = "e775a40ee4a3a1d45018b199c44cc20bbe7f3df2dc8882f61465bb4141c78cdb";
     };
-    
+
     buildInputs = with self; [setuptools_scm pytest];
-    
+
     meta = {
       description = "Invoke py.test as distutils command with dependency resolution";
       homepage = https://bitbucket.org/pytest-dev/pytest-runner;
       license = licenses.mit;
     };
-    
+
     # Trying to run tests fails with # RuntimeError: dictionary changed size during iteration
     doCheck = false;
   };
@@ -2998,6 +3015,40 @@ let
     };
   };
 
+  deskcon = self.buildPythonPackage rec {
+    name = "deskcon-0.3";
+    disabled = !isPy27;
+
+    src = pkgs.fetchFromGitHub {
+      owner= "screenfreeze";
+      repo = "deskcon-desktop";
+      rev = "267804122188fa79c37f2b21f54fe05c898610e6";
+      sha256 ="0i1dd85ls6n14m9q7lkympms1w3x0pqyaxvalq82s4xnjdv585j3";
+    };
+
+    phases = [ "unpackPhase" "installPhase" ];
+
+    pythonPath = [ self.pyopenssl pkgs.gtk3 ];
+
+    installPhase = ''
+      substituteInPlace server/deskcon-server --replace "python2" "python"
+
+      mkdir -p $out/bin
+      mkdir -p $out/lib/${python.libPrefix}/site-packages
+      cp -r server/* $out/lib/${python.libPrefix}/site-packages
+      mv $out/lib/${python.libPrefix}/site-packages/deskcon-server $out/bin/deskcon-server
+
+      wrapPythonProgramsIn $out/bin "$out $pythonPath"
+    '';
+
+    meta = {
+      description = "integrates an Android device into a desktop";
+      homepage = https://github.com/screenfreeze/deskcon-desktop;
+      license = licenses.gpl3;
+    };
+  };
+
+
   dill = buildPythonPackage rec {
     name = "dill-${version}";
     version = "0.2.4";
@@ -4516,15 +4567,15 @@ let
   };
 
   pyramid = buildPythonPackage rec {
-    name = "pyramid-1.5.2";
+    name = "pyramid-1.5.7";
 
     src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pyramid/${name}.tar.gz";
-      md5 = "d56b140b41d42f818f4349d94d968c9a";
+      sha256 = "1d29fj86724z68zcj9ximl2nrn34pflrlr6v9mwyhcv8rdf2sc61";
     };
 
     preCheck = ''
-      # test is failing, see https://github.com/Pylons/pyramid/issues/1405
+      # this will be fixed for 1.6 release, see https://github.com/Pylons/pyramid/issues/1405
       rm pyramid/tests/test_response.py
     '';
 
@@ -5703,6 +5754,34 @@ let
   };
 
 
+  hg-crecord = buildPythonPackage rec {
+    rev = "5cfaabfe9cb9f0a0d6837956d73127f290a213be";
+    name = "hg-crecord-${rev}";
+    disabled = isPy3k;
+
+    src = pkgs.fetchurl {
+      url = "https://bitbucket.org/edgimar/crecord/get/${builtins.substring 0 12 rev}.tar.gz";
+      sha256 = "02003fa5620ec40a5ad0d7cede2e65c2cb398a7fe4e1ee26bd3396a87d63ad35";
+    };
+    
+    # crecord comes as just a bare directory
+    configurePhase = " ";
+    buildPhase = "${python.executable} -m compileall crecord";
+    installPhase = ''
+      mkdir -p $out/${python.sitePackages}
+      cp -Lr crecord $out/${python.sitePackages}/
+    '';
+
+    # there ain't none
+    doCheck = false;
+    
+    meta = {
+      description = "Mercurial extension for selecting graphically which files/hunk/lines to commit";
+      homepage = https://bitbucket.org/edgimar/crecord;
+    };
+  };
+
+
   docutils = buildPythonPackage rec {
     name = "docutils-0.12";
 
@@ -5775,12 +5854,14 @@ let
 
 
   elpy = buildPythonPackage rec {
-    name = "elpy-1.0.1";
+    name = "elpy-${version}";
+    version = "1.9.0";
     src = pkgs.fetchurl {
-      url = "http://pypi.python.org/packages/source/e/elpy/elpy-1.0.1.tar.gz";
-      md5 = "5453f085f7871ed8fc11d51f0b68c785";
+      url = "https://pypi.python.org/packages/source/e/elpy/${name}.tar.gz";
+      md5 = "651f6f46767b7132e5c0f83d5ac3b1f7";
     };
-    propagatedBuildInputs = with self; [ flake8 ];
+    python2Deps = if isPy3k then [ ] else [ self.rope ];
+    propagatedBuildInputs = with self; [ flake8 autopep8 jedi importmagic ] ++ python2Deps;
 
     doCheck = false; # there are no tests
 
@@ -6088,7 +6169,7 @@ let
 
     buildInputs = with self; [ nose ];
     propagatedBuildInputs = with self; [ paver feedparser sqlalchemy9 pyyaml rpyc
-	    beautifulsoup4 html5lib pyrss2gen pynzb progressbar jinja2 flask
+	    beautifulsoup_4_1_3 html5lib pyrss2gen pynzb progressbar jinja2 flask
 	    cherrypy requests dateutil_2_1 jsonschema python_tvrage tmdb3
       guessit pathpy apscheduler ]
 	# enable deluge and transmission plugin support, if they're installed
@@ -6231,13 +6312,12 @@ let
   });
 
   fonttools = buildPythonPackage (rec {
-    version = "2.4";
+    version = "3.0";
     name = "fonttools-${version}";
-    disabled = isPy3k;
 
     src = pkgs.fetchurl {
-      url = "https://pypi.python.org/packages/source/F/FontTools/FontTools-${version}.tar.gz";
-      sha256 = "13ggkzcj34kcca6bsxjkaqsxkp2bvxxf6ijiyhq1xlyb0z37z4qa";
+      url = "https://pypi.python.org/packages/source/F/FontTools/fonttools-${version}.tar.gz";
+      sha256 = "0f4iblpbf3y3ghajiccvdwk2f46cim6dsj6fq1kkrbqfv05dr4nz";
     };
 
     buildInputs = with self; [
@@ -6245,7 +6325,7 @@ let
     ];
 
     meta = {
-      homepage = "http://sourceforge.net/projects/fonttools/";
+      homepage = "https://github.com/behdad/fonttools";
       description = "Font file processing tools";
     };
   });
@@ -7114,40 +7194,56 @@ let
     };
   };
 
-  inginious = buildPythonPackage rec {
-    version = "0.3.dev1";
-    name = "inginious-${version}";
-
-    disabled = isPy3k;
-
+  inginious = let
     # patched version of docker bindings.
     docker-custom = self.docker.override {
       name = "docker-1.3.0-dirty";
       src = pkgs.fetchFromGitHub {
         owner = "GuillaumeDerval";
         repo = "docker-py";
-        rev = "1.3.0-dev";
-        sha256 = "0rx686riw4w6kanw4nsyzhcy84fz251g9x59piba2n62qpa1rlxf";
+        # tip of branch "master"
+        rev = "966becd0af514e67de5afbf885257a5005e49626";
+        sha256 = "09k41dh86cbb7z4b8926fi5b2qq670mm6agl5py3giacakrap66c";
       };
     };
 
+    webpy-custom = self.web.override {
+      name = "web.py-INGI";
+      src = pkgs.fetchFromGitHub {
+        owner = "UCL-INGI";
+        repo = "webpy-INGI";
+        # tip of branch "ingi"
+        rev = "f487e78d65d6569eb70003e588d5c6ace54c384f";
+        sha256 = "159vwmb8554xk98rw380p3ah170r6gm861r1nqf2l452vvdfxscd";
+      };
+    };
+   in buildPythonPackage rec {
+    version = "0.3a2.dev0";
+    name = "inginious-${version}";
+
+    disabled = isPy3k;
+
     propagatedBuildInputs = with self; [
-      requests2 # Needs to be first;
-      cgroup-utils docker-custom docutils lti pygments pymongo
-      pyyaml rpyc selenium sh simpleldap tidylib virtual-display web
-      websocket_client
+      requests2 # Needs to be first, no idea why...
+      cgroup-utils docker-custom docutils lti mock pygments
+      pymongo pyyaml rpyc sh simpleldap sphinx_rtd_theme tidylib
+      websocket_client watchdog webpy-custom
     ];
 
+    buildInputs = with self; [ nose selenium virtual-display ];
+
+    /* Hydra fix exists only on github for now.
     src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/I/INGInious/INGInious-${version}.tar.gz";
       md5 = "40474dd6b6d4fc26e47a1d9c77bcf943";
     };
-
-    # Remove multiprocessing
-    # https://github.com/UCL-INGI/INGInious/issues/73
-    patchPhase = ''
-      sed -i '34d' setup.py
-    '';
+    */
+    src = pkgs.fetchFromGitHub {
+      owner = "UCL-INGI";
+      repo = "INGInious";
+      rev = "e019a0e28c442b4201ec4a0be2a816c4ab639683";
+      sha256 = "1pwbm7f7xn50rxzwrqpji58n2ami5r3lgbdpb61q0w3dwkxvvvfk";
+    };
 
     meta = {
       description = "An intelligent grader that allows secured and automated testing of code made by students.";
@@ -7209,19 +7305,19 @@ let
       homepage = http://pypi.python.org/pypi/IPy;
     };
   };
-  
+
   ipykernel = buildPythonPackage rec {
     version = "4.0.3";
     name = "ipykernel-${version}";
-    
+
     src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/i/ipykernel/${name}.tar.gz";
       sha256 = "a4d7d2d35a0af432c8391872cb4dae727d77031212f32ca858b5c84cd0ea821f";
     };
-    
+
     buildInputs = with self; [] ++ optionals isPy27 [mock];
     propagatedBuildInputs = with self; [ipython traitlets jupyter_client pexpect];
-    
+
     meta = {
       description = "IPython Kernel for Jupyter";
       homepage = http://ipython.org/;
@@ -7229,40 +7325,40 @@ let
       maintainers = with maintainers; [ fridh ];
     };
   };
-  
+
   ipyparallel = buildPythonPackage rec {
     version = "4.0.2";
     name = "ipyparallel-${version}";
-    
-    src = pkgs.fetchurl { 
+
+    src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/i/ipyparallel/${name}.tar.gz";
       sha256 = "6b9e09ca441a45e055b97cb8e3e1dd30de85b935fae3aa0d97f138352fd3089b";
     };
-    
+
     propagatedBuildInputs = with self; [ipython_genutils decorator pyzmq ipython jupyter_client ipykernel];
-    
+
     meta = {
       description = "Interactive Parallel Computing with IPython";
       homepage = http://ipython.org/;
       license = licenses.bsd3;
       maintainers = with maintainers; [ fridh ];
     };
-  
+
   };
-  
+
   ipython = buildPythonPackage rec {
     version = "4.0.0";
     name = "ipython-${version}";
-    
+
     src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/i/ipython/${name}.tar.gz";
       sha256 = "2fd276c407fb0b29e5d4884a7029a2c27fef0a06fd7a34924cce69b7cc43f4da";
     };
-    
+
     buildInputs = with self; [nose] ++ optionals isPy27 [mock];
-    
+
     propagatedBuildInputs = with self; [decorator pickleshare simplegeneric traitlets requests pexpect sqlite3];
-    
+
     meta = {
       description = "IPython: Productive Interactive Computing";
       homepage = http://ipython.org/;
@@ -7270,16 +7366,16 @@ let
       maintainers = with maintainers; [ bjornfor jgeerds fridh ];
     };
   };
-  
+
   ipython_genutils = buildPythonPackage rec {
     version = "0.1.0";
     name = "ipython_genutils-${version}";
-    
+
     src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/i/ipython_genutils/${name}.tar.gz";
       sha256 = "3a0624a251a26463c9dfa0ffa635ec51c4265380980d9a50d65611c3c2bd82a6";
     };
-    
+
     meta = {
       description = "Vestigial utilities from IPython";
       homepage = http://ipython.org/;
@@ -7497,37 +7593,37 @@ let
       license = licenses.mit;
     };
   };
-  
+
   jupyter_client = buildPythonPackage rec {
     version = "4.0.0";
     name = "jupyter_client-${version}";
-    
+
     src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/j/jupyter_client/${name}.tar.gz";
       sha256 = "a39a4181ea2021daf6e821acae836999ef6e0fefe603813a7a7d4658d2ffa2ac";
     };
-        
+
     propagatedBuildInputs = with self; [traitlets jupyter_core pyzmq] ++ optional isPyPy py;
-    
+
     meta = {
       description = "Jupyter protocol implementation and client libraries";
       homepage = http://jupyter.org/;
       license = licenses.bsd3;
       maintainers = with maintainers; [ fridh ];
-    };  
+    };
   };
-  
+
   jupyter_core = buildPythonPackage rec {
     version = "4.0.4";
     name = "jupyter_core-${version}";
-    
+
     src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/j/jupyter_core/${name}.tar.gz";
       sha256 = "fcf45478025f34174943993947f51a41ad871ac998a14bf1cb87d8eb61e75c6d";
     };
-    
+
     propagatedBuildInputs = with self; [traitlets];
-    
+
     meta = {
       description = "Jupyter core package. A base package on which Jupyter projects rely";
       homepage = http://jupyter.org/;
@@ -7947,7 +8043,7 @@ let
       md5 = "f93d8462ff7646397a9f77a2fe602d17";
     };
 
-    buildInputs = with self; [ pkgs.swig pkgs.openssl ];
+    buildInputs = with self; [ pkgs.swig2 pkgs.openssl ];
 
     preBuild = "${python}/bin/${python.executable} setup.py build_ext --openssl=${pkgs.openssl}";
 
@@ -8249,6 +8345,29 @@ let
     };
   };
 
+  nototools = buildPythonPackage rec {
+    version = "git-2015-09-16";
+    name = "nototools-${version}";
+    disabled = isPy3k;
+
+    pythonPath = with self; [ fonttools numpy ];
+
+    postPatch = ''
+      sed -ie "s^join(_DATA_DIR_PATH,^join(\"$out/third_party/ucd\",^" nototools/unicode_data.py
+    '';
+
+    postInstall = ''
+      cp -r third_party $out
+    '';
+
+    src = pkgs.fetchFromGitHub {
+      owner = "googlei18n";
+      repo = "nototools";
+      rev = "5a79bee819941849da7b414447929fc7ba6c2c08";
+      sha256 = "0srrmyrjgksk4c6smgi1flyq325r4ma8r6bpkvbn731q3yykhmaa";
+    };
+  };
+
   rainbowstream = buildPythonPackage rec {
     name = "rainbowstream-${version}";
     version = "1.2.7";
@@ -8295,18 +8414,18 @@ let
       maintainers = with maintainers; [ thoughtpolice ];
     };
   };
-  
+
   mistune = buildPythonPackage rec {
     version = "0.7.1";
     name = "mistune-${version}";
-   
+
     src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/m/mistune/${name}.tar.gz";
       sha256 = "6076dedf768348927d991f4371e5a799c6a0158b16091df08ee85ee231d929a7";
     };
-    
+
     buildInputs = with self; [nose];
-    
+
     meta = {
       decription = "The fastest markdown parser in pure Python";
       homepage = https://github.com/lepture/mistune;
@@ -8788,39 +8907,39 @@ let
       license = licenses.lgpl21Plus;
     };
   };
-  
+
   nbconvert = buildPythonPackage rec {
     version = "4.0.0";
     name = "nbconvert-${version}";
-    
+
     src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/n/nbconvert/${name}.tar.gz";
       sha256 = "472ad15d1a71f1ef00c4094c11bb93638858fc89fb2c5838b3aa6b67d981b437";
     };
-    
+
     buildInputs = with self; [nose];
-    
+
     propagatedBuildInputs = with self; [mistune jinja2 pygments traitlets jupyter_core nbformat ipykernel tornado jupyter_client];
-    
+
     meta = {
       description = "Converting Jupyter Notebooks";
       homepage = http://jupyter.org/;
       license = licenses.bsd3;
       maintainers = with maintainers; [ fridh ];
-    }; 
+    };
   };
-  
+
   nbformat = buildPythonPackage rec {
     version = "4.0.0";
     name = "nbformat-${version}";
-  
+
     src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/n/nbformat/${name}.tar.gz";
       sha256 = "daf9b990e96863d120aff123361156a316757757b81a8070eb6945e4a9774b2d";
     };
-    
+
     propagatedBuildInputs = with self; [ipython_genutils traitlets jsonschema jupyter_core];
-    
+
     meta = {
       description = "The Jupyter Notebook format";
       homepage = "http://jupyter.org/";
@@ -9157,20 +9276,20 @@ let
 
     buildInputs = with self; [ nose ];
   };
-  
+
   notebook = buildPythonPackage rec {
     version = "4.0.4";
     name = "notebook-${version}";
-    
+
     src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/n/notebook/${name}.tar.gz";
       sha256 = "a57852514bce1b1cf41fa0311f6cf894960cf68b083b55e6c408316b598d5648";
     };
-    
+
     buildInputs = with self; [nose]  ++ optionals isPy27 [mock];
-    
+
     propagatedBuildInputs = with self; [jinja2 tornado ipython_genutils traitlets jupyter_core jupyter_client nbformat nbconvert ipykernel terminado requests pexpect];
-    
+
     meta = {
       description = "The Jupyter HTML notebook is a web-based notebook environment for interactive computing";
       homepage = http://jupyter.org/;
@@ -9342,6 +9461,24 @@ let
     };
   });
 
+  numpydoc = buildPythonPackage rec {
+    name = "numpydoc-${version}";
+    version = "0.5";
+
+    src = pkgs.fetchurl {
+      url = "https://pypi.python.org/packages/source/n/numpydoc/${name}.tar.gz";
+      sha256 = "0d4dnifaxkll50jx6czj05y8cb4ny60njd2wz299sj2jxfy51w4k";
+    };
+
+    buildInputs = [ self.nose ];
+    propagatedBuildInputs = [ self.sphinx self.matplotlib ];
+
+    meta = {
+      description = "Sphinx extension to support docstrings in Numpy format";
+      homepage = "https://github.com/numpy/numpydoc";
+      license = licenses.free;
+    };
+  };
 
   nwdiag = buildPythonPackage rec {
     name = "nwdiag-1.0.3";
@@ -9692,7 +9829,10 @@ let
     };
   };
 
-  pandas = buildPythonPackage rec {
+  pandas = let
+    inherit (pkgs.stdenv.lib) optional optionalString;
+    inherit (pkgs.stdenv) isDarwin;
+  in buildPythonPackage rec {
     name = "pandas-0.16.2";
 
     src = pkgs.fetchurl {
@@ -9700,7 +9840,7 @@ let
       sha256 = "10agmrkps8bi5948vwpipfxds5kj1d076m9i0nhaxwqiw7gm6670";
     };
 
-    buildInputs = [ self.nose ];
+    buildInputs = [ self.nose ] ++ optional isDarwin pkgs.libcxx;
     propagatedBuildInputs = with self; [
       dateutil
       numpy
@@ -9714,7 +9854,17 @@ let
       html5lib
       modules.sqlite3
       beautifulsoup4
-    ];
+    ] ++ optional isDarwin pkgs.darwin.adv_cmds; # provides the locale command
+
+    # For OSX, we need to add a dependency on libcxx, which provides
+    # `complex.h` and other libraries that pandas depends on to build.
+    patchPhase = optionalString isDarwin ''
+      cpp_sdk="${pkgs.libcxx}/include/c++/v1";
+      echo "Adding $cpp_sdk to the setup.py common_include variable"
+      substituteInPlace setup.py \
+        --replace "['pandas/src/klib', 'pandas/src']" \
+                  "['pandas/src/klib', 'pandas/src', '$cpp_sdk']"
+    '';
 
     preCheck = ''
       # Broken test, probably https://github.com/pydata/pandas/issues/10312:
@@ -9918,16 +10068,16 @@ let
       url = "https://pypi.python.org/packages/source/p/path.py/${name}.tar.gz";
       sha256 = "5cdf60f359f1add18f8556c9a1855cbd1d517f0780e3d386c256515f698ba0e0";
     };
-    
+
     buildInputs = with self; [setuptools_scm pytestrunner pytest];
-    
+
     meta = {
       description = "A module wrapper for os.path";
       homepage = http://github.com/jaraco/path.py;
       license = licenses.mit;
       platforms = platforms.linux;
     };
-    
+
     # Test fails with python 2.7: TestUnicodePaths.test_walkdirs_with_unicode_name
     # Also during tests with python 3.4: RuntimeError: dictionary changed size during iteration
     # Caused by pytestrunner
@@ -10181,21 +10331,21 @@ let
   pickleshare = buildPythonPackage rec {
     version = "0.5";
     name = "pickleshare-${version}";
-    
+
     src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/pickleshare/${name}.tar.gz";
       sha256 = "c0be5745035d437dbf55a96f60b7712345b12423f7d0951bd7d8dc2141ca9286";
     };
-    
+
     propagatedBuildInputs = with self; [pathpy];
-    
+
     meta = {
       description = "Tiny 'shelve'-like database with concurrency support";
       homepage = https://github.com/vivainio/pickleshare;
       license = licenses.mit;
     };
   };
-  
+
   pip = buildPythonPackage rec {
     version = "1.5.6";
     name = "pip-${version}";
@@ -10337,7 +10487,7 @@ let
     buildInputs = with self; [
       pkgs.freetype pkgs.libjpeg pkgs.zlib pkgs.libtiff pkgs.libwebp pkgs.tcl nose ]
       ++ optionals (isPy26 || isPy27 || isPy33 || isPyPy) [ pkgs.lcms2 ]
-      ++ optionals (isPyPy) [ pkgs.tk pkgs.xlibs.libX11 ];
+      ++ optionals (isPyPy) [ pkgs.tk pkgs.xorg.libX11 ];
 
     # NOTE: we use LCMS_ROOT as WEBP root since there is not other setting for webp.
     preConfigure = ''
@@ -10826,11 +10976,11 @@ let
   };
 
   pygit2 = buildPythonPackage rec {
-    name = "pygit2-0.21.2";
+    name = "pygit2-0.23.1";
 
     src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/pygit2/${name}.tar.gz";
-      sha256 = "0lya4v91d4y5fwrb55n8m8avgmz0l81jml2spvx6r7j1czcx3zic";
+      sha256 = "04201vcal7jq8lbpk9ylscrhjxdcf2aihiw25k4imjjqgfmvldf7";
     };
 
     preConfigure = ( if stdenv.isDarwin then ''
@@ -11267,7 +11417,7 @@ let
     };
 
     patchPhase = let
-      libs = [ pkgs.mesa pkgs.xlibs.libX11 pkgs.freetype pkgs.fontconfig ];
+      libs = [ pkgs.mesa pkgs.xorg.libX11 pkgs.freetype pkgs.fontconfig ];
       paths = concatStringsSep "," (map (l: "\"${l}/lib\"") libs);
     in "sed -i -e 's|directories\.extend.*lib[^]]*|&,${paths}|' pyglet/lib.py";
 
@@ -12183,12 +12333,12 @@ let
   });
 
 
-  pysvn = pkgs.stdenv.mkDerivation {
-    name = "pysvn-1.7.8";
+  pysvn = pkgs.stdenv.mkDerivation rec {
+    name = "pysvn-1.8.0";
 
     src = pkgs.fetchurl {
-      url = "http://pysvn.barrys-emacs.org/source_kits/pysvn-1.7.8.tar.gz";
-      sha256 = "1qk7af0laby1f79bd07l9p0dxn5xmcmfwlcb9l1hk29zwwq6x4v0";
+      url = "http://pysvn.barrys-emacs.org/source_kits/${name}.tar.gz";
+      sha256 = "0srjr2qgxfs69p65d9vvdib2lc142x10w8afbbdrqs7dhi46yn9r";
     };
 
     buildInputs = with self; [ python pkgs.subversion pkgs.apr pkgs.aprutil pkgs.expat pkgs.neon pkgs.openssl ]
@@ -12343,6 +12493,43 @@ let
     };
   });
 
+  PyXAPI = stdenv.mkDerivation rec {
+    name = "PyXAPI-0.1";
+
+    src = pkgs.fetchurl {
+      url = "http://www.pps.univ-paris-diderot.fr/~ylg/PyXAPI/${name}.tar.gz";
+      sha256 = "19lblwfq24bgsgfy7hhqkxdf4bxl40chcxdlpma7a0wfa0ngbn26";
+    };
+
+    buildInputs = [ self.python ];
+
+    installPhase = ''
+      mkdir -p "$out/lib/${python.libPrefix}/site-packages"
+
+      export PYTHONPATH="$out/lib/${python.libPrefix}/site-packages:$PYTHONPATH"
+
+      ${python}/bin/${python.executable} setup.py install \
+        --install-lib=$out/lib/${python.libPrefix}/site-packages \
+        --prefix="$out"
+    '';
+
+    meta = with stdenv.lib; {
+      description = "Python socket module extension & RFC3542 IPv6 Advanced Sockets API";
+      longDescription = ''
+        PyXAPI consists of two modules: `socket_ext' and `rfc3542'.
+        `socket_ext' extends the Python module `socket'. `socket' objects have
+        two new methods: `recvmsg' and `sendmsg'. It defines `ancillary data'
+        objects and some functions related to. `socket_ext' module also provides
+        functions to manage interfaces indexes defined in RFC3494 and not
+        available from standard Python module `socket'.
+        `rfc3542' is a full implementation of RFC3542 (Advanced Sockets
+        Application Program Interface (API) for IPv6).
+      '';
+      homepage = http://www.pps.univ-paris-diderot.fr/~ylg/PyXAPI/;
+      license = licenses.gpl2Plus;
+      maintainers = with maintainers; [ nckx ];
+    };
+  };
 
   pyxattr = buildPythonPackage (rec {
     name = "pyxattr-0.5.1";
@@ -12589,19 +12776,19 @@ let
       license = licenses.bsd3;
     };
   };
-  
+
   qtconsole = buildPythonPackage rec {
     version = "4.0.1";
     name = "qtconsole-${version}";
-    
+
     src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/q/qtconsole/${name}.tar.gz";
       sha256 = "7d2cf976bb960df11f413709b5b5b809365c48426110e946d0c12117e6ced3a5";
     };
-    
+
     buildInputs = with self; [] ++ optionals isPy27 [mock];
     propagatedBuildInputs = with self; [traitlets jupyter_core jupyter_client pygments ipykernel pyqt4];
-    
+
     meta = {
       description = "Jupyter Qt console";
       homepage = http://jupyter.org/;
@@ -13277,7 +13464,7 @@ let
       sha256 = "0l70pqwg88imbylcd831vg8nj8ipy4zr331f6qjccss7vn56i2h5";
     };
 
-    buildInputs = with self; [pkgs.xlibs.libX11];
+    buildInputs = with self; [pkgs.xorg.libX11];
 
     # Recompiling x_ignore_nofocus.so as the original one dlopen's libX11.so.6 by some
     # absolute paths. Replaced by relative path so it is found when used in nix.
@@ -13291,7 +13478,7 @@ let
 
     patchPhase = ''
       cp "${x_ignore_nofocus}/cpp/linux-specific/"* .
-      substituteInPlace x_ignore_nofocus.c --replace "/usr/lib/libX11.so.6" "${pkgs.xlibs.libX11}/lib/libX11.so.6"
+      substituteInPlace x_ignore_nofocus.c --replace "/usr/lib/libX11.so.6" "${pkgs.xorg.libX11}/lib/libX11.so.6"
       gcc -c -fPIC x_ignore_nofocus.c -o x_ignore_nofocus.o
       gcc -shared \
         -Wl,${if stdenv.isDarwin then "-install_name" else "-soname"},x_ignore_nofocus.so \
@@ -13364,16 +13551,16 @@ let
       license = "unspecified"; # !
     };
   };
-  
+
   simplegeneric = buildPythonPackage rec {
     version = "0.8.1";
     name = "simplegeneric-${version}";
-    
+
     src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/s/simplegeneric/${name}.zip";
       sha256 = "dc972e06094b9af5b855b3df4a646395e43d1c9d0d39ed345b7393560d0b9173";
     };
-    
+
     meta = {
       description = "Simple generic functions";
       homepage = http://cheeseshop.python.org/pypi/simplegeneric;
@@ -13878,7 +14065,7 @@ let
     # error: invalid command 'test'
     doCheck = false;
 
-    propagatedBuildInputs = with self; [ pkgs.xlibs.libX11 pkgs.pythonDBus pygobject ];
+    propagatedBuildInputs = with self; [ pkgs.xorg.libX11 pkgs.pythonDBus pygobject ];
 
     meta = {
       description = "High-level, platform independent Skype API wrapper for Python";
@@ -14017,11 +14204,11 @@ let
 
 
   sphinx_rtd_theme = buildPythonPackage (rec {
-    name = "sphinx_rtd_theme-0.1.7";
+    name = "sphinx_rtd_theme-0.1.8";
 
     src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/s/sphinx_rtd_theme/${name}.tar.gz";
-      md5 = "3ffe014445195705968d899c38b305fd";
+      sha256 = "12mnb7qscr07mllmyyqfpx37778sr21m8663b4fivnk17bnk7xkl";
     };
 
     postPatch = ''
@@ -14505,7 +14692,7 @@ let
     # I don't know why I need to add these libraries. Shouldn't they
     # be part of wxPython?
     postInstall = ''
-      libspaths=${pkgs.xlibs.libSM}/lib:${pkgs.xlibs.libXScrnSaver}/lib
+      libspaths=${pkgs.xorg.libSM}/lib:${pkgs.xorg.libXScrnSaver}/lib
       wrapProgram $out/bin/taskcoach.py \
         --prefix LD_LIBRARY_PATH : $libspaths
     '';
@@ -14627,14 +14814,14 @@ let
   traitlets = buildPythonPackage rec {
     version = "4.0.0";
     name = "traitlets-${version}";
-    
+
     src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/t/traitlets/${name}.tar.gz";
       sha256 = "0b140b4a94a4f1951887d9bce4650da211f79600fc9fdb422acc90c5bbe0233b";
     };
-    
+
     propagatedBuildInputs = with self; [ipython_genutils decorator];
-    
+
     meta = {
       description = "Traitlets Python config system";
       homepage = http://ipython.org/;
@@ -15449,12 +15636,12 @@ let
   };
 
   webob = buildPythonPackage rec {
-    version = "1.4";
+    version = "1.4.1";
     name = "webob-${version}";
 
     src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/W/WebOb/WebOb-${version}.tar.gz";
-      md5 = "8437607c0cc00c35f658f972516ffb55";
+      sha256 = "1nz9m6ijf46wfn33zfza13c0k1n4kjnmn3icdlrlgz5yj21vky0j";
     };
 
     propagatedBuildInputs = with self; [ nose ];
@@ -15648,7 +15835,7 @@ let
     # Tests require `pyutil' so disable them to avoid circular references.
     doCheck = false;
 
-    propagatedBuildInputs = with self; [ pkgs.xlibs.libX11 ];
+    propagatedBuildInputs = with self; [ pkgs.xorg.libX11 ];
 
     meta = {
       description = "Fully functional X client library for Python programs";
@@ -15898,6 +16085,8 @@ let
       sha256 = "1avvhkd7rvp3rzhw20v6ank8a8m9a1lmh99c4gjjsa1ry0zsri3y";
     };
 
+    patches = [ ../development/python-modules/btrees-py35.patch ];
+
     meta = {
       description = "scalable persistent components";
       homepage = http://packages.python.org/BTrees;
@@ -18317,4 +18506,24 @@ let
     };
   };
 
+  importmagic = buildPythonPackage rec {
+    simpleName = "importmagic";
+    name = "${simpleName}-${version}";
+    version = "0.1.3";
+    doCheck = false;  # missing json file from tarball
+
+    src = pkgs.fetchurl {
+      url = "https://pypi.python.org/packages/source/i/${simpleName}/${name}.tar.gz";
+      sha256 = "194bl8l8sc2ibwi6g5kz6xydkbngdqpaj6r2gcsaw1fc73iswwrj";
+    };
+
+    propagatedBuildInputs = with self; [ six ];
+
+    meta = {
+      description = "Python Import Magic - automagically add, remove and manage imports";
+      homepage = http://github.com/alecthomas/importmagic;
+      license = "bsd";
+    };
+  };
+
 }; in pythonPackages
diff --git a/pkgs/top-level/release-small.nix b/pkgs/top-level/release-small.nix
index 7c3f516c4944..4978c2e41b03 100644
--- a/pkgs/top-level/release-small.nix
+++ b/pkgs/top-level/release-small.nix
@@ -158,7 +158,6 @@ with import ./release-lib.nix { inherit supportedSystems; };
   sysvtools = linux;
   tcl = linux;
   tcpdump = linux;
-  tetex = linux;
   texLive = linux;
   texLiveBeamer = linux;
   texLiveExtra = linux;
diff --git a/pkgs/top-level/rust-packages.nix b/pkgs/top-level/rust-packages.nix
index e79ff5ca57ef..e5d762763019 100644
--- a/pkgs/top-level/rust-packages.nix
+++ b/pkgs/top-level/rust-packages.nix
@@ -7,15 +7,15 @@
 { runCommand, fetchFromGitHub, git }:
 
 let
-  version = "2015-08-21";
-  rev = "02e31a901d5f0942466ca7730431b547477126b1";
+  version = "2015-09-23";
+  rev = "14906530682acd6fa4bac6a8578f6fd1c1090081";
 
   src = fetchFromGitHub {
       inherit rev;
 
       owner = "rust-lang";
       repo = "crates.io-index";
-      sha256 = "0jppl2grir4wxc3da24h18h21kvh1wj0iff1b0z9vvx0a1iqp4gm";
+      sha256 = "1ycrf8qb776lsgcw9rfz5r63rih2m35n4p4h76hq1dxgvp1f2awh";
   };
 
 in