summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--perl-install/ChangeLog11
-rw-r--r--perl-install/Xconfigurator.pm46
-rw-r--r--perl-install/install_steps_interactive.pm9
3 files changed, 45 insertions, 21 deletions
diff --git a/perl-install/ChangeLog b/perl-install/ChangeLog
index 0db82fd33..c52618672 100644
--- a/perl-install/ChangeLog
+++ b/perl-install/ChangeLog
@@ -1,4 +1,13 @@
-2000-07-20 dam's <damien@mandrakesoft.com>
+2000-07-27 François Pons <fpons@mandrakesoft.com>
+
+ * install_steps_interactive.pm: changed expert message to ask
+ using XFree 3.3 instead of XFree 4.0 used by default (server).
+ * Xconfigurator.pm: make sure only one server is installed,
+ default to XFree 4.0 if supported unless XFree 3.3 accept
+ 3D acceleration and not XFree 4.0, ask user in such case.
+ * pci_probing/pcitable: added Intel 815 pci ids.
+
+2000-07-26 dam's <damien@mandrakesoft.com>
* install_steps_gtk.pm: applied new LN stars, logo title and help
logo. improved steps appearences.
diff --git a/perl-install/Xconfigurator.pm b/perl-install/Xconfigurator.pm
index 34c644b61..de90d04fe 100644
--- a/perl-install/Xconfigurator.pm
+++ b/perl-install/Xconfigurator.pm
@@ -175,14 +175,35 @@ sub cardConfiguration(;$$$) {
add2hash($card, cardName2card($card->{type})) if $card->{type};
add2hash($card, { vendor => "Unknown", board => "Unknown" });
- $::xf4 = $card->{driver} && !$card->{flags}{unsupported};
- $card->{prog} = "/usr/X11R6/bin/" . ($::xf4 && $card->{driver} ? 'XFree86' : $card->{server} =~ /Sun (.*)/x ?
+ #- 3D acceleration configuration for XFree 3.3 using Utah-GLX.
+ $card->{Utah_glx} = ($card->{identifier} =~ /MGA G[24]00/ ||
+ $card->{type} =~ /ATI Mach64/ ||
+ $card->{type} =~ /RIVA TNT/ ||
+ $card->{type} =~ /SiS / ||
+ $card->{type} =~ /S3 ViRGE/ ||
+ $card->{type} =~ /Intel 810/);
+ #- 3D acceleration configuration for XFree 4.0 using DRI.
+ $card->{DRI_glx} = ($card->{type} =~ /Voodoo3 / || $card->{type} =~ /Voodoo Banshee / ||
+ $card->{identified} =~ /MGA G[24]00/ ||
+ $card->{type} =~ /Intel 810/ ||
+ $card->{type} =~ /ATI Rage 128/);
+
+ #- try to figure if 3D acceleration is supported
+ #- by XFree 3.3 but not XFree 4.0 then ask user to keep XFree 3.3 ?
+ if ($card->{driver} && $card->{Utah_glx} && !$card->{DRI_glx}) {
+ $::beginner || $in->ask_yesorno('',
+ _("Your card can have 3D acceleration but only with XFree 3.3.
+Do You want to use XFree 3.3 instead of XFree 4.0?"), 1) and $card->{driver} = '';
+ }
+
+ !$::force_xf3 && $card->{driver} && !$card->{flags}{unsupported} or $card->{driver} = ''; #- disable XFree 4.0
+ $card->{prog} = "/usr/X11R6/bin/" . ($card->{driver} ? 'XFree86' : $card->{server} =~ /Sun (.*)/x ?
"Xsun$1" : "XF86_$card->{server}");
-x "$prefix$card->{prog}" or $install && do {
$in->suspend;
- &$install($card->{server});
- &$install('server') if $::xf4 && $card->{driver};
+ &$install($card->{server}, $card->{Utah_glx} ? 'Mesa' : ()) if !$card->{driver};
+ &$install('server') if $card->{driver}; #- add XFree86-libs-DRI here if using DRI (future split of XFree86 TODO)
$in->resume;
};
-x "$prefix$card->{prog}" or die "server $card->{server} is not available (should be in $prefix$card->{prog})";
@@ -199,21 +220,14 @@ sub cardConfiguration(;$$$) {
[ sort { $videomemory{$a} <=> $videomemory{$b} }
keys %videomemory])};
- #- 3D acceleration configuration for X version 3 using Utah-GLX.
- $card->{Utah_glx} = (-x "$prefix/usr/X11R6/lib/modules/glx-3.so" &&
- ($card->{identifier} =~ /MGA G[24]00/ ||
- $card->{type} =~ /ATI Mach64/ ||
- $card->{type} =~ /RIVA TNT/ ||
- $card->{type} =~ /SiS / ||
- $card->{type} =~ /S3 ViRGE/ ||
- $card->{type} =~ /Intel 810/));
+
#- hack for ATI Mach64 card where two options should be used if using Utah-GLX.
if ($card->{type} =~ /ATI Mach64/) {
$card->{options}{no_font_cache} = $card->{Utah_glx};
$card->{options}{no_pixmap_cache} = $card->{Utah_glx};
}
- #- 3D acceleration configuration for X version 4 using DRI, this is enabled by default
+ #- 3D acceleration configuration for XFree 4.0 using DRI, this is enabled by default
#- but for some there is a need to specify VideoRam (else it won't run).
($card->{flags}{needVideoRam}, $card->{memory}) = ('fakeVideoRam', 32768) if $card->{identifier} =~ /MGA G[24]00/;
($card->{flags}{needVideoRam}, $card->{memory}) = ('fakeVideoRam', 10000) if $card->{type} =~ /Intel 810/;
@@ -280,7 +294,7 @@ sub testConfig($) {
unlink "/tmp/.X9-lock";
#- restart_xfs;
- my $f = $tmpconfig . ($::xf4 && $o->{card}{driver} && "-4");
+ my $f = $tmpconfig . ($o->{card}{driver} && "-4");
local *F;
open F, "$prefix$o->{card}{prog} :9 -probeonly -pn -xf86config $f 2>&1 |";
foreach (<F>) {
@@ -317,7 +331,7 @@ sub testFinalConfig($;$$) {
#- needed for bad cards not restoring cleanly framebuffer
my $bad_card = $o->{card}{identifier} =~ /i740|ViRGE/;
$bad_card ||= $o->{card}{identifier} eq "ATI|3D Rage P/M Mobility AGP 2x";
- $bad_card ||= $::xf4;
+ $bad_card ||= $o->{card}{driver}; #- TODO obsoleted to check, when using fbdev of XFree 4.0!
log::l("the graphic card does not like X in framebuffer") if $bad_card;
my $mesg = _("Do you want to test the configuration?");
@@ -347,7 +361,7 @@ sub testFinalConfig($;$$) {
open STDERR, ">$f_err";
chroot $prefix if $prefix;
exec $o->{card}{prog},
- ($o->{card}{prog} !~ /Xsun/ ? ("-xf86config", ($::testing ? $tmpconfig : $f) . ($::xf4 && $o->{card}{driver} && "-4")) : ()),
+ ($o->{card}{prog} !~ /Xsun/ ? ("-xf86config", ($::testing ? $tmpconfig : $f) . ($o->{card}{driver} && "-4")) : ()),
":9" or c::_exit(0);
}
diff --git a/perl-install/install_steps_interactive.pm b/perl-install/install_steps_interactive.pm
index 612a70333..13b3558a0 100644
--- a/perl-install/install_steps_interactive.pm
+++ b/perl-install/install_steps_interactive.pm
@@ -932,11 +932,11 @@ sub setupXfree {
Xconfig::getinfoFromXF86Config($o->{X}, $o->{prefix});
}
}
- $::xf4 = $o->ask_yesorno('',
+ $::force_xf3 = $o->ask_yesorno('',
_("DrakX will generate config files for both XFree 3.3 and XFree 4.0.
-By default, the 3.3 server is used because it works on more graphic cards.
+By default, the 4.0 server is used unless your card is not supported.
-Do you want to try XFree 4.0?")) if $::expert && arch() != /sparc/;
+Do you want to keep XFree 3.3?"), 0) if $::expert;
#- strange, xfs must not be started twice...
#- trying to stop and restart it does nothing good too...
@@ -951,7 +951,8 @@ Do you want to try XFree 4.0?")) if $::expert && arch() != /sparc/;
$::noauto = $::noauto; #- no warning
Xconfigurator::main($o->{prefix}, $o->{X}, $o, $o->{allowFB}, bool($o->{pcmcia}), sub {
- $o->pkg_install("XFree86-$_[0]");
+ my ($server, @l) = @_;
+ $o->pkg_install("XFree86-$server", @l);
});
}
$o->setupXfreeAfter;