nix/modules/audio.nix

35 lines
1.1 KiB
Nix

{ pkgs, config, lib, ... }: lib.mkIf config.bchmnn.audio.enable {
services.pipewire = lib.mkIf (!builtins.elem "gnome" config.bchmnn.gui.flavour) {
enable = true;
audio.enable = true;
pulse.enable = true;
alsa.enable = true;
alsa.support32Bit = true;
jack.enable = true;
wireplumber.enable = true;
extraConfig.pipewire = lib.mkIf config.bchmnn.audio.pipewire-wine-fix.enable {
"90-wine-config" = {
"context.properties" = {
# "default.clock.rate" = 48000;
"default.clock.allowed-rates" = [ 44100 48000 ];
# "default.clock.quantum" = 2048;
# "default.clock.min-quantum" = 1024;
};
};
};
extraConfig.pipewire-pulse = lib.mkIf config.bchmnn.audio.pipewire-wine-fix.enable {
"90-wine-config" = {
"pulse.properties" = {
"pulse.min.req" = "1024/48000";
# "pulse.min.frag" = "1024/48000";
# "pulse.min.quantum" = "1024/48000";
};
};
};
};
environment.systemPackages = with pkgs; [
alsa-utils
pulseaudio
];
}