Flakes
#Nix
Nix言語の依存関係管理を行う機能
Derivationの依存関係管理を行うのはNixストア
Gitと併用前提
inputs
依存するFlakeを指定
inputsのFlakeのバージョンをGitのコミットハッシュで固定
outputs
inputsを引数にとるNix式
様々なものを指定できる
packages
devShells
formatter
nixosConfiguration
その他サードパーティで拡張可能
home-manager
deploy.rs
インターフェースの統一
flake.nixがエントリポイントになる
純粋性の向上
Git管理下にないファイルの読み取りが不可能
builtins.getEnv関数による環境変数へのアクセスの禁止
使いたいならNix commandsのオプションに--impureをつける必要がある