20 lines
497 B
Nix
20 lines
497 B
Nix
{ config, lib, ... }:
|
|
# PipeWire as the desktop audio server.
|
|
let
|
|
cfg = config.modules.desktop.utilities.audio; # NOLINT(let_order)
|
|
in
|
|
{
|
|
options.modules.desktop.utilities.audio.enable = lib.mkEnableOption "the PipeWire audio server";
|
|
|
|
config = lib.mkIf cfg.enable {
|
|
# Realtime scheduling for the audio threads, so playback survives load.
|
|
security.rtkit.enable = true;
|
|
|
|
services.pipewire = {
|
|
enable = true;
|
|
alsa.enable = true;
|
|
pulse.enable = true;
|
|
};
|
|
};
|
|
}
|