mirror of
https://github.com/Jokiller230/puzzlevision.git
synced 2025-09-09 20:30:05 +00:00
71 lines
1.6 KiB
Nix
71 lines
1.6 KiB
Nix
{ pkgs, ... }:
|
|
{
|
|
imports = [
|
|
./hardware.nix
|
|
];
|
|
|
|
# Setup Sops
|
|
sops.age.sshKeyPaths = [ "/etc/ssh/ssh_host_ed25519_key" ];
|
|
sops.age.keyFile = "/var/lib/sops-nix/key.txt";
|
|
sops.age.generateKey = true;
|
|
|
|
puzzlevision = {
|
|
users.cyn = {
|
|
enable = true;
|
|
hashedPassword = "$6$mvK9bT756Aok54Vt$vBRnT66Vb3HL0Y5rEMJlHvKkvzVQ.KUciInTmW3FCBFT00IuFMpz3q9RhXPLTLMRPho65bTg9hMnFPb84I774.";
|
|
extraGroups = [
|
|
"wheel"
|
|
"docker"
|
|
];
|
|
};
|
|
|
|
archetypes.server.enable = true;
|
|
|
|
services = {
|
|
traefik = {
|
|
enable = true;
|
|
sopsFile = ./secrets/traefik.env;
|
|
sopsFormat = "dotenv";
|
|
};
|
|
|
|
duckdns = {
|
|
enable = true;
|
|
sopsFile = ./secrets/duckdns.env;
|
|
sopsFormat = "dotenv";
|
|
};
|
|
|
|
vaultwarden = {
|
|
enable = true;
|
|
sopsFile = ./secrets/vaultwarden.env;
|
|
sopsFormat = "dotenv";
|
|
};
|
|
|
|
homepage = {
|
|
enable = true;
|
|
configDir = ./resources/homepage-config;
|
|
};
|
|
|
|
atticd = {
|
|
enable = true;
|
|
sopsFile = ./secrets/atticd.env;
|
|
sopsFormat = "dotenv";
|
|
};
|
|
};
|
|
};
|
|
|
|
services.cron = {
|
|
enable = true;
|
|
systemCronJobs = [
|
|
"*/5 * * * * cyn docker exec -u www-data nextcloud-nextcloud-1 php /var/www/html/cron.php"
|
|
"*/15 * * * * cyn docker exec -u www-data nextcloud-nextcloud-1 php /var/www/nextcloud/occ preview:pre-generate"
|
|
"* 3 * * * cyn cd /home/cyn/docker/compose/satisfactory && docker compose up -d --force-recreate"
|
|
];
|
|
};
|
|
|
|
environment.systemPackages = with pkgs; [
|
|
nano
|
|
];
|
|
|
|
networking.hostName = "absolutesolver";
|
|
system.stateVersion = "25.05";
|
|
}
|