Feature: Init stack.nix for navidrome

This commit is contained in:
Joey Hafner 2025-02-01 00:58:27 -08:00
parent 979fafb0ec
commit d355e7a977
Signed by: Jafner
GPG Key ID: 6D9A24EF2F389E55
4 changed files with 25 additions and 11 deletions

View File

@ -1,2 +0,0 @@
DOCKER_DATA=/home/admin/data/navidrome
MUSIC_DIR=/mnt/nas/music

View File

@ -6,12 +6,14 @@ services:
user: 1001:1001 user: 1001:1001
networks: networks:
- web - web
env_file: environment:
- path: ./navidrome.env ND_SCANSCHEDULE: 1h
required: true ND_LOGLEVEL: info
ND_SESSIONTIMEOUT: 24h
ND_BASEURL: "https://music.jafner.net"
volumes: volumes:
- "${MUSIC_DIR}:/music:ro" - "$MUSIC_DIR:/music:ro"
- "${DOCKER_DATA}:/data" - "$APPDATA:/data"
labels: labels:
- traefik.http.routers.navidrome.rule=Host(`music.jafner.net`) - traefik.http.routers.navidrome.rule=Host(`music.jafner.net`)
- traefik.http.routers.navidrome.tls.certresolver=lets-encrypt - traefik.http.routers.navidrome.tls.certresolver=lets-encrypt

View File

@ -1,4 +0,0 @@
ND_SCANSCHEDULE: 1h
ND_LOGLEVEL: info
ND_SESSIONTIMEOUT: 24h
ND_BASEURL: "https://music.jafner.net"

View File

@ -0,0 +1,18 @@
{ sys, ... }: let stack = "navidrome"; in {
home-manager.users."${sys.username}".home.file = {
"${stack}" = {
enable = true;
recursive = true;
source = ./.;
target = "stacks/${stack}/";
};
"${stack}/.env" = {
enable = true;
text = ''
APPDATA=${sys.dataDirs.appdata}/${stack}
MUSIC_DIR=${sys.dataDirs.library.music}
'';
target = "stacks/${stack}/.env";
};
};
}