How to install or compile GIMP filters/plugins/extensions on Linux

Posted on in Categories , , , , , last updated October 18, 2017

How do I install or compile new GIMP filters on a Ubuntu or Debian or Fedora or CentOS Linux desktop system?

GNU Image Manipulation Program (GIMP) is an open source and advanced picture editor. One can use GIMP to edit, scan, enhance and retouch photos/images. You can make your own images too. It comes with various editing tools and filters just like Photoshop. This guide show you how to install or compile GIMP filters on a Debian or Ubuntu Linux to increase your productivity and take total control over your images.

Install GIMP

Type the following apt command or apt-get command to install GIMP on a Debian or Ubuntu Linux:
$ sudo apt install gimp
Sample outputs:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  gimp-data libamd2 libbabl-0.1-0 libcamd2 libccolamd2 libcholmod3 libgegl-0.3-0 libgimp2.0 libmetis5 libmng2 libumfpack5 python-gobject-2 python-gtk2
Suggested packages:
  gimp-help-en | gimp-help gimp-data-extras python-gobject-2-dbg python-gtk2-doc
The following NEW packages will be installed:
  gimp gimp-data libamd2 libbabl-0.1-0 libcamd2 libccolamd2 libcholmod3 libgegl-0.3-0 libgimp2.0 libmetis5 libmng2 libumfpack5 python-gobject-2 python-gtk2
0 upgraded, 14 newly installed, 0 to remove and 0 not upgraded.
Need to get 14.8 MB of archives.
After this operation, 79.8 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://in.archive.ubuntu.com/ubuntu artful/universe amd64 libmng2 amd64 2.0.2-0ubuntu3 [169 kB]
Get:2 http://in.archive.ubuntu.com/ubuntu artful/universe amd64 libgimp2.0 amd64 2.8.20-1 [777 kB]
Get:3 http://in.archive.ubuntu.com/ubuntu artful/universe amd64 gimp-data all 2.8.20-1 [7,689 kB]
Get:4 http://in.archive.ubuntu.com/ubuntu artful/main amd64 python-gobject-2 amd64 2.28.6-12ubuntu2 [181 kB]                                                                                                      
Get:5 http://in.archive.ubuntu.com/ubuntu artful/main amd64 python-gtk2 amd64 2.24.0-5.1ubuntu1 [621 kB]                                                                                                          
Get:6 http://in.archive.ubuntu.com/ubuntu artful/universe amd64 libbabl-0.1-0 amd64 0.1.30-1 [227 kB]                                                                                                             
Get:7 http://in.archive.ubuntu.com/ubuntu artful/main amd64 libamd2 amd64 1:4.5.5-1 [24.4 kB]                                                                                                                     
Get:8 http://in.archive.ubuntu.com/ubuntu artful/main amd64 libcamd2 amd64 1:4.5.5-1 [20.3 kB]                                                                                                                    
Get:9 http://in.archive.ubuntu.com/ubuntu artful/main amd64 libccolamd2 amd64 1:4.5.5-1 [22.3 kB]                                                                                                                 
Get:10 http://in.archive.ubuntu.com/ubuntu artful/main amd64 libmetis5 amd64 5.1.0.dfsg-5 [169 kB]                                                                                                                
Get:11 http://in.archive.ubuntu.com/ubuntu artful/main amd64 libcholmod3 amd64 1:4.5.5-1 [306 kB]                                                                                                                 
Get:12 http://in.archive.ubuntu.com/ubuntu artful/main amd64 libumfpack5 amd64 1:4.5.5-1 [226 kB]                                                                                                                 
Get:13 http://in.archive.ubuntu.com/ubuntu artful/universe amd64 libgegl-0.3-0 amd64 0.3.20-1 [785 kB]                                                                                                            
Get:14 http://in.archive.ubuntu.com/ubuntu artful/universe amd64 gimp amd64 2.8.20-1 [3,612 kB]                                                                                                                   
Fetched 14.8 MB in 19s (742 kB/s)                                                                                                                                                                                 
Selecting previously unselected package libmng2:amd64.
(Reading database ... 178349 files and directories currently installed.)
....
..
....
Setting up libbabl-0.1-0:amd64 (0.1.30-1) ...
Setting up libcamd2:amd64 (1:4.5.5-1) ...
Setting up libmng2:amd64 (2.0.2-0ubuntu3) ...
Setting up gimp-data (2.8.20-1) ...
Setting up python-gobject-2 (2.28.6-12ubuntu2) ...
Setting up libamd2:amd64 (1:4.5.5-1) ...
Processing triggers for libc-bin (2.26-0ubuntu2) ...
Setting up libmetis5:amd64 (5.1.0.dfsg-5) ...
Setting up libccolamd2:amd64 (1:4.5.5-1) ...
Processing triggers for man-db (2.7.6.1-2) ...
Processing triggers for gnome-menus (3.13.3-6ubuntu5) ...
Processing triggers for hicolor-icon-theme (0.17-1) ...
Setting up python-gtk2 (2.24.0-5.1ubuntu1) ...
Setting up libcholmod3:amd64 (1:4.5.5-1) ...
Setting up libumfpack5:amd64 (1:4.5.5-1) ...
Setting up libgegl-0.3-0:amd64 (0.3.20-1) ...
Setting up gimp (2.8.20-1) ...
Processing triggers for libc-bin (2.26-0ubuntu2) ...

