Nixのhome-managerでnvimのsymlinkを貼る
はじめに
最近、macbookを新調した輪ごむです。
新しいPCを手に入れて最初にやる作業といえば、環境構築です。
macbookの開発環境を復元するために必要なステップは、ざっくりと以下のとおりです。
nixをインストール- vimの設定をまとめた
dotvimと、それ以外の設定をまとめたdotfilesレポジトリをclone - 主にguiツール目的で
brewをインストール - nvimのプラグインを動かすために
denoをインストール dotfilesでhome-manager switch --flake .#MacBookProを実行dotfilesでbrew bundleを実行dotvimの設定を~/.configにsymlinkするために、sh mklink.shを実行
列挙してみると、以外とステップがありますね。
今回、環境構築をしていると、7. のdotvimに移動してmklink.shを実行するのは面倒だなということに気が付きました。せっかくNixとhome-managerを導入してるなら、mklinkも自動でしてほしいよなぁ。。と思いました。
当初、dotfiles内じゃなくてとは別のgitレポジトリのdotvimで管理しているので、symlinkを貼るのは難しいだろうと勝手に考えていました。しかし、調べたところ可能そうだったので、試したところうまくいきました!!
やったこと
home-managerに以下を追記するといけます。
1234567891011
xdg.configFile."nvim" = {
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/dotvim/nvim";
};
xdg.configFile."nvim-sub" = {
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/dotvim/nvim-sub";
};
xdg.configFile."vim" = {
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/dotvim/vim";
};おわりに
これでdotvimからひとつ、shファイルを削除できましたとさ。
めでたし。めでたし。
つぎは、nix bundleを消す番かもしれない。