diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 9e08789777e0..7586a34a64f6 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -16139,6 +16139,12 @@ githubId = 3159881; name = "Tobias Markus"; }; + tm-drtina = { + email = "tm.drtina@gmail.com"; + github = "tm-drtina"; + githubId = 26902865; + name = "Tomas Drtina"; + }; tmountain = { email = "tinymountain@gmail.com"; github = "tmountain"; diff --git a/pkgs/development/python-modules/argparse-dataclass/default.nix b/pkgs/development/python-modules/argparse-dataclass/default.nix new file mode 100644 index 000000000000..993242e4bd80 --- /dev/null +++ b/pkgs/development/python-modules/argparse-dataclass/default.nix @@ -0,0 +1,24 @@ +{ lib, buildPythonPackage, fetchFromGitHub, pytestCheckHook }: + +buildPythonPackage rec { + pname = "argparse-dataclass"; + version = "1.0.0"; + + src = fetchFromGitHub { + owner = "mivade"; + repo = "argparse_dataclass"; + rev = version; + sha256 = "6//XQKUnCH3ZtOL6M/EstMJ537nEmbuGQNqfelTluOs="; + }; + + checkInputs = [ pytestCheckHook ]; + + pythonImportsCheck = [ "argparse_dataclass" ]; + + meta = with lib; { + description = "Declarative CLIs with argparse and dataclasses"; + homepage = "https://github.com/mivade/argparse_dataclass"; + license = licenses.mit; + maintainers = with maintainers; [ tm-drtina ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index db2e40fe3604..f4d0bda3cb71 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -610,6 +610,8 @@ self: super: with self; { argparse-addons = callPackage ../development/python-modules/argparse-addons { }; + argparse-dataclass = callPackage ../development/python-modules/argparse-dataclass { }; + args = callPackage ../development/python-modules/args { }; aria2p = callPackage ../development/python-modules/aria2p { };