Edited at

Debian noroot 環境に plank を導入する


はじめに

Debian noroot とは、 Android OS 上において root 権限を取ることなく Debian 環境を構築するためのアプリケーションです。

CPU の性能とメモリ容量が潤沢にある Android OS 端末であれば、 Debian noroot の導入によって Android OS 端末上で非常に軽快な Debian 環境を実現することが出来ます。

Debianのデスクトップ環境において、 Dock ランチャーソフトウェアを導入する事は、通常頻繁に使用するソフトウェアの起動を容易にする等、デスクトップ環境の利便性の向上に関して非常に有用となります。

ここで、Debianのデスクトップ環境において、軽量な Dock ランチャーソフトウェアの1つとして plank が挙げられます。

しかし、 Debian Jessie をベースにした Debian noroot 環境においては、 plank を導入するための適切な deb パッケージが存在しません。

そこで、 plank をソースコードからビルドし、MATE 環境の起動時において自動起動を行うように設定した所、Debian noroot 環境上における各種デスクトップ環境において plank を使用する事が出来るようになりました。

本稿では、 Debian noroot 環境における plank の導入手法について述べます。

本稿では最初に、 "plank の導入" の章において、軽量な Dock ランチャーソフトウェアである plankDebian noroot 環境への導入手法について述べます。

次に、 "デスクトップ環境への導入" の章において、前章で導入した plankDebian noroot 環境上の各種デスクトップ環境へ導入する手法について述べます。

そして、 "plank の問題点" の章において、現時点での Debian noroot 環境に導入した plank の問題点について述べます。

最後に、 "結論" の章において、本稿の結論について述べます。


plank の導入

本章においては、最初に、 "plank に依存するパッケージの導入" の節において、 Debian noroot 環境plank を導入する際に、予め導入するべき plank の依存パッケージの導入について述べます。

次に、 "plank の実行ファイル等のビルド" の節において、 plank 本体のソースコードの取得と、 Debian noroot 環境上で plank 本体のソースコードから plank の実行ファイル等のビルドを行う手法について述べます。

最後に、 "plank のインストール" の節において、前節においてソースコードからビルドした plank の実行ファイル等を Debian noroot 環境上にインストールする手法について述べます。


plank に依存するパッケージの導入

まず最初に、 Debian noroot 環境において plank をビルドする上で、 plank に依存する Debian パッケージの導入を以下の通りに行います。

$ sudo apt-get install automake gnome-common intltool pkg-config valac libbamf3-dev libdbusmenu-gtk3-dev libgdk-pixbuf2.0-dev libgee-dev libglib2.0-dev libgtk-3-dev libwnck-3-dev libx11-dev libgee-0.8-dev

また、上記に加えて、パッケージ xstow の導入も以下の通りに併せて行います。これは、ソースコードからビルドした plank の実行ファイル等をディレクトリ /usr/local 以下に導入する際に plank の実行ファイル等の管理を容易にする為です。

$ sudo apt-get install xstow


plank の実行ファイル等のビルド

次に、 plank 本体のソースコードをplank の公式ページより取得します。なお本稿では、 plank のバージョン 0.11.4 のソースコードである plank-0.11.4.tar.xz を以下の通りに取得します。

plank のソースコードの取得が完了した後は、 plank のソースコードである plank-0.11.4.tar.xz を適切なディレクトリに展開します。

  $ cd /path/to/build   # (ここに、 /path/to/build は、 plank の実行ファイル等をビルドするための作業ディレクトリ。)

$ wget https://launchpad.net/plank/1.0/0.11.4/+download/plank-0.11.4.tar.xz
$ tar -Jxvf plank-0.11.4.tar.xz

そして、カレントディレクトリを ./plank-0.11.4 に移動して、以下の通りにソースコードから実行ファイル等をビルドします。

