Import From Derivation: Difference between revisions

imported>Asymmetric
m add link to blog post, fix section formatting
imported>Asymmetric
m fix code syntax
Line 77: Line 77:
== Recognizing IFD ==
== Recognizing IFD ==


The textbook case of IFD looks like `import (f drv)` where `f drv` is an expression that requires a build in order to return a value. However, `import` is not the only function that can require a build. For example, `builtins.readFile` can have the same effect.
The textbook case of IFD looks like <code>import (f drv)</code> where <code>f drv</code> is an expression that requires a build in order to return a value. However, <code>import</code> is not the only function that can require a build. For example, <code>builtins.readFile</code> can have the same effect.


All functions that query the filesystem will require a build when invoked on a derivation output path or subpath. This has the same effect and is therefore also called IFD. These include
All functions that query the filesystem will require a build when invoked on a derivation output path or subpath. This has the same effect and is therefore also called IFD. These include