Changed X server upstart expression a bit, now works for my Intel 915GM notebook (with vesa at least).

svn path=/nixos/trunk/; revision=9364
This commit is contained in:
Michael Raskin 2007-09-24 05:16:15 +00:00
parent b9dd7509b6
commit 8f126de2fb
4 changed files with 19 additions and 6 deletions

View File

@ -676,6 +676,16 @@
"; ";
} }
{
name = ["services" "xserver" "isClone"];
default = "on";
example = "off";
description = "
Whether to enable the X server clone mode for dual-head.
";
}
{ {
name = ["services" "httpd" "enable"]; name = ["services" "httpd" "enable"];

View File

@ -162,6 +162,7 @@ import ../upstart-jobs/gather.nix {
libX11 = pkgs.xlibs.libX11; libX11 = pkgs.xlibs.libX11;
libXext = pkgs.xlibs.libXext; libXext = pkgs.xlibs.libXext;
fontDirectories = import ../system/fonts.nix {inherit pkgs;}; fontDirectories = import ../system/fonts.nix {inherit pkgs;};
isClone = config.get ["services" "xserver" "isClone"];
}) })
# Apache httpd. # Apache httpd.

View File

@ -73,7 +73,7 @@ EndSection
Section "Device" Section "Device"
Identifier "Device[0]" Identifier "Device[0]"
Driver "@videoDriver@" Driver "@videoDriver@"
Option "Clone" "On" Option "Clone" "@isClone@"
#Option "MonitorLayout" "CRT,LFP" #Option "MonitorLayout" "CRT,LFP"
Option "MonitorLayout" "LVDS,CRT" Option "MonitorLayout" "LVDS,CRT"
@device@ @device@

View File

@ -16,6 +16,8 @@
, # List of font directories. , # List of font directories.
fontDirectories fontDirectories
, # Is Clone mode on?
isClone ? "on"
}: }:
let let
@ -68,7 +70,7 @@ let
configFile = stdenv.mkDerivation { configFile = stdenv.mkDerivation {
name = "xserver.conf"; name = "xserver.conf";
src = ./xserver.conf; src = ./xserver.conf;
inherit fontDirectories videoDriver resolutions; inherit fontDirectories videoDriver resolutions isClone;
buildCommand = " buildCommand = "
buildCommand= # urgh, don't substitute this buildCommand= # urgh, don't substitute this
@ -76,7 +78,7 @@ let
for i in $fontDirectories; do for i in $fontDirectories; do
if test \"\${i:0:\${#NIX_STORE}}\" == \"$NIX_STORE\"; then if test \"\${i:0:\${#NIX_STORE}}\" == \"$NIX_STORE\"; then
for j in $(find $i -name fonts.dir); do for j in $(find $i -name fonts.dir); do
fontPaths=\"\${fontPaths}FontPath \\\"$(dirname $j)\\\"\\n\" fontPaths=\"\${fontPaths}FontPath \\\"$(dirname $j)\\\"\n\"
done done
fi fi
done done
@ -84,13 +86,13 @@ let
export modulePaths= export modulePaths=
for i in $(find ${toString modules} -type d); do for i in $(find ${toString modules} -type d); do
if ls $i/*.so 2> /dev/null; then if ls $i/*.so 2> /dev/null; then
modulePaths=\"\${modulePaths}ModulePath \\\"$i\\\"\\n\" modulePaths=\"\${modulePaths}ModulePath \\\"$i\\\"\n\"
fi fi
done done
#if only my gf were this dirty #if only my gf were this dirty
if test \"${toString videoDriver}\" == \"nvidia\"; then if test \"${toString videoDriver}\" == \"nvidia\"; then
export moduleSection=\"Load \\\"glx\\\" \\n \\ export moduleSection=\"Load \\\"glx\\\" \\
SubSection \\\"extmod\\\" \\n \\ SubSection \\\"extmod\\\" \\n \\
Option \\\"omit xfree86-dga\\\" \\n \\ Option \\\"omit xfree86-dga\\\" \\n \\
EndSubSection \\n \" EndSubSection \\n \"
@ -103,7 +105,7 @@ let
export extensions=\"Option \\\"Composite\\\" \\\"Enable\\\" \\n \" export extensions=\"Option \\\"Composite\\\" \\\"Enable\\\" \\n \"
else else
export moduleSection='Load \"glx\" \\n \\ export moduleSection='Load \"glx\"
Load \"dri\" ' Load \"dri\" '
export screen= export screen=
export device= export device=