summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--perl-install/Xconfigurator.pm13
-rw-r--r--perl-install/Xconfigurator_consts.pm22
-rw-r--r--perl-install/install_any.pm6
3 files changed, 32 insertions, 9 deletions
diff --git a/perl-install/Xconfigurator.pm b/perl-install/Xconfigurator.pm
index 7f9456216..3bedb4ecb 100644
--- a/perl-install/Xconfigurator.pm
+++ b/perl-install/Xconfigurator.pm
@@ -239,8 +239,8 @@ Do You want to use XFree 3.3 instead of XFree 4.0?"), 1) and $card->{driver} = '
#- 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};
+ $card->{options_xf3}{no_font_cache} = $card->{Utah_glx};
+ $card->{options_xf3}{no_pixmap_cache} = $card->{Utah_glx};
}
#- 3D acceleration configuration for XFree 4.0 using DRI, this is enabled by default
@@ -264,9 +264,10 @@ sub optionsConfiguration($) {
foreach (@options) {
if ($o->{card}{server} eq $_->[1] && $o->{card}{identifier} =~ /$_->[2]/) {
- $o->{card}{options}{$_->[0]} ||= 0;
+ my $options = 'options_' . ($o->{card}{server} eq 'XFree86' ? 'xf4' : 'xf3');
+ $o->{card}{$options}{$_->[0]} ||= 0;
unless ($l{$_->[0]}) {
- push @l, $_->[0], { val => \$o->{card}{options}{$_->[0]}, type => 'bool' };
+ push @l, $_->[0], { val => \$o->{card}{$options}{$_->[0]}, type => 'bool' };
$l{$_->[0]} = 1;
}
}
@@ -886,9 +887,9 @@ EndSection
# instead of the cursor!
# Option "sw_cursor"
-);
+);
my $p = sub {
- my ($l) = @_;
+ my $l = $O->{$_[0]};
map { (!$l->{$_} && '#') . qq( Option "$_"\n) } keys %{$l || {}};
};
print F $p->('options');
diff --git a/perl-install/Xconfigurator_consts.pm b/perl-install/Xconfigurator_consts.pm
index 3ff43ae09..914059b4c 100644
--- a/perl-install/Xconfigurator_consts.pm
+++ b/perl-install/Xconfigurator_consts.pm
@@ -160,9 +160,31 @@ $default_monitor = "High Frequency SVGA, 1024x768 at 70 Hz";
#- 'S3 Inc.|86c368 [Trio 3D/2X]' => [ ' ChipID 0x8a10' ],
);
+#- most usefull XFree86-4.0.1 server options. Default values is the first ones.
+@options_serverflags = (
+ 'NoTrapSignals' => [ "Off", "On" ],
+ 'DontZap' => [ "Off", "On" ],
+ 'DontZoom' => [ "Off", "On" ],
+ 'DisableVidModeExtension' => [ "Off", "On" ],
+ 'AllowNonLocalXvidtune' => [ "Off", "On" ],
+ 'DisableModInDev' => [ "Off", "On" ],
+ 'AllowNonLocalModInDev' => [ "Off", "On" ],
+ 'AllowMouseOpenFail' => [ "False", "True" ],
+ 'VTSysReq' => [ "Off", "On" ],
+ 'BlankTime' => [ "10", "5", "3", "15", "30" ],
+ 'StandByTime' => [ "20", "10", "6", "30", "60" ],
+ 'SuspendTime' => [ "30", "15", "9", "45", "90" ],
+ 'OffTime' => [ "40", "20", "12", "60", "120" ],
+ 'Pixmap' => [ "32", "24" ],
+ 'PC98' => [ "auto-detected", "False", "True" ],
+ 'NoPM' => [ "False", "True" ],
+);
+
#- most usefull server options have to be accessible at the beginning, since
#- no more than a small set of options will be available for the user, maybe ?
@options = (
+ [ 'DPMS', 'XFree86', '.*' ],
+ [ 'SyncOnGreen', 'XFree86', '.*' ],
[ 'power_saver', 'Mono', '.*' ],
[ 'hibit_low', 'VGA16', 'Tseng.*ET4000' ],
[ 'hibit_high', 'VGA16', 'Tseng.*ET4000' ],
diff --git a/perl-install/install_any.pm b/perl-install/install_any.pm
index 11d57f120..45864b015 100644
--- a/perl-install/install_any.pm
+++ b/perl-install/install_any.pm
@@ -61,7 +61,7 @@ sub relGetFile($) {
local $_ = $_[0];
m,^(Mandrake|lnx4win)/, and return $_;
/\.img$/ and return "images/$_";
- my $dir = m|/| ? "Mandrake/mdkinst" : /^(?:compss|compssList|compssUsers|filelist|depslist.*|hdlist.*|auto_inst.*)$/ ?
+ my $dir = m|/| ? "Mandrake/mdkinst" : /^(?:compss|compssList|compssUsers|provides|filelist|depslist.*|hdlist.*|auto_inst.*)$/ ?
"Mandrake/base/": "$::o->{packages}[2]{$asked_medium}{rpmsdir}/";
"$dir$_";
}
@@ -422,9 +422,9 @@ sub install_urpmi {
http => $ENV{URLPREFIX},
cdrom => "removable_cdrom_$::i://mnt/cdrom" }}{$method} . "/$_->{rpmsdir}";
- local *FILES; open FILES, "bzip2 -dc /tmp/$_->{hdlist} 2>/dev/null | hdlist2names - |";
+ local *FILES; open FILES, "packdrake -c /tmp/$_->{hdlist} | parsehdlist - |";
chop, print LIST "$dir/$_\n" foreach <FILES>;
- close FILES or log::l("hdlist2names failed"), return;
+ close FILES or log::l("parsehdlist failed"), return;
close LIST;
$dir .= " with ../base/$_->{hdlist}" if $method =~ /ftp|http/;