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.pm28
1 files changed, 16 insertions, 12 deletions
diff --git a/perl-install/install2.pm b/perl-install/install2.pm
index 4ca092c94..fc75182e5 100644
--- a/perl-install/install2.pm
+++ b/perl-install/install2.pm
@@ -19,6 +19,7 @@ use install_methods;
use modules;
use partition_table qw(:types);
use detect_devices;
+use smp;
$testing = $ENV{PERL_INSTALL_TEST};
$INSTALL_VERSION = 0;
@@ -93,7 +94,7 @@ my $default = {
mkbootdisk => 0,
comps => [ qw() ],
packages => [ qw() ],
- partitionning => { clearall => 0, eraseBadPartitions => 1, autoformat => 1 },
+ partitionning => { clearall => 1, eraseBadPartitions => 1, autoformat => 1 },
partitions => [
{ mntpoint => "/boot", size => 16 << 11, type => 0x83 },
{ mntpoint => "/", size => 300 << 11, type => 0x83 },
@@ -143,16 +144,15 @@ sub partitionDisks {
$o->{fstab} = [ fsedit::get_fstab(@{$o->{hds}}) ];
- my $root_fs; map { $_->{mntpoint} eq '/' and $root_fs = $_ } @{$o->{fstab}};
+ my $root_fs; map { $_->{mntpoint} eq '/' and $root_fs = $_ } @{$o->{fstab}};
$root_fs or die "partitionning failed: no root filesystem";
+ $o->choosePartitionsToFormat($o->{fstab});
+
$testing and return;
- if ($o->{default}->{partitionning}->{autoformat}) {
- log::l("formatting all filesystems");
- foreach (@{$o->{fstab}}) {
- fs::format_part($_) if $_->{mntpoint} && isExt2($_) || isSwap($_);
- }
+ foreach (@{$o->{fstab}}) {
+ fs::format_part($_) if $_->{toFormat};
}
fs::mount_all([ grep { isExt2($_) || isSwap($_) } @{$o->{fstab}} ], $o->{prefix});
}
@@ -162,7 +162,10 @@ sub findInstallFiles {
$o->{comps} = $o->{method}->getComponentSet($o->{packages});
}
-sub choosePackages { $o->choosePackages($o->{packages}, $o->{comps}); }
+sub choosePackages {
+ $o->choosePackages($o->{packages}, $o->{comps});
+ smp::detect() and $o->{packages}->{"kernel-smp"}->{selected} = 1;
+}
sub doInstallStep {
$o->beforeInstallPackages;
@@ -198,12 +201,17 @@ sub main {
# if this fails, it's okay -- it might help with free space though
unlink "/sbin/install";
+ symlink '/tmp/rhimage/usr/X11R6', '/usr/X11R6';
print STDERR "in second stage install\n";
log::openLog(($testing || $o->{localInstall}) && 'debug.log');
log::l("second stage install running (version $INSTALL_VERSION)");
log::ld("extra log messages are enabled");
+ # make sure we don't pick up any gunk from the outside world
+ $ENV{PATH} = "/usr/bin:/bin:/sbin:/usr/sbin:/usr/X11R6/bin:$o->{prefix}/sbin:$o->{prefix}/bin:$o->{prefix}/usr/sbin:$o->{prefix}/usr/bin:$o->{prefix}/usr/X11R6/bin";
+ $ENV{LD_LIBRARY_PATH} = "";
+
spawnSync();
eval { spawnShell() };
@@ -228,10 +236,6 @@ sub main {
modules::load_deps("/modules/modules.dep");
modules::read_conf("/tmp/conf.modules");
- # make sure we don't pick up any gunk from the outside world
- $ENV{PATH} = "/usr/bin:/bin:/sbin:/usr/sbin:$o->{prefix}/sbin:$o->{prefix}/bin:$o->{prefix}/usr/sbin:$o->{prefix}/usr/bin";
- $ENV{LD_LIBRARY_PATH} = "";
-
$o->{keyboard} = eval { keyboard::read("/tmp/keyboard") } || $default->{keyboard};
selectPath();