@@ -85,7 +85,7 @@ properties:
8585 > ]
8686 > ```
8787 items :
88- type : string
88+ $ref : " store-path-v1.yaml "
8989
9090 inputDrvs :
9191 type : object
@@ -103,6 +103,15 @@ properties:
103103 > ```
104104 >
105105 > specifies that this derivation depends on the `dev` output of `curl`, and the `out` output of `unzip`.
106+ patternProperties :
107+ " ^[0123456789abcdfghijklmnpqrsvwxyz]{32}-.+\\.drv$ " :
108+ title : Store Path
109+ description : |
110+ A store path to a derivation, mapped to the outputs of that derivation.
111+ oneOf :
112+ - " $ref " : " #/$defs/outputNames"
113+ - " $ref " : " #/$defs/dynamicOutputs"
114+ additionalProperties : false
106115
107116 system :
108117 type : string
@@ -148,7 +157,7 @@ properties:
148157 type : object
149158 properties :
150159 path :
151- type : string
160+ $ref : " store-path-v1.yaml "
152161 title : Output path
153162 description : |
154163 The output path, if known in advance.
@@ -167,3 +176,28 @@ properties:
167176 title : Expected hash value
168177 description : |
169178 For fixed-output derivations, the expected content hash in base-16.
179+
180+ outputName :
181+ type : string
182+ title : Output name
183+ description : Name of the derivation output to depend on
184+
185+ outputNames :
186+ type : array
187+ title : Output Names
188+ description : Set of names of derivation outputs to depend on
189+ items :
190+ " $ref " : " #/$defs/outputName"
191+
192+ dynamicOutputs :
193+ type : object
194+ title : Dynamic Outputs
195+ description : |
196+ **Experimental feature**: [`dynamic-derivations`](@docroot@/development/experimental-features.md#xp-feature-dynamic-derivations)
197+
198+ This recursive data type allows for depending on outputs of outputs.
199+ properties :
200+ outputs :
201+ " $ref " : " #/$defs/outputNames"
202+ dynamicOutputs :
203+ " $ref " : " #/$defs/dynamicOutputs"
0 commit comments