From 2736355cf94a84ba7dedf0fabbacc887394fdd67 Mon Sep 17 00:00:00 2001 From: Sigmanificient Date: Sun, 28 Jul 2024 19:48:54 +0200 Subject: [PATCH] python312Packages.pycdio: drop nose dependency --- .../python-modules/pycdio/default.nix | 58 +++++++++---------- 1 file changed, 28 insertions(+), 30 deletions(-) diff --git a/pkgs/development/python-modules/pycdio/default.nix b/pkgs/development/python-modules/pycdio/default.nix index 78a620eb0dd7..2b2e63596196 100644 --- a/pkgs/development/python-modules/pycdio/default.nix +++ b/pkgs/development/python-modules/pycdio/default.nix @@ -1,54 +1,52 @@ { lib, - stdenv, buildPythonPackage, - fetchPypi, + fetchFromGitHub, setuptools, - nose, - pkgs, + pkg-config, + swig, + libcdio, + libiconv, + pytestCheckHook, }: buildPythonPackage rec { pname = "pycdio"; - version = "2.1.1"; - format = "setuptools"; + version = "2.1.1-unstable-2024-02-26"; + pyproject = true; - src = fetchPypi { - inherit pname version; - sha256 = "61734db8c554b7b1a2cb2da2e2c15d3f9f5973a57cfb06f8854c38029004a9f8"; + src = fetchFromGitHub { + owner = "rocky"; + repo = "pycdio"; + rev = "806c6a2eeeeb546055ce2ac9a0ae6a14ea53ae35"; # no tag for this version (yet) + hash = "sha256-bOm82mBUIaw4BGHj3Y24Fv5+RfAew+Ma1u4QENXoRiU="; }; - prePatch = '' - substituteInPlace setup.py \ - --replace 'library_dirs=library_dirs' 'library_dirs=[dir.decode("utf-8") for dir in library_dirs]' \ - --replace 'include_dirs=include_dirs' 'include_dirs=[dir.decode("utf-8") for dir in include_dirs]' \ - --replace 'runtime_library_dirs=runtime_lib_dirs' 'runtime_library_dirs=[dir.decode("utf-8") for dir in runtime_lib_dirs]' - ''; - preConfigure = '' patchShebangs . ''; + build-system = [ setuptools ]; + nativeBuildInputs = [ - nose - pkgs.pkg-config - pkgs.swig + pkg-config + swig ]; + buildInputs = [ - setuptools - pkgs.libcdio - ] ++ lib.optional stdenv.isDarwin pkgs.libiconv; + libcdio + libiconv + ]; - # Run tests using nosetests but first need to install the binaries - # to the root source directory where they can be found. - checkPhase = '' - ./setup.py install_lib -d . - nosetests - ''; + nativeCheckInputs = [ pytestCheckHook ]; - meta = with lib; { + pytestFlagsArray = [ "test/test-*.py" ]; + + meta = { homepage = "https://www.gnu.org/software/libcdio/"; + changelog = "https://github.com/rocky/pycdio/blob/${src.rev}/ChangeLog"; description = "Wrapper around libcdio (CD Input and Control library)"; - license = licenses.gpl3Plus; + license = lib.licenses.gpl3Plus; + maintainers = with lib.maintainers; [ sigmanificient ]; }; }