Skip to content

.inputDerivation broken for __structuredAttrs derivations #321005

@j-baker

Description

@j-baker

Describe the bug

Every derivation has a .inputDerivation that can be used to e.g. create a dev shell. The runtime dependencies of this derivation are the build dependencies of the parent.

On my computer, on the two packages I've tried, if __structuredAttrs = true is set for the parent, the inputDerivation will fail to build.

nix-repl> :b aspectj.inputDerivation
error: builder for '/nix/store/3aqm51iaklikz3vpchgyzm7ikbhkyqc1-aspectj-1.9.22.1.drv' failed to produce output path for output 'out' at '/nix/store/7k1rvvhqv79z1fcak9c81076lpwzm7zq-aspectj-1.9.22.1'

nix-repl> :b (aspectj.overrideAttrs { __structuredAttrs = false; }).inputDerivation

This derivation produced the following outputs:
  out -> /nix/store/jr3ryc1fs5kk8arjm91jy1dsd9h55y22-aspectj-1.9.22.1

Steps To Reproduce

nix-repl> :b aspectj.inputDerivation
error: builder for '/nix/store/3aqm51iaklikz3vpchgyzm7ikbhkyqc1-aspectj-1.9.22.1.drv' failed to produce output path for output 'out' at '/nix/store/7k1rvvhqv79z1fcak9c81076lpwzm7zq-aspectj-1.9.22.1'

nix-repl> :b (aspectj.overrideAttrs { __structuredAttrs = false; }).inputDerivation

This derivation produced the following outputs:
  out -> /nix/store/jr3ryc1fs5kk8arjm91jy1dsd9h55y22-aspectj-1.9.22.1

Expected behavior

Succeeds

Screenshots

If applicable, add screenshots to help explain your problem.

Additional context

Add any other context about the problem here.

Notify maintainers

@roberth seems to have made a bunch of PRs to this piece of code!


Add a 👍 reaction to issues you find important.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions