diff options
author | Colin Guthrie <colin@mageia.org> | 2011-05-18 23:02:11 +0000 |
---|---|---|
committer | Colin Guthrie <colin@mageia.org> | 2011-05-18 23:02:11 +0000 |
commit | 0f2835a86fe8d8eb820db0544513c9bef8ac466e (patch) | |
tree | c78b3ef9c83d33025bfa4a1f8b34f3f585e562e6 | |
parent | 985fd0995bb2cefe30e3e829b33bfb44e54885f2 (diff) | |
download | drakx-0f2835a86fe8d8eb820db0544513c9bef8ac466e.tar drakx-0f2835a86fe8d8eb820db0544513c9bef8ac466e.tar.gz drakx-0f2835a86fe8d8eb820db0544513c9bef8ac466e.tar.bz2 drakx-0f2835a86fe8d8eb820db0544513c9bef8ac466e.tar.xz drakx-0f2835a86fe8d8eb820db0544513c9bef8ac466e.zip |
draksound: Do not write PA config files if they do not exist
-rw-r--r-- | perl-install/NEWS | 11 | ||||
-rw-r--r-- | perl-install/harddrake/sound.pm | 18 |
2 files changed, 25 insertions, 4 deletions
diff --git a/perl-install/NEWS b/perl-install/NEWS index ce4805f65..d842dad13 100644 --- a/perl-install/NEWS +++ b/perl-install/NEWS @@ -1,6 +1,11 @@ -- draksound: Remove the "Enable 5.1..." option. This is now done via card profiles - in native GUIs for GNOME and KDE (or pavucontrol) -- draksound: Remove the "Enable user switching..." option as it relies on HAL +- draksound + o Robustify the PulseAudio configs (don't try and write files if they + do not exists. Doing so previously would result in blank files that then + causes problems when installing PulseAudio as the "config" files are not + overwritten properly which can result in broken PA startup) + o Remove the "Enable 5.1..." option. This is now done via card profiles + in native GUIs for GNOME and KDE (or pavucontrol) + o Remove the "Enable user switching..." option as it relies on HAL which is deprecated. - Change scannerdrake to use skanlite instead of kooka - any.pm: s!/usr/share/mdk/faces/!/usr/share/mga/faces/! should fix (mga#1315) diff --git a/perl-install/harddrake/sound.pm b/perl-install/harddrake/sound.pm index d06dd708d..8b6efeb5c 100644 --- a/perl-install/harddrake/sound.pm +++ b/perl-install/harddrake/sound.pm @@ -190,6 +190,10 @@ sub set_pulseaudio { my ($val) = @_; my $alterative = '/etc/sound/profiles/' . ($val ? 'pulse' : 'alsa'); + if ( ! -d $alterative ) { + return; + } + common::symlinkf_update_alternatives('soundprofile', $alterative); # (cg) This config file will eventually be dropped, but it is still needed for now @@ -216,6 +220,11 @@ sub is_pulseaudio_glitchfree_enabled() { sub set_pulseaudio_glitchfree { my ($val) = @_; + + if ( ! -f $pa_defaultsconfig_file ) { + return; + } + substInFile { if ($val) { s/^(load-module\s+module-(udev|hal)-detect)\s+tsched=0/$1/; @@ -229,6 +238,11 @@ my $pa_client_conffile = "$::prefix/etc/pulse/client.conf"; sub set_PA_autospan { my ($val) = @_; + + if ( ! -f $pa_client_conffile ) { + return; + } + $val = 'autospawn = ' . bool2yesno($val) . "\n"; my $done; substInFile { @@ -298,6 +312,7 @@ sub switch { push @alternative, $driver; my %des = modules::category2modules_and_description('multimedia/sound'); + my $is_pulseaudio_installed = ( -f $pa_defaultsconfig_file && -f $pa_client_conffile && -d '/etc/sound/profiles/pulse' ); my $is_pulseaudio_enabled = is_pulseaudio_enabled(); my $is_pulseaudio_glitchfree_enabled = is_pulseaudio_glitchfree_enabled(); @@ -323,11 +338,12 @@ sub switch { { text => N("Enable PulseAudio"), type => 'bool', val => \$is_pulseaudio_enabled, + disabled => sub { !$is_pulseaudio_installed }, }, { text => N("Use Glitch-Free mode"), type => 'bool', val => \$is_pulseaudio_glitchfree_enabled, - disabled => sub { !$is_pulseaudio_enabled }, + disabled => sub { !$is_pulseaudio_installed || !$is_pulseaudio_enabled }, }, { advanced => 1, |