160 lines
3.9 KiB
Nix
Executable File
160 lines
3.9 KiB
Nix
Executable File
{ namespace, ... }:
|
|
{
|
|
${namespace} = {
|
|
services = {
|
|
# Existing properly namespaced services
|
|
immich.enable = true;
|
|
jellyfin.enable = true;
|
|
jellyseerr.enable = true;
|
|
lubelogger.enable = true;
|
|
nextcloud.enable = true;
|
|
ollama.enable = true;
|
|
paperless.enable = true;
|
|
traefik.enable = true;
|
|
wyoming.enable = true;
|
|
|
|
# Newly migrated services
|
|
actual = {
|
|
enable = true;
|
|
port = 3333;
|
|
localAddress = "10.0.3.18";
|
|
dataDir = "/media/nas/main/nix-app-data/actual";
|
|
reverseProxy = {
|
|
enable = true;
|
|
host = "actual.mjallen.dev";
|
|
middlewares = [
|
|
"crowdsec"
|
|
"whitelist-geoblock"
|
|
];
|
|
};
|
|
};
|
|
|
|
arrs = {
|
|
enable = true;
|
|
localAddress = "10.0.1.51";
|
|
downloadsDir = "/media/nas/main/ssd_app_data/downloads";
|
|
incompleteDownloadsDir = "/media/nas/main/ssd_app_data/downloads-incomplete";
|
|
moviesDir = "/media/nas/main/movies";
|
|
tvDir = "/media/nas/main/tv";
|
|
isosDir = "/media/nas/main/isos";
|
|
radarr = {
|
|
enable = true;
|
|
port = 7878;
|
|
dataDir = "/media/nas/main/nix-app-data/radarr";
|
|
};
|
|
sonarr = {
|
|
enable = true;
|
|
port = 8989;
|
|
dataDir = "/media/nas/main/nix-app-data/sonarr";
|
|
};
|
|
sabnzbd = {
|
|
enable = true;
|
|
port = 8280;
|
|
dataDir = "/media/nas/main/nix-app-data/sabnzbd";
|
|
};
|
|
deluge = {
|
|
enable = true;
|
|
port = 8112;
|
|
};
|
|
jackett = {
|
|
enable = true;
|
|
port = 9117;
|
|
dataDir = "/media/nas/main/nix-app-data/jackett";
|
|
};
|
|
};
|
|
|
|
crowdsec = {
|
|
enable = true;
|
|
port = 9898;
|
|
apiAddress = "10.0.1.3";
|
|
apiKey = "1daH89qmJ41r2Lpd9hvDw4sxtOAtBzaj3aKFOFqE";
|
|
dataDir = "/media/nas/main/nix-app-data/crowdsec";
|
|
};
|
|
|
|
gitea = {
|
|
enable = true;
|
|
httpPort = 3000;
|
|
sshPort = 2222;
|
|
localAddress = "10.0.4.18";
|
|
dataDir = "/media/nas/main/nix-app-data/gitea";
|
|
reverseProxy = {
|
|
enable = true;
|
|
host = "gitea.mjallen.dev";
|
|
middlewares = [
|
|
"crowdsec"
|
|
"whitelist-geoblock"
|
|
];
|
|
};
|
|
};
|
|
|
|
free-games-claimer.enable = true;
|
|
|
|
manyfold.enable = true;
|
|
|
|
orca-slicer = {
|
|
enable = true;
|
|
httpPort = "3100";
|
|
httpsPort = "3101";
|
|
};
|
|
|
|
tdarr.enable = true;
|
|
|
|
authentik = {
|
|
enable = true;
|
|
port = 9000;
|
|
environmentFile = "/run/secrets/jallen-nas/authentik-env";
|
|
};
|
|
|
|
attic = {
|
|
enable = true;
|
|
port = 9012;
|
|
listenAddress = "[::]";
|
|
environmentFile = "/run/secrets/jallen-nas/attic-key";
|
|
};
|
|
|
|
protonmail-bridge = {
|
|
enable = true;
|
|
smtpPort = 1025;
|
|
imapPort = 1143;
|
|
user = "admin";
|
|
};
|
|
|
|
netbootxyz = {
|
|
enable = true;
|
|
httpPort = 4000;
|
|
httpsPort = 4080;
|
|
dataDir = "/media/nas/main/nix-app-data/netbootxyz";
|
|
};
|
|
|
|
glances = {
|
|
enable = true;
|
|
port = 61208;
|
|
bindAddress = "0.0.0.0";
|
|
};
|
|
|
|
code-server = {
|
|
enable = true;
|
|
port = 4444;
|
|
user = "admin";
|
|
group = "jallen-nas";
|
|
host = "0.0.0.0";
|
|
auth = "none";
|
|
hashedPassword = "$y$j9T$EkPXmsmIMFFZ.WRrBYCxS1$P0kwo6e4.WM5DsqUcEqWC3MrZp5KfCjxffraMFZWu06";
|
|
extraEnvironment = {
|
|
PROXY_DOMAIN = "code.mjallen.dev";
|
|
};
|
|
};
|
|
|
|
restic = {
|
|
enable = true;
|
|
port = 8008;
|
|
dataDir = "/media/nas/main/backup/restic";
|
|
prometheus = true;
|
|
listenAddress = "0.0.0.0";
|
|
htpasswdFile = "/media/nas/main/backup/restic/.htpasswd";
|
|
extraFlags = [ "--no-auth" ];
|
|
};
|
|
};
|
|
};
|
|
}
|