mirror of
https://github.com/xmonad/xmonad.git
synced 2025-05-19 08:30:21 -07:00
117 lines
3.6 KiB
Plaintext
117 lines
3.6 KiB
Plaintext
xmonad : a tiling 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.
|
|
|
|
Quick start:
|
|
|
|
From hackage:
|
|
|
|
cabal update
|
|
cabal install xmonad xmonad-contrib
|
|
|
|
Alternatively install development snapshots (from darcs):
|
|
|
|
cabal install http://code.haskell.org/xmonad/xmonad.tar.gz \
|
|
http://code.haskell.org/XMonadContrib/xmc.tar.gz
|
|
|
|
For the full story, read on.
|
|
|
|
Building:
|
|
|
|
Building is quite straightforward, and requires a basic Haskell toolchain.
|
|
On many systems xmonad is available as a binary package in your
|
|
package system (e.g. on Debian or Gentoo). If at all possible, use this
|
|
in preference to a source build, as the dependency resolution will be
|
|
simpler.
|
|
|
|
We'll now walk through the complete list of toolchain dependencies.
|
|
|
|
* GHC: the Glasgow Haskell Compiler
|
|
|
|
You first need a Haskell compiler. Your distribution's package
|
|
system will have binaries of GHC (the Glasgow Haskell Compiler), the
|
|
compiler we use, so install that first. If your operating system's
|
|
package system doesn't provide a binary version of GHC and the
|
|
cabal-install tool, you can find an installer for both here:
|
|
|
|
http://haskell.org/platform/
|
|
|
|
It shouldn't be necessary to compile GHC from source -- every common
|
|
system has a pre-build binary version.
|
|
|
|
Alternatively you can install from hackage
|
|
|
|
http://haskell.org/ghc/
|
|
http://haskell.org/cabal/download.html
|
|
|
|
* X11 libraries:
|
|
|
|
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 libxinerama-dev libxext-dev
|
|
|
|
------------------------------------------------------------------------
|
|
|
|
Running xmonad:
|
|
|
|
Add:
|
|
|
|
exec $HOME/.cabal/bin/xmonad
|
|
|
|
to the last line of your .xsession or .xinitrc file.
|
|
|
|
------------------------------------------------------------------------
|
|
|
|
Configuring:
|
|
|
|
See the CONFIG document
|
|
|
|
------------------------------------------------------------------------
|
|
|
|
XMonadContrib
|
|
|
|
There are many extensions to xmonad available in the XMonadContrib
|
|
(xmc) library. Examples include an ion3-like tabbed layout, a
|
|
prompt/program launcher, and various other useful modules.
|
|
XMonadContrib is available at:
|
|
|
|
latest release: http://hackage.haskell.org/package/xmonad-contrib
|
|
|
|
darcs version: darcs get http://code.haskell.org/XMonadContrib
|
|
|
|
------------------------------------------------------------------------
|
|
|
|
Other useful programs:
|
|
|
|
A nicer xterm replacement, that supports resizing better:
|
|
|
|
urxvt http://software.schmorp.de/pkg/rxvt-unicode.html
|
|
|
|
For custom status bars:
|
|
|
|
dzen http://gotmor.googlepages.com/dzen
|
|
xmobar http://hackage.haskell.org/package/xmobar
|
|
|
|
For a program dispatch menu:
|
|
|
|
dmenu http://www.suckless.org/download/
|
|
gmrun (in your package system)
|
|
|
|
Authors:
|
|
|
|
Spencer Janssen
|
|
Don Stewart
|
|
Jason Creighton
|