From 8dfa6e7aea068c4f9d0db3583b29dba17bc474d1 Mon Sep 17 00:00:00 2001 From: lucy Date: Sun, 4 Oct 2026 20:53:08 +0200 Subject: [PATCH 1/2] add agenix and nix-easyroam --- configuration.nix | 3 ++ flake.lock | 80 ++++++++++++++++++++++++++++++++++++--- flake.nix | 12 ++++-- secrets/agenix-rules.nix | 7 ++++ secrets/easyroam.age | Bin 0 -> 4536 bytes 5 files changed, 94 insertions(+), 8 deletions(-) create mode 100644 secrets/agenix-rules.nix create mode 100644 secrets/easyroam.age diff --git a/configuration.nix b/configuration.nix index e360bb4..5846feb 100755 --- a/configuration.nix +++ b/configuration.nix @@ -6,6 +6,9 @@ }: { + + age.enable = true; + age.identityPaths = [ "/var/lib/misc/key.age" ]; hardware.graphics.enable = true; services.xserver.videoDrivers = lib.mkIf (config.networking.hostName == "nerv") [ "nvidia" ]; hardware.nvidia = lib.mkIf (config.networking.hostName == "nerv") { diff --git a/flake.lock b/flake.lock index 9218c1a..f58a526 100755 --- a/flake.lock +++ b/flake.lock @@ -1,5 +1,23 @@ { "nodes": { + "agenix": { + "inputs": { + "nixpkgs": "nixpkgs" + }, + "locked": { + "lastModified": 1790734419, + "narHash": "sha256-n7wew722m1OTBT9DOIMxNX/NF4zfsSUABAO5eW3wikE=", + "owner": "ryantm", + "repo": "agenix", + "rev": "3daa710894355fa2fad8243380af373a2b4046ef", + "type": "github" + }, + "original": { + "owner": "ryantm", + "repo": "agenix", + "type": "github" + } + }, "flake-parts": { "inputs": { "nixpkgs-lib": "nixpkgs-lib" @@ -106,6 +124,24 @@ "type": "github" } }, + "nix-easyroam": { + "inputs": { + "nixpkgs": "nixpkgs_2" + }, + "locked": { + "lastModified": 1784038797, + "narHash": "sha256-td6Ko5RV/TFw7ALmYP9YUVXMS1b7hW7vDqabrGXyzUo=", + "owner": "0x5a4", + "repo": "nix-easyroam", + "rev": "a6c72d25edc3b210bf6b2b46395c88be7efac147", + "type": "github" + }, + "original": { + "owner": "0x5a4", + "repo": "nix-easyroam", + "type": "github" + } + }, "nix-maid": { "locked": { "lastModified": 1790770868, @@ -148,16 +184,16 @@ }, "nixpkgs": { "locked": { - "lastModified": 1790689126, - "narHash": "sha256-ilerN1WLSvF+HMjziC/Wv99J5y02maDH+6hZPwsORKg=", + "lastModified": 1790340521, + "narHash": "sha256-cRrWlIjVRJ6BHDr9caUdXsZ3owzWIKYHpNmGPHBInIU=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "b4fd65b198c599cbe814fcb9f42d25d021595ec9", + "rev": "f5c082a40f7571c266e74e80ae2e68aadd8a9fc7", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-unstable", + "ref": "nixos-26.05", "repo": "nixpkgs", "type": "github" } @@ -209,12 +245,46 @@ "type": "github" } }, + "nixpkgs_2": { + "locked": { + "lastModified": 1735268880, + "narHash": "sha256-7QEFnKkzD13SPxs+UFR5bUFN2fRw+GlL0am72ZjNre4=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "7cc0bff31a3a705d3ac4fdceb030a17239412210", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_3": { + "locked": { + "lastModified": 1790689126, + "narHash": "sha256-ilerN1WLSvF+HMjziC/Wv99J5y02maDH+6hZPwsORKg=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "b4fd65b198c599cbe814fcb9f42d25d021595ec9", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "root": { "inputs": { + "agenix": "agenix", "mangowm": "mangowm", + "nix-easyroam": "nix-easyroam", "nix-maid": "nix-maid", "nixcord": "nixcord", - "nixpkgs": "nixpkgs" + "nixpkgs": "nixpkgs_3" } }, "scenefx": { diff --git a/flake.nix b/flake.nix index e81f003..4a497a3 100755 --- a/flake.nix +++ b/flake.nix @@ -3,13 +3,15 @@ inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; + agenix.url = "github:ryantm/agenix"; + nix-easyroam.url = "github:0x5a4/nix-easyroam"; + nix-maid.url = "git+https://codeberg.org/viperML/nix-maid"; + nixcord = { url = "github:4evy/nixcord"; inputs.nixpkgs.follows = "nixpkgs"; }; - nix-maid = { - url = "git+https://codeberg.org/viperML/nix-maid"; - }; + mangowm = { url = "github:mangowm/mango"; inputs.nixpkgs.follows = "nixpkgs"; @@ -23,12 +25,16 @@ nixcord, nix-maid, mangowm, + agenix, + nix-easyroam, }: let mods = [ nix-maid.nixosModules.default nixcord.nixosModules.nixcord mangowm.nixosModules.mango + agenix.nixosModules.default + nix-easyroam.nixosModules.nix-easyroam ./configuration.nix ./maid.nix ]; diff --git a/secrets/agenix-rules.nix b/secrets/agenix-rules.nix new file mode 100644 index 0000000..d70a660 --- /dev/null +++ b/secrets/agenix-rules.nix @@ -0,0 +1,7 @@ +{ config }: +let + main = "age17hvac3hn79mwttel9snw87a20x4vguh7y7ys43xmvlhrl3mqs3wswuzlt6"; +in +{ + "easyroam.age".publicKeys = [ main ]; +} diff --git a/secrets/easyroam.age b/secrets/easyroam.age new file mode 100644 index 0000000000000000000000000000000000000000..e91d8697d0087836f55da55d3737f72fe2ea6f92 GIT binary patch literal 4536 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 B(GUOt literal 0 HcmV?d00001 From 0aa2f41041251f1753c4734d790dfa59493cf731 Mon Sep 17 00:00:00 2001 From: lucy Date: Sun, 4 Oct 2026 21:04:38 +0200 Subject: [PATCH 2/2] enable nix-easyroam --- configuration.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/configuration.nix b/configuration.nix index 5846feb..d7b35ec 100755 --- a/configuration.nix +++ b/configuration.nix @@ -9,6 +9,11 @@ age.enable = true; age.identityPaths = [ "/var/lib/misc/key.age" ]; + age.secrets.easyroam.file = ./secrets/easyroam.age; + services.easyroam = { + enable = true; + pkcsFile = config.age.secrets.easyroam.path; + }; hardware.graphics.enable = true; services.xserver.videoDrivers = lib.mkIf (config.networking.hostName == "nerv") [ "nvidia" ]; hardware.nvidia = lib.mkIf (config.networking.hostName == "nerv") {