summaryrefslogtreecommitdiffstats
path: root/perl-install
diff options
context:
space:
mode:
authorPascal Rigaux <pixel@mandriva.com>2005-07-01 07:02:06 +0000
committerPascal Rigaux <pixel@mandriva.com>2005-07-01 07:02:06 +0000
commit25b37aead024b635730b4c8cbc227250b0eecb34 (patch)
treec77a5c632b39cd9cff40f9263122df9ddee616d0 /perl-install
parentc3c070a106de6a7d46ec52dbda505a7b820f4bbb (diff)
downloaddrakx-25b37aead024b635730b4c8cbc227250b0eecb34.tar
drakx-25b37aead024b635730b4c8cbc227250b0eecb34.tar.gz
drakx-25b37aead024b635730b4c8cbc227250b0eecb34.tar.bz2
drakx-25b37aead024b635730b4c8cbc227250b0eecb34.tar.xz
drakx-25b37aead024b635730b4c8cbc227250b0eecb34.zip
- lilo doesn't work on dmraid so forcing grub
- method_choices() now wants $all_hds instead of $fstab
Diffstat (limited to 'perl-install')
-rw-r--r--perl-install/any.pm2
-rw-r--r--perl-install/bootloader.pm13
2 files changed, 9 insertions, 6 deletions
diff --git a/perl-install/any.pm b/perl-install/any.pm
index 77798e038..1cd0f4e7a 100644
--- a/perl-install/any.pm
+++ b/perl-install/any.pm
@@ -255,7 +255,7 @@ sub setupBootloader__general {
my ($in, $b, $all_hds, $fstab, $security) = @_;
return if is_xbox();
- my @method_choices = bootloader::method_choices($fstab);
+ my @method_choices = bootloader::method_choices($all_hds);
my $prev_force_acpi = my $force_acpi = bootloader::get_append_with_key($b, 'acpi') !~ /off|ht/;
my $prev_force_noapic = my $force_noapic = bootloader::get_append_simple($b, 'noapic');
my $prev_force_nolapic = my $force_nolapic = bootloader::get_append_simple($b, 'nolapic');
diff --git a/perl-install/bootloader.pm b/perl-install/bootloader.pm
index 4468e814c..a30d9bf9f 100644
--- a/perl-install/bootloader.pm
+++ b/perl-install/bootloader.pm
@@ -820,7 +820,7 @@ wait for default boot.
$bootloader->{default} ||= $preferred;
}
$bootloader->{default} ||= "linux";
- $bootloader->{method} ||= first(method_choices($fstab));
+ $bootloader->{method} ||= first(method_choices($all_hds));
}
sub detect_main_method {
@@ -870,13 +870,16 @@ sub method_choices_raw {
);
}
sub method_choices {
- my ($fstab) = @_;
+ my ($all_hds) = @_;
+ my $fstab = [ fs::get::fstab($all_hds) ];
my $root_part = fs::get::root($fstab);
+ my $boot_part = fs::get::root($fstab, 'boot');
+ my $boot_disk = fs::get::part2hd($boot_part, $all_hds);
grep {
- !(/lilo/ && isLoopback($root_part))
- && !(/lilo-graphic/ && detect_devices::matching_desc__regexp('ProSavageDDR'))
- && !(/grub/ && isRAID($root_part));
+ (!/lilo/ || !isLoopback($root_part) && !fs::type::is_dmraid($boot_disk))
+ && (!/lilo-graphic/ || !detect_devices::matching_desc__regexp('ProSavageDDR'))
+ && (!/grub/ || !isRAID($root_part));
} method_choices_raw(1);
}
sub main_method_choices {