ワークショップ・ねぶりん

開発したものとか。

GNU Guix System 日本語インストール方法

gccの最新版やクロスコンパイラ等をコンパイルする環境として、GNU謹製のディストロであるGuix Systemをインストールしてみました。ただ、そのまま.isoからインストールすると、日本語に設定したつもりでも日本語が化けてしまいます。そこで、マニュアルの別の場所に記載されている様に、コンソールから

$ guix install font-adobe-source-han-sans

と入力して、後から追加インストールを行っても良いのですが、これだとシステム全体にインストールが行われる訳ではないので、例えばログインマネージャーの表示は化けたままですし、ほかのユーザーにスイッチした場合も、上記コマンドを再度入力する必要があります。

これを回避するには、システムのインストール時に必要なパッケージを予め追加しておくのが、一番簡単です。

注意

現在のGNU Guix Systemは、UbuntuFedora等の比較的使いやすいディストロではなく、Linuxに慣れた人向け(というよりも開発者向け)です。GUIで設定出来る項目は非常に少なく、システムのメンテナンスには、CUIのコマンドを駆使する必要があります。よって、本記事ではSlackware等で環境を構築出来る方が対象となります。パーティションの設定方法等は、他の環境と同じ考え方なので、全て割愛させて頂きます。また、バージョンが更新されている場合がありますので、そこは適時読み替えて下さい。

作業した環境

Guix System のインストール

Graphical install using a terminal based interfaceを選択して、以下の画面が表示されるまでインストーラを進めます。

f:id:neb4nebrin:20190802181859p:plain
インストール準備完了画面

ここでCtrl + Alt + F3を押下し、別のターミナルを呼び出します。表示されている通りEnterを押し、キーマップを設定(ここでは日本語106キーボード)します。

f:id:neb4nebrin:20190802182314p:plain
別ターミナルを開く

エディターを起動して、/mnt/etc/config.scmを編集します。ここではviを使っていますが、マニュアルによるとGNU nanoがお勧めらしいです。

追加したいパッケージは、私の場合は以下の通りです。基本的にマニュアルに注意点が記載されていたパッケージと、システム管理で頻繁に使うコマンドとなります。必要に応じて差し替えて下さい。

  • 日本語フォント
    • font-adobe-source-han-sans
    • font-wqy-zenhei
  • xset
  • xlsfonts
  • fontconfig
  • gcc-toolchain
  • file
  • vim

このファイル(config.scm)に、以下の様な記述があります。

(packages
    (append
        (list (specification->package "nss-certs"))
        %base-packages))

この部分を以下の様に書き換えて、保存してエディターを終了します。

f:id:neb4nebrin:20190802182417p:plain
構成情報編集

Ctrl + Alt + F1を押下し、元のインストーラの画面に戻ります。表示されている構成情報は、編集結果を反映していませんが、OKを押してこのまま続けます。

インストーラが正常に終了し、再起動を求められますが、実機と違ってブートメディアが自動でイジェクトされないので、何らかの方法(例:再起動ではなく、一度電源OFFする)で除去します。その後、再起動(もしくは電源ON)をした直後の、Guix Systemのログインマネージャーの画面を以下に示します。

f:id:neb4nebrin:20190802182514p:plain
GNOMEログインマネージャー

ちゃんと日本語が表示されています。このままログインしてみます。

f:id:neb4nebrin:20190802182553p:plain
ログイン

大丈夫そうです。

f:id:neb4nebrin:20190802182634p:plain
GNOMEデスクトップ

GNOMEデスクトップも日本語で表示されていますので、これで完了です。

上手くいかない場合は、config.scmの修正ミスが考えられます。この場合、大抵インストーラの画面にメッセージが表示されるので分かり易いと思います。が、現バージョンだとメッセージが表示された後に、上手くインストールプロセスの復帰が出来ないので、毎回仮想マシンをリセットする羽目になります。加えて、毎回config.scmを手作業で書き換える必要があります。config.scmを、仮想マシンではなくホストOS側で管理出来ると、少しは楽になるかもしれません。

インストール後のセキュリティアップデートや、日本語の入力システムの構築については、また別の話となりますので、ここでは割愛します。


以上