ここで、plank のインストール先となるディレクトリは、前節で述べた xstow によって plank の管理を容易にする為に /usr/local/opt/plank-0.11.4 とします。

  $ cd ./plank-0.11.4

$ ./configure --prefix=/usr/local/opt/plank-0.11.4 --disable-silent-rules
$ make


plank のインストール

前節によって、正常に plank の実行ファイル等のビルドが完了した後は、コマンド make install を実行して、 plank の実行ファイル等を /usr/local/opt/plank-0.11.4 にインストールします。

  $ make install

そして、カレントディレクトリを /usr/local/opt に移動して以下のコマンドを実行します。コマンド xstow -v ./plank-0.11.4 の実行により、 plank の実行ファイル等のシンボリックリンクがディレクトリ /usr/local 以下に張られます。

  $ cd /usr/local/opt

$ xstow -v ./plank-0.11.4
...(略)...
$

最後に、以下の通りに plank コマンドを実行して、正常に plank が起動する事を確認します。

$ plank

なお、もし plank のソースコードをコンパイルする事が煩わしい場合や何らかの問題で困難である場合は、次に示す URL に置かれているシェルスクリプトを用いて、以下のように plank のソースコードのダウンロード及びビルドとインストールを自動的に行っても構いません。

  $ bash -c "$(wget -q -O - https://git.io/debian-noroot-build-plank.sh)"

...(略)...
$ plank # (plank の動作確認を行う。)


デスクトップ環境への導入

本章では、前章で述べた手法でインストールした plankDebian noroot 環境上の各種デスクトップ環境の起動時において自動的に起動するように設定する手法について述べます。

まず、 "MATE への導入" の節において、 Linux MINT において採用されているデスクトップ環境である MATEplank を導入する手法について述べます。

次に、 "LXDE への導入" の節において、軽量なデスクトップ環境の1つである LXDEplank を導入する手法について述べます。

最後に、 "xfce4 への導入" の節において、 Debian noroot 環境におけるデフォルトのデスクトップ環境である xfce4plank を導入する手法について述べます。

なお、以降で述べる設定手法で示す各画像において表示されている plank については、 plank の動作確認時において plank の各種設定を修正したものであり、デフォルトの plank の表示とは若干異なることに留意して下さい。


MATE への導入

まず、 plank をデスクトップ環境 MATE において自動的に起動するように設定する手法について述べます。


  • まず最初に、以下の画像のようにして [設定] のメニューを開き、 [コントロールセンター] の項目を選択します。
    (Setting of MATE)

  • 次に、以下の画像のように [コントロールセンター] のパネルにおいて、 [自動起動するアプリ] のボタンをクリックします。
    (ControllCenterof MATE)

  • そして、以下の画像のように [自動起動するアプリの設定] のウィンドウにおいて、 [追加]のボタンをクリックします。
    (Auto start app of MATE)

  • その後、以下の画像のように [自動起動するプログラムの編集] のウィンドウにおいて、 plank の自動起動についての各項目を指定します。ここで、plank の実行ファイルの絶対パスは、必ず /usr/local/bin/plank とする必要があります。
    (Add Plank to Auto start app)

以上の設定が完了した後、 Debian noroot 環境を再起動して、以下の画像の通りに plank が自動的に起動する事を確認します。

(Plank in MATE)


LXDE への導入

次に、 plank を軽量なデスクトップ環境 LXDE において自動的に起動するように設定する手法について述べます。


  • まず最初に、以下の画像のようにして [設定] のメニューを開き、 [LXSession のデフォルトのアプリケーション] の項目を選択します。
    (LXSession default app of LXDE)

  • ここで、 [LXSession Configuration] のウィンドウが開くので [Autostart] の項目を選択します。

    (LXSession Configuration of LXDE)

  • すると、以下の画像のように Manual Autostart Application のリストの末尾に [追加] のボタンと、その右隣にてテキストエリアが表示されているので、ここでテキストエリア内に @plank と入力して [追加] ボタンを押します。
    (LXSession Configuration of LXDE)


  • [追加] ボタンを押した後、以下の画像のように Manual Autostart Application のリストの末尾に @plank が登録されていることを確認します。
    (LXSession Configuration of LXDE)

