diff --git a/pkgs/development/python-modules/pyparted/default.nix b/pkgs/development/python-modules/pyparted/default.nix index 3defe979d37..c51c55a5eb2 100644 --- a/pkgs/development/python-modules/pyparted/default.nix +++ b/pkgs/development/python-modules/pyparted/default.nix @@ -1,18 +1,22 @@ { stdenv +, fetchFromGitHub , buildPythonPackage , isPyPy , pkgs , python +, six }: buildPythonPackage rec { pname = "pyparted"; - version = "3.10.7"; + version = "3.11.4"; disabled = isPyPy; - src = pkgs.fetchurl { - url = "https://github.com/rhinstaller/pyparted/archive/v${version}.tar.gz"; - sha256 = "0c9ljrdggwawd8wdzqqqzrna9prrlpj6xs59b0vkxzip0jkf652r"; + src = fetchFromGitHub { + repo = pname; + owner = "dcantrell"; + rev = "v${version}"; + sha256 = "0wd0xhv1y1zw7djzcnimj8irif3mg0shbhgz0jn5yi914is88h6n"; }; postPatch = '' @@ -26,11 +30,16 @@ buildPythonPackage rec { tests/test__ped_ped.py ''; + patches = [ + ./fix-test-pythonpath.patch + ]; + preConfigure = '' PATH="${pkgs.parted}/sbin:$PATH" ''; nativeBuildInputs = [ pkgs.pkgconfig ]; + checkInputs = [ six ]; propagatedBuildInputs = [ pkgs.parted ]; checkPhase = '' @@ -39,10 +48,10 @@ buildPythonPackage rec { ''; meta = with stdenv.lib; { - homepage = "https://fedorahosted.org/pyparted/"; + homepage = "https://github.com/dcantrell/pyparted/"; description = "Python interface for libparted"; license = licenses.gpl2Plus; platforms = platforms.linux; + maintainers = with maintainers; [ lsix ]; }; - } diff --git a/pkgs/development/python-modules/pyparted/fix-test-pythonpath.patch b/pkgs/development/python-modules/pyparted/fix-test-pythonpath.patch new file mode 100644 index 00000000000..740bffbef6d --- /dev/null +++ b/pkgs/development/python-modules/pyparted/fix-test-pythonpath.patch @@ -0,0 +1,26 @@ +diff -ur a/Makefile b/Makefile +--- a/Makefile 1980-01-02 00:00:00.000000000 +0100 ++++ b/Makefile 2020-02-18 20:04:14.068243263 +0100 +@@ -39,19 +39,19 @@ + @$(PYTHON) setup.py build + + test: all +- @env PYTHONPATH=$$(find $$(pwd) -name "*.so" | head -n 1 | xargs dirname):src/parted:src \ ++ @env PYTHONPATH=$$(find $$(pwd) -name "*.so" | head -n 1 | xargs dirname):src/parted:src:$$PYTHONPATH \ + $(PYTHON) -m unittest discover -v + + coverage: all + @echo "*** Running unittests with $(COVERAGE) for $(PYTHON) ***" +- @env PYTHONPATH=$$(find $$(pwd) -name "*.so" | head -n 1 | xargs dirname):src/parted:src \ ++ @env PYTHONPATH=$$(find $$(pwd) -name "*.so" | head -n 1 | xargs dirname):src/parted:src:$$PYTHONPATH \ + $(COVERAGE) run --branch -m unittest discover -v + $(COVERAGE) report --include="build/lib.*/parted/*" --show-missing + $(COVERAGE) report --include="build/lib.*/parted/*" > coverage-report.log + + check: clean + env PYTHON=python3 $(MAKE) ; \ +- env PYTHON=python3 PYTHONPATH=$$(find $$(pwd) -name "*.so" | head -n 1 | xargs dirname):src/parted:src \ ++ env PYTHON=python3 PYTHONPATH=$$(find $$(pwd) -name "*.so" | head -n 1 | xargs dirname):src/parted:src:$$PYTHONPATH \ + tests/pylint/runpylint.py + + dist: