Мне очень нравится Flameshot! Но после перехода на Wayland он перестал работать по горячей клавише. Рассказываю, как запустить Flameshot на Wayland обходным путем.
Симптом: команда flameshot gui
из терминала работает, а при нажатии горячих клавиш появляется ошибка Unable to capture screen
.
Причина: в Wayland приложения не имеют прямого доступа к экрану как в X11; когда GNOME запускает команду из сочетания клавиш, окружение (или доступ к XWayland) может быть не тем, что нужно для обычного Flameshot. Часто Flameshot пытается работать через X11, но при запуске «из-под» горячей клавиши не получает правильные переменные окружения и падает.
Что можно сделать:
✅ Способ 1. Запуск с QT_QPA_PLATFORM=xcb
Создайте обёртку для Flameshot:
nano ~/.local/bin/flameshot-wayland
С содержимым:
#!/bin/bash
QT_QPA_PLATFORM=xcb flameshot gui
Сделайте исполняемым:
chmod +x ~/.local/bin/flameshot-wayland
А в настройках горячих клавиш вместо flameshot gui
укажите:
flameshot-wayland
Решение с QT_QPA_PLATFORM=xcb
фактически использует XWayland — это рабочий, но не «чистый» Wayland-путь. Поддержка нативного захвата экрана через порталы (xdg-desktop-portal) предпочтительнее с точки зрения безопасности, но не всегда доступна/удобна в Flameshot.
✅ Способ 2. Использовать порт Flameshot для Wayland
Есть форки Flameshot с поддержкой Wayland (через xdg-desktop-portal
). Например:
- flameshot-portal (пока экспериментальный).
Он работает через тот же механизм, что gnome-screenshot
, и умеет снимать экран в Wayland.
Лично я выбрал Способ 1. И работает он отлично!