Fequently Asked Questions

What can I do to increase the number of questions listed here?

How can I contact you?

Write a mail to uellue at users dot sourceforge dot net, write to the forum at or join the official PHPGallue IRC channel #gallue on

When do you implement feature XY?

There is a long list of possible features in the roadmap. If your feature is not in that list, feel free to contact us. But please don't be disappointed if it's not implemented – we have to prioritize.

No preview images, there's only the title displayed

Converting is done in the background, therefore it may take some time until the resized instances appear. Check if a converting process is running, e.g. with top or ps or another process manager. Process name of the converter is php5, it has the path to processJobs as argument and most likely convert is causing CPU load.

It is possible that convert fails to handle some files. Try with some small images with common formats like PNG or JPEG. For Videos and non-image files displaying the title instead of preview images is the intended behaviour. This is perfectly normal.

If no converter is running and all images aren't converted, try to run the job processor by hand (replace paths to match your setup):
php5 /path/to/PHPGallue/libraries/libgallue/processJobs /path/to/PHPGallue/configfile /path/to/PHPGallue/libraries/libgallue/
Most probably it won't operate if there are pending jobs, because access to the PHPGallue cache directory is limited to the user PHPGallue runs as – on Debian systems www-data. Nevertheless you will see if there are errors that let the job processor crash on startup or during initialization. A common problem is missing of the mysql extension for the CLI build of PHP 5. On some systems you can activate this extension for the CLI build by editing /etc/php5/cli/php.ini as root and adding the line at the end.

A rare case is that the semaphore used by the "singleton" script galconv is already in use and cannot be accessed. This may happen if the PHPGallue user changes. In this case you can either reboot the system, delete the semaphore manually with ipcrm or set another semaphore ID in the config file (section nodes, value semaphore).

How can I change the look of the web interface?

Use the "Settings" page and choose a style. This feature was introduced in 0.3-RC2. To create your own style, have a look at the "styles" section in gallue/layout.xml and at the existing styles in gallue/htdocs/media/styles/.

The installer crashes after I enter the config file name. What's the reason?

Probably you don't have the PHP 5 CLI SAPI build installed. Try php5 -v and which php5 to find out the SAPI and the location of the PHP 5 binary. The Debian package for the PHP 5 CLI build is "php5-cli". If the installer crashes although you have the CLI build installed, it could find the other SAPI build first with which php5 because of the PATH environment variable. In this case you can trick the installer to use the right binary by adding it to the config file (sample minimum config file):

<?xml version="1.0" encoding="UTF-8"?>
    <section name="utils">
        <value type="path" name="php5cli">/usr/bin/php5</value> <!-- The PHP 5 or PHP 5.1 binary (CLI build) -->

The reason for the crash is that the setup script tries to determine the PHP version by calling the binary with the "-v" command line option. A PHP 5 binary built for the FASTCGI SAPI only returns the version if called from the command line. If called from a PHP script, it will wait for input and won't return, so the setup script waits infinitely for the version information. This is fixed in the current 0.3 release.

How does "package import" work, what are package files, what do you get if you click on the "export" link in group/category/series/film details view?

Currently packages are specially crafted tar archives with a certain directory layout. They contain image data together with all meta information like title, comment, membership in groups and other containers. Packages were invented to transfer parts of a PHPGallue installation to another site together with all meta information and membership relations.

The easiest way to generate a package is to use the "export" function. The "export" link is located at a container's details view, for example

If you want to see what's inside a package you should rename the exported file so that it has the ".tar" extension and unpack it. The top level contains a single directory in which you find a machine-readable XML file ("package.xml") as well as HTML pages ("index.utf8.html"). Open this HTML file with your browser. Currently the packages ares exported in German, but to internationalize and localize the exporting code is on the roadmap.

If you import such a package, all images with all containers they were member of are created on the target site. Existing categories are reused if the title matches exactly, otherwise they are created, too. At the moment the import code only works with these special packages, but we want to write code to import arbitrary archive files containing image data.