Nuxeo Server

Installing and Setting Up Related Software

Updated: January 17, 2019

The Nuxeo Platform modules use external software for some features. They need to be installed on the server in addition to Nuxeo application.

On a naked default Nuxeo Platform, you need the following software:

• For web preview of office documents: LibreOffice and pdftohtml
• LibreOffice (version >= 5): converts office file into PDF
• pdftohtml: converts converted PDF into HTML preview
• For thumbnail generation: ImageMagick and Ghostscript for most file formats. UFRaw for RAW files.
• For processing WordPerfect documents: libwpd

If you installed the Nuxeo DAM addon, you will need these additional requirements:

• For picture preview and tilling: ImageMagick (already required for thumbnails)
• For video conversion and storyboarding: FFmpeg
• For subtitles extraction from videos: CCExtractor

Thumbnails and previews are created when documents are imported into Nuxeo, not on the fly when browsing documents. So in order to check if the third party software work properly on your Nuxeo instance, you must import new documents.

Installing on Linux

Under Debian or Ubuntu, most of these can be installed by the following command:

$sudo apt-get install openjdk-8-jdk imagemagick ufraw poppler-utils libreoffice ffmpeg libwpd-tools ghostscript exiftool  Installing the FFmpeg package from your distribution's repository may not provide you with support for all video formats. Refer to the FFmpeg section for more information. LibreOffice Configuration Minimum required version The minimum version required is LibreOffice 5. The path to the soffice program must be added to the PATH environment variable. Installation location and Path configuration For preview to work, the server must start LibreOffice. The Nuxeo Platform looks for LibreOffice at different locations on the system. See PlatformUtils.java definition for searched locations. If LibreOffice isn't available at one of these locations, you need to add the path to soffice program to your path: Edit the PATH environment variable and add :OFFICE_INSTALL_DIRECTORY/program. If not using default install path, you may have to add the path to the executable in your nuxeo.conf: jod.office.home=/path/to/libreoffice  Non-latin languages configuration If you'll be working with non-latin languages: 1. Start LibreOffice manually. 2. Install the additional fonts you may need for non-default languages. Controlling Threads Used by ImageMagick By default ImageMagick is multi threaded and will use all the available CPUs. This creates burst of CPU usage, especially when thumbnail is generated concurrently. Hopefully you can control the number of threads used by ImageMagick either by: • Editing /etc/ImageMagick/policy.xml and setting <policy domain="resource" name="thread" value="1"/>. • adding an environment variable export MAGICK_THREAD_LIMIT=1 in the nuxeo user .bash_profile. CCExtractor Installation CCExtractor is used to extract subtitles from videos. Installing CCExtractor on a GNU/Linux distribution requires to compile it from source. The recommended way to do it is to use our "in-docker-build": https://github.com/nuxeo/nuxeo-tools-docker/tree/master/ccextractor. To generate a package (by default for the latest Ubuntu LTS) issue the following commands: $ sudo apt-get update
$sudo apt-get install docker.io$ cd /tmp
$git clone https://github.com/nuxeo/nuxeo-tools-docker.git$ cd nuxeo-tools-docker/ccextractor
$sudo ./build-package.sh  Installing on macOS and OS X The macOS installation instructions provided use Homebrew. LibreOffice and pdftohtml for Office and PDF Preview Installing LibreOffice and pdftohtml on the server is only required if you need to use preview on PDF and office documents. pdftohtml is used for previewing PDF files. It is included in poppler. LibreOffice LibreOffice is used for preview on office documents in association with pdftohtml. Minimum required version The minimum version required is LibreOffice 5. The path to the soffice program must be added to the PATH environment variable. Download and install LibreOffice from http://www.libreoffice.org/. Installation location and Path configuration For preview to work, the server must start LibreOffice. The Nuxeo Platform looks for LibreOffice at different locations on the system. See PlatformUtils.java definition for searched locations. If LibreOffice isn't available at one of these locations, you need to add the path to soffice program to your path: Edit the PATH environment variable and add :OFFICE_INSTALL_DIRECTORY/program. If not using default install path, you may have to add the path to the executable in your nuxeo.conf: jod.office.home=/path/to/libreoffice  Non-latin languages configuration If you'll be working with non-latin languages: 1. Start LibreOffice manually. 2. Install the additional fonts you may need for non-default languages. pdftohtml To install pdftohtml using Homebrew: $ brew install poppler


