Labwc

提供: ArchWiki
2024年5月19日 (日) 18:32時点におけるKusanaginoturugi (トーク | 投稿記録)による版 (一部翻訳)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
ナビゲーションに移動 検索に移動

関連記事

Labwc は Lab Wayland Compositor[1] の略です。 公式ウェブサイトによると:

Labwc は wlroots ベースのウィンドウスタッキングコンポジターで、Wayland 用に開発されました。openbox に触発されています。
軽量で独立しており、ウィンドウを効果的にスタックし、いくつかのウィンドウ装飾を描画することに焦点を当てています。パネル、スクリーンショット、壁紙などをクライアントに依存して、フルデスクトップ環境を作成します。
Labwc は、一般的なアプローチとコーディングスタイルの点で wlroots や sway と一致しようと試みています。
Labwc は、wayland-protocols と wlr-protocols のみを理解し、dbus や sway/i3-IPC などの他の技術で制御することはできません。その理由は、カスタム IPC とプロトコルが Wayland の一般的な採用を妨げるフラグメンテーションを作り出すと考えているからです。

インストール

Labwc は、パッケージ labwcAUR または labwc-gitAURインストールできます。

デフォルトのターミナルエミュレータfoot です。labwc を開始する前に、それをインストールするか、設定で新しいターミナルを設定することが推奨されます。

Configuration

この記事あるいはセクションで使われている用語や表現には問題が存在します。
議論: Multiple sections duplicate upstream documentation. Missing Template:ic and Template:man between other misc visual adjustments. (議論: トーク:Labwc#)

Openbox 3.6 specification is used for configuration and theme syntaxes. Config layout for ~/.config/labwc/ :

- autostart
- environment
- menu.xml
- rc.xml
- themerc-override

See `man labwc-config and `man labwc-theme` for further details. rc.xml.all contain default settings with all options.

copy the sample configuration files located at /usr/share/doc/labwc/ to ~/.config/labwc/.

see integration for more configuration

Autostart

~/.config/labwc/autostart is used as autostart.

Keymap

On ~/.config/labwc/environment

The following keyboard-configuration variables are supported: XKB_DEFAULT_RULES, XKB_DEFAULT_MODEL, XKB_DEFAULT_LAYOUT, XKB_DEFAULT_VARIANT and XKB_DEFAULT_OPTIONS. :

XKB_DEFAULT_LAYOUT=us
XKB_DEFAULT_LAYOUT=us,de
XKB_DEFAULT_OPTIONS=grp:alt_shift_toggle
XKB_DEFAULT_OPTIONS=grp:shift_caps_toggle

for details see xkeyboard-config(7)

Typematic delay and rate

To change typematic delay and rate, you can add the following lines to your input section, these are default value:

~/.config/labwc/rc.xml
<keyboard>
<repeatRate>25</repeatRate>
<repeatDelay>600</repeatDelay>
</keyboard>

Statusbar

waybar can be used.

~/.config/labwc/autostart
waybar >/dev/null 2>&1 &

to enable a taskbar through the toplevel-foreign protocol in waybar-wlr-taskbar(5)

~/.config/waybar/config
"modules-left": ["wlr/taskbar"],

 "wlr/taskbar": {
        "format": "{app_id}",
        "on-click": "minimize-raise",
    },
 

Outputs

external tools like wlr-randr,kanshi

~/.config/labwc/autostart
wlr-randr --output HDMI-A-2 --preferred --pos 0,0 --output HDMI-A-1 --preferred --pos -1920,0

Wallpaper

use autostart and wallpaper setter like swaybg, wallutils, wpaperd, wbgAUR etc

~/.config/labwc/autostart
swaybg -c '#113344' >/dev/null 2>&1 &

Custom keybindings

~/.config/labwc/rc.xml
<keyboard>
<keybind keyテンプレート:="W-d"> <action nameテンプレート:="Execute" commandテンプレート:="fuzzel"/> </keybind>
<keybind keyテンプレート:="XF86_AudioLowerVolume">  <action nameテンプレート:="Execute" commandテンプレート:="wpctl set-volume  @DEFAULT_AUDIO_SINK@ 5%-"/> </keybind>
<keybind keyテンプレート:="XF86_AudioRaiseVolume"> <action nameテンプレート:="Execute" commandテンプレート:="wpctl set-volume  @DEFAULT_AUDIO_SINK@ 5%+"/> </keybind>
<keybind keyテンプレート:="XF86_AudioMute"> <action nameテンプレート:="Execute" commandテンプレート:="wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle "/> </keybind>
<keybind keyテンプレート:="XF86_MonBrightnessUp"> <action nameテンプレート:="Execute" commandテンプレート:="brightnessctl -e set 5%+"/> </keybind>
<keybind keyテンプレート:="XF86_MonBrightnessDown"> <action nameテンプレート:="Execute" commandテンプレート:="brightnessctl -e set 5%-"/> </keybind>
</keyboard>

workspaces

~/.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

it uses openbox sepecification menu. see /usr/share/doc/labwc/menu.xml and man labwc-menu. you can also use automatic menu generators for openbox like archlinux-xdg-menu, obmenu-generatorAUR,etc

example:

<?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>

Xwayland

it starts xorg-xwayland automatically if xwayland support is enabled at build time. to force disable it set:

~/.config/labwc/enviroment
WLR_XWAYLANDテンプレート:=' '

Starting

Like all wlroots based compositor for seat it needs polkit when using systemd-logind or seatd service with your user added to seat user group

To start Labwc, type labwc in the Linux console.

labwc -s foot to start labwc with foot running.

See also