|
昨日のカウンタ: 今日のカウンタ: |
C101PAでのLinux、もしくはLinuxもどき環境については以前にCroutonでの環境について書きました。やりたいことはemacs, ruby, python, gcc(というかllvm), gdb(もしくはlldb)とかです。ただ、Croutonは非公式環境なのでセキュリティ的に問題がありましたし、何よりChrome OSのDeveloper Modeを有効にしたままなのが面倒になってきました。
Developer Modeを有効にしていると電源を入れる度に「OS verfication is OFF」の画面が出て、ctrl-Dを押す必要があってちょっと面倒というか、Chromebookの利点である「使いたくなったときにさっと電源を入れてそのまま使える」という点をスポイルしてるなーと感じていました。かと言ってOSをシャットダウンしないままスリープのまま運用してると、普通のノートパソコンと同じで放っておくとバッテリーが切れてしまいます。(当り前) 一方、標準Linux環境はDeveloper Modeを有効にしないまま使えます。電源オフの段階から蓋を開けるだけで、ログイン画面になります。(いや、Chromebookとしては当り前なのですが)
C101PAなんてもう古くて比較的低スペックの端末は標準Linux環境の対象外だろうなーと勝手に思っていたのですが、ちゃんと対象になっていることを知ってさっそく有効にしてみました。ただ、ChromeOS標準状態のStableチャンネルには(時間の問題でしょうが)まだLinux環境が入っていないので、Devチャンネルに切り替える必要がありました。チャンネルの切り替え方については公式のヘルプページを参照して下さい。Devチャンネルは何だかんだで不安定なので、いずれStableチャンネルに戻したくなるでしょうが、DevチャンネルからStableチャンネルに戻す際にはストレージのデータを削除する必要がある点には要注意です。(StableチャンネルからDevチャンネルへの変更時にはデータ削除は不要でした。)
Devチャンネルに変更したらログインして、「設定」に「Linux」という項目が現れますのでこれをクリックしてしばらく待つとターミナルが起動します。(Linuxを有効化する前のスクリーンショットを撮っていなかったので、有効化後のものを載せています。有効化前だとちょっと違ったような気もしますが、そこはご容赦下さい。)
あとは普通のUbuntu環境なので、aptとか使って色々普通に入りました。ウィンドウシステムについては何も設定しませんでしたが、使えています。スクリーンショットはEmacsとFirefoxを起動させています。(裏ではChromeやらAndroidアプリのJota+も動いています。)
セキュリティの関係か、ホストOS(Chrome OS)のファイルシステムはLinuxからはマウントできないみたいなので、ファイルのやりとりはネットワーク経由で行うことになるのがちょっと面倒かも知れませんが、他の不自由さに比べれば些細な問題です。
年明けに買ったChromebook C101PAは妙に気に入って使ってます。色々書きたいこともあるのですが、とりあえず今回は列挙だけ。
Linux環境: chromebrewもcroutonもやめて、(ここに書いてませんでしたがtermuxもやめて、)標準Linux環境にしました。
フォント設定: システム書き換えをやめて、Font Changer with Google Web Fontsでのフォント変更に変えました。
おかげで色々と楽になりました。気が向いたら、何がどう楽になったのか改めて書きます。
MacbookじゃなくてC101PAを買うときにRetinaディスプレイじゃない点は妥協したと前に書きました。解像度がそれほど高くなくてもフォントがまともならそこそこ快適に使えることは経験上わかっていたからです。*1
という訳で気に入ったフォントをC101PAに入れるのは必須なのです。
が、これを実現するためには「root権限獲得」と「システム一部書き換え」が必要です。root権限獲得の方はDevloper Mode(開発者モード)になればいいだけですが、システム一部書き換えがちょっとだけ面倒。
Developer Modeの有効化についてはぐぐると色々なページが引っ掛るのでそちらを参考にすれば良いだけです。ただ、開発者モードの有効化時にはストレージの内容が消去されるので、やるのなら買ってすぐやった方がいいという事と、リカバリー用のSDカードやUSBメモリを用意した方がいい*2旨は覚えておいた方がいいでしょう。
システム一部書き換えを可能にするには本体の一部分解が必要です。Chromebookでは事故によるシステム破壊を防ぐためにか、Write-Protect-Screwというネジを外さないと書き換えができないようになっています。
Write-Protect-Screwを外すためにC101PAを分解します。裏側にあるネジを全部外します。ゴム足も外して(剥して)その下のネジも外しました。*3
キーボードをぱかっと外すときにはヒンジ側からぺきぺき外すとうまくいきました。*4
外したときの写真はこんな感じです。
ぱっと眺めてWrite-Protect-Screwっぽいのがあったので、これを外しておきました。
後は、またキーボードを元に戻して(Write-Protect-Screw以外の)全部のネジを戻して電源を入れます。開発者モードでログインし、シェルにて以下を実行します。
sudo /usr/share/vboot/bin/make_dev_ssd.sh --force --remove_rootfs_verification
次のように表示されればWrite-Protectの解除に成功です。これでシステムの書き換えが可能となりました。
後は基本的にはChromebookにフォントをインストールする方法に書いてある通りなのですが、ちょっと補足したいことおもあるので、あとはやった作業についてだけ記します。
フォントファイルとしてはTTFファイルを用意して、「/usr/share/fonts/」以下に配置しました。その後に「$ sudo fc-cache -fv」を実行します。*5 これで設定画面にて追加したフォントが選べるようになります。
このままでは残念ながらCrosh Windowの「プロファイル設定」に「font-family」にフォント名を入れても有効になりません。「/etc/fonts/local.conf」の「monospace」の欄にフォント名を入れたところCrosh Windowでも追加されたフォントが利用できるようになりました。*6
数年前からちっちゃいデバイスをT90Chi, GPD Win, GPD Pocket, POMERA DM-200などを買って何をやってたかとを、大きいところで言えば、
でした。UE C++本の執筆は無事に終えたので、当面は趣味プログラミングが主な目的になります。
その作業では、C++とRubyのコードを開いたままGDBでで動きを追うといった作業をしたりするのですが、GPD PocketでもDM-200でも画面が狭く感じるようになってしまいました。それを解決しようとしてMacbookの購入を検討したものの、C101PAを買ったのでした。安いし、期待通りのこともできそうなので日々持ち歩いています。
利用するシーンは通勤電車の中です。座れることが多いので、隣の人との余裕があればノートPCのように開いて作業しますし、余裕がなければタブレットモードで本やウェブを見たりします。この記事も部分的に地下鉄で書いています。
ついこの間まで「ChromebookってChromeしかないんでしょ? Linuxも入れられるらしいけどインストールがチョー面倒なんでしょ?」って思っていて、あんまり使ってみようと思っていませんでした。ところがウェブで調べてみると予想以上に色々なことができそうなので買って試すことにしました。特に「Androidアプリが動く」「chrootで普通のLinuxが動作する」の2点が決め手でした。
Androidアプリが動く:
これまで電車で座れた時に「iPadで読書する」ことが多かったのですが、同じことがタブレットモードのC101PAできるので荷物を減らすことができました。よく使うKindle、Google Playブックス、COCORO BOOKSはAndroidアプリ版が期待通りに動いています。まぁ画面の細かさはiPadに劣るので、そこは妥協点ですが。
読書以外にはEvernoteやTwitterとかもAndroidアプリで使ってます。
chrootで普通のLinuxが動作する:
標準ファームウェアのままでもデベロッパーモードになるだけでBashに降りられます。当初、それすらも知りませんでしたが、Chromebrewでemacsやgcc, ruby, python含めて色々使えるようになると知ってC101PAを買う決断をしました。
とは言え、結局Chromebrewの環境には微妙な使いにくさを感じてCroutonを使うことにしちゃいましたが。
Croutonは、chrootを使うことでChromeOSのカーネルは利用しつつもUbuntuのアプリケーションを利用できるようにする仕組みです。これの何が嬉しいって、他のChromeOS用Linux環境に比べて以下のような利点があることです:
当たり前ですが、gccもgdbもrubyもpythonもemacsも使えます。自分はCLIでしか使うつもりがないので、Crosh Windowsの中で「$ sudo enter-chroot」して使ってます。*2 ストレージが16GBしかないのでcroutonインストールすると厳しいかなとも思いましたが、自分の使い方なら今のところ大丈夫みたいです。