Installing Subversion on Cpanel/WHM

Make and install Subversion:

mkdir -p /usr/local/src/
tar xfj subversion-1.5.2.tar.bz2 && cd subversion-1.5.2
./configure --with-apxs=/usr/local/apache/bin/apxs --with-apr=/usr/local/apache/bin/apr-1-config --with-apr-util=/home/cpeasyapache/src/httpd-2.2.17/srclib/apr-util
make && make install

Add to pre-main include in Apache Configuration (WHM):

LoadModule dav_svn_module modules/
LoadModule authz_svn_module modules/

Set up EasyApache’s per-user virtualhost config directories (if not present):

mkdir /etc/httpd/conf/userdata
mkdir /etc/httpd/conf/userdata/std
mkdir /etc/httpd/conf/userdata/std/2

Add a virtualhost config file for the user and domain who needs subversion:

mkdir /etc/httpd/conf/userdata/std/2/<username>
mkdir /etc/httpd/conf/userdata/std/2/<username>/<www.domain.com_or_subdomain>
nano -w /etc/httpd/conf/userdata/std/2/<username>/<www.domain.com_or_subdomain>/svn_custom.conf

Paste in the config:

<IfModule mod_dav_svn.c>
 <location /repo>
  DAV svn
  SVNPath /home/<username>/public_html/repo/svn
  AuthType Basic
  AuthName "SVN Repo"
  AuthUserFile /home/<username>/.svn.htpasswd
  Require valid-user

Create the SVN user and filesystem:

su <username>
cd ~/
htpasswd -cm .svn.htpasswd <svnuser>
mkdir public_html/repo
cd public_html/repo
svnadmin create svn
chmod 775 -R svn

Update the apache config:

/scripts/ensure_vhost_includes --all-users

Test by opening http:///repo/ in browser and authenticating.

Adding alias IP subnet to an interface or VLAN

In the PFsense docs it tells you to use the ‘alias’ option in the web interface… but this won’t work for routed (non-NAT) interfaces that require more than 1 subnet attached to them. To overcome this, I utilized this article:

In summary:

Log into the webGUI, and click Diagnostics -> Backup/Restore. Click the “Download configuration” button. Open the xml file downloaded in a text editor, like Notepad. Above the line, insert the following:

<shellcmd>ifconfig fxp0 inet netmask alias</shellcmd>

Replacing fxp0 with the name of the interface you’re using, and the IP and subnet mask as appropriate. You can find the name of the desired interface in the config file. For example, for LAN, see this portion of the config.


This is showing the LAN interface as fxp1.

In order to add the alias without rebooting the whole firewall, SSH into the box and issue the shellcmd command manually:

ifconfig fxp0 inet netmask alias

Then edit /conf/config.xml manually using vi so next time the router reboots you don’t lose the subnet.

I did lose a subnet once when changing or add some interfaces through the GUI… so keep in mind when making interface changes that you may have to manually keep re-adding the subnets in the shell… I have not had an opportunity to find a work around for this.

Sample Debian/Ubuntu Interfaces File


# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0

auto eth0
iface eth0 inet static
address 208.85.x.x
netmask 255.255.255.x
gateway 208.85.x.x

auto eth0:1
iface eth0:1 inet static
address 208.85.x.x
netmask 255.255.255.x

Clean upgrade from SAM3 to SAM4 with playlist in-tact

SAM4 has a slightly different database format and filesystem layout than SAM3. You should not try an in-place upgrade, or bad things can happen. The best way to upgrade if you have a large or refined playlist, is to install SAM4 along side SAM3 and copy the playlist tables over. This way you can leave SAM3 running while you install and set up SAM4’s settings and encoders, then make a clean cutover without losing your audience.

1. First, install SAM4 in it’s own location, separate from SAM3. For example, c:\program files\spacial audio\SAMBC4

2. When launching SAM4 for the first time, you MUST define custom MySQL database settings. Change the default database name from SAMDB to SAMDB4

3. Dump your SAM3 playlist with the following command (mysql/bin must be in your path):

mysqldump -u root --database SAMDB --table songlist --table category --table categorylist --skip-extended-insert --complete-insert --no-create-db --no-create-info > SAM3_songs.sql

4. Import the playlist into SAM4:

mysql -u root SAMDB4 < SAM3_songs.sql

5. Now, press F5 on the SAM4 playlist window to see your songs. Be sure to run ‘Tools -> Mass Tagger -> Load ALL Tags’

6. Configure all settings and encoders, set encoders to auto connect. Start one of the decks.

7. Shut down SAM3.

Now SAM4 should connect and take over your streams.