跳到主要内容

KDE 桌面环境

图标浏览器

KDE 在 plasma-sdk 包中提供了一个图标浏览器,用于浏览和搜索已安装的图标,旧版应用名为 cuttlefish,后续更名为 iconexplorer

参考来源:KDE Developer Documentation: Icons

文件管理器右键菜单

Dolphin 支持在 ~/.local/share/kio/servicemenus/ 下创建自定义的 *.desktop 文件,依据文件类型在右键菜单中添加不同的选项。例如对于图片文件添加“图像识别”选项,在子菜单中可选“识别为中文”“识别为英文”或“扫描二维码”,调用 tesseractzbarimg 并在 kdialog 中展示结果。

[Desktop Entry]
Type=Service
MimeType=image/*;
Actions=scan-qrcode;ocr-eng;ocr-chi;
X-KDE-Submenu=图像识别

[Desktop Action ocr-chi]
Name=识别为中文
Icon=text-convert-to-regular
Exec=tesseract "%f" - -l chi_sim | kdialog --textbox - 640 512

[Desktop Action ocr-eng]
Name=识别为英文
Icon=text-convert-to-regular
Exec=tesseract "%f" - -l eng | kdialog --textbox - 640 512

[Desktop Action scan-qrcode]
Name=扫描二维码
Icon=view-barcode-qr
Exec=zbarimg --quiet "%f" | sed 's/^QR-Code://' | kdialog --textbox - 640 512

参考来源:KDE Developer Documentation: Creating Dolphin service menus

远程桌面

KDE 提供了名为 KRDC 的远程桌面客户端,依赖 libvncserverfreerdp 提供 VNC 和 RDP 协议支持。
但在 Arch Linux 上使用 RDP 协议连接局域网内的 Windows 主机时,遇到了初始化缓慢的问题,具体表现为点击信任证书后界面无响应,等待几分钟后才加载出 Windows 画面,后续操作正常无明显延迟。

排查后发现是 freerdp 支持 kerberos 认证,而 Arch Linux 上的 kerberos 配置文件 /etc/krb5.conf 中默认包含 kerberos.mit.edu 外部地址,导致在连接 Windows 时本地会往 kerberos.mit.edu:88 发送 UDP 请求。正好赶上局域网内代理网关的上游节点对 UDP 代理支持不佳,导致 UDP 请求超时,最终影响了 RDP 连接的初始化速度。

根据以上原因,一种解决方案是在局域网内的代理网关上禁用 UDP 代理,另一种则是直接禁用本地的 kerberos 认证。个人更推荐后者,因为本地确实没有地方用到 kerberos 认证,也不希望局域网内就能完成的功能还要去访问外部互联网。

# 使用空的 krb5.conf 禁用 kerberos 认证
sudo mv /etc/krb5.conf /etc/krb5.conf.bak
sudo touch /etc/krb5.conf

参考来源: