Writing a Gimp 3.0 Plugin
schoenitzer.de
schoenitzer.de
This is great and I wish this was the same with other tools, like Kicad, Freecad and Inkscape.
[0]: https://gitlab.com/inkscape/inkscape/-/blob/5c4c6d116dae5250...
But it does not really have a python API. Most (all?) extensions that ship with Inkscape are written in python, and it comes with some base classes and helper modules to make those extensions. But the "API" is basically "we send the current document to the extension's stdin, and whatever comes out as stdout becomes the new document". The extension, written in Python or something else, is responsible for handling all the quirks of SVG (a mix of subsets of two or more of the SVG specs) and (the current version of) Inkscape's additions to SVG.
It is quite painful. I have maintained a couple of third-party extensions written in python since back in Inkscape 0.99.x days (ca 2007). Had to do several annoying major rewrites. Since there is no real API you depend on whatever happens to be in those helper classes, rarely documented and never stable. One of my extension, as do some of the first-party extensions, have to rely on launching Inkscape as a sub-process to perform some work, since there is no way to call in to the running Inkscape. If there was a real API you could have functions to call to query about the boundaries of objects, and other functions to apply changes to objects, that could use internal implementations that are already existing and that can do those things. But the way it works now (and always worked in Inkscape) is that you have to take care of everything yourself, more or less, maybe helped by some of the included helpers if you are lucky to find something that does something similar to what you want to do.
Pretty much done with this. I stopped officially supporting new Inksape versions. I just tell users that the next time Inkscape messes with their not-really-API my extensions will be dead. I can still run them with old Inkscape in some virtual machine. Maybe I will re-implement everything if I find an application that has strong backwards-compatibility goals.
I had assumed there would be an API to let you do stuff with the DOM and call into some of the functions inkscape itself uses.
I'm moving my main machine from macOS to Linux (which I also used partially since 20years), moving from a mac mini M1 to a lovely Lenovo M75Q-1 and so far the experience has been great.
I'm a (enthusiast) photographer and I have big hopes for that 3.0 release of Gimp. I'm ready to learn something else and freeing myself from Adobe.
If I can manage my workflow, that will probably seal the deal. Everything else works fine and is unbelivably smooth while macOS had been very frustrating lately.
For years I have been using Affinity and it’s been really good, haven’t looked back. Unfortunately it’s not on linux.
I remember CMYK being the most common complaint (after the UI) 20 years ago, too. And at the time the entire GIMP project insisted that you never needed it and RGB was good enough. By coders for coders, indeed.
Out of curiosity, what improvements in 3.0 RC are you skeptical of? If you're willing to share, it'd be helpful feedback for us. :)
rgb is a larger color space than cmyk, that is to say the colors that cmyk can represent are a subset of rgb.
You are doing the work on an rgb monitor. what does having the illusion that you are working in cmyk get you? just use a cmyk color picker
but most damning, industrial printers are not CMYK, they are spot color, that is, they will be filled with essentially random primary colors chosen to best fit the final print. When you do need very fine control over the final color, you don't want a cmyk aware system you want a spot color aware system. And even then, you will only get close, requiring many test prints to validate the final result.
You're not going to argue and discuss the merit of such and such color spaces with them; you're going to switch tools so that you get them to print your wedding invitations.
But every time I have to use Gimp is just a pain, feels like going back in time.
For such a complex tool, UX is and will always remain king. That's why many people miss even something as simple as the Mac Preview tool, it does its job nicely and neatly. It doesn't do much but for basic stuff is quick and straightforward.
https://www.gimp.org/news/2025/01/27/gimp-team-zemarmot-fosd...
Gimp is being used,and improved along the way, to make an animation movie. Jehan (scenarist, technical) of that movie is also a core maintainer.
A good refutal of the for-coders claim would be that it's one of the default image editor most commonly included with major Linux distributions. That's a much larger thing than it being just made for coders.
Yes it does because ZeMarmot producers are the main contributors to Gimp's code.
ZeMarmot's announcement was in 05 February 2015.
The GIMP was an at least 17 year old software project, when the animated movie was announced.
Of the two main GIMP maintainers, one of them works on ZeMarmot.
What this all says is that yes, there is an animation movie 10 years in the making, by some of the people who also work on the GIMP project. It says nothing about GIMP being made for any particular purpose, either or not for coders, and/or for animation or for visual creatives in particular.
Yes. Peacock will be fine. It is a wonderful bird.
(It’s also pretty decent. My usual go to for stuff I can’t justify spinning up an Adobe VM for…)
I firmly believe they could have eaten Adobe's lunch decades ago, but I can't recommend something that may be an ableist slur, and definitely means something that is the opposite of "skilled."
Childish and disappointing.
In 3.0 it's even easier, as both options are available in the Personalize tab of the Welcome Dialogue. I'm hoping this will help make that feature more discoverable. :)
1. Viewing the layer boundaries of all layers. Very helpful in seeing the total layout of the project.
2. Select multiple layers and do operations like move/align.
The group also shows the outline of the bounding box of all layers in it, although that's not quite the same as the layer outlines ofc.
Krita is for free drawing, gimp is a photoshop replacement.
I do agree they probably would benefit from trying Krita.
I am mostly using krita for painting and gimp for general editing and composing usually so I haven't double-checked every single feature on both but I have one example: krita can open a pdf but cannot save it and doesn't even have a "print" functionality. Found out when trying to sign a contract with krita on my convertible thinkpad. Gimp makes it a breeze in comparison.
I am sure there are other features missing in both directions. It is great to have choice.
Gimp's Dotfiles on Linux are really well done, once your settings are done, you keep them forever (i barely changed them now for a decade).
I was really used to Photoshop (used it from photoshop 4 to CS) ; a good idea would be to change Gimp's bindings to the one you have on photoshop.
Some stuff won't work as well as Photoshop, the best is to experiment, and find alternatives maybe not in the most optimal way.
I used to produce pictures, and then tried to do the same thing on Gimp, using the same source files. Stopping when I was stuck, trying to find other ways to work.
I've been using gimp since one week and so far, once you start trying to understand what's going on (something I never allowed it since 20 years I've tried), it's really not that bad.
Has this been finally sorted out?
But it never gets sorted out due to whatever ideologic feeling Gimp developers have with offering only paths as option.
It's a fork of Paint.NET, which happens to be my favorite image editor on Windows. The Mono-based port is a bit flaky and crashes sometimes, but the Gimp UX is just unusable for me, so Pinta it is. I tried gimp many times, but I just end up reading forums and often the program either can't do the small stuff I want, or it takes 5 minutes of clicks.
Thanks for the hint, tough.
Curious what drove the switch? You say macOS had been very frustrating lately, anything that made it particularly so?
My main reproaches towards macOS are weird choices Apple is imposing his users or the lack of compatibility with other systems :
- Mail.app and the way it persists with its ridiculous way of handling attachements (I use Thunderbird)
- Having to install additional apps to have an decent window manager or finder : Alt-Tab, Rectangle, new file menu
- Not being able to pop a calendar while clicking on the clock
- SMB compatibility is hell
- Finder is hell
- ...
Too much customisations needed while Linux "just works".
The recent position of the brand toward politics made me take the plunge.
GIMP is for general graphics stuff. Try DarkTable, which was made specifically for photography editing and is very good at it.
The problem with GIMP in industry is 1) that .psd is a standard, and 2) that Photoshop has a bad UI that takes a lot of work to understand well enough to do the very fine work most people are doing with it. Nobody would want to start over even if the consensus was that GIMP was better than Photoshop; Photoshop would still be good enough.
Hopefully Adobe will be user-hostile enough to lose a bunch of people to Affinity, and a bunch of people on Affinity will weaken Adobe standards in industry generally. GIMP could sneak in on the back of that.
GIMP is Free Software, it only gains features, never loses them. In the long term, there's no way anyone else can compete.
The article is about losing features due to incompatibility of plugins. Perhaps you refer to some more abstract open source concept?
Now that the API is stable for 3.0, we're hoping more people will feel comfortable updating to it.
Additionally it is trivial to have both installed on the same machine and there haven't been breaking changes in the xcf format as far as I know so you can open the same file on both version without issues.
Photoshop wasn't the photoshop of today but neither was gimp.
but i'm not sure how well that mimics photoshop in day to day stuff. hopefully they make strides in usability because it wasn't there the last time i tried it.
Also, it doesn't detect my drawing tablet.
Are there specific areas of the UI that are less space efficient? One of the big changes was switching our GUI library to GTK3, which is suppose to scale better on HiDPI screens. But we had to recreate our theming system as a result, so if we need to tweak something we can try.
The theme might have helped too - I am using Yaru-cinnamon-dark. Some themes are truly wonky, with objects changing size and forcing re-layout on hover. WTaF that should not even be possible!
I've mostly given up hope on this, but it's still wild that people who work on the software just seem to very stubbornly not understand this.
Whether you want to blame it on ableism, or perhaps simply "you should name your software after something/someone skilled or professional, not literally the opposite," you're preventing people like me (IT teaching, a go-between between techies and non-techies) from being able to recommend it.
Luckily, Krita's here and for better or worse does the AI stuff.
It serves a valuable community function by protecting the community from corporate interests, non-technical bike-shedding, and overload by "bug" reports that are actually just the user not being technical enough to use the tool properly.
Edit: Also FWIW, I've had no problem introducing GIMP to church groups and in various professional settings.
Double edit: since you mention schools, I should also add that I taught my wife GIMP and she had no problem sharing it in her school (US public high school).
Some folks who are neither prudish or humorless want to see the project and its contributors succeed to the degree that alternatives like Photopea has, or as Blender has in the 3D space. The project will continue to limp along until the name is changed to something without negative connotations in English-speaking populations.
I agree, and to an extent laud it, but it also means keeping GIMP an old-school hacker project.
Why?
Honestly, why?
As a non-native English speaker (like the vast majority of people in this planet), the word "gimp" to me means "the free software image processing program". If I search google, duckduckgo, bing, whatever, the entire first page of results refers to that very program. Digging deeper, I start to find some references to the Pulp Fiction movie, where a minor character is named like that. I remember that character, but in my language it was called by a different name. Is that all?
Is there any other meaning to this word? If so, it must be so obscure as to be completely irrelevant.
Please, take into account that most English speakers are not native speakers, and many words will have a different meaning to us. English as a lingua franca may be comfortable to native speakers, but it also means that it's no longer yours.
The name of the program does not seem to be a serious issue for its adoption. Now, if you want to talk about its user interface... I don't think it does, either (but I may be open to discussion). I have taught my kids to do simple image processing tasks in gimp: copy-pasting parts of an image into another, removing some stuff, blurring, simple layer operations, etc. Anyhow, they got it in a few minutes. Important to say: they are not at all tech-savvy (to my dismay! but this is another story). If they use adobe or krita they will surely find it slightly confusing at the beginning, but no big deal either. Just like a regular person moving from photoshop to gimp.
I've never had a problem sharing it. And no one outside tech has ever brought up BDSM when I tell them about the program or help them install it.
An extremely conservative church group is perhaps the worst place to try to figure this out; y'all will self-censor naturally.
Anyway, I teach IT, in a department -- shared with Communications -- and can absolutely assure you that this name is a no-go. I get that people don't like "politics" and "optics" and such, but that's what's happening here.
If your department wouldn't use free software because of the name, that's very much a them problem. And it's sad that they're so sensitive.
If you don't like the name, you don't have to use the software. Or fork it can call it something more anodyne to your sensibilities.
But no. You want everyone to cater to sensitive people. And thus, myself and others are here to say your comment is annoying when this comes up every thread that GIMP is mentioned.
There's really no "shut up and go away" that you can give me that will work, because you aren't some grand FOSS arbiter, you're just some rando on the internet like me.
My point is that when you say:
> Gimps are considered inappropriate to even talk about in school and business settings
This refers solely to the tiny percent of the world where people are native english speakers. Elsewhere, it already means the image processing software, if anything at all.
As a french, the first and only thing that comes to mind when I hear the word "gimp" is the software, not the kink. It was shared a few weeks ago in my company chat because someone wanted to do a photo edit and absolutely no one even made any semblance of joke related to it
> Is there any other meaning to this word?
Yes. You can often learn obscure meanings by prepending a word in your search query with "urban dictionary".The original founders of the project aren't the ones at the helm currently and the GNU Image Manipulation Program acronym took over from whatever pun it was a long time ago already.
You might like krita better but maybe it is an insult or genital part name in someone else language but you might never know. It happens to so many products. The Toyota MR2 really sound in french like you are calling someone an asshole which is the reason they called it simply MR in that particular market, while an audi etron sounded like audi feces. All this to say that naming is hard and you can never please everyone.
People should really relax and not take personally what has been an acronym for most of the project's life.
Why exactly is it bad? It's not that all software have to be loved and recommended by everyone, opinions differ and it's normal.
If for you the name matters more than the substance then well maybe you're not the target audience, so be it.
No, I don't believe in hiding good software that can help a lot of people under a secret rock.
...Ah no, wait a moment...
A simple fix would be to ask professionals using the Adobe suite what they would like in an open source tool that could get them to switch. Viewed at from outside, Adobe may appear like a multi-billion dollar moat of focus on prosumer products.
Viewer from as a user, Adobe's software has bugs and inefficiencies that would get the average open source product shredded in the comments. It is ludicrous that Adobe still charges for such bad Ux.
Of the top of my head, I'd say GIMP could get a headstart on Adobe if its builders added:
- n00b user Ux option
- Single panel modes for color correction with all settings in the form of a list of sliders (like lightroom)
- Seamless vector/PDF editing so you don't need to bounce between 3 different softwares
- Good UI for an InDesign competitor (this is a moat that Canva could easily crush if it added a few more options - but it's still worth building). Automatic layout (would really only need to follow a few simple rules - don't overhang text, match formatting, worship whitespace so the user doesn't have to break everything to add it back in).
"Seamless vector/PDF editing" seems especially easy.
Many other open source tools are beloved and used despite their flaws. Gimp is not built for anyone who isn't truly invested in it, making it a niche piece of software.
And the direction of 20 years of a software can tell what kind of contributions would be acceptable for people. I don't think anyone coming in a redoing the whole UI would well accepted, given how little care is given to the same old feedback.
It also seems odd to assert that non-contributors have no right to complain on a forum where most people, most of the time, complain about things they have no direct knowledge of nor a hand in making.
I certainly see it very differently, or I would not lose time here. Indeed here is full of makers and doers. People that did things, open source, or founded a company, or something else. Also lots of knowledgeable people. Of course, is some share of charlatans, specially in medical topics, is a show… but in general I do learn here.
I think you can “criticize” if you are not contributing, but form is important. One thing is to say “I don’t like it, you shouldn’t use it” another is “I use it, and I would love feature XY”
I'd say that "if you don't like it just fork it" approach has dealt way more damage to the reputation of OSS outside of programmer circles than people repeatedly asking for features or improvements.
The first thing that comes to mind is a slang term for someone who is physically disabled or limps. The second thing is that it refers to an insult (someone weak or foolish). Then one starts to wonder if it's a bondage reference... unless one is given additional context, one can never get to a design tool out of this. You wouldn't want people to overhear you say it and misunderstand the situation.
Misunderstand what? Painting with GIMP?
It's an acronym. Maybe I'm completely socially inept, but I don't see at all how it would be embarrassing to explain even to close family that I'm using GNU Image Manipulation Program. People are not going to overhear me and think I'm editing images with someone disabled or wearing a ball gag and straitjacket. It just doesn't happen outside Jim Carrey movies.
Digital Image Correction Kit
Touch-up & Image Transformation Studio
Damned if you do, damned if you don't.
The prudent approach prevailed for a hundred different reasons but online user metrics weren't one of them. Apparently people were not very fond of the British Broadcasting Corporation, especially outside of the angloshpere.
I can't think of an acronym example though.
Definitely came after the original BBC being established, and definitely is orders of magnitude less known than the sexual slang variant. So yeah, the Gimp comparison doesn't stand, at all.
Naming things is hard, someone should setup a focus group :)