Install the modified XFree server.
Install an already built, but not packaged, modified X server and create the necessary symbolic links. You can get such binaries from the Backstreet Ruby home page, at http://startx.times.lv.
Help us (as well other people using your distribution) in building an rpm or binary for your distribution (we lack systems installed with all available distributions, so we are not able to build packages for every distribution).
To patch and rebuild XFree from source using the instructions on the Backstreet Ruby page. Go to the Documentation section, at http://startx.times.lv (or some of the mirrors) -> Documentation -> Quick XFree.
Find the BusID of your graphic cards
Note | |
---|---|
For AGP cards, something similar to "1:0:0" For PCI cards, something similar to "0:xx:0" |
In most cases you will find the BusID already set in the device section of the XFree configuration file.
(Virtually always in case XFree is configured for Xinerama.)
If it is missing you can use lspci, XFree86 -scanpci -verbose or other similar tools that came with your distribution.
With lspci look for "VGA compatible controller" or other similar tools that came with your distribution.
root@svetljo mnt]# lspci | grep "VGA compatible controller" 00:0d.0 VGA compatible controller: nVidia Corporation NV17 [GeForce4 MX 420] (rev a3) 01:00.0 VGA compatible controller: ATI Technologies Inc Radeon RV200 QW [Radeon 7500] [root@svetljo mnt]# |
With XFree86 -scanpci -verbose , or in case XFree is already running XFree86 :1 -scanpci -verbose and look for your graphic cards:
[root@svetljo mnt]# XFree86 :1 -scanpci -verbose ...... (0:13:0) unknown card (0x1462/0x8852) using a nVidia Corporation NV17 [GeForce4 MX 420] ...... (1:0:0) unknown card (0x1002/0x0f2a) using a ATI Technologies Inc Radeon RV200 QW [Radeon 7500] |
Configure XFree-PrefBusID. You have the following choices with the same effect:
Use the XFree config file option "SingleCard" , requires as argument a boolean value(true/false), added in patch version 3
For use in multi-user environment set to true, for standard XFree behavior(single X server allowed) to false or comment out/ delete the line.
Use the XFree config file option "PrefBusID" , requires as argument a valid BusID, added in patch version 2
For use in multi-user environment include the option with a valid BusID, for standard XFree behavior(single X server allowed) comment out or delete.
Use the XFree command line option -prefbusid x:x:x , requires as argument a valid BusID, initial release of the patch
For use in multi-user environment pass the option with a valid BusID to XFree at start-up, for standard XFree behavior(single X server allowed) don't specify the option.
Note | |
---|---|
|
using the "SingleCard" option
Section "ServerLayout" Identifier "X0" Screen 0 "Screen0" 0 0 InputDevice "Mouse0" "CorePointer" InputDevice "Keyboard0" "CoreKeyboard" Option "SingleCard" "true" EndSection Section "ServerLayout" Identifier "X1" Screen 0 "Screen1" 0 0 InputDevice "Mouse1" "CorePointer" InputDevice "Keyboard0" "CoreKeyboard" Option "SingleCard" "true" EndSection |
Note | ||
---|---|---|
The BusID have to be specified in the "Device" Section of the XFree configuration file.
|
using the "PrefBusID" option (requires as argument a valid BusID)
Section "ServerLayout" Identifier "X0" Screen 0 "Screen0" 0 0 InputDevice "Mouse0" "CorePointer" InputDevice "Keyboard0" "CoreKeyboard" Option "PrefBusID" "1:0:0" EndSection Section "ServerLayout" Identifier "X1" Screen 0 "Screen1" 0 0 InputDevice "Mouse1" "CorePointer" InputDevice "Keyboard0" "CoreKeyboard" Option "PrefBusID" "0:13:0" EndSection |
using the "-prefbusid" option at XFree start-up (requires as argument a valid BusID)
Caution | |
---|---|
For the older(version 1) Preferred Bus ID XFree Server only this choice is valid. |
For example on command line
[root@svetljo mnt]# startx -- /usr/X11R6/bin/X0 :0 -prefbusid 1:0:0 vt7 |
.............................. # Definition of the standard X server. [server-Standard] name=Standard server command=/usr/X11R6/bin/X0 :0 -layout first-Xserver -deferglyphs 16 -ac -prefbusid 1:0:0 vt7 flexible=true [server-Second] name=Second server command=/usr/X11R6/bin/X1 :1 -layout second-Xserver -deferglyphs 16 -prefbusid 0:13:0 vt17 flexible=true .............................. |
:0 local /bin/nice -n -10 /usr/X11R6/bin/X0 :0 -deferglyphs 16 -prefbusid 1:0:0 vt7 :1 local /bin/nice -n -10 /usr/X11R6/bin/X1 :1 -xf86config /etc/X11/XF86Config-4.TNT2 -prefbusid 0:13:0 vt17 |