Skip to content

Commit c9c8991

Browse files
authored
Update README.md
1 parent 78c35e3 commit c9c8991

1 file changed

Lines changed: 41 additions & 2 deletions

File tree

README.md

Lines changed: 41 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,15 @@
1313

1414
> Recursively import [Nix modules](https://nix.dev/tutorials/module-system/) from a directory, with a simple, extensible API.
1515
16-
## Quick Start (flake-parts)
16+
## Quick Start
17+
18+
The following examples show how to import all module files.
19+
By default, paths having `/_` are ignored. See API documentation for advanced usage.
20+
21+
### Dendritic flake-parts
1722

1823
```nix
24+
# flake.nix
1925
{
2026
inputs.import-tree.url = "github:vic/import-tree";
2127
inputs.flake-parts.url = "github:hercules-ci/flake-parts";
@@ -25,7 +31,40 @@
2531
}
2632
```
2733

28-
By default, paths having `/_` are ignored.
34+
### Dendritic flake without flake-parts
35+
36+
```nix
37+
# flake.nix
38+
{
39+
inputs.import-tree.url = "github:vic/import-tree";
40+
inputs.nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable";
41+
42+
outputs = inputs:
43+
(inputs.nixpkgs.lib.evalModules {
44+
specialArgs.inputs = inputs;
45+
modules = [ (inputs.import-tree ./modules) ];
46+
}).config;
47+
}
48+
```
49+
50+
### Dendritic non-flake
51+
52+
This example uses [with-inputs](https://github.com/vic/with-inputs) to provide flake-file inputs from [npins](https://github.com/andir/npins) sources.
53+
54+
```nix
55+
# default.nix
56+
let
57+
sources = import ./npins;
58+
with-inputs = import sources.with-inputs;
59+
outputs = inputs:
60+
(inputs.nixpkgs.lib.evalModules {
61+
specialArgs.inputs = inputs;
62+
modules = [ (inputs.import-tree ./modules) ];
63+
}).config;
64+
in
65+
with-inputs sources {} outputs
66+
```
67+
2968

3069
## Features
3170

0 commit comments

Comments
 (0)