~$ [ -s /etc/X11/xorg.conf ] ; echo $?
1

Yes, it is an empty file! I have just upgraded xorg to the experimental packages. hal does its job, and all devices are automatically detected and configured.
This is actually a great improvement, especially for those who had to fight against the XFree86 configuration file just to get a graphical session working, back in the late 90′s.

The only thing I had to do is creating an /etc/hal/fdi/policy/10-keymap.fdi file with the following contents, so that GDM has a correct keyboard layout (French in my case):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?xml version="1.0" encoding="ISO-8859-1"?> <!-- -*- SGML -*- -->
<deviceinfo version="0.2">
  <device>
    <match key="info.capabilities" contains="input.keymap">
      <append key="info.callouts.add" type="strlist">hal-setup-keymap</append>
    </match>
 
    <match key="info.capabilities" contains="input.keys">
      <merge key="input.xkb.rules" type="string">base</merge>
 
      <!-- If we're using Linux, we use evdev by default (falling back to
           keyboard otherwise). -->
      <merge key="input.xkb.model" type="string">keyboard</merge>
      <match key="/org/freedesktop/Hal/devices/computer:system.kernel.name"
             string="Linux">
        <merge key="input.xkb.model" type="string">evdev</merge>
      </match>
 
      <merge key="input.xkb.layout" type="string">fr</merge>
      <merge key="input.xkb.variant" type="string">latin9</merge>
      <merge key="input.xkb.options" type="string">compose:lwin</merge>
  </match>
  </device>
</deviceinfo>