Compare commits

...

2 Commits

Author SHA1 Message Date
1d0b3a0367 [audio] Setup squeezelite 2025-02-16 18:41:50 -08:00
50f9defdd5 [wixos] Add audio role 2025-02-16 18:40:07 -08:00
2 changed files with 33 additions and 12 deletions

View File

@@ -12,6 +12,7 @@
];
roles = {
audio.enable = true;
desktop = {
enable = true;
wayland = true;

View File

@@ -8,9 +8,36 @@ in
{
options.roles.audio = {
enable = mkEnableOption "Enable the audio role";
pulseAudio = mkOption { type = types.bool; default = false; description = "Use PulseAudio exclusively instead of Pipewire"; };
};
config = mkIf cfg.enable
config = mkIf cfg.enable (mkMerge [
(mkIf cfg.pulseAudio {
services.pipewire.enable = false;
services.pulseaudio = {
enable = true;
package = pkgs.pulseaudioFull;
systemWide = true;
extraConfig = ''
load-module module-combine-sink
load-module module-switch-on-connect
'';
};
nixpkgs.config.pulseaudio = true;
})
(mkIf (!cfg.pulseAudio) {
services.pipewire = {
enable = true;
systemWide = true;
audio.enable = true;
pulse.enable = true;
alsa = {
enable = true;
support32Bit = true;
};
jack.enable = true;
};
})
{
environment.systemPackages = with pkgs; [
paprefs
@@ -18,17 +45,10 @@ in
pulsemixer
];
services.pipewire = {
services.squeezelite = {
enable = true;
pulse.enable = true;
pulseAudio = true;
};
services.pulseaudio = {
package = pkgs.pulseaudioFull;
extraConfig = ''
load-module module-combine-sink
load-module module-switch-on-connect
'';
};
};
}
]);
}