2021年9月29日追記
最新のpi-topOS SiriusをPi-Top1で試しました。
多少モッサリ動きますが良く出来ていると思います。
無駄なDashboardも無くて、デスクトップマネージャのデザインが変更されただけな感じです。
逆に、普通のRaspbianを入れて、aptのリポジトリから必要なモジュールだけ引っ張ってくる方法では、
インストールするモジュールが変更されていて、まだ上手くいっていません(>_<
2020年4月23日追記
本ページにあるgpgキーを使う方法だと,キーの有効期限が2020-04-17までなので,
期限以降にsudo apt update
するとエラーになってしまいます.
$ wget http://apt.pi-top.com/apt.pi-top.com.gpg.key
$ sudo apt-key add apt.pi-top.com.gpg.key
上のコマンドでキーの取得/追加を行っても変化がありません...
解決法を探し中です.
pi-top OSは「Polaris」から「Sirius」に代わっているので,その辺りの影響だと思われます.
#はじめに
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カードに書き込んでおきましょう。
公式RaspbianのSDカードでRaspberry Piを起動した後は、
pi-topOSのSDカードはカードリーダーに挿してRaspberry PiのUSBポートに挿しておきます。
#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でリポジトリのリストを更新します。
upgradeはしません。というのは、初回起動時のRaspbianは更新情報がたくさんあり、
何百もの更新に時間がかかるからです。
$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の初期状態と同じになるわけではありません。