⚙️

Crostini 環境構築

2021/04/18に公開

はじめに

以下のことができるようになるまで環境を構築していきます。

  • Visual Studio Code (以下、 VS Code)をインストールして日本語入力できるようにする
  • Zenn の記事を書いて GitHub で管理できるようにする

環境

console
$ uname -a
Linux penguin 5.4.88-12233-g8e0826df26a0 #1 SMP PREEMPT Wed Apr 7 19:44:59 PDT 2021 x86_64 GNU/Linux
$ cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 10 (buster)"
NAME="Debian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"

システムアップデート

まずはインストールされているパッケージを最新化。

console
$ sudo apt update
$ sudo apt upgrade

パッケージインストール

必要なパッケージや好みのパッケージをインストール。

fish

fish が好きなので。

  • インストール
    console
    $ sudo apt install fish
    
  • ログインシェルを変更
    console
    $ cat /etc/shells
    # /etc/shells: valid login shells
    /bin/sh
    /bin/bash
    /bin/rbash
    /bin/dash
    /usr/bin/fish
    $ chsh -s /usr/bin/fish
    Password:
    chsh: PAM: Authentication failure
    
    ログインシェルを変更しようとするとこうなる。
    (パスワード未設定だからっぽい)

    なのでこうする。
    console
    $ sudo su -
    # chsh -s /usr/bin/fish ksh2ksk4
    
    ログインシェル変更後はChromebookを再起動する。
    (再起動しないと挙動がおかしい)
  • 不要なファイルを削除
    console
    $ rm -f ~/.bash* ~/.profile
    

VS Code

  • 事前準備
    VS Code のインストールで実行する add-apt-repository というコマンドをインストールしておく。
    console
    $ apt install software-properties-common
    
  • インストール
    console
    $ curl -sSL https://packages.microsoft.com/keys/microsoft.asc |sudo apt-key add -
    $ sudo add-apt-repository "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main"
    $ sudo apt update
    $ sudo apt install code
    
    VS Code は code というコマンドで起動できる。

日本語入力

  • インストール

    console
    $ sudo apt install fcitx-mozc
    
  • 起動
    Chromebook のランチャー(画面左下)から Fcitx を起動。
    (アプリが起動してアイコンがずっとクルクルする)

  • 設定
    設定ツールを起動。

    console
    $ fcitx-configtool
    
    • 日本語入力用IMを追加

      左下の + ボタンをクリックする。

      Only Show Current Language のチェックを外して mozc で検索する。

      一件ヒットするので、これを選択して OK をクリック。

      完了。
    • トリガーを変更
      Ctrl+Space ではなく Ctrl+\ で日本語入力を On/Off するように変更。

      Global Config タブを選択。
      HotkeyTrigger Input MethodCtrl+Space をクリック。

      キーバインドを入力するポップアップが表示されたら Ctrl+\ を入力して完了。
  • Mozc設定
    設定ツールを起動。

    console
    $ /usr/lib/mozc/mozc_tool --mode=config_dialog
    
    • 一般
      一般
      • スペースの入力
        半角 に変更
    • 入力補助
      入力補助
      • 半角・全角
        • 以下に挙げたもの以外の文字グループの 変換前文字列半角 に変更
          • 。、
          • ・「」
  • 自動起動設定
    以下のように環境変数を設定して、

    /etc/systemd/user/cros-garcon.service.d/cros-garcon-override.conf
    Environment="GTK_IM_MODULE=fcitx"
    Environment="QT_IM_MODULE=fcitx"
    Environment="XMODIFIERS=@im=fcitx"
    

    自動起動設定を追加。

    ~/.sommelierrc
    $ echo '/usr/bin/fcitx-autostart' >>~/.sommelierrc
    

    コンテナを再起動すると自動起動するようになっている。

ターミナル

Chrome にフォーカスを当てて Ctrl + Alt + t で crosh を起動。

crosh

Ctrl + Shift + pターミナルの設定 を開く。

ターミナルの設定

キーボードとマウス

キーボードとマウス で以下を On にする。

  • Ctrl+C キーのコピーの動作
  • Ctrl+V キーの貼り付けの動作

ロケール

コマンドを実行するとちょいちょいロケール関連のエラーメッセージが表示されるので、ロケールを設定しておく。

console
$ sudo dpkg-reconfigure locales

en_US.UTF-8 UTF-8ja_JP.UTF-8 UTF-8 を選択して OK をクリック。
デフォルトロケールは ja_JP.UTF-8 UTF-8 を選択して OK をクリック。

console
$ locale
LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

🤔

おそらく /etc/default/locale が効いていないと思われる。
(fish ではこのシンタックスは正しくないため)

以下のコマンドを実行。

console
$ set -x LANG ja_JP.UTF-8

再確認。

console
$ locale
LANG=ja_JP.UTF-8
LANGUAGE=
LC_CTYPE="ja_JP.UTF-8"
LC_NUMERIC="ja_JP.UTF-8"
LC_TIME="ja_JP.UTF-8"
LC_COLLATE="ja_JP.UTF-8"
LC_MONETARY="ja_JP.UTF-8"
LC_MESSAGES="ja_JP.UTF-8"
LC_PAPER="ja_JP.UTF-8"
LC_NAME="ja_JP.UTF-8"
LC_ADDRESS="ja_JP.UTF-8"
LC_TELEPHONE="ja_JP.UTF-8"
LC_MEASUREMENT="ja_JP.UTF-8"
LC_IDENTIFICATION="ja_JP.UTF-8"
LC_ALL=

再起動すると未設定状態に戻ってしまうため、設定ファイルに追記しておく。

~/config/fish/config.fish
set -x LANG ja_JP.UTF-8

Zenn

Zenn の環境については下記を参照。

Chromebook に Zenn の環境を構築する

Git

Git でコミットするのに最低限必要な設定をしておく。

console
$ git config --global user.name 'Foo'
$ git config --global user.email 'foo@example.com'

おわりに

これでひとまず Chromebook で Zenn の記事が書けるようになったと思います。

Discussion