2022-05-08

ギークためのChromebook入門

エントリ目的

ライトコンピュータユーザ一切合切無視してギークギークのため情報共有するためのエントリ
感想はてブへ、質問トラバに投げれば誰かが答えるんじゃないか?(他力本願)

開発者は初手でデベロッパーモードにするべし

セキュリティ懸念があるけれど通常モードはセキュアを維持するため機能制限があるので制限開放のため開発者は初手でデベロッパーモードにするしかない。
用途中でデベロッパーモードにするとストレージファクトリリセットされるので注意。

ハードウェア選択

Webで完結するのであれば低性能機で問題ない

Webエンタメを楽しんだりWebツールを中心に利用するのであれば、5万円未満の低性能機で必要十分。
この用途では実質的タブレットPCのような運用へなりやすいのでフリップする2 in 1機やタブレット機がオススメ

ただし、Webベースゲームは楽しめるがAndroid Appレイヤーを用いたゲームは非常に厳しいので諦めたほうが良く、そこそこの負荷の掛かるAndroid Appツールも鈍足でストレスになるのでWeb版があるならそっちを使ったほうが良い。

ChromeOSハードウェアスペックで殴ると快適なのは変わらない

Core i7クラスCPUや16GB以上のワーキングメモリSSDストレージなど高性能機でChromeOSを使うとその分だけ快適になる。
Android Appレイヤーを用いたゲームも快適に動き、ウマ娘クラス3DCGAndroid Appゲームも高速に動く。
しかし、高性能機は空冷ファンを搭載していることが多く、高負荷を掛ければファンは唸るしウルサイ。

Android Appレイヤーを中心に運用したいと考えてるならばx86_64機は非効率

Google Play StoreにてAABパッケージがほぼ強制になったとは言え、開発段階でx86_64を意識しないと処理が非効率になりがちのようなので、Android Appレイヤーを中心に運用したいと思っているのであれば素直にARM機を探してきたほうが良い。

1つのIDEで開発をしクロスプラットフォーム対応することが流行っている昨今、自動でガベコレに頼っていてリソース管理経験に乏しい開発者マジで底辺しか漂流できないので覚えたほうが良いぞ。
それがWeb系のフロントエンドでもバックエンドでもそうだから底辺から脱したいのであれば覚えろ。

しっかりリソース管理できているChromebook向けビルドアーキテクチャによらずサクサクなのでクロスプラットフォームビルドマジで開発チームの腕が如実に反映される。

ちなみにSnapdragon 8 Gen1なChromebook公式発表は今のとこ無いのでAndroid Appレイヤーブンブン回すのは難しい。
メーカーはもうちょっと頑張れ。

Android Appレイヤー

macOSiOSレイヤーよりAndroid App数は多いし操作性は良い

Chromebookの大半はタッチスクリーンディスプレイを搭載しているし、Android StudioでAndroidManifest.xmlを何も考えずに生成すると勝手にChromeOSサポートするので結果的にChromeOSで動くAndroid App数が多くなるという現象が起きている。

Android Studioが雑なのかXcodeが厳密なのかは意見が分かれると思うけど、タッチパッドでiOS App操作というセンスがクソなのは万人が納得するところだと思う。

GPS事実上ほぼ機能しない

ARM系のSoCであればワンチャンいける可能性はあるものの、市場に出ているChromebookの大半はx86_64でGPSモジュールを積んでいないのでGPSを使おうと思うとBluetoothあたりでGPSレシーバ接続するしか無い。
当然A-GPSは使えないので精度がそこまでではないから期待し過ぎに注意。

USB over MIDIが使える

Android AppレイヤーではUSB over MIDIが使えるのでDTMあたりに活用することは可能ものの、iOS比較してレイテンシがそこそこ大きくDTM活用しようと思うユーザは不満を持ってしまうかも知れない(ハードにもよるけど0.5msecくらいズレる)。

そもそも既存Android AppなDAWVSTやLV2などの外部プラグイン対応していないのでAUプラグインが使えるiOSのほうがDTMへ向くんじゃないだろうか?
ただし、DAW単体でDTMを完結するとレイテンシほとんど気にならなくなるので絶対Android AppでDTM不可能というわけでもない。

Linuxレイヤー側でDTMをするのはレイテンシが大きすぎるしJackも上手く動作しないのでオススメできない。

ChromeOS向けマルチタスク対応していないとAndroid Appはスリープする

ChromeOS向けマルチタスク対応していないとAndroid Appはフロントエンド(プライマリ)からフォーカスが外れてバックエンドへ行くとスリープする。
Android Appがスリープされることを考慮しておらず例外処理がされていないとAndroid Appはそのまま落ちる。

まぁAndroid Appがスリープされることを考慮しておらず例外処理がされていないとAndroid Appはそのまま落ちるっていう部分はAndroidスマホで実行しても同じなので正直に言ってスリープされることを考慮しないデバックってAndroid App開発者は何やってんの?とは思う。

ICT教育日本中学生がChromeOSを使うようになっているので、ゲームであれツールであれ何であれChromeOS向けのマルチタスク考慮しておくとスリープしたり落ちたりするAndroid Appよりも支持されるのは間違いないのではないか

