diff options
Diffstat (limited to 'nixpkgs/pkgs/applications/networking/cluster/nixops/default.nix')
-rw-r--r-- | nixpkgs/pkgs/applications/networking/cluster/nixops/default.nix | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/applications/networking/cluster/nixops/default.nix b/nixpkgs/pkgs/applications/networking/cluster/nixops/default.nix new file mode 100644 index 000000000000..3885278f1f13 --- /dev/null +++ b/nixpkgs/pkgs/applications/networking/cluster/nixops/default.nix @@ -0,0 +1,65 @@ +{ pkgs +, poetry2nix +, lib +, overrides ? (self: super: {}) +, stdenv +}: + +let + + interpreter = ( + poetry2nix.mkPoetryPackages { + projectDir = ./.; + overrides = [ + poetry2nix.defaultPoetryOverrides + (import ./poetry-git-overlay.nix { inherit pkgs; }) + ( + self: super: { + + nixops = super.nixops.overridePythonAttrs ( + old: { + meta = old.meta // { + homepage = https://github.com/NixOS/nixops; + description = "NixOS cloud provisioning and deployment tool"; + maintainers = with lib.maintainers; [ adisbladis aminechikhaoui eelco rob domenkozar ]; + platforms = lib.platforms.unix; + license = lib.licenses.lgpl3; + }; + + } + ); + } + ) + + # User provided overrides + overrides + + # Make nixops pluginable + (self: super: { + nixops = super.__toPluginAble { + drv = super.nixops; + finalDrv = self.nixops; + + nativeBuildInputs = [ self.sphinx ]; + 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 + ''; + + }; + }) + + ]; + } + ).python; + +in interpreter.pkgs.nixops.withPlugins(ps: [ + ps.nixops-encrypted-links + ps.nixops-virtd + ps.nixops-aws + ps.nixops-gcp + ps.nixopsvbox +]) |