Flameshot 安装与配置指南

本文覆盖以下内容:

  1. 安装 flameshot-13.3.0-1.ubuntu-22.04.amd64.deb
  2. 修复 Ubuntu 22.04 + GNOME Wayland 下无法正常截图的问题
  3. 设置 Alt+E 为自由截图快捷键
  4. 设置 Flameshot 开机自启

适用环境:

  • Ubuntu 22.04
  • GNOME 桌面
  • Wayland 会话

会话类型可通过以下命令确认:

echo $XDG_SESSION_TYPE

如果输出为 wayland,则适用本文流程。

一、准备安装包

确认安装包已经下载到 Downloads 目录,文件名如下:

flameshot-13.3.0-1.ubuntu-22.04.amd64.deb

二、安装 Flameshot

执行:

sudo apt-get install -y ~/Downloads/flameshot-13.3.0-1.ubuntu-22.04.amd64.deb

输入系统密码后等待安装完成。

依赖错误处理

如果安装过程中出现 unmet dependencies,执行:

sudo apt-get install -f -y

该命令会补齐缺少的依赖并修复未完成的安装。常见补充依赖包括:

libqt6core6
libqt6dbus6
libqt6gui6
libqt6network6
libqt6svg6
libqt6widgets6
qt6-qpa-plugins
qt6-gtk-platformtheme

安装完成后可验证版本:

flameshot --version

预期输出类似:

Flameshot v13.3.0

如果还看到:

No Qt translation found for English

该提示通常不影响使用。

三、为什么运行 flameshot gui 没反应

在 Ubuntu 22.04 的 GNOME + Wayland 环境中,直接执行:

flameshot gui

可能没有明显界面,或者行为异常。常见原因如下:

  1. 系统缺少 Qt6 Wayland 插件
  2. 缺少 GNOME 的截图 portal 组件
  3. GNOME Wayland 对第三方截图工具有额外限制

四、修复 Wayland 下无法正常截图的问题

安装以下组件:

sudo apt-get install -y qt6-wayland xdg-desktop-portal-gnome

作用如下:

  • qt6-wayland:提供 Qt6 的 Wayland 平台插件
  • xdg-desktop-portal-gnome:提供 GNOME 的截图 portal 接口

安装后,启动或重启相关用户服务:

systemctl --user start xdg-desktop-portal-gnome.service
systemctl --user restart xdg-desktop-portal.service xdg-desktop-portal-gnome.service

如果安装后仍未生效,建议注销并重新登录桌面会话。

五、正确启动 Flameshot 的方式

GNOME Wayland 环境中,不建议直接使用:

flameshot gui

更稳定的方式是:

QT_QPA_PLATFORM=wayland flameshot gui

如果用于快捷键,建议通过 shell 包装一层:

bash -c -- "QT_QPA_PLATFORM=wayland flameshot gui"

原因是 GNOME 快捷键环境变量可能不完整,直接调用 flameshot gui 在 Wayland 下容易失败。

六、自由截图和添加标注怎么用

执行以下命令后:

QT_QPA_PLATFORM=wayland flameshot gui

即可进行以下操作:

  • 鼠标拖拽任意大小截图区域
  • 调整选区大小
  • 添加箭头
  • 添加矩形、圆形、线条
  • 添加文字
  • 高亮内容
  • 模糊敏感信息
  • 保存图片
  • 复制到剪贴板

典型流程如下:

  1. 运行截图命令
  2. 鼠标拖出任意大小的截图区域
  3. 松开鼠标后出现标注工具栏
  4. 选择箭头、文字、矩形等工具进行编辑
  5. 点击保存,或者复制到剪贴板

七、设置 Alt+E 为自由截图快捷键

1. 确认 Alt+E 未被系统占用

可以运行:

gsettings list-recursively org.gnome.desktop.wm.keybindings | rg "<Alt>e|<Alt>E"
gsettings list-recursively org.gnome.shell.keybindings | rg "<Alt>e|<Alt>E"

如果没有输出,一般表示该组合键未被默认快捷键占用。

2. 添加自定义快捷键

创建自定义快捷键条目:

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

设置名称:

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

设置命令:

gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/ command 'bash -c -- "QT_QPA_PLATFORM=wayland flameshot gui"'

设置快捷键:

gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/ binding '<Alt>e'

3. 验证快捷键配置

查看绑定:

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

如果输出:

'<Alt>e'

说明快捷键绑定已生效。

查看命令:

gsettings get org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/ command

如果输出:

'bash -c -- "QT_QPA_PLATFORM=wayland flameshot gui"'

说明快捷键调用的是自由截图命令。

八、设置开机自启

为了让 Flameshot 登录桌面后自动运行,需要创建自启动项。

先创建目录:

mkdir -p ~/.config/autostart

然后创建文件:

~/.config/autostart/flameshot.desktop

内容如下:

[Desktop Entry]
Type=Application
Version=1.0
Name=Flameshot
Comment=Start Flameshot at login
Exec=bash -c -- "QT_QPA_PLATFORM=wayland flameshot"
Icon=flameshot
Terminal=false
X-GNOME-Autostart-enabled=true

也可以直接通过命令创建:

mkdir -p ~/.config/autostart
printf '%s\n' \
'[Desktop Entry]' \
'Type=Application' \
'Version=1.0' \
'Name=Flameshot' \
'Comment=Start Flameshot at login' \
'Exec=bash -c -- "QT_QPA_PLATFORM=wayland flameshot"' \
'Icon=flameshot' \
'Terminal=false' \
'X-GNOME-Autostart-enabled=true' \
> ~/.config/autostart/flameshot.desktop

这样在下次登录系统后,Flameshot 会自动启动。

九、验证开机自启

重启电脑或者注销重新登录后,检查:

pgrep -af flameshot

如果看到 Flameshot 进程,说明已启动。

也可以直接按已设置的快捷键:

Alt+E

如果能直接进入自由截图界面,说明自启动和快捷键都正常。

十、常见问题

1. 终端提示 No Qt translation found for English

一般可以忽略,不影响截图和标注。

2. 按快捷键没有反应

先在终端手动测试:

bash -c -- "QT_QPA_PLATFORM=wayland flameshot gui"

如果手动执行有效,而快捷键无效,通常是以下原因:

  • 快捷键没绑成功
  • GNOME 会话刚修改完还没刷新

可尝试:

  1. 注销并重新登录
  2. 再按一次 Alt+E

3. 运行后变成整屏截图,没有标注

这是 Ubuntu 22.04 的 GNOME Wayland 环境下常见问题。优先尝试:

bash -c -- "QT_QPA_PLATFORM=wayland flameshot gui"

如果仍不理想,最稳的方案是切换到 Ubuntu on Xorg 会话。

4. 开机后没有托盘图标

先检查进程是否存在:

pgrep -af flameshot

如果进程存在但托盘未显示,通常是 GNOME 托盘显示行为或扩展问题,不一定代表 Flameshot 没启动。

十一、参考资料