{ pkgs, ... }: { hardware.pulseaudio.enable = false; services.pipewire = { enable = true; alsa.enable = true; alsa.support32Bit = true; pulse.enable = true; wireplumber.enable = true; }; security.rtkit.enable = true; #environment.etc = let # json = pkgs.formats.json {}; # rate = "48000"; # quantum = "256"; #in { # "pipewire/pipewire.conf.d/92-low-latency.conf".text = '' # context.properties = { # default.clock.rate = ${rate} # default.clock.quantum = ${quantum} # default.clock.min-quantum = ${quantum} # default.clock.max-quantum = ${quantum} # } # ''; # "pipewire/pipewire-pulse.d/92-low-latency.conf".source = json.generate "92-low-latency.conf" { # context.modules = [ # { # name = "libpipewire-module-protocol-pulse"; # args.pulse = { # min.req = "${quantum}/${rate}"; # default.req = "${quantum}/${rate}"; # max.req = "${quantum}/${rate}"; # min.quantum = "${quantum}/${rate}"; # max.quantum = "${quantum}/${rate}"; # }; # } # ]; # stream.properties = { # node.latency = "${quantum}/${rate}"; # resample.quality = 1; # }; # }; #}; }