Install GIMP on a Fedora Linux

Type the following dnf command:
$ sudo dnf install gimp

Install GIMP on a CentOS/RHEL Linux

Type the following yum command:
$ sudo yum install gimp

Start GIMP

Simply type the following command at the CLI or start it from KDE/Gnome desktop:
$ gimp &

Fig.01: GIMP loaded with limited plugins
Fig.01: GIMP loaded with limited plugins

Install repository of optional extensions for GIMP

The following package comes with over 100+ gimp plugins and extensions. To install it on a Debian/Ubuntu Linux, run:
$ sudo apt install gimp-plugin-registry
Sample outputs:

[sudo] password for vivek: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  gimp-gmic libglew2.0 libgtkglext1 libpangox-1.0-0 libtiff-tools
Suggested packages:
  gmic icc-profiles glew-utils libtiff-opengl
The following NEW packages will be installed:
  gimp-gmic gimp-plugin-registry libglew2.0 libgtkglext1 libpangox-1.0-0 libtiff-tools
0 upgraded, 6 newly installed, 0 to remove and 0 not upgraded.
Need to get 4,866 kB of archives.
After this operation, 13.7 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://in.archive.ubuntu.com/ubuntu artful/universe amd64 libpangox-1.0-0 amd64 0.0.2-5 [41.7 kB]
Get:2 http://in.archive.ubuntu.com/ubuntu artful/universe amd64 gimp-gmic amd64 1.7.9+zart-4build1 [3,070 kB]
Get:3 http://in.archive.ubuntu.com/ubuntu artful/universe amd64 libglew2.0 amd64 2.0.0-5 [140 kB]
Get:4 http://in.archive.ubuntu.com/ubuntu artful/universe amd64 libgtkglext1 amd64 1.2.0-7 [72.5 kB]
Get:5 http://in.archive.ubuntu.com/ubuntu artful/universe amd64 libtiff-tools amd64 4.0.8-5 [195 kB]
Get:6 http://in.archive.ubuntu.com/ubuntu artful/universe amd64 gimp-plugin-registry amd64 7.20140602ubuntu3 [1,347 kB]
Fetched 4,866 kB in 3s (1,272 kB/s)             
Selecting previously unselected package libpangox-1.0-0:amd64.
(Reading database ... 179935 files and directories currently installed.)
Preparing to unpack .../0-libpangox-1.0-0_0.0.2-5_amd64.deb ...
Unpacking libpangox-1.0-0:amd64 (0.0.2-5) ...
Selecting previously unselected package gimp-gmic.
Preparing to unpack .../1-gimp-gmic_1.7.9+zart-4build1_amd64.deb ...
Unpacking gimp-gmic (1.7.9+zart-4build1) ...
Selecting previously unselected package libglew2.0:amd64.
Preparing to unpack .../2-libglew2.0_2.0.0-5_amd64.deb ...
Unpacking libglew2.0:amd64 (2.0.0-5) ...
Selecting previously unselected package libgtkglext1:amd64.
Preparing to unpack .../3-libgtkglext1_1.2.0-7_amd64.deb ...
Unpacking libgtkglext1:amd64 (1.2.0-7) ...
Selecting previously unselected package libtiff-tools.
Preparing to unpack .../4-libtiff-tools_4.0.8-5_amd64.deb ...
Unpacking libtiff-tools (4.0.8-5) ...
Selecting previously unselected package gimp-plugin-registry.
Preparing to unpack .../5-gimp-plugin-registry_7.20140602ubuntu3_amd64.deb ...
Unpacking gimp-plugin-registry (7.20140602ubuntu3) ...
Setting up libtiff-tools (4.0.8-5) ...
Processing triggers for libc-bin (2.26-0ubuntu2) ...
Setting up gimp-gmic (1.7.9+zart-4build1) ...
Setting up libglew2.0:amd64 (2.0.0-5) ...
Setting up libpangox-1.0-0:amd64 (0.0.2-5) ...
Processing triggers for man-db (2.7.6.1-2) ...
Setting up libgtkglext1:amd64 (1.2.0-7) ...
Setting up gimp-plugin-registry (7.20140602ubuntu3) ...
Processing triggers for libc-bin (2.26-0ubuntu2) ...

