diff --git a/pkgs/development/python-modules/pytoolconfig/default.nix b/pkgs/development/python-modules/pytoolconfig/default.nix new file mode 100644 index 00000000000..a3c50a44d0f --- /dev/null +++ b/pkgs/development/python-modules/pytoolconfig/default.nix @@ -0,0 +1,79 @@ +{ lib +, buildPythonPackage +, docutils +, fetchFromGitHub +, packaging +, pdm-pep517 +, platformdirs +, pydantic +, pytest-timeout +, pytestCheckHook +, pythonOlder +, sphinx +, tabulate +, tomli +}: + +buildPythonPackage rec { + pname = "pytoolconfig"; + version = "1.2.5"; + format = "pyproject"; + + disabled = pythonOlder "3.8"; + + src = fetchFromGitHub { + owner = "bagel897"; + repo = pname; + rev = "refs/tags/v${version}"; + hash = "sha256-b7er/IgXr2j9dSnI87669BXWA5CXNTzwa1DTpl8PBZ4="; + }; + + postPatch = '' + # License file name doesn't match + substituteInPlace pyproject.toml \ + --replace "license = { file = 'LGPL-3.0' }" "" \ + --replace 'dynamic = ["version"]' 'version = "${version}"' \ + --replace "packaging>=22.0" "packaging" + ''; + + nativeBuildInputs = [ + pdm-pep517 + ]; + + propagatedBuildInputs = [ + packaging + ] ++ lib.optionals (pythonOlder "3.11") [ + tomli + ]; + + passthru.optional-dependencies = { + validation = [ + pydantic + ]; + global = [ + platformdirs + ]; + doc = [ + sphinx + tabulate + ]; + }; + + checkInputs = [ + docutils + pytestCheckHook + ] ++ passthru.optional-dependencies.global + ++ passthru.optional-dependencies.doc; + + pythonImportsCheck = [ + "pytoolconfig" + ]; + + meta = with lib; { + description = "Module for tool configuration"; + homepage = "https://github.com/bagel897/pytoolconfig"; + changelog = "https://github.com/bagel897/pytoolconfig/releases/tag/v${version}"; + license = licenses.lgpl3Plus; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index e35d915c962..324c6a302cc 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -5147,8 +5147,6 @@ self: super: with self; { lcov_cobertura = callPackage ../development/python-modules/lcov_cobertura { }; - ld2410-ble = callPackage ../development/python-modules/ld2410-ble { }; - ldap3 = callPackage ../development/python-modules/ldap3 { }; ldapdomaindump = callPackage ../development/python-modules/ldapdomaindump { }; @@ -9367,6 +9365,8 @@ self: super: with self; { pytomlpp = callPackage ../development/python-modules/pytomlpp { }; + pytoolconfig = callPackage ../development/python-modules/pytoolconfig { }; + pytools = callPackage ../development/python-modules/pytools { }; pytorch-lightning = callPackage ../development/python-modules/pytorch-lightning { };