Xfce4 桌面环境结合 i3wm 窗口管理器

发布于 2022/1/28, 编辑于 2022/10/1

新版的 KDE 和 Gnome 都有类 i3 的窗口管理功能或者插件. 而 Xfce4 的 Xfwm 比较遗憾, 还没有这种类 i3 功能或插件, 本文将介绍如何用 i3wm 替换 Xfwm, 从而实现在 xfce4 环境下使用 i3wm

picpic

参考

事先说明

  • 文章开头的图片只是实例图, 并非按照本文介绍的步骤就能实现一样的外观, 这里只是要实现 Xfce4 DE + i3wm 的效果. 要做到实例图的效果, 可以参考我的 xfce4 配置:
  • 笔者系统为 Manjaro 上的 Xfce4, 不保证其他发行版如 Xubuntu的 Xfce4 能有同样的效果
  • 建议读者事先熟悉 i3wm 的使用方法以及其配置方法, 以免安装完后抓瞎

步骤

  1. 执行命令:
    yay -S i3-gaps-next-git
    sudo pacman --remove xfdesktop
    xfconf-query -c xfce4-session -p /sessions/Failsafe/Client0_Command -t string -sa i3
  2. 重启, 然后登录时还是选择 Xfce4, 但是进来后会发现进入了 i3wm, 且保留了 Xfce4 的面板栏, 至此, 大功告成
  3. 恢复方法:
    sudo pacman -S xfdesktop
    yay --remove i3-gaps-next-git
    xfconf-query -c xfce4-session -p /sessions/Failsafe/Client0_Command -t string -sa xfwm
  4. 删除 "键盘" 软件中的快捷键, 删多少读者自行定夺, 这一步主要目的是防止 i3 的默认的 $mod 键和 $sup 键被覆盖, 如果读者心里有数, 一个不删也可以

操作完成后 xfwm 的合成器 (用于实现过渡动画 / 透明效果的软件) 和桌面 xfdesktop (背景墙纸) 当然是不生效了, 那么这时候就推荐 picom 合成器和 feh 墙纸等软件和 i3 配套, 这里不提

xfce4-i3-workspaces-plugin

xfce4-i3-workspaces-plugin 是个可以在 xfce4-panel 上显示当前的 i3 workspace 的插件, 其实还挺有必要的

但这插件的问题在于会有严重的 bug, 就是会在刷新 i3 ($mod + shift + r) 的时候有时会断开与 i3wm 的连接, 于是会不断尝试重连, 又不断失败, 无限循环, 这过程中会不断对 ~/.xsession-errors 写入错误日志, 导致日志文件无限增加导致电脑硬盘容量爆满, 这个 bug 作者至今未修复, 十分让人蛋疼

不过也有个粗暴的解决方案, 就是在刷新 i3 时同时重启整个 xfce4-panel 的容器插件, 只需要在 ~/.config/i3/config 加入以下行即可 (注意 wrapper 的位置, 未必和我的位置一样, 具体以每个人的配置为准, 可以通过 htop 找到这个 wrapper 的位置):

exec_always --no-startup-id killall /usr/lib/xfce4/panel/wrapper-2.0

点击这里前往 Github 查看原文,交流意见~

文档信息

版权声明:自由转载 - 非商用 - 非衍生 - 保持署名(创意共享3.0许可证