Done using GIMP 2.8 on Kubuntu Linux 18.04 LTS
The Gnu Image Manipulation Program (GIMP) is often referred to as the open-source equivalent to Photoshop. It is a raster-based program, meaning that it operates on individual pixels (so does Photoshop) as opposed to a Vector-based program, which operates on lines and curves described by equations. An open source program for vector-based graphics is Inkscape, and a proprietary one is Adobe Illustrator. Photos are inherently pixels, so a raster-based program is appropriate. Fun fact: Photoshop originated in the area I live in, as it began with a University of Michigan graduate student.
Well, my interest has to do with many old photos my wife and I have that go back to the 60s and 70s, and some of them are in rough shape. I would like to see if I can fix some of these photos, so I am going to learn what I can of GIMP. But while Photos are my primary interest, I will look at the program more generally. To do that I need to find some resources. Well, in this day and age that is pretty easy. YouTube has some good ones to start with, and here are just a few:
- How to use GIMP: (Beginners Guide)
- How to use GIMP – Basics
- GIMP in less than 10 minutes: Beginners Guide
- GIMP Tutorial: Top 5 Photo Enhancement Techniques
Other tutorials online include:
- GIMP.org Tutorials site
- An Introduction to GIMP Photo Editing: 9 Things You Need to Know
- How to Use GIMP
- 20 GIMP 2.10 Tutorials for Beginners | Davies Media Design
- GIMP basics: Best tips and tricks for beginners | PCWorld
- How to GIMP – Tutorials for GIMP and Photoshop
Now with software tutorials you need to be careful about when they were written and for which version of the software. A five-year old tutorial may no longer reflect how the software works now. So if you stumble across this a few years from now you should be just a bit wary. But there are tons of resources here, and that is the good thing.
Finally, I want to mention GIMP Magazine, which looks like it has stopped publishing, but they did put out 12 issues before they stopped, and it looks like they are still available from ISSUU.com (https://issuu.com/gimpmagazine). But note that these are about 5 years old, so they may not be up-to-date.
Step one is to install the software. I just looked, and while I have a number of Graphics programs installed, I don’t have GIMP installed. I went to the downloads page at gimp.org (https://www.gimp.org/downloads/), and it correctly spotted that I am using Linux and offered me suitable packages. But there are links as well to OSX and Windows, so this is pretty widely available. Since I have a good package manager installed (I prefer Synaptic myself) I just opened it up and installed GIMP. I also made sure to install some additional Documentation in English, but there are documentation files in many other languages as well. This put GIMP: 2.8.22 on to my Kubuntu 18.04 box
Upon opening GIMP, there is something a little disconcerting to me at least. Instead of being a single program window, it opens as several disconnected windows laid over whatever program was already open. Since I am not used to that, I instead looked at the central window, clicked in the Windows menu, and selected Single-Window Mode. As my investigations move forward I may become convinced I should switch back, but I am very used to each program having one big window.
The Single window has five sections:
- Toolbox
- Tool Options
- Canvas
- Layers, Channels, Paths, Undo
- Brushes, Patterns, Gradients

The first section, Toolbox, can be further broken down into various kinds of tools. The Selection tools include Rectangle, Ellipse, Free select, Fuzzy Select, Select by Color, Scissors Select, and Foreground Select. Generally the first step in most GIMP operations will be to select the objects you are going to manipulate, so you will use these tools a lot, and they are the first of the Tools in the Toolbox. They let you select the area of your image that you want to work on, and let you make changes. Note that when you mouse-over any of the icons you will get a tool-tip that describes what it is. Then down at the bottom of the group are the various Paint tools: Bucket Fill, Blend, Pencil, Paintbrush, Eraser, Airbrush, Ink, Clone Healing, Perspective Clone, Blur/Sharpen, Smudge, and Dodge/Burn. In the middle of the window are the Transform tools: Move, Alignment, Crop, Rotate, Scale, Shear, Perspective, Flip and Cage. Then there are the miscellaneous tools. Looking like a Capital A is the Text tool, and between the Select and the Transform group you find Paths, Color Picker, Zoom, and Measure. Again, this is for my installed version, 2.8.22, if you have a different version you may have slightly different tools, though almost all of them should be the same regardless of version.
The Tool Options are below the Toolbox gives you additional control over the tool you select. Click on a tool to select it, and the Tool Option panel will display relevant options you have. For example, if you select Rectangular Select as your tool, you will get options like Replace, Add, Subtract, and Intersect, and you can then add things like round corners to your selection. But pick the Pencil tool and you get options like the Opacity, Brush size, and pencil hardness. So the options you get are appropriately matched to the tool.
Layers are on the upper right, and are very important. GIMP operates on layers, and an image can have many layers while you are working on it. These can be thought of like a stack of transparencies, with each transparency holding an object of some kind. That could be an image, a text box, a colored oval, or any of the many things GIMP can produce. You need to get in the mental space of using layers proficiently if you are going to be a good user of GIMP. (This is also true of Photoshop, but I am sticking to open source here.) To work with layers, make sure that you have selected the Layers tab (top left) in the Layers, Channels, Paths, Undo window in the upper right. You can add layers as needed and build up your image gradually. One of the great advantages of this approach is that you can easily change your mind by just removing a layer if you decide you don’t like what it did. This is like a gazillion times better than using “Undo”. You can, for instance, remove a layer from last week while keeping the ones you did more recently. We’ll get into layers in much more detail in a subsequent tutorial. but for now I will just say this is a key concept.
Of course, finished images do not, in our experience, come in layers, so this brings us to another key concept, the working file. When you are working in GIMP, you are building a working file. This is again similar to Photoshop. A Photoshop native file has a *.psd extension, while the GIMP native file has a *.xcf extension. To quote from WhatIs.com:
XCF is a file extension for an image file native to GIMP. XCF stands for eXperimental Computing Facility. Similar to a Photoshop Document (PSD), XCF files support saving layers, channels, transparency, paths and guides, yet don’t support saving the undo history.
XCF files are supported in other image editors, yet due to how often the XCF format is revised, it isn’t recommended for use as a data interchange format. On a side note, the name XCF honors the Gimp’s origin at the eXperimental Computing Facility of the University of California at Berkeley.
https://whatis.techtarget.com/fileformat/XCF-GIMP-document
What this means in practice is that as you are working on the image, you can save it and you will have a *.xcf file. This file can be worked on until the image is complete, and at that point you will export the image as an image file like *.jpg, *.gif, or *.png. Note that if you later want to make changes, the exported image file no longer remembers any of the things like Layers, Channels, and so on. But if you have saved your *.xcf file you can open that up and make any changes you wish. So it is a good idea to save your *xcf file often, and keep it around for future use. One idea is to have two directories (or directory trees), one for *.xcf working files, the other for exported finished files. Also, you should probably get used to saving often as you work, since a crash can cause you to lose all of your unsaved work. GIMP does not have a native AutoSave capability at this time, but there is a script available as a plugin ( https://gist.github.com/rbrito/e57c87d5376fd56113df058abf71bdf3 ). Plugins are a little more advanced for an initial tutorial though, so I won’t cover it right now.
Listen to the audio version of this post on Hacker Public Radio!