Skip to content

nix realisation info is broken #353

@definfo

Description

@definfo

Describe the bug

nix realisation info <package> --extra-experimental-features ca-derivations will immediately crash Determintate Nix.

$ nix realisation info nixpkgs#hello --extra-experimental-features ca-derivations

terminating due to unexpected unrecoverable internal error: Assertion 'thisRealisation' failed in nix::BuiltPath::toRealisedPaths(nix::Store&) const::<lambda(const nix::BuiltPath::Built&)> at ../built-path.cc:122
Determinate Nix crashed. This is a bug. Please report this at https://github.com/DeterminateSystems/nix-src/issues with the following information included:

std::terminate() called without exception
Stack trace:
 0# 0x00000000004B7F69 in nix
 1# 0x00007FB5E0ABF1AA in /nix/store/dj06r96j515npcqi9d8af1d1c60bx2vn-gcc-14.3.0-lib/lib/libstdc++.so.6
 2# std::unexpected() in /nix/store/dj06r96j515npcqi9d8af1d1c60bx2vn-gcc-14.3.0-lib/lib/libstdc++.so.6
 3# 0x00007FB5E1A0DBDE in /nix/store/hpci94r188cf7hc3ak3h1fdf6jrdd6m4-determinate-nix-util-3.15.2/lib/libnixutil.so.2.33.1
 4# __wrap___assert_fail in /nix/store/zrvzngsf16i3b4v4bn1lcnfbvyj7mih7-determinate-nix-cmd-3.15.2/lib/libnixcmd.so.2.33.1
 5# 0x00007FB5E0E4692F in /nix/store/zrvzngsf16i3b4v4bn1lcnfbvyj7mih7-determinate-nix-cmd-3.15.2/lib/libnixcmd.so.2.33.1
 6# nix::BuiltPath::toRealisedPaths(nix::Store&) const in /nix/store/zrvzngsf16i3b4v4bn1lcnfbvyj7mih7-determinate-nix-cmd-3.15.2/lib/libnixcmd.so.2.33.1
 7# 0x0000000000555570 in nix
 8# nix::BuiltPathsCommand::run(nix::ref<nix::Store>, std::vector<nix::ref<nix::Installable>, std::allocator<nix::ref<nix::Installable> > >&&) in /nix/store/zrvzngsf16i3b4v4bn1lcnfbvyj7mih7-determinate-nix-cmd-3.15.2/lib/libnixcmd.so.2.33.1
 9# nix::InstallablesCommand::run(nix::ref<nix::Store>, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&&) in /nix/store/zrvzngsf16i3b4v4bn1lcnfbvyj7mih7-determinate-nix-cmd-3.15.2/lib/libnixcmd.so.2.33.1
10# nix::RawInstallablesCommand::run(nix::ref<nix::Store>) in /nix/store/zrvzngsf16i3b4v4bn1lcnfbvyj7mih7-determinate-nix-cmd-3.15.2/lib/libnixcmd.so.2.33.1
11# nix::StoreCommand::run() in /nix/store/zrvzngsf16i3b4v4bn1lcnfbvyj7mih7-determinate-nix-cmd-3.15.2/lib/libnixcmd.so.2.33.1
12# 0x00000000005258BC in nix
13# nix::handleExceptions(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::function<void ()>) in /nix/store/kk0jvy6lr1fg2z1zkv2jq6zhwckf7ipq-determinate-nix-main-3.15.2/lib/libnixmain.so.2.33.1
14# 0x000000000048EE89 in nix
15# 0x00007FB5E062A47E in /nix/store/g8zyryr9cr6540xsyg4avqkwgxpnwj2a-glibc-2.40-66/lib/libc.so.6
16# __libc_start_main in /nix/store/g8zyryr9cr6540xsyg4avqkwgxpnwj2a-glibc-2.40-66/lib/libc.so.6
17# 0x0000000000493565 in nix

Steps To Reproduce

  1. Run nix realisation info <package> --extra-experimental-features ca-derivation, where <package> can be any valid package expression.
  2. Boom.

Expected behavior

Not sure but at least Nix could be more informative when handling unexpected usages?

Metadata

nix (Determinate Nix 3.15.2) 2.33.1

Additional context

Upstream Nix may encounter this issue as well however no similar cases were mentioned in issues on both sides.

Checklist

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions