diff --git a/README.md b/README.md index e5bf4ca..f525751 100644 --- a/README.md +++ b/README.md @@ -162,6 +162,41 @@ bulkgen tracks the state of each build in `.bulkgen.state.yaml` (auto-generated, - Model name - Extra parameters (width, height, etc.) +## Installation with Nix / home-manager + +bulkgen provides a Nix flake with a home-manager module. Add the flake as an input and enable the module: + +```nix +# flake.nix +{ + inputs = { + nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; + home-manager.url = "github:nix-community/home-manager"; + bulkgen.url = "github:kfickel/bulkgen"; # adjust to your actual repo URL + }; + + outputs = { nixpkgs, home-manager, bulkgen, ... }: { + # ... your existing config, then in homeConfigurations: + homeConfigurations."user" = home-manager.lib.homeManagerConfiguration { + # ... + modules = [ + bulkgen.homeManagerModules.bulkgen + { + programs.bulkgen.enable = true; + } + ]; + }; + }; +} +``` + +This places the `bulkgen` binary on your `$PATH`. To use a different package build (e.g. from a different system or overlay), set `programs.bulkgen.package`. + +The flake also exposes: + +- `packages..bulkgen` — the standalone package, usable without home-manager (e.g. `nix run github:kfickel/bulkgen`) +- `devShells..default` — development shell with all dependencies + ## Environment variables | Variable | Required for |