From 3f66e7e71cf70816e76e0e1eb153f803ffefc6d0 Mon Sep 17 00:00:00 2001 From: seth Date: Sun, 17 Nov 2024 21:18:25 -0500 Subject: [PATCH] python312Packages.comicapi: init at 3.2.0 --- .../python-modules/comicapi/default.nix | 83 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 85 insertions(+) create mode 100644 pkgs/development/python-modules/comicapi/default.nix diff --git a/pkgs/development/python-modules/comicapi/default.nix b/pkgs/development/python-modules/comicapi/default.nix new file mode 100644 index 000000000000..4a6721359728 --- /dev/null +++ b/pkgs/development/python-modules/comicapi/default.nix @@ -0,0 +1,83 @@ +{ + lib, + stdenv, + buildPythonPackage, + fetchFromGitHub, + importlib-metadata, + natsort, + pillow, + py7zr, + pycountry, + pyicu, + pytestCheckHook, + pythonOlder, + rapidfuzz, + rarfile, + setuptools, + setuptools-scm, + text2digits, + wheel, + wordninja, +}: + +buildPythonPackage rec { + pname = "comicapi"; + version = "3.2.0"; + pyproject = true; + + disabled = pythonOlder "3.8"; + + src = fetchFromGitHub { + owner = "comictagger"; + repo = "comicapi"; + rev = "2bf8332114e49add0bbc0fd3d85bdbba02de3d1a"; + hash = "sha256-Cd3ILy/4PqWUj1Uu9of9gCpdVp2R6CXjPOuSXgrB894="; + }; + + build-system = [ + setuptools + setuptools-scm + wheel + ]; + + dependencies = [ + importlib-metadata + natsort + pillow + pycountry + rapidfuzz + text2digits + wordninja + ]; + + optional-dependencies = { + _7z = [ py7zr ]; + + all = [ + py7zr + rarfile + ] ++ lib.optional (stdenv.hostPlatform.isDarwin || stdenv.hostPlatform.isLinux) pyicu; + + cbr = [ rarfile ]; + + icu = lib.optional (stdenv.hostPlatform.isDarwin || stdenv.hostPlatform.isLinux) pyicu; + }; + + nativeCheckInputs = [ pytestCheckHook ] ++ lib.flatten (lib.attrValues optional-dependencies); + + pythonRelaxDeps = [ "pycountry" ]; + + disabledTests = [ + # AssertionError + "test_copy_from_archive" + ]; + + pythonImportsCheck = [ "comicapi" ]; + + meta = { + description = "Comic archive (cbr/cbz/cbt) and metadata utilities"; + homepage = "https://github.com/comictagger/comicapi"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ getchoo ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 5428cfb5c9fc..d6b1e24acb07 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2196,6 +2196,8 @@ self: super: with self; { inherit (pkgs) secp256k1; }; + comicapi = callPackage ../development/python-modules/comicapi { }; + comicon = callPackage ../development/python-modules/comicon { }; command-runner = callPackage ../development/python-modules/command-runner { };