diff options
Diffstat (limited to 'perl-install/Xconfigurator.pm')
-rw-r--r-- | perl-install/Xconfigurator.pm | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/perl-install/Xconfigurator.pm b/perl-install/Xconfigurator.pm index 0d46c73db..bf055b91c 100644 --- a/perl-install/Xconfigurator.pm +++ b/perl-install/Xconfigurator.pm @@ -151,6 +151,13 @@ sub cardConfigurationAuto() { $card->{flags}{needVideoRam} &&= /86c368/; push @{$card->{lines}}, @{$lines{$card->{identifier}} || []}; } + #- take a default on sparc if nothing has been found. + if (arch() =~ /^sparc/ && !$card->{server} && !$card->{type}) { + local $_ = cat_("/proc/fb"); + if (/Mach64/) { $card->{server} = "Mach64" } + elsif (/Permedia2/) { $card->{server} = "3DLabs" } + else { $card->{server} = "Sun24" } + } $card; } @@ -169,7 +176,8 @@ sub cardConfiguration(;$$$) { add2hash($card, { vendor => "Unknown", board => "Unknown" }); $::xf4 = $card->{identifier} =~ /Rage 128/ if !$::expert; - $card->{prog} = "/usr/X11R6/bin/" . ($::xf4 && $card->{driver} ? 'XFree86' : "XF86_$card->{server}"); + $card->{prog} = "/usr/X11R6/bin/" . ($::xf4 && $card->{driver} ? 'XFree86' : $card->{server} =~ /Sun (.*)/x ? + "Xsun$1" : "XF86_$card->{server}"); -x "$prefix$card->{prog}" or $install && do { $in->suspend; |