diff --git a/pkgs/development/python-modules/pyzipper/default.nix b/pkgs/development/python-modules/pyzipper/default.nix new file mode 100644 index 000000000000..d12e396e2db1 --- /dev/null +++ b/pkgs/development/python-modules/pyzipper/default.nix @@ -0,0 +1,55 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, pythonOlder +, pytestCheckHook +, pycryptodomex +}: + +buildPythonPackage rec { + pname = "pyzipper"; + version = "0.3.6"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "danifus"; + repo = "pyzipper"; + rev = "refs/tags/v${version}"; + hash = "sha256-+fZXoAUeB/bUI3LrIFlMTktJgn+GNFBiDHvH2Jgo0pg="; + }; + + propagatedBuildInputs = [ + pycryptodomex + ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + pythonImportsCheck = [ + "pyzipper" + ]; + + disabledTests = [ + # Tests are parsing CLI output + "test_args_from_interpreter_flags" + "test_bad_use" + "test_bad_use" + "test_check__all__" + "test_create_command" + "test_extract_command" + "test_main" + "test_temp_dir__forked_child" + "test_test_command" + ]; + + meta = with lib; { + description = "Python zipfile extensions"; + homepage = "https://github.com/danifus/pyzipper"; + changelog = "https://github.com/danifus/pyzipper/blob/v${version}/HISTORY.rst"; + license = licenses.mit; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/development/python-modules/xknxproject/default.nix b/pkgs/development/python-modules/xknxproject/default.nix new file mode 100644 index 000000000000..907d796fb4b6 --- /dev/null +++ b/pkgs/development/python-modules/xknxproject/default.nix @@ -0,0 +1,49 @@ +{ lib +, buildPythonPackage +, cryptography +, fetchFromGitHub +, pytestCheckHook +, pythonOlder +, pyzipper +, setuptools +}: + +buildPythonPackage rec { + pname = "xknxproject"; + version = "3.1.0"; + format = "pyproject"; + + disabled = pythonOlder "3.9"; + + src = fetchFromGitHub { + owner = "XKNX"; + repo = "xknxproject"; + rev = "refs/tags/${version}"; + hash = "sha256-j9Bfzl1cYhmDV2Cw4/aobo6Uai50V5JrzQWrrkDm3lw="; + }; + + nativeBuildInputs = [ + setuptools + ]; + + propagatedBuildInputs = [ + cryptography + pyzipper + ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + pythonImportsCheck = [ + "xknxproject" + ]; + + meta = with lib; { + description = "ETS project parser"; + homepage = "https://github.com/XKNX/xknxproject"; + changelog = "https://github.com/XKNX/xknxproject/releases/tag/${version}"; + license = licenses.gpl2Only; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 79f7feb94854..e90116e1abc4 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -7784,6 +7784,8 @@ self: super: with self; { pyzbar = callPackage ../development/python-modules/pyzbar { }; + pyzipper = callPackage ../development/python-modules/pyzipper { }; + pkutils = callPackage ../development/python-modules/pkutils { }; plac = callPackage ../development/python-modules/plac { }; @@ -13108,6 +13110,8 @@ self: super: with self; { xknx = callPackage ../development/python-modules/xknx { }; + xknxproject = callPackage ../development/python-modules/xknxproject { }; + xlib = callPackage ../development/python-modules/xlib { }; xlrd = callPackage ../development/python-modules/xlrd { };