====== Table of Contents ====== * [[:User-Manual:ch01#system_requirements|System Requirements]] * [[:User-Manual:ch01#download|Download]] * [[:User-Manual:ch01#install_from_binaries|Installation from binaries]] * [[:User-Manual:ch01#running_groimp|Running GroIMP]] * [[:User-Manual:ch01#running_groimp|From a Shortcut]] * [[:User-Manual:ch01#running_groimp|From the Command Line]] * [[:User-Manual:ch01#running_groimp|Additional Options]] * [[:User-Manual:ch01#running_groimp|GroIMP Interfaces]] * [[:User-Manual:ch01#plugin_architecture|Plugin Architecture]] ====== Requirements ====== GroIMP is written in Java. Thus, it should follow Java's WORA-principle (Write Once, Run Anywhere) and should run on every Java-capable platform. GroIMP has been tested successfully on Unix and Windows platforms. GroIMP 2.1.3 requires the installation of a Java runtime environment of version 17. Which can be obtained from Oracle at [[https://www.oracle.com/|www.oracle.com]]. For a reasonably performant runtime behaviour, at least 256 MB RAM and a 1 GHz processor are recommended. ====== Download ====== The binary distribution of GroIMP is available on the [[https://gitlab.com/grogra/groimp/-/releases|gitlab release section]] as a zip-file, windows exe, or debian release. ====== Installation Installation from binaries ====== The windows exe and debian release are executable files that will extract and install GroIMP on your computer. It will also provide you to create a menu entry and a shortcut. Mac users need to download the zip-file, extract it and run GroIMP from command line. The directory structure of the zip-file has to be preserved, check that your zip program is set up accordingly (and does not extract all files into one and the same directory). After extraction of the zip-file, the following files, among others, are present in the installation directory: `README` This plain text file contains additional information about the GroIMP distribution. Read it carefully. `INSTALL` This plain text file contains instructions for the installation of the GroIMP distribution, legal notices and other information. Read it carefully. If you have troubles with the installation procedure described in this manual, consult the file `INSTALL` a solution. `plugins` This directory contains all the plugins that are part of the binary distribution of GroIMP. `core.jar` This file is an executable java archive and the entry-point for the Java runtime environment to start the GroIMP application. ====== Running GroIMP ====== Because `core.jar` is an executable java archive, it is possible to start GroIMP just by (double-)clicking on the file in your system's file browser as you would do it with a usual executable file. This requires a suitable setup of your file browser, see the documentation of the browser and your Java installation if it does not already work. ==== From a Shortcut ==== You can set up your desktop to show a menu entry for GroIMP. How this is done depends on your system. Usually your system provides a menu editor where you can create a new menu entry and specifiy the command to be executed when the entry is activated. Choose the command as you would do on command line. ==== From the Command Line ==== The file `core.jar` in your installation directory of GroIMP's binary distribution is the entry-point for starting GroIMP. Running GroIMP from the command line is easy: > **java -jar path/to/core.jar** Of course, `path/to/core.jar` has to be replaced by the actual path to the file `core.jar`. E.g., if, on a Unix system, the installation directory is `/usr/lib/groimp`, the command would be > **java -jar /usr/lib/groimp/core.jar** or, on a Windows system with installation directory `C:\Program Files\GroIMP`, > **java -Xverify:none -jar "C:\\Program Files\\GroIMP\\core.jar"** ==== Additional Options ==== === Java Parameters === The **java** command has several options which influence the runtime behaviour, see the documentation of your Java installation. These options have to be specified before the `-jar` option. E.g., for the Java runtime environment of Sun, the option `-Xmx` specifies the maximum amount of heap memory size that should be allocated. The default value of this option may be much smaller than your installed main memory size. In this case GroIMP cannot benefit from your memory until you specify the `-Xmx` option as in > **java -Xmx400m -jar path/to/core.jar** which allows a maximum heap memory allocation of 400 MB. If you encounter `OutOfMemoryError`s when running GroIMP, you have to specify this option with a larger value. === GroIMP Parameters === The command line also enables to provides parameters to GroIMP. These parameters need to be passed AFTER the //core.jar// file. E.g. > **java -jar core.jar --project-tree** The complete list of GroIMP parameters can be found [[:user-guide:advanced-groimp-arguments|here]]. ==== GroIMP Interfaces ==== See [[:user-guide:additional_interfaces|GroIMP interfaces]] for more details and tutorials. GroIMP can be run from different interfaces. By default, GroIMP use the "imp" interface which is its Graphical User Interface (GUI). GroIMP can also be started //headless//, from //CLI//, or //API//. To define which interface is used, when starting GroIMP you need to pass the parameter //-a//. E.g. > **java -jar core.jar -a api** More information can be found for using GroIMP [[:groimp-platform:interfaces:headless|headless]], [[:groimp-platform:interfaces:cli|CLI]], and [[:groimp-platform:interfaces:api|API]]. ===== Plugin Architecture ===== ==== Java plugins ==== Installation of Plugins for the Java Image I/O Framework. GroIMP requires only a Java runtime environment in order to run. However, the capabilities of some parts of the Java runtime environment can be extended by the installation of additional plugins. GroIMP makes use of the Java Image I/O Framework which provides such a pluggable architecture: The user may install plugins which add support for an image file format to the Java Image I/O Framework. If the standard installation of the Java runtime environment does not support an image file format you need, please consult the [[http://java.sun.com/j2se/1.4.2/docs/guide/imageio/index.html|Java Image I/O pages]] for a suitable plugin. ==== GroIMP Plugins ==== GroIMP is developed around a plugin architecture. New plugin can easily be added to your GroIMP installation by simply adding them to the loading directory of GroIMP. On startup GroIMP load all plugins under it's installed path/plugins, as well as plugins in the //user plugin path//. The //user plugin path// can be modified in the GroIMP options, and is by default at ~/.grogra.de-platform/plugins/. GroIMP plugins can be installed/ removed/ modified from within GroIMP with the [[:User-Guide:pluginmanager| Plugin Manager]]. A complete list of available plugin can be found at [[https://grogra.gitlab.io/groimp-utils/plugin_web_explorer/]]