mirror of
https://github.com/xmonad/xmonad.git
synced 2025-08-01 04:31:53 -07:00
112 lines
3.6 KiB
Plaintext
112 lines
3.6 KiB
Plaintext
xmonad : a lightweight X11 window manager.
|
|
|
|
http://xmonad.org
|
|
|
|
xmonad is a tiling window manager for X. Windows are arranged
|
|
automatically to tile the screen without gaps or overlap, maximising
|
|
screen use. Window manager features are accessible from
|
|
the keyboard: a mouse is optional. xmonad is written, configured and
|
|
extensible in Haskell. Custom layout algorithms, key bindings and
|
|
other extensions may be written by the user in config files. Layouts
|
|
are applied dynamically, and different layouts may be used on each
|
|
workspace. Xinerama is fully supported, allowing windows to be tiled
|
|
on several physical screens.
|
|
|
|
Building:
|
|
|
|
Get the dependencies
|
|
|
|
You first need a Haskell compiler. Your distribution's package
|
|
system will have binaries of GHC (the Glasgow Haskell Compiler), the
|
|
system we use, so install that. If your distro doesn't provide a
|
|
binary, you can find them here:
|
|
|
|
http://haskell.org/ghc
|
|
|
|
For example, in Debian you would install GHC with:
|
|
|
|
apt-get install ghc6
|
|
|
|
Since you're building an X application, you'll need the C X11
|
|
library headers. On many platforms, these come pre-installed. For
|
|
others, such as Debian, you can get them from your package manager:
|
|
|
|
apt-get install libx11-dev
|
|
|
|
Finally, you need the Haskell libraries xmonad depends on. Since
|
|
you've a working GHC installation now, most of these will be
|
|
provided. To check whether you've got a package run 'ghc-pkg list
|
|
some_package_name'. You will need the following packages:
|
|
|
|
mtl http://hackage.haskell.org/cgi-bin/hackage-scripts/package/mtl-1.0
|
|
unix http://hackage.haskell.org/cgi-bin/hackage-scripts/package/unix-2.0
|
|
X11 http://hackage.haskell.org/cgi-bin/hackage-scripts/package/X11-1.3.0
|
|
|
|
And then build xmonad with Cabal as follows (the same goes for the other
|
|
Haskell libraries):
|
|
|
|
runhaskell Setup.lhs configure --user --prefix=$HOME
|
|
runhaskell Setup.lhs build
|
|
runhaskell Setup.lhs install --user
|
|
|
|
And you're done.
|
|
|
|
------------------------------------------------------------------------
|
|
|
|
Notes for using the darcs version
|
|
|
|
If you're building the darcs version of xmonad, be sure to also
|
|
use the darcs version of the X11 library, which is developed
|
|
concurrently with xmonad.
|
|
|
|
darcs get http://darcs.haskell.org/X11
|
|
|
|
Not using X11 from darcs is the most common reason for the
|
|
darcs version of xmonad to fail to build.
|
|
|
|
------------------------------------------------------------------------
|
|
|
|
Running xmonad:
|
|
|
|
Add:
|
|
|
|
$HOME/bin/xmonad
|
|
|
|
to the last line of your .xsession or .xinitrc file.
|
|
|
|
------------------------------------------------------------------------
|
|
|
|
XMonadContrib
|
|
|
|
There are various contributed modules that can be used with xmonad.
|
|
Examples include an ion3-like tabbed layout, a prompt/program launcher,
|
|
and various other useful modules. XMonadContrib is available at:
|
|
|
|
0.4 release: http://www.xmonad.org/XMonadContrib-0.4.tar.gz
|
|
|
|
darcs version: darcs get http://code.haskell.org/XMonadContrib
|
|
|
|
------------------------------------------------------------------------
|
|
|
|
Other useful programs:
|
|
|
|
For a program dispatch menu:
|
|
|
|
dmenu http://www.suckless.org/download/
|
|
or
|
|
gmrun (in your package system)
|
|
|
|
For custom status bars:
|
|
|
|
dzen http://gotmor.googlepages.com/dzen
|
|
|
|
A nicer xterm replacment, that supports resizing better:
|
|
|
|
urxvt http://software.schmorp.de/pkg/rxvt-unicode.html
|
|
|
|
Authors:
|
|
|
|
Spencer Janssen
|
|
Don Stewart
|
|
Jason Creighton
|