My problem

Like most complex image editing programs, Gimp uses its own file format (.xcf) when saving an image, and it lets you export to any of the more common file formats when you need it. All serious apps do the same: Photoshop uses .psd, Affinity Photo uses .afphoto, and so on. This is how they preserve all the info (layers and stuff) you may need to continue working on the picture when you reopen it, later on. That’s perfectly fine. What’s not fine, is that Gimp doesn’t deal very well with its own xcf in regards to their thumbnails: they are too small, and way too hard to generate.

A few weeks ago, like I always do with a new machine/OS, I copied a few test files in my freshly installed Manjaro in order to see how everything was working, and what needed to be adjusted before starting any real work. Everything went fine, save for thumbnails. And, as far as thumbnails go, almost everything was quickly dealt with, save xcf (Gimp).

A quick search led me to install a couple thumbnailers. They are small utilities that take care of automaticaly generating thumbnails for various file formats. And it works fine. Now, even my PSD files have their thumbnails. But not the xcf even though I have installed its dedicated thumbnailer, gnome-xcf-thumbnailer. Long story short: this thumbnailer is not updated anymore, it can’t read the latest versions of xcf.

Back to were I started.

Out of curiosity, I opened an xcf file in Gimp and saved it back under the same name. Bam! the file suddenly had a thumbnail. A realy small one for sure, but that was something at least.

I looked in Gimp’s settings and found an option to force it to make bigger thumbnails. It’s in Preferences -> System Resources, scroll to access the Image thumbnails section. You just need to change the Size of thumbnails to Large (256x256). I wouldn’t mind bigger than that, but 256 is already much better than the default 128.

I had a thumbnail. But I could only get it one image at a time, opening it and saving it back. That was not really an option.

To complete my test ‘procedure’, before looking further for solutions, I deleted ~/.cache/thumbnail, deleting all thumbnails at once to see what woudl happen. As soon as I opened the folder containing my files, thumbnails were recreated. Save for xcf. Even the one file I had just saved with a thumbnail.

So, I searched how thumbnails are dealt with under Linux, to see if I could find a solution. They are created by the various thumbnailers. When the file explorer calls it, the thumbnailer will automaticaly read each file in a folder, build its thumbnail and save it in ~/.cache/thumbnails for later (and faster) use. Save for Gimp: since its thumbnailer is not compatible anymore, it has do it all by itself, one image a time. With no automation.

The problem goes beyond that. If anyhow I managed to create all thumbnails (Gimp can be scripted, so that could be an option even if it is out of my reach) there is still the risk of losing all thumbnails — simply by copying all files on another computer, or if the cache folder was corrupted, and so on — with no easy way to automaticaly recreate them.

And that’s as far as I went. I now know that:

  • I can have thumbnails, but one file at a time. Or maybe I could automate that using Gimp’s scripting engine. Not only is it a poor solution compared to a dedicated thumbnailer, it also means I’d have to put a lot of efforts and time into learning how to do it instead of, you know, actually editing images.
  • Even if I manage to have all my thumbnails generated, they can disappear in a snap of the fingers. With no quick way to get them back.

Solutions?

  • Don’t worry about thumbnails. I could do that, but it’s a pain to browse pictures without their thumbnails and imo, using Gimp under Linux, thumbnails should not be an issue.
  • Learning to script Gimp, to compensate for the lack of a thumbnailer. I could then launch the script on any folder and force Gimp to make all the thumbnails. I’m not too keen on that solution since it means I would have to learn a lot of new stuff I’m not that interested in. Just to do a basic thing that I’d expect the app, if not the OS itself, to take care of.
  • Code a new XCF thumbnailer. See previous solution, only more complex?
  • Hire a dev to do it, and share it with the world under GPL. I’d like to, but I have no idea the work it represents, no idea what competences to look for, and I’m not that rich.
  • Find a way to force Gimp to use PSD as its default file format. That would work, since PSD seems tro have a better support than native xcf. Alas, I could not find any setting to make Gimp use PSD, so it’s probably not an option (no, exporting the image instead of saving it, each time, is not an option either).
  • Stop using Gimp and use… Inkscape, the vector illustration app, since it’s native format (SVG) has a working thumbnailer. I already do a similar thing under macOS and Windows: using Affinity Designer instead of Affinity Photo to create my covers. But Inkscape lacks many of Affinity Designer’s pixels/bitmap tools, and that would mean a lot of wasted time moving between Gimp and Inkscape to do all the small adjustements.
  • Do not use Linux for image editing. Sure, with enough work and time there is a good chance I could manage to do it under Linux. But can I and do I really want to spend that much time and energy to learn stuff I don’t need? Stuff I can easily do elsewhere, at no additional cost (since I already own the hardware and Affinity’s licenses)?

I would have imagined Gimp had a better support under Linux but, really, what I’m most dispointed in is me failing to find any useable workaround. That said, I have no issue using Windows and Mac, I’ve been doing sor for the last 30 years, it’s just… I really wanted to try do it entirely under Linux and see how it goes. Who knows, maybe I’ll find something ;)