mirror of
https://github.com/kmein/niveum
synced 2026-03-20 03:51:07 +01:00
feat(mpd): get music from nas. no need for syncthing anymore
This commit is contained in:
@@ -1,14 +1,12 @@
|
|||||||
{ config, ... }:
|
|
||||||
{
|
{
|
||||||
fileSystems."/media/fritz" = {
|
fileSystems."/media/fritz" = {
|
||||||
device = "//192.168.178.1/FRITZ.NAS";
|
device = "//192.168.178.1/FRITZ.NAS/Backup";
|
||||||
fsType = "cifs";
|
fsType = "cifs";
|
||||||
options = [
|
options = [
|
||||||
"username=ftpuser"
|
"username=ftpuser"
|
||||||
"password=ftppassword"
|
"password=ftppassword"
|
||||||
|
"guest"
|
||||||
"noauto"
|
"noauto"
|
||||||
"uid=${toString config.users.users.me.uid}"
|
|
||||||
"gid=${toString config.users.groups.users.gid}"
|
|
||||||
"workgroup=WORKGROUP"
|
"workgroup=WORKGROUP"
|
||||||
"rw"
|
"rw"
|
||||||
"noserverino" # ref https://askubuntu.com/a/1265165
|
"noserverino" # ref https://askubuntu.com/a/1265165
|
||||||
|
|||||||
2
secrets
2
secrets
Submodule secrets updated: 5df85ac31b...5405c6eb5f
@@ -18,6 +18,7 @@ in {
|
|||||||
./spotifyd.nix
|
./spotifyd.nix
|
||||||
# ../../configs/keyboard.nix
|
# ../../configs/keyboard.nix
|
||||||
../../configs/sound.nix
|
../../configs/sound.nix
|
||||||
|
../../configs/fritzbox.nix
|
||||||
../../configs/monitoring.nix
|
../../configs/monitoring.nix
|
||||||
../../configs/retiolum.nix
|
../../configs/retiolum.nix
|
||||||
../../configs/printing.nix
|
../../configs/printing.nix
|
||||||
|
|||||||
@@ -8,34 +8,12 @@
|
|||||||
inherit (import ../../lib) tmpfilesConfig;
|
inherit (import ../../lib) tmpfilesConfig;
|
||||||
|
|
||||||
mukkeMountPoint = "/mnt/mukke";
|
mukkeMountPoint = "/mnt/mukke";
|
||||||
|
fritzboxMountPoint = "/media/fritz";
|
||||||
|
|
||||||
streams = import ../../lib/streams.nix {
|
streams = import ../../lib/streams.nix {
|
||||||
di-fm-key = "%DI_FM_KEY%"; # TODO lib.strings.fileContents <secrets/di.fm/key>;
|
di-fm-key = "%DI_FM_KEY%"; # TODO lib.strings.fileContents <secrets/di.fm/key>;
|
||||||
};
|
};
|
||||||
multi-room-audio-port = 8000;
|
|
||||||
in {
|
in {
|
||||||
services.syncthing = let
|
|
||||||
mpd-directory = config.services.mpd.dataDir;
|
|
||||||
in {
|
|
||||||
enable = true;
|
|
||||||
user = config.services.mpd.user; # config.users.extraUsers.moodle.name;
|
|
||||||
openDefaultPorts = true;
|
|
||||||
configDir = "${mpd-directory}/.config/syncthing";
|
|
||||||
dataDir = "${mpd-directory}/.config/syncthing";
|
|
||||||
cert = config.age.secrets.syncthing-cert.path;
|
|
||||||
key = config.age.secrets.syncthing-key.path;
|
|
||||||
settings = {
|
|
||||||
devices = {
|
|
||||||
inherit ((import ../../lib).syncthing.devices) kabsa manakish heym;
|
|
||||||
};
|
|
||||||
folders."${config.services.mpd.musicDirectory}/sync" = {
|
|
||||||
devices = ["heym" "kabsa" "manakish"];
|
|
||||||
id = "music";
|
|
||||||
type = "receiveonly";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
users.users.${config.services.mpd.user}.extraGroups = ["pipewire" "audio"];
|
users.users.${config.services.mpd.user}.extraGroups = ["pipewire" "audio"];
|
||||||
|
|
||||||
services.mpd = {
|
services.mpd = {
|
||||||
@@ -74,6 +52,14 @@ in {
|
|||||||
path = "${config.services.mpd.musicDirectory}/mukke";
|
path = "${config.services.mpd.musicDirectory}/mukke";
|
||||||
argument = mukkeMountPoint;
|
argument = mukkeMountPoint;
|
||||||
})
|
})
|
||||||
|
(tmpfilesConfig {
|
||||||
|
type = "L+";
|
||||||
|
mode = "0644";
|
||||||
|
user = "mpd";
|
||||||
|
group = "mpd";
|
||||||
|
path = "${config.services.mpd.musicDirectory}/fritz";
|
||||||
|
argument = "${fritzboxMountPoint}";
|
||||||
|
})
|
||||||
];
|
];
|
||||||
|
|
||||||
environment.systemPackages = [pkgs.mpc_cli];
|
environment.systemPackages = [pkgs.mpc_cli];
|
||||||
@@ -148,8 +134,6 @@ in {
|
|||||||
group = "nginx";
|
group = "nginx";
|
||||||
mode = "400";
|
mode = "400";
|
||||||
};
|
};
|
||||||
syncthing-cert.file = ../../secrets/zaatar-syncthing-cert.age;
|
|
||||||
syncthing-key.file = ../../secrets/zaatar-syncthing-key.age;
|
|
||||||
di-fm-key.file = ../../secrets/di-fm-key.age;
|
di-fm-key.file = ../../secrets/di-fm-key.age;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user