summaryrefslogtreecommitdiffstats
path: root/perl-install
diff options
context:
space:
mode:
Diffstat (limited to 'perl-install')
-rw-r--r--perl-install/ChangeLog14
-rw-r--r--perl-install/any.pm4
-rw-r--r--perl-install/install2.pm18
-rw-r--r--perl-install/install_any.pm15
-rw-r--r--perl-install/install_steps.pm12
-rw-r--r--perl-install/install_steps_gtk.pm7
6 files changed, 45 insertions, 25 deletions
diff --git a/perl-install/ChangeLog b/perl-install/ChangeLog
index eee377c26..93ded5e20 100644
--- a/perl-install/ChangeLog
+++ b/perl-install/ChangeLog
@@ -1,5 +1,19 @@
+2000-04-28 Pixel <pixel@mandrakesoft.com>
+
+ * install_any.pm (getHds): changed the mount point setting for
+ windows partitions as device_windobe is not unique
+
2000-04-27 Pixel <pixel@mandrakesoft.com>
+ * install_steps_gtk.pm (create_steps_window): changed to adapt to
+ new hidden format
+
+ * install2.pm (@installSteps): changed the way hidden is handled.
+ Now it is a true perl expression (great power now)
+
+ * install_steps_gtk.pm (selectInstallClass1): update steps window
+ before asking normal/devel/server. Nicer!
+
* install_steps_interactive.pm (configureNetwork): when "Cancel"
pressed at network interface configuration do not skip all
configuration.
diff --git a/perl-install/any.pm b/perl-install/any.pm
index bfd8fc9ad..bd7098285 100644
--- a/perl-install/any.pm
+++ b/perl-install/any.pm
@@ -90,7 +90,7 @@ _("Restrict command line options") => { val => \$b->{restricted}, type => "bool"
@l = @l[0..3] unless $::expert;
$b->{vga} ||= 'Normal';
- $in->ask_from_entries_refH('', _("LILO main options"), \@l,
+ $in->ask_from_entries_refH('', _("Bootloader main options"), \@l,
complete => sub {
#- $security > 4 && length($b->{password}) < 6 and $in->ask_warn('', _("At this level of security, a password (and a good one) in lilo is requested")), return 1;
$b->{restricted} && !$b->{password} and $in->ask_warn('', _("Option ``Restrict command line options'' is of no use without a password")), return 1;
@@ -104,7 +104,7 @@ _("Restrict command line options") => { val => \$b->{restricted}, type => "bool"
until ($::beginner && $more <= 1) {
$in->set_help('setupBootloaderAddEntry') unless $::isStandalone;
my $c = $in->ask_from_list_([''],
-_("Here are the following entries in LILO.
+_("Here are the different entries.
You can add some more or change the existing ones."),
[ (sort @{[map { "$_->{label} ($_->{kernel_or_dev})" . ($b->{default} eq $_->{label} && " *") } @{$b->{entries}}]}), __("Add"), __("Done") ],
);
diff --git a/perl-install/install2.pm b/perl-install/install2.pm
index 68bb0b591..940675c23 100644
--- a/perl-install/install2.pm
+++ b/perl-install/install2.pm
@@ -43,17 +43,17 @@ my (%installSteps, @orderedInstallSteps);
selectLanguage => [ __("Choose your language"), 1, 1, '' ],
selectInstallClass => [ __("Select installation class"), 1, 1, '' ],
setupSCSI => [ __("Hard drive detection"), 1, 0, '' ],
- selectMouse => [ __("Configure mouse"), 1, 1, 'beginner', "selectInstallClass" ],
+ selectMouse => [ __("Configure mouse"), 1, 1, '$::beginner', "selectInstallClass" ],
selectKeyboard => [ __("Choose your keyboard"), 1, 1, '', "selectInstallClass" ],
- miscellaneous => [ __("Miscellaneous"), 1, 1, 'beginner' ],
+ miscellaneous => [ __("Miscellaneous"), 1, 1, '$::beginner' ],
partitionDisks => [ __("Setup filesystems"), 1, 0, '', "selectInstallClass" ],
formatPartitions => [ __("Format partitions"), 1, -1, '', "partitionDisks" ],
- choosePackages => [ __("Choose packages to install"), 1, 1, 'beginner', "selectInstallClass" ],
+ choosePackages => [ __("Choose packages to install"), 1, 1, '$::beginner', "formatPartitions" ],
doInstallStep => [ __("Install system"), 1, -1, '', ["formatPartitions", "selectInstallClass"] ],
- configureNetwork => [ __("Configure networking"), 1, 1, 'beginner', "formatPartitions" ],
- installCrypto => [ __("Cryptographic"), 1, 1, '!expert', "configureNetwork" ],
+ configureNetwork => [ __("Configure networking"), 1, 1, '$::beginner && !$::corporate', "formatPartitions" ],
+ installCrypto => [ __("Cryptographic"), 1, 1, '!$::expert', "configureNetwork" ],
configureTimezone => [ __("Configure timezone"), 1, 1, '', "doInstallStep" ],
- configureServices => [ __("Configure services"), 1, 1, '!expert', "doInstallStep" ],
+ configureServices => [ __("Configure services"), 1, 1, '!$::expert', "doInstallStep" ],
configurePrinter => [ __("Configure printer"), 1, 0, '', "doInstallStep" ],
setRootPassword => [ __("Set root password"), 1, 1, '', "formatPartitions" ],
addUser => [ __("Add a user"), 1, 1, '' ],
@@ -62,8 +62,8 @@ arch() !~ /alpha/ ? (
) : (),
setupBootloader => [ __("Install bootloader"), 1, 1, '', "doInstallStep" ],
configureX => [ __("Configure X"), 1, 1, '', ["formatPartitions", "setupBootloader"] ],
- generateAutoInstFloppy => [ __("Auto install floppy"), 1, 1, '!corporate !expert', "doInstallStep" ],
- exitInstall => [ __("Exit install"), 0, 0, 'beginner' ],
+ generateAutoInstFloppy => [ __("Auto install floppy"), 1, 1, '!$::corporate || !$::expert', "doInstallStep" ],
+ exitInstall => [ __("Exit install"), 0, 0, '$::beginner' ],
);
for (my $i = 0; $i < @installSteps; $i += 2) {
my %h; @h{@installStepsFields} = @{ $installSteps[$i + 1] };
@@ -288,7 +288,7 @@ sub partitionDisks {
eval { fs::umount_all($o->{fstab}, $o->{prefix}) } if $o->{fstab} && !$::testing;
my $ok = fsedit::get_root($o->{fstab} || []) ? 1 : install_any::getHds($o);
- my $auto = $ok && !$o->{partitioning}{readonly} &&
+ my $auto = $ok && !$o->{partitioning}{readonly} && !$o->{lnx4win} &&
($o->{partitioning}{auto_allocate} || $::beginner && fsedit::get_fstab(@{$o->{hds}}) < 3);
eval { fsedit::auto_allocate($o->{hds}, $o->{partitions}) } if $auto;
diff --git a/perl-install/install_any.pm b/perl-install/install_any.pm
index 94922ba1a..4d9a1e3ce 100644
--- a/perl-install/install_any.pm
+++ b/perl-install/install_any.pm
@@ -330,12 +330,17 @@ _("DiskDrake failed to read correctly the partition table.
Continue at your own risk!")) if !$ok2 && $ok && !$o->{partitioning}{readonly};
my @win = grep { isFat($_) && isFat({ type => fsedit::typeOfPart($_->{device}) }) } @{$o->{fstab}};
- my @nt = grep { isNT($_) && isNT( { type => fsedit::typeOfPart($_->{device}) }) } @{$o->{fstab}};
+# my @nt = grep { isNT($_) && isNT( { type => fsedit::typeOfPart($_->{device}) }) } @{$o->{fstab}};
log::l("win parts: ", join ",", map { $_->{device} } @win) if @win;
- log::l("nt parts: ", join ",", map { $_->{device} } @nt) if @nt;
- $_->{mntpoint} = @win == 1 ? "/mnt/windows" : "/mnt/win_$_->{device_windobe}" foreach @win;
- $_->{mntpoint} = @nt == 1 ? "/mnt/nt" : "/mnt/nt_$_->{device_windobe}" foreach @nt;
-
+# log::l("nt parts: ", join ",", map { $_->{device} } @nt) if @nt;
+ if (@win == 1) {
+ $win[0]{mntpoint} = "/mnt/windows";
+ } else {
+ my %w; foreach (@win) {
+ my $v = $w{$_->{device_windobe}}++;
+ $_->{mntpoint} = "/mnt/win_$_->{device_windobe}" . ($v ? $v+1 : '');
+ }
+ }
$ok2;
}
diff --git a/perl-install/install_steps.pm b/perl-install/install_steps.pm
index aa2732aee..10d114b8a 100644
--- a/perl-install/install_steps.pm
+++ b/perl-install/install_steps.pm
@@ -131,12 +131,13 @@ sub doPartitionDisks {
my $size = loopback::getFree($handle->{dir}, $real_part);
my $max_linux = 1000 << 11; $max_linux *= 10 if $::expert;
- my $min_linux = 300 << 11; $max_linux /= 3 if $::expert;
- my $min_freewin = 100 << 11; $min_freewin = 0 if $::expert;
+ my $min_linux = 300 << 11; $min_linux /= 3 if $::expert;
+ my $min_freewin = 100 << 11; $min_freewin /= 10 if $::expert;
- my $swap = { type => 0x82, loopback_file => '/lnx4win/swapfile', mntpoint => 'swap', size => 64 << 11, device => $real_part, notFormatted => 1 };
+ my $swap = { type => 0x82, loopback_file => '/lnx4win/swapfile', mntpoint => 'swap', size => 64 << 11, device => $real_part, notFormatted => 1 };
my $root = { type => 0x83, loopback_file => '/lnx4win/linuxsys.img', mntpoint => '/', size => 0, device => $real_part, notFormatted => 1 };
$root->{size} = min($size - $swap->{size} - $min_freewin, $max_linux);
+ log::l("lnx4win $root->{size} <= $min_linux (minlinux), $size (minavail) - $swap->{size} (swapsize) - $min_freewin (minfreewin), $max_linux (maxlinux)");
$root->{size} > $min_linux or die "not enough room on that partition for lnx4win";
$o->doPartitionDisksLnx4winSize(\$root->{size}, \$swap->{size}, $size - 2 * $swap->{size}, 2 * $swap->{size});
@@ -439,9 +440,9 @@ sub configureNetwork($) {
network::sethostname($o->{netc}) unless $::testing;
network::addDefaultRoute($o->{netc}) unless $::testing;
- $o->pkg_install("dhcpxd") if grep { $_->{BOOTPROTO} =~ /^(dhcp|bootp)$/ } @{$o->{intf}};
+ $o->pkg_install("dhcpxd") if grep { $_->{BOOTPROTO} =~ /^(dhcp)$/ } @{$o->{intf}};
# Handle also pump (this is still in initscripts no?)
- $o->pkg_install("pump") if grep { $_->{BOOTPROTO} =~ /^(pump)$/ } @{$o->{intf}};
+ $o->pkg_install("pump") if grep { $_->{BOOTPROTO} =~ /^(pump|bootp)$/ } @{$o->{intf}};
#-res_init(); #- reinit the resolver so DNS changes take affect
miscellaneousNetwork($o);
@@ -782,6 +783,7 @@ sub setupBootloaderBefore {
$e->{append} .= " prof=Home";
}
lilo::suggest_floppy($o->{bootloader}) if $o->{security} <= 3;
+ $o->{bootloader}{keytable} ||= keyboard::keyboard2kmap($o->{keyboard});
}
}
diff --git a/perl-install/install_steps_gtk.pm b/perl-install/install_steps_gtk.pm
index a9d4984d9..8df4840fb 100644
--- a/perl-install/install_steps_gtk.pm
+++ b/perl-install/install_steps_gtk.pm
@@ -165,6 +165,8 @@ sub selectInstallClass1 {
$w->main;
mapn { $verif->($_[1]) if $_[0]->active } \@radios, $l;
+ create_steps_window($o);
+
$w->{retval};
}
@@ -752,10 +754,7 @@ sub create_steps_window {
$reachableSteps{$_} = $b if $step->{reachable};
$b;
} grep {
- local $_ = $o->{steps}{$_}{hidden};
- /^$/ or $o->{installClass} and !/!expert/ || $::expert
- and !/beginner/ || !$::beginner
- and !/!corporate/ || $::corporate;
+ !eval $o->{steps}{$_}{hidden};
} @{$o->{orderedSteps}}),
0, gtkpack(new Gtk::HBox(0,0), map {
my $t = $_;