ImageMagick

ImageMagick is used in association with Ghostscript to generate the document thumbnails. It is also used by the Nuxeo DAM add-on for the preview and tiling of pictures.

To install ImageMagick using Homebrew:

$brew install imagemagick  Ghostscript Ghostscript is used in association with ImageMagick to generate the thumbnails of documents. To install Ghostscript using Homebrew: $ brew install ghostscript


FFmpeg

FFmpeg is required by the Nuxeo DAM addon. It is used to create the storyboard of videos and convert them to additional formats.

To install FFmpeg using Homebrew:

$brew install ffmpeg --with-fdk-aac --with-ffplay --with-freetype \ --with-frei0r --with-libass --with-libbluray --with-libcaca \ --with-libquvi --with-libvidstab --with-libvo-aacenc --with-libvorbis \ --with-libvpx --with-opencore-amr --with-openjpeg --with-openssl \ --with-opus --with-rtmpdump --with-schroedinger --with-speex \ --with-theora --with-tools --with-x265 --with-faac  This installs most libraries. You can of course remove the libraries that are not needed for the video files you will be managing. Use brew info ffmpeg for details about each library available. UFRaw UFRaw is used in association with ImageMagick and Ghostscript to generate RAW document thumbnails. To install UFRaw using Homebrew: $ brew install ufraw


libwpd

libwpd used to process WordPerfect documents.

To install libwpd using Homebrew:

$brew install libwpd  ExifTool ExifTool is required by the Nuxeo Binary Metadata add-on. It is used to extract and override binaries metadata. To install ExifTool using Homebrew: $ brew install exiftool


CCExtractor

CCExtractor is used to extract subtitles from videos.

To install CCExtractor using Homebrew:

\$ brew install ccextractor


Installing on Windows

The following software are already included when using the .exe installer:

• FFmpeg
• ImageMagick
• pdftohtml
• ghostscript
• Exiftool
• OpenJDK 8 JDK.

The installer does not install them globally in Windows: they are available from the 3rdparty folder of the server tree and added to the PATH by the nuxeoctl.bat script.

If not already present on the system, you will have the option to automatically install LibreOffice and PostgreSQL.

Warning about ImageMagick: Some versions of Windows come with a System utility command named convert whose name conflicts with the ImageMagick's command of the same name. After installing Nuxeo, you can check if there will be a conflict:

1. Open a terminal and use the where convert command. The output will tell you which command is in the PATH.
2. If you don't see ImageMagick in the result (it must be the first of the list, or the only one), then you must copy the path to ImageMagick and add it to the PATH System variable.

1. Open File Explorer, right-click on "This PC" and click on Properties.

2. On the System panel select Advanced system settings.

3. On the Advanced tab, click Environment Variables... and edit the PATH system variable to add the path you copied (use a ; to separate values).

LibreOffice and pdftohtml

Installing LibreOffice and pdftohtml on the server is only required if you need to use preview on PDF and office documents. pdftohtml is used for previewing PDF files. It is included in poppler.

LibreOffice

LibreOffice is used for preview on office documents in association with pdftohtml.

Minimum required version

The minimum version required is LibreOffice 5. The path to the soffice program must be added to the PATH environment variable.

Installation location and Path configuration

For preview to work, the server must start LibreOffice. The Nuxeo Platform looks for LibreOffice at different locations on the system. See PlatformUtils.java definition for searched locations.

If LibreOffice isn't available at one of these locations, you need to add the path to soffice program to your path: Edit the Path system variable and add ;OFFICE_INSTALL_DIRECTORY\program.

If not using default install path, you may have to add the path to the executable in your nuxeo.conf:

jod.office.home=disk:\path\to\libreoffice


Non-latin languages configuration

If you'll be working with non-latin languages:

1. Start LibreOffice manually.
2. Install the additional fonts you may need for non-default languages.

pdftohtml

