Welcome to Gallery 2. This is the official release of Gallery 2.3,
code named “Skidoo”. Please read
through this document carefully before installing Gallery 2 and
before asking for help. We have taken care to try to answer as
many of your questions here as possible. If you don't read this
and have problems, we may refer you back to this document as a
first resource.

If you’re impatient like us, you just want to get going.
The odds are that your system is all set to handle Gallery 2 so just skip
right to the installer
and start clicking. It should walk you through everything you need to
get going. If you hit a snag, please come back here and read more before
asking questions! Enjoy.

Gallery is a web based software product that lets you manage
your photos on your own website. You must have your own website
with PHP and database support in order to install and use it. With Gallery
you can easily create and maintain albums of photos via an
intuitive interface. Photo management includes automatic
thumbnail creation, image resizing, rotation, ordering,
captioning, searching and more. Albums and photos can have
view, edit, delete and other permissions per individual
authenticated user for an additional level of privacy. It's
great for communities - give accounts to your friends and family
and let them upload and manage their own photos on your website!

In preparation of the Gallery 2.3 release, we retained Gotham Digital Science
(GDS) to a perform security audit on Gallery 2. They are experts in application security, as
this is the primary focus of their business.

We recognize that hiring external consultants to perform security audits does not guarantee
that our code is bug-free and by no means un-hackable, but it clearly indicates our
willingness to perform due diligence to make sure our code is reasonably secure.
The combination of an external perspective of security experts and the insight of
internal experts both performing detailed audits is yielding much better results than only
one of the two perspectives alone.

Note

Over four years of design and development have gone into making
Gallery 2 the best online photo management product available.
We have made it easy to add new features while keeping them in
separate modules so that you can customize it to only have the
ones that you want. For those of you who like standards, we
have strict XHTML compliance but give plenty of power to our
themes so that you can make it look the way that you want. It's
a powerful application and you're in the driver's seat.

Highlight of changes in Gallery 2.3 (Skidoo)
-

New version of the slideshow module now uses PicLens
to provide a rich, full screen slideshow.

Comment module now offers moderation and Akismet
support to help weed out spam comments.

New email notification module allowing users to configure events they wish to get
notified for. You can watch albums for changes, items for new comments, etc.

New Jpegtran module to support rotation and cropping of jpeg images
with no loss in image quality.

Registration module can now send a welcome email to new users upon account activation.

EXIF block now uses AJAX to switch between summary and detail display.

External image block now has a "rawImage" mode to return a single binary image
instead of HTML output.

Support in RSS module for Media RSS format and random RSS streams.

Remote module now bundles the Gallery Remote client and makes it available via
Java Web Start. Users with a Java enabled browser can then
launch Gallery Remote with a single click instead of manually downloading and installing.

Hybrid theme now uses automatic navigation between pages in its image viewer and
slideshow. This means the slideshow will show all images in the album, moving
between album pages as needed. Requesting the next/previous image in the image
viewer will also load a new album page as needed.

Webcam module now accepts file:// URLs to retrieve image from local filesystem.

Dcraw module now supports Adobe Digital Negative (dng) files, when used with
dcraw v7.0 or newer.

Added support for Windows Vista in PublishXP module.

New database backup feature. Backup at start of upgrade, or anytime from Site Admin /
Maintenance. Restore a backup from lib/support interface.

Can now put Gallery into maintenance mode from Site Admin / Maintenance.
Setting in config.php file is still available too.

New event logging system records Gallery errors, viewable in the Site Admin interface.

Themes can now override module template files, allowing a themed look to
more aspects of the application.

New Language Manager that allows the addition or removal of translations.

User interface changes.

Use AJAX to speed up deleting comments(spam) on items/albums.

Use quick DHTML confirm dialog for deleting single items. Dialog offers link to
bulk delete several items from an album.

Use YUI ItemTree instead of plain select box to select target album when
moving items, creating replicas or link items.

Performance and stability improvements.

Smarty templates now permanently cached by default. Turn this off in
Site Admin / Performance when working on tpl files, so changes take effect
immediately during development.

