Files
nix/hosts/jupiter/users/storm/configs/console/podman/default.nix
Nikolaos Karaolidis 15bf209e8c Refactor secrets
Signed-off-by: Nikolaos Karaolidis <nick@karaolidis.com>
2025-07-24 11:01:47 +01:00

60 lines
1.6 KiB
Nix

{ user, home }:
{
config,
pkgs,
inputs,
...
}:
let
hmConfig = config.home-manager.users.${user};
in
{
imports = [
(import ./authelia { inherit user home; })
(import ./gitea { inherit user home; })
(import ./grafana { inherit user home; })
(import ./littlelink { inherit user home; })
(import ./lore { inherit user home; })
(import ./media { inherit user home; })
(import ./nextcloud { inherit user home; })
(import ./ntfy { inherit user home; })
(import ./outline { inherit user home; })
(import ./prometheus { inherit user home; })
(import ./shlink { inherit user home; })
(import ./sish { inherit user home; })
(import ./traefik { inherit user home; })
(import ./vaultwarden { inherit user home; })
(import ./whoami { inherit user home; })
];
boot.kernel.sysctl = {
"net.ipv4.ip_unprivileged_port_start" = 0;
"vm.overcommit_memory" = 1;
};
home-manager.users.${user} = {
virtualisation.quadlet.autoUpdate.enable = true;
systemd.user.tmpfiles.rules = [
"d /mnt/storage/private/storm/containers/storage/volumes 700 storm storm"
];
sops = {
secrets."registry/docker.io".sopsFile = "${inputs.secrets}/personal/secrets.yaml";
templates.containers-auth = {
content = builtins.readFile (
(pkgs.formats.json { }).generate "auth.json" {
auths = {
"docker.io" = {
auth = hmConfig.sops.placeholder."registry/docker.io";
};
};
}
);
path = "${home}/.config/containers/auth.json";
};
};
};
}