Jump to content
Wiki Home
EPrints Home
Bazaar
Files
Main menu
Main menu
move to sidebar
hide
Navigation
Front Page
EPrints 3 Manual
EPrints Training Course
EPrints Glossary
Installing EPrints
How-to Configure EPrints
EPrints 3.2+ API
EPrints 3 Reference
EPrints Plugins
Wiki
All categories
Recent changes
Main Page
Help
EPrints Documentation
Search
Search
Appearance
Log in
Request account
Personal tools
Log in
Request account
Pages for logged out editors
learn more
Contributions
Talk
Editing
Coversheets
(section)
Page
Discussion
British English
Read
Edit
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
View history
General
What links here
Related changes
Special pages
Page information
Appearance
move to sidebar
hide
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Installing Dependencies== ===PDFBox or GhostScript=== The Coversheets Bazaar package requires either '''PDFBox''' or '''GhostScript''' to attach the generated coversheet to the rest of the PDF document. For the more recent Linux distributions (e.g. Ubuntu 14.04+, Debian 7 and RedHat/CentOS 7) PDFBox is recommended as this is more reliable and robust, (i.e. it is less likely for a coversheet task to fail or take up a lot or resources for a long period of time). Using PDFBox or GhostScript on earlier versions of Linux may be difficult, it is likely any packages you may need to install may not be present by default or have different names because they are earlier versions. ====PDFBox==== Installing PDFBox requires Java to be installed. As root or with sudo this can be done by running the appropriate following command: * Debian 8 / Ubuntu 16.04 (and later): apt-get install openjdk-8-jdk * Debian 7 / Ubuntu 14.04: apt-get install openjdk-7-jdk * RedHat/Fedora/CentOS 7: yum install java-1.8.0-openjdk Once installed download the latest pdf-app-2.x.x JAR file from https://pdfbox.apache.org/download.cgi#20x, e.g.: cd /opt/eprints3/archives/example/bin/tools/ wget http://mirror.ox.ac.uk/sites/rsync.apache.org/pdfbox/2.0.24/pdfbox-app-2.0.24.jar Now create the stitching Bash script that uses the PDFBox JAR file under the filename '''stitchPDFs''' in your archives bin/tools/ directory and add the following ''(provided by Jonathan Green / University of Nottingham)'': #/bin/bash dir=`dirname $0` if [ $# -eq 3 ] then # for compatibility with old eprints config we use the order: outputfile firstPDF secondPDF java -jar "$dir/pdfbox-app-2.0.2.jar" PDFMerger "$2" "$3" "$1" else echo "Usage: stitchPDFs <outputfile> <coversheet> <originalfile>" fi Modify the permissions on this files so it can be executed: chmod a+x bin/tools/stitchPDFs ====GhostScript==== Installing GhostScript just requires a number of Linux packages. As root or with sudo run the appropriate following command: * Debian/Ubuntu: apt-get install ghostscript gsfonts gsfonts-other libgs9 libgs9-common * RedHat/Fedora/CentOS: yum install ghostscript ghostscript-devel ghostscript-fonts ghostscript-gtk If you installed EPrints using the DEB or RPM package, it is likely many if not all of these packages will already be installed. Oracle (Sun) Java is required to make use of the Coversheets package work with Ghostcript. By default this is not available in the standard package repositories of most Linux distributions. Follow the instructions below (as the root user or with sudo) to install Oracle (Sun) Java on your Linux distribution: * '''Debian/Ubuntu''' apt-get install python-software-properties add-apt-repository ppa:webupd8team/java apt-get update apt-get install oracle-java8-installer * When prompted agree to the license agreement. * '''RedHat/Fedora/CentOS''' ** Go to http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html and agree to the licence conditions. ** Download the appropriate .rpm package (i.e. i586 or x64) for you system architecture. ** Install the RPM from the command line, (substitute for '''<version>''' and '''<arch>''' based on the filename of the RPM you actually downloaded): rpm -Uvh jdk-8u<version>-linux-<arch>.rpm ===Perl Modules=== Before installing the Perl modules make sure that '''make''' and '''gcc''' are installed as these are needed to build the OpenOffice Perl module. Run the appropriate command below as root or using sudo. * '''Debian/Ubuntu''' apt-get install make gcc * '''RedHat/Fedora/Centos''' yum install make gcc As the root user install the following Perl modules using CPAN. Choose the default option for any prompted questions. cpan ExtUtils::MakeMaker OpenOffice::OODoc PDF::API2 ADAMK/Archive-Zip-1.30.tar.gz '''N.B.''' # If you have not had to install any CPAN modules up to now, you may be prompted to configure CPAN before installing these modules, if so always choose the default options suggested. # For Archive::Zip it is recommended to use the specific version 1.30 tarball (as specified above). CPAN will download this specific tarball as part of the installation, like it would for non-version specific modules. The reason for using this specific version is, that as of at least 28th April 2015 the latest CPAN module has a bug, which means it does not work as required for EPrints Coversheet purposes. ===Apache OpenOffice=== Download the tarballed package of OpenOffice 3.4.1 for your Linux distribution. Later and some earlier versions of OpenOffice should work just as well but 3.4.1 is tried and tested. Then extract your DEB or RPM packages and install as root (or with sudo) using '''dpkg''' or '''rpm''' as appropriate. * Debian/Ubuntu (64-bit): wget http://downloads.sourceforge.net/project/openofficeorg.mirror/stable/3.4.1/Apache_OpenOffice_incubating_3.4.1_Linux_x86-64_install-deb_en-US.tar.gz tar -xzvf Apache_OpenOffice_incubating_3.4.1_Linux_x86-64_install-deb_en-US.tar.gz mv en-US Apache_OpenOffice_incubating_3.4.1_Linux_x86-64_install-deb_en-US dpkg -i Apache_OpenOffice_incubating_3.4.1_Linux_x86-64_install-deb_en-US/DEBS/*.deb * RedHat/Fedora/CentOS (64-bit): wget http://downloads.sourceforge.net/project/openofficeorg.mirror/stable/3.4.1/Apache_OpenOffice_incubating_3.4.1_Linux_x86-64_install-rpm_en-US.tar.gz tar -xzvf Apache_OpenOffice_incubating_3.4.1_Linux_x86-64_install-rpm_en-US.tar.gz mv en-US Apache_OpenOffice_incubating_3.4.1_Linux_x86-64_install-rpm_en-US rpm -Uvh Apache_OpenOffice_incubating_3.4.1_Linux_x86-64_install-rpm_en-US/RPMS/*.rpm * ''N.B. For 32-bit versions remove '-64' from each of the lines above.'' You can check this by running the following command. If it returns something with '64' in it, it is 64-bit, if it does not, it is almost certainly 32-bit. uname -i ===LibreOffice=== Rather than using an old tarballed version of OpenOffice you could use the package managed version of LibreOffice. However, this will requrie several changes to the OpenOffice configuration and code to work and has not be as thoroughly tested as the packages provided in the specific tarball of Apache OpenOffice. The following command can be used to install the required packages. (For RHEL/CentOS/Fedora/Rocky Linux, the EPEL package repository will need to be installed). * Debian/Ubuntu: apt install libreoffice unoconv * RHEL/CentOS/Fedora/Rocky: yum install libreoffice unoconv When you have installed the OpenOffice and Coversheets Bazaar plugins, you will need to add the following lines at the end od your archive's version of '''cfg/cfg.d/openoffice-path.pl''': $c->{executables}->{openoffice} = '/usr/lib/libreoffice/program/soffice.bin'; $c->{executables}->{python} = ''; $c->{executables}->{uno_converter} = "/usr/bin/unoconv"; $c->{invocation}->{openoffice} = '$(openoffice) "--accept=socket,host=localhost,port=2002;urp;StarOffice.ServiceManager" --norestore --nofirststartwizard --nologo --headless'; If you are installing on RHEL/CentOS/Fedora/Rocky Linux you need to change the openoffice executable line to: $c->{executables}->{openoffice} = '/usr/lib64/libreoffice/program/soffice.bin'; You then need to edit '''EPRINTS_PATH/lib/plugins/EPrints/Plugin/Convert/AddCoversheet.pm''' and change the lines: system( $session->config( 'executables', 'python' ), $session->config( 'executables', 'uno_converter' ), "$temp_dir/$coversheet_page.odt", "$temp_dir/$coversheet_page.pdf", ); to: system( $session->config( 'executables', 'python' ), $session->config( 'executables', 'uno_converter' ), "$temp_dir/$coversheet_page.odt", "-o", "$temp_dir/$coversheet_page.pdf", ); Once you have made those changes test EPrints config and reload the webserver and EPrints indexer: EPRINTS_PATH/bin/epadmin test apachectl graceful # "apache2ctl graceful" on Debian/Ubuntu EPRINTS_PATH/bin/indexer stop EPRINTS_PATH/bin/indexer start
Summary:
Please note that all contributions to EPrints Documentation may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
EPrints Documentation:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)