diff --git a/homelab/stacks/navidrome/.env b/homelab/stacks/navidrome/.env deleted file mode 100644 index cf8a59ca..00000000 --- a/homelab/stacks/navidrome/.env +++ /dev/null @@ -1,2 +0,0 @@ -DOCKER_DATA=/home/admin/data/navidrome -MUSIC_DIR=/mnt/nas/music \ No newline at end of file diff --git a/homelab/stacks/navidrome/docker-compose.yml b/homelab/stacks/navidrome/docker-compose.yml index a8395232..6f83d78f 100644 --- a/homelab/stacks/navidrome/docker-compose.yml +++ b/homelab/stacks/navidrome/docker-compose.yml @@ -6,12 +6,14 @@ services: user: 1001:1001 networks: - web - env_file: - - path: ./navidrome.env - required: true + environment: + ND_SCANSCHEDULE: 1h + ND_LOGLEVEL: info + ND_SESSIONTIMEOUT: 24h + ND_BASEURL: "https://music.jafner.net" volumes: - - "${MUSIC_DIR}:/music:ro" - - "${DOCKER_DATA}:/data" + - "$MUSIC_DIR:/music:ro" + - "$APPDATA:/data" labels: - traefik.http.routers.navidrome.rule=Host(`music.jafner.net`) - traefik.http.routers.navidrome.tls.certresolver=lets-encrypt diff --git a/homelab/stacks/navidrome/navidrome.env b/homelab/stacks/navidrome/navidrome.env deleted file mode 100644 index b7f6a57b..00000000 --- a/homelab/stacks/navidrome/navidrome.env +++ /dev/null @@ -1,4 +0,0 @@ -ND_SCANSCHEDULE: 1h -ND_LOGLEVEL: info -ND_SESSIONTIMEOUT: 24h -ND_BASEURL: "https://music.jafner.net" diff --git a/homelab/stacks/navidrome/stack.nix b/homelab/stacks/navidrome/stack.nix new file mode 100644 index 00000000..d59ebe43 --- /dev/null +++ b/homelab/stacks/navidrome/stack.nix @@ -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"; + }; + }; +} \ No newline at end of file