1. Install the poppler binary (available from this blogpost).
Old pdftohtml binaries are available from http://sourceforge.net/projects/pdftohtml/files/, but they are obsolete. It is recommended to use poppler.
2. Copy the path to the bin folder inside Poppler's installation directory (e.g. C:\Program Files (x86)\Poppler\bin) and add it to the PATH system variable.

1. Open File Explorer, right-click on "This PC" and click on Properties.

2. On the System panel select Advanced system settings.

3. On the Advanced tab, click Environment Variables... and edit the PATH system variable to add the path you copied (use a ; to separate values).

ImageMagick

ImageMagick is used in association with Ghostscript to generate the document thumbnails. It is also used by the Nuxeo DAM add-on for the preview and tiling of pictures.

Installing ImageMagick

ImageMagick is installed by the Nuxeo Platform Windows installer (.exe), but here are the steps to install it manually in case you used the .ZIP distribution.

2. Run the installer and make sure you check the option to add ImageMagick to the PATH.

Some versions of Windows come with a System utility command named convert whose name conflicts with the ImageMagick's command of the same name See the ImageMagick Note above.

By default ImageMagick is multi threaded and will use all the available CPUs. This creates burst of CPU usage, especially when thumbnail is generated concurrently.

Hopefully you can control the number of threads used by ImageMagick by setting a system environment variable MAGICK_THREAD_LIMIT=1.

Ghostscript

Ghostscript is used in association with ImageMagick to generate the thumbnails of documents.

2. Copy the path to the bin folder inside Ghostscript's installation directory (e.g. C:\Program Files\gs\gs9.20\bin) and add it to the PATH system variable.

1. Open File Explorer, right-click on "This PC" and click on Properties.

2. On the System panel select Advanced system settings.

3. On the Advanced tab, click Environment Variables... and edit the PATH system variable to add the path you copied (use a ; to separate values).

FFmpeg

FFmpeg is required by the Nuxeo DAM addon. It is used to create the storyboard of videos and convert them to additional formats.

2. Extract the FFmpeg archive into a new folder, named C:\Program Files\FFmpeg for instance.

The archives provided by this website should be decompressed with: 7-Zip

3. Copy the path to the bin folder inside FFmpeg's directory (e.g. C:\Program Files\FFmpeg\bin) and add it to the PATH system variable. This can be done by:

1. Open File Explorer, right-click on "This PC" and click on Properties.

2. On the System panel select Advanced system settings.

3. On the Advanced tab, click Environment Variables... and edit the PATH system variable to add the path you copied (use a ; to separate values).

UFRaw

UFRaw is used in association with ImageMagick and Ghostscript to generate RAW document thumbnails.

2. Copy the path to the bin folder inside UFRaw's installation directory (e.g. C:\Program Files (x86)\UFRaw\bin) and add it to the PATH system variable.

1. Open File Explorer, right-click on "This PC" and click on Properties.

2. On the System panel select Advanced system settings.

3. On the Advanced tab, click Environment Variables... and edit the PATH system variable to add the path you copied (use a ; to separate values).

Exiftool

Here are some quick installation steps to install Exiftool. Full installation steps are available at http://www.sno.phy.queensu.ca/~phil/exiftool/install.html.

To install Exiftool:

2. Unzip the distribution to a folder, named C:\Program Files (x86)\exiftool for example.
3. Copy the path to the exiftool folder and add it to the PATH environment variable.

1. Open File Explorer, right-click on "This PC" and click on Properties.

2. On the System panel select Advanced system settings.

3. On the Advanced tab, click Environment Variables... and edit the PATH system variable to add the path you copied (use a ; to separate values).

4. Rename the extracted .exe into exiftool.exe.

CCExtractor

CCExtractor is used to extract subtitles from videos.

2. Unzip the contents to a folder, for example C:\Program Files (x86)\CCExtractor. Copy the path to it and add it to the the PATH system variable.

1. Open File Explorer, right-click on "This PC" and click on Properties.

2. On the System panel select Advanced system settings.

3. On the Advanced tab, click Environment Variables... and edit the PATH system variable to add the path you copied (use a ; to separate values).

3. Rename ccextractorwin.exe to ccextractor.exe.