Xmonad/Using xmonad in Ubuntu

From HaskellWiki
Jump to: navigation, search

Tips for Xmonad in Ubuntu


xmonad is available in the Ubuntu package repositories. See: Installing xmonad on Debian and Ubuntu.

Using Without a Desktop Environment (DE)

The advantages of using xmonad in Ubuntu without a full DE are speed and reduced memory use. Here are tips on using xmonad in any of the current Ubuntu distributions without loading XFCE, KDE, or a full Gnome session.

Logging in to your xmonad session

The Ubuntu package for xmonad puts its own entry in the GDM login screen and starts with a simple built-in configuration. Before logging in, click to change the "session" option from Gnome/KDE/XFCE to Xmonad.

Automounting removable media

Removable media is mounted using a volume manager. Normally, Nautilus takes care of this in Gnome and Thunar for XFCE.

There are several lightweight volume manager choices.

  • skvm aims for simplicity and speed.
  • Ivman was originally only for automounting, but now it can run arbitrary commands when a HAL event (closed laptop lid, a certain device is attached) is received.
  • Thunar, XFCE's file manager, can be run as a daemon (thunar --daemon). It can be configured via its GUI to not open a file listing when a device is inserted.

Tray applications

Trayer has been removed from the repositories in Karmic but is still available in the Ubuntu archives: Trayer for Ubuntu Karmic.

There is also a PPA by user gspr which contains trayer.

Status bar

xmobar is in the repositories. sudo apt-get install xmobar, then follow John Goerzen's guide on configuring it.

Network management

nm-applet runs just fine in trayer. Just load nm-applet in your xmonad.hs (after trayer) and you're set.

Configuration notes

Some guides suggest creating your own xmonad.desktop xsession file and calling a custom xmonad.start script. This is not needed as Ubuntu already has an xmonad.desktop file that calls xmonad directly. Startup applications and other scripting should go in your xmonad.hs configuration file.