Archive for April, 2009

svn+ssl on solaris

April 8, 2009

1. ./configure –prefix=/usr/local/subversion –with-ssl –with-apr=/usr/local/apache2/bin –with-apr-util=/usr/local/apache2/bin –with-apxs=/usr/local/apache2/bin/apxs –with-neon=/opt/neon

2. make change to Makefile

[ for sparc solaris only before that install libgettex and export gettext lib path to LD_LIBRARY_PATH]

add -lgettextlib -lintl to following two lines

SVN_APR_LIBS

SVN_APRUTIL_LIBS

Before compiling subversion please make sure neon was compiled with proper options

./configure –prefix=/usr/local/neon –with-ssl –enable-shared –with-libs=/usr/sfw/lib (on Solaris box only)

Now to access through http we need to add the following to apache config file-

<Location /svn/>
DAV svn
SVNParentPath /svn/
SVNListParentPath on
#SVNIndexXSLT “/.svnindex.xsl”

# our access control policy
#AuthzSVNAccessFile /svn/.svnaccess

# try anonymous access first, resort to real
# authentication if necessary.
#Satisfy Any
SVNPathAuthz off

# how to authenticate a user
AuthType Basic
AuthName “Therap Subversion repository”
AuthUserFile /svn/.svnauthfile
Require valid-user
</Location>
CustomLog logs/svn_logfile “%t %u %{SVN-ACTION}e” env=SVN-ACTION

Creating authentication to access svn repo

htpasswd -c /svn/.svnauthfile <user>

WebSVN:

Place the unzipped files of websvn source to your apache doc root. and Fisrt copy the distconfig.php as config.inc and uncomment the following two lines on config.inc

$config->parentPath("/svn/repos");
$config->setTemplatePath("$locwebsvnreal/templates/BlueGrey/");

Now copy config.inc as config.php and then open up “http://yourhostname/<websvn>&#8221;

Sometimes you may get an error like this –

Error running this command: svn –config-dir /tmp –version

It looks like websvn can’t find svn.
In webvsn/include/config.php there are directives for specifying the path for diff, tar, gzip etc. but not for svn.

There is such a config setting in the config.php.
It is the following function:
$config->setSVNC‚Äč ommandPath(‘Path‚Äč/to/svn’);

Use this setting to configure if your commands (e.g. svn) aren’t on your path.