Sec, blogmal! - tidbits - xorg-hald

Categories:

Everything

September '17

FrFrFrFrFrFrFr
28293031123
45678910
11121314151617
18192021222324
2526272829301

Archive:

Sun, 15 Mar 2009

Xorg 7.4, hald and a German keyboard

Just now I tried to update the (sadly neglected) FreeBSD installation on my Laptop. One of the bigger changes was the upgrade to Xorg 7.4 which introduces hald. Hald, for those who don't know, is the Hardware Abstraction Layer Daemon, a linuxy invention which spreads it tentacles throughout your system to fix problems FreeBSD didn't yet have – But I digress.

After starting the freshly updated X server you will be in for a treat. It starts all right, but nothing will work, neither keyboard nor mouse. Not even Ctrl+Alt+Backspace.

Ok. Ctrl+Alt+F1 works. So get back to the console and kill the X server.

The problem is, Xorg now tries to use hald by default and if it isn't running, you loose.

The quick fix is to add the following to your xorg.conf:

Section ServerFlags
Option AutoAddDevices off
EndSection

But if you want to do it the new way, there are a few more hurdles to climb.

First, make sure hald is running. Which in turn requires dbus. So put the following two lines into /etc/rc.conf.

dbus_enable="YES"
hald_enable="YES"

and start them with

/etc/rc.d/dbus start
/etc/rc.d/hald start

Now if you start Xorg at least keyboard and mouse should work again. But if your native language isn't English, you will still not be happy, as all your keyboard settings from xorg.conf are now being ignored.

What you have to do is simply drop a file into /usr/local/etc/hal/fdi/policy. The filename doesn't matter, as long as it ends with .fdi.

Its contents look like this:

<?xml version="1.0" encoding="UTF-8"?>
<deviceinfo version="0.2">
<device>
<match key="info.capabilities" contains="input.keyboard">
<merge key="input.x11_driver" type="string">kbd</merge>
<merge key="input.xkb.Model" type="string">thinkpad60</merge>
<merge key="input.xkb.Layout" type="string">de</merge>
<merge key="input.xkb.Rules" type="string">xorg</merge>
<merge key="input.xkb.Options" type="string">ctrl:nocaps</merge>
<merge key="input.xkb.Variant" type="string">nodeadkeys</merge>
</match>
</device>
</deviceinfo>

The values on the right are the ones you previously had in your xorg.conf. So perhaps you might want to use pc105 instead of thinkpad60 for Model.

The lines with ctrl:nocaps and nodeadkeys are for people like me who think caps lock is outdated and deadkeys are silly.

– Sec


posted at: 23:23 | Category: /tidbits | permanent link to this entry | 0 comments (trackback)
 

Your Comment
 
Name:
URL/Email: [http://... or mailto:you@wherever] (optional)
Title: (optional)
Comment:
Save my Name and URL/Email for next time
(Note that comments will be rejected unless you enter 42 in the following box: )

powered by blosxom
in 0.00 s