EPrints 2.3 Documentation - Updating from Previous Versions


Generally speaking when upgrading EPrints v2 you should unpack and install eprints to the same path as your current version. The installer will detect the existing version and upgrade it. Existing files which have been altered by you should be automatically backed up so they don't get lost. But if your hacks are important then you should probably back them up by hand before upgrading.

Always stop apache before upgrading.

Always make sure your system is fully backed up before upgrading.

Then you should follow the specific instructions for each stage from your old version to your new version...


Updating from EPrints 1

A tool for assisting with this is available from http://software.eprints.org/files/


Updating from EPrints2-alpha-2 to EPrints 2.0

Too much of the configuration of the archive has changed to document individually. See the CHANGELOG file if you're really interested. If you have more than one archive, then do each step for each one. Our example is the archive with the ID foobar.

To upgrade we suggest you use the UNIX diff command to make a records of changes you made to the archive config directory.

 % diff /opt/eprints2/defaultcfg/ /opt/eprints2/archives/foobar/cfg/

Store the output from diff somewhere safe.

Remove /opt/eprints2/archives/foobar/cfg/

Now install eprints 2.0 and agree to upgrade when it asks.

Copy the new default configuration into your archive dir:

 % cp -R /opt/eprints2/defaultcfg/ /opt/eprints2/archives/foobar/cfg/

Work through the ``diff'' you produced, and re-apply the changes to the contents of /opt/eprints2/archives/foobar/cfg/.

You also need to execute the following SQL command.

 UPDATE document SET security='' WHERE security='public';

To connect to mysql via the command line run:

 % mysql -u eprints foobar -p

And enter the database password for that archive.

Now re-run generate_apacheconf and restart apache.

Upgrading from 2.0 should be less painful than this, the config files should change less dramatically from now on.


Updating from EPrints 2.0 to EPrints 2.0.1

This release is mostly a bug fix release. There are a few bugs in the config files which you should fix by hand.

After upgrading EPrints, repeat these steps for the cfg directory of each archive you have created:


Updating from EPrints 2.0.1 to EPrints 2.1

These release fixes a few bugs but the main point is adding the subscriptions feature and support for OAI 2.0. See the NEWS file in the distribution for more information.

After upgrading EPrints, repeat these steps for each archive you have created:


Updating from EPrints 2.1 (or 2.1.1) to EPrints 2.2

Upgrade eprints software to the new version then (for each archive)


Updating from EPrints 2.2 (or 2.2.1) to EPrints 2.3

This version adds some more functionality and uses apache in a slightly different way. The full text indexing tool adds some more requirements.

Recompile Apache

EPrints 2.3 requires an additional mod_perl hook, TRANS. I suggest you compile apache with ``EVERYTHING=1'' instead of ``AUTHEN=1 AUTHZ=1'' (see the required software section of the 2.3 manual). mod_rewrite is not used any more.

Install ``libapreq'' aka Apache::Request

This is a PERL module which is used with mod_perl. It does not appear to install from CPAN as it always fails 'make test', although it works fine once installed. Follow the instructions in the required software section for installing a perl module by hand. Hopefully this will be fixed in a later version of ``libapreq''.

Install tools used by full-text indexer

See the chapter ``Required Software'', section ``Full Text Indexing''. Follow the instructions.

Upgrade eprints software to version 2.3

As usual download and extract the latest (stable) version and run ./configure

Stop the webserver

Run ./install.pl as usual

For each archive run

 % bin/upgrade ARCHIVEID

Update the apache config:

 % bin/generate_apacheconf

Start the webserver

Add the new icons & update the style sheets

The new input interface has up and down buttons to let you rearrange the values in lists, such as authors. If you don't copy them into your live archives you'll probably see ugly text of ``UP'' and ``DOWN''. You need to put them in your archives ``images'' dir then use generate_static to copy them to the live website.

 % cp defaultcfg/static/general/images/multi_*.png archives/ARCHIVEID/cfg/static/general/images

Copy in the new VLit stylesheet.

 % cp defaultcfg/static/general/vlit.css archives/ARCHIVEID/cfg/static/general

Copy any new styles you want from

 defaultcfg/static/general/eprints.css

to

 archives/ARCHIVEID/cfg/static/eprints.css

I suggest everything after the line which starts ``.subject_browser_opts, .subject_browser_selections, .subject_browser_search''. This isn't essential, but will make your site look nicer.

Now run:

 % bin/generate_static ARCHIVEID

Start the indexer

EPrints 2.3 does not create the search index in the same way as 2.2 did. It has a background daemon which builds new indexes and then copys them over the old indexes when they are ready. This can potentially take quite a long time, but means that editing records will be much faster (no need to keep reindexing).

If you have some buggy or experimental archives which you do not wish the indexer to process add <index>no</index> to the main XML config file for that archive.

Only one copy of the indexer runs, no matter how many archives you have. To start it run:

 % bin/indexer start

You should make the indexer automatically start and stop if the machine is rebooted. See the main documentation about the indexing system.

 EPrints 2.3 Documentation - Updating from Previous Versions