Avoid reading EXIF data multiple times in Carbon theme.

Some added caching in GalleryUrlGenerator.

Use progress bar when adding items to avoid server or browser timeouts.
Particularly helpful when adding many items from local server.

Restructuring to greatly reduce the number of directories for language files.

Refactor of translator hints to avoid some processing when translations
are not used (en_US).

Faster plugin and language package downloads.

Refactor of event system working towards a performance improvement in the next release.

Highlight of changes in Gallery 2.2 (Double Double)
+

Downloadable Plugins. This feature allows you to download and
install Modules and Themes directly via the Site Admin
interface. You can select from different sets of plugins
(officially released plugins, experimental plugins under
development and plugins provided by the Gallery community).
This makes it very easy to stay up to date with the latest
changes.

Added support for themes to display dynamic albums.

New Keyword Album module makes use of this feature to show albums based
on a search of item keywords.

New Dynamic Albums module shows albums of newest, most viewed or even random items.

Ratings module has a new view to display highly rated items from across the Gallery.

Security fixes and improvements

There are no known exploits for these issues. All of them were discovered during a
private, internal security audit. However, we highly recommend that you upgrade to
Gallery 2.2 to secure your Gallery installation.

Photo auto-rotation based on camera sensors or on settings from other applications.

Automatically detect dimensions of Flash animations and video.

Option in MIME module to restrict file types that may be uploaded.

Image Block changes

Now displays any item with a thumbnail (movie, flash, etc) in addition to photos.

A new block setting allows showing multiple images or albums.

Added some user contributed image frames and icon packs including
the Silk Icon
set by Mark James.

You can now add color to item title, description, comments, etc. Click on the "color"
button and choose from a handy popup; or just use [color=red] bbcode syntax.

Comment module improvements:

New block for adding comments directly from an item page.

Guests can now leave their name.

Added support in Link Items module to make thumbnails for URL links
using webpage snapshots generated by an external program like
khtml2png.
Also, the arrow watermark on thumbnails is now optional.

Added RSS functionality: Comments for this album and its subalbums.

Added Quotas Block: This allows the site administrator to display a block in
the theme that displays the current and total usage of any user that has a
quota assigned.

Added an option to lock a user account to the current account settings. Useful
if one wants to use a single user account for a group of users.

Newly created albums from User Albums module now properly inherit permissions from
the parent album, for settings like comments, ratings, etc.

Moved some functionality out of core and into optional modules:
Add items module for adding from local server or other web pages, and
Replica module for creating item copies sharing the same original data file.

Option in EXIF/IPTC module to set title for new items from IPTC/ObjectName.

Improved usability in administration interface for installing modules and themes.

New Multiroot module assists in creating alternate guest views of a single Gallery.

Added exactSize and link parameters for image block.

Resize dimensions now accept percentages of full size in addition to pixel size.

Added support for PHP mysqli extension (newer version of mysql interface).

Microsoft IIS doesn't work with PHP-CGI due to a PHP/IIS bug. Microsoft recommends
FastCGI instead
and doesn't support PHP-CGI. Please use ISAPI PHP or FastCGI with IIS instead. Users of
Apache on Windows can still use PHP-CGI (and mod_php or FastCGI).

Highlight of changes in Gallery 2.1 (Blackjack)
+

New Ratings module allows users to vote for their favorite photos.

New RSS module provides syndication of your Gallery's content to the world,
so users can track content updates.

New Floatrix theme based on our Matrix theme, with a collapsible sidebar
and tableless design.

New module to support hidden items and albums. Hidden items are restricted
from guest users until accessed by the direct URL. Migrate module now imports
hidden items from G1 as hidden in G2 if this module is active.

New module to support password protected items and albums. Passwords are
complementary to the G2 permission management. Passwords are impersonal while
the G2 permission system handles access and rights for specific users and user groups.

Permission support in cart module to control which users and which items
may be used with the cart.

PublishXP module now supports add-options such as watermarks and
applying size limits or quotas.

