Labwc
Labwc 代表 Lab Wayland Compositor (Lab Wayland 合成器)[1]。根据官方网站
- Labwc 是一个基于 wlroots 的窗口堆叠式合成器,受 Openbox 启发。
- 它轻量级且独立,专注于良好地堆叠窗口和渲染一些窗口装饰。它依赖客户端来提供面板、截图、壁纸等功能,以创建完整的桌面环境。
- Labwc 在总体方法和编码风格上努力与 wlroots 和 sway 保持一致。
- Labwc 只理解 wayland-protocols 和 wlr-protocols,无法通过 dbus、sway/i3-IPC 或其他技术进行控制。这样做的原因是,我们认为自定义 IPC 和协议会造成碎片化,阻碍 Wayland 的普遍采用。
安装
Labwc 可以通过包labwc或labwc-gitAUR安装。
默认的终端模拟器是alacritty。在启动 labwc 之前,建议安装它或在配置文件中设置新的终端。
启动
与所有基于 wlroots 的合成器一样,为了访问您的 seat,labwc 在使用 systemd-logind(8) 时需要安装 Polkit,或者启用 seatd 服务并将您的用户添加到 seat 用户组。
您可以在 Linux 控制台中启动 labwc,或者使用兼容 Wayland 的显示管理器。
默认情况下,您可以按下 Super 键(通常是带有窗口图标的键)并加上 Enter 键来启动 alacritty。有关默认快捷键,请参阅 6. 使用。
配置
可以使用以下文件进行配置
~/.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 & fcitx5 -r -d #& is not needed for daemon waybar --log-level off & 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 --log-level off &
输出
可以使用像 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>
Menu
Labwc 在 ~/.config/labwc/menu.xml 中遵循 Openbox 的菜单配置语法。例如
~/.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)。
Themes
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
xorg-xwayland 在构建时启用 Xwayland 支持后会自动启动。要强制禁用它,请设置
~/.config/labwc/environment
WLR_XWAYLAND=
wlroots 渲染器
要使用其他渲染器(如 vulkan),请参阅 Wayland#使用其他渲染器为基于 wlroots 的合成器。