How elliebytes/burrow works
Burrow is a Nix-flake auto-discovery framework. Its documented workflow crawls search paths for buildable objects and metadata, then builders turn discovered inputs into flake outputs; metadata is evaluated with builder-defined modules to customize objects. The tree also shows builder implementations for NixOS, Darwin, home configurations, packages, and other modules. Source excerpts were unavailable, so edges below are limited to relationships stated in the README; implementation details and links among builder variants are not inferred.
Main entry points: builder.nix Builder API · discover.nix Discovery function · default.nix Builder modules
Components 13
Discovery and metadata
- Discovery function
lib/discover.nix - Object metadata
Builder framework
- Builder API
lib/types/builder.nix - Builder modules
parts/builders/modules/modules/default.nix
Builder implementations
- NixOS builder
parts/builders/nixos/default.nix - Darwin builder
parts/builders/darwin/default.nix - Home builder
parts/builders/home/default.nix - Package builder
parts/builders/packages/default.nix - Templates
parts/builders/templates.nix - Overlays
parts/builders/overlays.nix
Other components
- Flake maintainer
- Search paths
- Flake outputs
Connections 7
- Flake maintainer → Search paths: provides
README.md - Discovery function → Search paths: crawls
README.md - Discovery function → Object metadata: evaluates metadata
README.md - Builder API → Discovery function: uses by default
README.md - Builder API → Object metadata: customizes objects
README.md - Builder API → Builder modules: defines modules
README.md - Builder API → Flake outputs: builds
README.md