ChromeOSFlexを触ってみた

こんにちは
ALJの江口と申します。

ChromeOSFlexにどんな印象をお持ちでしょうか。
私は、Androidタブレットに近いイメージがあり、ノート型の機械にはあまり必要そうとは思えませんでした。
ChromeOSはGoogleの製品なので、Chromeブラウザを使っている人には良さそうですが、自分はFirefoxをメインに使っており、Firefoxの利用では不便そうだという印象もありました。
ただ、ChromeOSは非常に軽量という話も聞くので、今回、CPUがN4200のノートPCに、ChromeOSFlexで使ってみることにたので、ChromeOSFlexにFirefoxをセットアップしてみた内容を書いてみたいと思います。

# 使用PC
今回使用したPCは、Acer Spin1 という 2017年 頃の安価なノートです。

| 項目 | スペック |
|:-:|:-:|
| CPU  | N4200  |
| メモリ  | 4G  |
| ドライブ |  eMMC 128GB |
| ディスプレイ  | タッチ対応FullHD  |

実は、最初はLinuxMintを入れようとしてたのですが、このPCではgrabのインストール時にエラーが出てしまい、うまくいれられませんでした。grabの手動インストールをしてもよかったのですが、ChromeOSFlexならすんなりインストールできたので、ChromeOSFlexを試してみようと思いました。

# ChromeOSFlexで良かった点
### 起動・停止が高速
起動は15秒くらい。停止は２～３秒でした。
もう、主力には使えないノートなので、ちょっと調べたいなどで使いたくても、Windowsだと1分程度はかかっていたので、起動が早いのは助かります。
### スリープも使いたくなる
スリープすればもっと高速で、数秒で起動します。
画面を閉じればスリープに入るので、ChromeosFlexだと、この使い方が自分によさそうだと思います。
Windowsにもスリープはありますが、Windowsはスリープの利用に向いていない気がします。再起動すると明らかに安定するので、毎回シャットダウンして利用していました。
### Gemini、Chrome、Yotubeなどを利用するには便利
GoogleのOSなので、Gemini、Chrome、Youtubeはアプリ化されていて、それらが作業の中心であれば、インストール後にすぐに使えるので快適に利用できます。

## イマイチな点
### GoogleChrome以外のブラウザを利用するのがシンドイ
GoogleのOSなので、別ブラウザを利用するには、Linux環境を立ち上げる必要があるのは知ってましたが、Linux環境はWindowsのWSLと似ていて、仮想環境上にOSが入る感じです。仮想環境なので、ベースOSとは分離されているため、いろいろ支障がでます。最も困るのは**日本語入力**でした。
Linux環境にFirefoxを入れても、そのままでは日本語入力ができません。Fcitx5だの、Mozcだのを設定する必要があります。

# ChromeOSFlexのLinux環境
ChromeOSFlexでLinux環境を有効化するというのはどういうことか調べてみました。

1. 動作環境
ChromeOSFlexのLinux環境はCrostiniというもので、LXC の技術を利用しているようです。立ち上げると、debian12が起動しました。

1. NATされている
IPアドレスは、ホストとは別のセグメントになっており、NATされてるようです。従って外部からLinux環境に接続するには、ホストでポートフォワードなどをする必要があると思います。

ChromeOSFlex内に仮想環境でLinuxが立ち上がるようです。ChromeOSFlexから独立しているため、Linux環境内に改めて日本語のセットアップが必要になる、という感じのようです。

## Linux環境にFirefoxを入れ日本語を設定してみる
Firefoxを入れ、日本語入力できるまでの手順を記載してみます。

### Firefoxのインストール
事前に sudo apt update && sudo apt upgrade は済ませておきます。
mozilla.orgに記載された手順でFirefoxを入れることができます。
https://support.mozilla.org/ja/kb/run-firefox-chromeos#firefox:win11:fx138

```bash:Firefoxインストール
# flatpakのインストールとFluthubリポジトリ追加
$ sudo apt install flatpak
$ flatpak --user remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

# ここでLinux環境をシャットダウンして再起動

# Firefoxのインストール
$ flatpak install flathub org.mozilla.firefox
```
インストールが完了すると、Firefoxのアイコンがメニューに出てくるので、起動すれば完了です。

### Linux環境の日本語入力セットアップ
fcitx5とMozcをインストールします。
```bash:fcitx5とMozcのインストール
sudo apt install fcitx5 fcitx5-mozc
```

必要となるディレクトリの作成。
```bash
mkdir -p ~/.config
```

fcitx5をGUI起動時に自動起動させるため、.sommelierrc に設定を入れます。
```bash:~/.sommelierrc
# 以下の行を追記
/usr/bin/fcitx5 &
```
fcitx5をIMEとして認識させるための# ~/.profile (または ~/.xprofile)に環境変数を設定する。
```bash:~/.profile (または ~/.xprofile)
# 以下の行を追記
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx
export DefaultIMModule=fcitx
```

Flatpakのサンドボックスをに対し、fcitx5と通信できるように、以下を実行する。

```bash:shell
$ flatpak --user override --talk-name=org.fcitx.Fcitx org.mozilla.firefox
$ flatpak --user override --talk-name=org.freedesktop.portal.Fcitx org.mozilla.firefox
$ flatpak --user override --env=GTK_IM_MODULE=fcitx --env=QT_IM_MODULE=fcitx --env=XMODIFIERS=@im=fcitx org.mozilla.firefox
```
fcitx5のキーバインド設定 (半角/全角キーの利用)をします。
```bash:shell
$ fcitx5-configtool
```
fcitx Configurationが起動するので、以下を設定します。
1. 「Input Method」タブで、Mozcを追加する
1. 「Global Options」タブで、「Trigget Input Method」にZenkaku Hankakuを設定する

ここでLinux環境を再起動します。
再起動したら、Firefoxで日本語入力可能か、確認してみてください。

# 最後に
ChromeOSFlexはGooglePlayStoreが使えないため、Linux環境の利用は必須だと思いますが、日本語のセットアップができないと不便です。
このあたりがもっと簡単にセットアップできるようになれば、ChromeOSFlexはWindowsやMacに対し、強力なライバルになりそうだと感じました。

もし、捨てるに捨てられないノートがあるようであれば、ChromeOSFlexを試してみると面白いと思います。
Gemini、Chrome、Yotubeの利用においては、非常に便利だと思います。

以上です。