Nix¶
Getting started¶
References: * How I Start: Nix * Lorri * Direnv * Niv * NixOS - Learn
Bootstrapping a Nix project¶
Initialize niv
mkdir -p <project_dir>
cd <project_dir>
niv init
# ...
tree
#.
#└── nix
# ├── sources.json
# └── sources.nix
#
# 1 directory, 2 files
Initialize lorri
, make sure lorri daemon
already running
lorri init
# direnv: error <project_root>/<project_dir>/.envrc is blocked. Run `direnv allow` to approve its content
Review .envrc
file, then approve
direnv allow
Customize shell.nix
to use local source from niv
# shell.nix
let
sources = import ./nix/sources.nix;
pkgs = import sources.nixpkgs {};
in
pkgs.mkShell {
buildInputs = [
pkgs.hello
];
}
TODO¶
- home-manager
- Nix on MacOS documentation