EPrints 3.5.0 Beta 1
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.