桌面环境与输入法合集
KDE 与 RHEL 系桌面的安装、输入法配置,以及几个高频小故障(Dolphin 提权、KDE Connect 失联)。
在RedHat/Fedora KDE桌面使用fcitx5/ibus输入法
安装 Fcitx5
1 | sudo dnf install fcitx5-gtk2 fcitx5-gtk3 fcitx5-gtk4 fcitx5-gtk fcitx5-data fcitx5 fcitx5-qt-libfcitx5qtdbus fcitx5-qt-module fcitx5-lua fcitx5-qt-libfcitx5qt5widgets fcitx5-chinese-addons fcitx5-chinese-addons-data fcitx5-qt kcm-fcitx5 fcitx5-rime |
安装 ibus
1 | sudo dnf install ibus ibus-libpinyin ibus-gtk2 ibus-gtk3 ibus-gtk4 ibus-qt |
配置文件
编辑 /etc/environment:
1 | sudo vim /etc/environment |
输入以下内容并保存,注销重新登陆即可使用,右击任务栏图标即可配置。
Fcitx5 配置
1 | INPUT_METHOD=fcitx5 |
iBus 配置
1 | INPUT_METHOD=ibus |
在基于RHEL的系统上安装KDE Plasma桌面环境
这大概也适用于Rocky/Alma和CentOS(Stream)。
我需要为某个项目创建一个AlmaLinux 9.1(注:译者在RHEL9.1测试通过)工作站。
我唯一的抱怨是,我不是GNOME桌面的忠实粉丝。 除了“标准”桌面或GNOME桌面之外,如果有另一种选择就好了。
我最近不得不为一个项目创建一个AlmaLinux 9.1工作站。我唯一的抱怨是,我不是Gnome桌面的忠实粉丝。 除了“标准”桌面或Gnome桌面之外,如果有另一种选择就好了。
这就是如何在基于RHEL9的系统上安装KDE Plasma的方法。
这就是如何在基于RHEL9的系统上安装KDE Plasma。
首先,参考此处安装EPEL镜像。
安装 KDE:安装KDE
sudo dnf -y groupinstall "KDE Plasma Workspaces" "base-x"
KDE可选组件:
1 | sudo dnf groupinstall kde-apps |
(注:若有依赖关系破损可通过 –skip-broken参数跳过,使用中暂未见异常)
(可选) 使用sddm作为登录管理器:
1 | sudo systemctl set-default graphical.target |
(可选) 通过Flatpak安装Apps:
1 | sudo dnf -y install flatpak |
(可选)禁用GNOME的gdm:设置sddm替换gdm登录屏幕
1 | sudo systemctl disable gdm |
注销,在登录界面选择Plasma会话登录即可。
在登录屏幕上从小“设置”图标中选择您的桌面环境然后重启到等离子桌面。
(可选)卸载GNOME桌面删除GNOME桌面
sudo dnf autoremove @gnome-desktop gdm
来源:
https://www.linux.org/threads/installing-kde-plasma-on-almalinux-9-1.42978/
https://fedoraproject.org/wiki/SIGs/KDE/EPEL
KDE Dolphin文件管理器以root访问
把下列代码保存为 open_as_root.desktop,放置于 ~/.local/share/kservices5/ServiceMenus/ 目录(无此目录请手动创建):
1 | [Desktop Entry] |
KDE Connect 故障修复
故障处理
我有两个设备运行 KDE Connect 但他们不能发现对方
KDE Connect 在 1714-1764 内的动态端口使用 UDP 和 TCP 协议。因此,如果你在防火墙后面,确保为 TCP 和 UDP 打开这个端口范围。否则,请确保你的网络没有阻挡 UDP 广播数据包。
检查进程是否在网络上监听:
1 | sudo netstat -tunelp | grep -i kdeconnect |
端口是否开放/阻止?
1 | netcat -z -v <your-phones-ip> 1714-1764 |
示例输出:
1 | Connection to <your-phones-ip> 1716 port [tcp/*] succeeded! |
你也会看到很多 Connection refused,但只需要 1 个 “succeeded”。
如果网络连接不是问题,你可以尝试从干净的配置重新开始:
1 | killall kdeconnectd |
ufw 防火墙
如果你使用 ufw 防火墙,你可以通过如下指令打开必要的端口:
1 | sudo ufw allow 1714:1764/udp |
firewalld 防火墙
如果你使用 firewalld 防火墙,你可以通过如下指令打开必要的端口:
1 | sudo firewall-cmd --zone=public --permanent --add-port=1714-1764/tcp |
防火墙配置 (firewall-config)
打开防火墙配置(firewall-config)。在 分区(Zones) ➔ 服务(Services),选中 kde-connect 服务。
确保你在顶部的下拉菜单中选中了”持久的” 配置: 选项,否则重启后会丢弃你的更改。
iptables
如果你使用 iptables 防火墙,你可以通过如下指令打开必要的端口:
1 | sudo iptables -I INPUT -i <yourinterface> -p udp --dport 1714:1764 -m state --state NEW,ESTABLISHED -j ACCEPT |
当与另一个设备配对时 KDE Connect 崩溃或重启
有时,错误的配置文件可能在设备配对时导致 KDE Connect 软件崩溃,如果是这样,试试删除 ~/.config/kdeconnect 的配置文件。
KDE Connect Android app crashes
If the KDE Connect Android app crashes, you might be able to get more information about the crash by using adb logcat.
Set up ADB using the official instructions
The following command should list all information relevant to your crash. Run adb logcat *before* triggering the crash:
1 | adb logcat --pid=$(adb shell pidof -s org.kde.kdeconnect_tp) |
没有显示服务器我能运行 KDE Connect 吗?
是的,你可以传递命令行参数 -platform offscreen 到守护进程(例如:killall -9 kdeconnectd; /usr/lib/libexec/kdeconnectd -platform offscreen)。
GSConnect
GSConnect 是一个独立的项目,它将 KDE Connect 协议引入 GNOME 实现,并使用相同的 Android 应用。如果你正在运行 GSConnect,请先访问该项目 GitHub 页面 以获得支持。如果你和 GSConnect 团队确定问题出在安卓应用或协议上,请随时在 KDE Connect 错误跟踪器中报告这些问题。
KDE 默认应用的 MIME 优先级:按文件名类别排序
.md 双击打开方式在 mdoxide / zedg / kwrite 之间反复横跳,最后挖出 KDE/KIO 的真实查找规则——它不是 XDG 规范的「目录优先级交错」。
- 现象:系统设置里把
.md默认程序改成 zedg,改完立刻变回 mdoxide;删掉~/.config/kde-mimeapps.list后又变成 kwrite; - 真实规则:所有
<desktop>-mimeapps.list(无论在~/.config还是/usr/share)整体排在所有mimeapps.list之前。系统级/usr/share/applications/kde-mimeapps.list(plasma-workspace自带)写着text/markdown=org.kde.kate.desktop;org.kde.kwrite.desktop,kate 未安装 → kwrite 接手;用户mimeapps.list优先级更低,怎么写都赢不过; - 决定性实验:把
~/.config/kde-mimeapps.list写成空的[Default Applications]段,此时mimeapps.list里明明有text/markdown=dev.mdoxide.app.desktop,kde-open实测仍起 kwrite——证明不是「同名 key 谁优先」的合并关系,而是文件名类别决定整条查找路径; - 修法:删除
~/.config/kde-mimeapps.list,在~/.config/mimeapps.list末尾追加[Removed Associations]段与text/markdown=org.kde.kate.desktop;org.kde.kwrite.desktop;,再kbuildsycoca6重建缓存; - 顺序不能反:先删补丁文件会立刻回退到系统默认的 kwrite,必须先加
[Removed Associations]再删; - 软链合并不成立:
kde-mimeapps.list -> mimeapps.list写入正常、内容同步,但 KDE 按规范化路径去重、软链被视为同一文件,打开仍走 kwrite; text/x-markdown只是别名:.md的真实类型是text/markdown,两套 key 各写各的默认值,两条都要处理;- 别信
xdg-mime query default:它只读配置字面值,不校验应用是否声明支持该 MIME,也不反映 KIO 的真实优先级。判断实际行为要用kde-open <file>+ps -eo comm; kreadconfig6只读mimeapps.list:显示 zedg 已生效,与真实行为不符;strings读 ksycoca 索引要用strings -el(内部是 UTF-16)。


