You are not logged in.
Based on the tutorial of Netpatia, I have successfully managed to setup multiseat with a dualhead (VGA, DVI) card in Archlinux. It involves installing 1 package, creating 2 files, and editing 2 existing files. This tutorial assumes you have gdm and a choice of your favorite desktop environment or window manager. For the time being, it's best that you use similar resolutions for both monitors. Next:
1. Install wmctrl.
2. Create these two files:
#!/bin/bash
# /usr/sbin/Xephyr-login.sh
XAUTH_BASE=/var/lib/gdm/:0.Xauth
DISPL_BASE=:0
XEP=$(XAUTHORITY=$XAUTH_BASE xwininfo -root -children -display :0 | grep "Xephyr on :1" --max-count=1)
echo ${XEP} >> /tmp/logXephyrLogin
# assign values to positional parameters to obtain the id (first parameter) of the Xephyr window
set ${XEP}
DISPLAY=$DISPL_BASE XAUTHORITY=$XAUTH_BASE wmctrl -i -r $1 -e 0,0,768,-1,-1
# echo $1 >> /tmp/logXephyrLogin_1
/usr/lib/gdm/gdmlogin
Make sure that the number "768" in the file Xephyr-login.sh matches the rightside video mode of the resolution you intend to use. For example, if you intend to use 1280x800, choose 800. If you intend to use 1366x768, choose 768.
#!/bin/bash
# /usr/sbin/Xephyr-path.sh
trap "" usr1
XEPHYR=/usr/bin/Xephyr
DISPLAY=:0
XAUTHORITY=/var/lib/gdm/:0.Xauth
args=()
while [ ! -z "$1" ]; do
if [[ "$1" == "-kbdpath" ]]; then
shift
if [ ! -z "$1" ]; then
args=("${args[@]}" "-keybd")
args=("${args[@]}" "evdev,,device=/dev/input/by-path/$1,xkbrules=xorg,xkbmodel=evdev,xkblayout=us")
fi
elif [[ "$1" == "-mousepath" ]]; then
shift
if [ ! -z "$1" ]; then
args=("${args[@]}" "-mouse")
args=("${args[@]}" "evdev,,device=/dev/input/by-path/$1")
fi
else
args=("${args[@]}" "$1")
# echo "+++ args $1 +++" >> /tmp/logXephyr
fi
shift
done
# Next line is just to create a log file with the invocation parameters, for debug purposes
echo $XEPHYR "${args[@]}" >> /tmp/logXephyr
exec $XEPHYR "${args[@]}"
And then issue these commands:
chmod 744 /usr/sbin/Xephyr-login.sh
chmod 744 /usr/sbin/Xephyr-path.sh
chown gdm:gdm /usr/sbin/Xephyr-login.sh
3. Backup your xorg.conf, and replace it with this one while changing what you need to change (Driver, BusID, Modes, Virtual):
Section "Device"
Identifier "Card0"
BoardName "Mobility Radeon HD 3450"
Driver "radeon"
BusID "PCI:2:0:0"
Option "Monitor-VGA-0" "Mon-VGA"
Option "Monitor-DVI-0" "Mon-DVI"
EndSection
Section "Monitor"
Identifier "Mon-VGA"
Option "DPMS"
EndSection
Section "Monitor"
Identifier "Mon-DVI"
Option "DPMS"
Option "Below" "Mon-VGA"
EndSection
Section "Screen"
Identifier "Screen-base"
Device "Card0"
Monitor "Mon-VGA"
DefaultDepth 24
Subsection "Display"
Depth 24
Modes "1024x768"
Virtual 1024 1536
EndSubSection
EndSection
Section "ServerFlags"
Option "AllowMouseOpenFail" "yes"
Option "DontVTSwitch" "yes"
Option "DontZap" "yes"
EndSection
Backup the file /etc/gdm/custom.conf and replace it with this one:
[servers]
0=Xephyr0
1=Xephyr1
2=Xephyr2
[server-Xephyr0]
name=Xephyr0
command=/usr/bin/X -br -dpms -s 0
handled=false
flexible=false
[server-Xephyr1]
name=Xephyr1
command=/usr/sbin/Xephyr-path.sh -br -screen 1024x768 -kbdpath pci-0000:00:02.0-usb-0:2:1.0-event-kbd -mousepath pci-0000:00:02.0-usb-0:1:1.0-event-mouse
handled=true
flexible=false
[server-Xephyr2]
name=Xephyr2
command=/usr/sbin/Xephyr-path.sh -br -screen 1024x768 -kbdpath pci-0000:00:02.0-usb-0:3:1.0-event-kbd -mousepath pci-0000:00:02.0-usb-0:4:1.0-event-mouse
handled=true
flexible=false
[daemon]
Greeter=/usr/sbin/Xephyr-login.sh
Change the resolutions (1024x768) in the file above with the same one in xorg.conf. Also, change keyboard and mouse paths in the file with the ones that match yours. You can get that from these commands:
ls -la /dev/input/by-path/ | grep event | grep kbd
ls -la /dev/input/by-path/ | grep event | grep mouse
Offline
Very nice! Gotta have to try it out!
Should be wikified!
Offline
Thank you
Offline