How to change screenshot application to Flameshot on Ubuntu 18.04?

I needed to highlight some text in my screenshots and I did not know how to do it with the default screenshot app. Flameshot is a solution. I installed it.

How can I replace the PrtScr shortcut-key so that it launches Flameshot?


If you need or want to replace the PrtScr shortcut do the following:

  1. Release the PrtScr binding by this command

    gsettings set org.gnome.settings-daemon.plugins.media-keys screenshot '[]'
    
  2. Go to Settings -> Devices -> Keyboard and scroll to the end. Press + and you will create custom shortcut.
    custom shortcuts in ubuntu 18.04

  3. Enter name: "flameshot", command: /usr/bin/flameshot gui.

  4. Set shortcut to PrtScr (print).

That is it. Next time you push PrtScr flameshot will be launched.


Source: Posted in the question by OP which should have been posted as an answer instead.


Install and setup flameshot via terminal ... if there is no custom0 shortcut / binding configured

Install flameshot:

sudo apt install flameshot

Release the PrtScr binding by this command:

Ubuntu 19.10 (Credits: @jobou's comment)

gsettings set org.gnome.settings-daemon.plugins.media-keys screenshot '[]'

Older Ubuntu versions:

gsettings set org.gnome.settings-daemon.plugins.media-keys screenshot ''

Set new custom binding:

gsettings set org.gnome.settings-daemon.plugins.media-keys custom-keybindings "['/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/']"

Set name:

gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/ name 'flameshot'

Set command:

gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/ command '/usr/bin/flameshot gui'

Set binding:

gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/ binding 'Print'

In case you installed Flameshot via snapcraft.io and not via standard sudo apt install flameshot, then the path /usr/bin/flameshot gui will not work, because the path is different.

  1. So, first run command type flameshot (for Ubuntu 18.04 and higher). This will show you the path where app is installed.

  2. Copy this path.

  3. Press Super and search for keyboard shortcut.

  4. Find word screenshot

    see this example

  5. Edit it (in my case, I assigned Shift+Ctrl+Alt+~ as I have never used this key combo)

  6. Then go back, click + symbol and add the path you have copied to command.

    and see this example


This is tested on Ubuntu 20.04

  1. Disable PrtScr or Print shortcut by opening the Keyboard Shortcuts Settings

  2. Navigate to Keyboard Shortcuts on bottom left menu, then select Print shortcut which is to Save a screenshot to Pictures

    keyboard shortcuts dialog

  3. Hit Backspace to disable the current keyboard shortcut so that we can use this for Flameshot later.

  4. Hit Set to apply/confirm it.

    enter image description here

  5. Identify Flame binary location with which command

    $ which flameshot
    /usr/bin/flameshot
    
  6. Then, scroll down to the bottom and select + symbol to add new shortcut.

    enter image description here

  7. Add Custom Shortcut

    • Name: Flameshot
    • Command: /usr/bin/flameshot gui
    • Shortcut: Print

    enter image description here

That's it


Or simply set any shortcut (including PrtScr) to flameshot gui: as indicated in the other answers, only without the need for any other setting. You will be asked if you want to remap the key (in Xfce at least, but I guess it's the same in most desktops).

You might consider keeping PrtScr for the default screenshot tool and use other shortcuts for flameshot, at least two I mean, because you can also capture screen with delay: for a 5-second delay, use flameshot gui -d 5000.

More here.