Openbox是一个轻量的X11窗口管理器,起初是黑乎乎的,经过一些配置后,就可以变得实用且华丽
在Github上搜索“labwc”,就会发现一个叫labwc的Wayland的合成器,他说
“labwc是启发于Openbox开发的基于wlroots的Wayland合成器,并且配置文件和Openbox的配置文件全面兼容”,
意思就是说如果你之前配置过Openbox,在~/.config/openbox里编辑过配置文件,那么可以把~/.config/openbox里的所有文件复制到~/.config/labwc,只不过设置壁纸的方式从feh或者nitrogen变成了swaybg,安装labwc的方式也很简单
Wayland是Linux桌面环境的未来,很多X11下的窗口管理器悄悄地走向了“未来”,例如Wayfire(后起之秀的Wayland合成器,启发于Compiz),Enlightenment(目前拥有实验性的Wayland支持),DDE等等
下面是某人在Deepin编译安装并配置labwc的过程,原文有点长,我整理了下:
首先输入
sudo apt install git
安装git,然后下载labwc源码
git clone https://github.com/labwc/labwc
接下来需要安装依赖:
sudo apt install libseat-dev
因为他工作需要使用钉钉,他吃过亏。依赖的包名都是根据报错提示,apt search xxx 结合经验得出的,所以接下来安装xwayland依赖:
sudo apt install libxcb-composite0-de sudo apt isntall libxcb-icccm4-dev sudo apt install libxcb-res0-dev
然后就开始编译了
首次编译: meson setup build/ meson compile -C build/
非首次编译, 注意参数 -Dxwayland=enabled,建议开启xwayland
-Dxwayland=enabled
meson setup --reconfigure -Dxwayland=enabled build
把命令放到常用目录
上一步完成后,build目录会生成 labwc,复制到 /usr/bin 目录 sudo cp build/labwc /usr/bin
接下来,按Win + Enter 键,弹出 alacritty。此时labwc外观和Openbox一样是黑漆漆的一片。
如果需要修改快捷键,那么方法和Openbox类似,修改~/.config/labwc/*rc.xml即可,具体内容可以百度搜索“Openbox修改快捷键”
接下来添加桌面元素
你要保证:1.你随时能切换回你之前的桌面环境; 2.系统能自动联网。这样出意外的时候,还有退路可走。
设置 wayland-sessions
创建 labwc.desktop 文件,路径和内容如下所示,
➜ ~ cat /usr/share/wayland-sessions/labwc.desktop [Desktop Entry] Name=Labwc Comment=Labwc Exec=labwc Type=Application ➜ ~
这样能确保你能通过Display Manager进入labwc,不用每次敲命令行进入
labwc 基本配置
先创建和下载 4 个核心配置文件
mkdir -p ~/.config/labwc wget https://raw.githubusercontent.com/labwc/labwc/master/docs/environment -O ~/.config/labwc/environment wget https://raw.githubusercontent.com/labwc/labwc/master/docs/autostart -O ~/.config/labwc/autostart wget https://raw.githubusercontent.com/labwc/labwc/master/docs/menu.xml -O ~/.config/labwc/menu.xml wget https://raw.githubusercontent.com/labwc/labwc/master/docs/rc.xml -O ~/.config/labwc/rc.xml
这些配置文件结构和Openbox的配置结构一模一样
可以直接使用他的配置文件: https://github.com/kmephistoh/my_config/tree/main/labwc
这是他的配置文件内容以及他对配置文件的解释:分别是autostart、environment、rc.xml、menu.xml
autostart
➜ labwc egrep -v "#|^$" autostart swaybg -i ~/Pictures/mount.jpeg >/dev/null 2>&1 & waybar >/dev/null 2>&1 & fcitx5 >/dev/null 2>&1 & ➜ labwc pwd /home/***/.config/labwc
分别为设置壁纸(swaybg)、启动 waybar 状态栏(可以用 yambar, lavalauncher, sfwbar代替)、启动 fcitx5 输入法(输入法英语系的人不用,中文读者必须有),壁纸图片路径请自行修改,截屏也能用grim,录屏能用wf-recorder,可以用这三款工具改变屏幕分辨率,设置显示器输出: wlopm, kanshi, wlr-randr
environment
➜ labwc egrep -v "#|^$" environment XDG_CURRENT_DESKTOP=wlroots MOZ_ENABLE_WAYLAND=1 XDG_CURRENT_DESKTOP=labwc XCURSOR_THEME=breeze_cursors GTK_IM_MODULE=fcitx QT_IM_MODULE=fcitx XMODIFIERS=@im=fcitx INPUT_METHOD=fcitx SDL_IM_MODULE=fcitx ➜ labwc pwd /home/mephisto/.config/labwc
其中,MOZ_ENABLE_WAYLAND=1 让 firefox 运行在 wayland 下
XDG_CURRENT_DESKTOP=labwc 为 flameshot 截屏软件所需
fcitx 相关就是让 fcitx 正常工作的。
这些是他自己摸索出来的
如果更喜欢 chrome,或者基于Chromium的浏览器,不习惯 firefox,还需要做些特殊设置(如果没有开启 xwayland 支持的话)。
➜ labwc grep -i exec /usr/share/applications/google-chrome.desktop Exec=/usr/bin/google-chrome-stable -enable-features=UseOzonePlatform --ozone-platform=wayland --gtk-version=4 %U Exec=/usr/bin/google-chrome-stable -enable-features=UseOzonePlatform --ozone-platform=wayland --gtk-version=4 Exec=/usr/bin/google-chrome-stable --incognito -enable-features=UseOzonePlatform --ozone-platform=wayland --gtk-version=4
-enable-features=UseOzonePlatform --ozone-platform=wayland 为开启 wayland 支持
--gtk-version=4 开启 fcitx5 输入法支持,候选字界面会跑飞
rc.xml
这个部分,没怎么改动,只是添加了快捷键,wofi 为启动器(lancher)、flameshot 为截屏工具、swaylock 为锁屏工具,wofi 后续有空会单独写个文章。
#我在rc.xml里加入了下面这一段内容后,就可以实现简单的窗口平铺:
0 0 50% 100% -0 0 50% 100%
waybar 是可以定制的,建议看官方文档
有很多示例: https://github.com/Alexays/Waybar/wiki/Examples
找个自己喜欢的即可,这是他的配置,在: https://github.com/kmephistoh/my_config
设置 swaylock(作用等同于i3lock)
swaylock 就是锁屏,离开电脑的时候锁屏是个好习惯,防火防盗防伪君子。
先安装
sudo apt install swaylock
也可以直接下载他的配置文件:https://github.com/kmephistoh/my_config/tree/main/swaylock
根据 rc.xml 中的设置,Win + l 键锁屏,首次使用的的时候,效果确实令人吃惊的,大概长这个样子(锁屏界面无法截图,只能找个网图,他配置的没这个好看)。
最后,他配置出了这样的labwc桌面环境,Wayland合成器,他电脑在主屏右侧外接了一块屏幕
状态栏 waybar
启动器 wofi
菜单(点空白区弹出,可退出 labwc,不然你都不知道怎么退出,对不对?)
证明 chrome 工作良好,有了能上网的浏览器,你应该毫无畏惧了
还没有 wofi,请先用 Alt + F3 弹出的 bemenue,够用不好看
Alt + F3
通知效果:
他说:“用 labwc 工作是没有问题的,我准备持续体验一段时间,也许会遇到各种小瑕疵,但是都不关键。重要的是可以按照自己的喜好,来定制桌面环境的各种组件,避免受制于 Gnome/KDE 等重型环境,系统响应速度很快(大部分是 C 写的),你知道这些部件是如何协作的,可以学到一些知识,不喜欢可以随时替换,这就是自由自在感觉。”
没有解决任何实际问题 没有看到「自由」 穷折腾
感谢分享!
真不错啊,很好看
这个让我想起了,当年折腾fvwm的往事。。。
我尝试过配置fvwm,但是连哪个是配置文件都不知道
Popular Ranking
Popular Events
Openbox是一个轻量的X11窗口管理器,起初是黑乎乎的,经过一些配置后,就可以变得实用且华丽
在Github上搜索“labwc”,就会发现一个叫labwc的Wayland的合成器,他说
“labwc是启发于Openbox开发的基于wlroots的Wayland合成器,并且配置文件和Openbox的配置文件全面兼容”,
意思就是说如果你之前配置过Openbox,在~/.config/openbox里编辑过配置文件,那么可以把~/.config/openbox里的所有文件复制到~/.config/labwc,只不过设置壁纸的方式从feh或者nitrogen变成了swaybg,安装labwc的方式也很简单
Wayland是Linux桌面环境的未来,很多X11下的窗口管理器悄悄地走向了“未来”,例如Wayfire(后起之秀的Wayland合成器,启发于Compiz),Enlightenment(目前拥有实验性的Wayland支持),DDE等等
下面是某人在Deepin编译安装并配置labwc的过程,原文有点长,我整理了下:
首先输入
sudo apt install git
安装git,然后下载labwc源码
git clone https://github.com/labwc/labwc
接下来需要安装依赖:
sudo apt install libseat-dev
因为他工作需要使用钉钉,他吃过亏。依赖的包名都是根据报错提示,apt search xxx 结合经验得出的,所以接下来安装xwayland依赖:
sudo apt install libxcb-composite0-de
sudo apt isntall libxcb-icccm4-dev
sudo apt install libxcb-res0-dev
然后就开始编译了
首次编译:
meson setup build/
meson compile -C build/
非首次编译, 注意参数
-Dxwayland=enabled
,建议开启xwaylandmeson setup --reconfigure -Dxwayland=enabled build
把命令放到常用目录
上一步完成后,build目录会生成 labwc,复制到 /usr/bin 目录
sudo cp build/labwc /usr/bin
接下来,按Win + Enter 键,弹出 alacritty。此时labwc外观和Openbox一样是黑漆漆的一片。
如果需要修改快捷键,那么方法和Openbox类似,修改~/.config/labwc/*rc.xml即可,具体内容可以百度搜索“Openbox修改快捷键”
接下来添加桌面元素
你要保证:1.你随时能切换回你之前的桌面环境; 2.系统能自动联网。这样出意外的时候,还有退路可走。
设置 wayland-sessions
创建 labwc.desktop 文件,路径和内容如下所示,
➜ ~ cat /usr/share/wayland-sessions/labwc.desktop
[Desktop Entry]
Name=Labwc
Comment=Labwc
Exec=labwc
Type=Application
➜ ~
这样能确保你能通过Display Manager进入labwc,不用每次敲命令行进入
labwc 基本配置
先创建和下载 4 个核心配置文件
mkdir -p ~/.config/labwc
wget https://raw.githubusercontent.com/labwc/labwc/master/docs/environment -O ~/.config/labwc/environment
wget https://raw.githubusercontent.com/labwc/labwc/master/docs/autostart -O ~/.config/labwc/autostart
wget https://raw.githubusercontent.com/labwc/labwc/master/docs/menu.xml -O ~/.config/labwc/menu.xml
wget https://raw.githubusercontent.com/labwc/labwc/master/docs/rc.xml -O ~/.config/labwc/rc.xml
这些配置文件结构和Openbox的配置结构一模一样
可以直接使用他的配置文件: https://github.com/kmephistoh/my_config/tree/main/labwc
这是他的配置文件内容以及他对配置文件的解释:分别是autostart、environment、rc.xml、menu.xml
autostart
➜ labwc egrep -v "#|^$" autostart
swaybg -i ~/Pictures/mount.jpeg >/dev/null 2>&1 &
waybar >/dev/null 2>&1 &
fcitx5 >/dev/null 2>&1 &
➜ labwc pwd
/home/***/.config/labwc
分别为设置壁纸(swaybg)、启动 waybar 状态栏(可以用 yambar, lavalauncher, sfwbar代替)、启动 fcitx5 输入法(输入法英语系的人不用,中文读者必须有),壁纸图片路径请自行修改,截屏也能用grim,录屏能用wf-recorder,可以用这三款工具改变屏幕分辨率,设置显示器输出: wlopm, kanshi, wlr-randr
environment
➜ labwc egrep -v "#|^$" environment
XDG_CURRENT_DESKTOP=wlroots
MOZ_ENABLE_WAYLAND=1
XDG_CURRENT_DESKTOP=labwc
XCURSOR_THEME=breeze_cursors
GTK_IM_MODULE=fcitx
QT_IM_MODULE=fcitx
XMODIFIERS=@im=fcitx
INPUT_METHOD=fcitx
SDL_IM_MODULE=fcitx
➜ labwc pwd
/home/mephisto/.config/labwc
其中,MOZ_ENABLE_WAYLAND=1 让 firefox 运行在 wayland 下
XDG_CURRENT_DESKTOP=labwc 为 flameshot 截屏软件所需
fcitx 相关就是让 fcitx 正常工作的。
这些是他自己摸索出来的
如果更喜欢 chrome,或者基于Chromium的浏览器,不习惯 firefox,还需要做些特殊设置(如果没有开启 xwayland 支持的话)。
➜ labwc grep -i exec /usr/share/applications/google-chrome.desktop
Exec=/usr/bin/google-chrome-stable -enable-features=UseOzonePlatform --ozone-platform=wayland --gtk-version=4 %U
Exec=/usr/bin/google-chrome-stable -enable-features=UseOzonePlatform --ozone-platform=wayland --gtk-version=4
Exec=/usr/bin/google-chrome-stable --incognito -enable-features=UseOzonePlatform --ozone-platform=wayland --gtk-version=4
-enable-features=UseOzonePlatform --ozone-platform=wayland 为开启 wayland 支持
--gtk-version=4 开启 fcitx5 输入法支持,候选字界面会跑飞
rc.xml
这个部分,没怎么改动,只是添加了快捷键,wofi 为启动器(lancher)、flameshot 为截屏工具、swaylock 为锁屏工具,wofi 后续有空会单独写个文章。
#我在rc.xml里加入了下面这一段内容后,就可以实现简单的窗口平铺:
waybar 是可以定制的,建议看官方文档
有很多示例: https://github.com/Alexays/Waybar/wiki/Examples
找个自己喜欢的即可,这是他的配置,在: https://github.com/kmephistoh/my_config
设置 swaylock(作用等同于i3lock)
swaylock 就是锁屏,离开电脑的时候锁屏是个好习惯,防火防盗防伪君子。
先安装
sudo apt install swaylock
也可以直接下载他的配置文件:https://github.com/kmephistoh/my_config/tree/main/swaylock
根据 rc.xml 中的设置,Win + l 键锁屏,首次使用的的时候,效果确实令人吃惊的,大概长这个样子(锁屏界面无法截图,只能找个网图,他配置的没这个好看)。
最后,他配置出了这样的labwc桌面环境,Wayland合成器,他电脑在主屏右侧外接了一块屏幕
状态栏 waybar
启动器 wofi
菜单(点空白区弹出,可退出 labwc,不然你都不知道怎么退出,对不对?)
证明 chrome 工作良好,有了能上网的浏览器,你应该毫无畏惧了
还没有 wofi,请先用
Alt + F3
弹出的 bemenue,够用不好看通知效果:
他说:“用 labwc 工作是没有问题的,我准备持续体验一段时间,也许会遇到各种小瑕疵,但是都不关键。重要的是可以按照自己的喜好,来定制桌面环境的各种组件,避免受制于 Gnome/KDE 等重型环境,系统响应速度很快(大部分是 C 写的),你知道这些部件是如何协作的,可以学到一些知识,不喜欢可以随时替换,这就是自由自在感觉。”