From 44119a22a9d8c5afb530c03fd554a9b7505c566d Mon Sep 17 00:00:00 2001 From: Pascal Rigaux Date: Mon, 12 Aug 2002 20:43:00 +0000 Subject: - fix reading previous keyboard config on upgrade (for displaying in summary) - ensure keyboard and mouse configuration are not overwritten if not explictly modified on upgrade - propagate pci=xxx at install to bootloader (since "pci=bios,biosirq" is needed on some box, see http://islay.dyndns.org/taz/index.html for more) --- perl-install/install2.pm | 15 ++++++++------- perl-install/install_steps.pm | 7 +++++-- perl-install/keyboard.pm | 3 ++- perl-install/network/network.pm | 2 +- 4 files changed, 16 insertions(+), 11 deletions(-) diff --git a/perl-install/install2.pm b/perl-install/install2.pm index 842c57fee..e980794cd 100644 --- a/perl-install/install2.pm +++ b/perl-install/install2.pm @@ -98,11 +98,9 @@ sub selectMouse { require pkgs; my ($first_time) = $ent_number == 1; - add2hash($o->{mouse} ||= {}, mouse::read($o->{prefix})) if $o->{isUpgrade} && $first_time; - installStepsCall($o, $auto, 'selectMouse', !$first_time || $clicked); - addToBeDone { mouse::write($o->{prefix}, $o->{mouse}) } 'installPackages'; + addToBeDone { mouse::write($o->{prefix}, $o->{mouse}) } 'installPackages' if !$o->{isUpgrade} || $clicked; } #------------------------------------------------------------------------------ @@ -119,13 +117,16 @@ sub setupSCSI { #------------------------------------------------------------------------------ sub selectKeyboard { my ($clicked, $first_time, $auto) = ($_[0], $_[1] == 1, $_[2]); - - if ($o->{isUpgrade} && $first_time && $o->{keyboard}{unsafe}) { + + installStepsCall($o, $auto, 'selectKeyboard', $clicked); + + #- read keyboard ASAP (so that summary displays ok) + addToBeDone { + $o->{keyboard}{unsafe} or return; if (my $keyboard = keyboard::read()) { $o->{keyboard} = $keyboard; } - } - installStepsCall($o, $auto, 'selectKeyboard', $clicked); + } 'formatPartitions' if $o->{isUpgrade}; } #------------------------------------------------------------------------------ diff --git a/perl-install/install_steps.pm b/perl-install/install_steps.pm index d1129efc1..e6d2991fc 100644 --- a/perl-install/install_steps.pm +++ b/perl-install/install_steps.pm @@ -117,7 +117,7 @@ sub selectKeyboard { addToBeDone { keyboard::write($o->{keyboard}); - } 'installPackages' unless $::g_auto_install; + } 'installPackages' if !$::g_auto_install && (!$o->{isUpgrade} || !$o->{keyboard}{unsafe}); } #------------------------------------------------------------------------------ sub acceptLicence {} @@ -813,9 +813,12 @@ sub setupBootloaderBefore { if ($o->{miscellaneous}{HDPARM}) { bootloader::add_append($o->{bootloader}, $_, 'autotune') foreach grep { /ide.*/ } all("/proc/ide"); } - if (grep { /mem=nopentium/ } cat_("/proc/cmdline")) { + if (cat_("/proc/cmdline") =~ /mem=nopentium/) { bootloader::add_append($o->{bootloader}, 'mem', 'nopentium'); } + if (cat_("/proc/cmdline") =~ /\b(pci)=(\S+)/) { + bootloader::add_append($o->{bootloader}, $1, $2); + } if (arch() =~ /alpha/) { if (my $dev = fsedit::get_root($o->{fstab})) { diff --git a/perl-install/keyboard.pm b/perl-install/keyboard.pm index d5f3ce3e0..6130f3c17 100644 --- a/perl-install/keyboard.pm +++ b/perl-install/keyboard.pm @@ -446,8 +446,9 @@ sub setup { sub write { my ($keyboard) = @_; - $keyboard = { %$keyboard }; + log::l("keyboard::write $keyboard->{KEYBOARD}"); + $keyboard = { %$keyboard }; delete $keyboard->{unsafe}; $keyboard->{KEYTABLE} = keyboard2kmap($keyboard); diff --git a/perl-install/network/network.pm b/perl-install/network/network.pm index 1a88f14da..0a336ba6d 100644 --- a/perl-install/network/network.pm +++ b/perl-install/network/network.pm @@ -446,7 +446,7 @@ sub configureNetwork2 { } #-res_init(); #- reinit the resolver so DNS changes take affect - any::miscellaneousNetwork($prefix); + any::miscellaneousNetwork(); } -- cgit v1.2.1