diff --git a/pkgs/development/tools/build-managers/doit/default.nix b/pkgs/development/python-modules/doit/default.nix similarity index 50% rename from pkgs/development/tools/build-managers/doit/default.nix rename to pkgs/development/python-modules/doit/default.nix index d48f0d4d56b..36cd0b0ee18 100644 --- a/pkgs/development/tools/build-managers/doit/default.nix +++ b/pkgs/development/python-modules/doit/default.nix @@ -1,28 +1,36 @@ -{ lib, stdenv, fetchurl, python3Packages }: +{ lib +, stdenv +, fetchPypi +, buildPythonPackage +, isPy3k +, mock +, pytestCheckHook +, cloudpickle +, pyinotify +, macfsevents +}: -let +buildPythonPackage rec { + pname = "doit"; + version = "0.33.1"; - name = "doit"; - version = "0.32.0"; + disabled = !isPy3k; -in python3Packages.buildPythonApplication { - name = "${name}-${version}"; - - src = fetchurl { - url = "mirror://pypi/d/${name}/${name}-${version}.tar.gz"; - sha256 = "033m6y9763l81kgqd07rm62bngv3dsm3k9p28nwsn2qawl8h8g9j"; + src = fetchPypi { + inherit pname version; + sha256 = "37c3b35c2151647b968b2af24481112b2f813c30f695366db0639d529190a143"; }; - buildInputs = with python3Packages; [ mock pytest ]; - - propagatedBuildInputs = with python3Packages; [ cloudpickle ] + propagatedBuildInputs = [ cloudpickle ] ++ lib.optional stdenv.isLinux pyinotify ++ lib.optional stdenv.isDarwin macfsevents; - # Tests fail due to mysterious gdbm.open() resource temporarily - # unavailable errors. - doCheck = false; - checkPhase = "py.test"; + checkInputs = [ mock pytestCheckHook ]; + + disabledTests = [ + # depends on doit-py, which has a circular dependency on doit + "test___main__.py" + ]; meta = with lib; { homepage = "https://pydoit.org/"; @@ -36,6 +44,5 @@ in python3Packages.buildPythonApplication { available. ''; maintainers = with maintainers; [ pSub ]; - platforms = platforms.all; }; } diff --git a/pkgs/development/python-modules/piexif/default.nix b/pkgs/development/python-modules/piexif/default.nix index c08ee8338b0..440df36384c 100644 --- a/pkgs/development/python-modules/piexif/default.nix +++ b/pkgs/development/python-modules/piexif/default.nix @@ -1,18 +1,28 @@ -{ lib, stdenv, buildPythonPackage, fetchPypi, pillow }: +{ lib, buildPythonPackage, fetchFromGitHub, fetchpatch, pillow }: buildPythonPackage rec { pname = "piexif"; version = "1.1.3"; + # patch does not apply to PyPI sdist due to different line endings + src = fetchFromGitHub { + owner = "hMatoba"; + repo = "Piexif"; + rev = version; + sha256 = "1akmaxq1cjr8wghwaaql1bd3sajl8psshl58lprgfsigrvnklp8b"; + }; + + patches = [ + # Fix tests with Pillow >= 7.2.0: https://github.com/hMatoba/Piexif/pull/109 + (fetchpatch { + url = "https://github.com/hMatoba/Piexif/commit/5209b53e9689ce28dcd045f384633378d619718f.patch"; + sha256 = "0ak571jf76r1vszp2g3cd5c16fz2zkbi43scayy933m5qdrhd8g1"; + }) + ]; + # Pillow needed for unit tests checkInputs = [ pillow ]; - src = fetchPypi { - inherit pname version; - extension = "zip"; - sha256 = "06sz58q4mrw472p8fbnq7wsj8zpi5js5r8phm2hiwfmz0v33bjw3"; - }; - meta = with lib; { description = "Simplify Exif manipulations with Python"; homepage = "https://github.com/hMatoba/Piexif"; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 71ec34213a3..3f8bf9f1718 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -11969,7 +11969,7 @@ in doctl = callPackage ../development/tools/doctl { }; - doit = callPackage ../development/tools/build-managers/doit { }; + doit = with python3Packages; toPythonApplication doit; dolt = callPackage ../servers/sql/dolt { }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 070e855b0c4..f217c1a92ab 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1933,6 +1933,8 @@ in { dogtail = callPackage ../development/python-modules/dogtail { }; + doit = callPackage ../development/python-modules/doit { }; + dominate = callPackage ../development/python-modules/dominate { }; dopy = callPackage ../development/python-modules/dopy { };