50 lines
1 KiB
Nix
50 lines
1 KiB
Nix
{
|
|
pkgs,
|
|
config,
|
|
lib,
|
|
...
|
|
}:
|
|
let
|
|
cfg = config.xyno.desktop.audio;
|
|
in
|
|
{
|
|
options.xyno.desktop.audio.enable = lib.mkEnableOption "enable pipewire and stuff";
|
|
config = lib.mkIf cfg.enable {
|
|
services.pipewire = {
|
|
enable = true;
|
|
# raopOpenFirewall = true; # airplay
|
|
pulse.enable = true;
|
|
extraConfig.pipewire = {
|
|
"9-clock-allow-higher" = {
|
|
"context.properties" = {
|
|
"default.clock.allowed-rates" = [
|
|
"44100"
|
|
"48000"
|
|
"96000"
|
|
"192000"
|
|
];
|
|
};
|
|
};
|
|
# "10-raop-discover" = {
|
|
# "context.modules" = [
|
|
# {
|
|
# name = "libpipewire-module-raop-discover";
|
|
# args = { };
|
|
# }
|
|
# ];
|
|
# };
|
|
};
|
|
extraConfig.pipewire-pulse = {
|
|
"10-zeroconf" = {
|
|
"pulse.cmd" = [
|
|
{
|
|
cmd = "load-module";
|
|
args = "module-zeroconf-discover";
|
|
}
|
|
];
|
|
};
|
|
};
|
|
};
|
|
|
|
};
|
|
}
|