2016年2月9日火曜日

JessieにアップデートされたPi-Top OSを試してみた

はじめに

Raspberry PiをノートPC化するPi-Topについては、これまで以下の3つのエントリで紹介してきました。
このPi-Topには、Raspbianにアプリケーションをいくつか追加したPi-Top OSというOSがバンドルされており、Pi-Top OSを用いることで
  • バッテリーの残量を知ることができる、
  • ディスプレイの輝度やボリュームなどをキーボードで変更できる
という恩恵を得られます。しかしその半面、
  • ログイン時にPi-Topの公式サイトで登録したIDをネットワーク越しに入力しなければならない
という欠点がありました。つまり、インターネットにアクセスできない環境ではログインすらできなかったわけです。

上記の3つめのエントリ「Raspberry PiをノートPC化するPi-Topにユーザーpiでログインしてみた」ではネットワークログインを無効化する方法を解説しており、個人的にはそこまで実行して初めてPi-Topを使う気になったのでした。

今回、Pi-Topチームから、Pi-Top OSのアップデートのお知らせが届きました。これまでWheezyベースだったのに対し、今回からJessieベースになったとのことで、早速試してみました。下の図は、インストール後、前回同様「Raspbian風に使う」設定を施した後の状態です。以下で解説していきます。


インストール

インストールは、これまでのOSのアップデートではなく、新しいmicroSDカードに新規にインストールする必要があります。8GBのmicroSDカードが必要ですが、運が悪いと16GBのものが必要かもしれません。

まず、Pi-Topチームからのメールに従うと、pi-topOS.zipという約2.5GBのファイルがダウンロードされます(リンクは貼らないでおきます)。

このzipファイルを解凍すると、8GBのpi-topOS-jessie.imgが現れます。すなわち、ディスクに2.5GB+8GBの空きがないとzipファイルの展開が行えませんので注意が必要です。このイメージは、8GBのmicroSDカードのイメージを吸い出しただけですね。

あとはこのイメージを新しいmicroSDカードに書き込みます。Windowsの場合、個人的にはWin32 Disk Imagerというアプリケーションを使っています。Raspberry Pi公式ページにWin32 Disk Imagerを用いたインストール法の解説があります。microSDカードを指すドライブの指定を間違うとPCの環境を破壊してしまうので注意しましょう。

8GBを書き込むのでそれなりに時間がかかります。この時、無事書き込みが完了すれば問題ないのですが、microSDカードの個体差が原因でサイズが足りずにエラーが出る場合があるかもしれません。そういった場合、16GBのmicroSDカードならば書き込みは成功するでしょう。

起動、ログイン、そしてRaspbian風に使う設定

(2017年2月リリースのpi-topOS Polarisの場合)

イメージ書き込みが完了したら、microSDカードをPi-TopのRaspberry Piにさし、電源を投入します。これまで通り、Pi-Top購入時と同様のスプラッシュスクリーン動画が見られます。 しかしこのリリースでは、起動時にpi-topサイトでのログインが求められません。これによりかなり使いやすくなっています。

しかし、それなりの時間待たされるスプラッシュスクリーンは相変わらずありますし、起動されるパネルも個人的には不要なものです。これらを無効にしてみます。 まずLXTerminalを起動し、下記のコマンドを実行します。
$ sudo leafpad .config/lxsession/LXDE-pi/autostart
.config/lxsession/LXDE-pi/autostartというファイルをテキストエディタで編集します(使うエディタはお好みで)。下記のような内容が見られるはずです。
@pt-os-dashboard
@pt-display
@lxpanel --profile LXDE-pi
@pcmanfm --desktop --profile LXDE-pi
@xscreensaver -no-splash
@/opt/pt-hub-controller/restartXscreensaver
@screen-daemon
@point-rpi
@pt-speaker
ここで、電源投入時に起動されるアプリケーションを起動しているのですが、いくつかを無効にしてみましょう。下記の通りに編集します。
#@pt-os-dashboard
#@pt-display
@lxpanel --profile LXDE-pi
@pcmanfm --desktop --profile LXDE-pi
#@xscreensaver -no-splash
#@/opt/pt-hub-controller/restartXscreensaver
@xset s on s 60
@screen-daemon
@point-rpi
@pt-speaker
1、2、5、6行目の先頭に半角で「#」を記述し、6行目の次の行に「@xset s on s 60」を記述しています。 これは「60秒で画面をブランクにする」というスクリーンセーバーの機能をしています。

 次に、スプラッシュスクリーン動画を無効にします。ターミナル上で下記のコマンドを実行しましょう。次回起動時よりスプラッシュスクリーン動画が無効となります。
