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.

  • Daniel Quinn
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    6 months ago

    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<something> 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.

    Does this help?

    • setVeryLoud(true);
      link
      fedilink
      arrow-up
      1
      ·
      6 months ago

      I’ll be honest, I don’t like having to hack things together.

      I’m also looking for a one-stop-shop screenshot and edit tool that I can just install and it’ll just work. GNOME’s screen shot tool is good, but I wish it opened the screenshots in a lightweight editor app, not GIMP, which is a full image editing suite and makes things like circling, drawing arrows, etc. more complicated than it should be for a screenshot editor. Not impossible, but more complicated.

      • Daniel Quinn
        link
        fedilink
        English
        arrow-up
        1
        ·
        6 months ago

        Well theoretically, you can use the above with any image editor. I just reached for Gimp 'cause it’s common. I get that you’d prefer something all-in-one, but I’ve not heard of something like that (in any OS actually).

        What is pretty cool about this method though is that you could conceivably use any program in place of Gimp here, including an arbitrary script you wrote to automatically do the image edits you want. If that’s of interest to you, you might want to look at imagemagick or Python’s Pillow library.

        • setVeryLoud(true);
          link
          fedilink
          arrow-up
          1
          ·
          6 months ago

          Windows’ default screenshot viewer, snipping tool, lets you edit and censor screenshots.

          Regarding the script, my point is you have to assume I have no idea how to program and have no interest in programming, but I still want this feature that’s available in Windows 10 and 11. Personally, I program all day, the last thing I want is to program some more for my own computer. It needs to just work.

          I get the UNIX methodology of do one thing and do it well, but that methodology doesn’t work on a modern desktop as it requires a lot of glue on the user’s part. A lot of users who aren’t interested in tech or aren’t tech savvy are simply going to assume that what they want is impossible, because as far as they are concerned, it is impossible.

          Now I’m actually tempted to go out of my way to write a Libadwaita app that integrates with GNOME in some way to handle screenshots and let users edit them before putting them in their clipboards. Your average end user could simply grab this from Flathub and install it without hassle or technical know-how.