April 16, 2009

Xorg Update crashes …

Posted in Linux tagged , at 8:12 am by Karel MALBROUKOU

Gosh! I updated my Xorg last week on my Gentoo.
No mouse, no keyboard in X!

How to do … Easy!
Guys, I’ll teach you how to fix it 😛 Hope you have a Console-based Web client or another computer to check this out…

Now Xorg is using HAL (Hardware Abstraction Layer), but also, Xorg is not using mouse and keyboard for the input drivers, but evdev.

So how to enable HAL and evdev on Gentoo:
1. First of all, inside your /etc/make.conf, be sure that inside the variable INPUT_DEVICES, you have evdev.
2. If you added evdev to your make.conf, re-install x11-base/xorg-server.
3. Be sure that the package sys-app/hal is installed and that the daemon hal is running (/etc/init.d/hald status). If not, run it using: /etc/init.d/hald start.
4. You need to configure the daemon HAL if Xorg is still not working.
Create the file /etc/hal/fdi/policy/10-x11-input.fdi with the following content:


<?xml version="1.0" encoding="ISO-8859-1"?>
<deviceinfo version="0.2">
<device>
<!-- FIXME: Support tablets too. -->
<match key="info.capabilities" contains="input.mouse">
<merge key="input.x11_driver" type="string">mouse</merge>
<match key="/org/freedesktop/Hal/devices/computer:system.kernel.name"
string="Linux">
<merge key="input.x11_driver" type="string">evdev</merge>
</match>
</match>

<match key="info.capabilities" contains="input.touchpad">
<merge key="input.x11_driver" type="string">mouse</merge>
<match key="/org/freedesktop/Hal/devices/computer:system.kernel.name"
string="Linux">
<merge key="input.x11_driver" type="string">evdev</merge>
</match>
</match>

<match key="info.capabilities" contains="input.keys">
<!-- If we're using Linux, we use evdev by default (falling back to
keyboard otherwise). -->
<merge key="input.x11_driver" type="string">keyboard</merge>
<match key="/org/freedesktop/Hal/devices/computer:system.kernel.name"
string="Linux">
<merge key="input.x11_driver" type="string">evdev</merge>
</match>
</match>
</device>
</deviceinfo>

5. Restart HAL, and try again your X.

That should just work 😛
Good Luck!

NB: To test input on X, to avoid reboots of your computer everytime if input does not work, use two different TTY. On the first one, type: sleep 10; killall X and on the second one: X
That way, X will be killed after starting.

Advertisements

1 Comment »

  1. Hi, nice post. I have been pondering this topic,so thanks for posting. I will probably be coming back to your posts. Keep up great writing


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: