What is the recommended installation method for SourceForge?

There are several steps to install SourceForge, outlined below.

First, install Java in a way that allows us to relocate or upgrade it without breaking SourceForge:
cd /usr/local sh /path/to/java_installer.bin ln -s j2sdk1.4.2_10 java export JAVA_HOME=/usr/local/java
You now have Java in /usr/local/java and will point SourceForge to it. You can then upgrade/downgrade Java at any point in the future and SourceForge will not care as long as it uses the symlink.
Now, look at the install-saturn.conf file. This file is documented in the Install Guide, so this FAQ covers just those bits that need to be edited. We want to define which SourceForge components will be installed. Please always install all the components that make sense, even if you don't really see a need for it. It's easier to install the bits now than later.
SOURCEFORGE_INSTALL_STANDALONE=true 
SOURCEFORGE_INSTALL_WEBLOGIC=false 
SOURCEFORGE_INSTALL_CVS=true 
SOURCEFORGE_INSTALL_SUBVERSION=true 
SOURCEFORGE_INSTALL_PERFORCE=false
User data should never be a part of the application directory structure, so you must create the following directories:
mkdir /var/sourceforge mkdir /var/log/sourceforge
Use these directories like so:
SOURCEFORGE_INSTALL_DIR=/usr/local/sourceforge 
SOURCEFORGE_VAR_DIR=""/var/sourceforge"" 
SOURCEFORGE_LOG_DIR=""/var/log/sourceforge""

Once SourceForge is installed, symlink these directories into the default locations in -nsf /var/sourceforge /usr/local/sourceforge/var ln -nsf /var/log/sourceforge /usr/local/sourceforge/log.

Now we need to discuss localhost, which you should not use. Your file should look like this: SOURCEFORGE_APPSERVER_HOST=my.sfee.server.name.my.company.com SOURCEFORGE_SYSTEM_EMAIL=your_name@your_company.com INTEGRATION_SERVER_HOST=my.sfee.server.name.my.company.com JAMES_MTA_HOST=my.sfee.server.name.my.company.com DATABASE_HOST=my.sfee.server.name.my.company.com SEARCH_RMI_HOST=localhost.

The SEARCH_RMI_HOST is set to localhost, and is currently the one exception to the rule. You can set it to my.sfee.server.name.my.company.com, or leave it localhost. We find that search is more reliable using localhost.

Note: Customers should NOT make port 8080 available to their users. Instead, please correct the application URL: SOURCEFORGE_ROOT_URL=http://$SOURCEFORGE_APPSERVER_HOST/sf

Because James (the mail component of SourceForge) cannot deliver mail to accounts local to the SourceForge machine, please make sure to change all the email addresses to point anywhere else: SOURCEFORGE_ADMIN_EMAIL=yourname@your_company.com JAMES_POSTMASTER_EMAIL=yourname@your_company.com. It is not advised to use BDB as the Subversion backend: SUBVERSION_FSTYPE=fsfs

Passwords that are the same as the username are not passwords, they are invitations to the bad guys to do nasty things to your system. Please set a password on things: JAMES_ADMIN_PASSWORD=some_random_10_character_password. Please think about your network environment. If you use 10.x addressing, then you need to change the accepted relays from the default to something that will never route on your network: JAMES_ACCEPTED_RELAYS=192.168*

Remember the comment about installing Java in such a manner that we can swap it out later? Finish that trick by changing the value: JAVA_HOME=/usr/local/java. When you create the sf-admin user, set the $HOME to the log dir where SourceForge is installed, and make sure the shell is /bin/bash: useradd -d /usr/local/sourceforge/log -s /bin/bash sf-admin. The application creates a velocity.log file in the sf-admin user's $HOME and it never gets rotated, so let's fix this: ln -nsf /dev/null /usr/local/sourceforge/log/velocity.log.

As a last step, take away 'root' from the application:
chown -R sf-admin.sf-admin /usr/local/sourceforge
You now have a sensible SourceForge install where the application lives in /usr/local/sourceforge, the data lives in /var/sourceforge, and the logs live in /var/log/sourceforge. You should monitor your data and log dirs for disk usage, as SourceForge will consume an ever-increasing amount of space as you use the app. If you have any questions or comments on this installation process, please do not hesitate to contact us.