Merge pull request #12811 from abbradar/pulseaudio-device-manager

Load PulseAudio's module-device-manager only for KDE
This commit is contained in:
Nikolay Amiantov 2016-02-06 22:10:40 +03:00
commit b16b5bcaa3
3 changed files with 15 additions and 4 deletions

View File

@ -108,6 +108,12 @@ in
sed -e '/nix\\store\|nix\/store/ d' -i $HOME/.config/Trolltech.conf sed -e '/nix\\store\|nix\/store/ d' -i $HOME/.config/Trolltech.conf
fi fi
# Load PulseAudio module for routing support.
# See http://colin.guthr.ie/2009/10/so-how-does-the-kde-pulseaudio-support-work-anyway/
${optionalString config.hardware.pulseaudio.enable ''
${config.hardware.pulseaudio.package}/bin/pactl load-module module-device-manager "do_routing=1"
''}
# Start KDE. # Start KDE.
exec ${kde_workspace}/bin/startkde exec ${kde_workspace}/bin/startkde
''; '';

View File

@ -55,7 +55,15 @@ in
services.xserver.desktopManager.session = singleton { services.xserver.desktopManager.session = singleton {
name = "kde5"; name = "kde5";
bgSupport = true; bgSupport = true;
start = ''exec ${kde5.plasma-workspace}/bin/startkde;''; start = ''
# Load PulseAudio module for routing support.
# See http://colin.guthr.ie/2009/10/so-how-does-the-kde-pulseaudio-support-work-anyway/
${optionalString config.hardware.pulseaudio.enable ''
${config.hardware.pulseaudio.package}/bin/pactl load-module module-device-manager "do_routing=1"
''}
exec ${kde5.plasma-workspace}/bin/startkde
'';
}; };
security.setuidOwners = singleton { security.setuidOwners = singleton {

View File

@ -90,9 +90,6 @@ let
# Publish access credentials in the root window. # Publish access credentials in the root window.
${config.hardware.pulseaudio.package}/bin/pactl load-module module-x11-publish "display=$DISPLAY" ${config.hardware.pulseaudio.package}/bin/pactl load-module module-x11-publish "display=$DISPLAY"
# Keep track of devices. Mostly useful for Phonon/KDE.
${config.hardware.pulseaudio.package}/bin/pactl load-module module-device-manager "do_routing=1"
''} ''}
# Tell systemd about our $DISPLAY. This is needed by the # Tell systemd about our $DISPLAY. This is needed by the