# roles/thin-client/session/audio.nix # # PipeWire audio stack. Required by RustDesk (capture/playback), OBS, # Chromium (Office Web, Teams Web). Done here rather than in apps/ because # it's session infrastructure. {config, lib, pkgs, ...}: let inherit (lib) mkIf; cfg = config.az.tc; in { config = mkIf cfg.enable { services.pipewire = { enable = true; alsa.enable = true; alsa.support32Bit = true; pulse.enable = true; jack.enable = true; wireplumber.enable = true; }; environment.systemPackages = with pkgs; [ pulseaudioFull # pactl/pavucontrol for support cases pavucontrol ]; }; }