blob: b32af6207e41b263f19a1d4d5c6d5a394efc1c0b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
{ config, ... }:
let
internal-ip = "192.168.111.11";
port = 4533;
in
{
services.navidrome.enable = true;
services.navidrome.settings = {
MusicFolder = "/media/cryptX/music/kinder";
Address = "0.0.0.0";
};
systemd.services.navidrome.serviceConfig.RequiresMountFor = [ "/media/cryptX" ];
state = [ "/var/lib/navidrome" ];
# networking.firewall.allowedTCPPorts = [ 4040 ];
# state = [ config.services.airsonic.home ];
services.nginx.virtualHosts."navidrome" = {
serverAliases = [
"navidrome.lan"
"music" "music.lan"
"musik" "musik.lan"
"music.omo.r"
"music.makefu.r" "music.makefu"
];
locations."/".proxyPass = "http://localhost:${toString port}";
locations."/".proxyWebsockets = true;
};
networking.firewall.allowedTCPPorts = [ port ];
# also configure dlna
services.minidlna.enable = true;
services.minidlna.settings = {
inotify = "yes";
friendly_name = "omo";
media_dir = [ "A,/media/cryptX/music" ];
};
}
|