Upgraded bundled EXIF library to Exifixer 1.5 which fixes reading
of EXIF data from many cameras and image processing tools.
Also updated the module to make GPS fields available and to read
EXIF data from raw image files.

New option in ffmpeg module to watermark thumbnails for movie items with
a film reel image on each side, to better distingish movies from photos.
Support for recent versions of ffmpeg binary.

Support for recent versions of dcraw binary.

Added WMF and TGA image format support in ImageMagick module.

Improved cross-browser support in ImageFrame module.

Several updates and new options for Hybrid theme.

New settings and improved admin interface for Siriux theme.

Localization updates

Added support for hints in translatable strings to aid translators,
or to distinguish identical English strings that may need different
translations in another language.

Localizations now generally specify only a language rather than
language+country for better sharing of translations.
Country specific translations can still override the base translation.

New option to specify whether Gallery checks the browser language
preference to select the language for new sessions.

New performance section in site admin for configuring optional page caching.

New maintenance mode to redirect visitors while upgrading or configuring the site.

Multisite installs can now use the tools in lib/support.

Sessions are now stored in the database and no longer in files. And guest users don't
get a session anymore unless they add items to the cart, choose a non-default language
or do something else that requires a session.

New development tool: sample module creator in lib/tools/creator.

New option to run external programs at lower priority to reduce load
on shared webhosting servers.

Embed API is now versioned (for compatibility checks) and
initialization parameters have been simplified.

Many code updates, restructuring and API changes with the goals of
improving performance and making smaller/simpler/cleaner code.

Lots of bugs fixed.

Highlight of changes in Gallery 2.0 (Unpossible!)
+

Updated version of the Siriux theme.

Several bug fixes.

Highlight of changes in Gallery 2 RC 2 (kthxbye)
+

Gallery 1 migration

Custom fields from G1 can now be imported if the Gallery 2 custom
fields module is active.

Restricted permissions are now set for imported photos and
albums from G1 that are hidden. Gallery 2 does not yet
have a hidden feature so for now these items are
restricted by permissions.

Migration process now generates a report of any captions
that were trunctated to fit the field size of title or
summary in Gallery 2.

Localization - Some translation fixes including several updates
to better support right-to-left languages. Gallery 2 now has 29 available
locales; over 90% translated in 6 languages, over 50% in 7 and partially
translated in 16 more! We still bundle all language data with the modules..
eventually we will have separate downloadable translations.

Highlight of changes in Gallery 2 RC 1 (+5 Insightful)
+

User Contributed Themes - There are now more and more user contributed themes
to choose from.

New Installer Log - Gallery 2 now generates a log of
the core module installation process which will make it much
easier for you to provide the necessary information and for us
to help you.

Many, many bugs fixed.

