GroIMP is designed around plugins which can be added, modified or removed without modifying the GroIMP installation. ====== GroIMP Plugin ====== Any repository with a ''plugin.xml'' and ''plugin.properties'' files is considered as a plugin by GroIMP. To be properly loadable though, the ''plugin.xml'' needs to include: where ''plugin id'' and ''version'' need to be filled with the plugin information. See more: * [[:dev-guide:creating-own-plugin#plugin_structure|Plugin structure]] * [[:dev-guide:creating-own-plugin#Plugin_configuration_(For_Groimp_integration)|Create a GroIMP plugin]] * [[:dev-guide:creating-own-plugin#embedded_documentation|Add documentation to help panels]] * [[:dev-guide:linking-help-button | configure help buttons]] * [[https://gitlab.com/grogra/groimp-plugins|Git repo of GroIMP plugins]] * [[https://gitlab.com/grogra/groimp-template/|Plugin templates]] ====== Managing plugins ====== GroIMP plugins are located in to directories by default: - ''/path/where/groimpisinstalled/plugins/'' - ''~/.grogra.de-platform/plugins/'' Additionally it is possible to add a directory with the argument ''-p /path/to/directory/''. (e.g. ''java -jar core.jar -p /dir/''). When GroIMP starts it will automatically load every plugin in the given paths. **Note:** It is possible to //ignore// a plugin path by adding it to the //blacklisted// file in ''~/.grogra.de-platform/blacklisted''. ===== Manually ==== It is possible to manually add or remove a plugin by simply copying/deleting them from the loaded paths. The added plugin needs to be compiled and follow the plugin structure. See [[:dev-guide:creating-own-plugin|this guide]] on the plugin structure. **Note:** if you do not have the permission right to delete a repository from the GroIMP installation folder, you can prevent the plugin from being loaded by adding it to the //blacklisted// file. ===== Plugin Manager ===== The plugins can easily be updated, installed, or removed from the GUI with the [[user-guide:pluginmanager|Plugin Manager]]. The plugin manager uses the [[:dev-guide:plugins-repository|plugin repositories]] to find plugin data. These repositories can be local or remote but needs to follow the given structure.