Nix
- ・ 不変なパッケージストア:
/nix/storeにハッシュ化されたパスでインストール。依存関係の競合を根本から解決。 - ・ 究極の再現性: ビルドに必要な入力をすべて定義し、どのマシンでも全く同じビルド結果(または環境)を再現。
- ・ アトミックな更新とロールバック: 更新に失敗しても、以前の正常な状態(ジェネレーション)に即座に戻すことが可能。
- ・ 宣言的な環境定義:
flake.nixやshell.nixに必要なツールを記述し、チーム全員で共通の開発環境を共有。
- ・ プロジェクトごとの環境分離:
nix-shellを使い、OSにツールをインストールせずにプロジェクト内だけで有効なツールセットを作成。 - ・ システムの安全なアップグレード: アップグレード後に問題が起きても、起動時のブートメニューから旧バージョンを即座に選択。
- ・ 再現可能なサーバー構築: NixOS を活用し、一つの設定ファイルから全く同じ構成のサーバーを何台でもデプロイ。
構築・初期設定
Section titled “構築・初期設定”インストール (macOS / Linux)
Section titled “インストール (macOS / Linux)”推奨されるマルチユーザーインストール(推奨)を実行します:
インストール後、一度ログアウトして再ログインすると環境変数が反映されます。
一時的なツールの使用
Section titled “一時的なツールの使用”システムにインストールせずに、特定のツール(例:git)を使えるシェルを起動:
パッケージの検索
Section titled “パッケージの検索”メンテナンス
Section titled “メンテナンス”不要になった古いバージョンのファイルを削除してディスクを解放:
Nix は強力ですが、独自の関数型言語(Nix Expression Language)を覚える必要があります。まずは nix-shell から使い、徐々に Flakes などへ移行するのがおすすめです。