From 3f2deb9e98a742747ab641a36fab2e942acc33b8 Mon Sep 17 00:00:00 2001 From: K900 Date: Wed, 25 Oct 2023 12:23:27 +0300 Subject: nixops (unstable): switch to non-poetry2nix packaging Mostly nix-init with some manual fixups. withPlugins implementation copied from Poetry. --- .../networking/cluster/nixops/unwrapped.nix | 65 ++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 pkgs/applications/networking/cluster/nixops/unwrapped.nix (limited to 'pkgs/applications/networking/cluster/nixops/unwrapped.nix') diff --git a/pkgs/applications/networking/cluster/nixops/unwrapped.nix b/pkgs/applications/networking/cluster/nixops/unwrapped.nix new file mode 100644 index 00000000000..c70da930469 --- /dev/null +++ b/pkgs/applications/networking/cluster/nixops/unwrapped.nix @@ -0,0 +1,65 @@ +{ lib +, buildPythonApplication +, fetchFromGitHub +, unstableGitUpdater +, poetry-core +, sphinx +, pluggy +, prettytable +, typeguard +, typing-extensions +, nixosTests +}: + +buildPythonApplication rec { + pname = "nixops"; + version = "unstable-2023-10-26"; + pyproject = true; + + src = fetchFromGitHub { + owner = "NixOS"; + repo = "nixops"; + rev = "2cfc2cb4fa9ecb89a4274574ff7f63ea61782498"; + hash = "sha256-4uvQQkERZFEeRJjMAcyLYJzNvH0rNiiJ+5BDQmD58gI="; + }; + + postPatch = '' + substituteInPlace nixops/args.py --replace "@version@" "${version}-pre-${lib.substring 0 7 src.rev or "dirty"}" + ''; + + nativeBuildInputs = [ + poetry-core + sphinx + ]; + + propagatedBuildInputs = [ + pluggy + prettytable + typeguard + typing-extensions + ]; + + postInstall = '' + doc_cache=$(mktemp -d) + sphinx-build -b man -d $doc_cache doc/ $out/share/man/man1 + + html=$(mktemp -d) + sphinx-build -b html -d $doc_cache doc/ $out/share/nixops/doc + ''; + + pythonImportsCheck = [ "nixops" ]; + + passthru = { + tests.nixops = nixosTests.nixops.unstable; + updateScript = unstableGitUpdater {}; + }; + + meta = with lib; { + description = "A tool for deploying to NixOS machines in a network or cloud"; + homepage = "https://github.com/NixOS/nixops"; + license = licenses.lgpl3Only; + maintainers = with lib.maintainers; [ adisbladis aminechikhaoui roberth ]; + platforms = lib.platforms.unix; + mainProgram = "nixops"; + }; +} -- cgit 1.4.1