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 (AMD64 and Source) in Christopher Bratusek's repo:

deb http://apt.nanolx.org/ photonic main
deb-src http://apt.nanolx.org/ photonic main

For getting the public key, issue:

wget http://apt.nanolx.org/photonic.asc
apt-key add apt-key.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):

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

GIT

The latest development sources are stored in git repository. (With no guarantees, or even they may not compile. Sawfish is quite stable, so it is rare, though.)

  • The web git interfaces are: sawfish, librep, and rep-gtk.
  • Unofficial tarball of the snapshot of sawfish and librep. They may be a bit older than the official git repository.

Remark on versions

If the current release of the Sawfish is, say, 1.2.3, then the git source is usually given the version 1.2.4 or 1.3.0, that is of the next (planned) release.

Sometimes you have to install the latest librep and rep-gtk, too. Read the "News" well.

Preparation

For the first time, do

Normal access

git clone git://git.gnome.org/librep
git clone git://git.gnome.org/rep-gtk
git clone git://git.gnome.org/sawfish
git clone git://git.tuxfamily.org/gitroot/sawfishpager/pager.git

For developers, 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
git clone ssh://USERNAME@git.tuxfamily.org/gitroot/sawfishpager/pager.git

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.)

Branches

Accessing a branch

Normal 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

For developers 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

Compilation

To compile the source, you need 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

Troubleshooting

The above 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 some cases you 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_PROG_LIBTOOL' 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 it's installed in libtool package (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.

Old issues

For old sources, you have to run, instead of autogen.sh, aclocal and autoconf before the usual ./configure)

SVN

The subversion repository is not updated any more.

Download Statistics

Advertisement