Linuxレイヤー

実体LXC/LXD

LXC/LXDなのでDockerに慣れ親しんでる人にはわかりやすいかも?

デフォルトイメージはChromeOS向けにカスタムされたDebian
別のLinuxディストリビューションへ置き換えることも出来るが一部機能制限される可能性がある。

IMLinuxレイヤー側で用意する必要がある

ChromeOS動作するGoogle日本語入力とは別にLinuxレイヤー側で日本語入力を用意する必要がある。
選択できるIMは幅広いのでMozcだろうがSKKだろうが漢直だろうが何でもイケる。
ただ特殊ものを選ぶとChromeOS側と齟齬が発生するのでfcitx-mozcあたりが無難っちゃ無難

USB Pass Throughが使えない

ChromeOSマウントされたUSB機器、というかシリアル接続された機器Linuxレイヤーから認識しない。
見掛け上で接続されているハードのすべてはソフト仮想接続されているだけなので、一部経路から上手く認識しなかったりする。

まりLinuxレイヤーではUSB Pass Throughが使えないが、Android AppレイヤーではUSB Pass Throughが使えるということ。
Linuxレイヤーゲームやろうと思ってもUSBゲームパッド動かないのでマウスキーボードで完結できるFPSみたいなゲームしか上手くプレイできないぞ。

それぞれが独立しているLinuxレイヤーAndroid Appレイヤー相互認識しない

言うなればAndroid Appレイヤースクリーンキャプチャ系のアプリによってLinuxレイヤーで動くGUIアプリキャプチャしようと思ってもキャプチャできず撮像は暗転している。

ChromeOSホストLinuxレイヤーAndroid Appレイヤーゲストなのでそりゃそうなんだけど気付かないとハマる。

LinuxレイヤーDockerを構築するのはやめておけ

LXC/LXD on LXC/LXDになるので面倒くさくなること請け合いだ。
どうしても仮想環境Chromebookに欲しいのであればKVMとかのほうが安定している。
ただしゲストOS上へ仮想環境を構築しているという前提は認識しておくべき。
まりゲストOS制限KVMも引き継ぐ。

ただしこれはDockerが導入できないという意味ではない。
自分解決する気概があるのならばDockerは便利に使える。

Web開発であれば必要十分

CLIツール系は普通に動くのでWeb開発であれば何も意識しないで普通にできる。
ただ、PSD形式みたいなもんは扱いにくいのでWebデザイナーは悲しい思いをするかも知れない。

GIMPInkscapeなども動くけれどデザイナーAdobe使いたいんじゃなかろうか?

Chrome OS向けAndroid Studioが存在する

Android App向けIDEAndroid StudioはChromeOSけが存在するのでAndorid App開発が可能
しかデベロッパーモードでなければエミュレータや実機デバック制限が発生するので注意。

3DCGゲームを作りたいのであればGodot

UnityやUEを使いたいところだけれど、Linux版のUnityやUEは不安定なのでゲーム向けIDEが欲しいのであればGodotがオススメだ。
ライセンスMITなので商用利用だってイケる。

3Dのほか2Dゲームもいける上に、最近IDEよろしくマウスポチポチUIを作れるし、軽量動作物理演算日本語ドキュメントまで揃っているので中高生ガンガン使える素晴らしいIDEだ。

総評

浅い部分は気軽だが深い部分は非常に難解、それがChromebook

浅い部分を触っているうちはYoutubeを観たり、プリインストールされているGoogle Play StoreからAndoird Appをインストールして使うみたいな気軽な運用ができる。
言ってしまえばライトユーザ視点ではノートパソコンの形をしたAndorid機がChromebookだと言える。

しかし一度Linuxレイヤーへ手を出すとUbuntuという何でもできるようになったLinuxディストリビューションが存在する中で、昔懐かしい複雑怪奇Linuxディストリビューションを体験することとなってしまう。
ただ、Chromebookで何でもやろうとするからそうなるだけで、APTからIDEインストールしてちょっとした開発をするなんて使い方であるならば業務利用でも意外となんとかなる・・・というか何も意識しないで使える。

そもそもHTTP使えるなら今どきの開発は何とかなるので、Chromebookへ対してギークがゴチャゴチャ言うのはほぼ間違いなく不満を言いつつDIYを楽しんでる。
Ubuhtuならばアレができるコレができると言うならば最初からUbuntu使えよって話。

ギークとは不便を見つけてゴチャゴチャ言う、そういう鳴き声の動物なのだ

追記

