summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--perl-install/Xconfig/card.pm6
-rw-r--r--perl-install/install2.pm1
-rw-r--r--perl-install/install_any.pm8
-rw-r--r--perl-install/install_steps.pm2
-rw-r--r--perl-install/install_steps_interactive.pm6
5 files changed, 16 insertions, 7 deletions
diff --git a/perl-install/Xconfig/card.pm b/perl-install/Xconfig/card.pm
index 0d21dcf7d..60c7f4505 100644
--- a/perl-install/Xconfig/card.pm
+++ b/perl-install/Xconfig/card.pm
@@ -274,7 +274,7 @@ sub configure {
}
sub install_server {
- my ($card, $_options, $do_pkgs) = @_;
+ my ($card, $options, $do_pkgs) = @_;
my $prog = "$::prefix/usr/X11R6/bin/Xorg";
@@ -289,6 +289,10 @@ sub install_server {
push @packages, 'xorg-x11-glide-module' if $card->{card_name} =~ /Voodoo/;
}
+ if ($options->{freeDriver}) {
+ delete $card->{Driver2};
+ }
+
my %proprietary_Driver2 = (
nvidia => [ 'NVIDIA_kernel', 'NVIDIA_GLX' ], #- using NVIDIA driver (TNT, TN2 and GeForce cards only).
fglrx => [ 'ATI_kernel', 'ATI_GLX' ], #- using ATI fglrx driver (Radeon, Fire GL cards only).
diff --git a/perl-install/install2.pm b/perl-install/install2.pm
index b8f57432a..9016fc9b6 100644
--- a/perl-install/install2.pm
+++ b/perl-install/install2.pm
@@ -387,6 +387,7 @@ sub main {
vga => sub { $o->{vga} = $v },
step => sub { $o->{steps}{first} = $v },
meta_class => sub { $o->{meta_class} = $v },
+ freeDriver => sub { $o->{freeDriver} = $v },
readonly => sub { $o->{partitioning}{readonly} = $v ne "0" },
display => sub { $o->{display} = $v },
askdisplay => sub { print "Please enter the X11 display to perform the install on ? "; $o->{display} = chomp_(scalar(<STDIN>)) },
diff --git a/perl-install/install_any.pm b/perl-install/install_any.pm
index 3b1600dd9..10af86be3 100644
--- a/perl-install/install_any.pm
+++ b/perl-install/install_any.pm
@@ -1140,6 +1140,14 @@ sub log_sizes {
formatXiB(sum(run_program::rooted_get_stdout($o->{prefix}, 'rpm', '-qa', '--queryformat', '%{size}\n')))) if -x "$o->{prefix}/bin/rpm";
}
+sub X_options_from_o {
+ my ($o) = @_;
+ {
+ freeDriver => $o->{freeDriver},
+ allowFB => $o->{allowFB},
+ };
+}
+
sub copy_advertising {
my ($o) = @_;
diff --git a/perl-install/install_steps.pm b/perl-install/install_steps.pm
index 1660b2a89..32b49aa86 100644
--- a/perl-install/install_steps.pm
+++ b/perl-install/install_steps.pm
@@ -858,7 +858,7 @@ sub configureX {
$o->{raw_X} = Xconfig::default::configure($o->{keyboard}, $o->{mouse});
require Xconfig::main;
- Xconfig::main::configure_everything_auto_install($o->{raw_X}, $o->do_pkgs, $o->{X}, { allowFB => $o->{allowFB} });
+ Xconfig::main::configure_everything_auto_install($o->{raw_X}, $o->do_pkgs, $o->{X}, install_any::X_options_from_o($o));
configureXAfter($o);
}
sub configureXAfter {
diff --git a/perl-install/install_steps_interactive.pm b/perl-install/install_steps_interactive.pm
index c269ff682..c3894f22f 100644
--- a/perl-install/install_steps_interactive.pm
+++ b/perl-install/install_steps_interactive.pm
@@ -1263,12 +1263,8 @@ sub configureX {
install_steps::configureXBefore($o);
symlink "$o->{prefix}/etc/gtk", "/etc/gtk";
- my $options = {
- allowFB => $o->{allowFB},
- };
-
require Xconfig::main;
- if (my $raw_X = Xconfig::main::configure_everything_or_configure_chooser($o, $options, !$expert, $o->{keyboard}, $o->{mouse})) {
+ if (my $raw_X = Xconfig::main::configure_everything_or_configure_chooser($o, install_any::X_options_from_o($o), !$expert, $o->{keyboard}, $o->{mouse})) {
$o->{raw_X} = $raw_X;
install_steps::configureXAfter($o);
}