From 3b1ac4f78d21802073c82df39ca7080ae70a67a9 Mon Sep 17 00:00:00 2001 From: Franck Cuny Date: Tue, 8 Feb 2022 19:58:38 -0800 Subject: desktop: install sound and xserver only when asked --- modules/desktop/sound.nix | 35 +++++++++++++++++++++-------------- 1 file changed, 21 insertions(+), 14 deletions(-) (limited to 'modules/desktop/sound.nix') diff --git a/modules/desktop/sound.nix b/modules/desktop/sound.nix index 95c7c75..11c3fc2 100644 --- a/modules/desktop/sound.nix +++ b/modules/desktop/sound.nix @@ -1,20 +1,27 @@ {pkgs, config, lib, ...}: +with lib; -{ - sound.enable = true; +let + xorg = (elem "xorg" config.sys.graphics.desktopProtocols); + wayland = (elem "wayland" config.sys.graphics.desktopProtocols); + desktopMode = xorg || wayland; +in { + config= mkIf desktopMode { + sound.enable = true; - environment.systemPackages = with pkgs; [ - # We install it to get access to pactl. It isn't enabled or run as a service. - pulseaudio - ]; + environment.systemPackages = with pkgs; [ + # We install it to get access to pactl. It isn't enabled or run as a service. + pulseaudio + ]; - services.pipewire = { - enable = true; - # Compatibility shims, adjust according to your needs - alsa.enable = true; - alsa.support32Bit = true; - pulse.enable = true; - jack.enable = true; + services.pipewire = { + enable = true; + # Compatibility shims, adjust according to your needs + alsa.enable = true; + alsa.support32Bit = true; + pulse.enable = true; + jack.enable = true; + }; + hardware.pulseaudio.enable = false; }; - hardware.pulseaudio.enable = false; } -- cgit v1.2.3