diff options
Diffstat (limited to 'perl-install/any.pm')
-rw-r--r-- | perl-install/any.pm | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/perl-install/any.pm b/perl-install/any.pm index 454b6fa02..a9b099947 100644 --- a/perl-install/any.pm +++ b/perl-install/any.pm @@ -826,13 +826,18 @@ UNREGISTER ^$devfs_if\$ EXECUTE /etc/dynamic/scripts/rawdevice.script del /dev/$ "); } -sub fix_broken_alternatives() { +sub fix_broken_alternatives { + my ($force_default) = @_; #- fix bad update-alternatives that may occurs after upgrade (and sometimes for install too). -d "$::prefix/etc/alternatives" or return; foreach (all("$::prefix/etc/alternatives")) { - next if run_program::rooted($::prefix, 'test', '-e', "/etc/alternatives/$_"); - log::l("fixing broken alternative $_"); + if ($force_default) { + log::l("setting alternative $_"); + } else { + next if run_program::rooted($::prefix, 'test', '-e', "/etc/alternatives/$_"); + log::l("fixing broken alternative $_"); + } run_program::rooted($::prefix, 'update-alternatives', '--auto', $_); } } |