summaryrefslogtreecommitdiff
path: root/Hurd/Xfree86.mdwn
blob: 0ed517eace5b01f8a9aa3d531635f0d6ab3d297b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
## <a name="Setup_XFree86_in_GNU"> </a> Setup XFree86 in GNU

This is a brief helper on how to setup X-Window on GNU.

----

### <a name="Mouse_amp_Keyboard"> Mouse &amp; Keyboard </a>

First, set up the keyboard translator:

    # cd /dev
    # ./MAKEDEV kbd

Then the mouse translator. For a serial port mouse this is along the lines of:

    # settrans -c /dev/mouse /hurd/mouse --device=com0 --protocol=microsoft

Make sure that `/dev/com0` actually exists. If it does not, create it using `MAKEDEV` in the usual fashion.

PS/2 mice do not require a device. It is simple a matter of:

    # settrans -c /dev/mouse /hurd/mouse --protocol=ps/2

For other mice, run `/hurd/mouse --help` to get a listing of supported types.

### <a name="Selecting_amp_Configuring_Packag"> Selecting &amp; Configuring Packages </a>

You will need several X packages. The `x-window-system-core` brings you most of what you need:

* `xserver-xfree86`
* `xfonts-base`
* `xfonts-100dpi`
* `xfonts-75dpi`
* `xfonts-scalable`
* `xbase-clients`
* `xutils`
* `rxvt`
* ... as well as your window manager of choice:
  * WindowMaker, `wmaker`
  * FVWM, `fvwm`
  * Blackbox, `blackbox`
  * TWM, `twm`

The recommended way of configuring X is using the `xserver-xfree86` debconf template, eg:

    # dpkg-reconfigure xserver-xfree86

It may be easier to just copy a working configuration from another operation system on the same computer and place it in `/etc/X11/XF86Config-4`, but this is discouraged as you would have to remove some sections by hand.

**_IMPORTANT:_** when you configure X, make sure you do **NOT** enable the `speedo` and `dri` modules because they are currently broken.

### <a name="Edit_XF86Config_4"> Edit XF86Config-4 </a>

Now you have to edit the file manually to ensure that the mouse sections look like this:

    Section "InputDevice"
            Identifier      "Configured Mouse"
            Driver          "mouse"
            Option          "CorePointer"
            Option          "Device"                "/dev/mouse"
            Option          "Protocol"              "osmouse"
    EndSection

    Section "InputDevice"
            Identifier      "Generic Mouse"
            Driver          "mouse"
            Option          "SendCoreEvents"        "true"
            Option          "Device"                "/dev/mouse"
            Option          "Protocol"              "osmouse"
    EndSection

You may also enable the Emulate3Buttons option, but nothing else will work.

            Option          "Emulate3Buttons"       "true"

### <a name="Dynamic_Linking"> Dynamic Linking </a>

The Hurd does not use `ld.so.conf`, it is necessary to add the following to `/etc/profile` to be sure that the libraries are found:

    LD_LIBRARY_PATH=/X11R6/lib:$LD_LIBRARY_PATH

"This is a linker issue. GNU/Hurd expects that \`RPATH' is used, however, Debian takes certain measures to avoid this. Note that this does not cut it for suid binaries because of security implications. We expect to rectify this by using \`RUNPATH', which is specified in the new ELF standard." -- [Why does X not work?](http://www.gnu.org/software/hurd/faq.en.html#q4-8)

### <a name="Starting_X"> Starting X </a>

Finally, run `startx`

However, there are several caveats to be aware of:

* `xterm` does not work correctly; try `rxvt`.
* `update-menu` does not yet work. As such, there are no fine Debian menus.
* GNOME can now be ported with the new pthreads, but is still being worked on. Window Maker, TWM, Blackbox and FVWM all work.

----

Created. -- [[Main/RobertMillan]] - 21 Nov 2002

Some text formatting. -- [[Main/OgnyanKulev]] - 05 Dec 2002

Dito. -- [[Main/JoachimNilsson]] - 12 Jan 2003