$ sudo systemctl disable pt-splashscreen.service

pi-topOS のこのバージョンには日本語フォントが含まれますが、見栄えがあまり良くありませんので、ターミナルを起動して下記のようにフォントを追加すると良いでしょう。 インストール後は再起動するとフォントが変わります。
$ sudo apt-get update
$ sudo apt-get install fonts-vlgothic

あとは、
  • ホスト名:pi-top(avahiを使ってpi-top.localでアクセスできる)
  • ユーザー名:pi
  • デフォルトパスワード:pi-top
  • バッテリー残量を知るためのコマンド:pt-battery
であることを知っておくと良いでしょう。

さらに、LXTerminalが最大化されて表示されるのを無効にしたり、デスクトップをRaspbian風にする設定は「Raspberry PiをノートPC化するPi-Topにユーザーpiでログインしてみた」を参考にしてください。

なお、このバージョンのpi-topOSのカーネルは「4.4.38-v7+」でした。2017/2/27にリリースされたNOOBS 2.2.0(4.4.48-v7+)より少し前のものですね。

起動、ログイン、そしてRaspbian風に使う設定

(2016年2月リリースのものの場合)

ここから先は2016年2月リリースの古いバージョンの話です。 イメージ書き込みが完了したら、microSDカードをPi-TopのRaspberry Piにさし、電源を投入します。Pi-Top購入時と同様のスプラッシュスクリーン動画→ログイン画面が見られるはずです。

そのままPi-Top OSのデフォルト状態で使うならばこれで作業は終わりです。

個人的にはPi-Top OSを通常のRaspbianのように使いたかったので、以下のように作業しました。

まず、ログイン画面でネットワークに接続し、Pi-TopのIDで一回だけログインします。そして、LXTerminalを起動し、下記のコマンドを実行します。
$ sudo leafpad /etc/xdg/lxsession/LXDE-pi/autostart
/etc/xdg/lxsession/LXDE-pi/autostartというファイルを管理者権限のテキストエディタで編集します(使うエディタはお好みで)。下記のような内容が見られるはずです。
@lxpanel --profile LXDE-pi
@pcmanfm --desktop --profile LXDE-pi
@xscreensaver -no-splash
@omxplayer /opt/pt-splashscreen/splash.mp4
@sudo pt-hub-controller > /dev/null &
@pt-dashboard
このうち、4行目と6行目の先頭に「#」を付加して無効化します。すなわち、下記の通りです。
@lxpanel --profile LXDE-pi
@pcmanfm --desktop --profile LXDE-pi
@xscreensaver -no-splash
#@omxplayer /opt/pt-splashscreen/splash.mp4
@sudo pt-hub-controller > /dev/null &
#@pt-dashboard
そして再起動すれば、ログインIDを求められることなく、デスクトップが開きます。通常のRaspbianと同様の挙動です。

あとは「Raspberry PiをノートPC化するPi-Topにユーザーpiでログインしてみた」と同様にRaspbian風にする設定をしても良いでしょう。

なお、新しいPi-Top OSはJessieベースですので、新しい設定アプリケーション(Menu→Preferences→Raspberry Pi Configuration)が使えます。

ただし、pi-topOSのこのバージョンには日本語フォントが含まれていませんので、そのまま日本語化するとメニュー等の文字が全て文字化けします。そのため、例えば下記のコマンドで日本語フォントをインストールしてから日本語化の設定を行うと良いでしょう。
$ sudo apt-get update
$ sudo apt-get install fonts-vlgothic
あともう一点、Wheezy版にはバッテリーの残量を知るためのコマンド「battery」があったのですが、Jessie版にはなくなっています。これはI2Cアクセスしてバッテリー残量を知るためのシェルスクリプトでした。移植は簡単で、Wheezy版の/usr/local/bin/batteryをコピーしてきてJessie版の同じ場所に配置すればそのまま使えます。

カーネルのバージョンは4.1.17-v7+でした。2月3日にリリースされた新しいRaspbianと同じですね。

あと、JessieではChromiumブラウザがインストールできなくなったのですが、上の図にあるようにChromium 45.0.2454.85というバージョンがプリインストールされています。どうも「Guide: Chromium 45 on Raspbian Jessie」というページで紹介されている方法でインストールしたもののようですね。

終わりに

Pi-Top OS自体は、あまり高く評価できるものではないと個人的には思ってますが、腐れ縁という感じで使い続けています。


「カラー図解 最新 Raspberry Piで学ぶ電子工作」、「実例で学ぶRaspberry Pi電子工作」を執筆しました。