diff --git a/pkgs/applications/networking/browsers/qutebrowser/default.nix b/pkgs/applications/networking/browsers/qutebrowser/default.nix index eb26811cfb81..a8c49b9fd4ad 100644 --- a/pkgs/applications/networking/browsers/qutebrowser/default.nix +++ b/pkgs/applications/networking/browsers/qutebrowser/default.nix @@ -74,11 +74,8 @@ in buildPythonApplication rec { ''; postFixup = '' - mv $out/bin/qutebrowser $out/bin/.qutebrowser-noqtpath - makeQtWrapper $out/bin/.qutebrowser-noqtpath $out/bin/qutebrowser \ + wrapQtProgram $out/bin/qutebrowser \ ${lib.optionalString withWebEngineDefault ''--add-flags "--backend webengine"''} - - sed -i 's/\.qutebrowser-wrapped/qutebrowser/g' $out/bin/..qutebrowser-wrapped-wrapped ''; meta = { diff --git a/pkgs/build-support/setup-hooks/make-wrapper.sh b/pkgs/build-support/setup-hooks/make-wrapper.sh index 96e50773138b..eebde886a884 100644 --- a/pkgs/build-support/setup-hooks/make-wrapper.sh +++ b/pkgs/build-support/setup-hooks/make-wrapper.sh @@ -132,6 +132,9 @@ wrapProgram() { local prog="$1" local hidden hidden="$(dirname "$prog")/.$(basename "$prog")"-wrapped + while [ -e "$hidden" ]; do + hidden="${hidden}_" + done mv "$prog" "$hidden" # Silence warning about unexpanded $0: # shellcheck disable=SC2016 diff --git a/pkgs/development/compilers/gcc/5/default.nix b/pkgs/development/compilers/gcc/5/default.nix index 3e9104a82fbc..7c5cd6862723 100644 --- a/pkgs/development/compilers/gcc/5/default.nix +++ b/pkgs/development/compilers/gcc/5/default.nix @@ -237,10 +237,16 @@ stdenv.mkDerivation ({ # This should kill all the stdinc frameworks that gcc and friends like to # insert into default search paths. - prePatch = if stdenv.isDarwin then '' + prePatch = stdenv.lib.optionalString stdenv.isDarwin '' substituteInPlace gcc/config/darwin-c.c \ --replace 'if (stdinc)' 'if (0)' - '' else null; + + substituteInPlace libgcc/config/t-slibgcc-darwin \ + --replace "-install_name @shlib_slibdir@/\$(SHLIB_INSTALL_NAME)" "-install_name $lib/lib/\$(SHLIB_INSTALL_NAME)" + + substituteInPlace libgfortran/configure \ + --replace "-install_name \\\$rpath/\\\$soname" "-install_name $lib/lib/\\\$soname" + ''; postPatch = if (stdenv.isGNU diff --git a/pkgs/development/compilers/gcc/builder.sh b/pkgs/development/compilers/gcc/builder.sh index de3e9ba3ef5f..ee56425f00b4 100644 --- a/pkgs/development/compilers/gcc/builder.sh +++ b/pkgs/development/compilers/gcc/builder.sh @@ -212,6 +212,7 @@ postInstall() { # Move runtime libraries to $lib. moveToOutput "lib/lib*.so*" "$lib" moveToOutput "lib/lib*.la" "$lib" + moveToOutput "lib/lib*.dylib" "$lib" moveToOutput "share/gcc-*/python" "$lib" for i in "$lib"/lib/*.{la,py}; do @@ -221,6 +222,7 @@ postInstall() { if [ -n "$enableMultilib" ]; then moveToOutput "lib64/lib*.so*" "$lib" moveToOutput "lib64/lib*.la" "$lib" + moveToOutput "lib64/lib*.dylib" "$lib" for i in "$lib"/lib64/*.{la,py}; do substituteInPlace "$i" --replace "$out" "$lib" @@ -251,6 +253,16 @@ postInstall() { done fi + if type "install_name_tool"; then + for i in "$lib"/lib/*.*.dylib; do + install_name_tool -id "$i" "$i" || true + for old_path in $(otool -L "$i" | grep "$out" | awk '{print $1}'); do + new_path=`echo "$old_path" | sed "s,$out,$lib,"` + install_name_tool -change "$old_path" "$new_path" "$i" || true + done + done + fi + # Get rid of some "fixed" header files rm -rfv $out/lib/gcc/*/*/include-fixed/{root,linux} diff --git a/pkgs/development/interpreters/perl/default.nix b/pkgs/development/interpreters/perl/default.nix index f013f6ec3727..3fe04e6bde2e 100644 --- a/pkgs/development/interpreters/perl/default.nix +++ b/pkgs/development/interpreters/perl/default.nix @@ -36,7 +36,7 @@ let ./no-sys-dirs.patch ] ++ optional stdenv.isSunOS ./ld-shared.patch - ++ optional stdenv.isDarwin [ ./cpp-precomp.patch ]; + ++ optional stdenv.isDarwin [ ./cpp-precomp.patch ./sw_vers.patch ]; postPatch = '' pwd="$(type -P pwd)" @@ -121,17 +121,16 @@ let in rec { - perl = perl522; - - perl520 = common { - version = "5.20.3"; - sha256 = "0jlvpd5l5nk7lzfd4akdg1sw6vinbkj6izclyyr0lrbidfky691m"; - - }; + perl = perl524; perl522 = common { - version = "5.22.2"; - sha256 = "1hl3v85ggm027v9h2ycas4z5i3401s2k2l3qpnw8q5mahmiikbc1"; + version = "5.22.3"; + sha256 = "10q087l1ffdy3gpryr8z540jcnsr0dhm37raicyfqqkyvys1yd8v"; + }; + + perl524 = common { + version = "5.24.1"; + sha256 = "1bqqb5ghfj4486nqr77kgsd8aff6a289jy7n2cdkznwvn34qbhg6"; }; } diff --git a/pkgs/development/interpreters/perl/sw_vers.patch b/pkgs/development/interpreters/perl/sw_vers.patch new file mode 100644 index 000000000000..9d4cd75486e6 --- /dev/null +++ b/pkgs/development/interpreters/perl/sw_vers.patch @@ -0,0 +1,13 @@ +diff --git a/hints/darwin.sh b/hints/darwin.sh +index afadf53..80b7533 100644 +--- a/hints/darwin.sh ++++ b/hints/darwin.sh +@@ -329,7 +329,7 @@ EOM + # sw_vers output what we want + # "ProductVersion: 10.10.5" "10.10" + # "ProductVersion: 10.11" "10.11" +- prodvers=`sw_vers|awk '/^ProductVersion:/{print $2}'|awk -F. '{print $1"."$2}'` ++ prodvers="10.10" + case "$prodvers" in + 10.*) + add_macosx_version_min ccflags $prodvers diff --git a/pkgs/development/interpreters/python/cpython/3.3/default.nix b/pkgs/development/interpreters/python/cpython/3.3/default.nix index 3ab0de96704c..c561a1ed750a 100644 --- a/pkgs/development/interpreters/python/cpython/3.3/default.nix +++ b/pkgs/development/interpreters/python/cpython/3.3/default.nix @@ -50,7 +50,17 @@ in stdenv.mkDerivation { NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isLinux "-lgcc_s"; - postPatch = optionalString (x11Support && (tix != null)) '' + # Determinism: The interpreter is patched to write null timestamps when compiling python files. + # This way python doesn't try to update them when we freeze timestamps in nix store. + DETERMINISTIC_BUILD=1; + # Determinism: We fix the hashes of str, bytes and datetime objects. + PYTHONHASHSEED=0; + + postPatch = '' + # Determinism + substituteInPlace "Lib/py_compile.py" --replace "source_stats['mtime']" "(1 if 'DETERMINISTIC_BUILD' in os.environ else source_stats['mtime'])" +# # We do not patch `Lib/importlib/_bootstrap_external.py` because it does not exist. + '' + optionalString (x11Support && (tix != null)) '' substituteInPlace "Lib/tkinter/tix.py" --replace "os.environ.get('TIX_LIBRARY')" "os.environ.get('TIX_LIBRARY') or '${tix}/lib'" ''; @@ -80,12 +90,17 @@ in stdenv.mkDerivation { fi done touch $out/lib/python${majorVersion}/test/__init__.py + ln -s "$out/include/python${majorVersion}m" "$out/include/python${majorVersion}" paxmark E $out/bin/python${majorVersion} # Python on Nix is not manylinux1 compatible. https://github.com/NixOS/nixpkgs/issues/18484 echo "manylinux1_compatible=False" >> $out/lib/${libPrefix}/_manylinux.py + # Determinism: Windows installers were not deterministic. + # We're also not interested in building Windows installers. + find "$out" -name 'wininst*.exe' | xargs -r rm -f + # Use Python3 as default python ln -s "$out/bin/idle3" "$out/bin/idle" ln -s "$out/bin/pip3" "$out/bin/pip" @@ -93,18 +108,20 @@ in stdenv.mkDerivation { ln -s "$out/bin/python3" "$out/bin/python" ln -s "$out/bin/python3-config" "$out/bin/python-config" ln -s "$out/lib/pkgconfig/python3.pc" "$out/lib/pkgconfig/python.pc" - ''; - postFixup = '' # Get rid of retained dependencies on -dev packages, and remove # some $TMPDIR references to improve binary reproducibility. + # Note that the .pyc file of _sysconfigdata.py should be regenerated! for i in $out/lib/python${majorVersion}/_sysconfigdata.py $out/lib/python${majorVersion}/config-${majorVersion}m/Makefile; do sed -i $i -e "s|-I/nix/store/[^ ']*||g" -e "s|-L/nix/store/[^ ']*||g" -e "s|$TMPDIR|/no-such-path|g" done - # FIXME: should regenerate this. - rm $out/lib/python${majorVersion}/__pycache__/_sysconfigdata.cpython* - + # Determinism: rebuild all bytecode + # We exclude lib2to3 because that's Python 2 code which fails + # We rebuild three times, once for each optimization level + find $out -name "*.py" | $out/bin/python -m compileall -q -f -x "lib2to3" -i - + find $out -name "*.py" | $out/bin/python -O -m compileall -q -f -x "lib2to3" -i - + find $out -name "*.py" | $out/bin/python -OO -m compileall -q -f -x "lib2to3" -i - ''; passthru = let diff --git a/pkgs/development/interpreters/python/cpython/3.4/default.nix b/pkgs/development/interpreters/python/cpython/3.4/default.nix index 58e4f21bb4a1..b2a4d849c942 100644 --- a/pkgs/development/interpreters/python/cpython/3.4/default.nix +++ b/pkgs/development/interpreters/python/cpython/3.4/default.nix @@ -132,6 +132,13 @@ in stdenv.mkDerivation { ln -s "$out/bin/python3-config" "$out/bin/python-config" ln -s "$out/lib/pkgconfig/python3.pc" "$out/lib/pkgconfig/python.pc" + # Get rid of retained dependencies on -dev packages, and remove + # some $TMPDIR references to improve binary reproducibility. + # Note that the .pyc file of _sysconfigdata.py should be regenerated! + for i in $out/lib/python${majorVersion}/_sysconfigdata.py $out/lib/python${majorVersion}/config-${majorVersion}m/Makefile; do + sed -i $i -e "s|-I/nix/store/[^ ']*||g" -e "s|-L/nix/store/[^ ']*||g" -e "s|$TMPDIR|/no-such-path|g" + done + # Determinism: rebuild all bytecode # We exclude lib2to3 because that's Python 2 code which fails # We rebuild three times, once for each optimization level @@ -140,18 +147,6 @@ in stdenv.mkDerivation { find $out -name "*.py" | $out/bin/python -OO -m compileall -q -f -x "lib2to3" -i - ''; - postFixup = '' - # Get rid of retained dependencies on -dev packages, and remove - # some $TMPDIR references to improve binary reproducibility. - for i in $out/lib/python${majorVersion}/_sysconfigdata.py $out/lib/python${majorVersion}/config-${majorVersion}m/Makefile; do - sed -i $i -e "s|-I/nix/store/[^ ']*||g" -e "s|-L/nix/store/[^ ']*||g" -e "s|$TMPDIR|/no-such-path|g" - done - - # FIXME: should regenerate this. - rm $out/lib/python${majorVersion}/__pycache__/_sysconfigdata.cpython* - - ''; - passthru = let pythonPackages = callPackage ../../../../../top-level/python-packages.nix {python=self; overrides=packageOverrides;}; in rec { diff --git a/pkgs/development/interpreters/python/cpython/3.5/default.nix b/pkgs/development/interpreters/python/cpython/3.5/default.nix index 082f6ff67897..76f445f7a509 100644 --- a/pkgs/development/interpreters/python/cpython/3.5/default.nix +++ b/pkgs/development/interpreters/python/cpython/3.5/default.nix @@ -134,6 +134,13 @@ in stdenv.mkDerivation { ln -s "$out/bin/python3-config" "$out/bin/python-config" ln -s "$out/lib/pkgconfig/python3.pc" "$out/lib/pkgconfig/python.pc" + # Get rid of retained dependencies on -dev packages, and remove + # some $TMPDIR references to improve binary reproducibility. + # Note that the .pyc file of _sysconfigdata.py should be regenerated! + for i in $out/lib/python${majorVersion}/_sysconfigdata.py $out/lib/python${majorVersion}/config-${majorVersion}m/Makefile; do + sed -i $i -e "s|-I/nix/store/[^ ']*||g" -e "s|-L/nix/store/[^ ']*||g" -e "s|$TMPDIR|/no-such-path|g" + done + # Determinism: rebuild all bytecode # We exclude lib2to3 because that's Python 2 code which fails # We rebuild three times, once for each optimization level @@ -142,17 +149,6 @@ in stdenv.mkDerivation { find $out -name "*.py" | $out/bin/python -OO -m compileall -q -f -x "lib2to3" -i - ''; - postFixup = '' - # Get rid of retained dependencies on -dev packages, and remove - # some $TMPDIR references to improve binary reproducibility. - for i in $out/lib/python${majorVersion}/_sysconfigdata.py $out/lib/python${majorVersion}/config-${majorVersion}m/Makefile; do - sed -i $i -e "s|-I/nix/store/[^ ']*||g" -e "s|-L/nix/store/[^ ']*||g" -e "s|$TMPDIR|/no-such-path|g" - done - - # FIXME: should regenerate this. - rm $out/lib/python${majorVersion}/__pycache__/_sysconfigdata.cpython* - ''; - passthru = let pythonPackages = callPackage ../../../../../top-level/python-packages.nix {python=self; overrides=packageOverrides;}; in rec { diff --git a/pkgs/development/interpreters/python/cpython/3.6/default.nix b/pkgs/development/interpreters/python/cpython/3.6/default.nix index 78e57fef15f6..150786191669 100644 --- a/pkgs/development/interpreters/python/cpython/3.6/default.nix +++ b/pkgs/development/interpreters/python/cpython/3.6/default.nix @@ -126,6 +126,13 @@ in stdenv.mkDerivation { ln -s "$out/bin/python3-config" "$out/bin/python-config" ln -s "$out/lib/pkgconfig/python3.pc" "$out/lib/pkgconfig/python.pc" + # Get rid of retained dependencies on -dev packages, and remove + # some $TMPDIR references to improve binary reproducibility. + # Note that the .pyc file of _sysconfigdata.py should be regenerated! + for i in $out/lib/python${majorVersion}/_sysconfigdata*.py $out/lib/python${majorVersion}/config-${majorVersion}m*/Makefile; do + sed -i $i -e "s|-I/nix/store/[^ ']*||g" -e "s|-L/nix/store/[^ ']*||g" -e "s|$TMPDIR|/no-such-path|g" + done + # Determinism: rebuild all bytecode # We exclude lib2to3 because that's Python 2 code which fails # We rebuild three times, once for each optimization level diff --git a/pkgs/development/libraries/dbus/default.nix b/pkgs/development/libraries/dbus/default.nix index 6f7a845b809f..f569f53861dc 100644 --- a/pkgs/development/libraries/dbus/default.nix +++ b/pkgs/development/libraries/dbus/default.nix @@ -6,8 +6,8 @@ assert x11Support -> libX11 != null && libSM != null; let - version = "1.10.16"; - sha256 = "121kqkjsd3vgf8vca8364xl44qa5086h7qy5zs5f1l78ldpbmc57"; + version = "1.10.18"; + sha256 = "0jjirhw6xwz2ffmbg5kr79108l8i1bdaw7szc67n3qpkygaxsjb0"; self = stdenv.mkDerivation { name = "dbus-${version}"; diff --git a/pkgs/development/libraries/glib/default.nix b/pkgs/development/libraries/glib/default.nix index 5d8d98af8d35..96175d04a4ed 100644 --- a/pkgs/development/libraries/glib/default.nix +++ b/pkgs/development/libraries/glib/default.nix @@ -42,8 +42,8 @@ let ln -sr -t "''${!outputInclude}/include/" "''${!outputInclude}"/lib/*/include/* 2>/dev/null || true ''; - ver_maj = "2.50"; - ver_min = "3"; + ver_maj = "2.52"; + ver_min = "1"; in stdenv.mkDerivation rec { @@ -51,7 +51,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/glib/${ver_maj}/${name}.tar.xz"; - sha256 = "82ee94bf4c01459b6b00cb9db0545c2237921e3060c0b74cff13fbc020cfd999"; + sha256 = "948c26b817f2d77e2a6cdd5082c60a51bf5dea854890286a1d5d4ccde5ce586f"; }; patches = optional stdenv.isDarwin ./darwin-compilation.patch ++ optional doCheck ./skip-timer-test.patch; diff --git a/pkgs/development/libraries/gtk+/3.x.nix b/pkgs/development/libraries/gtk+/3.x.nix index aa8957b2c7da..f27cccfa27ad 100644 --- a/pkgs/development/libraries/gtk+/3.x.nix +++ b/pkgs/development/libraries/gtk+/3.x.nix @@ -13,7 +13,7 @@ with stdenv.lib; let ver_maj = "3.22"; - ver_min = "11"; + ver_min = "12"; version = "${ver_maj}.${ver_min}"; in stdenv.mkDerivation rec { @@ -21,7 +21,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnome/sources/gtk+/${ver_maj}/gtk+-${version}.tar.xz"; - sha256 = "db440670cb6f3c098b076df3735fbc4e69359bd605385e87c90ee48344a804ca"; + sha256 = "84fae0cefb6a11ee2b4e86b8ac42fe46a3d30b4ad16661d5fc51e8ae03e2a98c"; }; outputs = [ "out" "dev" ]; diff --git a/pkgs/development/libraries/harfbuzz/default.nix b/pkgs/development/libraries/harfbuzz/default.nix index e8cd4f13ecef..81b3c558f0b3 100644 --- a/pkgs/development/libraries/harfbuzz/default.nix +++ b/pkgs/development/libraries/harfbuzz/default.nix @@ -5,7 +5,7 @@ }: let - version = "1.4.4"; + version = "1.4.5"; inherit (stdenv.lib) optional optionals optionalString; in @@ -14,7 +14,7 @@ stdenv.mkDerivation { src = fetchurl { url = "http://www.freedesktop.org/software/harfbuzz/release/harfbuzz-${version}.tar.bz2"; - sha256 = "0mfj37qr8fw9mzsvk4296fq8vzq909mwlkl2xrjfrfvc8z5gilim"; + sha256 = "d0e05438165884f21658154c709075feaf98c93ee5c694b951533ac425a9a711"; }; outputs = [ "out" "dev" ]; diff --git a/pkgs/development/libraries/libav/default.nix b/pkgs/development/libraries/libav/default.nix index e0b4babc9709..6aa88a524c0e 100644 --- a/pkgs/development/libraries/libav/default.nix +++ b/pkgs/development/libraries/libav/default.nix @@ -27,7 +27,7 @@ let inherit (stdenv.lib) optional optionals hasPrefix; in let result = { libav_0_8 = libavFun "0.8.20" "0c7a2417c3a01eb74072691bb93ce802ae1be08f"; - libav_11 = libavFun "11.8" "d0e93f6b229ae46c49d13ec183b13cfee70a51f0"; + libav_11 = libavFun "11.9" "36ed1329099676ff3c970576e03c6a21f2da2e15"; libav_12 = libavFun "12" "4ecde7274621c82a6882b7614d907b28de25cc4e"; }; @@ -41,7 +41,7 @@ let patches = [] ++ optional (vpxSupport && hasPrefix "0.8." version) ./vpxenc-0.8.17-libvpx-1.5.patch - ++ optional (vpxSupport && hasPrefix "11." version) ./vpxenc-11.6-libvpx-1.5.patch; + ; preConfigure = "patchShebangs doc/texi2pod.pl"; diff --git a/pkgs/development/libraries/libav/vpxenc-11.6-libvpx-1.5.patch b/pkgs/development/libraries/libav/vpxenc-11.6-libvpx-1.5.patch deleted file mode 100644 index f3c52582b44e..000000000000 --- a/pkgs/development/libraries/libav/vpxenc-11.6-libvpx-1.5.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- a/libavcodec/libvpxenc.c 2016-05-01 17:53:17.974517377 +0200 -+++ b/libavcodec/libvpxenc.c 2016-05-01 17:54:30.564923297 +0200 -@@ -70,19 +70,11 @@ - - /** String mappings for enum vp8e_enc_control_id */ - static const char *const ctlidstr[] = { -- [VP8E_UPD_ENTROPY] = "VP8E_UPD_ENTROPY", -- [VP8E_UPD_REFERENCE] = "VP8E_UPD_REFERENCE", -- [VP8E_USE_REFERENCE] = "VP8E_USE_REFERENCE", -- [VP8E_SET_ROI_MAP] = "VP8E_SET_ROI_MAP", -- [VP8E_SET_ACTIVEMAP] = "VP8E_SET_ACTIVEMAP", -- [VP8E_SET_SCALEMODE] = "VP8E_SET_SCALEMODE", - [VP8E_SET_CPUUSED] = "VP8E_SET_CPUUSED", - [VP8E_SET_ENABLEAUTOALTREF] = "VP8E_SET_ENABLEAUTOALTREF", - [VP8E_SET_NOISE_SENSITIVITY] = "VP8E_SET_NOISE_SENSITIVITY", -- [VP8E_SET_SHARPNESS] = "VP8E_SET_SHARPNESS", - [VP8E_SET_STATIC_THRESHOLD] = "VP8E_SET_STATIC_THRESHOLD", - [VP8E_SET_TOKEN_PARTITIONS] = "VP8E_SET_TOKEN_PARTITIONS", -- [VP8E_GET_LAST_QUANTIZER] = "VP8E_GET_LAST_QUANTIZER", - [VP8E_SET_ARNR_MAXFRAMES] = "VP8E_SET_ARNR_MAXFRAMES", - [VP8E_SET_ARNR_STRENGTH] = "VP8E_SET_ARNR_STRENGTH", - [VP8E_SET_ARNR_TYPE] = "VP8E_SET_ARNR_TYPE", diff --git a/pkgs/development/libraries/libssh/default.nix b/pkgs/development/libraries/libssh/default.nix index 1db053ef398b..408436ca6184 100644 --- a/pkgs/development/libraries/libssh/default.nix +++ b/pkgs/development/libraries/libssh/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, pkgconfig, cmake, zlib, openssl, libsodium }: stdenv.mkDerivation rec { - name = "libssh-0.7.4"; + name = "libssh-0.7.5"; src = fetchurl { - url = "https://red.libssh.org/attachments/download/210/${name}.tar.xz"; - sha256 = "03bcp9ksqp0s1pmwfmzhcknvkxay5k0mjzzxp3rjlifbng1vxq9r"; + url = "https://red.libssh.org/attachments/download/218/${name}.tar.xz"; + sha256 = "15bh6dm9c50ndddzh3gqcgw7axp3ghrspjpkb1z3dr90vkanvs2l"; }; postPatch = '' diff --git a/pkgs/development/libraries/mesa/default.nix b/pkgs/development/libraries/mesa/default.nix index b7a5f1a5c904..e9edda698f44 100644 --- a/pkgs/development/libraries/mesa/default.nix +++ b/pkgs/development/libraries/mesa/default.nix @@ -67,7 +67,7 @@ let in let - version = "17.0.3"; + version = "17.0.4"; branch = head (splitString "." version); driverLink = "/run/opengl-driver" + optionalString stdenv.isi686 "-32"; in @@ -82,7 +82,7 @@ stdenv.mkDerivation { "ftp://ftp.freedesktop.org/pub/mesa/older-versions/${branch}.x/${version}/mesa-${version}.tar.xz" "https://launchpad.net/mesa/trunk/${version}/+download/mesa-${version}.tar.xz" ]; - sha256 = "ca646f5075a002d60ef9123c8a4331cede155c01712ef945a65c59a5e69fe7ed"; + sha256 = "1269dc8545a193932a0779b2db5bce9be4a5f6813b98c38b93b372be8362a346"; }; prePatch = "patchShebangs ."; diff --git a/pkgs/development/libraries/pango/default.nix b/pkgs/development/libraries/pango/default.nix index 91f065fa0ebb..d8420f691015 100644 --- a/pkgs/development/libraries/pango/default.nix +++ b/pkgs/development/libraries/pango/default.nix @@ -6,14 +6,14 @@ with stdenv.lib; let ver_maj = "1.40"; - ver_min = "4"; + ver_min = "5"; in stdenv.mkDerivation rec { name = "pango-${ver_maj}.${ver_min}"; src = fetchurl { url = "mirror://gnome/sources/pango/${ver_maj}/${name}.tar.xz"; - sha256 = "f8fdc5fc66356dc4edf915048cceeee065a0e0cb70b3b2598f62bda320129a3e"; + sha256 = "24748140456c42360b07b2c77a1a2e1216d07c056632079557cd4e815b9d01c9"; }; outputs = [ "bin" "dev" "out" "devdoc" ]; diff --git a/pkgs/development/python-modules/asn1crypto/default.nix b/pkgs/development/python-modules/asn1crypto/default.nix new file mode 100644 index 000000000000..a34879e55967 --- /dev/null +++ b/pkgs/development/python-modules/asn1crypto/default.nix @@ -0,0 +1,24 @@ +{ lib +, buildPythonPackage +, fetchPypi +}: + +buildPythonPackage rec { + pname = "asn1crypto"; + version = "0.22.0"; + name = "${pname}-${version}"; + + src = fetchPypi { + inherit pname version; + sha256 = "cbbadd640d3165ab24b06ef25d1dca09a3441611ac15f6a6b452474fdf0aed1a"; + }; + + # No tests included + doCheck = false; + + meta = { + description = "Fast ASN.1 parser and serializer with definitions for private keys, public keys, certificates, CRL, OCSP, CMS, PKCS#3, PKCS#7, PKCS#8, PKCS#12, PKCS#5, X.509 and TSP"; + license = lib.licenses.mit; + homepage = https://github.com/wbond/asn1crypto; + }; +} \ No newline at end of file diff --git a/pkgs/development/python-modules/hypothesis.nix b/pkgs/development/python-modules/hypothesis.nix index 271251b830e1..d5251f1fa55a 100644 --- a/pkgs/development/python-modules/hypothesis.nix +++ b/pkgs/development/python-modules/hypothesis.nix @@ -10,14 +10,14 @@ buildPythonPackage rec { # If you need these, you can just add them to your environment. name = "hypothesis-${version}"; - version = "3.6.1"; + version = "3.7.0"; # Upstream prefers github tarballs src = fetchFromGitHub { owner = "HypothesisWorks"; repo = "hypothesis"; rev = "${version}"; - sha256 = "1zwr9g4h4jizbvm2d7fywdpcxmw8i1m85h8g72kizah07gk12aq1"; + sha256 = "1zsv1ggf3g9rrigxl3zd1z8qc6fcj8lmszm8ib1ya4ar6r64x0yz"; }; buildInputs = stdenv.lib.optionals doCheck [ pytest flake8 flaky ]; diff --git a/pkgs/development/python-modules/ipykernel/default.nix b/pkgs/development/python-modules/ipykernel/default.nix new file mode 100644 index 000000000000..a77f6ac9c2f1 --- /dev/null +++ b/pkgs/development/python-modules/ipykernel/default.nix @@ -0,0 +1,43 @@ +{ lib +, buildPythonPackage +, fetchPypi +, nose +, isPy27 +, mock +, ipython +, jupyter_client +, pexpect +, traitlets +, tornado +}: + +buildPythonPackage rec { + pname = "ipykernel"; + version = "4.6.1"; + name = "${pname}-${version}"; + + src = fetchPypi { + inherit pname version; + sha256 = "2e1825aca4e2585b5adb7953ea16e53f53a62159ed49952a564b1e23507205db"; + }; + + buildInputs = [ nose ] ++ lib.optional isPy27 mock; + propagatedBuildInputs = [ + ipython + jupyter_client + pexpect + traitlets + tornado + ]; + + # Tests require backends. + # I don't want to add all supported backends as propagatedBuildInputs + doCheck = false; + + meta = { + description = "IPython Kernel for Jupyter"; + homepage = http://ipython.org/; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ fridh ]; + }; +} \ No newline at end of file diff --git a/pkgs/development/python-modules/ipyparallel/default.nix b/pkgs/development/python-modules/ipyparallel/default.nix new file mode 100644 index 000000000000..3e8ea0489207 --- /dev/null +++ b/pkgs/development/python-modules/ipyparallel/default.nix @@ -0,0 +1,41 @@ +{ lib +, buildPythonPackage +, fetchPypi +, nose +, dateutil +, ipython_genutils +, decorator +, pyzmq +, ipython +, jupyter_client +, ipykernel +, tornado +, isPy3k +, futures +}: + +buildPythonPackage rec { + pname = "ipyparallel"; + version = "6.0.2"; + name = "${pname}-${version}"; + + src = fetchPypi { + inherit pname version; + sha256 = "7eea4780266252fcc987b220a302d589fbb4d6b0569bd131115a20b31891103d"; + }; + + buildInputs = [ nose ]; + + propagatedBuildInputs = [ dateutil ipython_genutils decorator pyzmq ipython jupyter_client ipykernel tornado + ] ++ lib.optionals (!isPy3k) [ futures ]; + + # Requires access to cluster + doCheck = false; + + meta = { + description = "Interactive Parallel Computing with IPython"; + homepage = http://ipython.org/; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ fridh ]; + }; +} \ No newline at end of file diff --git a/pkgs/development/python-modules/ipython/default.nix b/pkgs/development/python-modules/ipython/default.nix new file mode 100644 index 000000000000..0823a76e2a69 --- /dev/null +++ b/pkgs/development/python-modules/ipython/default.nix @@ -0,0 +1,71 @@ +{ lib +, stdenv +, buildPythonPackage +, fetchPypi +, pythonOlder +# Build dependencies +, glibcLocales +# Test dependencies +, nose +, pygments +, isPy27 +, mock +# Runtime dependencies +, jedi +, decorator +, pickleshare +, simplegeneric +, traitlets +, prompt_toolkit +, pexpect +, appnope +}: + +buildPythonPackage rec { + pname = "ipython"; + version = "6.0.0"; + name = "${pname}-${version}"; + + src = fetchPypi { + inherit pname version; + sha256 = "f429b82b8d9807068da734b15965768bd21b15d0b706340b6d1b4d6f6f5b98a4"; + }; + + prePatch = lib.optionalString stdenv.isDarwin '' + substituteInPlace setup.py --replace "'gnureadline'" " " + ''; + + buildInputs = [ glibcLocales ]; + + checkInputs = [ nose pygments ] ++ lib.optional isPy27 mock; + + propagatedBuildInputs = [ + jedi + decorator + pickleshare + simplegeneric + traitlets + prompt_toolkit + pexpect + ] ++ lib.optionals stdenv.isDarwin [appnope]; + + LC_ALL="en_US.UTF-8"; + + doCheck = false; # Circular dependency with ipykernel + + checkPhase = '' + nosetests + ''; + + # IPython 6.0.0 and above does not support Python < 3.3. + # The last IPython version to support older Python versions + # is 5.3.x. + disabled = pythonOlder "3.3"; + + meta = { + description = "IPython: Productive Interactive Computing"; + homepage = http://ipython.org/; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ bjornfor jgeerds fridh ]; + }; +} diff --git a/pkgs/development/python-modules/ipywidgets/default.nix b/pkgs/development/python-modules/ipywidgets/default.nix new file mode 100644 index 000000000000..dcd5b89b6b8e --- /dev/null +++ b/pkgs/development/python-modules/ipywidgets/default.nix @@ -0,0 +1,47 @@ +{ lib +, buildPythonPackage +, fetchPypi +, python +, nose +, pytest +, mock +, ipython +, ipykernel +, traitlets +, notebook +, widgetsnbextension +}: + +buildPythonPackage rec { + pname = "ipywidgets"; + version = "6.0.0"; + name = "${pname}-${version}"; + + src = fetchPypi { + inherit pname version; + sha256 = "afa6248850cff14ef86117db87aeab0b12237e4eaf740e73716460ed593a43a7"; + }; + + # Tests are not distributed + # doCheck = false; + + buildInputs = [ nose pytest mock ]; + propagatedBuildInputs = [ + ipython + ipykernel + traitlets + notebook + widgetsnbextension + ]; + + checkPhase = '' + ${python.interpreter} -m unittest discover + ''; + + meta = { + description = "IPython HTML widgets for Jupyter"; + homepage = http://ipython.org/; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ fridh ]; + }; +} \ No newline at end of file diff --git a/pkgs/development/python-modules/jedi/default.nix b/pkgs/development/python-modules/jedi/default.nix new file mode 100644 index 000000000000..3f5d48975374 --- /dev/null +++ b/pkgs/development/python-modules/jedi/default.nix @@ -0,0 +1,32 @@ +{ lib +, buildPythonPackage +, fetchPypi +, pytest +}: + +buildPythonPackage rec { + pname = "jedi"; + version = "0.10.2"; + name = "${pname}-${version}"; + + src = fetchPypi { + inherit pname version; + sha256 = "7abb618cac6470ebbd142e59c23daec5e6e063bfcecc8a43a037d2ab57276f4e"; + }; + + checkInputs = [ pytest ]; + + checkPhase = '' + py.test test + ''; + + # 7 failed + #doCheck = false; + + meta = { + homepage = https://github.com/davidhalter/jedi; + description = "An autocompletion tool for Python that can be used for text editors"; + license = lib.licenses.lgpl3Plus; + maintainers = with lib.maintainers; [ garbas ]; + }; +} diff --git a/pkgs/development/python-modules/jupyter_client/default.nix b/pkgs/development/python-modules/jupyter_client/default.nix new file mode 100644 index 000000000000..a45a4a84a3a0 --- /dev/null +++ b/pkgs/development/python-modules/jupyter_client/default.nix @@ -0,0 +1,39 @@ +{ lib +, buildPythonPackage +, fetchPypi +, nose +, traitlets +, jupyter_core +, pyzmq +, dateutil +, isPyPy +, py +}: + +buildPythonPackage rec { + pname = "jupyter_client"; + version = "5.0.1"; + name = "${pname}-${version}"; + + src = fetchPypi { + inherit pname version; + sha256 = "1fe573880b5ca4469ed0bece098f4b910c373d349e12525e1ea3566f5a14536b"; + }; + + buildInputs = [ nose ]; + propagatedBuildInputs = [traitlets jupyter_core pyzmq dateutil] ++ lib.optional isPyPy py; + + checkPhase = '' + nosetests -v + ''; + + # Circular dependency with ipykernel + doCheck = false; + + meta = { + description = "Jupyter protocol implementation and client libraries"; + homepage = http://jupyter.org/; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ fridh ]; + }; +} \ No newline at end of file diff --git a/pkgs/development/python-modules/line_profiler/default.nix b/pkgs/development/python-modules/line_profiler/default.nix new file mode 100644 index 000000000000..e6d6f1e1d7e6 --- /dev/null +++ b/pkgs/development/python-modules/line_profiler/default.nix @@ -0,0 +1,28 @@ +{ lib +, buildPythonPackage +, fetchPypi +, cython +, isPyPy +}: + +buildPythonPackage rec { + pname = "line_profiler"; + version = "2.0"; + name = "${pname}-${version}"; + + src = fetchPypi { + inherit pname version; + sha256 = "739f8ad0e4bcd0cb82e99afc09e00a0351234f6b3f0b1f7f0090a8a2fbbf8381"; + }; + + buildInputs = [ cython ]; + + disabled = isPyPy; + + meta = { + description = "Line-by-line profiler"; + homepage = https://github.com/rkern/line_profiler; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ fridh ]; + }; +} \ No newline at end of file diff --git a/pkgs/development/python-modules/llvmlite/default.nix b/pkgs/development/python-modules/llvmlite/default.nix index 1da503417503..6b6be639851f 100644 --- a/pkgs/development/python-modules/llvmlite/default.nix +++ b/pkgs/development/python-modules/llvmlite/default.nix @@ -11,13 +11,13 @@ buildPythonPackage rec { pname = "llvmlite"; name = "${pname}-${version}"; - version = "0.15.0"; + version = "0.16.0"; disabled = isPyPy; src = fetchurl { url = "mirror://pypi/${builtins.substring 0 1 pname}/${pname}/${name}.tar.gz"; - sha256 = "c855835537eda61f3a0d19aedc44f006d5084a2d322aee8ffa87aa06bb800dc4"; + sha256 = "ef3bae32482f91742d91571b5225a6943804291eb9405b98090a7b50942ec5e9"; }; propagatedBuildInputs = [ llvm ] ++ stdenv.lib.optional (pythonOlder "3.4") enum34; diff --git a/pkgs/development/python-modules/notebook/default.nix b/pkgs/development/python-modules/notebook/default.nix new file mode 100644 index 000000000000..0fa94854640b --- /dev/null +++ b/pkgs/development/python-modules/notebook/default.nix @@ -0,0 +1,52 @@ +{ lib +, buildPythonPackage +, fetchPypi +, nose +, glibcLocales +, isPy27 +, mock +, jinja2 +, tornado +, ipython_genutils +, traitlets +, jupyter_core +, jupyter_client +, nbformat +, nbconvert +, ipykernel +, terminado +, requests2 +, pexpect +}: + +buildPythonPackage rec { + pname = "notebook"; + version = "5.0.0"; + name = "${pname}-${version}"; + + src = fetchPypi { + inherit pname version; + sha256 = "1cea3bbbd03c8e5842a1403347a8cc8134486b3ce081a2e5b1952a00ea66ed54"; + }; + + LC_ALL = "en_US.UTF-8"; + + buildInputs = [nose glibcLocales] ++ lib.optionals isPy27 [mock]; + + propagatedBuildInputs = [jinja2 tornado ipython_genutils traitlets jupyter_core + jupyter_client nbformat nbconvert ipykernel terminado requests2 pexpect ]; + + checkPhase = '' + nosetests -v + ''; + + # Certain tests fail due to being in a chroot. + # PermissionError + doCheck = false; + meta = { + description = "The Jupyter HTML notebook is a web-based notebook environment for interactive computing"; + homepage = http://jupyter.org/; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ fridh ]; + }; +} \ No newline at end of file diff --git a/pkgs/development/python-modules/numba/default.nix b/pkgs/development/python-modules/numba/default.nix index 422fee396412..3ce40f2618a2 100644 --- a/pkgs/development/python-modules/numba/default.nix +++ b/pkgs/development/python-modules/numba/default.nix @@ -14,12 +14,12 @@ }: buildPythonPackage rec { - version = "0.30.1"; + version = "0.31.0"; name = "numba-${version}"; src = fetchurl { url = "mirror://pypi/n/numba/${name}.tar.gz"; - sha256 = "66e6254b3002f448fd212c5df4c8a69964dff9b9f315fb733e3c95e7e2b6c8fd"; + sha256 = "69f8ecacca687e89625abbc9f9ff2b64b3cc8649c284a3bc92f2df6dc82a7c80"; }; NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.isDarwin "-I${libcxx}/include/c++/v1"; diff --git a/pkgs/development/python-modules/pandas/default.nix b/pkgs/development/python-modules/pandas/default.nix index 21a7755c4097..212a382a4b0f 100644 --- a/pkgs/development/python-modules/pandas/default.nix +++ b/pkgs/development/python-modules/pandas/default.nix @@ -56,7 +56,7 @@ in buildPythonPackage rec { # 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 '' + postPatch = optionalString isDarwin '' cpp_sdk="${libcxx}/include/c++/v1"; echo "Adding $cpp_sdk to the setup.py common_include variable" substituteInPlace setup.py \ @@ -71,12 +71,11 @@ in buildPythonPackage rec { # The flag `-A 'not network'` will disable tests that use internet. # The `-e` flag disables a few problematic tests. - checkPhase = '' runHook preCheck # The flag `-w` provides the initial directory to search for tests. # The flag `-A 'not network'` will disable tests that use internet. - nosetests -w $out/${python.sitePackages}/pandas --no-path-adjustment -A 'not slow and not network' --stop \ + nosetests -w $out/${python.sitePackages}/pandas --no-path-adjustment -A 'not slow and not network' \ --verbosity=3 runHook postCheck ''; diff --git a/pkgs/development/python-modules/pycryptodome/default.nix b/pkgs/development/python-modules/pycryptodome/default.nix index 04964ab03dd2..d465c0befe1d 100644 --- a/pkgs/development/python-modules/pycryptodome/default.nix +++ b/pkgs/development/python-modules/pycryptodome/default.nix @@ -3,7 +3,6 @@ buildPythonPackage rec { version = "3.4.3"; name = "pycryptodome-${version}"; - namePrefix = ""; src = fetchurl { url = "mirror://pypi/p/pycryptodome/${name}.tar.gz"; diff --git a/pkgs/development/python-modules/pytest/default.nix b/pkgs/development/python-modules/pytest/default.nix index d3fea5a3b43f..90b67022c5b1 100644 --- a/pkgs/development/python-modules/pytest/default.nix +++ b/pkgs/development/python-modules/pytest/default.nix @@ -1,7 +1,7 @@ { stdenv, buildPythonPackage, fetchurl, isPy26, argparse, hypothesis, py }: buildPythonPackage rec { name = "pytest-${version}"; - version = "3.0.6"; + version = "3.0.7"; preCheck = '' # don't test bash builtins @@ -10,7 +10,7 @@ buildPythonPackage rec { src = fetchurl { url = "mirror://pypi/p/pytest/${name}.tar.gz"; - sha256 = "0h6rfp7y7c5mqwfm9fy5fq4l9idnp160c82ylcfjg251y6lk8d34"; + sha256 = "b70696ebd1a5e6b627e7e3ac1365a4bc60aaf3495e843c1e70448966c5224cab"; }; buildInputs = [ hypothesis ]; diff --git a/pkgs/development/python-modules/qtconsole/default.nix b/pkgs/development/python-modules/qtconsole/default.nix new file mode 100644 index 000000000000..b09458de5683 --- /dev/null +++ b/pkgs/development/python-modules/qtconsole/default.nix @@ -0,0 +1,37 @@ +{ lib +, buildPythonPackage +, fetchPypi +, nose +, isPy27 +, mock +, traitlets +, jupyter_core +, jupyter_client +, pygments +, ipykernel +, pyqt5 +}: + +buildPythonPackage rec { + pname = "qtconsole"; + version = "4.3.0"; + name = "${pname}-${version}"; + + src = fetchPypi { + inherit pname version; + sha256 = "2821ccf85853b83e4958521f82e36325208787eaf79b19b83905a99cc41aa209"; + }; + + buildInputs = [ nose ] ++ lib.optionals isPy27 [mock]; + propagatedBuildInputs = [traitlets jupyter_core jupyter_client pygments ipykernel pyqt5]; + + # : cannot connect to X server + doCheck = false; + + meta = { + description = "Jupyter Qt console"; + homepage = http://jupyter.org/; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ fridh ]; + }; +} diff --git a/pkgs/development/python-modules/statsmodels/default.nix b/pkgs/development/python-modules/statsmodels/default.nix new file mode 100644 index 000000000000..60e35d2ade43 --- /dev/null +++ b/pkgs/development/python-modules/statsmodels/default.nix @@ -0,0 +1,33 @@ +{ lib +, self +, buildPythonPackage +, fetchPypi +, nose +, numpy +, scipy +, pandas +, patsy +, cython +, matplotlib +}: + +buildPythonPackage rec { + pname = "statsmodels"; + version = "0.8.0"; + name = "${pname}-${version}"; + + src = fetchPypi { + inherit pname version; + sha256 = "26431ab706fbae896db7870a0892743bfbb9f5c83231644692166a31d2d86048"; + }; + + buildInputs = with self; [ nose ]; + propagatedBuildInputs = with self; [numpy scipy pandas patsy cython matplotlib]; + + meta = { + description = "Statistical computations and models for use with SciPy"; + homepage = "https://www.github.com/statsmodels/statsmodels"; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ fridh ]; + }; +} diff --git a/pkgs/development/python-modules/widgetsnbextension/default.nix b/pkgs/development/python-modules/widgetsnbextension/default.nix new file mode 100644 index 000000000000..dda58c65f60c --- /dev/null +++ b/pkgs/development/python-modules/widgetsnbextension/default.nix @@ -0,0 +1,29 @@ +{ lib +, buildPythonPackage +, fetchPypi +, notebook +, ipywidgets +}: + +buildPythonPackage rec { + pname = "widgetsnbextension"; + name = "${pname}-${version}"; + version = "2.0.0"; + + src = fetchPypi { + inherit pname version; + sha256 = "566582a84642d0c0f78b756a954450a38a8743eeb8dad04b7cab3ca66f455e6f"; + }; + + propagatedBuildInputs = [ notebook ]; + + # No tests in archive + doCheck = false; + + meta = { + description = "IPython HTML widgets for Jupyter"; + homepage = http://ipython.org/; + license = ipywidgets.meta.license; # Build from same repo + maintainers = with lib.maintainers; [ fridh ]; + }; +} \ No newline at end of file diff --git a/pkgs/development/python-modules/xarray/default.nix b/pkgs/development/python-modules/xarray/default.nix new file mode 100644 index 000000000000..fe0497bc0e89 --- /dev/null +++ b/pkgs/development/python-modules/xarray/default.nix @@ -0,0 +1,33 @@ +{ lib +, buildPythonPackage +, fetchPypi +, pytest +, numpy +, pandas +, python +}: + +buildPythonPackage rec { + pname = "xarray"; + version = "0.9.5"; + name = "${pname}-${version}"; + + src = fetchPypi { + inherit pname version; + sha256 = "d23bfcc317829570daa1fe8306ad7ff62cd77847bbd68e3ffc53d847bff7c36d"; + }; + + buildInputs = [ pytest ]; + propagatedBuildInputs = [numpy pandas]; + + checkPhase = '' + py.test $out/${python.sitePackages} + ''; + + meta = { + description = "N-D labeled arrays and datasets in Python"; + homepage = https://github.com/pydata/xarray; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ fridh ]; + }; +} diff --git a/pkgs/os-specific/linux/util-linux/default.nix b/pkgs/os-specific/linux/util-linux/default.nix index 872a1897457c..9126a1cdec3d 100644 --- a/pkgs/os-specific/linux/util-linux/default.nix +++ b/pkgs/os-specific/linux/util-linux/default.nix @@ -20,6 +20,8 @@ stdenv.mkDerivation rec { postPatch = '' substituteInPlace include/pathnames.h \ --replace "/bin/login" "${shadow}/bin/login" + substituteInPlace sys-utils/eject.c \ + --replace "/bin/umount" "$out/bin/umount" ''; crossAttrs = { diff --git a/pkgs/stdenv/generic/default.nix b/pkgs/stdenv/generic/default.nix index cb94db48f4bd..69bcd6490594 100644 --- a/pkgs/stdenv/generic/default.nix +++ b/pkgs/stdenv/generic/default.nix @@ -264,18 +264,16 @@ let __ignoreNulls = true; # Inputs built by the cross compiler. - buildInputs = if crossConfig != null then buildInputs' else []; - propagatedBuildInputs = if crossConfig != null then propagatedBuildInputs' else []; + buildInputs = buildInputs'; + propagatedBuildInputs = propagatedBuildInputs'; # Inputs built by the usual native compiler. nativeBuildInputs = nativeBuildInputs' - ++ lib.optionals (crossConfig == null) buildInputs' ++ lib.optional (result.isCygwin || (crossConfig != null && lib.hasSuffix "mingw32" crossConfig)) ../../build-support/setup-hooks/win-dll-link.sh ; - propagatedNativeBuildInputs = propagatedNativeBuildInputs' ++ - (if crossConfig == null then propagatedBuildInputs' else []); + propagatedNativeBuildInputs = propagatedNativeBuildInputs'; } // ifDarwin { # TODO: remove lib.unique once nix has a list canonicalization primitive __sandboxProfile = diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 154fdefd789c..de33ab565982 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -290,15 +290,26 @@ findInputs() { fi } -crossPkgs="" -for i in $buildInputs $defaultBuildInputs $propagatedBuildInputs; do - findInputs $i crossPkgs propagated-build-inputs -done +if [ -z "$crossConfig" ]; then + # Not cross-compiling - both buildInputs (and variants like propagatedBuildInputs) + # are handled identically to nativeBuildInputs + nativePkgs="" + for i in $nativeBuildInputs $buildInputs \ + $defaultNativeBuildInputs $defaultBuildInputs \ + $propagatedNativeBuildInputs $propagatedBuildInputs; do + findInputs $i nativePkgs propagated-native-build-inputs + done +else + crossPkgs="" + for i in $buildInputs $defaultBuildInputs $propagatedBuildInputs; do + findInputs $i crossPkgs propagated-build-inputs + done -nativePkgs="" -for i in $nativeBuildInputs $defaultNativeBuildInputs $propagatedNativeBuildInputs; do - findInputs $i nativePkgs propagated-native-build-inputs -done + nativePkgs="" + for i in $nativeBuildInputs $defaultNativeBuildInputs $propagatedNativeBuildInputs; do + findInputs $i nativePkgs propagated-native-build-inputs + done +fi # Set the relevant environment variables to point to the build inputs @@ -759,14 +770,26 @@ fixupPhase() { # Propagate build inputs and setup hook into the development output. - if [ -n "$propagatedBuildInputs" ]; then - mkdir -p "${!outputDev}/nix-support" - echo "$propagatedBuildInputs" > "${!outputDev}/nix-support/propagated-build-inputs" - fi + if [ -z "$crossConfig" ]; then + # Not cross-compiling - propagatedBuildInputs are handled identically to propagatedNativeBuildInputs + local propagated="$propagatedNativeBuildInputs" + if [ -n "$propagatedBuildInputs" ]; then + propagated+="${propagated:+ }$propagatedBuildInputs" + fi + if [ -n "$propagated" ]; then + mkdir -p "${!outputDev}/nix-support" + echo "$propagated" > "${!outputDev}/nix-support/propagated-native-build-inputs" + fi + else + if [ -n "$propagatedBuildInputs" ]; then + mkdir -p "${!outputDev}/nix-support" + echo "$propagatedBuildInputs" > "${!outputDev}/nix-support/propagated-build-inputs" + fi - if [ -n "$propagatedNativeBuildInputs" ]; then - mkdir -p "${!outputDev}/nix-support" - echo "$propagatedNativeBuildInputs" > "${!outputDev}/nix-support/propagated-native-build-inputs" + if [ -n "$propagatedNativeBuildInputs" ]; then + mkdir -p "${!outputDev}/nix-support" + echo "$propagatedNativeBuildInputs" > "${!outputDev}/nix-support/propagated-native-build-inputs" + fi fi if [ -n "$setupHook" ]; then diff --git a/pkgs/tools/bluetooth/blueman/default.nix b/pkgs/tools/bluetooth/blueman/default.nix index 508fc7810690..6dce2a38798a 100644 --- a/pkgs/tools/bluetooth/blueman/default.nix +++ b/pkgs/tools/bluetooth/blueman/default.nix @@ -1,6 +1,6 @@ { stdenv, lib, fetchurl, intltool, pkgconfig, pythonPackages, bluez, polkit, gtk3 , obex_data_server, xdg_utils, libnotify, dconf, gsettings_desktop_schemas, dnsmasq, dhcp -, hicolor_icon_theme, librsvg +, hicolor_icon_theme, librsvg, wrapGAppsHook , withPulseAudio ? true, libpulseaudio }: let @@ -15,7 +15,7 @@ in stdenv.mkDerivation rec { sha256 = "03s305mbc57nl3sq5ywh9casz926k4aqnylgaidli8bmgz1djbg9"; }; - nativeBuildInputs = [ intltool pkgconfig pythonPackages.wrapPython pythonPackages.cython ]; + nativeBuildInputs = [ intltool pkgconfig pythonPackages.wrapPython pythonPackages.cython wrapGAppsHook ]; buildInputs = [ bluez gtk3 pythonPackages.python libnotify dconf librsvg gsettings_desktop_schemas hicolor_icon_theme ] @@ -32,12 +32,8 @@ in stdenv.mkDerivation rec { configureFlags = [ (lib.enableFeature withPulseAudio "pulseaudio") ]; - postFixup = '' - makeWrapperArgs="\ - --prefix PATH ':' ${binPath} \ - --prefix GI_TYPELIB_PATH : $GI_TYPELIB_PATH \ - --prefix XDG_DATA_DIRS : $GSETTINGS_SCHEMAS_PATH \ - --prefix GIO_EXTRA_MODULES : ${dconf}/lib/gio/modules" + preFixup = '' + makeWrapperArgs="--prefix PATH ':' ${binPath}" wrapPythonPrograms ''; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4bedef3bb397..ef0f2921a3a0 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6010,7 +6010,7 @@ with pkgs; ocropus = callPackage ../applications/misc/ocropus { }; - inherit (callPackages ../development/interpreters/perl {}) perl perl520 perl522; + inherit (callPackages ../development/interpreters/perl {}) perl perl522 perl524; pachyderm = callPackage ../applications/networking/cluster/pachyderm { }; @@ -10950,7 +10950,11 @@ with pkgs; neo4j = callPackage ../servers/nosql/neo4j { }; - net_snmp = callPackage ../servers/monitoring/net-snmp { }; + net_snmp = callPackage ../servers/monitoring/net-snmp { + # https://sourceforge.net/p/net-snmp/bugs/2712/ + # remove after net-snmp > 5.7.3 + perl = perl522; + }; newrelic-sysmond = callPackage ../servers/monitoring/newrelic-sysmond { }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 355d470ca5d3..78c7dd68228f 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -175,6 +175,8 @@ in { }; }; + asn1crypto = callPackage ../development/python-modules/asn1crypto { }; + # packages defined elsewhere bap = callPackage ../development/python-modules/bap { @@ -4542,25 +4544,39 @@ in { cryptography = buildPythonPackage rec { # also bump cryptography_vectors - name = "cryptography-${version}"; - version = "1.7.2"; + pname = "cryptography"; + name = "${pname}${version}"; + version = "1.8.1"; - src = pkgs.fetchurl { - url = "mirror://pypi/c/cryptography/${name}.tar.gz"; - sha256 = "1ad9zmzi31fnz31qfchxcwiydvlxq88xndlgsvzr7m537n5vd347"; + src = fetchPypi { + inherit pname version; + sha256 = "323524312bb467565ebca7e50c8ae5e9674e544951d28a2904a50012a8828190"; }; - buildInputs = [ pkgs.openssl self.pretend self.cryptography_vectors - self.iso8601 self.pyasn1 self.pytest_29 self.py self.hypothesis self.pytz ] + buildInputs = [ pkgs.openssl self.cryptography_vectors ] ++ optional stdenv.isDarwin pkgs.darwin.apple_sdk.frameworks.Security; - propagatedBuildInputs = with self; [ six idna ipaddress pyasn1 cffi pyasn1-modules pytz ] - ++ optional (pythonOlder "3.4") self.enum34; + propagatedBuildInputs = with self; [ + idna + asn1crypto + packaging + six + ] ++ optional (pythonOlder "3.4") enum34 + ++ optional (pythonOlder "3.3") ipaddress + ++ optional (!isPyPy) cffi; + + checkInputs = with self; [ + pytest + pretend + iso8601 + pytz + hypothesis + ]; # The test assumes that if we're on Sierra or higher, that we use `getentropy`, but for binary # compatibility with pre-Sierra for binary caches, we hide that symbol so the library doesn't # use it. This boils down to them checking compatibility with `getentropy` in two different places, # so let's neuter the second test. - patchPhase = '' + postPatch = '' substituteInPlace ./tests/hazmat/backends/test_openssl.py --replace '"16.0"' '"99.0"' ''; @@ -4571,13 +4587,17 @@ in { cryptography_vectors = buildPythonPackage rec { # also bump cryptography - name = "cryptography_vectors-${version}"; - version = "1.7.2"; + pname = "cryptography_vectors"; + name = "${pname}${version}"; + version = "1.8.1"; - src = pkgs.fetchurl { - url = "mirror://pypi/c/cryptography-vectors/${name}.tar.gz"; - sha256 = "1p5cw3dzgcpzmp81qb9860hn9qlcvr4rnf0fy31fbvhxl7lfxr2b"; + src = fetchPypi { + inherit pname version; + sha256 = "2fd61facea08800ca98ac923f6d02f48a7ae6648025b29cdeb51987c1532add6"; }; + + # No tests included + doCheck = false; }; oslo-vmware = buildPythonPackage rec { @@ -4788,11 +4808,13 @@ in { idna = buildPythonPackage rec { - name = "idna-2.0"; + pname = "idna"; + version = "2.5"; + name = "${pname}-${version}"; - src = pkgs.fetchurl { - url = "mirror://pypi/i/idna/${name}.tar.gz"; - sha256 = "0frxgmgi234lr9hylg62j69j4ik5zhg0wz05w5dhyacbjfnrl68n"; + src = fetchPypi { + inherit pname version; + sha256 = "3cb5ce08046c4e3a560fc02f138d0ac63e00f8ce5901a56b32ec8b7994082aab"; }; meta = { @@ -4928,6 +4950,9 @@ in { sha256 = "0r5r7ygz9m6d2bklflbl84cqhjkc2q12xgis8268ygjh30g2q3wk"; }; + # No tests in archive + doCheck = false; + meta = { homepage = https://github.com/alex/pretend; license = licenses.bsd3; @@ -5637,12 +5662,13 @@ in { }); dask = buildPythonPackage rec { - name = "dask-${version}"; - version = "0.13.0"; + pname = "dask"; + name = "${pname}-${version}"; + version = "0.14.1"; - src = pkgs.fetchurl { - url = "mirror://pypi/d/dask/${name}.tar.gz"; - sha256 = "1f8r6jj9666cnvx3f8bilcx0017smmlw4i4v2p1nwxshs0k514hs"; + src = fetchPypi { + inherit pname version; + sha256 = "46c8ef9aa41a5755f2194b535bff7fdef1343d3993ab294b198caf95155ec94e"; }; buildInputs = with self; [ pytest ]; @@ -6120,11 +6146,11 @@ in { decorator = buildPythonPackage rec { name = "decorator-${version}"; - version = "4.0.10"; + version = "4.0.11"; src = pkgs.fetchurl { url = "mirror://pypi/d/decorator/${name}.tar.gz"; - sha256 = "9c6e98edcb33499881b86ede07d9968c81ab7c769e28e9af24075f0a5379f070"; + sha256 = "953d6bf082b100f43229cf547f4f97f97e970f5ad645ee7601d55ff87afdfe76"; }; meta = { @@ -6289,16 +6315,14 @@ in { dill = buildPythonPackage rec { name = "dill-${version}"; - version = "0.2.5"; + version = "0.2.6"; src = pkgs.fetchurl { - url = "mirror://pypi/d/dill/${name}.tgz"; - sha256 = "431c9d46e190dcdf1397234cf659d66e2e22e33b0474ed6ee2d0b16c9c0ea319"; + url = "mirror://pypi/d/dill/${name}.zip"; + sha256 = "6c1ccca68be483fa8c66e85a89ffc850206c26373aa77a97b83d8d0994e7f1fd"; }; - propagatedBuildInputs = with self; [objgraph]; - - # failing tests + # TypeError: don't know how to make test from: {'byref': False, 'recurse': False, 'protocol': 3, 'fmode': 0} doCheck = false; meta = { @@ -13057,96 +13081,11 @@ in { }; }; - ipykernel = buildPythonPackage rec { - version = "4.5.2"; - name = "ipykernel-${version}"; + ipykernel = callPackage ../development/python-modules/ipykernel { }; - src = pkgs.fetchurl { - url = "mirror://pypi/i/ipykernel/${name}.tar.gz"; - sha256 = "5a54f25f0e6c8ee74c362c23f9a95e10e74c6b7f5ef42059c861ff6f26d89462"; - }; + ipyparallel = callPackage ../development/python-modules/ipyparallel { }; - buildInputs = with self; [ nose ] ++ optionals isPy27 [mock]; - propagatedBuildInputs = with self; [ - ipython - jupyter_client - pexpect - traitlets - tornado - ]; - - # Tests require backends. - # I don't want to add all supported backends as propagatedBuildInputs - doCheck = false; - - meta = { - description = "IPython Kernel for Jupyter"; - homepage = http://ipython.org/; - license = licenses.bsd3; - maintainers = with maintainers; [ fridh ]; - }; - }; - - ipyparallel = buildPythonPackage rec { - version = "6.0.0"; - name = "ipyparallel-${version}"; - - src = pkgs.fetchurl { - url = "mirror://pypi/i/ipyparallel/${name}.tar.gz"; - sha256 = "9bb5032e98a8c73ddb3da5fb8eecd93c676a5278b68799ab19257b348a0a27f6"; - }; - - buildInputs = with self; [ nose ]; - - propagatedBuildInputs = with self; [ dateutil ipython_genutils decorator pyzmq ipython jupyter_client ipykernel tornado - ] ++ optionals (!isPy3k) [ futures ]; - - # Requires access to cluster - doCheck = false; - - meta = { - description = "Interactive Parallel Computing with IPython"; - homepage = http://ipython.org/; - license = licenses.bsd3; - maintainers = with maintainers; [ fridh ]; - }; - - }; - - ipython = buildPythonPackage rec { - version = "5.3.0"; - name = "ipython-${version}"; - - src = pkgs.fetchurl { - url = "mirror://pypi/i/ipython/${name}.tar.gz"; - sha256 = "bf5e615e7d96dac5a61fbf98d9e2926d98aa55582681bea7e9382992a3f43c1d"; - }; - - prePatch = stdenv.lib.optionalString stdenv.isDarwin '' - substituteInPlace setup.py --replace "'gnureadline'" " " - ''; - - buildInputs = with self; [ nose pkgs.glibcLocales pygments ] ++ optionals isPy27 [mock]; - - propagatedBuildInputs = with self; - [ backports_shutil_get_terminal_size decorator pickleshare prompt_toolkit - simplegeneric traitlets requests2 pathlib2 pexpect ] - ++ optionals stdenv.isDarwin [appnope]; - - LC_ALL="en_US.UTF-8"; - - doCheck = false; # Circular dependency with ipykernel - - checkPhase = '' - nosetests - ''; - meta = { - description = "IPython: Productive Interactive Computing"; - homepage = http://ipython.org/; - license = licenses.bsd3; - maintainers = with maintainers; [ bjornfor jgeerds fridh ]; - }; - }; + ipython = callPackage ../development/python-modules/ipython { }; ipython_genutils = buildPythonPackage rec { version = "0.2.0"; @@ -13173,28 +13112,7 @@ in { }; - ipywidgets = buildPythonPackage rec { - version = "5.2.2"; - name = "ipywidgets-${version}"; - - src = pkgs.fetchurl { - url = "mirror://pypi/i/ipywidgets/${name}.tar.gz"; - sha256 = "baf6098f054dd5eacc2934b8ea3bef908b81ca8660d839f1f940255a72c660d2"; - }; - - # Tests are not distributed - doCheck = false; - - buildInputs = with self; [ nose pytest ]; - propagatedBuildInputs = with self; [ipython ipykernel traitlets notebook widgetsnbextension ]; - - meta = { - description = "IPython HTML widgets for Jupyter"; - homepage = http://ipython.org/; - license = licenses.bsd3; - maintainers = with maintainers; [ fridh ]; - }; - }; + ipywidgets = callPackage ../development/python-modules/ipywidgets { }; ipaddr = buildPythonPackage rec { name = "ipaddr-2.1.10"; @@ -13325,30 +13243,7 @@ in { jabberbot = callPackage ../development/python-modules/jabberbot.nix {}; - jedi = buildPythonPackage (rec { - name = "jedi-0.9.0"; - - src = pkgs.fetchurl { - url = "mirror://pypi/j/jedi/${name}.tar.gz"; - sha256 = "0c8x962ynpx001fdvp07m2q5jk4igkxbj3rmnydavphvlgxijk1v"; - }; - - buildInputs = [ self.pytest ]; - - checkPhase = '' - py.test test - ''; - - # 7 failed - doCheck = false; - - meta = { - homepage = https://github.com/davidhalter/jedi; - description = "An autocompletion tool for Python that can be used for text editors"; - license = licenses.lgpl3Plus; - maintainers = with maintainers; [ garbas ]; - }; - }); + jedi = callPackage ../development/python-modules/jedi { }; jellyfish = buildPythonPackage rec { version = "0.5.2"; @@ -13487,32 +13382,7 @@ in { inherit (pkgs.jsonnet) name src; }; - jupyter_client = buildPythonPackage rec { - version = "5.0.0"; - name = "jupyter_client-${version}"; - - src = pkgs.fetchurl { - url = "mirror://pypi/j/jupyter_client/${name}.tar.gz"; - sha256 = "2766f9c2deb9ae826e65d53a56a36d69b184f63d0dcb7710835273327126bc5b"; - }; - - buildInputs = with self; [ nose ]; - propagatedBuildInputs = with self; [traitlets jupyter_core pyzmq dateutil] ++ optional isPyPy py; - - checkPhase = '' - nosetests -v - ''; - - # Circular dependency with ipykernel - doCheck = false; - - meta = { - description = "Jupyter protocol implementation and client libraries"; - homepage = http://jupyter.org/; - license = licenses.bsd3; - maintainers = with maintainers; [ fridh ]; - }; - }; + jupyter_client = callPackage ../development/python-modules/jupyter_client { }; jupyter_core = buildPythonPackage rec { version = "4.3.0"; @@ -13928,26 +13798,7 @@ in { }; }; - line_profiler = buildPythonPackage rec{ - version = "1.0"; - name = "line_profiler-${version}"; - - src = pkgs.fetchurl { - url = "mirror://pypi/l/line_profiler/${name}.tar.gz"; - sha256 = "a9e0c9ffa814f1215107c86c890afa8e63bec5a37d951f6f9d3668c1df2b1900"; - }; - - buildInputs = with self; [ cython ]; - - disabled = isPyPy; - - meta = { - description = "Line-by-line profiler"; - homepage = https://github.com/rkern/line_profiler; - license = licenses.bsd3; - maintainers = with maintainers; [ fridh ]; - }; - }; + line_profiler = callPackage ../development/python-modules/line_profiler { }; linode = buildPythonPackage rec { name = "linode-${version}"; @@ -14059,7 +13910,7 @@ in { }; }; - llvmlite = callPackage ../development/python-modules/llvmlite {llvm=pkgs.llvm_38;}; + llvmlite = callPackage ../development/python-modules/llvmlite {llvm=pkgs.llvm_39;}; lockfile = buildPythonPackage rec { pname = "lockfile"; @@ -14209,17 +14060,19 @@ in { src = pkgs.file.src; patchPhase = '' - substituteInPlace python/magic.py --replace "find_library('magic')" "'${pkgs.file}/lib/libmagic.so'" + substituteInPlace python/magic.py --replace "find_library('magic')" "'${pkgs.file}/lib/libmagic.${if stdenv.isDarwin then "dylib" else "so"}'" ''; - buildInputs = with self; [ python pkgs.file ]; + buildInputs = with self; [ pkgs.file ]; preConfigure = "cd python"; + # No test suite + doCheck = false; + meta = { description = "A Python wrapper around libmagic"; homepage = http://www.darwinsys.com/file/; - broken = true; }; }; @@ -15154,6 +15007,9 @@ in { sha256 = "bda6abb8188d9abb429bd17ed15bc7433f77f1b05a78cfff761711ed81daa7a2"; }; + # No tests in archive + doCheck = false; + meta = { homepage = http://github.com/mrocklin/multipledispatch/; description = "A relatively sane approach to multiple dispatch in Python"; @@ -15734,16 +15590,28 @@ in { }; netaddr = buildPythonPackage rec { - name = "netaddr-0.7.18"; - doCheck = !isPy35; # https://github.com/drkjam/netaddr/issues/117 + pname = "netaddr"; + version = "0.7.19"; + name = "${pname}-${version}"; - src = pkgs.fetchurl { - url = "mirror://pypi/n/netaddr/${name}.tar.gz"; - sha256 = "06dxjlbcicq7q3vqy8agq11ra01kvvd47j4mk6dmghjsyzyckxd1"; + src = fetchPypi { + inherit pname version; + sha256 = "38aeec7cdd035081d3a4c306394b19d677623bf76fa0913f6695127c7753aefd"; }; LC_ALL = "en_US.UTF-8"; - buildInputs = [ pkgs.glibcLocales ]; + buildInputs = with self; [ pkgs.glibcLocales pytest ]; + + checkPhase = '' + py.test netaddr/tests + ''; + + patches = [ + (pkgs.fetchpatch { + url = https://github.com/drkjam/netaddr/commit/2ab73f10be7069c9412e853d2d0caf29bd624012.patch; + sha256 = "08rn1s3w9424jhandy4j9sksy852ny00088zh15nirw5ajqg1dn7"; + }) + ]; meta = { homepage = https://github.com/drkjam/netaddr/; @@ -16099,35 +15967,7 @@ in { buildInputs = with self; [ nose ]; }; - notebook = buildPythonPackage rec { - version = "4.4.1"; - name = "notebook-${version}"; - - src = pkgs.fetchurl { - url = "mirror://pypi/n/notebook/${name}.tar.gz"; - sha256 = "dfadef2babd7c04c6c257df7d07d7ba587e503dbb4e4c95305f9a95b8d3a9765"; - }; - - LC_ALL = "en_US.UTF-8"; - - buildInputs = with self; [nose pkgs.glibcLocales] ++ optionals isPy27 [mock]; - - propagatedBuildInputs = with self; [jinja2 tornado ipython_genutils traitlets jupyter_core jupyter_client nbformat nbconvert ipykernel terminado requests2 pexpect]; - - checkPhase = '' - nosetests -v - ''; - - # Certain tests fail due to being in a chroot. - # PermissionError - doCheck = false; - meta = { - description = "The Jupyter HTML notebook is a web-based notebook environment for interactive computing"; - homepage = http://jupyter.org/; - license = licenses.bsd3; - maintainers = with maintainers; [ fridh ]; - }; - }; + notebook = callPackage ../development/python-modules/notebook { }; notify = pkgs.stdenv.mkDerivation (rec { name = "python-notify-0.1.1"; @@ -16281,13 +16121,13 @@ in { # Therefore we create a separate env for it. scons = pkgs.python27.withPackages(ps: [ pkgs.scons ]); in buildPythonPackage rec { - version = "0.5.21.3"; + version = "0.5.25"; name = "Nuitka-${version}"; # Latest version is not yet on PyPi src = pkgs.fetchurl { url = "https://github.com/kayhayen/Nuitka/archive/${version}.tar.gz"; - sha256 = "1i2069hxb94q9kkwcbky59fin8hk1vlj90lwgmrdhn1srvig1cq3"; + sha256 = "11psz0pyj56adv4b3f47hl8jakvp2mc2c85s092a5rsv1la1a0aa"; }; buildInputs = with self; stdenv.lib.optionals doCheck [ vmprof pyqt4 ]; @@ -18206,6 +18046,9 @@ in { checkPhase = '' nosetests -v $out/${python.sitePackages} ''; + postPatch = '' + substituteInPlace setup.py --replace "__builtins__.__NUMPY_SETUP__ = False" "" + ''; }; paho-mqtt = buildPythonPackage rec { @@ -19373,10 +19216,10 @@ in { prompt_toolkit = buildPythonPackage rec { name = "prompt_toolkit-${version}"; - version = "1.0.13"; + version = "1.0.14"; src = pkgs.fetchurl { - sha256 = "33d68ca09f76cd73287fde7df5748ffacf26a8238dd61ee81ac50860ea7c6776"; + sha256 = "cc66413b1b4b17021675d9f2d15d57e640b06ddfd99bb724c73484126d22622f"; url = "mirror://pypi/p/prompt_toolkit/${name}.tar.gz"; }; checkPhase = '' @@ -22331,28 +22174,7 @@ in { }; }; - qtconsole = buildPythonPackage rec { - version = "4.2.1"; - name = "qtconsole-${version}"; - - src = pkgs.fetchurl { - url = "mirror://pypi/q/qtconsole/${name}.tar.gz"; - sha256 = "1vqqx9hdvrg2d336wjyw0vr5b5v97kflkqqvr7ryicr8als7vv15"; - }; - - buildInputs = with self; [ nose ] ++ optionals isPy27 [mock]; - propagatedBuildInputs = with self; [traitlets jupyter_core jupyter_client pygments ipykernel pyqt5]; - - # : cannot connect to X server - doCheck = false; - - meta = { - description = "Jupyter Qt console"; - homepage = http://jupyter.org/; - license = licenses.bsd3; - maintainers = with maintainers; [ fridh ]; - }; - }; + qtconsole = callPackage ../development/python-modules/qtconsole { }; quantities = buildPythonPackage rec { name = "quantities-0.10.1"; @@ -25130,29 +24952,7 @@ in { }; }; - statsmodels = buildPythonPackage rec { - name = "statsmodels-${version}"; - version = "0.6.1"; - - src = pkgs.fetchurl { - url = "mirror://pypi/s/statsmodels/${name}.tar.gz"; - sha256 = "be4e44374aec9e848b73e5a230dee190ac0c4519e1d40f69a5813190b13ec676"; - }; - - buildInputs = with self; [ nose ]; - propagatedBuildInputs = with self; [numpy scipy pandas patsy cython matplotlib]; - - meta = { - description = "Statistical computations and models for use with SciPy"; - homepage = "https://www.github.com/statsmodels/statsmodels"; - license = licenses.bsd3; - maintainers = with maintainers; [ fridh ]; - }; - - # Many tests fail when using latest numpy and pandas. - # See also https://github.com/statsmodels/statsmodels/issues/2602 - doCheck = false; - }; + statsmodels = callPackage ../development/python-modules/statsmodels { }; python_statsd = buildPythonPackage rec { name = "python-statsd-${version}"; @@ -27183,27 +26983,7 @@ EOF }; }; - widgetsnbextension = buildPythonPackage rec { - name = "widgetsnbextension-${version}"; - version = "1.2.6"; - - src = pkgs.fetchurl { - url = "mirror://pypi/w/widgetsnbextension/${name}.tar.gz"; - sha256 = "c618cfb32978c9517caf0b4ef3aec312f8dd138577745e7b0d4abfcc7315ce51"; - }; - - propagatedBuildInputs = with self; [ notebook ]; - - # No tests in archive - doCheck = false; - - meta = { - description = "IPython HTML widgets for Jupyter"; - homepage = http://ipython.org/; - license = self.ipywidgets.meta.license; # Build from same repo - maintainers = with maintainers; [ fridh ]; - }; - }; + widgetsnbextension = callPackage ../development/python-modules/widgetsnbextension { }; willie = buildPythonPackage rec { name = "willie-${version}"; @@ -27345,29 +27125,7 @@ EOF }; }); - xarray = buildPythonPackage rec { - name = "xarray-${version}"; - version = "0.9.1"; - - src = pkgs.fetchurl { - url = "mirror://pypi/x/xarray/${name}.tar.gz"; - sha256 = "89772ed0e23f0e71c3fb8323746374999ecbe79c113e3fadc7ae6374e6dc0525"; - }; - - buildInputs = with self; [ pytest ]; - propagatedBuildInputs = with self; [numpy pandas]; - - checkPhase = '' - py.test $out/${python.sitePackages} - ''; - - meta = { - description = "N-D labeled arrays and datasets in Python"; - homepage = https://github.com/pydata/xarray; - license = licenses.asl20; - maintainers = with maintainers; [ fridh ]; - }; - }; + xarray = callPackage ../development/python-modules/xarray { }; xlwt = callPackage ../development/python-modules/xlwt { }; @@ -32002,6 +31760,10 @@ EOF license = [ licenses.bsd2 licenses.asl20 ]; maintainers = with maintainers; [ bennofs ]; }; + + checkPhase = '' + py.test + ''; }; pypandoc = buildPythonPackage rec {