Highlight of changes in Gallery 2 Beta 4 (Flippin' Sweet!)
+

New Theme System - You spoke -- we listened. The old
layout and theme system was far too complicated so we've
completely overhauled it leaving control firmly in the hands
of the theme designer while keeping it simple and easy to work with.

Square Thumbnails - This module now offers a mode to fit thumbnails
inside a square with a specified background color instead of cropping the image
into a square.

CMYK Jpegs - ImageMagick module can now detect jpegs using CMYK
colorspace and convert to RGB for display in the Gallery, still keeping the
original file available for download.

Multisite Support - The multisite system has been
completely redesigned and is now compatible with both URL
Rewrite module and embedded Gallery 2. Multisite Gallery 2
refers to multiple independent sites using a single codebase.

Localization - The installer and upgrader can now be localized.

Improved Installer - The installer offers now a clean install option,
catches version mismatches between database/g2data/code, detects the proper
locking system to use, and has a more detailed admin user setup.

Guest Preview Mode - Click this to see almost exactly
what a guest will see when browsing your albums. Useful if
you want to test permissions and other settings.

Improved Cookie Management - New optional
configuration parameters enable cookie support in embedded
Gallery 2 while maintaining maximum security by default and
the flexibility to support embedded Gallery 2 installs on
separate subdomains.

Colorpacks - Now that layouts are gone and there are
only themes, colorpacks let you change the color scheme of a
theme.

Many, many bugs fixed.

Highlight of changes in Gallery 2 Beta 3 (Bingo!)
+

New Modules

New Quotas module allows limiting disk usage for users and groups.

New Iconpack module adds icons for various links.

New dcraw module adds support for the raw image format of many cameras.

New Publish XP modules allows adding items directly from Windows XP.

New Slideshow applet module shows images in a fullscreen slideshow using Java.

Layouts

Simplified the PHP code required for a layout. This makes
it easier to create a new layout that mostly involves
building the tpl files, but still allows use of additional
PHP code for more advanced layouts.

Standard $user template variable now available in all views, which makes
it easier to customize content for guests, registered users or administrators.

Hotlinked image protection

URL Rewrite module now offers the ability to restrict item downloads from
external referers not on an approved list. This prevents other websites
from directly linking to images on your server.

Watermark module offers an alternate rule in Rewrite module which can apply
a watermark on the fly to images for external referers.

Tree view - Album Select module now offers a dynamic tree view
in addition to the simple select box for navigating to any album.

Thumbnails - Expanded ability to override the album default thumbnail
size to any item or album, not just for photo thumbnails.

IPTC - Support for reading IPTC data added to EXIF/IPTC module.

Forgot Password - New system to reset the password for any Gallery 2 user with
an email address.

Short URLs - More control in Site Admin over how short URLs are constructed.

Owner Permissions - Permissions are now transferred to the new owner
when changing the owner of an album or item.

Updated Albums - Modification date of albums now updated for item add,
move, delete in that album (so New Items module will show "Updated").

Email Test - Added ability to send a test email from Site Admin to
verify email settings are correct.

System Maintenance - New maintenance tasks:

Reset view counts for all albums and photos.

Build all thumbnails and resizes at once.

Display system information, useful for copy/paste to support forum.

Rewrite module task to check for conflicts between short URLs
and actual Gallery files.

Integrations - Improved support for integration with
external applications.

Installer - Verify that the database user has the
correct permissions before installing.

Many, many bugs fixed including several localization fixes.

Highlight of changes in Gallery 2 Beta 2 (Holy Hand Grenade)
+

Performance Improvements

Automatic fast download code for publicly visible images.
We bypass most of the framework and render thumbnails and
resizes quickly on demand, while still preserving the
complete image firewall. This radically reduces server
load.

Replaced the permissions table with access control lists.
This change isn't visible to the end user, but results in
a significant performance increase for large galleries.

Themes/CSS

We updated the CSS across the entire app to clean it up and
make building new themes a bit easier.

Added new mblue theme.

Layouts

The main content no longer wraps below the sidebar in Matrix layout
when viewed with IE.

Hybrid, slider and tile layouts are now themeable and have
improved cross browser compatibility.

Added Nico Kaiser's siriux layout.

New Modules

New captcha module allows you to require that users have
to prove that they're human in order to log in or register
a new account.

New mime management module allows you to control which
mime types Gallery understands.

Multisite Support - The installer can now configure multiple
independent sites using a single codebase.

Internationalization

Added basic support for right-to-left languages.

New MultiLanguage module adds ability to write captions
in multiple languages and display them based on the selected
language of each user.

Error Handling - Improved handling and display of error messages.

Bugs - Many, many bugs fixed.

Highlight of changes in Gallery 2 Alpha 4 (Nice Commits)
+

Upgradeable Core and Modules - At long last we
support upgrading from one version of Gallery 2 to the next.
Unfortunately, this may not work reliably for all version
before Alpha 4, so we recommend that you reinstall Alpha 4
from scratch just to be sure.

Module Uninstall - You can now completely uninstall a
module and then delete it from your Gallery 2 installation.

Installer Improvements

The interface for installing modules is now much easier to
use. It shows you all the modules and lets you select the
ones you want to install, and lets you repeat the process
as often as you like.

Added better instructions and examples for several steps
that were confusing (your user feedback at work!)

The installer now works on browsers that don't allow
cookies.

User Interface enhancements - Some changes in our
main layout place the most important system links on top of
every page (Site Admin, Login, Logout, ...). This gives you
easy access to these commands. The sidebar has some improved
functionality, like a direct login form and some more details
on your cart and members (if those modules are active). This
is another step towards a "block" system where modules can
provide any amount of blocks of information to be placed in
the sidebar.

Navigation - It's now easier to navigate around Gallery.
Meaningful "back" links will bring you back to the last
visited pages, e.g. it's now possible to visit the Site Admin
while editing an album and have an easy way to return.

WebCam - New module creates items that
periodically refresh the image from an external URL.

Thumbnail Page - New module gives more control
over thumbnails for movies and documents. For multipage
documents (like PDF/Postscript) or images (like multiscene
TIFF) you can pick the page number for the thumbnail (Note:
PDF/Postscript require both ImageMagick and Ghostscript).
When used in conjunction with the Ffmpeg module you can
pick a time offset for generating thumbnails for movies.

Graphics Toolkits -

The ImageMagick and NetPBM toolkits have been optimized
to make fewer calls to external binaries when used for
multiple operations. For example, cropping and resizing
to make a thumbnail now requires only a single call to
"convert" with ImageMagick.

We now preserve extra operations (like crop settings) on
thumbnails when moving an item between albums or
rebuilding thumbnails.

Added ability to set toolkit priority. This means you
can activate multiple toolkits to support more mime types
but still select which toolkit is used in cases where
multiple toolkits support the same type.

Added support for ImageMagick 6.1.x

Sort Order - "Default sort order" and "Manual sort
order" are now separate choices, allowing albums to properly
inherit the site default for sort order; Ascending/descending
is disabled for these choices.

New Items - New module shows "new" and "updated"
images next to appropriate images and albums, and adds a new
sort where new items are shown first followed by other items
sorted by view count.

SMTP Authentication - We now support sending email
via a SMTP server that requires user authentication. Any
module that sends email (like the registration module) can
take advantage of this support.

Embedding Gallery 2 - We've made great improvements in
embedding Gallery 2 into other applications. We've
successfully (though not completely) embedded it into Xaraya
and have begun working on other platforms. See
Gallery 2 Embedding.

Thumbnail Creation - We now let you create thumbnails
at upload time, which greatly improves performance the first
time you view an album. It's optional, but on by default.

Improved Error Pages - We now show you a nice error
page when two simultaneous and conflicting changes happen.
This new page explains how to resolve the problem.

Members - We now show a list of the recent
changes that a user has made, and let you page through the
entire list of changes.

Removed IE7 - We were experimenting with
IE7,
a compatibility layer in JavaScript reduces some of the
incompatibilities between IE6 and other browsers. However we
were not able to get the performance and reliability that we
needed so we've decided to abandon using it (at least for now).

Localization - Gallery 2 is now translated into 18 languages, though only
German, Danish and Swedish are over 50% translated. We can
use your help!

Bug fixes - Many bugs closed!

Highlight of changes in Gallery 2 Alpha 3 (Farva)
+

Watermark Support - We now support image
watermarking. You can add a watermark to the thumbnail,
resize or full sized version of an image using a DHTML
drag-and-drop interface.

Oracle Database Support - The installer now offers
Oracle (version 9i and higher) among the supported database types.

Module Manifests - All modules now come with a
manifest file, and the installer checks to make sure that
you’ve got a complete set of files on the server.

Auto Completion - the Site Admin user and groups
pages, and the permissions pages now perform appropriate
completion for you. Just type a few characters of the
username you’re searching for and it’ll give you up to 10
possible matches. Tested on Firefox, but not extensively
tested on IE yet.

New version of IE7 - We’re experimenting with
IE7,
a compatibility layer in JavaScript reduces some of the
incompatibilities between IE6 and other browsers. The older
version caused weird problems with images getting overlaid
with a red X, or IE6 crashing.

Migration improvements -

We now properly migrate item owners

We now preserve the order of imported subalbums

Gallery 1 summary and description fields are now
transposed on import so that the Gallery 1 "summary"
(which was shown inside the album itself) is now the
Gallery 2 "description" and vice versa.

CMS Integration - Although this is not yet readily visible, a
great deal of work has been done on getting Gallery 2 ready to integrate into
external content management systems. We’ve successfully done partial
integrations with Xaraya and
Drupal, with more on the way.

Square Thumbnails - We fixed a noticeable bug where
the first time you viewed a square thumbnail it might appear
distorted (this was mentioned in the "known bugs" list of the
alpha-2 release).

Zip Cart Plugin - You can now download the contents
of your cart as a zip file.

User Albums - You can use the new User Albums module
to automatically create a new album for a user whenever you
create a new user.

Installer - Many minor tweaks including adding more
install checks to make sure that your system is OK.

Members - The members module now has privacy settings
so that you can prevent the unauthorized from seeing your list
of members, and/or their email addresses.

Bug fixes - Many bugs closed!

Highlight of changes in Gallery 2 Alpha 2 (Grand Theft Photo)
+

User Interface - Many small and large user interface
improvements. Made the XHTML more standards compliant and
used less divs in favor of more sensible tags (like h1, h2,
etc).

Performance - Significant performance increases in
general, and especially for image views. This also reduces
the overall load on your system when (for example)
viewing a page with 9 thumbnails on it.

Installer - The installer now installs the core
module for you, as well as allows you to optionally install
other modules right away instead of having to do it later via
the Site Admin.

Migration module - We now import Gallery 1
permissions, and allow you to choose the source encoding
(character set) of your Gallery 1 so that we can convert it to
UTF-8 as part of the migration. We now also track where your
Gallery 1 albums wound up in Gallery 2 so that you can create
an .htaccess file in your Gallery 1 to redirect Gallery 1 URLs
to Gallery 2, for ease of migration.

Gallery Remote - GR now supports creating new Gallery 2 albums.

PHP5 Support Gallery 2 has been tested on PHP 5.0.1 on
FreeBSD and Linux.

Developer - Same as the full package, except it includes all the
developer tools so that you can work on improving the code.

You get to pick and choose which modules you activate, so even if you download
a package that has more modules than you need you can always choose not to
activate the ones you don't want. You can also activate a module and test it
out for a while, then later deactivate and uninstall it. You can also delete
any modules/themes that you're not using if you want to save space.

All of our modules and themes are available separately so if you install a
smaller package you can still add more functionality later on, either by
downloading yourself or using the Downloadable Plugins feature in the Site Admin section.

Tarball - You can download a prepackaged file as a
tarball or a zip file from SourceForge.

Pre-Installer - If you only have FTP access to your webserver and don't
have the option to extract zip or tar files directly on the server, you should
give the Gallery 2 Pre-Installer a try. It transfers the archive
directly to your webserver and extracts it for you.

Nightly Snapshot - You can download a tarball or zip file with
a snapshot of the most recent code. Find links to these on the
Gallery Download Page.

Subversion - This is a better way to get the latest code,
but it’s for advanced users. Follow the
Subversion instructions to obtain the latest Gallery 2
code. It’s easier to stay up to date with this method since
you can run one command and get the latest code at any time.

Storage - Create a directory for gallery to store
photos. This must be writeable by the web server, but for
security reasons we suggest that you do not put it in the web
root. If you put it in the web root, then anybody can get
directly to your images with their web browser which
circumvents Gallery 2’s security.

Unix Example

$ cd $HOME
$ mkdir g2data
$ chmod 777 g2data

Windows Example

C:\> mkdir g2data

In the Unix example, you may note that modes of 777 on your
g2data directory are not all that secure.
However, making it more secure depends on how your system is
configured. Talk with your system administrator about ways to
change the permissions on that directory to make it so that
Gallery can still write to the files but that others
can’t. Refer to the Gallery
2 Security Guide for more information.

Database - Right now we support
MySQL,
PostgreSQL,
Oracle,
IBM DB2,
Microsoft SQL Server and
SQLite.
The databases most commonly used with Gallery 2 are MySQL and PostgreSQL.
MySQL is generally faster than PostgreSQL.
We require you to create the database yourself.
In our examples below, we’ll be creating a database called
gallery2. You can use any database name that you
choose.
Grant all required privileges to your database user. This includes but
is not confined to: CREATE TABLE, ALTER TABLE, DROP TABLE in the gallery2 database;
SELECT, INSERT, UPDATE, DELETE on all (gallery2) tables in the gallery2 database;
CREATE INDEX and some other privileges that are specific to the different database
management systems. CREATE/DROP DATABASE and the ability to GRANT privileges to other
database users are not required.

SQLite

Graphics Toolkits - Gallery 2 works with many different
toolkits (NetPBM, ImageMagick, GD or GraphicsMagick). You need to activate at
least one or you won't get any thumbnails, but there's no
limit on how many you can have. In fact, more is better
because they can work together. Here are some interesting
points about the main supported toolkits (mostly reported by
users, your mileage may vary).

Gallery 2 is a web application and must be installed on your web
server in order for you to use it. If you've unpacked it on
your desktop, you will have to upload it to your server as part
of the install process. Then you can configure it using your web browser.
As an alternative to the lengthy upload via FTP, take a look at the
Gallery 2 Pre-Installer.

Upload - Copy the Gallery 2 files to a directory on your webserver. There are
several alternatives for this step:

For .tar.gz archives

$ tar xzf gallery2.tar.gz

For zip archives

$ unzip gallery2.zip

If you do not have shell access, you can ask your provider
to do it for you, or you can make a miniature PHP script
containing one of the above commands. Some webhosting
companies offer a control panel with a web file-browser
which is capable of extracting / unarchiving archive
files. It’s worth a try to check if this option is
available.

Easiest (but slowest) way: If you don't have shell
access, you can upload the complete contents of the
Gallery 2 archive to the webserver with an FTP
program. This may take a lot of time and be
error-prone. In this case, pay special attention to the
’System Checks’ step of the installer and make
sure that there are no missing or modified files.
Consider using a smart FTP program like
FileZilla to
make sure that your transfer goes smoothly.

Advanced way: The best way to install Gallery
and stay up to date if you have shell access to
your webserver is to use
Subversion.

Note: After uploading, you should close this version
of the README and browse to the version that you just
uploaded. That way all the links in this document will point
to the right places in your Gallery 2 install.

Begin Installing - Open up your web browser and browse to the
install directory.
Gallery 2 will walk you through the process of validating that your system
is properly configured and will set everything up for you.

Authenticate - You will be asked to create and save a
small text file in order to authenticate. You may not proceed
until you do this. That’s how Gallery 2 knows that you’re authorized
to use the installer.

System Checks - The installer checks your system to
make sure that it will support Gallery 2. Make sure that all
checks are successful!

Installation Type - Gallery can support multiple independent sites with
a single installation of the code. Here you will select a standard single install
or the location of a new multisite install. There is more information about multisite
in the Gallery Codex.

Storage Setup - Read the instructions on the
installer to set up a storage location for Gallery 2. This is
where Gallery 2 will store all of your images, as well as other cache
information.

Database Setup - Select your database type and enter
your database authentication information. If this is not your first Gallery 2 installation
and there are still some remains of the old installation, it will check the state of the
installed version and offer a clean install option which will delete all your data in the
storage directory and in the database. If the installed version seems to be fine, it will
also offer to reuse the existing database tables. Select this option if you did not start
the installer with the intent to start from scratch.

Admin User Setup - You are prompted for an
administrator username and password. Type in a password and
type it again to validate it. The full name and the email address are optional.
But entering an email address is highly recommended. Once you’re finished,
click ’Create’ to create the admin user for this installation of Gallery 2.

Create Config File - Gallery 2 will create the
config.php file in your Gallery 2 directory. This contains
all the answers you’ve provided in the installer and is
necessary for Gallery 2 to function properly. At this point, there’s also a sanity
check to prevent you from damaging your Gallery install by running the installer when you
should rather have started the upgrader.

Install the Core module - Here’s where we create all
the database tables and initial users and albums to get you
started. Unless something goes wrong, there’s nothing for you
to do here.

Install other modules - Gallery 2 has lots of different
modules that provide useful functionality. Choose which ones
you want to use. You can always go to the Site Admin page later on to install, activate, deactivate or
uninstall modules, so it’s ok to experiment here.

Check Security - Gallery 2 walks you through the process of
locking down your new config.php.

Once you’ve successfully got Gallery 2 installed, you should take a look at the
Gallery 2 Quick Start Guide. It will help you get started with
Gallery and will walk you through the steps from zero to managing your first photo album
in your freshly installed Gallery. Below are some links to your gallery that will make it
easier for you to follow the Quick Start Guide. Note: You may need to activate certain
modules to be able to use some of these links.

Warning When Upgrading from Gallery 2.0!

Third party modules and themes designed for Gallery 2.0 will
not work with Gallery 2.3. During the upgrade process, these
modules and themes will be automatically deactivated for you.
You can find updated versions for most of these modules and
themes here: http://codex.gallery2.org/Gallery2:User_Contributions

If you have a busy site, consider putting your Gallery in
maintenance mode before updating the code and performing the
upgrade. This gives visitors a message that the site is
temporarily offline, rather than showing everybody the upgrade
page. Edit your config.php file to activate maintenance mode.
This feature is new starting in 2.1, so it is not available in
an upgrade from 2.0.x.

Download the latest code for any active third party modules
that you're using, or deactivate them. If in doubt,
deactivating is safe.

Get the latest code and unpack
it over your existing copy of Gallery 2. Keep your existing
config.php in place, and don't touch your (g2data) data folder
or the database. If you're using Subversion, you can just do
"svn update" at any time. Alternatively, you can also use the
Gallery 2 Pre-Installer to get the latest code
onto the webserver.

If you use a PHP accelerator / cache (e.g. Turk mmCache,
Ioncube PHPA, eaccelerator, Zend Studio, etc.), flush (clear)
the cache of the accelerator. Omitting this step can
sometimes lead to errors during and after the upgrade process.

Browse to the
upgrader and follow the instructions there. Make a
backup of your data (g2data folder and especially the
database) when it tells you to! Should you lose your data due
to a bug in the upgrader, the first thing we're going to tell
you to do is to restore from your backups! (Then we'll
probably ask you to help us reproduce the bug.)

Search the forum to see if somebody else has
posted a similar problem and maybe there’s an answer
there, otherwise start a new topic to get help.

If the problem seems like a bug in the Gallery 2 software
you can file a bug in our bug tracker on
SourceForge. Please read our tracker guidelines before filing a bug
so that we can cut down on the number of spurious reports.

Remember – reporting bugs is good. Even if you think
it’s silly, go ahead and report it. We can always close the bug
or refile it (please don’t be offended in this case) but it’s
harder to find bugs than it is to fix them so we’re counting on
you to help us with the finding part.

Unit Tests - Gallery 2 was designed using Extreme Programming methodologies. This
means that we have over 2,000 unit tests that ensure code
quality. If you want to help us out, you can try running
the unit tests and report back to us if any of them fail.

Note - these tests shouldn’t change your Gallery
2 settings at all, but if they fail, they may leave things in a
weird state. Be warned that there's a slim chance that you
might have to ditch your Gallery 2 data and start over if
something catastrophic happens.

For Themers - There is now some
theme documentation
that you should read if you want to change the look of your Gallery 2 by customizing
an existing theme and its templates or by creating your own theme.

For Developers - We've gotten started on some
developer documentation that you should read if you want to
start hacking on Gallery 2. Some of the information is a little bit out of date
or in early drafts, but it's a start.