diff options
-rw-r--r-- | perl-install/bootloader.pm | 14 | ||||
-rw-r--r-- | perl-install/install_any.pm | 5 | ||||
-rw-r--r-- | perl-install/install_steps.pm | 4 | ||||
-rw-r--r-- | tools/Makefile | 2 |
4 files changed, 20 insertions, 5 deletions
diff --git a/perl-install/bootloader.pm b/perl-install/bootloader.pm index 97e3ecd04..c5b570620 100644 --- a/perl-install/bootloader.pm +++ b/perl-install/bootloader.pm @@ -190,8 +190,8 @@ sub dev2prompath { #- SPARC only $dev; } -sub suggest($$$$$) { - my ($prefix, $lilo, $hds, $fstab, $kernelVersion) = @_; +sub suggest($$$$$;$) { + my ($prefix, $lilo, $hds, $fstab, $kernelVersion, $vga_fb) = @_; my $root_part = fsedit::get_root($fstab); my $root = isLoopback($root_part) ? "loop7" : $root_part->{device}; my $boot = fsedit::get_root($fstab, 'boot')->{device}; @@ -265,6 +265,16 @@ wait %d seconds for default boot. root => "/dev/$root", })->{append} .= " failsafe" unless $lilo->{password}; + if (-e "$prefix/boot/vmlinuz-${kernelVersion}fb") { + add_kernel($prefix, $lilo, $kernelVersion, 'fb', + { + label => 'linux-fb', + root => "/dev/$root", + $vga_fb ? ( vga => $vga_fb) : (), #- specific mode for kernel-fb. + }); + $vga_fb and $lilo->{default} = 'linux-fb'; #- make it by default. + } + #- manage hackkernel if installed. my $hasHack = -e "$prefix/boot/vmlinuz-hack"; if ($hasHack) { diff --git a/perl-install/install_any.pm b/perl-install/install_any.pm index dc658be44..005428700 100644 --- a/perl-install/install_any.pm +++ b/perl-install/install_any.pm @@ -287,6 +287,9 @@ sub setPackages($) { pkgs::getDeps($o->{prefix}, $o->{packages}); pkgs::selectPackage($o->{packages}, pkgs::packageByName($o->{packages}, 'basesystem') || die("missing basesystem package"), 1); + #- some program that may be crazy on some conditions (hack waiting for Aurora to work if no fb). + $o->{allowFB} or push @pkgs::skip_list, 'Aurora'; + #- must be done after selecting base packages (to save memory) pkgs::getProvides($o->{packages}); @@ -374,7 +377,7 @@ sub setupFB { my ($o, $vga) = @_; #- install needed packages for frame buffer. - $o->pkg_install(qw(kernel-fb XFree86-FBDev)); + $o->pkg_install('kernel-fb'); $vga ||= 785; #- assume at least 640x480x16. diff --git a/perl-install/install_steps.pm b/perl-install/install_steps.pm index a883ace2b..f95573386 100644 --- a/perl-install/install_steps.pm +++ b/perl-install/install_steps.pm @@ -685,7 +685,9 @@ sub setupBootloaderBefore { } } else { require bootloader; - bootloader::suggest($o->{prefix}, $o->{bootloader}, $o->{hds}, $o->{fstab}, install_any::kernelVersion($o)); + #- propose the default fb mode for kernel fb, if aurora is installed too. + bootloader::suggest($o->{prefix}, $o->{bootloader}, $o->{hds}, $o->{fstab}, install_any::kernelVersion($o), + pkgs::packageFlagInstalled(pkgs::packageByName($o->{packages}, 'Aurora') || {}) && 785); if ($o->{miscellaneous}{profiles}) { my $e = bootloader::get_label("linux", $o->{bootloader}); push @{$o->{bootloader}{entries}}, { %$e, label => "office", append => "$e->{append} prof=Office" }; diff --git a/tools/Makefile b/tools/Makefile index ec52ff290..26dd2a2fa 100644 --- a/tools/Makefile +++ b/tools/Makefile @@ -7,7 +7,7 @@ CFLAGS = -Wall .PHONY: clean install $(DIRS) -all: $(BASE)/depslist $(BASE)/filelist $(BASE)/compss $(DIRS) xhost+ install +all: $(BASE)/depslist.ordered $(BASE)/filelist $(BASE)/compss $(DIRS) xhost+ install $(DIRS): make -C $@ |