I have some static builds of subversion and the scripts used to build
them posted at:
http://www.uncc.org/svntools/clients/
All these packages include an http and https-capable svn client as well
as all the other svn toolset utilities. They also contain an svnserve
setup that tries to wrap up some of the permissions needed for a
repository accessed via svn+ssh:// (see below for details).
This does not include any python/java/perl libs or any stuff for setting
up an Apache server.
Mac OS X Details:
- Built on Panther 10.3.3.
- Disk image containing a double-clickable, installable pkg.
- Installs files in /usr/local/bin
- Dynamically linked to system libz, openssl, etc.
- Statically linked to Berkely DB, Expat, Neon, APR*, Svn*
Linux Details:
- Built on RedHat 7.2
- Tar file extract-able under /usr/local (or other location)
- Dynamically/statically linked same as Mac OS X.
Solaris Details:
- Built on Solaris 8 with Forte C compiler
- Tar file extract-able under /usr/local (or other location)
- Dynamically lined to system libz
- Statically linked to Berkely DB, OpenSSL, Expat, Neon, APR*, Svn*
Berkely DB: 4.2.52
OpenSSL: 0.9.7d (on Solaris -- others use system lib)
Expat: 1.95.7
Neon, APR, Svn*: as included in official subversion 1.0.2 src distrib
RedHat 9/RHEL 3:
- These versions have a newer version of openssl that does
not advertise itself as backward-compatible. Additional
symlinks are needed:
cd /lib
ln -s libcrypto.so.0.9.7a libcrypto.so.2
ln -s libssl.so.0.9.7a libssl.so.2
Build scripts:
- Are included in an svn-build-*.zip file in each directory
alongside the distrib. file. Note that on Solaris a fairly
complete Gnu toolchain as well as the Forte C compiler is
needed.
svnserve setgid wrapper:
- Assumes presense of an "svn" group with gid == 800. Create
this group and add all relevant users to it.
- svnserve installed as a symlink to svnserve.wrapper.
- svnserve.wrapper script installed setgid svn and only readable/
executable by this group. Does umask 007 to ensure correct
repos permissions.
- Real svnserve binary renamed to svnserve.exe with perms set
to be only runnable by svn group members.
- New repositories /must/ be created with correct permissions --
read-writeable by group svn, setgid on repos directories
(optional but recommended), and no perms for other users.
Assuming root perms:
newgrp svn
umask 007
svnadmin create /basedir/repos
find /basedir/repos -type d | chmod g+s
- Ensure that /all/ operations performed on this repository are
done with the svn group and umask 007. This includes things
like nightly hotbackups, dumps, etc.
Received on Tue Apr 20 18:19:10 2004