少なくともGoogleエコシステムとしてのChromeOSは非常に完成度が高くなりつつある。
Googleアシスタントは元よりAndoridスマホとの連携もよく、ハードウェアへもそこそこの投資ができるのであれば多くのChromebookではUSIペンが使えるし、USBポートUSB-Cだ。
そこそこのChromebookは多くの場合HiDPIIPS液晶でありグレアなのは気に食わないが美しい。
デベロッパーモードにするとセキュアさは下がるが普通に使えばローリングリリースアップデート無償で得られ、Gentoo LinuxベースなChromeOS潜在的マルウェア絶対数がそもそもWindowsMacよりも少ないという利点がある。
Bluetoothイヤホンヘッドフォンヘッドセットも使えるし、NestスピーカーNest HubNest Camを持っているのであればGoogleアシスタントからコントロールが容易なのは想像が付くだろう。Android AppレイヤーGoogleホームマネジメントアプリであるGoogle Homeも動く。
大胆にも憎きCapsLockキーデフォルトで殺し、Everything Buttonキーとして独自キーバインドを与えたのも面白い
もちろんこれは選択するハードによるもの指紋認証ロックを解除することまでできる。

Googleエコシステムへ浸かっていてGoogle個人情報を捧げられるのであればChromebookはアリな選択肢だと断言できる。
敢えて欠点を挙げるのならば、たった一言欠点表現することが可能だ。


Chromebookじゃなくても別に良くね?」


そう、ギークLinuxを使いたいのであれば別にChromebookじゃなくても良い。
というかギーク別にLinuxじゃなくともHaikuであろうが超漢字Ⅴだろうが喜ぶ生き物だ。OS別になんだって良い。
このエントリは単にChromebookという新しい沼ギークの皆さんをご案内しているに過ぎないのだ。

  • 書いてあることの半分以上わからんw 本当にこんなものを今の小学生は使っているのか? あ〜でも普通に使う分なら問題ないって感じ?

    • 書いてあることはすべて分かるけど、 大病したこともあって興味を完全に失いつつある ここに書いてあることは分からなくても、 ネットサーフィン(死後)ができれば問題ないよ

  • こりゃ良い記事だ

  • こうして読んでみるとWindowsじゃダメなんか?って思っちゃうよね

    • そのWindowsもこういう人たちが居たから今のシェアが実現できてるんやで? こういう人たちがLinux側についてるので数十年後はどうなるかわからんよね

      • Windowsは30年前からシェア80%っすよ

      • その言説はUbuntuが出てきたあたりで見飽きたんだよね。 今度こそ真実になるといいな。

        • そう言いつつもAndroidやChromeOSみたいなもんも出てきてるんで、どうなるかなんてマジで誰もわからんよ

      • でもLinuxより使ってる人多いiOSにはそういう人見当たらんやで

      • 1億回くらい同じこと書いてるけどワイがデストリにいた時にカーネルメンテナーに『優れたOSは?』と尋ねて 満場一致でWindowsだったやで。某果物にいた時もフツーにOfficeが使われてたし...

        • すまんな、お前の書き込み99999999回見逃してたやで

          • 仕方ないにゃあ 2021-07-07 普通にLinuxベースの組込み機器誰でも使ってると思うし 普通にLinuxベースのシステム誰でも使ってると思う デスクトップはマゾなことしないでWindows使え Linux...

            • あと99999997回

            • 今書いたのか昔書いたのか判別しようがないやで

              • 普通にLinuxベースの組込み機器誰でも使ってると思うし 普通にLinuxベースのシステム誰でも使ってると思う デスクトップはマゾなことしないでWindows使え Linuxカーネルメンテナーが『優れ...

              • MacもWindowsも別に無しでいける そもそもアプリって概念がない方々にserviceって概念とか持っていただくの無理だしパッケージのインストールなんてもっと無理 もっといえば会社のデスク...

                • 最近の小学生は普通にアプリという概念くらいは理解しているのでは? 会社のデスクトップPCがLinuxに置き換わったりしない これは分かる。

                  • どうだろうか ボタンが押したら立ち上がるくらい理解じゃないか?

        • じゃあ1億回を列挙してみて

  • 1つのIDEで開発をしクロスプラットフォーム対応することが流行っている昨今、自動でガベコレに頼っていてリソース管理経験に乏しい開発者はマジで底辺にしか漂流できないので覚え...

    • 今のマシンはハードウェアリソースが潤沢すぎてリソース管理しなきゃいけない状況へ晒されない現代開発あるある

    • 組み込みやろなあ

  • プログラミングとDTMは全く別領域なのによくわかるな よくよく見たらCGまで言及してるっぽいから中の人はゲームデベロッパーのプログラマーか?

  • Chromebookの記事、ライトユーザー向け記事ばかりでどんなもんだか迷ってたところに朗報 UnityやUEを使いたいところだけれど、Linux版のUnityやUEは不安定なのでゲーム向けIDEが欲しいので...

  • Android StudioでAndroidManifest.xmlを何も考えずに生成すると勝手にChromeOSをサポートするので結果的にChromeOSで動くAndroid App数が多くなるという現象が起きている。 質の悪いアプリ増えそう

    • 質の良いiOSアプリもMacのタッチパッドで操作させた瞬間にクソ化するって書いてあるじゃん

  • ChromeOSへ対応することが無視できないレベルで売上増加に繋がるならやるんだけどなぁ

  • ここに書かれてる時点でもう闇の勢力なことが確定 Chromebookと仕事で永久に関わることはないだろう

  • 暮らしカテゴリになんでChromebookの濃いネタがあるんだよw 普通に有用な情報だ

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん