4. Grabbing and configuring FotoBilder

4.1. $FBHOME Environment Variable

Be aware that nearly all FotoBilder code depends on the $FBHOME environment variable being set to the top-level directory that FotoBilder is installed at.

Section 6: Installing Apache has the necessary directives to make sure the web code always has $FBHOME set, but if you're running maintenance commands from a terminal, you'll need to make sure $FBHOME is set for yourself.

For example, we'll assume that you've installed FotoBilder on an operating system using the Bourne Shell: The easiest way to set $FBHOME is to put the following in your ~/.bash_profile:

Example 2.1. Bash: Setting $FBHOME

FBHOME=/home/fb; export FBHOME

To test that it's set:

$ . ~/.bash_profile
$ echo $FBHOME

If the above was successful, it should print out /home/fb (or whatever the value of $FBHOME may be).

Other shells

If you use another shell interface, you might be able to see what it reads on start-up by looking for the file: ~/.profile. Please refer to the documentation provided with your shell, which can usually be found by running help.

4.2. Installing the files

The typical directory to install FotoBilder is /home/fb, but it is not a requirement at all. To ease documentation, we'll assume that you'll want to install in that directory. We'll also assume you'll be using user fb, but that also doesn't matter at all. Feel free to install wherever and as whoever … there shouldn't be any problems.

Prerequisite: $FBHOME Before you install using either method, you should create the directory where your FotoBilder installation will reside. This needs to be the same directory that the environment variable $FBHOME is set to, otherwise your installation will not work properly. Consult Section 4.1: $FBHOME Environment Variable for more information on setting $FBHOME.

Example 2.2. Creating the $FBHOME directory:

# mkdir /home/fb
# chown fb.fb /home/fb

Using Tarballs

FotoBilder maintains the server code in tar.gz (‘tarball’) format, which can be downloaded from: http://www.picpix.com/download/code/. The tarballs are labelled by date, so be sure to grab the latest one.

Untar the tarball from the $FBHOME directory, and then run the provided installation script, bootstrap.pl.

Example 2.3. Tarball Install:

$ cd $FBHOME
$ tar zxvf fotobilder-YYYYMMDDNN.tar.gz
$ ./bootstrap.pl

Using CVS

Bleeding edge releases of the code can be found in CVS at the CVS server: cvs.danga.com.

Example 2.4. CVS Install:

$ mkdir $FBHOME/cvs
$ cd $FBHOME/cvs
$ cvs -z3 -d:pserver:anonymous@danga.com:/home/cvspub co wcmtools bml fb
$ wcmtools/bin/multicvs.pl --conf=fb/cvs/multicvs.conf --init

That last command will copy everything from the CVS directory over to $FBHOME, the live area.

Having two copies of the code laying around may not make sense now, but it will later when we write the docs to explain how to run a heavily-customized version of the site and still stay up-to-date with the mainstream CVS. (FIXME: write/link that section)

4.3. Tweaking fbconfig.pl

You need to make a FotoBilder configuration file. There's an example fbconfig.pl in the doc directory by the name of “fbconfig.pl.txt”. You need to copy this file to $FBHOME/etc/fbconfig.pl and then edit it to suit your needs.

$ cd /home/fb
$ cp doc/fbconfig.pl.txt etc/fbconfig.pl

The reason it's not there already is so that future upgrades don't destroy your configuration. The end of fbconfig.pl reads in fbdefaults.pl so that if we add new options, fbdefaults.pl will be updated and will set sane defaults. After an upgrade you want to glance at fbdefaults.pl (or the original doc/fbconfig.pl.txt) and see if there are any new options you feel like setting.

For reference, please consult: Appendix A