Download
From Sawfish
| Documentation quick access |
The latest versions of sawfish and its platforms are:
To compile, you also need
- gtk+ >= 2.6 (for the stable series) / >= 2.12 (for the development series)
- pango (optional)
- gdk-pixbuf-xlib OR imlib1 (imlib2 is currently not supported)
- esound / libaudiofile (only up to 1.5.3)
- GNU autotools
Contents |
[edit] Precompiled packages
Several Linux distributions include precompiled packages for sawfish.
[edit] Debian
See sawfish. Also look for pager and other extras.
[edit] 3rd party builds
Additionally you can find pre-built GIT snapshots for Debian/unstable in my 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
Flashrider [Christopher Bratusek] 05:39, October 25, 2009 (UTC)
[edit] Ubuntu
See Ubuntu. It uses Debian derived packages.
[edit] Gentoo
Official portage tree include all three packages, but not always up to date.
For releases of July 2009 (sawfish-1.5.0, rep-gtk-0.18.6r2, and librep-0.90.0), get them from here.
[edit] Other Distros
Other Distributions known to ship Sawfish in their repos (sometimes in Contrib or User repos):
- Arch Linux
- ALT Linux
- openSuSE
- Mandriva
- Frugalware
- T2 Linux
- NetBSD
- OpenBSD
- FreeBSD
[edit] GIT
Alternatively you may use git access to the latest development sources (with no guarantees that they will work correctly, or even compile).
[edit] 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 pullin 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.
[edit] 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.
[edit] 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
[edit] Git ebuilds for Gentoo Linux
Fuchur has made ebuilds here.
Currently (Jul 2009), git source doesn't rely on intltool, but if it's required, apply this patch too.
Fuchur also suggested a good way to try them (in svn) in Gentoo here.
[edit] svn
The subversion repository is not updated any more.
