From ba4f2b5bf22af8330ff9e1098a0032e26cc865c2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tom=C3=A1s=20Rivera?= Date: Sun, 26 Jul 2026 14:09:18 +0200 Subject: [PATCH] setup agenix --- flake.lock | 65 +++++++++++++++++++++++++++++++++++- flake.nix | 5 +++ modules/hosts/desktop.nix | 2 +- modules/hosts/laptop.nix | 4 ++- modules/utilities/agenix.nix | 13 ++++++++ secrets/my-secret.age | 5 +++ secrets/secrets.nix | 8 +++++ 7 files changed, 99 insertions(+), 3 deletions(-) create mode 100644 modules/utilities/agenix.nix create mode 100644 secrets/my-secret.age create mode 100644 secrets/secrets.nix diff --git a/flake.lock b/flake.lock index 1c26d3a..57f960c 100644 --- a/flake.lock +++ b/flake.lock @@ -1,5 +1,30 @@ { "nodes": { + "agenix": { + "inputs": { + "darwin": "darwin", + "home-manager": [ + "home-manager" + ], + "nixpkgs": [ + "nixpkgs" + ], + "systems": "systems" + }, + "locked": { + "lastModified": 1770165109, + "narHash": "sha256-9VnK6Oqai65puVJ4WYtCTvlJeXxMzAp/69HhQuTdl/I=", + "owner": "ryantm", + "repo": "agenix", + "rev": "b027ee29d959fda4b60b57566d64c98a202e0feb", + "type": "github" + }, + "original": { + "owner": "ryantm", + "repo": "agenix", + "type": "github" + } + }, "caelestia-cli": { "inputs": { "caelestia-shell": [ @@ -47,6 +72,28 @@ "type": "github" } }, + "darwin": { + "inputs": { + "nixpkgs": [ + "agenix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1744478979, + "narHash": "sha256-dyN+teG9G82G+m+PX/aSAagkC+vUv0SgUw3XkPhQodQ=", + "owner": "lnl7", + "repo": "nix-darwin", + "rev": "43975d782b418ebf4969e9ccba82466728c2851b", + "type": "github" + }, + "original": { + "owner": "lnl7", + "ref": "master", + "repo": "nix-darwin", + "type": "github" + } + }, "disko": { "inputs": { "nixpkgs": [ @@ -86,7 +133,7 @@ }, "flake-utils": { "inputs": { - "systems": "systems" + "systems": "systems_2" }, "locked": { "lastModified": 1731533236, @@ -317,6 +364,7 @@ }, "root": { "inputs": { + "agenix": "agenix", "caelestia-shell": "caelestia-shell", "disko": "disko", "flake-parts": "flake-parts", @@ -369,6 +417,21 @@ "repo": "default", "type": "github" } + }, + "systems_2": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } } }, "root": "root", diff --git a/flake.nix b/flake.nix index c5f4cb0..2ffab80 100644 --- a/flake.nix +++ b/flake.nix @@ -47,6 +47,11 @@ url = "github:nix-community/disko"; inputs.nixpkgs.follows = "nixpkgs"; }; + agenix = { + url = "github:ryantm/agenix"; + inputs.nixpkgs.follows = "nixpkgs"; + inputs.home-manager.follows = "home-manager"; + }; /* microPlugins-vivify = { url = "git+https://codeberg.org/gibbert/micro-vivify"; diff --git a/modules/hosts/desktop.nix b/modules/hosts/desktop.nix index 0b29229..4e04e34 100644 --- a/modules/hosts/desktop.nix +++ b/modules/hosts/desktop.nix @@ -132,7 +132,7 @@ home.homeDirectory = "/home/tomasr"; home.sessionVariables = { - EDITOR = "neovim"; + EDITOR = "nvim"; TERMINAL = "kitty"; }; diff --git a/modules/hosts/laptop.nix b/modules/hosts/laptop.nix index ea0b14c..dfe31bf 100644 --- a/modules/hosts/laptop.nix +++ b/modules/hosts/laptop.nix @@ -9,6 +9,8 @@ inherit (self) pkgs-unstable pkgs-local pkgs-master; }; modules = with self.nixosModules; [ + inputs.agenix.nixosModules.default + agenix # important do not remove home-manager-laptop laptop @@ -129,7 +131,7 @@ home.homeDirectory = "/home/tomasr"; home.sessionVariables = { - EDITOR = "neovim"; + EDITOR = "nvim"; TERMINAL = "kitty"; }; diff --git a/modules/utilities/agenix.nix b/modules/utilities/agenix.nix new file mode 100644 index 0000000..2011d7a --- /dev/null +++ b/modules/utilities/agenix.nix @@ -0,0 +1,13 @@ +{inputs, ...}: { + flake.nixosModules.agenix = {pkgs, ...}: { + environment.systemPackages = [ + inputs.agenix.packages.${pkgs.system}.default + ]; + age.identityPaths = [ + "/home/tomasr/.ssh/id_ed25519" + ]; + age.secrets.my-secret = { + file = ../../secrets/my-secret.age; + }; + }; +} diff --git a/secrets/my-secret.age b/secrets/my-secret.age new file mode 100644 index 0000000..e58b842 --- /dev/null +++ b/secrets/my-secret.age @@ -0,0 +1,5 @@ +age-encryption.org/v1 +-> ssh-ed25519 pcPqbA GG04OY1WKDS1Rc1aRhODZShiWZfdw0cDHN+s/8XqDzA +9/SS7ZOQDh1H+27JT7fTi3GV5C19CjIPR9i4jjKjM9E +--- Irxkq9bamw6q0qsEZHlym6pC0gDxpty+bbg14OAgkxQ +ëĶ‘²ó<…¥ ɨ¬!†K!þ‘L;Ú~´]¶F ñ»Ak‰õwÐy62ϽK