CentOS Linux user type the following command:
$ sudo yum install gimpfx-foundry
Fedora Linux user type the following command:
$ sudo dnf install gimpfx-foundry
Start GIMP again to see newly installed

Fig.02: GIMP loaded with newly installed extension under FX Foundry meny
Fig.02: GIMP loaded with newly installed extension under FX Foundry meny
:

How do I compile GIMP extensions/fitters?

For demo purpose I am going to compile and install GIMP Beautify plug-ins – a set of GIMP plug-ins for quickly and easily beautify photos.

Install developers tools and libs

Type the following command on a Debian/Ubuntu Linux:
$ sudo apt install build-essential
$ ### [ install gimp dev libs and git client ] ###
$ sudo apt install libgimp2.0-dev git

Type the following command on a CentOS/RHEL/Scientific/Oracle Linux:
$ sudo yum group install "Development Tools"
$ ### [ install gimp dev libs/git client ] ###
$ sudo yum install gimp-devel git

For more info see the following tutorials:

Clone beautify plugin using the git client

Type the following git command:
$ git clone https://github.com/hejiann/beautify.git
Cloning into 'beautify'...
remote: Counting objects: 1253, done.
remote: Total 1253 (delta 0), reused 0 (delta 0), pack-reused 1253
Receiving objects: 100% (1253/1253), 23.89 MiB | 338.00 KiB/s, done.
Resolving deltas: 100% (655/655), done.

Compile it:
$ cd beautify
$ make

Install plugin into user directory i.e. ~/.gimp/:
$ make userinstall
Sample outputs:

gimptool-2.0 --install-bin beautify
cp 'beautify' '/home/vivek/.gimp-2.8/plug-ins'
gimptool-2.0 --install-bin skin-whitening
cp 'skin-whitening' '/home/vivek/.gimp-2.8/plug-ins'
gimptool-2.0 --uninstall-bin rip-border
rm -f '/home/vivek/.gimp-2.8/plug-ins/rip-border'
gimptool-2.0 --uninstall-bin texture-border
rm -f '/home/vivek/.gimp-2.8/plug-ins/texture-border'
gimptool-2.0 --install-bin simple-border
cp 'simple-border' '/home/vivek/.gimp-2.8/plug-ins'
gimptool-2.0 --install-bin border
cp 'border' '/home/vivek/.gimp-2.8/plug-ins'

Please note that run the following command to install plugin into machine directory for all users:
$ sudo make install

Install textures

Use the wget command or curl command to grab the files:
$ cd /tmp/
$ wget https://github.com/hejiann/beautify/wiki/textures/rip-border-textures-0.5.1.tar.bz
$ wget https://github.com/hejiann/beautify/wiki/textures/texture-border-textures-0.5.1.tar.bz

Untar and install it using the tar command:
$ cd ~/.gimp-*/
$ tar xvf /tmp/rip-border-textures-0.5.1.tar.bz
$ tar xvf /tmp/texture-border-textures-0.5.1.tar.bz

That is all. You have compiled and installed a new plugin called beautify. Fire GIMP and you will find it under Filters menu as follows:

Fig.03: GIMP Beautify is a set of GIMP plug-ins for quickly and easily beautify photo installed on Linux
Fig.03: GIMP Beautify is a set of GIMP plug-ins for quickly and easily beautify photo installed on Linux

Posted by: Vivek Gite

The author is the creator of nixCraft and a seasoned sysadmin and a trainer for the Linux operating system/Unix shell scripting. He has worked with global clients and in various industries, including IT, education, defense and space research, and the nonprofit sector. Follow him on Twitter, Facebook, Google+.

Share this on (or read 0 comments/add one below):

Leave a Comment