Skip to content

isStatic has no non-function representation, but nix-env --meta assumes one exists #212925

@ghost

Description

I am working on this bug. First reported here.

The root cause of the problem is that there is no "pattern" (see lib/system/inspect.nix) representation for isStatic. It is special, unlike all the other platform predicates. It is this way because pkgsStatic exists, and because

stdenv.hostPlatform.config == pkgsStatic.stdenv.hostPlatform.config

... in other words, "static-ness" is not represented in the gnu-config triple for a platform.

Right now we try to pretend that you can reconstruct all the pattern-representable aspects of a hostPlatform from its config. That isn't really true, because of isStatic and useLLVM, and it's getting more untrue as time goes on. The long-term solution is to stop pretending.

I have a possible short-term fix that I'm testing.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions