RaspberryPi
raspbian
Pi-top

Pi-topで普通のRaspbianを使う


はじめに

Raspberry Piをラップトップ型PCにしてくれるキット「pi-top」。

公式のRaspbianを教育用にカスタマイズした「pi-topOS」が使われているのですが、

このOSが実にイケてない。


  • 起動時に全画面スプラッシュを出すが、既にOSは起動完了しているのに無駄に時間だけ食っている。

  • Dashboardという、アプリのランチャーが最初に起動する。日本語対応せず。

  • CEED Universeという、教育用(だがあまり面白くない)ゲームが入っている。日本語対応せず。

  • 通常のデスクトップ画面には、Dashboardから[Desktop]をクリックして移動。

  • ターミナルが小さいウィンドウで開かず、必ず最大化で起動する。邪魔。

とまあ、イラつく要素がたくさんあります。

しかし、pi-topOSのメリットも重要。


  • シャットダウンすると自動で電源を切ってくれる。(手動でも電源ボタン長押しすれば切れる)

  • 音量・輝度・ファイルマネージャ・端末の起動キーが使える。(CEEDにはキーボードが無いが)

  • 3D slashというボクセルのCGエディタは子供用にちょっと良さげ。

というわけで、

「pi-topOSは使いたくないけど、電源や特殊キーのために改変して使う」(本ページ末尾にその方法も記載)

という状況を打開し、

「公式Raspbianをpi-topハードに適応させて快適に使う」

としたいので、備忘録も兼ねて本ページを作りました。


概要

作業内容は、

「公式Raspbianにpi-topOSのaptリポジトリを追加し、必要なソフトウェアをインストールする」

となります。

Linuxのシステム管理では比較的簡単な部類ではないかと思われます。


ハードウェア構成

おそらく全てのpi-topシリーズで動作します。

動作確認済み機種

- pi-top V1

- pi-top CEED


準備するもの


  • 公式Raspbian stretchの入ったマイクロSDカード ダウンロード 2018-06-27-raspbian-stretch.zip

     今後継続して使用していくものなので、16GBなどのメイン用のカードを使います。

     既に使用中のRaspbianに対して操作しても構わないのですが、新しいイメージで作業を実施したほうが上手くいく気がします。


  • pi-top公式OSの入ったマイクロSDカード ダウンロード pi-topOS-2018-07-09.zip

     リポジトリ情報を取り出すためだけに一時的に使用します。4GB程度のカードで十分です。

     作業が終わったらフォーマットしてかまいません。


  • USB接続のマイクロSDカードリーダー


  • Win32DiskImagerやEtcherなどのイメージ書き込みソフト

     USBカードリーダーとイメージ書き込みソフトを使って、

     公式Raspbianとpi-topOSのイメージをマイクロSDカードに書き込んでおきましょう。



aptのリポジトリ・暗号鍵のコピー

debian系のパッケージマネージャ "apt"。

aptのリポジトリ情報やGPG暗号鍵の置き場所は/etc/apt/以下です。


コピー元 pi-topOSのフォルダ構成

/etc/apt/

/etc/apt/trusted.gpg <-この暗号鍵ファイルをRaspbianにコピー

/etc/apt/apt.conf.d/

/etc/apt/preferences.d/

/etc/apt/sources.list.d/

/etc/apt/trusted.gpg.d/

/etc/apt/sources.list.d/pi-top.list <- このソースリストをRaspbianにコピー


コピー先 公式Raspbianのフォルダ構成

/etc/apt/

/etc/apt/trusted.gpg  <-間違えてここに上書きしないよう注意!

/etc/apt/apt.conf.d/

/etc/apt/preferences.d/

/etc/apt/trusted.gpg.d/ <-この中にtrusted.gpgをコピー

/etc/apt/sources.list.d/ <- この中にpi-top.listをコピー

"pi-top.list"と"trusted.gpg”の2つのファイルをフォルダにpi-topOSに入っていたファイルをコピーし、apt-get updateしてリストを更新すれば、pi-top関連のソフトがインストールできるようになります。

(今後のためにも、この2ファイルをUSBメモリなどに保存しておくと良いかもしれません)

/etc/以下へのコピーなので、当然ですがsudo権限が必要です。

例: pi-topOSのSDカードをUSBカードリーダーでRaspberry Piに挿し、/media/piにマウントされた場合

$sudo cp /media/pi/rootfs/etc/apt/sources.list.d/pi-top.list /etc/apt/sources.list.d/

$sudo cp /media/pi/rootfs/etc/apt/trusted.gpg /etc/apt/trusted.gpg.d/


インストール手順


aptの作業

まずはapt updateでリポジトリのリストを更新します。

$sudo apt update

次に、pi-topのシャットダウンやキーボードショートカットを司るソフトをインストールします。

$sudo apt install pt-hub


SPI,I2Cの有効化

raspi-config、あるいはスタートメニューから[設定]-[Raspberry Piの設定]を使って、インターフェイスの「SPI」「I2C」を有効にしておきます。

pt-hubのインストールで自動的にI2Cは有効になるのですが、SPIは手動で有効にしないといけません。


aptの作業2

イメージを焼いて起動したばかりの新品Raspbianの場合、全くアップデートしていないので多くのアプリケーションが古くなっています。

apt upgradeしないとpt-hubも正常に動作しませんでした。

※注意:

 upgradeの前に、不要なアプリケーションはアンイストールしておいた方が良いかもしれません。

 特にMathematica(wolfram-engine)やLibreOfficeなどはupgradeに多くの時間がかかります。

 これらをアンインストールすると1GB近く容量が空きます。

 以下は筆者がいつも使用しているコマンド例です。scratchやマイクラなども削除しています。

$sudo apt autoremove -y     scratch nuscratch scratch2 \

sonic-pi \
wolfram-engine \
bluej \
greenfoot \
python3-thonny \
dillo \
netsurf-common netsurf-gtk \
epiphany-browser epiphany-browser-data \
minecraft-pi python-picraft \
claws-mail \
libreoffice libreoffice-*

不要アプリケーションを削除して軽くなったところで、最終的なupgradeを実施します。

$sudo apt upgrade

全ての作業が終わったら再起動します。


動作確認

スタートメニューから[shutdown]をクリックし、shutdownを選択してシャットダウンします。

あるいはターミナルから以下を打ち込んでシャットダウンします。

$sudo shutdown -h now

うまくpt-hubが効いていれば、シャットダウン後に電源LEDも消灯して電源が切れるはずです。

設定がうまくいっていないとkernelパニックになって止まってしまうことが多々あります。

ボリュームや輝度のキーも押して、正常に動作するか確認しておきましょう。

コツとしては、「pt-hubをインストールしてからapt upgrade」だと思われます。

先にapt upgradeをしてしまうと動作しないことが多いです。


今後の展開

pi-topOS側の設定やバージョンが変わる都度、このページも更新しないといけませんね。


余談:pi-topOSをRaspbian風に戻す方法

上記作業とは逆に、pi-topOSから不要アプリケーションを削除して公式Raspbianに近づける方法です。

(あくまで近づけるだけ、ですが)

pi-topOSのDesktop、スタートメニューにある[設定]-[Add/Remove Software]を使って

pt-splashscreen,pt-os-dashboard,ceed-universe

をremoveすれば問題の大半は解決できます。(pi-topのpiユーザ初期パスワードはpi-top)

ターミナルの最大化問題は、

/home/pi/.config/openbox/lxde-pt-rc.xmlの末尾に書かれたmaximizedタグの中身をyesからnoに書き換えます。

とはいえ、デザインが色々といじられているので、完全にRaspbianの初期状態と同じになるわけではありません。