Daily Archives: 2025-03-24

GTK3 is Still Awful

I got the upgrade to GIMP 3.0 yesterday, went to do a few basic image editing tasks, and it’s great they’ve fixed many of their long-standing issues and added things like NDE for filters, wider color depth, etc. … but I was so annoyed by the dialog-buttons-in-title-bar situation caused by the move to GTK3 that I stopped what I was doing and looked for a workaround.

Dialog-buttons-on-top is backwards from reading order, backwards from every other piece of software I use, and backwards from almost every other piece of software made in the last 40 years – I’m not interested in arguing if the GTK folks repeatedly doubling down on their weird bullshit is legitimate, I just want to be rid of it.

It turns out there isn’t really a runtime workaround on Wayland, your choices are force it to use the X back-end via `GDK_BACKEND=x11 gimp` so it will respect the gtk-dialogs-use-header=FALSE setting, or patch and rebuild GTK3. Because that setting gets overridden with the Wayland back-end. Unless you delete like 4 lines of code and rebuild the whole library, since the “technical reason” it had to be hard-coded for wayland is apparently just some bad behavior with CSD bars (which are also undesired behavior – I want consistent window controls and labels plumbed by my environment) that come up when running under gnome.

…And since you’re replacing your system gtk3 with a rebuilt library anyway, there’s gtk3-classic. Which isn’t packaged, so you have to build locally. From some random github repo and an AUR package. But it is pre-patched, and gets rid of a bunch of the other misfeatures like the search-instead-of-typeahead and some weird CSDisms at the same time.

I moved from daily driving xfce to kde in like 2017 because GTK3 was awful (and the KDE folks got their resource usage in check), and the stragglers (gimp, inkscape) moving to gtk3 is making me think about it again, because it is now even more awful. At least GTK3 is basically frozen at this point, so I won’t have to build the replacement too often.

Posted in Computers, General | Leave a comment

Mural: The Plotter That Draws On Walls

Source: Hack a Day

Article note: Oh neat, a Vbot/Hangbot/Polargraph type machine that does motors-on-gondola for easier mounting and more mass on the gondola. Looks like fundamentally the same parts (Two Nema17 steppers, GT2 belts and pulleys, SG90 servo for efector lift, micro doing motion control) as almost all such devices, but in a slightly different configuration. It appears they have a bit of a stability issue with the motor shafts being some distance apart at the apex, which kinematically make sense.

Let’s say you’ve got a big bare wall in your home, and you want some art  on it. You could hang a poster or a framed artwork, or you could learn to paint a mural yourself. Or, like [Nik Ivanov], you could build a plotter called Mural, and get it to draw something on the wall for you. 

The build is straightforward enough. It uses a moving carriage suspended from toothed belts attached to two points up high on the wall. Stepper motors built into the carriage reel the belts in and out to move it up and down the wall, and from side to side. In this case, [Nik] selected a pair of NEMA 17 steppers to do the job. They’re commanded by a NodeMCU ESP32, paired with TMC2209 stepper motor drivers. The carriage also includes a pen lifter, which relies on a MG90s servo to lift the drawing implement away from the wall.

The build is quite capable, able to recreate SVG vector graphics quite accurately, without obvious skew or distortion. [Nik] has been using the plotter with washable Crayola markers, so he can print on the wall time and again without leaving permanent marks. It’s a great way to decorate—over and over again—on a budget. Total estimated cost is under $100, according to [Nik].

We’ve featured some neat projects along these lines before, too. Video after the break.

Posted in News | Leave a comment