fix(sunken-ship): add audioconvert to uxplay pipeline — fixes ALAC format error 🎵
feat(home): add uhk-agent for UHK keyboard configuration 🎹
This commit is contained in:
parent
1c7794e904
commit
4bccb6e6a8
2 changed files with 16 additions and 3 deletions
|
|
@ -217,6 +217,7 @@
|
||||||
discord
|
discord
|
||||||
mapscii
|
mapscii
|
||||||
mpv
|
mpv
|
||||||
|
uhk-agent # UHK keyboard configuration GUI + CLI
|
||||||
]);
|
]);
|
||||||
|
|
||||||
# First HM version for this user config; bump only if you understand the migration notes.
|
# First HM version for this user config; bump only if you understand the migration notes.
|
||||||
|
|
|
||||||
|
|
@ -73,12 +73,24 @@ in
|
||||||
publish = { enable = true; userServices = true; };
|
publish = { enable = true; userServices = true; };
|
||||||
};
|
};
|
||||||
|
|
||||||
# Open firewall for AirPlay (mDNS + UxPlay default ports).
|
# Open firewall for AirPlay (mDNS + UxPlay default ports) + Navidrome.
|
||||||
networking.firewall = {
|
networking.firewall = {
|
||||||
allowedTCPPorts = [ 7000 7001 7100 ];
|
allowedTCPPorts = [ 7000 7001 7100 4533 ];
|
||||||
allowedUDPPorts = [ 5353 6000 6001 7011 ];
|
allowedUDPPorts = [ 5353 6000 6001 7011 ];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# Navidrome — self-hosted music streaming server (Subsonic API).
|
||||||
|
# Music library: /home/danny/music
|
||||||
|
# Web UI + Substreamer client on port 4533.
|
||||||
|
services.navidrome = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
Address = "0.0.0.0";
|
||||||
|
Port = 4533;
|
||||||
|
MusicFolder = "/home/danny/music";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
# UxPlay AirPlay receiver — audio-only, outputs directly to Scarlett Solo via ALSA.
|
# UxPlay AirPlay receiver — audio-only, outputs directly to Scarlett Solo via ALSA.
|
||||||
# Runs as a system service (no PipeWire needed on a headless server).
|
# Runs as a system service (no PipeWire needed on a headless server).
|
||||||
systemd.services.uxplay = {
|
systemd.services.uxplay = {
|
||||||
|
|
@ -87,7 +99,7 @@ in
|
||||||
wants = [ "network-online.target" "avahi-daemon.service" ];
|
wants = [ "network-online.target" "avahi-daemon.service" ];
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
ExecStart = ''${pkgs.uxplay}/bin/uxplay -n sunken-ship -p -vs 0 -as "alsasink device=plughw:USB,0 buffer-time=200000"'';
|
ExecStart = ''${pkgs.uxplay}/bin/uxplay -n sunken-ship -p -vs 0 -as "audioconvert ! audioresample ! alsasink device=plughw:USB,0 buffer-time=200000"'';
|
||||||
Restart = "on-failure";
|
Restart = "on-failure";
|
||||||
RestartSec = 5;
|
RestartSec = 5;
|
||||||
User = "danny";
|
User = "danny";
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue