XFree Local Multi-User HOWTO

Aug 2004

Revision History
Revision 1.42004-08-14SS
add some info on the new IsolateDevice XFree/X.org, drop some stalled comments about ruby-2.6 (a lot more must be removed - linux-2.6 is table now)
Revision 1.32003-11-11SS
Ruby-2.6 is working :) , sync to new BRuby, add config file paths for Gentoo
Revision 1.22003-09-17SS
Lots, lots of stuff. the most major things: XFree-PrefBusID v3, input.rc (and exp. service ruby_init), add "Known Limitations"
Revision 1.12003-07-14SS
sync input agent with examples, a bit more about ruby, less Fix-Me's, additions to video compatibility
Revision 1.02003-05-13TP
Initial release, reviewed by LDP.

Abstract

This HOWTO explains one of the ways to get a working, multiple, local X user-capable PC system for up to 16 users. It is based on using a modified Linux kernel with support for multiple independent users . The second way is not covered here, but on the web page of it's author, the pioneer Miguel Freitas.


Table of Contents

1. Introduction
1. About Backstreet Ruby/ Ruby
2. About this document
3. Related Documentation
4. New versions of this document
5. Copyright and License
6. Disclaimer
7. Credits/Contributors
8. Feedback/Bug Reporting
2. Before we begin
1. Known Limitations
2. XFree configuration files
3. Reusing Xinerama configured XFree
4. Binary packages
3. Installing the kernel
1. Installing the Backstreet Ruby/ Ruby-2.6 kernel
2. Notes on building your own kernel
3. Creating needed device files
4. Notes on using multiple VT's & VGA console
5. Keyboard numbering(order of detection)
4. Setting up the X servers
1. Do I need a modified X server?
2. Installing and Configuring XFree-PrefBusID
3. Creating symbolic links
4. Using independent keyboards with XFree
5. Using independent mice with XFree
6. For graphic cards without DRI
7. Nvidia GLX & DRI
7.1. Example 1
7.2. Example 2
7.3. Installing the Nvidia libraries easily
5. More on configuring input devices
1. Finding the real devices
2. Using hotplug with input.agent and input.rc
2.1. input.agent
2.2. input.rc
3. Using XFree with event interface support
4. Using the Phys descriptor and USB devices
4.1. ... with Input Agent
4.2. ... with XFree with event interface support
6. Configuring display managers
1. Configuring xdm and kdm
2. Configuring gdm
2.1. Changes, Part 1
2.2. Changes, Part 2
7. Tweaking it
1. Using independent sound cards
1.1. Using aRts daemon
2. Customising the login screen
2.1. Using xdm
2.2. Using kdm
2.3. Using gdm
3. 1st X server configuration file
4. Number X servers started by Display managers
5. Dynamically switching the number of X servers
8. Known problems
1. Hardware problems
2. Software problems
2.1. Incompatible userspace program:s
2.2. Tweaks needed
9. Special notes on some distributions
1. Mandrake
2. Red Hat
3. Debian
4. SuSE
10. Final words
A. Video Compatibility list
1. Graphic card pairs/triples that work perfectly
1.1. Modified X server not needed
1.2. Modified X server needed
2. Graphic card pairs/triples that work, but with some glitches
B. Example configuration files
1. XFree86
1.1. 1st XFree server configuration file
1.2. 2nd XFree server configuration file
2. Display managers
2.1. xdm and kdm
2.2. gdm
3. Configuration files for Input Agent
3.1. Keyboard configuration
3.2. Mouse configuration
3.3. Event device configuration
C. Scripts
1. hotplug: input.agent
2. hotplug: input.rc
3. hotplug & XFree supporting event devices: input.agent
4. Wrapper for starting X using Nvidia libGL.so
5. For installing Nvidia drivers for parallel use with DRI
D. Experimental Backstreet Ruby configuration Script/ Service
1. README.ruby_init explains how to configure and use the service.
2. The global configuration file /etc/sysconfig/ruby.conf
3. The ruby_init service /etc/init.d/ruby_init
4. Modified hotplug input.agent /etc/hotplug/input.agent