# Derivateservice

The derivateservice is a backend process performing all 4ALLPORTAL file and document processing, such as preview generation or download generation, e.g. downsizing an image according to a selected download profile. It thus executes the instructions it gets from the Object Image Service.

For processing, additional tools for format conversion are required. They automatically come with a 4ALLPORTAL installation:

# How to Configure the Derivateservice

To configure the derivateservice and the automatic tool updating, you may either

  • change the general default settings by editing its startup parameters, or
  • give further runtime specifications by editing file derivateservice.config

# Startup Parameters

The startup parameters can be set locally if required via environments variables or by adding them to the startup options of the 4ALLPORTAL.
Note that adjusting the default settings is not required for the derivateservice to work.

Startup option
Environment variable
Description Default value
installation.path
INSTALLATION_PATH
Path to 4ALLPORTAL installation Current path
runtime.path
RUNTIME_PATH
Path to _runtime directory ${installation.path}/_runtime
global.path
GLOBAL_PATH
Path to global directory ${runtime.path}/global
temp.path
TEMP_PATH
Path to temp directory Default Java temp directory
derivateservice.start
DERIVATESERVICE_START
Switch to startup the derivateservice true
derivateservice.host
DERIVATESERVICE_HOST
Name of the host, where the derivateservice is running localhost
derivateservice.port
DERIVATESERVICE_PORT
Port of the derivateservice 8191
derivateservice.url
DERIVATESERVICE_URL
URL to the derivateservice ${derivateservice.host}:${derivateservice.port}
derivateservice.classpath
DERIVATESERVICE_CLASSPATH
Java classpath for the derivateservice ${installation.path}/_runtime/application/libs/*:./libs/*:./derivateservice.jar
derivateservice.java.options
DERIVATESERVICE_JAVA_OPTIONS
JVM options -Dfile.encoding=UTF-8 -Duser.timezone=UTC
derivateservice.debug
DERIVATESERVICE_DEBUG
Switch derivateservice to debug mode false
derivateservice.debug.suspend
DERIVATESERVICE_DEBUG_SUSPEND
JVM debug option n
derivateservice.debug.port
DERIVATESERVICE_DEBUG_PORT
JVM debug option 8002
derivateservice.debug.java.options
DERIVATESERVICE_DEBUG_JAVA_OPTIONS
JVM debug options ${derivateservice.java.options:} -Xdebug -Xrunjdwp:transport=dt_socket,address=*:${derivateservice.debug.port},server=y,suspend=${derivateservice.debug.suspend}
tools.dir
TOOLS_DIR
Path to external tools in installation directory tools
tools.skip.installation
TOOLS_SKIP_INSTALLATION
Switch to skip the automatically installation of the tools false

# Derivateservice.config Properties

Additionally, some runtime properties can be configured via file global/derivateservice.config.
Store this file in your custom folder for custom changes.

Property Startup option
Environment variable
Description Default value
cmykProfile derivateservice.cmyk.profile
DERIVATESERVICE_CMYK_PROFILE
Default CMYK profile. The path must be set either relative to folder global/icc or as an absolute path CoatedFOGRA39.icc
rgbProfile derivateservice.rgb.profile
DERIVATESERVICE_RGB_PROFILE
Default sRGB profile. The path must be set either relative to folder global/icc or as an absolute path sRGB Profile.icc
grayProfile derivateservice.gray.profile
DERIVATESERVICE_GRAY_PROFILE
Default grayscale profile. The path must be set either relative to folder global/icc or as an absolute path Generic Gray Profile.icc
skipToolsInstallation tools.skip.installation
TOOLS_SKIP_INSTALLATION
Switch to skip the automatic installation of the required tools false
imageMagickHome * imagemagick.home
IMAGEMAGICK_HOME
Installation directory of ImageMagick
imageMagickVersion * imagemagick.version
IMAGEMAGICK_VERSION
Required ImageMagick version
ghostscriptHome * ghostscript.home
GHOSTSCRIPT_HOME
Installation directory of Ghostscript
ghostscriptVersion * ghostscript.version
GHOSTSCRIPT_VERSION
Required Ghostscript version
ffmpegHome * ffmpeg.home
FFMPEG_HOME
Installation directory of FFmpeg
ffmpegVersion * ffmpeg.version
FFMPEG_VERSION
Required FFmpeg version
exiftoolHome * exiftool.home
EXIFTOOL_HOME
Installation directory of ExifTool
exiftoolVersion * exiftool.version
EXIFTOOL_VERSION
Required ExifTool version
librawHome * libraw.home
LIBRAW_HOME
Installation directory of LibRaw
librawVersion * libraw.version
LIBRAW_VERSION
Required LibRaw version

*: If not set, the existing version will be used (if possible).

Request missing documentation