summaryrefslogtreecommitdiffstats
path: root/perl-install/install2.pm
diff options
context:
space:
mode:
Diffstat (limited to 'perl-install/install2.pm')
-rw-r--r--perl-install/install2.pm40
1 files changed, 27 insertions, 13 deletions
diff --git a/perl-install/install2.pm b/perl-install/install2.pm
index 5636f0c99..7937251b5 100644
--- a/perl-install/install2.pm
+++ b/perl-install/install2.pm
@@ -26,6 +26,9 @@ my %stepsHelp = (
selectLanguage =>
__("Choose preferred language for install and system usage."),
+selectKeyboard =>
+ __("Choose on the list of keyboards, the one corresponding to yours"),
+
selectPath =>
__("Choose \"Installation\" if there are no previous versions of Linux
installed, or if you wish use to multiple distributions or versions.
@@ -162,15 +165,15 @@ my @installSteps = (
selectLanguage => [ __("Choose your language"), 1, 1 ],
selectPath => [ __("Choose install or upgrade"), 0, 0 ],
selectInstallClass => [ __("Select installation class"), 1, 1, "selectPath" ],
- setupSCSI => [ __("Setup SCSI"), 1, 0 ],
+ setupModules => [ __("Setup SCSI"), 1, 0 ],
partitionDisks => [ __("Setup filesystems"), 1, 0 ],
formatPartitions => [ __("Format partitions"), 1, -1, "partitionDisks" ],
choosePackages => [ __("Choose packages to install"), 1, 1, "selectInstallClass" ],
doInstallStep => [ __("Install system"), 1, -1, ["formatPartitions", "selectPath"] ],
- configureMouse => [ __("Configure mouse"), 1, 1, "formatPartitions" ],
+# configureMouse => [ __("Configure mouse"), 1, 1, "formatPartitions" ],
configureNetwork => [ __("Configure networking"), 1, 1, "formatPartitions" ],
- configureTimezone => [ __("Configure timezone"), 0, 0 ],
- configureServices => [ __("Configure services"), 0, 0 ],
+ configureTimezone => [ __("Configure timezone"), 1, 1, "doInstallStep" ],
+# configureServices => [ __("Configure services"), 0, 0 ],
configurePrinter => [ __("Configure printer"), 0, 0 ],
setRootPassword => [ __("Set root password"), 1, 1, "formatPartitions" ],
addUser => [ __("Add a user"), 1, 1, "doInstallStep" ],
@@ -207,6 +210,7 @@ my $default = {
# display => "192.168.1.9:0",
bootloader => { onmbr => 1, linear => 0 },
+# keyboard => 'de',
autoSCSI => 0,
mkbootdisk => "fd0", # no mkbootdisk if 0 or undef, find a floppy with 1
packages => [ qw() ],
@@ -239,14 +243,20 @@ $o = $::o = {
sub selectLanguage {
lang::set($o->{lang} = $o->chooseLanguage);
- $o->{keyboard} = keyboard::setup();
+ $o->{keyboard} = keyboard::setup($o->default("keyboard") || keyboard::lang2keyboard($o->{lang}));
addToBeDone {
unless ($o->{isUpgrade}) {
- keyboard::write($o->{prefix}, $o->{keyboard});
lang::write($o->{prefix});
- }
+ keyboard::write($o->{prefix}, $o->{keyboard});
+ }
} 'doInstallStep';
+
+ goto &selectKeyboard if $_[0];
+}
+
+sub selectKeyboard {
+ $o->{keyboard} = keyboard::setup($o->chooseKeyboard);
}
sub selectPath {
@@ -303,21 +313,25 @@ sub formatPartitions {
}
sub choosePackages {
- install_any::setPackages($o) if $o->{steps}{$o->{step}}{entered} == 1;
+ install_any::setPackages($o) if $_[1] == 1;
$o->choosePackages($o->{packages}, $o->{compss});
$o->{packages}{$_}{base} = 1 foreach @{$o->{base}};
}
sub doInstallStep {
- install_any::setPackages($o) unless $o->{steps}{choosePackages}{entered};
+ install_any::setPackages($o) unless $_[1];
$o->beforeInstallPackages;
$o->installPackages($o->{packages});
$o->afterInstallPackages;
}
sub configureMouse { $o->mouseConfig }
-sub configureNetwork { $o->configureNetwork($o->{steps}{$o->{step}}{entered} == 1 && !$_[0]) }
-sub configureTimezone { $o->timeConfig }
+sub configureNetwork { $o->configureNetwork($_[1] == 1 && !$_[0]) }
+sub configureTimezone {
+ my $f = "$o->{prefix}/etc/sysconfig/clock";
+ return if -e $f && $_[1] == 1 && !$_[0];
+ $o->timeConfig($f);
+}
sub configureServices { $o->servicesConfig }
sub configurePrinter { $o->printerConfig }
sub setRootPassword { $o->setRootPassword }
@@ -331,7 +345,7 @@ sub addUser {
sub createBootdisk {
fs::write($o->{prefix}, $o->{fstab}) unless $o->{isUpgrade};
modules::write_conf("$o->{prefix}/etc/conf.modules", 'append');
- $o->createBootdisk($o->{steps}{$o->{step}}{entered} == 1);
+ $o->createBootdisk($_[1] == 1);
}
sub setupBootloader {
@@ -404,7 +418,7 @@ sub main {
$o->enteringStep($o->{step});
$o->{steps}{$o->{step}}{entered}++;
eval {
- &{$install2::{$o->{step}}}($clicked);
+ &{$install2::{$o->{step}}}($clicked, $o->{steps}{$o->{step}}{entered});
};
$clicked = 0;
$@ =~ /^setstep (.*)/ and $o->{step} = $1, $clicked = 1, redo;