NixOSをデスクトップで運用する

使い始めて数週間経ったので、NixOSiが何者かなどは置いておいて、今の所の運用について。 システムの部分については/etc/nixos/configuration.nix/etc/nixos/hardware-configuration.nixに書く。 これに関してはインストール時にテンプレートが置かれているので特に苦労も無いと思う。 ハードウェア毎に設定をまとめたものが公開されているのでThinkpadの設定も一発で使える。 Archだと自分でWiki読んで設定するべきところがNixOSだとテンプレートをちょっと改変するだけで使えるのは(NixOSのチームによって十分サポートされていることについては)楽。 最新の定義使いたいときは/etc/nixpkgs/とかにクローンしておいてnixos-rebuild switch -I nixpkgs=/etc/nixpkgs/とすればいい。 github.com

Vimの設定やシェルの設定ファイルの管理にはhome-managerを使うと便利。 $XDG_CONFIG_HOME/nixpkgs/home.nixにコンフィグを書いて管理する。 github.com

ここに設定を置いていますが、多分他の方の設定ファイルを参考にしたほうが良いです。

辛さ

  • ldすら普通の位置に無い(それはそう)ので、ldが普通の位置にあることを仮定しているソフトウェアは動かない(それはそう)。Rustのcrossとか動かないです。
  • fcitxがgtk上で動かない。GTK_IM_MODULE_FILE辺りの設定の問題らしい。issueで報告あるので自分の環境だけではないっぽい。 alacritty上で書いてクリップボードにコピーしているけどこれは直したい。ただIMはそもそもうまく動かないものなのでNixOS特有の辛さではない。
  • pkg-configもそのままでは動かない。なので外部のライブラリに依存するRustのクレートとかビルドできない。$PKG_CONFIG_HOMEを手動で設定すれば動きます。