IntelliJ
ChromeOS
Chromebook
chromebrew
oyainput

ChromeOSは、開発マシン用OSとしてかなり使える(親指シフトも使える)。


ChromeOSの私的使いどころを3行で。


  • 開発者(DEV)モードでのchromebrewとcrostini(≒仮想環境Debian)を併用する(と捗る)

  • crostini側では、IntelliJとGITを中心に使う(RAM割当3GB弱)

  • ChromeOS側でブラウザ、エディタ、音楽プレイヤー等を用いる

なお、Androidstudioも入れてあるがまだ、未使用。もちろん、Androidアプリは普通に使えるし、ChromebookとAndroid実機との連携機能もある模様。ChromebookのAndroidstudioがグーグルによって公式サポートされた頃に、FLUTTERでの開発に使った試用記を書くかも。

あと、SpacemacsやVimも普通に動いている。

なお、Chromebookで開発する際の基礎知識は以下で得ておこう。

cf.ChromeOSを開発マシンにするために知っておく基本的な3つのこと


親指シフト

私含め一部の人には、親指シフトが普通に使えるかどうかは死活問題であろうため、以下に書いておく。キー配列さえ問題なければ、Chromebookは開発者モードを使えば、普通に親指シフトを使える。ただし、少し課題あり。Chromebook安定版モードでもバイナリ配布が行われれば、使えるものと考えられる。

cf.購入したChromebookは「Acer Chromebook 15 (CB3-532)」


ChromeOSの使いどころ


IntelliJでの開発

入力等は普通。業務使いする場合には、RAM容量がボトルネックとなることが予想されるので、本来はRAM8GB以上を積んでいるChromebookを選ぶべきか(ただし、現状、あまり安いChromebook 8GB機はなさそう)。私の場合、JVM設定(SCALAなのでSBT_OPTS)を変更し、コンパイルはコマンドプロンプト側で行うことでなんとかなっている。

CPUスペックも当然に重要だが、コンパイルが走っている間もChromeOS側は、残りのRAM(私の環境では、割当1GB強)の範囲内で普通に動くので、過度な期待をしなければなんとかなる(この記事も諸々コンパイル中に書いている)。あと、Ctrl+Bでのソースコード検索が少しもたつくことはあるが、許容範囲。


日本語入力

ChromeOSの日本語入力環境に、crostini(≒仮想環境Debian)側でビルドしたoyainputを噛ませて、親指シフトで入力している。グーグル日本語入力+親指シフトという環境は、私の場合、MacやWindowsと同一のものとなるため、不便がない。

ディフォルトの設定で普通に使えているが、立ち上げた時に英小文字(abc)の直接入力への切り替えができなくて少し困っている(私がChromebookの入力環境を分かっていいないだけかもしれないが)。また、Ctrl+Cでの終了も効かなくなるため、以下のような設定を.bashrcに追記してなんとかすることにした(代わりに、PKでプロセスを殺し終了させる)。これは、シフトキーで英大文字は直接入力できることを利用したもの。

# Put your fun stuff here.

alias CD='cd /media/fuse/crostini_機器ごとに一意の値_termina_penguin'
alias PK='sudo pkill oyainput'
alias oya='nohup sudo /usr/local/home/bin/oyainput chronos &'

作者の方がoyainputをオープンソースにしてくださっているので、終了方法をChromebook向けにカスタマイズすべきなのかもしれない。

なお、CDでcrostini側のホームディレクトリに移れるようにしておくと、時々役に立つ。


終わりに

Chromebookに関する情報は、Webで割合と豊富に見つかるので助かる。ただし、開発者モード(DEV)に関しては、直近の変更がかなりある模様なので、2ヶ月以内の情報を漁るのが良いと思う。

参考にしたサイトの例。

https://www.aboutchromebooks.com

私はダウンロードしたもろもろなどをUSBに保存することにして本体のストレージ容量不足に陥らないようにしているのだが、以下の情報を見るに、これを簡単にできたのは最近の開発者モードでサポートされたばかりの機能のためなのかもしれない(そのうち安定版にも入るはず)。

https://www.aboutchromebooks.com/news/chrome-os-72-dev-channel-usb-sd-card-support-project-crostini-chromebooks-android-9-pie/

画面キャプチャも簡単にできる(CRTL+F5キー相当)ので、保存先のキャプチャを貼っておく。

image.png

☆上の黒いところは、crostini側のIntelliJの一部。問題なくキャプチャできることを確認したまで。


軽く懺悔

3万円ほどでChromebookを衝動買いして2日目。昨日、こんな記事を書いてしまった。

https://qiita.com/Nimimal/items/3750ff6473b9a06e8dcc

初日にChromeOSは開発用途では厳しいと思いxubuntuを入れてみたりしたが、そちらはそちらで設定が面倒そうなので、ChromeOSに戻ってきて開発者モードでcrostiniを併用し始めたところそこそこ快適になったので、格安ChromebookをDISったことを軽く懺悔しておく。少なくとも外出先でソースコードを軽くいじくってコンパイルしつつ、メールしてSlackして株価をチェックして、といった用途には3万円Chromebook(画面はFULL HD)は使い物になるね。多少詰まるところがあっても、粘って使ってみるものだ。