refactor: sops-nix

This commit is contained in:
2025-07-22 17:32:34 +08:00
parent 3263d72b59
commit 8ca0a6cc0f
12 changed files with 38 additions and 33 deletions

View File

@@ -1,12 +1,12 @@
{ {
config, config,
pkgs, pkgs,
sopsRoot, secrets,
... ...
}: }:
{ {
sops.secrets.et-imxyy-nix-server-nixremote = { sops.secrets.et-imxyy-nix-server-nixremote = {
sopsFile = sopsRoot + /et-imxyy-nix-server-nixremote.toml; sopsFile = secrets.et-imxyy-nix-server-nixremote;
format = "binary"; format = "binary";
}; };
environment.systemPackages = [ pkgs.easytier ]; environment.systemPackages = [ pkgs.easytier ];

View File

@@ -1,7 +1,7 @@
{ config, sopsRoot, ... }: { config, secrets, ... }:
{ {
sops.secrets.minio-env = { sops.secrets.minio-env = {
sopsFile = sopsRoot + /minio.env; sopsFile = secrets.minio;
format = "dotenv"; format = "dotenv";
}; };
services.minio = { services.minio = {

View File

@@ -3,7 +3,7 @@
lib, lib,
pkgs, pkgs,
username, username,
sopsRoot, secrets,
... ...
}: }:
{ {
@@ -143,7 +143,7 @@
]; ];
sops.secrets.dae-imxyy-nix-server = { sops.secrets.dae-imxyy-nix-server = {
sopsFile = sopsRoot + /dae-imxyy-nix-server.dae; sopsFile = secrets.dae-imxyy-nix-server;
format = "binary"; format = "binary";
}; };
services.dae = { services.dae = {
@@ -152,7 +152,7 @@
}; };
systemd.services.dae.after = [ "sops-nix.service" ]; systemd.services.dae.after = [ "sops-nix.service" ];
sops.secrets.mihomo = { sops.secrets.mihomo = {
sopsFile = sopsRoot + /mihomo.yaml; sopsFile = secrets.mihomo;
format = "yaml"; format = "yaml";
key = ""; key = "";
}; };
@@ -164,7 +164,7 @@
}; };
sops.secrets.frp-env = { sops.secrets.frp-env = {
sopsFile = sopsRoot + /frp.env; sopsFile = secrets.frp;
format = "dotenv"; format = "dotenv";
}; };
systemd.services.frp.serviceConfig.EnvironmentFile = [ systemd.services.frp.serviceConfig.EnvironmentFile = [
@@ -475,7 +475,7 @@
}; };
sops.secrets.et-imxyy-nix-server = { sops.secrets.et-imxyy-nix-server = {
sopsFile = sopsRoot + /et-imxyy-nix-server.toml; sopsFile = secrets.et-imxyy-nix-server;
format = "binary"; format = "binary";
}; };
environment.systemPackages = [ pkgs.easytier ]; environment.systemPackages = [ pkgs.easytier ];

View File

@@ -2,7 +2,7 @@
lib, lib,
config, config,
username, username,
sopsRoot, secrets,
... ...
}: }:
{ {
@@ -23,7 +23,7 @@
environment.variables.NIX_REMOTE = "daemon"; environment.variables.NIX_REMOTE = "daemon";
sops.secrets.imxyy-nix-server-hashed-password = { sops.secrets.imxyy-nix-server-hashed-password = {
sopsFile = sopsRoot + /imxyy-nix-server-hashed-password.txt; sopsFile = secrets.imxyy-nix-server-hashed-password;
format = "binary"; format = "binary";
neededForUsers = true; neededForUsers = true;
}; };

View File

@@ -1,16 +1,16 @@
{ {
config, config,
sopsRoot, secrets,
... ...
}: }:
{ {
sops.secrets = { sops.secrets = {
flatnote-env = { flatnote-env = {
sopsFile = sopsRoot + /flatnote.env; sopsFile = secrets.flatnote;
format = "dotenv"; format = "dotenv";
}; };
siyuan-env = { siyuan-env = {
sopsFile = sopsRoot + /siyuan.env; sopsFile = secrets.siyuan;
format = "dotenv"; format = "dotenv";
}; };
}; };

View File

@@ -1,7 +1,7 @@
{ config, sopsRoot, ... }: { config, secrets, ... }:
{ {
sops.secrets.vaultwarden-env = { sops.secrets.vaultwarden-env = {
sopsFile = sopsRoot + /vaultwarden.env; sopsFile = secrets.vaultwarden;
format = "dotenv"; format = "dotenv";
}; };
services.postgresql.ensureUsers = [ services.postgresql.ensureUsers = [

View File

@@ -1,7 +1,7 @@
{ {
config, config,
pkgs, pkgs,
sopsRoot, secrets,
... ...
}: }:
{ {
@@ -53,7 +53,7 @@
}; };
sops.secrets.dae-imxyy-nix-x16 = { sops.secrets.dae-imxyy-nix-x16 = {
sopsFile = sopsRoot + /dae-imxyy-nix-x16.dae; sopsFile = secrets.dae-imxyy-nix-x16;
format = "binary"; format = "binary";
}; };
services.dae = { services.dae = {
@@ -62,7 +62,7 @@
}; };
systemd.services.dae.after = [ "sops-nix.service" ]; systemd.services.dae.after = [ "sops-nix.service" ];
sops.secrets.mihomo = { sops.secrets.mihomo = {
sopsFile = sopsRoot + /mihomo.yaml; sopsFile = secrets.mihomo;
format = "yaml"; format = "yaml";
key = ""; key = "";
}; };
@@ -74,7 +74,7 @@
}; };
sops.secrets.et-imxyy-nix-x16 = { sops.secrets.et-imxyy-nix-x16 = {
sopsFile = sopsRoot + /et-imxyy-nix-x16.toml; sopsFile = secrets.et-imxyy-nix-x16;
format = "binary"; format = "binary";
}; };
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [

View File

@@ -1,9 +1,8 @@
{ {
lib,
pkgs, pkgs,
config, config,
username, username,
sopsRoot, secrets,
... ...
}: }:
{ {
@@ -134,7 +133,7 @@
]; ];
sops.secrets.imxyy-nix-rclone = { sops.secrets.imxyy-nix-rclone = {
sopsFile = sopsRoot + /imxyy-nix-rclone.conf; sopsFile = secrets.imxyy-nix-rclone;
format = "binary"; format = "binary";
}; };
fileSystems = { fileSystems = {

View File

@@ -2,8 +2,7 @@
config, config,
lib, lib,
pkgs, pkgs,
sopsRoot, secrets,
username,
... ...
}: }:
{ {
@@ -86,7 +85,7 @@
}; };
sops.secrets.dae-imxyy-nix = { sops.secrets.dae-imxyy-nix = {
sopsFile = sopsRoot + /dae-imxyy-nix.dae; sopsFile = secrets.dae-imxyy-nix;
format = "binary"; format = "binary";
}; };
services.dae = { services.dae = {
@@ -95,7 +94,7 @@
}; };
systemd.services.dae.after = [ "sops-nix.service" ]; systemd.services.dae.after = [ "sops-nix.service" ];
sops.secrets.mihomo = { sops.secrets.mihomo = {
sopsFile = sopsRoot + /mihomo.yaml; sopsFile = secrets.mihomo;
format = "yaml"; format = "yaml";
key = ""; key = "";
}; };
@@ -107,7 +106,7 @@
}; };
sops.secrets.et-imxyy-nix = { sops.secrets.et-imxyy-nix = {
sopsFile = sopsRoot + /et-imxyy-nix.toml; sopsFile = secrets.et-imxyy-nix;
format = "binary"; format = "binary";
}; };
environment.systemPackages = [ pkgs.easytier ]; environment.systemPackages = [ pkgs.easytier ];

View File

@@ -3,7 +3,7 @@
pkgs, pkgs,
config, config,
username, username,
sopsRoot, secrets,
... ...
}: }:
let let
@@ -225,7 +225,7 @@ in
]; ];
sops.secrets.imxyy-nix-rclone = { sops.secrets.imxyy-nix-rclone = {
sopsFile = sopsRoot + /imxyy-nix-rclone.conf; sopsFile = secrets.imxyy-nix-rclone;
format = "binary"; format = "binary";
}; };
fileSystems = { fileSystems = {

View File

@@ -185,7 +185,14 @@
outputs outputs
hostname hostname
; ;
sopsRoot = ./secrets; secrets =
with lib.haumea;
load {
src = ./secrets;
loader = [
(matchers.always loaders.path)
];
};
} }
// vars; // vars;
modules = modules =

View File

@@ -4,7 +4,7 @@
pkgs, pkgs,
username, username,
userdesc, userdesc,
sopsRoot, secrets,
... ...
}: }:
lib.my.makeSwitch { lib.my.makeSwitch {
@@ -16,7 +16,7 @@ lib.my.makeSwitch {
programs.zsh.enable = true; programs.zsh.enable = true;
sops.secrets.imxyy-nix-hashed-password = { sops.secrets.imxyy-nix-hashed-password = {
sopsFile = sopsRoot + /imxyy-nix-hashed-password.txt; sopsFile = secrets.imxyy-nix-hashed-password;
format = "binary"; format = "binary";
neededForUsers = true; neededForUsers = true;
}; };