subtle has the following dependencies:

  1. Ruby (>=1.9)
  2. Rake (>=0.8)
  3. X11 (>=6.8.2)

And the following optional gem dependencies for sur:

  1. archive-tar-minitar (>=0.5.2)
  2. datamapper (>=0.9.11) (surserver only)
  3. sinatra (>=0.9.4) (surserver only)


If you are using one of the supported distributions, you can follow the appropriate installation instructions below to install the stable version of subtle or you can choose to follow the directions at the end of the page to install the latest development version.



Currently there are two different packages available:

The stable version is in community and can be installed with pacman, the developer snapshot is in AUR and needs either a special tool like yaourt, clyde or packer or can be installed manually.


There is a package in unstable and in testing for the stable version of subtle, but if you prefer bleeding-edge you can compile subtle on your own:

  1. Install the dependencies with apt-get: libx11-dev, rake1.9.1, ruby1.9.1, ruby1.9.1-dev, pkg-config
    sudo apt-get install libx11-dev ruby1.9.1 ruby1.9.1-dev pkg-config

    rake1.9.1 is included in ruby1.9.1 rather than as a separate package

  2. (Optional) Install optional dependencies for RandR, Xft, Xinerama, and Xpm with apt-get: libxrandr-dev, libxft-dev, libxinerama-dev, libxpm-dev
    sudo apt-get install libxrandr-dev libxft-dev libxinerama-dev libxpm-dev
  3. Download either the latest stable package or clone the Mercurial repository
  4. Change dir into the subtle folder (stable or latest) and issue rake:

    This should configure and get you ready for install

  5. Issue the following command to install it:
    sudo rake1.9.1 install


Make sure to update jedahan's repository

cave resolve -x jedahan

Then install subtle like so

cave resolve -x subtle


There is a subtle overlay with "ebuilds" for the stable and devel version available, just add it with layman: (layman userguide)

layman -a subforge


There are rpm packages for subtle available in the openSUSE Buildservice.

Search for subtle in the opensuse build service But click on "Search Options" and activate "Search for Home Projects"
At the moment there are builds for openSUSE11.4, openSUSE12.1 and openSUSE Tumbleweed.

Simply add the repository via zypper to the package management. This example is for openSUSE 12.1

sudo zypper ar --refresh home_seilerphilipp

Refresh and trust the repository (temporary)

sudo zypper refresh

Then install subtle and it's dependencies

sudo zypper in subtle


There is a Debian port of the latest stable in universe, but if you prefer bleeding-edge you can compile subtle on your own:

Tested on Ubuntu Maverick (10.10) and Natty (11.04)

Since a pre-compiled package for Ubuntu doesn't exist yet, you will need to compile subtle to get it up and running.

  1. Install subtle's dependencies (libx11-dev, ruby1.9.1, ruby1.9.1-dev, libruby1.9.1 and rake) using apt-get:
    sudo apt-get install libx11-dev rake ruby1.9.1 ruby1.9.1-dev libruby1.9.1
  2. Download the latest archive from the files page, and extract its contents:
          curl -O
          tar xvf subtle-0.9.2773-mu.tbz2

    Note that the current version number may differ from that shown in these example commands, so make sure you visit the files section to get the latest and greatest version/filename.
  3. Now go in the newly created folder and run rake (rake1.9.1 to use the latest version), which will configure and prepare subtle for installation:
        cd subtle-0.9.2773-mu/
  4. Issue the following command to install subtle:
    sudo rake1.9.1 install
  5. Add a subtle session to your xsessions:
    sudo nano /usr/share/xsessions/subtle.desktop

    And add this:

        [Desktop Entry]
        Comment=subtle tiling window manager
  6. Finally, reboot and enjoy subtle!
Note for PulseAudio users

If you are using PulseAudio and want to start subtle using just your xinitrc, you can get working audio by adding the following line to your .xinitrc file:

exec ck-launch-session subtle

Install Development Version

You can install the current development version of subtle by cloning and installing from the Mercurial subtle repository:

  1. hg clone
  2. cd subtle
  3. rake [options]
  4. sudo rake install

The installer will copy the files to following XDG default path: (see: rake help)

Binaries /usr/bin
Config /etc/xdg/subtle
Extension (Ruby Dir)/subtle

The paths can be easily changed (see: rake help) and are printed after configuring is done.

The buildsystem creates cache files to keep track of the settings and to speed up further builds. When you want to change compile options and/or the Ruby version you must must delete the cache files before or otherwise the build may fail. This can be done with rake clobber.


To enable debugging messages and levels, subtle must be compiled with debugging support. Since there is usually no debugging package available, it needs to be compiled manually:

  1. hg clone
  2. cd subtle
  3. rake debug=yes
  4. rake install

subtle can be run directly from the source directory with no need to install it system-wide, just add it to e.g. your ~/.xinitrc.