updates for soteria host

This commit is contained in:
John Lancaster
2026-07-05 20:05:02 -05:00
parent bfbdbae99b
commit 9f1fed071d
5 changed files with 86 additions and 76 deletions
+32 -26
View File
@@ -3,17 +3,22 @@
let
username = "john";
hostname = "soteria";
ipv4 = "192.168.1.233";
ipv6 = "fded:fb16:653e:25da:be24:11ff:fe54:aa39";
names = [ "${hostname}.john-stream.com" ipv4 ipv6 ];
in
{
flake.nixosConfigurations."${hostname}" = inputs.nixpkgs.lib.nixosSystem {
modules = with inputs.self.modules; [
nixos.lxc
nixos.mysops
nixos."${username}"
nixos.ssh-certs
nixos.login-text
inputs.home-manager.nixosModules.home-manager
nixos."${username}"
nixos.ssh-new
# nixos.mtls
nixos.mysops
# nixos.ssh-certs
nixos.docker
nixos.mtls
nixos.step-client
nixos.forgejo
nixos.restic-server
@@ -38,12 +43,7 @@ in
mtls = {
enable = true;
subject = hostname;
san = [
"${hostname}.john-stream.com"
# "192.168.1.142"
"forgejo.john-stream.com"
"192.168.1.244"
];
san = names;
lifetime = "12h";
renew.onCalendar = "*:3/15";
renew.reloadUnits = [ "forgejo.service" "restic-rest-server.service" ];
@@ -70,18 +70,24 @@ in
loginText.extraServiceStatus = {
Docker = "docker";
"mTLS Renewal" = "mtls-renew.timer";
Forgejo = "forgejo.service";
"Forgejo" = "forgejo.service";
"Forgejo Backup" = "forgejo-dump.timer";
"Restic REST Server" = "restic-rest-server.service";
};
ssh-certs.hostname = hostname;
ssh-new.certificates = {
provisioner = "admin";
host = {
enable = true;
extraPrincipals = names;
autoRenew = true;
};
user.enable = true;
};
# This provides the secrets at install time
sops.defaultSopsFile = ./secrets.yaml;
# programs.zsh.enable = true;
home-manager.users."${username}".imports = [ inputs.self.modules.homeManager.soteria ];
environment.systemPackages = [
@@ -93,10 +99,10 @@ in
};
flake.modules.homeManager.soteria = { config, pkgs, lib, ... }: {
imports = [
inputs.self.modules.homeManager.rebuild
inputs.self.modules.homeManager.mysops
inputs.self.modules.homeManager.step-client
imports = with inputs.self.modules.homeManager; [
rebuild
mysops
step-client
({ config, pkgs, lib, ... }: {
homeManagerFlakeDir = "${config.xdg.configHome}/home-manager";
docker.enable = true;
@@ -107,12 +113,12 @@ in
];
};
flake.homeConfigurations.soteria = withSystem "x86_64-linux" (ctx@{ config, inputs', ...}:
inputs.home-manager.lib.homeManagerConfiguration {
pkgs = inputs'.nixpkgs.legacyPackages;
modules = [
inputs.self.modules.homeManager."${username}"
inputs.self.modules.homeManager.soteria
];
});
# flake.homeConfigurations.soteria = withSystem "x86_64-linux" (ctx@{ config, inputs', ...}:
# inputs.home-manager.lib.homeManagerConfiguration {
# pkgs = inputs'.nixpkgs.legacyPackages;
# modules = [
# inputs.self.modules.homeManager."${username}"
# inputs.self.modules.homeManager.soteria
# ];
# });
}