Labwc
Labwc 代表 Lab Wayland Compositor[1]。根据官方网站
- Labwc 是一款基于 wlroots 的 wayland 窗口堆叠 compositor,灵感来源于 openbox。
- 它轻量且独立,专注于良好地堆叠窗口和渲染一些窗口装饰。它依赖客户端来实现面板、屏幕截图、壁纸等,以创建一个完整的桌面环境。
- Labwc 尝试在通用方法和编码风格方面与 wlroots 和 sway 保持一致。
- Labwc 仅理解 wayland-protocols 和 wlr-protocols,并且无法通过 dbus、sway/i3-IPC 或其他技术进行控制。这样做的原因是,我们认为自定义 IPC 和协议会造成碎片化,阻碍 Wayland 的普遍采用。
安装
Labwc 可以通过软件包 labwc 或 labwc-gitAUR 安装。
默认的终端模拟器是 alacritty。在启动 labwc 之前,建议安装它或在配置中设置新的终端。
启动
与所有基于 wlroots 的 compositor 一样,为了访问您的 seat,当使用 systemd-logind(8) 时,labwc 需要安装 Polkit,或者启用 seatd 服务并将您的用户添加到 seat
用户组。
要启动 labwc,请在 Linux 控制台中键入 labwc
或使用 wayland 兼容的显示管理器。
默认情况下,您可以按 Super
键(通常是带有 Windows 图标的键)和 Enter
键来启动 alacritty。请参阅 6. Usage 以获取默认快捷键。
配置
以下文件可用于配置
~/.config/labwc/rc.xml
- 用于通用配置~/.config/labwc/menu.xml
- 用于菜单布局~/.config/labwc/autostart
- 启动 labwc 时执行的脚本~/.config/labwc/shutdown
- 退出 labwc 时执行的脚本~/.config/labwc/environment
- 用于会话中的环境变量~/.config/labwc/themerc-override
- 用于其他主题设置
示例文件在 /usr/share/doc/labwc/
中提供。特别是,/usr/share/doc/labwc/rc.xml.all
包含所有默认配置。
有关更多详细信息,请参阅 labwc-config(5)。
自动启动
~/.config/labwc/autostart
包含启动 labwc 时执行的 shell 脚本。例如
~/.config/labwc/autostart
kanshi >/dev/null 2>&1 & waybar >/dev/null 2>&1 & swaybg -i ~/Pictures/background.png >/dev/null 2>&1 & lxqt-policykit-agent >/dev/null 2>&1 & mako >/dev/null 2>&1 & gammastep -O 3500 -b 0.8 >/dev/null 2>&1 &
键盘布局
可以通过在 ~/.config/labwc/environment
中设置环境变量来配置键盘布局。例如
~/.config/labwc/environment
XKB_DEFAULT_LAYOUT=us XKB_DEFAULT_LAYOUT=us,de XKB_DEFAULT_OPTIONS=grp:alt_shift_toggle XKB_DEFAULT_OPTIONS=grp:shift_caps_toggle
有关详细信息,请参阅 xkeyboard-config(7)。
状态栏
可以使用外部工具(如 waybar 和 sfwbarAUR)来显示状态栏。例如
~/.config/labwc/autostart
waybar >/dev/null 2>&1 &
输出
可以使用外部工具(如 wlr-randr 和 kanshi)来管理输出。例如
~/.config/labwc/autostart
wlr-randr --output HDMI-A-2 --preferred --pos 0,0 --output HDMI-A-1 --preferred --pos -1920,0
壁纸
可以使用外部工具(如 swaybg、wpaperd 和 wbgAUR)来显示背景。例如
~/.config/labwc/autostart
swaybg -c '#113344' >/dev/null 2>&1 &
自定义快捷键
快捷键通过添加带有 <action>
的 <keyboard><keybind>
部分进行配置。例如
~/.config/labwc/rc.xml
<labwc_config> <keyboard> <keybind key="W-q"><action name="Close" /></keybind> <keybind key="A-Tab"><action name="NextWindow" /></keybind> <keybind key="W-Tab"><action name="ToggleMaximize" /></keybind> <keybind key="W-s"><action name="Execute" command="foot" /></keybind> <keybind key="W-a"><action name="Execute" command="fuzzel" /></keybind> </keyboard> </labwc_config>
工作区
工作区在 <desktops>
部分中配置,并通过快捷键切换。例如
~/.config/labwc/rc.xml
<labwc_config> <desktops number="4" /> <keyboard> <keybind key="W-1"><action name="GoToDesktop" to="1" /></keybind> <keybind key="W-2"><action name="GoToDesktop" to="2" /></keybind> <keybind key="W-3"><action name="GoToDesktop" to="3" /></keybind> <keybind key="W-4"><action name="GoToDesktop" to="4" /></keybind> </keyboard> </labwc_config>
菜单
Labwc 遵循 Openbox 的语法,用于配置 ~/.config/labwc/menu.xml
中的菜单。例如
~/.config/labwc/menu.xml
<?xml version="1.0" ?> <openbox_menu> <menu id="root-menu" label=""> <item label=" Firefox"> <action name="Execute" command="firefox" /> </item> <item label=" Terminal"> <action name="Execute" command="foot" /> </item> </menu> </openbox_menu>
此外,您可以使用 Openbox 的菜单生成器,如 archlinux-xdg-menu 和 obmenu-generatorAUR。
有关详细信息,请参阅 labwc-menu(5)。
主题
Labwc 粗略地遵循 Openbox 3 主题规范。您可以将主题安装到以下目录
~/.local/share/themes/<theme-name>/openbox-3/
~/.themes/<theme-name>/openbox-3/
/usr/share/themes/<theme-name>/openbox-3/
/usr/local/share/themes/<theme-name>/openbox-3/
/opt/share/themes/<theme-name>/openbox-3/
这些目录包含 themerc
,它定义了主题颜色和几何形状,以及按钮图标文件,如 close-active.svg
和 close-inactive.svg
。图标文件支持 XBM、SVG 和 PNG 格式。
此外,您可以使用 ~/.config/themerc-override
覆盖主题条目。
labwc-artwork 为 labwc 提供了一些主题。
有关详细信息,请参阅 labwc-theme(5)。
Xwayland
如果在构建时启用了 Xwayland 支持,xorg-xwayland 会自动启动。要强制禁用它,请设置
~/.config/labwc/environment
WLR_XWAYLAND=