summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPascal Rigaux <pixel@mandriva.com>1999-09-04 22:39:05 +0000
committerPascal Rigaux <pixel@mandriva.com>1999-09-04 22:39:05 +0000
commit7670157b32ceb6f0437c0b7b154ee1f4bf454e62 (patch)
treedf1dc83129eddb2c45c7ed7f292acb8a301b4876
parentbcd1bf4e45de7e5f59a6c1e7eaaf7ad401d7fc28 (diff)
downloaddrakx-7670157b32ceb6f0437c0b7b154ee1f4bf454e62.tar
drakx-7670157b32ceb6f0437c0b7b154ee1f4bf454e62.tar.gz
drakx-7670157b32ceb6f0437c0b7b154ee1f4bf454e62.tar.bz2
drakx-7670157b32ceb6f0437c0b7b154ee1f4bf454e62.tar.xz
drakx-7670157b32ceb6f0437c0b7b154ee1f4bf454e62.zip
no_comment
-rw-r--r--perl-install/install_steps_interactive.pm19
-rw-r--r--perl-install/modules.pm2
2 files changed, 16 insertions, 5 deletions
diff --git a/perl-install/install_steps_interactive.pm b/perl-install/install_steps_interactive.pm
index 1138f6c4f..af70a6fa1 100644
--- a/perl-install/install_steps_interactive.pm
+++ b/perl-install/install_steps_interactive.pm
@@ -137,7 +137,7 @@ sub configureNetwork($) {
if ($r =~ /^Don't/) {
$o->{netc}{NETWORKING} = "false";
} elsif ($r !~ /^Keep/) {
- $o->setup_thiskind('net', 1, 1);
+ $o->setup_thiskind('net', !$::expert, 1);
my @l = detect_devices::getNet() or die _("no network card found");
my $last; foreach ($::expert ? @l : $l[0]) {
@@ -402,22 +402,30 @@ sub loadModule {
_("What %s card have you?", $type),
[ modules::text_of_type($type) ]) or return;
my $m = modules::text2driver($l);
+
if ($o->ask_from_list('',
- _("In some cases, the %s driver needs to have extra information to work
+_("In some cases, the %s driver needs to have extra information to work
properly, although it normally works fine without. Would you like to specify
extra options for it or allow the driver to probe your machine for the
information it needs? Occasionally, probing will hang a computer, but it should
not cause any damage.", $l),
[ __("Autoprobe"), __("Specify options") ], "Autoprobe") ne "Autoprobe") {
+ ASK:
@options = split ' ',
$o->ask_from_entry('',
- _("Here must give the different options for the module %s.
+_("Here must give the different options for the module %s.
Options are in format ``name=value name2=value2 ...''.
For example you can have ``io=0x300 irq=7''", $l),
_("Module options:"),
);
}
- modules::load($m, $type, @options);
+ eval { modules::load($m, $type, @options) };
+ if ($@) {
+ $o->ask_yesorno('',
+_("Loading of module %s failed
+Do you want to try again with other parameters?", $l)) or return;
+ goto ASK;
+ }
$l, $m;
}
@@ -444,6 +452,7 @@ sub setup_thiskind {
_("Do you have another one?") ], "No") :
$o->ask_yesorno('', _("Do you have an %s interface?", $type), "No") or return;
- push @l, [ $o->loadModule($type) ];
+ my @r = $o->loadModule($type) or return;
+ push @l, \@r;
}
}
diff --git a/perl-install/modules.pm b/perl-install/modules.pm
index da89bae31..594e07f9a 100644
--- a/perl-install/modules.pm
+++ b/perl-install/modules.pm
@@ -246,6 +246,8 @@ sub load($;$@) {
$conf{'scsi_hostadapter' . ($scsi++ || '')}{alias} = $name
if $type eq 'scsi';
+ $conf{$name}{options} = join " ", @options if @options;
+
if ($::testing) {
log::l("i try to install $name module");
} else {