【Raspberry Pi OS Bookworm】labwc環境でタスクバーを非表示にする方法

初めに

Raspberry Pi OS Bookworm では、デフォルトのデスクトップ環境が従来のLXDEから変更されています。

現在の構成は次の通りです。

  • OS:Debian 12 (Bookworm)
  • ウィンドウマネージャ:labwc (Wayland)
  • wf-panel-pi

この記事では、labwc環境でタスクバー(wf-panel-pi)を非表示にする方法をまとめます。

事前確認

現在の環境確認方法

環境の確認

ターミナルで以下のコードを打ち込んで確認してください。

cat /etc/os-releasecat

Bookwormであることを確認できました。

デスクトップ環境の確認

echo $XDG_CURRENT_DESKTOP

動作中のパネル確認

ps aux | grep wf-panel

タスクバーの非表示

タスクバーを非表示に変更

killall wf-panel-pi


ただし、これだけでは数秒後に復活します。
その理由は、autostart設定で lwrespawn によって再起動されるためです。

再起動後も表示させない方法

labwcのautostartを編集します。

sudo nano /etc/xdg/labwc/autostart

以下の行をコメントアウトします。

#/usr/bin/lwrespawn /usr/bin/wf-panel-pi &

保存後、再起動します。

sudo reboot

これでタスクバーは自動起動しなくなります。

非表示にしたタスクバーを再度表示させる

一度非表示にしたタスクバーを表示させる場合、以下の方法で再表示できます。

手動でタスクバーを再表示

以下のコマンドをターミナルで実行してください。

wf-panel-pi &

pythonアプリ等で特定の動作をした時に再表示

キオスク用途でPythonアプリを自動起動している場合、
アプリ終了時にタスクバーを復活させることもできます。

以下はkivyでアプリを終了させてデスクトップを表示させる際にタスクバーを再表示させる例です。

import subprocess
from kivy.app import App

def apl_kill(self):
    if subprocess.run(
        ["pgrep", "-x", "wf-panel-pi"],
        stdout=subprocess.DEVNULL
    ).returncode != 0:
        subprocess.Popen(["wf-panel-pi"])

    App.get_running_app().stop()

これで

  1. パネルが起動していなければ起動
  2. アプリ終了
  3. タスクバー表示

という動作になります。

まとめ

Bookworm環境では、

  • LXDE → labwc に変更されている
  • パネルは wf-panel-pi
  • 自動再起動は lwrespawn が担当

という構成になっています。

キオスク用途や計測装置用途では、

  • パネル自動起動停止
  • 必要時のみ手動起動

が最も安定した構成になります。

よかったらシェアしてね!