From 1b09180b38d9e84858875cd4f8118f8cc029e0bf Mon Sep 17 00:00:00 2001 From: stuebinm Date: Sun, 13 Nov 2022 23:04:55 +0100 Subject: [PATCH] flake: add deploy-rs --- flake.lock | 70 +++++++++++++++++++++++++++++++++++++++++++++++------- flake.nix | 20 +++++++++++++++- 2 files changed, 81 insertions(+), 9 deletions(-) diff --git a/flake.lock b/flake.lock index 7a7df5b..a33958b 100644 --- a/flake.lock +++ b/flake.lock @@ -62,11 +62,33 @@ "inputs": { "flake-compat": "flake-compat", "nixpkgs": [ - "nix-hexchen", "nixpkgs" ], "utils": "utils" }, + "locked": { + "lastModified": 1668166163, + "narHash": "sha256-XCuM+n98KcG0v+DT1HolGCO3j5FOBUjV4K8YcZsVeQw=", + "owner": "serokell", + "repo": "deploy-rs", + "rev": "b011f13bc577b978f52aaefde5605332f7bca7e9", + "type": "github" + }, + "original": { + "owner": "serokell", + "repo": "deploy-rs", + "type": "github" + } + }, + "deploy-rs_2": { + "inputs": { + "flake-compat": "flake-compat_2", + "nixpkgs": [ + "nix-hexchen", + "nixpkgs" + ], + "utils": "utils_2" + }, "locked": { "lastModified": 1659725433, "narHash": "sha256-1ZxuK67TL29YLw88vQ18Y2Y6iYg8Jb7I6/HVzmNB6nM=", @@ -309,6 +331,22 @@ } }, "flake-compat_2": { + "flake": false, + "locked": { + "lastModified": 1648199409, + "narHash": "sha256-JwPKdC2PoVBkG6E+eWw3j6BMR6sL3COpYWfif7RVb8Y=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "64a525ee38886ab9028e6f61790de0832aa3ef03", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, + "flake-compat_3": { "flake": false, "locked": { "lastModified": 1650374568, @@ -324,7 +362,7 @@ "type": "github" } }, - "flake-compat_3": { + "flake-compat_4": { "flake": false, "locked": { "lastModified": 1650374568, @@ -393,7 +431,7 @@ "nix-hexchen", "nixpkgs" ], - "utils": "utils_2" + "utils": "utils_3" }, "locked": { "lastModified": 1666903647, @@ -449,7 +487,7 @@ "evil-org-mode": "evil-org-mode", "evil-quick-diff": "evil-quick-diff", "explain-pause-mode": "explain-pause-mode", - "flake-compat": "flake-compat_3", + "flake-compat": "flake-compat_4", "flake-utils": [ "nix-hexchen", "flake-utils" @@ -490,10 +528,10 @@ "nix-hexchen": { "inputs": { "cyberchaos": "cyberchaos", - "deploy-rs": "deploy-rs", + "deploy-rs": "deploy-rs_2", "doom-emacs": "doom-emacs", "emacs-overlay": "emacs-overlay", - "flake-compat": "flake-compat_2", + "flake-compat": "flake-compat_3", "flake-utils": "flake-utils_2", "home-manager": "home-manager", "nix-doom-emacs": "nix-doom-emacs", @@ -566,7 +604,7 @@ "blobs": "blobs_2", "nixpkgs": "nixpkgs_2", "nixpkgs-22_05": "nixpkgs-22_05_3", - "utils": "utils_3" + "utils": "utils_4" }, "locked": { "lastModified": 1655930346, @@ -820,6 +858,7 @@ }, "root": { "inputs": { + "deploy-rs": "deploy-rs", "mattermost-server": "mattermost-server", "mattermost-webapp": "mattermost-webapp", "nix-hexchen": "nix-hexchen", @@ -914,6 +953,21 @@ } }, "utils_2": { + "locked": { + "lastModified": 1648297722, + "narHash": "sha256-W+qlPsiZd8F3XkzXOzAoR+mpFqzm3ekQkJNa+PIh1BQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "0f8662f1319ad6abf89b3380dd2722369fc51ade", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "utils_3": { "locked": { "lastModified": 1659877975, "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", @@ -928,7 +982,7 @@ "type": "github" } }, - "utils_3": { + "utils_4": { "locked": { "lastModified": 1605370193, "narHash": "sha256-YyMTf3URDL/otKdKgtoMChu4vfVL3vCMkRqpGifhUn0=", diff --git a/flake.nix b/flake.nix index 21ae541..cfc240e 100644 --- a/flake.nix +++ b/flake.nix @@ -11,9 +11,12 @@ nixpkgs-unstable.url = "github:NixOS/nixpkgs?rev=ae1dc133ea5f1538d035af41e5ddbc2ebcb67b90"; nix-hexchen.url = "git+https://gitlab.com/hexchen/nixfiles?ref=main"; nixos-mailserver.url = "git+https://gitlab.com/simple-nixos-mailserver/nixos-mailserver?rev=f535d8123c4761b2ed8138f3d202ea710a334a1d"; + + deploy-rs.url = "github:serokell/deploy-rs"; + deploy-rs.inputs.nixpkgs.follows = "nixpkgs"; }; - outputs = { self, nixpkgs, nix-hexchen, ... }@inputs: + outputs = { self, nixpkgs, nix-hexchen, deploy-rs, ... }@inputs: let modules = nix-hexchen.nixosModules; profiles = nix-hexchen.nixosModules.profiles; pkgs = import ./pkgs { @@ -52,5 +55,20 @@ inherit modules profiles evalConfig; }; }; + + deploy.nodes.parsons = { + hostname = "parsons"; + profiles.system = { + user = "root"; + path = deploy-rs.lib.x86_64-linux.activate.nixos + self.nixosConfigurations.parsons; + }; + }; + + # This is highly advised, and will prevent many possible mistakes + checks = builtins.mapAttrs + (system: deployLib: deployLib.deployChecks self.deploy) + deploy-rs.lib; }; + }