カラクリスタ

「輝かしい青春」なんて失かった人のブログ

NixOS での開発環境を整えた話

とりあえず、今日モリっと構築しましたので、その話を軽く。


Nixpkgs way で \$HOME を管理するのに nix-home を使った

まあ、僕は以前まで (と言うか ファイルシステムがぶっ壊れる前まで) 、 dotfiles については、 NixOS の configuration.nix とは別枠で管理してたんですが、それだと普段使いの OS が NixOS な自分に取っては、 ワリとこう不便感があったので、 nix-home での管理に乗り換えました。

それで、このツール、割とシンプルに出来ていて、導入も設定をちょろっと書いただけで導入できたし、 あと、設定ファイルの管理に nixpkgs の関数とか使えるので、そういう意味では非常に便利です。

ただ、そうは言っても、 NixOS や nixpkgs を使ってない環境では、それ単体で導入するのは無理っぽそうだし、 あとほぼ意味ないので、nix-home を使って利点が得られるのは、 nixpkgs 利用者だけですけどね。

Vimzshプラグイン管理を nixpkgs の方によせた

まぁ、これもまた NixOS (と言うか nixpkgs) に依存するやり方なので、 あんまり万人には進めづらい感じでは有るんですが、僕個人としては、

まあ (nixpkgs に vim 等の管理を寄せても) 困らんだろ

という判断で、Vimzshプラグイン等の管理を、vim-plug や zplug などを使わず、 そのまま直接 nixpkgs で管理する方法に変えました。

そのため、 vimrczshrc と言ったファイルでの プラグイン管理のためのコードが無くなり、 それらのファイルが非常にスッキリした、分かり易く短いコードになりました。

ただし、nixpkgs の公式リポジトリの方に入っている Vim 等のプラグインは、 そうは数は多くないし、 vimUtils.buildVimPluginFrom2Nix というヘルパー関数が有るとは言え、 こう、

自分が必要とするパッケージをモリモリと定義する

というのは、割とつらみのある感じでしたが。

dotfiles や configuration.nix の再整理をした

と言うか、これはまあファイルシステムが飛んだ際に、今までの設定ファイルを使わなかっただけの話なんですが、 今現在、

みたいな感じで設定ファイルを管理しています。

ただしコレ、実際にはまだ色々と作業中で、前の設定ファイル類から引き継げてない設定ファイルとかもあるので、 その辺りはボチボチと作業していくしかないかなぁ、とは思っています。

それと、上記のリポジトリには僕が追加した default.nix 系のパッケージ定義なんかが含まれているのですが、 これらの定義ファイル、

とりあえず、動いてインストール出来たらそれで良いや

みたいな方針で作ってたりするので、ドキュメンテーションやらメタ情報やらのクオリティはお察し、 というかほぼ何も書いてないじゃねぇか! なので、まあ察してください、はい。

以上

という事で、久しぶりに結構真面目な感じでブログを書きました。

ちなみに、ここの所、色々と (Laptop PC の) トラブル続きで、精神状態が色々とアレな感じだったんですが、 もうそろそろその辺りから脱したいところです。はい。