The basic instructions on how to apply a patch[]
- Copy/paste the patch listed below into some file, eg.
TEST.diff
. - If you don't have sawfish sources yet, have one, as described get it from GIT repo.
- Go into the directory where sawfish sources reside, eg.
cd sawfish
- Test if the patch applies cleanly with this command:
patch -p1 --ignore-whitespace --dry-run < TEST.diff
in case of problems try also:-p0
or-p2
- If it applies cleanly, then remove the
--dry-run
from above command and run it again, otherwise ask on the mailing list. - Compile sawfish:
./autogen.sh && make
- Install it for testing, but it depends on your linux distribution.
- It is always better to install sawfish as your distribution package, but it is different for each distribution.
- So you may try
make install
, which will install sawifish in/usr/local/share/sawfish/
(if you have write access). But then make sure that you run the correct version and delete it from that directory afterwards, to avoid any conflicts.
- Se also
- how to prepare a patch - this instruction is useful for patch testing also.
- Patch testing howto for practical tips.
PS: edit this template if you feel that those instructions can be improved.
Maintainer's viewpoint[]
- Have read code?
- Tested in which circumstance? OS, linux distro, etc.
- Which points are examined?
- The patched part of code is really executed?
Tester's tips[]
How to apply the patch elegantly[]
Many patches involve only lisp. In such cases, I (Teika kazura)
- make a backup copy of the lisp directory (
/usr/share/sawfish/1.x.y/lisp/sawfish
in my case), - make two directories, 'trunk' and 'test', which are copies of the original, as a non-root.
- Make a symbolic link from the original to 'sawfish' in my private dir,
- and another symlink 'sawfish' chooses 'trunk' or 'test'.
Don't forget to restart the sawfish!
For a drastic change, running sawfish with a different user account, or under nested X server helps.