Documentation quick access |
|
The latest versions of sawfish and its platforms are:
You also need
- gtk+ >= 2.24
- 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 packages for Debian/Unstable (AMD64 and Source) in Christopher Bratusek's repo: (doesn't work any more)
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 photonic.asc
Ubuntu
See Ubuntu. It uses Debian derived packages. See also the debian section above for deb-src.
Gentoo
Sawfish-1.8.x & librep's ebuilds are included in official portage tree.
Fedora
Sawfish is included to Fedora 15 and newer. Use "yum install sawfish" command.
Other Distros
Other Distributions known to ship Sawfish in their repos (sometimes in Contrib or User repos):
- GNU/Linux
- Arch Linux
- ALT Linux
- openSuSE
- Mandriva
- Frugalware
- T2 Linux
- BSD
- NetBSD
- OpenBSD
- FreeBSD
Compilation from source
It's easy to compile from the source on your own, once get accustomed. See Compilation from source for the basic instruction.
In order to get the latest sawfish release with all the newest add-ons and help developers beta-test at the same time you can see Compilation from GIT. As an alternative Snapshot releases are being rolled-out.
Even when you compile from the source, use the package manager and don't do make install
from the shell. It's likely to get into trouble at upgrading, often from inteference from the old files.
In Debian, deb-src is provided. See above. In Red-Hat based distros, fetch the source and use the *.spec provided. It's not officially maintained, so you may have to modify it manually.
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, rep-gtk and sawfish-pager.
- 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.tuxfamily.org/gitroot/librep/main.git librep git clone git://git.tuxfamily.org/gitroot/librep/gtk.git rep-gtk git clone git://git.tuxfamily.org/gitroot/sawfish/main.git sawfish git clone git://git.tuxfamily.org/gitroot/sawfishpager/pager.git sawfish-pager
For developers, with write access
git clone ssh://USERNAME@git.tuxfamily.org/gitroot/librep/main.git librep git clone ssh://USERNAME@git.tuxfamily.org/gitroot/librep/gtk.git rep-gtk git clone ssh://USERNAME@git.tuxfamily.org/gitroot/sawfish/main.git sawfish git clone ssh://USERNAME@git.tuxfamily.org/gitroot/sawfishpager/pager.git sawfish-pager
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.tuxfamily.org/gitroot/sawfish/main.git 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 ssh://USERNAME@git.tuxfamily.org/gitroot/sawfish/main.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, autoconf and libtool. 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.
Alternative 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 # create a branch in your filesystem which tracks foobar git checkout -b foo-tracker foobar/foo-branch # Receive updates 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 Gentoo here. It was written for svn, but the required change is obvious.
Old issues
For old sources, you have to run, instead of autogen.sh
, aclocal
and autoconf
before the usual ./configure
)
Download Statistics
- http://stats.download.tuxfamily.org/sawfish for Sawfish (and librep/rep-gtk up to 2011-02-27)
- http://stats.download.tuxfamily.org/librep for librep and rep-gtk (since 2011-02-27)
- http://stats.download.tuxfamily.org/sawfishpager for sawfish-pager.