diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index fea30c74954..26748909837 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -5869,6 +5869,12 @@ githubId = 587870; name = "Jonathan Mettes"; }; + jmgilman = { + email = "joshuagilman@gmail.com"; + github = "jmgilman"; + githubId = 2308444; + name = "Joshua Gilman"; + }; jo1gi = { email = "joakimholm@protonmail.com"; github = "jo1gi"; diff --git a/pkgs/development/python-modules/dunamai/default.nix b/pkgs/development/python-modules/dunamai/default.nix new file mode 100644 index 00000000000..f4a24a7a7f8 --- /dev/null +++ b/pkgs/development/python-modules/dunamai/default.nix @@ -0,0 +1,52 @@ +{ lib +, poetry-core +, buildPythonPackage +, fetchFromGitHub +, pythonOlder +, importlib-metadata +, packaging +, pytestCheckHook +}: + +buildPythonPackage rec { + pname = "dunamai"; + version = "1.10.0"; + format = "pyproject"; + + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "mtkennerly"; + repo = "dunamai"; + rev = "v${version}"; + sha256 = "sha256-Sp0yfNkFwNc2qR9aSPteBqZcqRokM9whOVmduXVK3CI="; + }; + + nativeBuildInputs = [ + poetry-core + ]; + + propagatedBuildInputs = [ + packaging + ] ++ lib.optionals (pythonOlder "3.8") [ + importlib-metadata + ]; + + # needs to be able to run dunami from PATH + preCheck = '' + export PATH=$PATH:$out/bin + ''; + + checkInputs = [ + pytestCheckHook + ]; + + pythonImportsCheck = [ "dunamai" ]; + + meta = with lib; { + description = "Dynamic version generation"; + homepage = "https://github.com/mtkennerly/dunamai"; + license = licenses.mit; + maintainers = with maintainers; [ jmgilman ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 0f4a3a9fba5..542b0961b01 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2502,6 +2502,8 @@ in { dulwich = callPackage ../development/python-modules/dulwich { }; + dunamai = callPackage ../development/python-modules/dunamai { }; + dungeon-eos = callPackage ../development/python-modules/dungeon-eos { }; dwdwfsapi = callPackage ../development/python-modules/dwdwfsapi { };