Flameshot
Powerful yet simple to use screenshot software.
Usage Preview
Index
Features
- Customizable appearance.
- Easy to use.
- In-app screenshot edition.
- DBus interface.
- Upload to Imgur.
Usage
Example commands:
- capture with GUI:
flameshot gui
- capture with GUI with custom save path:
flameshot gui -p ~/myStuff/captures
- open GUI with a delay of 2 seconds:
flameshot gui -d 2000
- fullscreen capture (asking savepath):
flameshot full
- fullscreen capture with custom save path (no GUI) and delayed:
flameshot full -p ~/myStuff/captures -d 5000
- fullscreen capture with custom save path copying to clipboard:
flameshot full -c -p ~/myStuff/capturesIn case of doubt choose the first or the second command as shortcut in your favorite desktop environment.
A systray icon will be in your system’s panel while Flameshot is running. Do a right click on the tray icon and you’ll see some menu items to open the configuration window and the information window. Check out the information window to see all the available shortcuts in the graphical capture mode.
CLI configuration
You can use the graphical menu to configure Flameshot, but alternatively you can use your terminal or scripts to do so.
- open the confguration menu:
flameshot config
- show the initial help message in the capture mode:
flameshot config --showhelp true
- for more information about the available options use the help flag:
flameshot config -hShortcuts
These shortcuts are available in GUI mode:
Keys Description ←↓↑→ Move selection 1px SHIFT + ←↓↑→ Resize selection 1px ESC Quit capture CTRL + C Copy to clipboard CTRL + S Save selection as a file CTRL + Z Undo the last modification Right Click Show color picker Mouse Wheel Change the tool’s thickness Shift + drag a handler of the selection area: mirror redimension in the opposite handler.
Considerations
- Experimental Gnome Wayland and Plasma Wayland support.
- If you are using Gnome you need to install the TopIcons extension in order to see the systemtray icon.
- In order to speed up the first launch of Flameshot (DBus init of the app can be slow), consider starting the application automatically on boot.
- Press
EnterorCtrl + Cwhen you are in a capture mode and you don’t have an active selection and the whole desktop will be copied to your clipboard! PressingCtrl + Swill save your capture in a file! Check the Shortcuts for more information.- Execute the command
flameshotwithout parameters or use the “Launch Flameshot” desktop entry to launch a running instance of the program without taking actions.Installation
There are a packages available for a few distros:
- Arch
- Open Suse
- Void Linux (
xbps-install flameshot)- Docker
If you are not using any of these distros you’ll need to compile the program 😦 but don’t worry, it’s pretty easy!
Compilation
The compilation requires Qt version 5.3 or higher and GCC 4.9.2 or higher.
Debian
Compilation Dependencies:
apt install -y git g++ build-essential qt5-qmake qt5-default qttools5-dev-toolsCompilation: run
qmake && makein the main directory.Fedora
Compilation Dependencies:
dnf install -y qt5-devel gcc-c++ git qt5-qtbase-devel qt5-linguistCompilation: run
qmake-qt5 && makein the main directory.Arch
Compilation Dependencies:
pacman -S git qt5-base base-devel qt5-toolsCompilation: run
qmake && makein the main directory.Install
Simply use
make installwith privileges.Packaging
In order to generate the makefile installing in
/usrinstead of in/usr/localyou can use thepackagingoption to generate the proper makefile (qmake CONFIG+=packaginginstead of justqmake).If you want to install in a custom directory you can define the
BASEDIRvariable.Example: You whant to install Flameshot in ~/myBuilds/test. You would execute the following to do so:
qmake CONFIG+=packaging BASEDIR=~/myBuilds/test && make installRuntime Dependencies
Debian:
libqt5dbus5, libqt5network5, libqt5core5a, libqt5widgets5, libqt5gui5Optional:
openssl, ca-certificatesFedora:
qt5-qtbaseOptional:
openssl, ca-certificatesArch:
qt5-baseOptional:
openssl, ca-certificatesLicense
- The main code is licensed under GPLv3
- The logo of Flameshot is licensed under Free Art License v1.3
- The button icons are licensed under Apache License 2.0. See: https://github.com/google/material-design-icons
- The code at capture/capturewidget.cpp is based on https://github.com/ckaiser/Lightscreen/blob/master/dialogs/areadialog.cpp (GPLv2)
- The code at capture/capturewidget.h is based on https://github.com/ckaiser/Lightscreen/blob/master/dialogs/areadialog.h (GPLv2)
- I copied a few lines of code from KSnapshot regiongrabber.cpp revision 796531 (LGPL)
- Qt-Color-Widgets taken and modified from https://github.com/mbasaglia/Qt-Color-Widgets (see their license and exceptions in the project) (LGPL/GPL)
Info: If I take code from your project and that implies a relicense to GPLv3, you can reuse my changes with the original previous license of your project applied.
Acknowledgment
I really appreciate those who have shown interest in the develpment process:
- Cosmo.
- ismatori.
- The members of the Sugus GNU/Linux association.

