# Setting up Xorg on Debian GNU/Hurd #### Table Of Contents %TOC% This is a brief helper on how to setup Xorg on Debian GNU/Hurd. Obviously this text is taken from the page but I was making such drastic changes, I didn't want to hack up that page. ### Mouse & Keyboard See [[HurdConsole]] for more details. You should instruct the Hurd console to repeat keyboard events to `/dev/cons/kbd`, and mouse events to `/dev/cons/mouse`: # console -d vga -d pc_kbd --repeat=kbd -d generic_speaker \ -d pc_mouse --repeat=mouse --protocol=ps/2 -c /dev/vcs Symbolic links to repeaters should also be created: # ln -s /dev/cons/kbd /dev/kbd # ln -s /dev/cons/mouse /dev/mouse **BDd: Is this already done in the Debian package?** ### Selecting & Configuring Packages BDd: You currently need to pull a couple of packages from youpi's repo. You will need several X packages. The `xserver-xorg` brings you most of what you need: * `xserver-xorg` * `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` I know that Window Maker works, however, I cannot attest to the others. xfce4 is broken. The recommended way of configuring X is using the `xserver-xorg` debconf template, eg: # dpkg-reconfigure xserver-xorg This currently seems to be broken in the Debian package so you will probably have to create xorg.conf by hand. It may be easier to just copy a working configuration from another operating system on the same computer and place it in `/etc/X11/xorg.conf`, 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. **BDd: I cannot attest to this currently.** ### Edit xorg.conf Here is an example of my xorg.conf: # /etc/X11/xorg.conf (xorg X Window System server configuration file) # # This file was generated by dexconf, the Debian X Configuration tool, using # values from the debconf database. # # Edit this file with caution, and see the /etc/X11/xorg.conf manual page. # (Type "man /etc/X11/xorg.conf" at the shell prompt.) # # This file is automatically updated on xserver-xorg package upgrades *only* # if it has not been modified since the last upgrade of the xserver-xorg # package. # # If you have edited this file but would like it to be automatically updated # again, run the following command: # sudo dpkg-reconfigure -phigh xserver-xorg Section "Files" FontPath "/usr/share/X11/fonts/misc" FontPath "/usr/share/X11/fonts/cyrillic" FontPath "/usr/share/X11/fonts/100dpi/:unscaled" FontPath "/usr/share/X11/fonts/75dpi/:unscaled" FontPath "/usr/share/X11/fonts/Type1" FontPath "/usr/share/X11/fonts/CID" FontPath "/usr/share/X11/fonts/100dpi" FontPath "/usr/share/X11/fonts/75dpi" # paths to defoma fonts FontPath "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType" FontPath "/var/lib/defoma/x-ttcidfont-conf.d/dirs/CID" EndSection Section "Module" Load "GLcore" Load "i2c" Load "bitmap" Load "ddc" Load "extmod" Load "freetype" Load "glx" Load "int10" Load "type1" Load "vbe" EndSection Section "InputDevice" Identifier "Generic Keyboard" Driver "kbd" Option "CoreKeyboard" Option "XkbRules" "xorg" Option "XkbModel" "pc104" Option "XkbLayout" "us" EndSection Section "InputDevice" Identifier "Configured Mouse" Driver "mouse" Option "CorePointer" Option "Device" "/dev/mouse" Option "Protocol" "osmouse" Option "Emulate3Buttons" "true" Option "ZAxisMapping" "4 5" EndSection Section "InputDevice" Identifier "Synaptics Touchpad" Driver "synaptics" Option "SendCoreEvents" "true" Option "Device" "/dev/psaux" Option "Protocol" "auto-dev" Option "HorizScrollDelta" "0" EndSection Section "Device" Identifier "Videocard0" Driver "ati" EndSection Section "Monitor" Identifier "Monitor0" VendorName "Dell" HorizSync 31.5 - 90.0 VertRefresh 59.0 - 85.0 Option "DPMS" EndSection Section "Screen" Identifier "Screen0" Device "Videocard0" Monitor "Monitor0" DefaultDepth 24 SubSection "Display" Depth 1 Modes "1024x768" EndSubSection SubSection "Display" Depth 4 Modes "1024x768" EndSubSection SubSection "Display" Depth 8 Modes "1024x768" EndSubSection SubSection "Display" Depth 15 Modes "1024x768" EndSubSection SubSection "Display" Depth 16 Modes "1024x768" EndSubSection SubSection "Display" Depth 24 Modes "1024x768" EndSubSection EndSection Section "DRI" Mode 0666 EndSection ### Dynamic Linking 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) **_CAVEAT 12/28/2004:_** I did not have to do this so can someone verify that this still needs to be done or was it fixed? Thanks! ### Starting X Finally, run `startx` However, there are several caveats to be aware of: * `xterm` does not work correctly; try `rxvt`. **_UPDATE 3/2/2006_**: xterm works fine for me from youpi's repo. * `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. **_WARNING:_** If you get an error about opening the display or a permissions issue, you may need to run the following: # dpkg-reconfigure xserver-common change from "Console Users Only" to "Anybody" ### Miscellaneous For you xchat lovers like me, xchat will compile if you disable the python module. (The python module causes an assertion failure in pthreads if one of you guru's wants to fix and package. **hint,hint**) Good luck and enjoy! ---- -- [[Main/BarryDeFreese]] - 02 Mar 2006