Can you recommend me a tool compatible with GNOME and Wayland, that allows taking screenshots with on-the-fly editing features like drawing or blurring?
Flameshot worked well on X11, but unfortunately, it lacks Wayland support. ShareX was a great tool on Windows; now I'm looking for something similar for Wayland.
Oops, sorry I didn't notice that part. I've never seen anything like that to be honest. It kinda violates the whole "do only one thing and do it well" UNIX ethos. As a decent work-around, you can just open the resulting images in Gimp?
In fairness, the "do one thing and do it well" kinda goes out the window with a lot of GUI programs.
E.g. it's fair to expect a PDF viewer to also have the ability to digitally sign it. It's fair for an email client to have an integrated calendar, etc.
That's what I've been doing since flameshot stopped working for me. I ask about the built-in solution, because pasting the image into GIMP and blurring specific parts drastically increases the time to prepare such a screenshot
I had a good think about how to do this The Unix Way™ and my best sugestion would be to have a script that monitors a folder for screenshots and launches a program (gimp) when it sees something. I wrote one, tried it out, and it works really well!
For this, I used inotifywait which you can get by installing inotify-tools (at least, that's what it's called in Arch):
#!/bin/bash
inotifywait -m "${HOME}/Pictures/Screenshots/" -e create -e moved_to |
while read -r directory action file; do
if [[ "${file}" =~ ^Screenshot.* ]]; then
gimp "${file}"
fi
done
All this does is use inotify to trigger an action whenever a file is created in the folder (in this case, the Screenshots folder in ${HOME}/Pictures). For our purposes, it just looks for files named Screenshot and if one appears, we launch gimp.
The result is that if you run this thing and start screenshotting with GNOME's built-in tool, each action will trigger gimp. You can then further expand this to perform some sort of custom action (either with a gimp macro or with some Python script, whatever) so that whenever you're running this script, it'll take that screenshot and do something to it whenever it's created.
Couldnt you just put a custom script onto the print button to take the screenshot and send it to a light editing program?
I have my normal screenshot button and another one which afterwards send the selected region to img2txt and puts the detected text into the clipboard.