drv-parts icon indicating copy to clipboard operation
drv-parts copied to clipboard

Shouldnt this be all builtins.derivation options?

Open hsjobeki opened this issue 1 year ago • 0 comments

https://github.com/DavHau/drv-parts/blob/38f59f9eb2dbcf9ad6b939ec47c005033445f13e/modules/drv-parts/builtins-derivation/interface.nix#L7

The actual interface of builtins.derivation

builtins.derivation :: {
        name :: String;
        outputs :: [ output @ String ] ? [ "out" ];
        builder :: String;
        system :: String;
        args :: [ String ] ? [ ];
        ${additionalArg} :: a;
    } -> Derivation

source: https://www.werkbank.cloud/post/nix-derivation-type (from my blog under construction)

builtins.derivation will accept anything that it can implicitly coerce into string.

such as:

  • list
  • path (is a syntactic wrapper around string)
  • string
  • number
  • etc

Side note:

even the outputs list is coerced into a single string. internally this is also why a list like outputs = ["my app" "pkg" ] would yield 3 outputs. Also this would fail because one item of the list MUST be "out"

hsjobeki avatar Mar 21 '23 07:03 hsjobeki