diff options
author | Gabriel Ebner <gebner@gebner.org> | 2020-11-29 19:26:26 +0100 |
---|---|---|
committer | Gabriel Ebner <gebner@gebner.org> | 2020-12-02 22:11:09 +0100 |
commit | 906d68cf134de8d4995fac334e32c55156cad394 (patch) | |
tree | 3f888f64ac17c7b031103def063c728997de1145 /nixos/modules | |
parent | b28f2f73863ea8c92c8a8a3a97c99968cbfc9d7d (diff) |
nixos/pipewire: enable volume control via alsa
Diffstat (limited to 'nixos/modules')
-rw-r--r-- | nixos/modules/services/desktops/pipewire.nix | 32 |
1 files changed, 17 insertions, 15 deletions
diff --git a/nixos/modules/services/desktops/pipewire.nix b/nixos/modules/services/desktops/pipewire.nix index 7ba04a36b8d3..0ef988d9e69f 100644 --- a/nixos/modules/services/desktops/pipewire.nix +++ b/nixos/modules/services/desktops/pipewire.nix @@ -117,24 +117,26 @@ in { services.udev.packages = [ cfg.package ]; # If any paths are updated here they must also be updated in the package test. - sound.enable = mkIf cfg.alsa.enable true; - sound.extraConfig = mkIf cfg.alsa.enable '' - pcm_type.pipewire { - libs.native = ${cfg.package.lib}/lib/alsa-lib/libasound_module_pcm_pipewire.so ; - ${optionalString enable32BitAlsaPlugins - "libs.32Bit = ${pkgs.pkgsi686Linux.pipewire.lib}/lib/alsa-lib/libasound_module_pcm_pipewire.so ;"} - } - pcm.!default { - @func getenv - vars [ PCM ] - default "plug:pipewire" - playback_mode "-1" - capture_mode "-1" - } - ''; + environment.etc."alsa/conf.d/49-pipewire-modules.conf" = mkIf cfg.alsa.enable { + text = '' + pcm_type.pipewire { + libs.native = ${cfg.package.lib}/lib/alsa-lib/libasound_module_pcm_pipewire.so ; + ${optionalString enable32BitAlsaPlugins + "libs.32Bit = ${pkgs.pkgsi686Linux.pipewire.lib}/lib/alsa-lib/libasound_module_pcm_pipewire.so ;"} + } + ctl_type.pipewire { + libs.native = ${cfg.package.lib}/lib/alsa-lib/libasound_module_ctl_pipewire.so ; + ${optionalString enable32BitAlsaPlugins + "libs.32Bit = ${pkgs.pkgsi686Linux.pipewire.lib}/lib/alsa-lib/libasound_module_ctl_pipewire.so ;"} + } + ''; + }; environment.etc."alsa/conf.d/50-pipewire.conf" = mkIf cfg.alsa.enable { source = "${cfg.package}/share/alsa/alsa.conf.d/50-pipewire.conf"; }; + environment.etc."alsa/conf.d/99-pipewire-default.conf" = mkIf cfg.alsa.enable { + source = "${cfg.package}/share/alsa/alsa.conf.d/99-pipewire-default.conf"; + }; environment.sessionVariables.LD_LIBRARY_PATH = lib.optional cfg.jack.enable "/run/current-system/sw/lib/pipewire"; |