X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=modules%2Fprivate%2Fsystem%2Feldiron.nix;h=2c339a52888aac150ce1f9908dfae60ad3e3e196;hb=4c4652aabf2cb3ac8b40f2856eca07a1df9c27e0;hp=fdc3692f0cc404376b20fe9419a86abaa864f14d;hpb=c081a03a97780afd845e017f279e0f1e96a86c8a;p=perso%2FImmae%2FConfig%2FNix.git diff --git a/modules/private/system/eldiron.nix b/modules/private/system/eldiron.nix index fdc3692..2c339a5 100644 --- a/modules/private/system/eldiron.nix +++ b/modules/private/system/eldiron.nix @@ -1,4 +1,3 @@ -{ privateFiles }: { config, pkgs, lib, ... }: { deployment = { @@ -6,6 +5,8 @@ targetHost = config.hostEnv.ips.main.ip4; substituteOnDestination = true; }; + # ssh-keyscan eldiron | nix-shell -p ssh-to-age --run ssh-to-age + secrets.ageKeys = [ "age1dxr5lhvtnjssfaqpnf6qx80h8gfwkxg3tdf35m6n9wljmk7wadfs3kmahj" ]; boot = { kernelModules = [ "kvm-intel" ]; blacklistedKernelModules = [ "nvidiafb" ]; @@ -28,7 +29,7 @@ ''; nix.maxJobs = 8; powerManagement.cpuFreqGovernor = "powersave"; - myEnv = import "${privateFiles}/environment.nix" // { inherit privateFiles; }; + myEnv = import ../../../nixops/secrets/environment.nix; fileSystems = { # pools: @@ -111,6 +112,7 @@ myServices.dns.enable = true; myServices.certificates.enable = true; myServices.websites.enable = true; + myServices.gemini.enable = true; myServices.mail.enable = true; myServices.ejabberd.enable = true; myServices.vpn.enable = true; @@ -123,10 +125,9 @@ services.netdata.config.health."enabled" = "no"; services.netdata.config.web.mode = "none"; users.users."${config.services.netdata.user}".extraGroups = [ "keys" ]; - environment.etc."netdata/stream.conf".source = "/var/secrets/netdata-stream.conf"; - secrets.keys = [ - { - dest = "netdata-stream.conf"; + environment.etc."netdata/stream.conf".source = config.secrets.fullPaths."netdata-stream.conf"; + secrets.keys = { + "netdata-stream.conf" = { user = config.services.netdata.user; group = config.services.netdata.group; permissions = "0400"; @@ -136,15 +137,14 @@ destination = ${config.myEnv.monitoring.netdata_aggregator} api key = ${config.myEnv.monitoring.netdata_keys.eldiron} ''; - } - { - dest = "zrepl_backup/identity"; + }; + "zrepl_backup/identity" = { user = "root"; group = "root"; permissions = "0400"; text = config.myEnv.zrepl_backup.ssh_key.private; - } - ]; + }; + }; programs.ssh.knownHosts.dilion = { hostNames = ["dilion.immae.eu"]; publicKey = let