Oblogout
関連記事
oblogoutAUR は cancel, logout, restart, shutdown, suspend, hibernate, 画面の lock などのユーザーインターフェイス (ボタン) を提供する、オプションの設定可能なログアウトスクリプトです。
概要
oblogoutAUR は様々なウィンドウマネージャで使うことができますが、この記事では Openbox ウィンドウマネージャでの使用を念頭に置いています。oblogout はキーバインドやデスクトップメニューエントリで起動できます。
キーバインド
Super+x を押したときにスクリプトを実行させるには、~/.config/openbox/rc.xml を編集して以下を <keyboard> セクションの適当な場所に追加してください:
<keybind key="W-x">
<action name="Execute">
<startupnotify>
<enabled>true</enabled>
<name>oblogut</name>
</startupnotify>
<command>oblogout</command>
</action>
</keybind>
画面のロック
画面のロックをするためにインストールしたパッケージを実行するには、/etc/oblogout.conf を編集して [commands] セクション下の lock = コマンドを変更する必要があります。
例えば、XScreenSaver をインストールしている場合、(~/.config/openbox/autostart ファイルでデーモンプロセスとして自動で実行されるようにしてから) /etc/oblogout.conf を以下のように編集します:
lock = xscreensaver-command --lock
もしくは、xlockmore などのパッケージをインストールしている場合 (自動起動させる必要はありません)、設定するコマンド (空の画面でロック) は以下のようになります:
lock = xlock -mode blank
ボタンのテーマ
デフォルトのボタンテーマは oxygen です。プリインストールされている foom など、他のテーマを使うこともできます。ボタンテーマを変更するには、/etc/oblogout.conf を編集して [looks] セクション下の buttontheme = コマンドを変更してください。例えば foom を使う場合:
buttontheme = foom
ボタンの表示
デフォルトのボタンは cancel, logout, restart, shutdown, suspend, hibernate, 画面の lock です。各ボタンにはショートカットが割り当てられています (例: oblogout を実行してから、s キーを押すとシステムがシャットダウンします)。
ボタンの表示・非表示や、ボタンの順番は自由に設定することが可能です。設定するには、/etc/oblogout.conf を編集して [looks] セクション下の buttons = コマンドを変更します。以下の例では suspend と hibernate ボタンを削除しています:
buttons = cancel, logout, lock, restart, shutdown #buttons = cancel, logout, restart, shutdown, suspend, hibernate, lock
ボタンを削除・追加するときは、[shortcuts] セクション下のショートカットキーのコマンドも適切に修正する必要があります。ショートカットを修正しないと、ボタンを削除しても、キーボードでその機能を実行できてしまいます。上記の例にあわせて、以下の設定では suspend と hibernate のショートカットをコメントアウトしています:
[shortcuts] cancel = Escape shutdown = S restart = R #suspend = U logout = L lock = K #hibernate = H
デュアルディスプレイ
デュアルモニターを使っている場合、oblogout は全てのモニターを扱うことができます。特定のモニターにしか oblogout を表示させたくない場合、Openbox の rc.xml ファイルに適当なルールを作成して oblogout の位置とサイズを設定できます。
例えば、モニターが2つある場合、左のモニター (1920x1080) に oblogout を表示したいときは、以下を rc.xml の applications セクションに追加します:
~/.config/openbox/rc.xml
<applications>
<application class="oblogout">
<position force="yes">
<monitor>1</monitor>
</position>
<fullscreen>yes</fullscreen>
</application>
...
</applications>