NixOSをlima上でセットアップ & dotfilesで管理

はじめに MacOSでもlinux、特にNixOSを手軽に扱いたい。ディレクトリもシームレスに連携できる、いわゆるWSLっぽいことがしたい。 調べてみたら lima というのがそれをやるのに適していそうなので、セットアップしてみたメモ nixos-lima-config-sampleの利用 limaでのVMの起動にはテンプレートイメージが必要。設定ファイルとして nixos-lima/nixos-lima-config-sample を参考にする。 nixos-lima-config-sample はあくまで設定のサンプルであり、以下が同封されている nixos.yaml:テンプレートイメージやマウント、メモリなどの設定を記載したlimaのファイル setup-nixos.sh:NixOSのセットアップをするためのヘルパースクリプト。単にリポジトリに同封されているnixos-lima-config.nixを読み込んでビルドするだけ setup-home-manager.sh:Home Managerのセットアップをするためのヘルパースクリプト。単にリポジトリに同封されているhome.nixを読み込んでビルドするだけ nixos.yamlをみてみると、情報が少し古い。またNixOSやHome Managerの設定ファイルに関しては、自分が育てているdotfilesのディレクトリに組み込みたいので、以下の方針で進める。 nixos.ymlを編集し、新規の nixos-lima/nixos-lima のイメージを参照するようにする setup-nixos.sh や setup-home-manager.sh は使わない。ベースとなるnixos-lima-config.nixやhome.nixは自分のdotfilesに移動し、それらへのリンクをflake.nixに記載する セットアップ作業 nixos.ymlをつかってVMを作成 & 起動 NixOSのセットアップ Home Managerのセットアップ VMの作成・起動 nixos-lima/nixos-lima-config-sample をclone。 1 2 git clone https://github.com/nixos-lima/nixos-lima-config-sample.git cd nixos-lima-config-sample 設定ファイルを自分のdotfiles用リポジトリに移動。 1 2 mkdir -p ~/dotfiles/lima cp nixos.yaml ~/dotfiles/lima/ 編集する。 nixos-lima/nixos-lima の最新リリースを指定。 書き込み権限を許可したいディレクトリを指定 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 --- a/nixos.yaml +++ b/nixos.yaml @@ -1,7 +1,7 @@ images: - - location: "https://github.com/nixos-lima/nixos-lima/releases/download/v0.0.5/nixos-lima-v0.0.5-aarch64.qcow2" + - location: "https://github.com/nixos-lima/nixos-lima/releases/download/v0.2/nixos-lima-v0.2-aarch64.qcow2" arch: "aarch64" - digest: "sha512:e1daeb0dcec65c624253603ab5ec06f0831b0940cd95a88903f9bfd0ee4009b2c45806b868674c7e8cb12941e50799e85d710fc0e9ad659059108cebbc4d19c1" + digest: "sha512:dc297799d93f0fe6cb8fac779b97bb5e2712f0dd640eed53cc57d9c95844751a32d20ce794751fb56c128b35fe8a8a956cd08856b8818e9e6c377380d6f0cc4f" - location: "https://github.com/nixos-lima/nixos-lima/releases/download/v0.0.5/nixos-lima-v0.0.5-x86_64.qcow2" arch: "x86_64" digest: "sha512:51fbe74c569736f1141f1c6efeaa21a0901dff0bec5bc1e863c04c7765e150c3bebd82b7f50905fb7a0a9a9b050852c250ffbdcacd17b0dc15aeb86d47587436" @@ -16,6 +16,11 @@ mounts: writable: true 9p: cache: "mmap" +- location: "~/dotfiles" + writable: true + 9p: + # Try choosing "mmap" or "none" if you see a stability issue with the default "fscache". + cache: "mmap" memory: 8GiB VMを起動。 user.name には好きなユーザ名(今回は自分の名前)を入れる。 ...

2026-06-17 · (updated 2026-06-21) · 5 min · 984 words