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.