The only changes that should be initially required to the main config file are to enable PhotoPub for each individual user that you wish. In the following fragment, each user should be added to the "users" line, separated by spaces:
<path /users> <userconfig> # allusers # not implemented users ganesh nick file $HOME/.photopubrc </userconfig> </path>
This gives each user control over the /users/username namespace, using their ~/.photopubrc file.
Next, add a link to each user's main album, if you so wish. By convention, this album is called /users/username/all. This link will be added to the default album /all and will thus appear on the page at http://hostname/photopub/album.
<album all> # insert links to users here, e.g. # <link /users/foo/all> # title "Joe Bloggs" # level 1 # </link> <link /users/foo/all> title "Ganesh Sittampalam" level 1 </link> <link /users/foo/all> title "Nick Burch" level 1 </link> </album>
Each user should create such a file, as follows. You should first decide how you wish to organise the /users/username namespace. The recommended arrangement is for photos from camera "foo" to go into /users/username/foo; even if you only have one camera now, it makes sense to plan for the future or for importing photos from other sources.
Suppose that your pictures are stored in /home/username/photos/foo. If your camera resets the numbering every so often (e.g. after you download pictures), then each group should be put in subdirectories, which will end up mapped to subpaths in PhotoPub namespace. If you want to use an alternative structure (perhaps because you already have your photos in such a structure), that should work fine, but these instructions don't yet cover it.
Here is a sample ~/.photopubrc for camera "foo", with pictures in /home/username/photos/foo:
<path foo> <imagedirs> dir /home/username/photos/foo prefix p digits 7 suffix .jpg </imagedirs> <infofile> dir /home/username/photos/foo filename .info allowhtml no makealbum all titlehashlength 5 </infofile> </path> <album all> include foo/all </album>
The most important bits to change, apart from the paths and directory names, are the "prefix", "digits" and "suffix" options. Together these determine the format expected from picture file names. For example, the settings above will map "p0000001.jpg" to picture number 1, etc. If the numeric element isn't zero-padded, set "digits" to 0.
group 1-5 My first photos describe 1 Me rotate 1 90 adjust 1 1.1 1.1 1.1The "group" item will cause an entry pointing to that range of photos to go into the album page. The "describe" item will provide a caption for the range page. Use "rotate" to turn the picture the right way up, and adjust to change the colour balance - the values given should be gamma correction values for red, green and blue respectively, with 1 meaning no change.
Following the principles set out by Tim Berners-Lee in "Cool URIs don't change", every effort has been made to reduce implementation dependencies (cgi-bin in the path, .pl extensions) in PhotoPub URLs, to allow for the possibility of an entirely different implementation of the same interface in future.
Thus, a "standard" installation will be accessed at the URL
http://hostname/photopub/{album|range|display}?...If you installed from a package and are using Apache as your webserver, this should have been set up automatically, but you may need to deal with this manually if your configuration is non-standard in some way that collides with the assumptions we made.
If for whatever reason you do not wish to do things in this way, you are mostly on your own for now, but you may find the following settings in /etc/photopubrc useful:
albumlinkroot album rangelinkroot range displaylinkroot displayPhotoPub makes links to other PhotoPub pages using relative links, so everything but the final element in the path of these links is determined by the URL you access it at. These settings control what that final element should be - you may for example wish to change album to album.pl, etc.
We will try our best to avoid incompatible changes in the query parameters and script names, although it cannot be completely ruled out, especially in development releases.