For historical reasons, I have a 1and1 shared host account with a few sites hosted there.
For more projects, I use Slicehost, which I’ve had great experiences with. Ideally, I’d like to move these 1and1 hosted sites to a Slice, but, my experience with 1and1 has been pretty flawless and two of the sites generate enough income that I am loathe to mess with them. (Other than changing Copyright dates, the code has not been changed in a couple of years. Not broke.)
So…I have this shared hosting. I like to avoid unnecessary expenses, so paying for a Slicehost without a clear money-making purpose is to be avoided. The problem is I’d like a Trac and Subversion setup for my personal stuff. I’ve got a few hosts that I use for various projects, but none are mine alone, so it would be wrong to host my personal stuff one one of them. Thus, I would like to set up Trac and Subversion on 1and1. Tricky. I do not have sudo rights there and can’t configure Apache, for instance.
Here, we will make and install Subversion. Later, I’ll install Python and Trac. Then, integrate them together.
First, download source for Subversion. I went to http://subversion.apache.org/source-code.html, found the source release area link and got the tarball HTTP links for the two tarballs I needed. We’ll create a directory called dev in our home directory and build Subversion there.
You’ll need to do the same so you get the current, stable version of Subversion (1.6.9 when I did this).
mkdir ~/dev cd ~/dev wget http://subversion.tigris.org/downloads/subversion-1.6.9.tar.gz wget http://subversion.tigris.org/downloads/subversion-deps-1.6.9.tar.gz
Esplode da tarballs into a working source tree. The following commands correctly melt the two tarballs into an appropriately named directory.
tar -xzvf subversion-1.6.9.tar.gz tar -xzvf subversion-deps-1.6.9.tar.gz
Build Subversion and install it to a logical place, (~/opt/).
cd subversion-1.6.9 mkdir ~/opt ./configure --prefix=$HOME/opt make make install
Modify your ~/.bash_profile file so you can run Subverison commands without typing the full path.
echo 'export PATH=$HOME/opt/bin:$PATH' >> ~/.bash_profile
Use the source command to reset your environment from your newly modified ~/.bash_profile file.
Test the result.
End of procedure.