summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--perl-install/Xconfigurator.pm1
-rw-r--r--perl-install/install_any.pm34
-rw-r--r--perl-install/install_steps.pm5
3 files changed, 39 insertions, 1 deletions
diff --git a/perl-install/Xconfigurator.pm b/perl-install/Xconfigurator.pm
index 626ccd7bb..822f51534 100644
--- a/perl-install/Xconfigurator.pm
+++ b/perl-install/Xconfigurator.pm
@@ -563,6 +563,7 @@ Try with another video card or monitor")), return;
#- otherwise there'll be a virtual screen :(
$card->{depth}{$depth} = [ grep { $_->[0] <= $wres } @{$card->{depth}{$depth}} ];
$card->{default_depth} = $depth;
+ $card->{default_wres} = $wres;
$card->{vga_mode} = $vgamodes{"${wres}xx$depth"} || $vgamodes{"${res}x$depth"}; #- for use with frame buffer.
1;
}
diff --git a/perl-install/install_any.pm b/perl-install/install_any.pm
index 00d869cff..7e176fbbe 100644
--- a/perl-install/install_any.pm
+++ b/perl-install/install_any.pm
@@ -513,7 +513,39 @@ sub template2userfile($$$$%) {
}
}
-sub kdeicons_postinstall {
+sub kderc_largedisplay($) {
+ my ($prefix) = @_;
+
+ foreach ("/etc/skel", "/root", list_home($prefix)) {
+ my ($inputfile, $outputfile) = ("$prefix$_/.kderc", "$prefix$_/.kderc.new");
+ my %subst = ( contrast => "Contrast=7\n",
+ kfmiconstyle => "kfmIconStyle=Large\n",
+ kpaneliconstyle => "kpanelIconStyle=Large\n",
+ kdeiconstyle => "KDEIconStyle=Large\n",
+ );
+
+ local *INFILE; local *OUTFILE;
+ open INFILE, $inputfile or return;
+ open OUTFILE, ">$outputfile" or return;
+
+ print OUTFILE map {
+ if (my $i = /^\s*\[KDE\]/ ... /^\s*\[/) {
+ if (/^\s*(\w*)=/ && $subst{lc($1)}) {
+ delete $subst{lc($1)};
+ } else {
+ ($i > 1 && /^\s*\[/ && join '', values %subst). $_;
+ }
+ } else {
+ $_;
+ }
+ } <INFILE>;
+
+ unlink $inputfile;
+ rename $outputfile, $inputfile;
+ }
+}
+
+sub kdeicons_postinstall($) {
my ($prefix) = @_;
#- parse etc/fstab file to search for dos/win, zip, cdroms icons.
diff --git a/perl-install/install_steps.pm b/perl-install/install_steps.pm
index 50ebd11b4..669683cb6 100644
--- a/perl-install/install_steps.pm
+++ b/perl-install/install_steps.pm
@@ -543,9 +543,14 @@ sub setupXfreeAfter {
my ($o) = @_;
if ($o->{X}{card}{server} eq 'FBDev') {
unless (install_any::setupFB($o, Xconfigurator::getVGAMode($o->{X}))) {
+ log::l("disabling automatic start-up of X11 if any as setup framebuffer failed");
Xconfigurator::rewriteInittab(3) unless $::testing; #- disable automatic start-up of X11 on error.
}
}
+ if ($o->{X}{card}{default_depth} >= 16 || $o->{X}{card}{default_wres} >= 1024) {
+ log::l("setting large icon style for kde");
+ install_any::kderc_largedisplay($o->{prefix});
+ }
}
#------------------------------------------------------------------------------