x.org damage, composite and render extensions
Filed under: xorgI've waited for X to get this forever (well, not so much the extensions, but what they provide). Finally dropshadows. I don't consider dropshadows so much eye-candy (well, a little bit), but more like eye-froot-loops. Tasty, yet still nutritious. Mostly.I've managed to get x.org running dual head with the binary NVidia driver including the render/composite/damage extensions. Here's my xorg.conf:
Section "ServerLayout"
Identifier "Multihead layout"
Screen 0 "Screen0" LeftOf "Screen1"
Screen 1 "Screen1" 0 0
InputDevice "Mouse0" "CorePointer"
InputDevice "Keyboard0" "CoreKeyboard"
Option "Xinerama" "off"
Option "Clone" "off"
EndSection
Section "Extensions"
Option "Composite" "Enable"
Option "RENDER" "Enable"
Option "DAMAGE" "Enable"
EndSection
Section "Files"
RgbPath "/usr/X11R6/lib/X11/rgb"
ModulePath "/usr/X11R6/lib/modules"
FontPath "unix/:7100"
EndSection
Section "Module"
Load "dbe"
Load "extmod"
Load "fbdevhw"
Load "record"
Load "freetype"
Load "type1"
Load "glx"
Load "dri"
Load "GLcore"
EndSection
Section "InputDevice"
Identifier "Keyboard0"
Driver "kbd"
Option "XkbModel" "pc105"
Option "XkbLayout" "us"
EndSection
Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "IMPS/2"
Option "Device" "/dev/input/mice"
Option "ZAxisMapping" "4 5"
Option "Emulate3Buttons" "yes"
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Monitor Vendor"
ModelName "ViewSonic G90f-2"
HorizSync 30.0 - 97.0
VertRefresh 50.0 - 180.0
Option "dpms"
EndSection
Section "Monitor"
Identifier "Monitor1"
VendorName "Monitor Vendor"
ModelName "ViewSonic PF790"
HorizSync 30.0 - 97.0
VertRefresh 50.0 - 180.0
Option "dpms"
EndSection
Section "Device"
Identifier "Card0"
Driver "nvidia"
VendorName "Videocard vendor"
BoardName "NVIDIA GeForce FX (generic)"
Option "AllowGLXWithComposite" "true"
Option "RenderAccel" "true"
Option "BackingStore" "true"
Option "TwinView" "true"
Option "ConnectedMonitor" "CRT, CRT"
Option "MetaModes" "1280x1024,1280x1024"
Option "AllowGLXWithComposite" "true"
# Option "NoRenderExtension" "true"
Option "HorizSync" "CRT-0: 50-110; CRT-1: 50-110"
Option "VertRefresh" "CRT-0: 60-120; CRT-1: 60-120"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Card0"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Depth 24
Modes "1280x1024" "800x600"
EndSubSection
EndSection
Section "Screen"
Identifier "Screen1"
Device "Card0"
Monitor "Monitor1"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Depth 24
Modes "1280x1024" "800x600"
EndSubSection
EndSection
Section "DRI"
Group 0
Mode 0666
EndSection
Upon starting X, I run the following command:
xcompmgr -c -f -F -r 10 -l -12 -t -9 -o 0.75 &
This gives me nice drop shadows, fade-in/out effects, etc.
The system isn't without bugs. Occassionally resizing a window will leave artifacts lying around, windows playing video seem to have issues deciding their z-index, etc. And sometimes (albiet quite rarely these days), X will just go to lunch.
I highly recommend using the absolute latest version of the NVidia driver as most of the fixes seem to be coming from that end.
Have fun.







nice drop shadows (!) (!)