SVN: subversion on Solaris

Posted on Monday 18 February 2008

I was setting up my subversion server on a Linux Ubuntu machine today. Not a simple task. However, setting up a Solaris subversion is not necessarily a simple one either. Solaris binaries can be found in one of two places:

For Solaris 10 it was simple.  Download the package.  Install as root (pkgadd -d).

Once installed:
/opt/CollabNet_Subversion/bin/svn import brixWorx svn+ssh://192.168.1.100/media/data/svn/brixWorx/

For Solaris 9, download from SunFreeware all the stuff you need.  The list is very long.  Download and install with pkgadd -d :

  • apache-2.0.59 (for subversion 1.4.3) and apache-2.2.6 (for subversion-1.4.5)
  • neon-0.25.5
  • swig-1.3.29
  • openssl-0.9.8f
  • db-4.2.52.NC
  • expat-1.95.5
  • gdbm-1.8.3
  • libiconv-1.11
  • libxml2-2.6.26
  • zlib-1.2.3

Command:
/usr/local/bin/svn import serviceDirector svn+ssh://192.168.1.100/media/data/svn/serviceDirector/

In either case you probably need your environment to have:
SVN_EDITOR=/bin/vi
export SVN_EDITOR

joseanes @ 12:24 pm
Filed under: Solaris
Solaris: Unix: Gathering System Information

Posted on Monday 18 February 2008

Processor Type:
/usr/sbin/psrinfo -v
Enable / Disable Processors:
/usr/sbin/psradm -n processor_id
/usr/sbin/psradm -f processor_id

RAM:
/usr/sbin/prtconf | grep Memory

Disk:
df -lk

Source: http://www.brandonhutchinson.com/

joseanes @ 6:33 am
Filed under: Solaris and Unix
Ubuntu: Getting Apache And SubVersion Module Working Together

Posted on Saturday 16 February 2008

I tried the simple stuff:

apt-get install subversion

It got me somewhere, but I wasn’t able to find the module for apache2. Maybe it is hidden somewhere within the Ubuntu installation. Who knows. I also tried the procedure described on the Ubuntu Forum to no avail. It requires

So I decided to go the old, traditional route: lots of compiling.

First install neon. You know the drill: gunzip <file>; tar -xvf <file>; ./configure ; make ; make install

Then, downloaded subversion from its website. Know the same drill again.

When doing the make install, it complained on my system. It is because Ubuntu handles modules differently than most other systems. In Ubuntu, modules are not loaded on httpd.conf, but in a directory called mods-enabled.

I had to manually edit the /etc/apache2/httpd.conf file (empty by default) to contain a LoadModule entry (a dummy one). I re-ran the make install and found the two module entries that I had to copy. Just for safety, I moved them inside a new file I created called /etc/apache2/mods-enabled/dav_svn.load . After I restarted server, it came back normally.

sudo /etc/init.d/apache2 restart

Now the configuration part. On the same /etc/apache2/mods-enabled/dav_svn.load file I copied the text below. It matches the fact I configured my repositories on … lets say /usr/local/svn . I had to restart the server after this change (just like the command above).

<Location /svn>

  DAV svn

  # any "/svn/foo" URL will map to a repository /usr/local/svn/foo

  SVNParentPath /usr/local/svn

</Location>

A fairly common situation that I found was that I wanted my web to be able to access these files, but my ssh users (developers) to access the source controlled files as well.  Subversion supports web, file, and ssh access — and as you might have guessed, I wanted it all.  I had to make these files owned by my web user (same as apache httpd) and with a group the same as my developers (had to edit the /etc/group and /etc/passwd files).

chown -R web-user:developers-group /usr/local/svn

So far so good.  Now the next step was getting Trac (my bug tracking system) and Subversion tied together.  Trac supplies most of the support out of the box, but I still had to download and compile the subversion source and the SWIG tool.  Check some hints by Oliver Nash.

joseanes @ 1:27 pm
Filed under: LAMP and Unix
Ubuntu / UNIX: Normal Compiling Procedure

Posted on Saturday 16 February 2008

The basic drill of source compiling. With so many versions of Unix, it is difficult for programmers to provide a pre-compiled package for each variant. Fortunately, most of the Unix utilities are open source, and most are free. The source files come in a pretty standard package with a format like this: <name>-<version>.tar.gz

Ussually you have to uncompress the file from its compression package.

gunzip is common, but bunzip is getting popular also:

gunzip <name>-<version>.tar.gz

or

bunzip2 <name>-<version>.tar.bz2

Next you need to extract the files from the tarball (.tar) package (notice the previous command removed the .gz and this command will create a directory with the same name as the file, but without the .tar extension):

tar -xvf <name>-<version>.tar

Now go inside the directory, and configure, compile, and install. It is common to configure and compile using a regular user and install as super user. A user with super user privileges can do a sudo. If it fails, login as root using the su command.

./conrigure

make

sudo make install

     or

su

make install

Remember to read README or INSTALL files. They are useful and sometimes (albeit not always) give you the solution. Be patient with this process. Windows developers only worry about windows. Unix developers have to worry about almost any kind of machine. Search on the internet for solutions to problems you encounter. Chances are somebody already had the same issue. Write a solution if you find it. It helps others with your situation

joseanes @ 8:31 am
Filed under: LAMP and Unix