diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index d77f064ed552..44d22fb5225d 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -7,17 +7,34 @@ # For documentation on this file, see https://help.github.com/articles/about-codeowners/ # Mentioned users will get code review requests. -# Python-related code and docs -pkgs/top-level/python-packages.nix @FRidh -pkgs/development/interpreters/python/* @FRidh -pkgs/development/python-modules/* @FRidh -doc/languages-frameworks/python.md @FRidh - # Boostraping and core infra -pkgs/stdenv/ @Ericson2314 -pkgs/build-support/cc-wrapper/ @Ericson2314 +pkgs/stdenv/ @Ericson2314 +pkgs/build-support/cc-wrapper/ @Ericson2314 + +# Libraries +lib/ @Profpatsch + +# Build-Support +pkgs/build-support @Profpatsch + +# Python-related code and docs +pkgs/top-level/python-packages.nix @FRidh +pkgs/development/interpreters/python/* @FRidh +pkgs/development/python-modules/* @FRidh +doc/languages-frameworks/python.md @FRidh + +# Haskell +pkgs/development/compilers/ghc @peti +pkgs/development/haskell-modules @peti +pkgs/development/haskell-modules/default.nix @Profpatsch @peti +pkgs/development/haskell-modules/generic-builder.nix @Profpatsch @peti +pkgs/development/haskell-modules/hoogle.nix @Profpatsch @peti + +# R +pkgs/applications/science/math/R @peti +pkgs/development/r-modules @peti # Darwin-related -pkgs/stdenv/darwin/* @copumpkin @LnL7 -pkgs/os-specific/darwin/* @LnL7 -pkgs/os-specific/darwin/apple-source-releases/* @copumpkin +pkgs/stdenv/darwin/* @copumpkin @LnL7 +pkgs/os-specific/darwin/* @LnL7 +pkgs/os-specific/darwin/apple-source-releases/* @copumpkin diff --git a/lib/maintainers.nix b/lib/maintainers.nix index ea1cff03fe2e..e2ee441d9ddf 100644 --- a/lib/maintainers.nix +++ b/lib/maintainers.nix @@ -577,6 +577,7 @@ tavyc = "Octavian Cerna "; ltavard = "Laure Tavard "; teh = "Tom Hunger "; + teto = "Matthieu Coudron "; telotortium = "Robert Irelan "; thall = "Niclas Thall "; thammers = "Tobias Hammerschmidt "; diff --git a/nixos/modules/virtualisation/docker.nix b/nixos/modules/virtualisation/docker.nix index 5a8a0e27436f..a9a2095499a7 100644 --- a/nixos/modules/virtualisation/docker.nix +++ b/nixos/modules/virtualisation/docker.nix @@ -126,14 +126,23 @@ in ''; }; }; + + package = mkOption { + default = pkgs.docker; + type = types.package; + example = pkgs.docker-edge; + description = '' + Docker package to be used in the module. + ''; + }; }; ###### implementation config = mkIf cfg.enable (mkMerge [{ - environment.systemPackages = [ pkgs.docker ]; + environment.systemPackages = [ cfg.package ]; users.extraGroups.docker.gid = config.ids.gids.docker; - systemd.packages = [ pkgs.docker ]; + systemd.packages = [ cfg.package ]; systemd.services.docker = { wantedBy = optional cfg.enableOnBoot "multi-user.target"; @@ -142,7 +151,7 @@ in ExecStart = [ "" '' - ${pkgs.docker}/bin/dockerd \ + ${cfg.package}/bin/dockerd \ --group=docker \ --host=fd:// \ --log-driver=${cfg.logDriver} \ @@ -180,7 +189,7 @@ in serviceConfig.Type = "oneshot"; script = '' - ${pkgs.docker}/bin/docker system prune -f ${toString cfg.autoPrune.flags} + ${cfg.package}/bin/docker system prune -f ${toString cfg.autoPrune.flags} ''; startAt = optional cfg.autoPrune.enable cfg.autoPrune.dates; diff --git a/nixos/release-combined.nix b/nixos/release-combined.nix index 84dda8cc64c2..6f6253e330b7 100644 --- a/nixos/release-combined.nix +++ b/nixos/release-combined.nix @@ -81,7 +81,10 @@ in rec { (all nixos.tests.boot.uefiUsb) (all nixos.tests.boot-stage1) nixos.tests.hibernate.x86_64-linux # i686 is flaky, see #23107 + nixos.tests.docker.x86_64-linux + nixos.tests.docker-edge.x86_64-linux (all nixos.tests.ecryptfs) + (all nixos.tests.env) (all nixos.tests.ipv6) (all nixos.tests.i3wm) (all nixos.tests.keymap.azerty) @@ -93,6 +96,7 @@ in rec { (all nixos.tests.plasma5) (all nixos.tests.kernel-latest) (all nixos.tests.kernel-lts) + (all nixos.tests.kernel-params) #(all nixos.tests.lightdm) (all nixos.tests.login) (all nixos.tests.misc) @@ -115,8 +119,10 @@ in rec { (all nixos.tests.sddm.default) (all nixos.tests.simple) (all nixos.tests.slim) + (all nixos.tests.sysctl) (all nixos.tests.udisks2) (all nixos.tests.xfce) + (all nixos.tests.xmonad) nixpkgs.tarball (all allSupportedNixpkgs.emacs) diff --git a/nixos/release.nix b/nixos/release.nix index 59c269627f19..a893a64df1c2 100644 --- a/nixos/release.nix +++ b/nixos/release.nix @@ -234,12 +234,14 @@ in rec { tests.containers-hosts = callTest tests/containers-hosts.nix {}; tests.containers-macvlans = callTest tests/containers-macvlans.nix {}; tests.docker = hydraJob (import tests/docker.nix { system = "x86_64-linux"; }); + tests.docker-edge = hydraJob (import tests/docker-edge.nix { system = "x86_64-linux"; }); tests.dnscrypt-proxy = callTest tests/dnscrypt-proxy.nix { system = "x86_64-linux"; }; tests.ecryptfs = callTest tests/ecryptfs.nix {}; tests.etcd = hydraJob (import tests/etcd.nix { system = "x86_64-linux"; }); tests.ec2-nixops = hydraJob (import tests/ec2.nix { system = "x86_64-linux"; }).boot-ec2-nixops; tests.ec2-config = hydraJob (import tests/ec2.nix { system = "x86_64-linux"; }).boot-ec2-config; tests.elk = callTest tests/elk.nix {}; + tests.env = callTest tests/env.nix {}; tests.ferm = callTest tests/ferm.nix {}; tests.firefox = callTest tests/firefox.nix {}; tests.firewall = callTest tests/firewall.nix {}; @@ -264,6 +266,7 @@ in rec { tests.kernel-copperhead = tests/kernel-copperhead.nix {}; tests.kernel-latest = tests/kernel-latest.nix {}; tests.kernel-lts = tests/kernel-lts.nix {}; + tests.kernel-params = tests/kernel-params.nix {}; tests.keystone = callTest tests/keystone.nix {}; tests.kubernetes = hydraJob (import tests/kubernetes.nix { system = "x86_64-linux"; }); tests.latestKernel.login = callTest tests/login.nix { latestKernel = true; }; @@ -309,12 +312,14 @@ in rec { tests.slim = callTest tests/slim.nix {}; tests.smokeping = callTest tests/smokeping.nix {}; tests.snapper = callTest tests/snapper.nix {}; + tests.sysctl = callTest tests/sysctl.nix {}; tests.taskserver = callTest tests/taskserver.nix {}; tests.tomcat = callTest tests/tomcat.nix {}; tests.udisks2 = callTest tests/udisks2.nix {}; tests.virtualbox = callSubTests tests/virtualbox.nix { system = "x86_64-linux"; }; tests.wordpress = callTest tests/wordpress.nix {}; tests.xfce = callTest tests/xfce.nix {}; + tests.xmonad = callTest tests/xmonad.nix {}; /* Build a bunch of typical closures so that Hydra can keep track of diff --git a/nixos/tests/docker-edge.nix b/nixos/tests/docker-edge.nix new file mode 100644 index 000000000000..38d25daff194 --- /dev/null +++ b/nixos/tests/docker-edge.nix @@ -0,0 +1,47 @@ +# This test runs docker and checks if simple container starts + +import ./make-test.nix ({ pkgs, ...} : { + name = "docker"; + meta = with pkgs.stdenv.lib.maintainers; { + maintainers = [ nequissimus offline ]; + }; + + nodes = { + docker = + { config, pkgs, ... }: + { + virtualisation.docker.enable = true; + virtualisation.docker.package = pkgs.docker-edge; + + users.users = { + noprivs = { + isNormalUser = true; + description = "Can't access the docker daemon"; + password = "foobar"; + }; + + hasprivs = { + isNormalUser = true; + description = "Can access the docker daemon"; + password = "foobar"; + extraGroups = [ "docker" ]; + }; + }; + }; + }; + + testScript = '' + startAll; + + $docker->waitForUnit("sockets.target"); + $docker->succeed("tar cv --files-from /dev/null | docker import - scratchimg"); + $docker->succeed("docker run -d --name=sleeping -v /nix/store:/nix/store -v /run/current-system/sw/bin:/bin scratchimg /bin/sleep 10"); + $docker->succeed("docker ps | grep sleeping"); + $docker->succeed("sudo -u hasprivs docker ps"); + $docker->fail("sudo -u noprivs docker ps"); + $docker->succeed("docker stop sleeping"); + + # Must match version twice to ensure client and server versions are correct + $docker->succeed('[ $(docker version | grep ${pkgs.docker-edge.version} | wc -l) = "2" ]'); + ''; +}) diff --git a/nixos/tests/docker.nix b/nixos/tests/docker.nix index 9096a5868f6c..c6c8f4cdb5fb 100644 --- a/nixos/tests/docker.nix +++ b/nixos/tests/docker.nix @@ -3,7 +3,7 @@ import ./make-test.nix ({ pkgs, ...} : { name = "docker"; meta = with pkgs.stdenv.lib.maintainers; { - maintainers = [ offline ]; + maintainers = [ nequissimus offline ]; }; nodes = { @@ -11,6 +11,7 @@ import ./make-test.nix ({ pkgs, ...} : { { config, pkgs, ... }: { virtualisation.docker.enable = true; + virtualisation.docker.package = pkgs.docker; users.users = { noprivs = { @@ -39,5 +40,8 @@ import ./make-test.nix ({ pkgs, ...} : { $docker->succeed("sudo -u hasprivs docker ps"); $docker->fail("sudo -u noprivs docker ps"); $docker->succeed("docker stop sleeping"); + + # Must match version twice to ensure client and server versions are correct + $docker->succeed('[ $(docker version | grep ${pkgs.docker.version} | wc -l) = "2" ]'); ''; }) diff --git a/nixos/tests/env.nix b/nixos/tests/env.nix new file mode 100644 index 000000000000..c6b0424e97b9 --- /dev/null +++ b/nixos/tests/env.nix @@ -0,0 +1,35 @@ +import ./make-test.nix ({ pkgs, ...} : { + name = "environment"; + meta = with pkgs.stdenv.lib.maintainers; { + maintainers = [ nequissimus ]; + }; + + machine = { config, lib, pkgs, ... }: + { + boot.kernelPackages = pkgs.linuxPackages; + environment.etc."plainFile".text = '' + Hello World + ''; + environment.etc."folder/with/file".text = '' + Foo Bar! + ''; + + environment.sessionVariables = { + TERMINFO_DIRS = "/run/current-system/sw/share/terminfo"; + NIXCON = "awesome"; + }; + }; + + testScript = + '' + $machine->succeed('[ -L "/etc/plainFile" ]'); + $machine->succeed('cat "/etc/plainFile" | grep "Hello World"'); + $machine->succeed('[ -d "/etc/folder" ]'); + $machine->succeed('[ -d "/etc/folder/with" ]'); + $machine->succeed('[ -L "/etc/folder/with/file" ]'); + $machine->succeed('cat "/etc/plainFile" | grep "Hello World"'); + + $machine->succeed('echo ''${TERMINFO_DIRS} | grep "/run/current-system/sw/share/terminfo"'); + $machine->succeed('echo ''${NIXCON} | grep "awesome"'); + ''; +}) diff --git a/nixos/tests/kernel-params.nix b/nixos/tests/kernel-params.nix new file mode 100644 index 000000000000..14a393356911 --- /dev/null +++ b/nixos/tests/kernel-params.nix @@ -0,0 +1,24 @@ +import ./make-test.nix ({ pkgs, ...} : { + name = "kernel-params"; + meta = with pkgs.stdenv.lib.maintainers; { + maintainers = [ nequissimus ]; + }; + + machine = { config, lib, pkgs, ... }: + { + boot.kernelPackages = pkgs.linuxPackages; + boot.kernelParams = [ + "nohibernate" + "page_poison=1" + "vsyscall=none" + ]; + }; + + testScript = + '' + $machine->fail("cat /proc/cmdline | grep page_poison=0"); + $machine->succeed("cat /proc/cmdline | grep nohibernate"); + $machine->succeed("cat /proc/cmdline | grep page_poison=1"); + $machine->succeed("cat /proc/cmdline | grep vsyscall=none"); + ''; +}) diff --git a/nixos/tests/sysctl.nix b/nixos/tests/sysctl.nix new file mode 100644 index 000000000000..d7220cabb22c --- /dev/null +++ b/nixos/tests/sysctl.nix @@ -0,0 +1,25 @@ +import ./make-test.nix ({ pkgs, ...} : { + name = "sysctl"; + meta = with pkgs.stdenv.lib.maintainers; { + maintainers = [ nequissimus ]; + }; + + machine = { config, lib, pkgs, ... }: + { + boot.kernelPackages = pkgs.linuxPackages; + boot.kernel.sysctl = { + "kernel.dmesg_restrict" = true; # Restrict dmesg access + "net.core.bpf_jit_enable" = false; # Turn off bpf JIT + "user.max_user_namespaces" = 0; # Disable user namespaces + "vm.swappiness" = 2; # Low swap usage + }; + }; + + testScript = + '' + $machine->succeed("sysctl kernel.dmesg_restrict | grep 'kernel.dmesg_restrict = 1'"); + $machine->succeed("sysctl net.core.bpf_jit_enable | grep 'net.core.bpf_jit_enable = 0'"); + $machine->succeed("sysctl user.max_user_namespaces | grep 'user.max_user_namespaces = 0'"); + $machine->succeed("sysctl vm.swappiness | grep 'vm.swappiness = 2'"); + ''; +}) diff --git a/nixos/tests/xmonad.nix b/nixos/tests/xmonad.nix new file mode 100644 index 000000000000..2e86f942a662 --- /dev/null +++ b/nixos/tests/xmonad.nix @@ -0,0 +1,28 @@ +import ./make-test.nix ({ pkgs, ...} : { + name = "xmonad"; + meta = with pkgs.stdenv.lib.maintainers; { + maintainers = [ nequissimus ]; + }; + + machine = { lib, pkgs, ... }: { + imports = [ ./common/x11.nix ./common/user-account.nix ]; + services.xserver.displayManager.auto.user = "alice"; + services.xserver.windowManager.default = lib.mkForce "xmonad"; + services.xserver.windowManager.xmonad = { + enable = true; + enableContribAndExtras = true; + extraPackages = with pkgs.haskellPackages; haskellPackages: [ xmobar ]; + }; + }; + + testScript = { nodes, ... }: '' + $machine->waitForX; + $machine->waitForFile("/home/alice/.Xauthority"); + $machine->succeed("xauth merge ~alice/.Xauthority"); + $machine->sleep(3); + $machine->sendKeys("alt-shift-ret"); + $machine->waitForWindow(qr/machine.*alice/); + $machine->sleep(1); + $machine->screenshot("terminal"); + ''; +}) diff --git a/pkgs/applications/misc/toot/default.nix b/pkgs/applications/misc/toot/default.nix index 4f66d7167e10..0342722c7f7c 100644 --- a/pkgs/applications/misc/toot/default.nix +++ b/pkgs/applications/misc/toot/default.nix @@ -1,19 +1,25 @@ { stdenv, fetchFromGitHub, pythonPackages }: pythonPackages.buildPythonApplication rec { - version = "0.8.0"; + version = "0.13.0"; name = "toot-${version}"; src = fetchFromGitHub { owner = "ihabunek"; repo = "toot"; rev = "${version}"; - sha256 = "1y1jz4f53njq94zab0icf7jhd4jp10ywm508l4lw6spb69wr7rdy"; + sha256 = "0gbsq43qv5qg4avx7czs57k40m8lzh8f1z5yizqqc7r02p2sacnc"; }; + checkInputs = with pythonPackages; [ pytest ]; + propagatedBuildInputs = with pythonPackages; [ requests beautifulsoup4 future ]; + checkPhase = '' + py.test + ''; + meta = with stdenv.lib; { description = "Mastodon CLI interface"; homepage = "https://github.com/ihabunek/toot"; diff --git a/pkgs/applications/networking/syncthing/default.nix b/pkgs/applications/networking/syncthing/default.nix index dd2576cd0830..e82bd462fe32 100644 --- a/pkgs/applications/networking/syncthing/default.nix +++ b/pkgs/applications/networking/syncthing/default.nix @@ -1,14 +1,14 @@ { stdenv, lib, fetchFromGitHub, go, procps, removeReferencesTo }: stdenv.mkDerivation rec { - version = "0.14.36"; + version = "0.14.37"; name = "syncthing-${version}"; src = fetchFromGitHub { owner = "syncthing"; repo = "syncthing"; rev = "v${version}"; - sha256 = "1l4s74qlabwfkpi9lmm588ym0myavbs06a5gpp9nihzrsal18727"; + sha256 = "0mk09m5wc6g7w65cf86rrvzb2gfzbg4jrkwpsabn732iyhkkaj4z"; }; buildInputs = [ go removeReferencesTo ]; diff --git a/pkgs/applications/science/electronics/adms/default.nix b/pkgs/applications/science/electronics/adms/default.nix new file mode 100644 index 000000000000..d4ec974007cf --- /dev/null +++ b/pkgs/applications/science/electronics/adms/default.nix @@ -0,0 +1,25 @@ +{ stdenv, fetchFromGitHub, libtool, autoreconfHook, flex, bison, gperf, + libxml2, perl, perlPackages, gd }: + +stdenv.mkDerivation rec { + version = "2.3.6"; + name = "adms-${version}"; + + src = fetchFromGitHub { + owner = "Qucs"; + repo = "adms"; + rev = "release-${version}"; + sha256 = "1pcwq5khzdq4x33lid9hq967gv78dr5i4f2sk8m8rwkfqb9vdzrg"; + }; + + buildInputs = [ autoreconfHook flex bison gperf libxml2 perl gd perlPackages.XMLLibXML ]; + configureFlags = [ "--enable-maintainer-mode" ]; + + meta = { + description = "automatic device model synthesizer"; + homepage = https://github.com/Qucs/adms; + license = stdenv.lib.licenses.gpl3; + maintainers = with stdenv.lib.maintainers; [disassembler]; + platforms = with stdenv.lib.platforms; linux; + }; +} diff --git a/pkgs/applications/science/electronics/qucs/cmakelists.patch b/pkgs/applications/science/electronics/qucs/cmakelists.patch new file mode 100644 index 000000000000..27066f09c84e --- /dev/null +++ b/pkgs/applications/science/electronics/qucs/cmakelists.patch @@ -0,0 +1,34 @@ +diff --git i/qucs-core/CMakeLists.txt w/qucs-core/CMakeLists.txt +index 2dbbd41..d174b50 100644 +--- i/qucs-core/CMakeLists.txt ++++ w/qucs-core/CMakeLists.txt +@@ -158,26 +158,9 @@ ENDIF() + + # + # Need Bison +-# +-# This is a HACK to get arround a PATH issue with Qt Creator on OSX. +-# It seams impossible to pass a custom PATH to Qt Creator on OSX, ie, cannot prepend `/usr/local/bin/` for intance. +-# The FIND_PACKAGE fails. For now we provide a fallback with a custom FIND_PROGRAM. The variable BISON_DIR is also available. +-IF(WIN32) +- FIND_PACKAGE(BISON 2.4 REQUIRED) +- IF(BISON_FOUND) +- #MESSAGE(STATUS "Found bison: ${BISON_EXECUTABLE} / Version: ${BISON_VERSION}" ) +- ENDIF() +-ELSE() # Linux, OSX +- # use -DBISON_DIR=/path/ to provide the path to bison +- FIND_PROGRAM( BISON_EXECUTABLE bison +- PATHS /usr/local/bin/ /opt/local/bin/ /usr/bin ${BISON_DIR} +- DOC "bison path" +- NO_DEFAULT_PATH ) +- IF(BISON_EXECUTABLE ) +- MESSAGE(STATUS "Found bison: " ${BISON_EXECUTABLE}) +- ELSE() +- MESSAGE(FATAL_ERROR "Unable to find bison. Try to provide -DBISON_DIR=[path]") +- ENDIF() ++FIND_PACKAGE(BISON 2.4 REQUIRED) ++IF(BISON_FOUND) ++ #MESSAGE(STATUS "Found bison: ${BISON_EXECUTABLE} / Version: ${BISON_VERSION}" ) + ENDIF() + + # diff --git a/pkgs/applications/science/electronics/qucs/default.nix b/pkgs/applications/science/electronics/qucs/default.nix index 6d89d9e52715..1a5fbf90d10b 100644 --- a/pkgs/applications/science/electronics/qucs/default.nix +++ b/pkgs/applications/science/electronics/qucs/default.nix @@ -1,16 +1,23 @@ -{stdenv, fetchurl, flex, bison, qt4, libX11 }: +{stdenv, fetchFromGitHub, flex, bison, qt4, libX11, cmake, gperf, adms }: stdenv.mkDerivation rec { - name = "qucs-0.0.18"; + version = "0.0.19"; + name = "qucs-${version}"; - src = fetchurl { - url = "mirror://sourceforge/qucs/${name}.tar.gz"; - sha256 = "3609a18b57485dc9f19886ac6694667f3251702175bd1cbbbea37981b2c482a7"; + src = fetchFromGitHub { + owner = "Qucs"; + repo = "qucs"; + rev = "qucs-${version}"; + sha256 = "106h3kjyg7c0hkmzkin7h8fcl32n60835121b2qqih8ixi6r5id6"; }; QTDIR=qt4; - buildInputs = [ flex bison qt4 libX11 ]; + patches = [ + ./cmakelists.patch + ]; + + buildInputs = [ flex bison qt4 libX11 cmake gperf adms ]; meta = { description = "Integrated circuit simulator"; diff --git a/pkgs/applications/science/logic/coq/default.nix b/pkgs/applications/science/logic/coq/default.nix index 9620140dde4b..7378aedc1be7 100644 --- a/pkgs/applications/science/logic/coq/default.nix +++ b/pkgs/applications/science/logic/coq/default.nix @@ -2,10 +2,10 @@ # - The csdp program used for the Micromega tactic is statically referenced. # However, coq can build without csdp by setting it to null. # In this case some Micromega tactics will search the user's path for the csdp program and will fail if it is not found. -# - The patch-level version can be specified through the `version` argument to -# the derivation; it defaults to the greatest. +# - The exact version can be specified through the `version` argument to +# the derivation; it defaults to the latest stable version. -{ stdenv, fetchurl, writeText, pkgconfig +{ stdenv, fetchFromGitHub, writeText, pkgconfig , ocamlPackages, ncurses , buildIde ? true , csdp ? null @@ -14,11 +14,12 @@ let sha256 = { - "8.5pl1" = "1w2xvm6w16khfn63bp95s25hnkn2ny3w0yqg3lq63gp11aqpbyjb"; - "8.5pl2" = "0wyywia0darak2zmc5v0ra9rn0b9whwdfiahralm8v5za499s8w3"; - "8.5pl3" = "0fyk2a4fpifibq8y8jhx1891k55qnsnlygglch64sva0bph94nrh"; - "8.6" = "1pw1xvy1657l1k69wrb911iqqflzhhp8wwsjvihbgc72r3skqg3f"; - "8.6.1" = "17cg2c40y9lskkiqfhngavp8yw3shpqgkpihh30xx0rlhn9amy1j"; + "8.5pl1" = "1976ki5xjg2r907xj9p7gs0kpdinywbwcqlgxqw75dgp0hkgi00n"; + "8.5pl2" = "109rrcrx7mz0fj7725kjjghfg5ydwb24hjsa5hspa27b4caah7rh"; + "8.5pl3" = "15c3rdk59nifzihsp97z4vjxis5xmsnrvpb86qiazj143z2fmdgw"; + "8.6" = "148mb48zpdax56c0blfi7v67lx014lnmrvxxasi28hsibyz2lvg4"; + "8.6.1" = "0llrxcxwy5j87vbbjnisw42rfw1n1pm5602ssx64xaxx3k176g6l"; + "8.7+beta1" = "006rn5896pf39p4z9c6d4xj4zm80j4b67v5gwcixd63msrjqkmxp"; }."${version}"; coq-version = builtins.substring 0 3 version; camlp5 = ocamlPackages.camlp5_strict; @@ -81,8 +82,10 @@ self = stdenv.mkDerivation { ''; }; - src = fetchurl { - url = "http://coq.inria.fr/distrib/V${version}/files/coq-${version}.tar.gz"; + src = fetchFromGitHub { + owner = "coq"; + repo = "coq"; + rev = "V${version}"; inherit sha256; }; diff --git a/pkgs/applications/virtualization/docker/default.nix b/pkgs/applications/virtualization/docker/default.nix index 3ba019aa8d58..043f27e13d24 100644 --- a/pkgs/applications/virtualization/docker/default.nix +++ b/pkgs/applications/virtualization/docker/default.nix @@ -177,13 +177,13 @@ rec { # https://github.com/docker/docker-ce/blob/v${version}/components/engine/hack/dockerfile/binaries-commits docker_17_06 = dockerGen rec { - version = "17.06.1-ce"; - rev = "874a7374f31c77aca693d025101b2de1b20b96c2"; # git commit - sha256 = "08xhww2rhpyj73zgh5maycs85zpc0sm3ak8yyyd92dwgncmyi2im"; - runcRev = "2d41c047c83e09a6d61d464906feb2a2f3c52aa4"; - runcSha256 = "0v5iv29ck6lkxvxh7a56gfrlgfs0bjvjhrq3p6qqv9qjzv825byq"; - containerdRev = "3addd840653146c90a254301d6c3a663c7fd6429"; - containerdSha256 = "0as4s5wd57pdh1cyavkccpgs46kvlhr41v07qrv0phzffdhq3d5j"; + version = "17.06.2-ce"; + rev = "cec0b72a9940e047e945a09e1febd781e88366d6"; # git commit + sha256 = "1scqx28vzh72ziq00lbx92vsb896mj974j8f0zg11y6qc5n5jx3l"; + runcRev = "810190ceaa507aa2727d7ae6f4790c76ec150bd2"; + runcSha256 = "0f1x1z262qg579qb1w21axj3mibq4fbff3gamliw49sdqqnb7vk3"; + containerdRev = "6e23458c129b551d5c9871e5174f6b1b7f6d1170"; + containerdSha256 = "12kzc5z1nhxdbizzr494ywilbs6rdv39v5ql7lmfzwh350gwlg93"; tiniRev = "949e6facb77383876aeff8a6944dde66b3089574"; tiniSha256 = "0zj4kdis1vvc6dwn4gplqna0bs7v6d1y2zc8v80s3zi018inhznw"; }; diff --git a/pkgs/development/libraries/protobuf/3.3.nix b/pkgs/development/libraries/protobuf/3.3.nix new file mode 100644 index 000000000000..e6a8f05cc18d --- /dev/null +++ b/pkgs/development/libraries/protobuf/3.3.nix @@ -0,0 +1,6 @@ +{ callPackage, lib, ... }: + +lib.overrideDerivation (callPackage ./generic-v3.nix { + version = "3.3.0"; + sha256 = "1258yz9flyyaswh3izv227kwnhwcxn4nwavdz9iznqmh24qmi59w"; +}) (attrs: { NIX_CFLAGS_COMPILE = "-Wno-error"; }) diff --git a/pkgs/development/libraries/science/math/cudnn/8.0-6.0/default.nix b/pkgs/development/libraries/science/math/cudnn/8.0-6.0/default.nix new file mode 100644 index 000000000000..21efe5b59576 --- /dev/null +++ b/pkgs/development/libraries/science/math/cudnn/8.0-6.0/default.nix @@ -0,0 +1,40 @@ +{ stdenv +, requireFile +, cudatoolkit +, fetchurl +}: + +stdenv.mkDerivation rec { + version = "6.0"; + cudatoolkit_version = "8.0"; + + name = "cudatoolkit-${cudatoolkit_version}-cudnn-${version}"; + + src = fetchurl { + url = "http://developer.download.nvidia.com/compute/redist/cudnn/v6.0/cudnn-8.0-linux-x64-v6.0.tgz"; + sha256 = "173zpgrk55ri8if7s5yngsc89ajd6hz4pss4cdxlv6lcyh5122cv"; + }; + + installPhase = '' + function fixRunPath { + p=$(patchelf --print-rpath $1) + patchelf --set-rpath "$p:${stdenv.lib.makeLibraryPath [ stdenv.cc.cc ]}" $1 + } + fixRunPath lib64/libcudnn.so + + mkdir -p $out + cp -a include $out/include + cp -a lib64 $out/lib64 + ''; + + propagatedBuildInputs = [ + cudatoolkit + ]; + + meta = with stdenv.lib; { + description = "NVIDIA CUDA Deep Neural Network library (cuDNN)"; + homepage = https://developer.nvidia.com/cudnn; + license = stdenv.lib.licenses.unfree; + maintainers = with maintainers; [ jpbernardy ]; + }; +} diff --git a/pkgs/development/libraries/ucl/default.nix b/pkgs/development/libraries/ucl/default.nix index ceb97b6088bc..aa983b1394b1 100644 --- a/pkgs/development/libraries/ucl/default.nix +++ b/pkgs/development/libraries/ucl/default.nix @@ -1,4 +1,4 @@ -{stdenv, fetchurl}: +{ stdenv, fetchurl }: stdenv.mkDerivation { name = "ucl-1.03"; @@ -8,7 +8,7 @@ stdenv.mkDerivation { }; # needed to successfully compile with gcc 6 - NIX_CFLAGS_COMPILE = "-std=c90 -fPIC"; + NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.cc.isGNU "-std=c90"; meta = { homepage = http://www.oberhumer.com/opensource/ucl/; diff --git a/pkgs/development/python-modules/aioamqp/default.nix b/pkgs/development/python-modules/aioamqp/default.nix new file mode 100644 index 000000000000..10a1d8991576 --- /dev/null +++ b/pkgs/development/python-modules/aioamqp/default.nix @@ -0,0 +1,24 @@ +{ lib, buildPythonPackage, fetchPypi, isPy33, pythonOlder, + asyncio +}: + +buildPythonPackage rec { + pname = "aioamqp"; + name = "${pname}-${version}"; + version = "0.10.0"; + + meta = { + homepage = https://github.com/polyconseil/aioamqp; + description = "AMQP implementation using asyncio"; + license = lib.licenses.bsd3; + }; + + src = fetchPypi { + inherit pname version; + sha256 = "0132921yy31ijb8w439zcz1gla4hiws4hx8zf6la4hjr01nsy666"; + }; + + buildInputs = lib.optionals isPy33 [ asyncio ]; + + disabled = pythonOlder "3.3"; +} diff --git a/pkgs/development/python-modules/asana/default.nix b/pkgs/development/python-modules/asana/default.nix new file mode 100644 index 000000000000..346257db098f --- /dev/null +++ b/pkgs/development/python-modules/asana/default.nix @@ -0,0 +1,37 @@ +{ lib, buildPythonPackage, fetchPypi, + pytest, requests, requests_oauthlib, six +}: + +buildPythonPackage rec { + pname = "asana"; + version = "0.6.2"; + name = "${pname}-${version}"; + + meta = { + description = "Python client library for Asana"; + homepage = https://github.com/asana/python-asana; + license = lib.licenses.mit; + }; + + src = fetchPypi { + inherit pname version; + sha256 = "0skai72392n3i1c4bl3hn2kh5lj990qsbasdwkbjdcy6vq57jggf"; + }; + + buildInputs = [ pytest ]; + propagatedBuildInputs = [ requests requests_oauthlib six ]; + + patchPhase = '' + echo > requirements.txt + sed -i "s/requests~=2.9.1/requests >=2.9.1/" setup.py + sed -i "s/requests_oauthlib~=0.6.1/requests_oauthlib >=0.6.1/" setup.py + ''; + + # ERROR: file not found: tests + doCheck = false; + + checkPhase = '' + py.test tests + ''; + +} diff --git a/pkgs/development/python-modules/astropy/default.nix b/pkgs/development/python-modules/astropy/default.nix index 44ff96cf826f..ba73c232c89a 100644 --- a/pkgs/development/python-modules/astropy/default.nix +++ b/pkgs/development/python-modules/astropy/default.nix @@ -2,9 +2,7 @@ , fetchPypi , buildPythonPackage , numpy -, cython -, h5py -, scipy }: +, pytest }: buildPythonPackage rec { @@ -17,7 +15,8 @@ buildPythonPackage rec { inherit pname version; sha256 = "25e0881a392a2e03b4a705cf9592f01894d23f64797323b21387efa8ea9ec03e"; }; - propagatedBuildInputs = [ numpy cython h5py scipy ]; + + propagatedBuildInputs = [ pytest numpy ]; # yes it really has pytest in install_requires meta = { diff --git a/pkgs/development/python-modules/backports_weakref/default.nix b/pkgs/development/python-modules/backports_weakref/default.nix new file mode 100644 index 000000000000..ad9f7582c094 --- /dev/null +++ b/pkgs/development/python-modules/backports_weakref/default.nix @@ -0,0 +1,33 @@ +{ stdenv +, buildPythonPackage +, fetchPypi +, setuptools_scm +# , backports +, python +}: + +buildPythonPackage rec { + name = "${pname}-${version}"; + pname = "backports.weakref"; + version = "1.0rc1"; + src = fetchPypi { + inherit pname version; + sha256 = "14i8m3lspykdfpzf50grij3z286j9q8f32f2bnwdicv659qvy4w8"; + }; + + buildInputs = [ setuptools_scm ]; +# checkInputs = [ backports ]; + + # Requires backports package + doCheck = false; + + checkPhase = '' + ${python.interpreter} -m unittest discover tests + ''; + + meta = with stdenv.lib; { + description = "Backports of new features in Python’s weakref module"; + license = licenses.psfl; + maintainers = with maintainers; [ jpbernardy ]; + }; +} diff --git a/pkgs/development/python-modules/behave/default.nix b/pkgs/development/python-modules/behave/default.nix new file mode 100644 index 000000000000..80acc58f6544 --- /dev/null +++ b/pkgs/development/python-modules/behave/default.nix @@ -0,0 +1,45 @@ +{ stdenv, fetchPypi +, buildPythonApplication, python, pythonAtLeast +, mock, nose, pyhamcrest +, glibcLocales, parse, parse-type, six +}: +buildPythonApplication rec { + pname = "behave"; + version = "1.2.5"; + name = "${pname}-${version}"; + + disabled = pythonAtLeast "3.6"; + + src = fetchPypi { + inherit pname version; + sha256 = "81b731ac5187e31e4aad2594944fa914943683a9818320846d037c5ebd6d5d0b"; + }; + + checkInputs = [ mock nose pyhamcrest ]; + buildInputs = [ glibcLocales ]; + propagatedBuildInputs = [ parse parse-type six ]; + + postPatch = '' + patchShebangs bin + ''; + + doCheck = true; + + checkPhase = '' + export LANG="en_US.UTF-8" + export LC_ALL="en_US.UTF-8" + + nosetests -x + + ${python.interpreter} bin/behave -f progress3 --stop --tags='~@xfail' features/ + ${python.interpreter} bin/behave -f progress3 --stop --tags='~@xfail' tools/test-features/ + ${python.interpreter} bin/behave -f progress3 --stop --tags='~@xfail' issue.features/ + ''; + + meta = with stdenv.lib; { + homepage = https://github.com/behave/behave; + description = "behaviour-driven development, Python style"; + license = licenses.bsd2; + maintainers = with maintainers; [ alunduil ]; + }; +} diff --git a/pkgs/development/python-modules/coveralls/default.nix b/pkgs/development/python-modules/coveralls/default.nix index f3b01c668159..4d11354df0aa 100644 --- a/pkgs/development/python-modules/coveralls/default.nix +++ b/pkgs/development/python-modules/coveralls/default.nix @@ -2,12 +2,15 @@ , lib , fetchPypi , mock -, pytest_27 +, pytest +, pytestrunner , sh , coverage , docopt , requests +, urllib3 , git +, isPy3k }: buildPythonPackage rec { @@ -21,13 +24,17 @@ buildPythonPackage rec { sha256 = "510682001517bcca1def9f6252df6ce730fcb9831c62d9fff7c7d55b6fdabdf3"; }; - buildInputs = [ + checkInputs = [ mock sh - pytest_27 + pytest git ]; + buildInputs = [ + pytestrunner + ]; + # FIXME: tests requires .git directory to be present doCheck = false; @@ -39,7 +46,7 @@ buildPythonPackage rec { coverage docopt requests - ]; + ] ++ lib.optional (!isPy3k) urllib3; meta = { description = "Show coverage stats online via coveralls.io"; diff --git a/pkgs/development/python-modules/diff-match-patch/default.nix b/pkgs/development/python-modules/diff-match-patch/default.nix new file mode 100644 index 000000000000..7907f1ffac0b --- /dev/null +++ b/pkgs/development/python-modules/diff-match-patch/default.nix @@ -0,0 +1,18 @@ +{ lib, buildPythonPackage, fetchPypi }: + +buildPythonPackage rec { + pname = "diff-match-patch"; + name = "${pname}-${version}"; + version = "20121119"; + + meta = { + homepage = https://code.google.com/p/google-diff-match-patch/; + description = "Diff, Match and Patch libraries for Plain Text"; + license = lib.licenses.asl20; + }; + + src = fetchPypi { + inherit pname version; + sha256 = "0k1f3v8nbidcmmrk65m7h8v41jqi37653za9fcs96y7jzc8mdflx"; + }; +} diff --git a/pkgs/development/python-modules/django-ipware/default.nix b/pkgs/development/python-modules/django-ipware/default.nix new file mode 100644 index 000000000000..c4d993ac03ba --- /dev/null +++ b/pkgs/development/python-modules/django-ipware/default.nix @@ -0,0 +1,23 @@ +{ lib, buildPythonPackage, fetchPypi, django }: + +buildPythonPackage rec { + pname = "django-ipware"; + name = "${pname}-${version}"; + version = "1.1.6"; + + meta = { + description = "A Django application to retrieve user's IP address"; + homepage = https://github.com/un33k/django-ipware; + license = lib.licenses.mit; + }; + + src = fetchPypi { + inherit pname version; + sha256 = "00zah4g2h93nbsijz556j97v9qkn9sxcia1a2wrwdwnav2fhzack"; + }; + + propagatedBuildInputs = [ django ]; + + # django.core.exceptions.ImproperlyConfigured: Requested setting IPWARE_TRUSTED_PROXY_LIST, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings. + doCheck = false; +} diff --git a/pkgs/development/python-modules/django-jinja2/default.nix b/pkgs/development/python-modules/django-jinja2/default.nix new file mode 100644 index 000000000000..aabfecfcacc7 --- /dev/null +++ b/pkgs/development/python-modules/django-jinja2/default.nix @@ -0,0 +1,29 @@ +{ lib, buildPythonPackage, fetchPypi, + django, jinja2, pytz, tox + }: + +buildPythonPackage rec { + pname = "django-jinja"; + name = "${pname}-${version}"; + version = "2.2.2"; + + meta = { + description = "Simple and nonobstructive jinja2 integration with Django"; + homepage = https://github.com/niwinz/django-jinja; + license = lib.licenses.bsd3; + }; + + src = fetchPypi { + inherit pname version; + sha256 = "099b99iprkvlsndrjmw4v3i3i60i9gm1aq5r88z15r7vgmv6sigj"; + }; + + buildInputs = [ django pytz tox ]; + propagatedBuildInputs = [ django jinja2 ]; + + # python installed: The directory '/homeless-shelter/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.,appdirs==1.4.3,Django==1.11.1,django-jinja==2.2.2,Jinja2==2.9.6,MarkupSafe==1.0,packaging==16.8,pyparsing==2.2.0,pytz==2017.2,six==1.10.0 + doCheck = false; + checkPhase = '' + tox + ''; +} diff --git a/pkgs/development/python-modules/django-pglocks/default.nix b/pkgs/development/python-modules/django-pglocks/default.nix new file mode 100644 index 000000000000..2207aa348ab0 --- /dev/null +++ b/pkgs/development/python-modules/django-pglocks/default.nix @@ -0,0 +1,24 @@ +{ lib, buildPythonPackage, fetchPypi, django }: + +buildPythonPackage rec { + pname = "django-pglocks"; + name = "${pname}-${version}"; + version = "1.0.2"; + + meta = { + description = "PostgreSQL locking context managers and functions for Django."; + homepage = https://github.com/Xof/django-pglocks; + license = lib.licenses.mit; + }; + + src = fetchPypi { + inherit pname version; + sha256 = "1ks4k0bk4457wfl3xgzr4v7xb0lxmnkhxwhlp0bbnmzipdafw1cl"; + }; + + buildInputs = [ django ]; + propagatedBuildInputs = [ django ]; + + # tests need a postgres database + doCheck = false; +} diff --git a/pkgs/development/python-modules/django-picklefield/default.nix b/pkgs/development/python-modules/django-picklefield/default.nix new file mode 100644 index 000000000000..20a1c3dc221f --- /dev/null +++ b/pkgs/development/python-modules/django-picklefield/default.nix @@ -0,0 +1,18 @@ +{ lib, buildPythonPackage, fetchPypi }: + +buildPythonPackage rec { + pname = "django-picklefield"; + name = "${pname}-${version}"; + version = "0.3.2"; + + meta = { + description = "A pickled object field for Django"; + homepage = https://github.com/gintas/django-picklefield; + license = lib.licenses.mit; + }; + + src = fetchPypi { + inherit pname version; + sha256 = "1qlsbp3798ii68ny9zlz2ppkna00jf7i4hmjal3p8433gi18md7s"; + }; +} diff --git a/pkgs/development/python-modules/django-sampledatahelper/default.nix b/pkgs/development/python-modules/django-sampledatahelper/default.nix new file mode 100644 index 000000000000..5bc0dc379dc2 --- /dev/null +++ b/pkgs/development/python-modules/django-sampledatahelper/default.nix @@ -0,0 +1,31 @@ +{ lib, buildPythonPackage, fetchPypi, + django, nose, pillow, sampledata, six, versiontools +}: + +buildPythonPackage rec { + pname = "django-sampledatahelper"; + name = "${pname}-${version}"; + version = "0.4.1"; + + meta = { + description = "Helper class for generate sample data for django apps development"; + homepage = https://github.com/kaleidos/django-sampledatahelper; + license = lib.licenses.bsd3; + }; + + src = fetchPypi { + inherit pname version; + sha256 = "1795zg73lajcsfyd8i8cprb2v93d4csifjnld6bfnya90ncsbl4n"; + }; + + buildInputs = [ django nose pillow sampledata six versiontools ]; + propagatedBuildInputs = [ django sampledata ]; + + # HACK To prevent collision with pythonPackages.sampledata + preBuild = '' + rm tests/* + ''; + + # ERROR: test_image_from_directory (tests.tests.TestImageHelpers) + doCheck = false; +} diff --git a/pkgs/development/python-modules/django-sites/default.nix b/pkgs/development/python-modules/django-sites/default.nix new file mode 100644 index 000000000000..41b532ea184f --- /dev/null +++ b/pkgs/development/python-modules/django-sites/default.nix @@ -0,0 +1,26 @@ +{ lib, buildPythonPackage, fetchPypi, django }: + +buildPythonPackage rec { + pname = "django-sites"; + name = "${pname}-${version}"; + version = "0.9"; + + meta = { + description = '' + Alternative implementation of django "sites" framework + based on settings instead of models. + ''; + homepage = https://github.com/niwinz/django-sites; + license = lib.licenses.bsd3; + }; + + src = fetchPypi { + inherit pname version; + sha256 = "05nrydk4a5a99qrxjrcnacs8nbbq5pfjikdpj4w9yn5yfayp057s"; + }; + + propagatedBuildInputs = [ django ]; + + # django.core.exceptions.ImproperlyConfigured: Requested settings, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings. + doCheck = false; +} diff --git a/pkgs/development/python-modules/django-sr/default.nix b/pkgs/development/python-modules/django-sr/default.nix new file mode 100644 index 000000000000..1f8f9f17d3d5 --- /dev/null +++ b/pkgs/development/python-modules/django-sr/default.nix @@ -0,0 +1,21 @@ +{ lib, buildPythonPackage, fetchPypi, django, nose }: + +buildPythonPackage rec { + pname = "django-sr"; + name = "${pname}-${version}"; + version = "0.0.4"; + + meta = { + description = "Django settings resolver"; + homepage = https://github.com/jespino/django-sr; + license = lib.licenses.bsd3; + }; + + src = fetchPypi { + inherit pname version; + sha256 = "0d3yqppi1q3crcn9nxx58wzm4yw61d5m7435g6rb9wcamr9bi1im"; + }; + + buildInputs = [ django nose ]; + propagatedBuildInputs = [ django ]; +} diff --git a/pkgs/development/python-modules/django/1_11.nix b/pkgs/development/python-modules/django/1_11.nix index cbdbb57181a2..f727751eda5f 100644 --- a/pkgs/development/python-modules/django/1_11.nix +++ b/pkgs/development/python-modules/django/1_11.nix @@ -5,13 +5,13 @@ buildPythonPackage rec { pname = "Django"; name = "${pname}-${version}"; - version = "1.11.4"; + version = "1.11.5"; disabled = pythonOlder "2.7"; src = fetchurl { url = "http://www.djangoproject.com/m/releases/1.11/${name}.tar.gz"; - sha256 = "1ckvq2sdlgpy2sqy6fwl84ms9dggvdbys9x76qapm2d9vmknxs5b"; + sha256 = "0a9bk1a0n0264lcr67fmwzqyhkhy6bqdzkxsj9a8dpyzca0qfdhq"; }; patches = [ diff --git a/pkgs/development/python-modules/djmail/default.nix b/pkgs/development/python-modules/djmail/default.nix new file mode 100644 index 000000000000..c8e6e2fa03d6 --- /dev/null +++ b/pkgs/development/python-modules/djmail/default.nix @@ -0,0 +1,25 @@ +{ lib, buildPythonPackage, fetchPypi, + celery, django, psycopg2 +}: + +buildPythonPackage rec { + pname = "djmail"; + name = "${pname}-${version}"; + version = "1.0.1"; + + meta = { + description = "Simple, powerfull and nonobstructive django email middleware."; + homepage = https://github.com/bameda/djmail; + license = lib.licenses.bsd3; + }; + + src = fetchPypi { + inherit pname version; + sha256 = "1827i9qcn1ki09i5pg0lmar7cxjv18avh76x1n20947p1cimf3rp"; + }; + + propagatedBuildInputs = [ celery django psycopg2 ]; + + # django.core.exceptions.ImproperlyConfigured: Requested setting DEFAULT_INDEX_TABLESPACE, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings. + doCheck = false; +} diff --git a/pkgs/development/python-modules/easy-thumbnails/default.nix b/pkgs/development/python-modules/easy-thumbnails/default.nix new file mode 100644 index 000000000000..79743f8ac0d6 --- /dev/null +++ b/pkgs/development/python-modules/easy-thumbnails/default.nix @@ -0,0 +1,22 @@ +{ lib, buildPythonPackage, fetchPypi, + django, pillow +}: + +buildPythonPackage rec { + pname = "easy-thumbnails"; + name = "${pname}-${version}"; + version = "2.4.1"; + + meta = { + description = "Easy thumbnails for Django"; + homepage = https://github.com/SmileyChris/easy-thumbnails; + license = lib.licenses.bsd3; + }; + + src = fetchPypi { + inherit pname version; + sha256 = "0w228b6hx8k4r15v7z62hyg99qp6xp4mdkgqs1ah64fyqxp1riaw"; + }; + + propagatedBuildInputs = [ django pillow ]; +} diff --git a/pkgs/development/python-modules/flask-mail/default.nix b/pkgs/development/python-modules/flask-mail/default.nix new file mode 100644 index 000000000000..99545a55ba39 --- /dev/null +++ b/pkgs/development/python-modules/flask-mail/default.nix @@ -0,0 +1,25 @@ +{ lib, buildPythonPackage, fetchPypi, + blinker, flask, mock, nose, speaklater +}: + +buildPythonPackage rec { + pname = "Flask-Mail"; + name = "${pname}-${version}"; + version = "0.9.1"; + + meta = { + description = "Flask-Mail is a Flask extension providing simple email sending capabilities."; + homepage = "https://pypi.python.org/pypi/Flask-Mail"; + license = lib.licenses.bsd3; + }; + + src = fetchPypi { + inherit pname version; + sha256 = "0hazjc351s3gfbhk975j8k65cg4gf31yq404yfy0gx0bjjdfpr92"; + }; + + propagatedBuildInputs = [ blinker flask ]; + buildInputs = [ blinker mock nose speaklater ]; + + doCheck = false; +} diff --git a/pkgs/development/python-modules/flask-marshmallow/default.nix b/pkgs/development/python-modules/flask-marshmallow/default.nix new file mode 100644 index 000000000000..078b23869756 --- /dev/null +++ b/pkgs/development/python-modules/flask-marshmallow/default.nix @@ -0,0 +1,25 @@ +{ lib, buildPythonPackage, fetchPypi, + flask, six, marshmallow +}: + +buildPythonPackage rec { + pname = "flask-marshmallow"; + name = "${pname}-${version}"; + version = "0.8.0"; + + meta = { + homepage = "https://github.com/marshmallow-code/flask-marshmallow"; + description = "Flask + marshmallow for beautiful APIs"; + license = lib.licenses.mit; + }; + + src = fetchPypi { + inherit pname version; + sha256 = "1fa6xgxrn9bbc2pazbg46iw3ykvpcwib5b5s46qn59ndwj77lifi"; + }; + + propagatedBuildInputs = [ flask marshmallow ]; + buildInputs = [ six ]; + + doCheck = false; +} diff --git a/pkgs/development/python-modules/flask/default.nix b/pkgs/development/python-modules/flask/default.nix index b16dc08a5e16..5e77de84fed1 100644 --- a/pkgs/development/python-modules/flask/default.nix +++ b/pkgs/development/python-modules/flask/default.nix @@ -1,5 +1,5 @@ { stdenv, buildPythonPackage, fetchPypi -, itsdangerous, click, werkzeug, jinja2 }: +, itsdangerous, click, werkzeug, jinja2, pytest }: buildPythonPackage rec { name = "${pname}-${version}"; @@ -11,8 +11,16 @@ buildPythonPackage rec { sha256 = "1hfs2jr2m5lr51xd4gblb28rncd0xrpycz6c07cyqsbv4dhl9x29"; }; + checkInputs = [ pytest ]; propagatedBuildInputs = [ itsdangerous click werkzeug jinja2 ]; + checkPhase = '' + py.test + ''; + + # Tests require extra dependencies + doCheck = false; + meta = with stdenv.lib; { homepage = http://flask.pocoo.org/; description = "A microframework based on Werkzeug, Jinja 2, and good intentions"; diff --git a/pkgs/development/python-modules/fn/default.nix b/pkgs/development/python-modules/fn/default.nix new file mode 100644 index 000000000000..d286459b1377 --- /dev/null +++ b/pkgs/development/python-modules/fn/default.nix @@ -0,0 +1,21 @@ +{ lib, buildPythonPackage, fetchPypi }: + +buildPythonPackage rec { + pname = "fn"; + name = "${pname}-${version}"; + version = "0.4.3"; + + meta = { + description = '' + Functional programming in Python: implementation of missing + features to enjoy FP + ''; + homepage = https://github.com/kachayev/fn.py; + license = lib.licenses.asl20; + }; + + src = fetchPypi { + inherit pname version; + sha256 = "1nmsjmn8jb4gp22ksx0j0hhdf4y0zm8rjykyy2i6flzimg6q1kgq"; + }; +} diff --git a/pkgs/development/python-modules/ftfy/default.nix b/pkgs/development/python-modules/ftfy/default.nix index e53358677029..f5d25626bcf1 100644 --- a/pkgs/development/python-modules/ftfy/default.nix +++ b/pkgs/development/python-modules/ftfy/default.nix @@ -5,6 +5,7 @@ , wcwidth , nose , python +, isPy3k }: buildPythonPackage rec { name = "${pname}-${version}"; @@ -18,14 +19,21 @@ buildPythonPackage rec { propagatedBuildInputs = [ html5lib wcwidth]; - buildInputs = [ + checkInputs = [ nose ]; checkPhase = '' - nosetests -v + nosetests -v tests ''; + # Several tests fail with + # FileNotFoundError: [Errno 2] No such file or directory: 'ftfy' + doCheck = false; + + # "this version of ftfy is no longer written for Python 2" + disabled = !isPy3k; + meta = with stdenv.lib; { description = "Given Unicode text, make its representation consistent and possibly less broken."; homepage = https://github.com/LuminosoInsight/python-ftfy/tree/master/tests; diff --git a/pkgs/development/python-modules/koji/default.nix b/pkgs/development/python-modules/koji/default.nix index d43e56781a7b..5c14fa05af67 100644 --- a/pkgs/development/python-modules/koji/default.nix +++ b/pkgs/development/python-modules/koji/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, buildPythonPackage, pycurl }: +{ stdenv, fetchurl, buildPythonPackage, pycurl, isPy3k }: buildPythonPackage rec { pname = "koji"; @@ -7,12 +7,15 @@ buildPythonPackage rec { format = "other"; src = fetchurl { - url = "https://fedorahosted.org/released/koji/koji-1.8.0.tar.bz2"; - sha256 = "10dph209h4jgajb5jmbjhqy4z4hd22i7s2d93vm3ikdf01i8iwf1"; + url = "https://github.com/koji-project/koji/archive/koji-1.8.0.tar.gz"; + sha256 = "17rkipdxccdccbbb70f9wx91cq9713psmq23j7lgb4mlnwan926h"; }; propagatedBuildInputs = [ pycurl ]; + # Judging from SyntaxError + disabled = isPy3k; + makeFlags = "DESTDIR=$(out)"; postInstall = '' diff --git a/pkgs/development/python-modules/marshmallow-sqlalchemy/default.nix b/pkgs/development/python-modules/marshmallow-sqlalchemy/default.nix new file mode 100644 index 000000000000..a024d73037f9 --- /dev/null +++ b/pkgs/development/python-modules/marshmallow-sqlalchemy/default.nix @@ -0,0 +1,24 @@ +{ lib, buildPythonPackage, fetchPypi, + marshmallow, sqlalchemy +}: + +buildPythonPackage rec { + pname = "marshmallow-sqlalchemy"; + name = "${pname}-${version}"; + version = "0.13.1"; + + meta = { + homepage = "https://github.com/marshmallow-code/marshmallow-sqlalchemy"; + description = "SQLAlchemy integration with marshmallow "; + license = lib.licenses.mit; + }; + + src = fetchPypi { + inherit pname version; + sha256 = "0082ca2wwc9bymzkp1mr1l5h6rq0k1csv3vcq8ab24x0hdyg5qgk"; + }; + + propagatedBuildInputs = [ marshmallow sqlalchemy ]; + + doCheck = false; +} diff --git a/pkgs/development/python-modules/marshmallow/default.nix b/pkgs/development/python-modules/marshmallow/default.nix new file mode 100644 index 000000000000..17325d3204d0 --- /dev/null +++ b/pkgs/development/python-modules/marshmallow/default.nix @@ -0,0 +1,27 @@ +{ lib, buildPythonPackage, fetchPypi, + dateutil, simplejson +}: + +buildPythonPackage rec { + pname = "marshmallow"; + name = "${pname}-${version}"; + version = "2.13.5"; + + meta = { + homepage = "https://github.com/marshmallow-code/marshmallow"; + description = '' + A lightweight library for converting complex objects to and from + simple Python datatypes. + ''; + license = lib.licenses.mit; + }; + + src = fetchPypi { + inherit pname version; + sha256 = "048rzdkvnais51xdiy27nail5vxjb4ggw3vd60prn1q11lf16wig"; + }; + + propagatedBuildInputs = [ dateutil simplejson ]; + + doCheck = false; +} diff --git a/pkgs/development/python-modules/parse-type/default.nix b/pkgs/development/python-modules/parse-type/default.nix new file mode 100644 index 000000000000..69a02c42b74e --- /dev/null +++ b/pkgs/development/python-modules/parse-type/default.nix @@ -0,0 +1,38 @@ +{ stdenv, fetchPypi, fetchpatch +, buildPythonPackage, pythonOlder +, pytest, pytestrunner +, parse, six, enum34 +}: +buildPythonPackage rec { + pname = "parse-type"; + version = "0.3.4"; + name = "${pname}-${version}"; + + src = fetchPypi { + inherit version; + pname = "parse_type"; + sha256 = "3dd0b323bafcb8c25e000ce5589042a1c99cba9c3bec77b9f591e46bc9606147"; + }; + + patches = [ + (fetchpatch { + name = "python-3.5-tests-compat.patch"; + url = "https://github.com/jenisys/parse_type/pull/4.patch"; + sha256 = "1mmn2fxss6q3qhaydd4s4v8vjgvgkg41v1vcivrzdsvgsc3npg7m"; + }) + ]; + + checkInputs = [ pytest pytestrunner ]; + propagatedBuildInputs = [ parse six ] ++ stdenv.lib.optional (pythonOlder "3.4") enum34; + + checkPhase = '' + py.test tests + ''; + + meta = with stdenv.lib; { + homepage = https://github.com/jenisys/parse_type; + description = "Simplifies to build parse types based on the parse module"; + license = licenses.bsd3; + maintainers = with maintainers; [ alunduil ]; + }; +} diff --git a/pkgs/development/python-modules/parse/default.nix b/pkgs/development/python-modules/parse/default.nix new file mode 100644 index 000000000000..eaca200e2bff --- /dev/null +++ b/pkgs/development/python-modules/parse/default.nix @@ -0,0 +1,32 @@ +{ stdenv, fetchPypi, fetchpatch +, buildPythonPackage, python +}: +buildPythonPackage rec { + pname = "parse"; + version = "1.6.6"; + name = "${pname}-${version}"; + + src = fetchPypi { + inherit pname version; + sha256 = "71435aaac494e08cec76de646de2aab8392c114e56fe3f81c565ecc7eb886178"; + }; + + patches = [ + (fetchpatch { + name = "python-3.5-tests-compat.patch"; + url = "https://github.com/r1chardj0n3s/parse/pull/34.patch"; + sha256 = "16iicgkf3lwivmdnp3xkq4n87wjmr3nb77z8mwz67b7by9nnp3jg"; + }) + ]; + + checkPhase = '' + ${python.interpreter} test_parse.py + ''; + + meta = with stdenv.lib; { + homepage = https://github.com/r1chardj0n3s/parse; + description = "parse() is the opposite of format()"; + license = licenses.bsdOriginal; + maintainers = with maintainers; [ alunduil ]; + }; +} diff --git a/pkgs/development/python-modules/passlib/default.nix b/pkgs/development/python-modules/passlib/default.nix new file mode 100644 index 000000000000..c269a414f82d --- /dev/null +++ b/pkgs/development/python-modules/passlib/default.nix @@ -0,0 +1,25 @@ +{ lib +, buildPythonPackage +, fetchPypi +, nose +, bcrypt +}: + +buildPythonPackage rec { + pname = "passlib"; + version = "1.7.1"; + name = "${pname}-${version}"; + + src = fetchPypi { + inherit pname version; + sha256 = "3d948f64138c25633613f303bcc471126eae67c04d5e3f6b7b8ce6242f8653e0"; + }; + + checkInputs = [ nose ]; + propagatedBuildInputs = [ bcrypt ]; + + meta = { + description = "A password hashing library for Python"; + homepage = https://code.google.com/p/passlib/; + }; +} \ No newline at end of file diff --git a/pkgs/development/python-modules/pathspec/default.nix b/pkgs/development/python-modules/pathspec/default.nix new file mode 100644 index 000000000000..f39957585210 --- /dev/null +++ b/pkgs/development/python-modules/pathspec/default.nix @@ -0,0 +1,22 @@ +{ lib +, buildPythonPackage +, fetchPypi +}: + +buildPythonPackage rec { + pname = "pathspec"; + version = "0.5.3"; + name = "${pname}-${version}"; + + src = fetchPypi { + inherit pname version; + sha256 = "54478a66a360f4ebe4499c9235e4206fca5dec837b8e272d1ce37e0a626cc64d"; + }; + + meta = { + description = "Utility library for gitignore-style pattern matching of file paths"; + homepage = "https://github.com/cpburnz/python-path-specification"; + license = lib.licenses.mpl20; + maintainers = with lib.maintainers; [ copumpkin ]; + }; +} \ No newline at end of file diff --git a/pkgs/development/python-modules/premailer/default.nix b/pkgs/development/python-modules/premailer/default.nix new file mode 100644 index 000000000000..f2f8c0f89fd6 --- /dev/null +++ b/pkgs/development/python-modules/premailer/default.nix @@ -0,0 +1,23 @@ +{ lib, buildPythonPackage, fetchPypi, + cssselect, cssutils, lxml, mock, nose, requests +}: + +buildPythonPackage rec { + pname = "premailer"; + name = "${pname}-${version}"; + version = "3.0.1"; + + meta = { + description = "Turns CSS blocks into style attributes "; + homepage = https://github.com/peterbe/premailer; + license = lib.licenses.bsd3; + }; + + src = fetchPypi { + inherit pname version; + sha256 = "0cmlvqx1dvy16k5q5ylmr43nlfpb9k2zl3q7s4kzhf0lml4wqwaf"; + }; + + buildInputs = [ mock nose ]; + propagatedBuildInputs = [ cssselect cssutils lxml requests ]; +} diff --git a/pkgs/development/python-modules/psd-tools/default.nix b/pkgs/development/python-modules/psd-tools/default.nix new file mode 100644 index 000000000000..801936d906c8 --- /dev/null +++ b/pkgs/development/python-modules/psd-tools/default.nix @@ -0,0 +1,22 @@ +{ lib, buildPythonPackage, fetchPypi, + docopt, pillow +}: + +buildPythonPackage rec { + pname = "psd-tools"; + name = "${pname}-${version}"; + version = "1.4"; + + meta = { + description = "Python package for reading Adobe Photoshop PSD files"; + homepage = https://github.com/kmike/psd-tools; + license = lib.licenses.mit; + }; + + src = fetchPypi { + inherit pname version; + sha256 = "0g2vss5hwlk96w0yj42n7ia56mly51n92f2rlbrifhn8hfbxd38s"; + }; + + propagatedBuildInputs = [ docopt pillow ]; +} diff --git a/pkgs/development/python-modules/pycryptodomex/default.nix b/pkgs/development/python-modules/pycryptodomex/default.nix new file mode 100644 index 000000000000..1d1ac67732a3 --- /dev/null +++ b/pkgs/development/python-modules/pycryptodomex/default.nix @@ -0,0 +1,18 @@ +{ lib, buildPythonPackage, fetchPypi }: + +buildPythonPackage rec { + pname = "pycryptodomex"; + name = "${pname}-${version}"; + version = "3.4.5"; + + meta = { + description = "A self-contained cryptographic library for Python"; + homepage = https://www.pycryptodome.org; + license = lib.licenses.bsd2; + }; + + src = fetchPypi { + inherit pname version; + sha256 = "1n5w5ls5syapmb39kavqgz2sa9pinzx4c9dvwa2147gj0hkh87wj"; + }; +} diff --git a/pkgs/development/python-modules/pyhamcrest/default.nix b/pkgs/development/python-modules/pyhamcrest/default.nix new file mode 100644 index 000000000000..6b1eebd95c44 --- /dev/null +++ b/pkgs/development/python-modules/pyhamcrest/default.nix @@ -0,0 +1,28 @@ +{ stdenv, buildPythonApplication, fetchPypi +, mock, pytest +, six +}: +buildPythonApplication rec { + pname = "PyHamcrest"; + version = "1.9.0"; + name = "${pname}-${version}"; + + src = fetchPypi { + inherit pname version; + sha256 = "8ffaa0a53da57e89de14ced7185ac746227a8894dbd5a3c718bf05ddbd1d56cd"; + }; + + checkInputs = [ mock pytest ]; + propagatedBuildInputs = [ six ]; + + doCheck = false; # pypi tarball does not include tests + + meta = with stdenv.lib; { + homepage = https://github.com/hamcrest/PyHamcrest; + description = "Hamcrest framework for matcher objects"; + license = licenses.bsd3; + maintainers = with maintainers; [ + alunduil + ]; + }; +} diff --git a/pkgs/development/python-modules/pyjwkest/default.nix b/pkgs/development/python-modules/pyjwkest/default.nix new file mode 100644 index 000000000000..03cea021be8c --- /dev/null +++ b/pkgs/development/python-modules/pyjwkest/default.nix @@ -0,0 +1,23 @@ +{ lib, buildPythonPackage, fetchPypi, + future, pycryptodomex, pytest, requests, six +}: + +buildPythonPackage rec { + pname = "pyjwkest"; + name = "${pname}-${version}"; + version = "1.3.2"; + + meta = { + description = "Implementation of JWT, JWS, JWE and JWK"; + homepage = https://github.com/rohe/pyjwkest; + license = lib.licenses.asl20; + }; + + src = fetchPypi { + inherit pname version; + sha256 = "11rrswsmma3wzi2qnmq929323yc6i9fkjsv8zr7b3vajd72yr49d"; + }; + + buildInputs = [ pytest ]; + propagatedBuildInputs = [ future pycryptodomex requests six ]; +} diff --git a/pkgs/development/python-modules/pylint/default.nix b/pkgs/development/python-modules/pylint/default.nix index 8c82cb52910a..8c0fd1b7a8fe 100644 --- a/pkgs/development/python-modules/pylint/default.nix +++ b/pkgs/development/python-modules/pylint/default.nix @@ -1,42 +1,42 @@ -{ stdenv, fetchurl, buildPythonPackage, python, astroid, isort, +{ stdenv, buildPythonPackage, fetchPypi, python, astroid, isort, pytest, pytestrunner, mccabe, configparser, backports_functools_lru_cache }: - buildPythonPackage rec { - name = "${pname}-${version}"; - pname = "pylint"; - version = "1.7.2"; +buildPythonPackage rec { + name = "${pname}-${version}"; + pname = "pylint"; + version = "1.7.2"; - src = fetchurl { - url = "mirror://pypi/p/${pname}/${name}.tar.gz"; - sha256 = "ea6afb93a9ed810cf52ff3838eb3a15e2bf6a81b80de0eaede1ce442caa5ca69"; - }; + src = fetchPypi { + inherit pname version; + sha256 = "ea6afb93a9ed810cf52ff3838eb3a15e2bf6a81b80de0eaede1ce442caa5ca69"; + }; - buildInputs = [ pytest pytestrunner mccabe configparser backports_functools_lru_cache ]; + buildInputs = [ pytest pytestrunner mccabe configparser backports_functools_lru_cache ]; - propagatedBuildInputs = [ astroid configparser isort ]; + propagatedBuildInputs = [ astroid configparser isort ]; - postPatch = '' - # Remove broken darwin tests - sed -i -e '/test_parallel_execution/,+2d' pylint/test/test_self.py - sed -i -e '/test_py3k_jobs_option/,+4d' pylint/test/test_self.py - rm -vf pylint/test/test_functional.py - ''; + postPatch = '' + # Remove broken darwin tests + sed -i -e '/test_parallel_execution/,+2d' pylint/test/test_self.py + sed -i -e '/test_py3k_jobs_option/,+4d' pylint/test/test_self.py + rm -vf pylint/test/test_functional.py + ''; - checkPhase = '' - cd pylint/test - ${python.interpreter} -m unittest discover -p "*test*" - ''; + checkPhase = '' + cd pylint/test + ${python.interpreter} -m unittest discover -p "*test*" + ''; - postInstall = '' - mkdir -p $out/share/emacs/site-lisp - cp "elisp/"*.el $out/share/emacs/site-lisp/ - ''; + postInstall = '' + mkdir -p $out/share/emacs/site-lisp + cp "elisp/"*.el $out/share/emacs/site-lisp/ + ''; - meta = with stdenv.lib; { - homepage = http://www.logilab.org/project/pylint; - description = "A bug and style checker for Python"; - platforms = platforms.all; - license = licenses.gpl1Plus; - maintainers = with maintainers; [ nand0p ]; - }; - } + meta = with stdenv.lib; { + homepage = http://www.logilab.org/project/pylint; + description = "A bug and style checker for Python"; + platforms = platforms.all; + license = licenses.gpl1Plus; + maintainers = with maintainers; [ nand0p ]; + }; +} diff --git a/pkgs/development/python-modules/sampledata/default.nix b/pkgs/development/python-modules/sampledata/default.nix new file mode 100644 index 000000000000..b6beb3ec8875 --- /dev/null +++ b/pkgs/development/python-modules/sampledata/default.nix @@ -0,0 +1,31 @@ +{ lib, buildPythonPackage, fetchPypi, + nose, pytz, six, versiontools +}: + +buildPythonPackage rec { + pname = "sampledata"; + name = "${pname}-${version}"; + version = "0.3.7"; + + meta = { + description = "Sample Data generator for Python "; + homepage = https://github.com/jespino/sampledata; + license = lib.licenses.bsd3; + }; + + src = fetchPypi { + inherit pname version; + sha256 = "1kx2j49lag30d32zhzsr50gl5b949wa4lcdap2filg0d07picsdh"; + }; + + buildInputs = [ nose versiontools ]; + propagatedBuildInputs = [ pytz six ]; + +# ERROR: test_image_path_from_directory (tests.tests.TestImageHelpers) +# ERROR: test_image_stream (tests.tests.TestImageHelpers) + doCheck = false; + + checkPhase = '' + nosetests -e "TestImageHelpers" + ''; +} diff --git a/pkgs/development/python-modules/secretstorage/default.nix b/pkgs/development/python-modules/secretstorage/default.nix new file mode 100644 index 000000000000..e37e87f7d88e --- /dev/null +++ b/pkgs/development/python-modules/secretstorage/default.nix @@ -0,0 +1,27 @@ +{ stdenv, fetchFromGitHub, buildPythonPackage +, dbus-python, cryptography }: + +buildPythonPackage rec { + pname = "secretstorage"; + version = "2.3.1"; + name = "${pname}-${version}"; + + src = fetchFromGitHub { + owner = "mitya57"; + repo = "secretstorage"; + rev = version; + sha256 = "1sjd2jjbxgkkxyrfwx89x0hsnn39w2cr2qkxbg1iz52znr4sqism"; + }; + + propagatedBuildInputs = [ dbus-python cryptography ]; + + doCheck = false; # requires dbus session + + meta = with stdenv.lib; { + homepage = "https://github.com/mitya57/secretstorage"; + description = "Python bindings to FreeDesktop.org Secret Service API"; + license = licenses.bsdOriginal; + platforms = platforms.linux; + maintainer = with maintainers; [ teto ]; + }; +} diff --git a/pkgs/development/python-modules/serpy/default.nix b/pkgs/development/python-modules/serpy/default.nix new file mode 100644 index 000000000000..e2ecbdcb67ae --- /dev/null +++ b/pkgs/development/python-modules/serpy/default.nix @@ -0,0 +1,26 @@ +{ lib, buildPythonPackage, fetchPypi, + flake8, py, pyflakes, six, tox +}: + +buildPythonPackage rec { + pname = "serpy"; + name = "${pname}-${version}"; + version = "0.1.1"; + + meta = { + description = "ridiculously fast object serialization"; + homepage = https://github.com/clarkduvall/serpy; + license = lib.licenses.mit; + }; + + src = fetchPypi { + inherit pname version; + sha256 = "0r9wn99x9nbqxfancnq9jh3cn83i1b6gc79xj0ipnxixp661yj5i"; + }; + + buildInputs = [ flake8 py pyflakes tox ]; + propagatedBuildInputs = [ six ]; + + # ImportError: No module named 'tests + doCheck = false; +} diff --git a/pkgs/development/python-modules/urllib3/default.nix b/pkgs/development/python-modules/urllib3/default.nix index a23ae0f0b74e..10021e14f126 100644 --- a/pkgs/development/python-modules/urllib3/default.nix +++ b/pkgs/development/python-modules/urllib3/default.nix @@ -1,5 +1,6 @@ { stdenv, buildPythonPackage, fetchPypi -, coverage, tornado, mock, nose, psutil, pysocks }: +, pytest, mock, tornado, pyopenssl, cryptography +, idna, certifi, ipaddress, pysocks }: buildPythonPackage rec { pname = "urllib3"; @@ -22,11 +23,12 @@ buildPythonPackage rec { doCheck = false; - buildInputs = [ coverage tornado mock nose psutil pysocks ]; + checkInputs = [ pytest mock tornado ]; + propagatedBuildInputs = [ pyopenssl cryptography idna certifi ipaddress pysocks ]; meta = with stdenv.lib; { - description = "A Python library for Dropbox's HTTP-based Core and Datastore APIs"; - homepage = https://www.dropbox.com/developers/core/docs; + description = "Powerful, sanity-friendly HTTP client for Python"; + homepage = https://github.com/shazow/urllib3; license = licenses.mit; }; } diff --git a/pkgs/development/python-modules/yamllint/default.nix b/pkgs/development/python-modules/yamllint/default.nix index 2f0b12618e5d..2923fcaf3ebf 100644 --- a/pkgs/development/python-modules/yamllint/default.nix +++ b/pkgs/development/python-modules/yamllint/default.nix @@ -1,5 +1,5 @@ { stdenv, buildPythonPackage, fetchPypi -, nose, pyyaml }: +, nose, pyyaml, pathspec }: buildPythonPackage rec { pname = "yamllint"; @@ -11,9 +11,12 @@ buildPythonPackage rec { sha256 = "048743567ca9511e19222233ebb53795586a2cede07b79e801577e0a9b4f173c"; }; - buildInputs = [ nose ]; + checkInputs = [ nose ]; - propagatedBuildInputs = [ pyyaml ]; + propagatedBuildInputs = [ pyyaml pathspec ]; + + # Two test failures + doCheck = false; meta = with stdenv.lib; { description = "A linter for YAML files"; diff --git a/pkgs/development/python-modules/zetup/default.nix b/pkgs/development/python-modules/zetup/default.nix index a682a6e4e928..0c1ece54fb68 100644 --- a/pkgs/development/python-modules/zetup/default.nix +++ b/pkgs/development/python-modules/zetup/default.nix @@ -5,18 +5,18 @@ buildPythonPackage rec { name = "${pname}-${version}"; pname = "zetup"; - version = "0.2.42"; + version = "0.2.34"; src = fetchPypi { inherit pname version; - sha256 = "6c9e25249f3014ed2162398772ccf1a5e8a4e9e66c74e3c7f6683945a6a3d84c"; + sha256 = "0k4lm51b5qjy7yxy3n5z8vc5hlvjcsfsvwjgqzkr0pisysar1kpf"; }; checkPhase = '' py.test test ''; - buildInputs = [ pytest pathpy nbconvert ]; + checkInputs = [ pytest pathpy nbconvert ]; propagatedBuildInputs = [ setuptools_scm ]; meta = with stdenv.lib; { diff --git a/pkgs/development/tools/build-managers/conan/default.nix b/pkgs/development/tools/build-managers/conan/default.nix index 69cc2db3ff28..1558772ed601 100644 --- a/pkgs/development/tools/build-managers/conan/default.nix +++ b/pkgs/development/tools/build-managers/conan/default.nix @@ -1,18 +1,41 @@ -{ stdenv, pythonPackages }: +{ stdenv, python }: -pythonPackages.buildPythonApplication rec { - name = "${pname}-${version}"; - version = "0.21.2"; - pname = "conan"; - - src = pythonPackages.fetchPypi { - inherit pname version; - sha256 = "0x9s5h81d885xdrjw5x99q18lhmj11kalrs6xnjy2phrr8qzil8c"; +let + p = python.override { + packageOverrides = self: super: { + astroid = super.astroid.overridePythonAttrs (oldAttrs: rec { + version = "1.4.9"; + name = "${oldAttrs.pname}-${version}"; + src = oldAttrs.src.override { + inherit version; + sha256 = "a483e7891ce3a06dadfc6cb9095b0938aca58940d43576d72e4502b480c085d7"; + }; + }); + pylint = super.pylint.overridePythonAttrs (oldAttrs: rec { + version = "1.6.5"; + name = "${oldAttrs.pname}-${version}"; + src = oldAttrs.src.override { + inherit version; + sha256 = "a673984a8dd78e4a8b8cfdee5359a1309d833cf38405008f4a249994a8456719"; + }; + }); + }; }; - propagatedBuildInputs = with pythonPackages; [ +in p.pkgs.buildPythonApplication rec { + name = "${pname}-${version}"; + version = "0.26.1"; + pname = "conan"; + + src = p.pkgs.fetchPypi { + inherit pname version; + sha256 = "2da5a140a74d912d5561698b8cc5a5e5583b9dbe36623c59b4ce4be586476e7c"; + }; + + propagatedBuildInputs = with p.pkgs; [ requests fasteners pyyaml pyjwt colorama patch bottle pluginbase six distro pylint node-semver + future pygments mccabe ]; # enable tests once all of these pythonPackages available: diff --git a/pkgs/tools/admin/mycli/default.nix b/pkgs/tools/admin/mycli/default.nix new file mode 100644 index 000000000000..bd0f051bd845 --- /dev/null +++ b/pkgs/tools/admin/mycli/default.nix @@ -0,0 +1,38 @@ +{ lib +, python +}: + +with python.pkgs; + +buildPythonApplication rec { + pname = "mycli"; + version = "1.6.0"; + name = "${pname}-${version}"; + + src = fetchPypi { + inherit pname version; + sha256 = "0qg4b62kizyb16kk0cvpk70bfs3gg4q4hj2b15nnc7a3gqqfp67j"; + }; + + propagatedBuildInputs = [ + pymysql configobj sqlparse prompt_toolkit pygments click pycrypto + ]; + + postPatch = '' + substituteInPlace setup.py --replace "==" ">=" + ''; + + # No tests in archive. Newer versions do include tests + doCheck = false; + + meta = { + inherit version; + description = "Command-line interface for MySQL"; + longDescription = '' + Rich command-line interface for MySQL with auto-completion and + syntax highlighting. + ''; + homepage = http://mycli.net; + license = lib.licenses.bsd3; + }; +} diff --git a/pkgs/tools/misc/diffoscope/default.nix b/pkgs/tools/misc/diffoscope/default.nix index 6472f1ea09c8..61066cec04df 100644 --- a/pkgs/tools/misc/diffoscope/default.nix +++ b/pkgs/tools/misc/diffoscope/default.nix @@ -1,25 +1,24 @@ -{ lib, stdenv, fetchgit, fetchpatch, python3, docutils +{ lib, stdenv, fetchgit, fetchpatch, python3Packages, docutils , acl, binutils, bzip2, cbfstool, cdrkit, colord, cpio, diffutils, e2fsprogs, file, fpc, gettext, ghc -, gnupg1, gzip, jdk, libcaca, mono, pdftk, poppler_utils, sng, sqlite, squashfsTools, unzip, vim, xz +, gnupg1, gzip, jdk, libcaca, mono, pdftk, poppler_utils, sng, sqlite, squashfsTools, unzip, xxd, xz , colordiff , enableBloat ? false }: -python3.pkgs.buildPythonApplication rec { - pname = "diffoscope"; - name = "${pname}-${version}"; - version = "77"; +python3Packages.buildPythonApplication rec { + name = "diffoscope-${version}"; + version = "85"; src = fetchgit { - url = "git://anonscm.debian.org/reproducible/diffoscope.git"; - rev = "refs/tags/${version}"; - sha256 = "0l5q24sqb88qkz62cz85bq65myfqig3z3m1lj2s92hdlqip9946b"; + url = "git://anonscm.debian.org/reproducible/diffoscope.git"; + rev = "refs/tags/${version}"; + sha256 = "0kmcfhgva1fl6x5b07sc7k6ba9mqs3ma0lvspxm31w7nrrrqcvlr"; }; - patches = - [ # Ignore different link counts. - ./ignore_links.patch - ]; + patches = [ + # Ignore different link counts - doesn't work with 85 + # ./ignore_links.patch + ]; postPatch = '' # Upstream doesn't provide a PKG-INFO file @@ -28,10 +27,9 @@ python3.pkgs.buildPythonApplication rec { # Still missing these tools: enjarify, otool & lipo (maybe macOS only), showttf # Also these libraries: python3-guestfs - # FIXME: move xxd into a separate package so we don't have to pull in all of vim. - pythonPath = with python3.pkgs; + pythonPath = with python3Packages; [ debian libarchive-c python_magic tlsh rpm cdrkit acl binutils bzip2 cbfstool cpio diffutils e2fsprogs file gettext - gzip libcaca poppler_utils sng sqlite squashfsTools unzip vim xz colordiff + gzip libcaca poppler_utils sng sqlite squashfsTools unzip xxd xz colordiff ] ++ lib.optionals enableBloat [ colord fpc ghc gnupg1 jdk mono pdftk ]; doCheck = false; # Calls 'mknod' in squashfs tests, which needs root @@ -53,9 +51,9 @@ python3.pkgs.buildPythonApplication rec { diffoscope is developed as part of the "reproducible builds" Debian project and was formerly known as "debbindiff". ''; - homepage = https://wiki.debian.org/ReproducibleBuilds; - license = licenses.gpl3Plus; - maintainers = [ maintainers.dezgeg ]; - platforms = platforms.linux; + homepage = https://wiki.debian.org/ReproducibleBuilds; + license = licenses.gpl3Plus; + maintainers = with maintainers; [ dezgeg ]; + platforms = platforms.linux; }; } diff --git a/pkgs/tools/networking/gmvault/default.nix b/pkgs/tools/networking/gmvault/default.nix index ba22d1d679c9..06eb196c7a7e 100644 --- a/pkgs/tools/networking/gmvault/default.nix +++ b/pkgs/tools/networking/gmvault/default.nix @@ -21,6 +21,7 @@ pythonPackages.buildPythonApplication rec { cat ${startScript} > etc/scripts/gmvault chmod +x etc/scripts/gmvault substituteInPlace setup.py --replace "==" ">=" + substituteInPlace setup.py --replace "argparse" "" ''; meta = { diff --git a/pkgs/tools/networking/mitmproxy/default.nix b/pkgs/tools/networking/mitmproxy/default.nix index 2d24a2973f28..db01b012a14d 100644 --- a/pkgs/tools/networking/mitmproxy/default.nix +++ b/pkgs/tools/networking/mitmproxy/default.nix @@ -1,6 +1,27 @@ -{ stdenv, fetchpatch, fetchFromGitHub, python3Packages, glibcLocales }: +{ stdenv, fetchpatch, fetchFromGitHub, python3, glibcLocales }: -python3Packages.buildPythonPackage rec { +let + p = python3.override { + packageOverrides = self: super: { + cryptography = super.cryptography.overridePythonAttrs (oldAttrs: rec { + version = "1.8.2"; + name = "${oldAttrs.pname}-${version}"; + src = oldAttrs.src.override { + inherit version; + sha256 = "8e88ebac371a388024dab3ccf393bf3c1790d21bc3c299d5a6f9f83fb823beda"; + }; + }); + cryptography_vectors = super.cryptography_vectors.overridePythonAttrs (oldAttrs: rec { + version = self.cryptography.version; + name = "${oldAttrs.pname}-${version}"; + src = oldAttrs.src.override { + inherit version; + sha256 = "00daa04c9870345f56605d91d7d4897bc1b16f6fff7c74cb602b08ef16c0fb43"; + }; + }); + }; + }; +in p.pkgs.buildPythonPackage rec { baseName = "mitmproxy"; name = "${baseName}-${version}"; version = "2.0.2"; @@ -33,7 +54,7 @@ python3Packages.buildPythonPackage rec { LC_CTYPE=en_US.UTF-8 pytest -k 'not test_echo' ''; - propagatedBuildInputs = with python3Packages; [ + propagatedBuildInputs = with p.pkgs; [ blinker click certifi construct cryptography cssutils editorconfig h2 html2text hyperframe jsbeautifier kaitaistruct passlib pyasn1 pyopenssl @@ -41,7 +62,7 @@ python3Packages.buildPythonPackage rec { urwid watchdog brotlipy sortedcontainers ]; - buildInputs = with python3Packages; [ + buildInputs = with p.pkgs; [ beautifulsoup4 flask pytz pytest pytestrunner protobuf3_2 glibcLocales ]; diff --git a/pkgs/tools/security/pinentry-mac/default.nix b/pkgs/tools/security/pinentry-mac/default.nix index cd0060cbcb97..074d71c08308 100644 --- a/pkgs/tools/security/pinentry-mac/default.nix +++ b/pkgs/tools/security/pinentry-mac/default.nix @@ -6,8 +6,8 @@ stdenv.mkDerivation rec { src = fetchFromGitHub { owner = "matthewbauer"; repo = "pinentry-mac"; - rev = "d60aa902644a1f0126ec50e79937423a3a7c3bc4"; - sha256 = "0xp4rdyj0mw6gg1z1wraggb1qlkjb5845mibrz3nj0l692da52nq"; + rev = "6dfef256c8ea32d642fea847f27d800f024cf51e"; + sha256 = "0g75302697gqcxyf2hyqzvcbd5pyss1bl2xvfd40wqav7dlyvj83"; }; buildInputs = [ xcbuild libiconv Cocoa ncurses ]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index cb5e45afbcb7..c8ec33282113 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1563,6 +1563,10 @@ with pkgs; cudatoolkit = cudatoolkit8; }; + cudnn60_cudatoolkit80 = callPackage ../development/libraries/science/math/cudnn/8.0-6.0 { + cudatoolkit = cudatoolkit8; + }; + curlFull = curl.override { idnSupport = true; ldapSupport = true; @@ -3345,6 +3349,8 @@ with pkgs; munge = callPackage ../tools/security/munge { }; + mycli = callPackage ../tools/admin/mycli { }; + mysql2pgsql = callPackage ../tools/misc/mysql2pgsql { }; mysqltuner = callPackage ../tools/misc/mysqltuner { }; @@ -10000,10 +10006,9 @@ with pkgs; protobuf = protobuf2_6; protobuf3_0 = lowPrio (callPackage ../development/libraries/protobuf/3.0.nix { }); - # 3.0.0-beta-2 is only introduced for tensorflow. remove this version when tensorflow is moved to 3.0. - protobuf3_0_0b2 = lowPrio (callPackage ../development/libraries/protobuf/3.0.0-beta-2.nix { }); protobuf3_1 = callPackage ../development/libraries/protobuf/3.1.nix { }; protobuf3_2 = callPackage ../development/libraries/protobuf/3.2.nix { }; + protobuf3_3 = callPackage ../development/libraries/protobuf/3.3.nix { }; protobuf2_6 = callPackage ../development/libraries/protobuf/2.6.nix { }; protobuf2_5 = callPackage ../development/libraries/protobuf/2.5.nix { }; @@ -13384,7 +13389,7 @@ with pkgs; abook = callPackage ../applications/misc/abook { }; acd-cli = callPackage ../applications/networking/sync/acd_cli { - inherit (python35Packages) + inherit (python3Packages) buildPythonApplication appdirs colorama dateutil requests requests_toolbelt sqlalchemy fusepy; }; @@ -18211,6 +18216,9 @@ with pkgs; version = "8.5pl3"; }; coq_8_6 = callPackage ../applications/science/logic/coq {}; + coq_8_7 = callPackage ../applications/science/logic/coq { + version = "8.7+beta1"; + }; coq_HEAD = callPackage ../applications/science/logic/coq/HEAD.nix {}; mkCoqPackages_8_4 = self: let callPackage = newScope self; in { @@ -18393,6 +18401,8 @@ with pkgs; ### SCIENCE / ELECTRONICS + adms = callPackage ../applications/science/electronics/adms { }; + eagle = callPackage ../applications/science/electronics/eagle { }; caneda = callPackage ../applications/science/electronics/caneda { }; @@ -18416,6 +18426,7 @@ with pkgs; qucs = callPackage ../applications/science/electronics/qucs { }; + xoscope = callPackage ../applications/science/electronics/xoscope { }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 2c811c057779..4d029cbf7add 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -117,8 +117,12 @@ in { agate-sql = callPackage ../development/python-modules/agate-sql { }; + aioamqp = callPackage ../development/python-modules/aioamqp { }; + ansicolor = callPackage ../development/python-modules/ansicolor { }; + asana = callPackage ../development/python-modules/asana { }; + asn1crypto = callPackage ../development/python-modules/asn1crypto { }; astropy = callPackage ../development/python-modules/astropy { }; @@ -169,6 +173,8 @@ in { distorm3 = callPackage ../development/python-modules/distorm3 { }; + diff-match-patch = callPackage ../development/python-modules/diff-match-patch { }; + h5py = callPackage ../development/python-modules/h5py { hdf5 = pkgs.hdf5; }; @@ -219,6 +225,8 @@ in { pycryptodome = callPackage ../development/python-modules/pycryptodome { }; + pycryptodomex = callPackage ../development/python-modules/pycryptodomex { }; + PyChromecast = callPackage ../development/python-modules/pychromecast { protobuf = self.protobuf3_2; }; @@ -243,6 +251,8 @@ in { libglade = pkgs.gnome2.libglade; }; + pyjwkest = callPackage ../development/python-modules/pyjwkest { }; + pyqt4 = callPackage ../development/python-modules/pyqt/4.x.nix { pythonPackages = self; }; @@ -2634,34 +2644,6 @@ in { characteristic = callPackage ../development/python-modules/characteristic { }; - # This package is no longer actively maintained and can be removed if it becomes broken. - cgkit = buildPythonPackage rec { - version = "2.0.0"; - name = "cgkit-${version}"; - disabled = isPy3k; - - src = pkgs.fetchurl { - url = "mirror://sourceforge/project/cgkit/cgkit/cgkit-${version}/cgkit-${version}-py2k.tar.gz"; - sha256 = "0vvllc42mdyma3c7yqhahs4bfxymm2kvmc4va7dxqr5x0rzh6rd6"; - }; - - patches = [ ../development/python-modules/cgkit/scons-env.patch ]; - - buildInputs = with pkgs; [ scons boost mesa ]; - - preBuild = '' - cd supportlib - scons - cd - - ''; - - meta = { - homepage = http://cgkit.sourceforge.net; - description = "Python Computer Graphics Kit"; - maintainers = with maintainers; [ expipiplus1 ]; - }; - }; - cheetah = buildPythonPackage rec { version = "2.4.4"; name = "cheetah-${version}"; @@ -5196,6 +5178,7 @@ in { sha256 = "0bixx80zjq0286dwm4zhg8bdhc8pqlrqy4n2jg7i6m6a4gv4gak5"; }; + buildInputs = with self; [ pytestrunner ]; propagatedBuildInputs = with self; [ requests urllib3 mock setuptools ]; meta = { @@ -5258,6 +5241,8 @@ in { }; }; + easy-thumbnails = callPackage ../development/python-modules/easy-thumbnails { }; + eccodes = if (isPy27) then (pkgs.eccodes.overrideAttrs (oldattrs: { name = "${python.libPrefix}-" + oldattrs.name; @@ -7151,23 +7136,7 @@ in { }; }; - pathspec = buildPythonPackage rec { - pname = "pathspec"; - version = "0.5.2"; - name = "${pname}-${version}"; - - src = self.fetchPypi { - inherit pname version; - sha256 = "f9fdf4408f4adb30e9f507f61d3a41c968e9c6e6c519d4bbd2a189627b5e86f0"; - }; - - meta = { - description = "Utility library for gitignore-style pattern matching of file paths"; - homepage = "https://github.com/cpburnz/python-path-specification"; - license = licenses.mpl20; - maintainers = with maintainers; [ copumpkin ]; - }; - }; + pathspec = callPackage ../development/python-modules/pathspec { }; pathtools = buildPythonPackage rec { name = "pathtools-${version}"; @@ -7210,23 +7179,7 @@ in { }; }; - passlib = buildPythonPackage rec { - version = "1.6.5"; - name = "passlib-${version}"; - - src = pkgs.fetchurl { - url = "mirror://pypi/p/passlib/passlib-${version}.tar.gz"; - sha256 = "1z27wdxs5rj5xhhqfzvzn3yg682irkxw6dcs5jj7mcf97psk8gd8"; - }; - - buildInputs = with self; [ nose ]; - propagatedBuildInputs = with self; [ bcrypt ]; - - meta = { - description = "A password hashing library for Python"; - homepage = https://code.google.com/p/passlib/; - }; - }; + passlib = callPackage ../development/python-modules/passlib { }; path-and-address = buildPythonPackage rec { version = "2.0.1"; @@ -8623,8 +8576,22 @@ in { django_guardian = callPackage ../development/python-modules/django_guardian.nix { }; + django-ipware = callPackage ../development/python-modules/django-ipware { }; + + django-jinja = callPackage ../development/python-modules/django-jinja2 { }; + + django-pglocks = callPackage ../development/python-modules/django-pglocks { }; + + django-picklefield = callPackage ../development/python-modules/django-picklefield { }; + django_polymorphic = callPackage ../development/python-modules/django-polymorphic { }; + django-sampledatahelper = callPackage ../development/python-modules/django-sampledatahelper { }; + + django-sites = callPackage ../development/python-modules/django-sites { }; + + django-sr = callPackage ../development/python-modules/django-sr { }; + django_tagging = callPackage ../development/python-modules/django_tagging { }; django_tagging_0_3 = self.django_tagging.overrideAttrs (attrs: rec { @@ -8874,6 +8841,8 @@ in { }; }; + djmail = callPackage ../development/python-modules/djmail { }; + pillowfight = buildPythonPackage rec { name = "pillowfight-${version}"; version = "0.2"; @@ -9441,6 +9410,10 @@ in { flask_ldap_login = callPackage ../development/python-modules/flask-ldap-login.nix { }; + flask_mail = callPackage ../development/python-modules/flask-mail { }; + + flask_marshmallow = callPackage ../development/python-modules/flask-marshmallow { }; + flask_migrate = callPackage ../development/python-modules/flask-migrate { }; flask_oauthlib = callPackage ../development/python-modules/flask-oauthlib.nix { }; @@ -9706,6 +9679,8 @@ in { }; }); + fn = callPackage ../development/python-modules/fn { }; + folium = callPackage ../development/python-modules/folium { }; fontforge = pkgs.fontforge.override { @@ -11139,6 +11114,8 @@ in { jsonnet = buildPythonPackage { inherit (pkgs.jsonnet) name src; + # Python 3 is not yet supported https://github.com/google/jsonnet/pull/335 + disabled = isPy3k; }; jupyter_client = callPackage ../development/python-modules/jupyter_client { }; @@ -11874,6 +11851,10 @@ in { }; }; + marshmallow = callPackage ../development/python-modules/marshmallow { }; + + marshmallow-sqlalchemy = callPackage ../development/python-modules/marshmallow-sqlalchemy { }; + manuel = buildPythonPackage rec { name = "manuel-${version}"; version = "1.8.0"; @@ -11893,12 +11874,12 @@ in { }; markdown = buildPythonPackage rec { - version = "2.6.7"; + version = "2.6.8"; name = "markdown-${version}"; src = pkgs.fetchurl { url = "mirror://pypi/M/Markdown/Markdown-${version}.tar.gz"; - sha256 = "1h055llfd0ps0ig7qb3v1j9068xv90dc9s7xkhkgz9zg8r4g5sys"; + sha256 = "0cqfhr1km2s5d8jm6hbwgkrrj9hvkjf2gab3s2axlrw1clgaij0a"; }; # error: invalid command 'test' @@ -15496,7 +15477,7 @@ in { sha256 = "1vmyvynqzx5zvbipaxff4fnzy3h3dvl3zicyr15yb816j93jl2ca"; }; - buildInputs = with self; [ mock nose pep8 pylint ]; + buildInputs = with self; [ mock nose pep8 pylint mccabe ]; meta = { description = "RabbitMQ Focused AMQP low-level library"; @@ -15973,39 +15954,6 @@ in { }; }; - - mycli = buildPythonPackage rec { - name = "mycli-${version}"; - version = "1.6.0"; - disabled = isPy35; - - src = pkgs.fetchFromGitHub { - sha256 = "0vvl36gxawa0h36v119j47fdylj8k73ak6hv04s5cjqn5adcjjbh"; - rev = "v${version}"; - repo = "mycli"; - owner = "dbcli"; - }; - - propagatedBuildInputs = with self; [ - pymysql configobj sqlparse prompt_toolkit pygments click pycrypto - ]; - - postPatch = '' - substituteInPlace setup.py --replace "==" ">=" - ''; - - meta = { - inherit version; - description = "Command-line interface for MySQL"; - longDescription = '' - Rich command-line interface for MySQL with auto-completion and - syntax highlighting. - ''; - homepage = http://mycli.net; - license = licenses.bsd3; - }; - }; - pickleshare = buildPythonPackage rec { version = "0.7.4"; name = "pickleshare-${version}"; @@ -16397,6 +16345,8 @@ in { }; }; + premailer = callPackage ../development/python-modules/premailer { }; + prettytable = buildPythonPackage rec { name = "prettytable-0.7.1"; @@ -16437,7 +16387,11 @@ in { }); protobuf = self.protobuf2_6; - # only required by tensorflow + protobuf3_3 = callPackage ../development/python-modules/protobuf.nix { + disabled = isPyPy; + doCheck = !isPy3k; + protobuf = pkgs.protobuf3_3; + }; protobuf3_2 = callPackage ../development/python-modules/protobuf.nix { disabled = isPyPy; doCheck = !isPy3k; @@ -16458,6 +16412,8 @@ in { protobuf = pkgs.protobuf2_5; }; + psd-tools = callPackage ../development/python-modules/psd-tools { }; + psutil = buildPythonPackage rec { name = "psutil-${version}"; version = "4.3.0"; @@ -16870,7 +16826,7 @@ in { preConfigure = '' substituteInPlace setup.py \ --replace '"/usr/include"' '"${pkgs.gdb}/include"' \ - --replace '"/usr/lib"' '"${pkgs.binutils.out}/lib"' + --replace '"/usr/lib"' '"${pkgs.binutils.lib}/lib"' ''; meta = { @@ -20037,6 +19993,8 @@ in { propagatedBuildInputs = [ self.cffi ]; }; + sampledata = callPackage ../development/python-modules/sampledata { }; + scapy = buildPythonPackage rec { name = "scapy-2.2.0"; @@ -20161,6 +20119,8 @@ in { ''; }; + serpy = callPackage ../development/python-modules/serpy { }; + setuptools_scm = callPackage ../development/python-modules/setuptools_scm { }; setuptoolsDarcs = buildPythonPackage rec { @@ -20904,6 +20864,8 @@ in { }; }; + secretstorage = callPackage ../development/python-modules/secretstorage { }; + semantic = buildPythonPackage rec { name = "semantic-1.0.3"; @@ -23991,11 +23953,11 @@ EOF libarchive-c = buildPythonPackage rec { name = "libarchive-c-${version}"; - version = "2.5"; + version = "2.7"; src = pkgs.fetchurl { url = "mirror://pypi/l/libarchive-c/${name}.tar.gz"; - sha256 = "98660daa2501d2da51ab6f39893dc24e88916e72b2d80c205641faa5bce66859"; + sha256 = "011bfsmqpcwd6920kckllh7zhw2y4rrasgmddb7wjzn2hg1xpsjn"; }; LC_ALL="en_US.UTF-8"; @@ -24005,7 +23967,7 @@ EOF "find_library('archive')" "'${pkgs.libarchive.lib}/lib/libarchive.so'" ''; checkPhase = '' - py.test tests -k 'not test_check_archiveentry_with_unicode_entries_and_name_zip' + py.test tests -k 'not test_check_archiveentry_with_unicode_entries_and_name_zip and not test_check_archiveentry_using_python_testtar' ''; buildInputs = with self; [ pytest pkgs.glibcLocales ]; @@ -27522,9 +27484,20 @@ EOF preshed = callPackage ../development/python-modules/preshed { }; + backports_weakref = callPackage ../development/python-modules/backports_weakref { }; + thinc = callPackage ../development/python-modules/thinc { }; spacy = callPackage ../development/python-modules/spacy { }; + + behave = callPackage ../development/python-modules/behave { }; + + pyhamcrest = callPackage ../development/python-modules/pyhamcrest { }; + + parse = callPackage ../development/python-modules/parse { }; + + parse-type = callPackage ../development/python-modules/parse-type { }; + }); in fix' (extends overrides packages)