diff options
author | Dmitry Bogatov <serenity@kaction.cc> | 2023-01-01 07:05:18 -0500 |
---|---|---|
committer | Yt <happysalada@proton.me> | 2023-03-05 16:15:04 -0500 |
commit | 2fd55ed4c9d910c6b12e727e7b39cfea77269c55 (patch) | |
tree | b46646c4d588e521705b754a9c400fd867e5e6d5 /pkgs/tools/admin/cdist | |
parent | 43441b9e7f9f9de2fa6372936a89c1ef79629858 (diff) |
cdist: init at 7.0.0
Diffstat (limited to 'pkgs/tools/admin/cdist')
-rw-r--r-- | pkgs/tools/admin/cdist/default.nix | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/pkgs/tools/admin/cdist/default.nix b/pkgs/tools/admin/cdist/default.nix new file mode 100644 index 0000000000000..115800fcf2c5c --- /dev/null +++ b/pkgs/tools/admin/cdist/default.nix @@ -0,0 +1,64 @@ +{ lib +, buildPythonApplication +, fetchFromGitea +, pythonImportsCheckHook +, sphinxHook +, sphinx-rtd-theme +}: + +buildPythonApplication rec { + pname = "cdist"; + version = "7.0.0"; + outputs = [ "out" "man" "doc" ]; + + src = fetchFromGitea { + domain = "code.ungleich.ch"; + owner = "ungleich-public"; + repo = "cdist"; + rev = version; + hash = "sha256-lIx0RtGQJdY2e00azI9yS6TV+5pCegpKOOD0dQmgMqA="; + }; + + nativeBuildInputs = [ + pythonImportsCheckHook + sphinxHook + sphinx-rtd-theme + ]; + + sphinxRoot = "docs/src"; + + # "make man" creates symlinks in docs/src needed by sphinxHook. + postPatch = '' + echo "VERSION = '$version'" > cdist/version.py + + make man + ''; + + preConfigure = '' + export HOME=/tmp + ''; + + # Test suite requires either non-chrooted environment or root. + # + # When "machine_type" explorer figures out that it is running inside + # chroot, it assumes that it has enough privileges to escape it. + doCheck = false; + + pythonImportsCheck = [ "cdist" ]; + + postInstall = '' + mkdir -p $out/share + mv docs/dist/man $out/share + ''; + + meta = with lib; { + description = "Minimalistic configuration management system"; + homepage = "https://www.sdi.st"; + changelog = "https://code.ungleich.ch/ungleich-public/cdist/src/tag/${version}/docs/changelog"; + + # Mostly. There are still couple types that are gpl3-only. + license = licenses.gpl3Plus; + maintainers = with maintainers; [ kaction ]; + platforms = platforms.unix; + }; +} |