Sawfish
Advertisement
Documentation quick access

The latest versions of sawfish and its platforms are:

You also need

  • gtk+ >= 2.12
  • pango (optional, but recommended for UTF-8 support)
  • gdk-pixbuf-xlib OR imlib1 (imlib2 is currently not supported)
  • GNU autotools to compile.

Precompiled packages

Several Linux distributions include precompiled packages for sawfish.

Debian

See sawfish. Also look for pager and other extras.

3rd party builds

Additionally you can find pre-built GIT snapshots for Debian/unstable in Chirstopher Bratusek's repo:

deb http://www.nanolx.org/apt/ speedwave main
deb-src http://www.nanolx.org/apt/ speedwave main

The public key is here: http://www.nanolx.org/apt/conf/speedwave.asc

Ubuntu

See Ubuntu. It uses Debian derived packages.

Other Distros

Other Distributions known to ship Sawfish in their repos (sometimes in Contrib or User repos):

  • Arch Linux
  • ALT Linux
  • Gentoo Linux
  • openSuSE
  • Mandriva
  • Frugalware
  • T2 Linux
  • NetBSD
  • OpenBSD
  • FreeBSD

GIT

Alternatively you may use git access to the latest development sources. Usually they work correctly, but with no guarantees, or even they may not compile.

Preparation

For the first time, do

Without write access

git clone git://git.gnome.org/librep
git clone git://git.gnome.org/rep-gtk
git clone git://git.gnome.org/sawfish

With write access

git clone git+ssh://USERNAME@git.gnome.org/git/librep
git clone git+ssh://USERNAME@git.gnome.org/git/rep-gtk
git clone git+ssh://USERNAME@git.gnome.org/git/sawfish

Having all three takes about 40M disk space. Once you "cloned" and have the local repositories, you can update them with:

git pull

in each directory. (Far faster than clone.)

To get a branch:

Without write access

git clone git://git.gnome.org/sawfish
cd sawfish
git branch -r # lists all remote branches
# Suppose you like sawfish-1.5.0 series
git checkout remotes/origin/sawfish-1.5.0 # now you're on the sawfish 1.5x BRANCH

With write access

git clone git+ssh://USERNAME@git.gnome.org/git/sawfish
cd sawfish
git branch -r # lists all remote branches
# Suppose you like sawfish-1.5.0 series
git branch --track -b sawfish-1.5.0 remotes/origin/sawfish-1.5.0 
# now you're on the sawfish 1.5x BRANCH
# with ability to push changes to the remote

You can also browse the web git archives of sawfish, librep, and rep-gtk.

Compilation

To compile the source, you need to install, apart from the normal requierements, the GNU autotools, specificaly automake and autoconf. automake 1.10 and autoconf >= 2.60 have been tested and are known to work.

After getting the source tree, you need to run

autogen.sh (or for older snapshots, aclocal and autoconf before the usual ./configure).

This step may fail if aclocal cannot find the autoconf macros for any of the compile-time requisites. In that case, look for them (they are the files from your -devel packages with an .m4 extension) and add their location to your aclocal call, as

aclocal -I /some/dir -I /some/other/dir

In many cases you could need to install the packages where the missing macros are located. For example:

 pinocchio@balocchi ~/s/sawfish> aclocal
 aclocal:configure.in:148: warning: macro `AM_PATH_REP' not found in library
 aclocal:configure.in:229: warning: macro `AM_PATH_GTK_2_0' not found in library

With some guessing, you should be able to figure out in which package are located these macros: for example in this case they're installed in the librep-dev and libgtk-2.0-dev packages (Debian/Ubuntu). By installing these packages, the corresponding macros will be installed in /usr/share/aclocal, where they're looked up by aclocal, and you shouldn't get error messages anymore.

Other repositories

If someone provides their own git repository access, then you can use them in the following way:

# preparation
git remote add foobar git://foo.bar/baz
git fetch foobar
# list remote branches
git branch -r 
git branch --track foo-tracker foobar/foo-branch
# once you do above, do the following to pull in the HEAD:
git checkout foo-tracker
git pull

Git ebuilds for Gentoo Linux

Fuchur has made ebuilds here.


Fuchur also suggested a good way to try them (in svn) in Gentoo here.

svn

The subversion repository is not updated any more.

Advertisement