diff --git a/pkgs/tools/misc/copier/default.nix b/pkgs/tools/misc/copier/default.nix new file mode 100644 index 000000000000..55d1ea6693e7 --- /dev/null +++ b/pkgs/tools/misc/copier/default.nix @@ -0,0 +1,51 @@ +{ lib, git, python3, fetchFromGitHub }: + +python3.pkgs.buildPythonApplication rec { + pname = "copier"; + version = "7.0.1"; + format = "pyproject"; + + src = fetchFromGitHub { + owner = "copier-org"; + repo = "copier"; + rev = "v${version}"; + sha256 = "sha256-8lTvyyKfAkvnUvw3e+r9C/49QASR8Zeokm509jxGK2g="; + }; + + POETRY_DYNAMIC_VERSIONING_BYPASS = version; + + nativeBuildInputs = [ + python3.pkgs.poetry-core + python3.pkgs.poetry-dynamic-versioning + ]; + + propagatedBuildInputs = with python3.pkgs; [ + colorama + dunamai + iteration-utilities + jinja2 + jinja2-ansible-filters + mkdocs-material + mkdocs-mermaid2-plugin + mkdocstrings + packaging + pathspec + plumbum + pydantic + pygments + pyyaml + pyyaml-include + questionary + ]; + + makeWrapperArgs = [ + "--suffix PATH : ${lib.makeBinPath [ git ] }" + ]; + + meta = with lib; { + description = "Library and command-line utility for rendering projects templates"; + homepage = "https://copier.readthedocs.io"; + license = licenses.mit; + maintainers = with maintainers; [ jonringer ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 133ff0345018..b70b00fb4b31 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1349,6 +1349,8 @@ with pkgs; dwarfs = callPackage ../tools/filesystems/dwarfs { }; + copier = callPackage ../tools/misc/copier { }; + gamemode = callPackage ../tools/games/gamemode { libgamemode32 = pkgsi686Linux.gamemode.lib; };