EPrints 3.5.0 Beta 1

From EPrints Documentation
Jump to: navigation, search

This page provides information about the first beta release for EPrints 3.5.0 on Wednesday 18th June 2025, as can be found at https://github.com/eprints/eprints3.5/releases/tag/v3.5.0-beta-1. There will be further beta releases and one or more release candidates before the first official release of EPrints 3.5.0.

Installation Instructions

RHEL / Rocky Linux 9

1. Install and enable MariaDB (you may choose to install MySQL instead).

yum install mariadb-server mariadb
systemctl enable --now mariadb

2. Install The EPEL package repository and the subscription-manager and then enable the Code Ready Builder package repository

yum install epel-release
yum config-manager --enable crb 

3. Install prerequite packages and tools. (Some extra packages may be required to build CPAN packages later on).

yum install git libxml2 libxslt httpd mod_perl perl-DBD-MySQL tetex-latex wget gzip tar ImageMagick elinks poppler-utils chkconfig unzip cpan python3-html2text expat-devel libxslt-devel xapian-core xapian-core-devel

4. Add the eprints user

adduser eprints

5. Add the eprints user to the apache group and vice-versa

usermod -a -G eprints apache
usermod -a -G apache eprints

6. For now disable SELinux. (If you want to make this permanent you will need to configure /etc/selinux/config and change SELINUX=permissive). An SELinux policy for EPrints will be provided with the full release of EPrints 3.5.0.

setenforce 0

7. Make a directory to checkout EPrints and set appropriate permissions:

mkdir /opt/eprints3
chown eprints:eprints /opt/eprints3
chmod 2775 /opt/eprints3

8. Become the eprints user and clone EPrints 3.5 recursively and checkout v3.5.0-beta-1

su eprints
cd /opt/eprints3
git clone https://github.com/eprints/eprints3.5.git --recurse-submodules .
git checkout v3.5.0-beta-1

9. Become the root user again and install CPAN modules. (Answer 'y' if prompted whilst running cpan_modules.pl). This could take 10 minutes or more to complete but ensures you get modules tested against this version of EPrints. It is worth running cpan_modules.pl a second time after it completes, to get a better idea if all CPAN modules have been installed successfully.

su root
/opt/eprints3/cpan_modules.pl

10. Be sure to either set a password for the MariaDB root user or create another user (e.g. eprints) that can create new databases and add new MariaDB users

mysql
CREATE USER 'eprints'@'localhost' IDENTIFIED by '<CHANGE_ME>';
GRANT ALL PRIVILEGES ON *.* TO 'eprints'@'localhost' WITH GRANT OPTION;

11. Become the eprints user again and create your new EPrints archive using the 'pub' flavour and then follow the interactive instructions.

su eprints
/opt/eprints3/bin/epadmin create

12. Become the root user and create an Apache configuration file at /etc/httpd/conf.d/eprints.conf with the following line:

Include /opt/eprints3/cfg/apache.conf

13. For now, disable /etc/httpd/conf.d/ssl.conf

mv /etc/httpd/conf.d/ssl.conf /etc/httpd/conf.d/ssl.conf.disabled

14. Test and start Apache..

apachectl configtest
systemctl enable --now httpd

Troubleshooting

Error when creating context field for citationcache table

Some versions of MySQL/MariaDB will not allow a longtext field to have an index assigned to it. This can be fixed by modifying the code for /opt/eprints3/perl_lib/EPrints/DataObj/CitationCache.pm and editing the line to remove the SQL index for the context field, so that:

{ name=>"context", type=>"longtext", sql_index=>1 },

becomes:

{ name=>"context", type=>"longtext" },

You will then need to run the follow command on your archive to make sure all fields for the CitationCache have been added to the database before you start Apache for the first time.

/opt/eprints3/bin/epadmin update <ARCHIVE_ID>

We considered making the above code change to Beta 1 but were unsure whether it might affect the way citation caching works. As this issue only affects some versions of MySQL/MariaDB we felt it better to leave the SQL index in for now and test whether it is required before a future beta release.

Indexer not starting

Make sure /opt/eprints3/var/ is group writeable. chmod g+w /opt/eprints3/var

Contributions autocompleter gives 500 error

This may be due to certain versions of MySQL / Mariad DB enforcing sql_mode=only_full_group_by. You will need to add configuration to a file in /etc/my.cnf.d/zz_disable_ofgb.cnf or /etc/mysql/my.cnf.d/zz_disable_ofgb.cnf on some operating system and add the following two lines. Then restart MySQL / MariaDB.

We are looking into whether the code can be modified so that you do not need to disable this restriction in MySQL / MariaDB.

Errors when generating thumbnails for PDFs

If you are runnin Debian / Ubuntu the ImageMagick policy file may block you from parsing PDF to generate thumbnails. Follow this advice on how to amend the policy.


Deploying HTTPS using Let's Encrypt

TO BE WRITTEN

Reporting Issues

We are already aware of a number of issues with this beta, which we are currently working on and are logged at https://github.com/eprints/eprints3.5. Please check over these before reporting any issues you may discover.