diff options
-rw-r--r-- | perl-install/install2.pm | 10 | ||||
-rw-r--r-- | perl-install/install_any.pm | 2 | ||||
-rw-r--r-- | perl-install/install_steps_interactive.pm | 15 | ||||
-rw-r--r-- | rescue/list | 1 | ||||
-rw-r--r-- | rescue/list.i386 | 1 | ||||
-rwxr-xr-x | rescue/make_rescue_img | 1 | ||||
-rwxr-xr-x | rescue/tree/etc/rc.sysinit | 1 | ||||
-rwxr-xr-x | rescue/tree/sbin/modprobe | 1 |
8 files changed, 25 insertions, 7 deletions
diff --git a/perl-install/install2.pm b/perl-install/install2.pm index b692650f0..17e20c5fc 100644 --- a/perl-install/install2.pm +++ b/perl-install/install2.pm @@ -224,6 +224,8 @@ $o = $::o = { }; +$::oo = {}; + #-###################################################################################### #- Steps Functions #- each step function are called with two arguments : clicked(because if you are a @@ -232,7 +234,7 @@ $o = $::o = { #------------------------------------------------------------------------------ sub selectLanguage { - $o->selectLanguage($_[1] == 1); + $o->selectLanguage; addToBeDone { lang::write($o->{prefix}); @@ -299,7 +301,7 @@ sub partitionDisks { return install_any::searchAndMount4Upgrade($o) if $o->{isUpgrade}; my $stage1_hd; - if (cat_("/proc/mounts") =~ m|/tmp/(\S+)\s+/tmp/hdimage\s+(\S+)|) { + if (cat_("/proc/mounts") =~ m|/\w+/(\S+)\s+/tmp/hdimage\s+(\S+)|) { $stage1_hd = { dev => $1, fs => $2 }; install_any::getFile("XXX"); #- close still opened filehandle fs::umount("/tmp/hdimage"); @@ -557,6 +559,9 @@ sub main { map_each { my ($n, $v) = @_; my $f = ${{ + oem => sub { $::oo->{oem} = $v }, + lang => sub { $o->{lang} = $v }, + flang => sub { $o->{lang} = $::oo->{lang} = $v }, method => sub { $o->{method} = $v }, pcmcia => sub { $o->{pcmcia} = $v }, vga16 => sub { $o->{vga16} = $v }, @@ -564,6 +569,7 @@ sub main { expert => sub { $::expert = 1; $::beginner = 0 }, beginner => sub { $::beginner = $v }, class => sub { $o->{installClass} = $v }, + fclass => sub { $o->{installClass} = $::oo->{installClass} = $v }, lnx4win => sub { $o->{lnx4win} = 1 }, readonly => sub { $o->{partitioning}{readonly} = $v ne "0" }, display => sub { $o->{display} = $v }, diff --git a/perl-install/install_any.pm b/perl-install/install_any.pm index 1ec391071..5909636f7 100644 --- a/perl-install/install_any.pm +++ b/perl-install/install_any.pm @@ -504,7 +504,7 @@ sub killCardServices { } sub hdInstallPath() { - cat_("/proc/mounts") =~ m|/tmp/(\S+)\s+/tmp/hdimage| or return; + cat_("/proc/mounts") =~ m|/\w+/(\S+)\s+/tmp/hdimage| or return; my ($part) = grep { $_->{device} eq $1 } @{$::o->{fstab}}; $part->{mntpoint} or grep { $_->{mntpoint} eq "/mnt/hd" } @{$::o->{fstab}} and return; $part->{mntpoint} ||= "/mnt/hd"; diff --git a/perl-install/install_steps_interactive.pm b/perl-install/install_steps_interactive.pm index 924f1a6ea..4e288b1ba 100644 --- a/perl-install/install_steps_interactive.pm +++ b/perl-install/install_steps_interactive.pm @@ -57,7 +57,7 @@ sub selectLanguage($) { _("Please, choose a language to use."), # the translation may be used for the help [ lang::list() ], - lang::lang2text($o->{lang}))); + lang::lang2text($o->{lang}))) unless $::oo->{lang}; install_steps::selectLanguage($o); #- $o->{useless_thing_accepted} = $o->ask_from_list_('', @@ -105,6 +105,12 @@ sub selectInstallClass1 { #------------------------------------------------------------------------------ sub selectInstallClass($@) { my ($o, @classes) = @_; + + if ($::oo->{installClass}) { + delete $::o->{mouse}{unsafe} if $::oo->{oem}; + return install_steps::selectInstallClass($o); + } + my %c = my @c = ( $::corporate ? () : ( _("Automated") => "beginner", @@ -483,7 +489,7 @@ notation (for example, 1.2.3.4)."), } }, focus_out => sub { - $intf->{NETMASK} = network::netmask($intf->{IPADDR}) unless $_[0] + $intf->{NETMASK} ||= network::netmask($intf->{IPADDR}) unless $_[0] } ); } @@ -608,7 +614,7 @@ sub timeConfig { my ($o, $f, $clicked) = @_; require timezone; - $o->{timezone}{timezone} = $o->ask_from_treelist('', _("Which is your timezone?"), '/', [ timezone::getTimeZones($::g_auto_install ? '' : $o->{prefix}) ], $o->{timezone}{timezone}); + $o->{timezone}{timezone} = $o->ask_from_treelist('', _("Which is your timezone?"), '/', [ timezone::getTimeZones($::g_auto_install ? '' : $o->{prefix}) ], $o->{timezone}{timezone}) if !$::oo->{oem} || $clicked; $o->{timezone}{UTC} = $o->ask_yesorno('', _("Is your hardware clock set to GMT?"), $o->{timezone}{UTC}) if $::expert || $clicked; install_steps::timeConfig($o, $f); } @@ -1052,6 +1058,7 @@ Do you want to try XFree 4.0?")) if $::expert && arch() != /sparc/; { local $::testing = 0; #- unset testing local $::auto = $::beginner; local $::noauto = $::expert && !$o->ask_yesorno('', _("Try to find PCI devices?"), 1); + local $::skiptest = $::oo->{oem}; #- if lang is forced, assume no test (HACK) $::noauto = $::noauto; #- no warning Xconfigurator::main($o->{prefix}, $o->{X}, $o, $o->{allowFB}, bool($o->{pcmcia}), sub { @@ -1154,7 +1161,7 @@ For information on fixes which are available for this release of Linux-Mandrake, consult the Errata available from http://www.linux-mandrake.com/. Information on configuring your system is available in the post -install chapter of the Official Linux-Mandrake User's Guide.")) if $alldone && !$::g_auto_install; +install chapter of the Official Linux-Mandrake User's Guide.")) if $alldone && !$::g_auto_install && !$::oo->{oem}; $::global_wait = $o->wait_message('', _("Shutting down")); } diff --git a/rescue/list b/rescue/list index 7a2ae2058..3272e63c1 100644 --- a/rescue/list +++ b/rescue/list @@ -118,6 +118,7 @@ /bin/sort /usr/bin/md5sum /etc/protocols +/etc/services /bin/rpm /sbin/mkraid /usr/lib/rpm/rpmrc diff --git a/rescue/list.i386 b/rescue/list.i386 index 247a42e56..17a7aee85 100644 --- a/rescue/list.i386 +++ b/rescue/list.i386 @@ -4,3 +4,4 @@ /usr/bin/lspci /usr/share/pci.ids /sbin/lilo +/boot/grub/stage[12] diff --git a/rescue/make_rescue_img b/rescue/make_rescue_img index b276d3a17..9ea6b3c67 100755 --- a/rescue/make_rescue_img +++ b/rescue/make_rescue_img @@ -59,6 +59,7 @@ foreach (cat_("aliases")) { } _ "cp ../modules/modules.{cz*,dep} $tmp/modules"; +_ "install -s kernel_read_part $tmp/sbin" if $arch =~ /i.86/; __ "$sudo strip $tmp/{lib,bin,sbin}/* $tmp/usr/{bin,sbin}/* 2>/dev/null"; exit 0 if $ARGV[0]; diff --git a/rescue/tree/etc/rc.sysinit b/rescue/tree/etc/rc.sysinit index 476c9bfe9..da7e07a8f 100755 --- a/rescue/tree/etc/rc.sysinit +++ b/rescue/tree/etc/rc.sysinit @@ -22,6 +22,7 @@ load ide-mod load ide-probe load ide-disk load ide-cd +load isofs load af_packet /sbin/ifconfig lo 127.0.0.1 netmask 255.0.0.0 diff --git a/rescue/tree/sbin/modprobe b/rescue/tree/sbin/modprobe index 494f5b2a2..f007d949c 100755 --- a/rescue/tree/sbin/modprobe +++ b/rescue/tree/sbin/modprobe @@ -30,6 +30,7 @@ sub load { system("extract_archive /modules/modules.cz* /tmp $name.o >/dev/null"); -r "/tmp/$name.o" or die "can't find module $name\n"; system("/sbin/insmod -f /tmp/$name.o"); $? and die("insmod $name failed"); + system("rm /tmp/$name.o"); } !@ARGV || $ARGV[0] =~ /-h/ and die "usage: modprobe <module> [<options...>]\n"; |