以上の設定が完了した後、 Debian noroot 環境を再起動して、 plank が自動的に起動する事を確認します。


fxce4 への導入

そして、plankDebian noroot 環境のデフォルトのデスクトップ環境である [fxce4 環境][FXCE]において自動的に起動するように設定する手法について述べます。


  • まず最初に、以下の画像のようにして [設定] のメニューを開き、 [セッションと起動] の項目を選択します。
    (Setting Manager of fxce4)

  • そして、以下の画像のように [セッションと起動] のウィンドウにおいて、[自動開始アプリケーション] の項目を選択します。
    (Session and Start of fxce4)

  • すると、以下の画像のように自動起動するアプリケーションの一覧が表示されます。ここで、未だ plank が一覧に登録されていない場合は [追加] ボタンを押し、登録されている場合は plank が登録されている行をクリックして [編集] ボタンを押します。
    (Session and Start of fxce4)

  • その後、以下の画像のように [アプリケーションの編集] のウィンドウにおいて、 plank の自動起動についての各項目を指定します。ここで、plank の実行ファイルの絶対パスは、必ず /usr/local/bin/plank とする必要があります。
    (Edit app of fxce4)

以上の設定が完了した後、 Debian noroot 環境を再起動して、 plank が自動的に起動する事を確認します。


plank に関する問題点

本章において、 plank について、現時点で判明してい問題点について述べます。

まず、何らかの理由で plank のプロセスに SIGKILL 等の SIGTERM でないシグナルが送られる事により異常終了した場合等において、再度 plank を起動した場合に以下のエラーメッセージを出力して plank が起動しない場合があります。

  $ plank

...(略)...
[ERROR 01:22:33.123456] [Utils:42] GSettingsSchema 'net.launchpad.plank' not found
Trace/breakpoint trap
$

この場合は以下のコマンドの実行により、 plank が起動しない問題を回避します。

  $ sudo glib-compile-schemas /usr/local/share/glib-2.0/schemas

上記のコマンドの実行によっても、問題が回避できない場合は、 plank のビルド及びインストールを再度行って下さい。


結論

本稿では、 "plank の導入" の章において、 Debian noroot 環境上で、 plank のソースコードから、実行ファイル等をビルドし、ディレクトリ /usr/local 以下にインストールする手法について示しました。

そして、 "デスクトップ環境への導入" の章において、 "plank の導入" の章でインストールした plank を、 Debian noroot 環境上で動作する各種デスクトップ環境の起動時に自動的に起動させるように設定を行う手法について示しました。

以上で示した手法によって Debian noroot 環境plank を導入することにより、 Debian noroot 環境の起動時に軽量な Dock ランチャーソフトウェアである plank が自動的に起動して、高頻度で使用するソフトウェアの起動が容易になることが示されました。

また、デスクトップ環境 MATE が導入された Debian noroot 環境において、 plank を左端の中央に配置する設定を行うことにより、 Unity ライクなデスクトップ環境の外観が実現でき、多くの PC 端末と同様の快適性を持つデスクトップ環境が実現できることが判りました。


謝辞

本稿の記述に当たって、 Android OS 端末上で非常に軽快な Debian 環境を実現することを可能にした Debian noroot 環境の開発者である pelya 氏に心より感謝致します。

なお、 plank 本体をソースコードから実行ファイル等へビルドし、インストールを行う手法に関しては、techbar 氏による "Installing Plank Dock on Debian Jessie | Techbear" を参考にしました。 techbar 氏に心より感謝致します。

そして最後に、 Debian noroot 環境Android OS 及び Debian 環境の全ての事に関わる全ての皆様に心より感謝致します。