failure between builds: json error #918

Open
opened 2025-07-15 10:06:12 +00:00 by comfysage · 3 comments

Describe the bug

between building steam dependencies, after building mono dependency i get the following json error.

mono> /nix/store/w1xz2lw9bswlssldcvgxmdgwmmdxgwhp-mono-5.20.1.34/bin/dmcs: interpreter directive changed from "#!/bin/sh" to "/nix/store/94lg0shvsfc845zy8gnflvpqxxiyijbz-bash-interactive-5.2p37/bin/sh"
mono> /nix/store/w1xz2lw9bswlssldcvgxmdgwmmdxgwhp-mono-5.20.1.34/bin/xbuild: interpreter directive changed from "#!/bin/sh" to "/nix/store/94lg0shvsfc845zy8gnflvpqxxiyijbz-bash-interactive-5.2p37/bin/sh"
mono> stripping (with command strip and flags -S -p) in  /nix/store/w1xz2lw9bswlssldcvgxmdgwmmdxgwhp-mono-5.20.1.34/lib /nix/store/w1xz2lw9bswlssldcvgxmdgwmmdxgwhp-mono-5.20.1.34/bin
mono> rewriting symlink /nix/store/w1xz2lw9bswlssldcvgxmdgwmmdxgwhp-mono-5.20.1.34/bin/gmcs to be relative to /nix/store/w1xz2lw9bswlssldcvgxmdgwmmdxgwhp-mono-5.20.1.34
error: Unexpected exception on the Lix daemon; this is a bug in Lix.
       We would appreciate a report of the circumstances it happened in at https://git.lix.systems/lix-project/lix.
       nix::ForeignException: [json.exception.type_error.302] type must be string, but is array
Command 'nix --extra-experimental-features 'nix-command flakes' build --print-out-paths '/home/robin/.config/flake#nixosConfigurations."bmo".config.system.build.toplevel' --max-jobs 10 --cores 5 --print-build-logs --no-link' returned non-zero exit status 1.
┏━ Dependency Graph:
┃             ┌─ ⏸ steam-run-fhsenv-rootfs
┃          ┌─ ⏸ steam-run-bwrap
┃       ┌─ ⏸ steam-run
┃       │     ┌─ ⏸ steam-fhsenv-rootfs
┃       │  ┌─ ⏸ steam-bwrap
┃       ├─ ⏸ steam
┃    ┌─ ⏸ system-path
┃    ├─ ⏸ user-units
┃ ┌─ ⏸ etc
┃ ⏸ nixos-system-bmo-25.11.19800101.be9e214

Steps To Reproduce

im not sure

Expected behavior

nix --version output

nix (Lix, like Nix but for lesbians) 2.94.0-devpre20250713_ad10504
System type: x86_64-linux
Additional system types: i686-linux, x86_64-v1-linux, x86_64-v2-linux, x86_64-v3-linux
Features: gc, signed-caches
System configuration file: /etc/nix/nix.conf
User configuration files: /home/robin/.config/nix/nix.conf:/etc/xdg/nix/nix.conf:/home/robin/.nix-profile/etc/xdg/nix/nix.conf:/nix/profile/etc/xdg/nix/nix.conf:/home/robin/.local/state/nix/profile/etc/xdg/nix/nix.conf:/etc/profiles/per-user/robin/etc/xdg/nix/nix.conf:/nix/var/nix/profiles/default/etc/xdg/nix/nix.conf:/run/current-system/sw/etc/xdg/nix/nix.conf
Store directory: /nix/store
State directory: /nix/var/nix
Data directory: /nix/store/m47kid1vmfprm667nfhjsqj71x2j20k9-lix-2.94.0-devpre20250713_ad10504/share

Additional context

## Describe the bug between building steam dependencies, after building `mono` dependency i get the following json error. ``` mono> /nix/store/w1xz2lw9bswlssldcvgxmdgwmmdxgwhp-mono-5.20.1.34/bin/dmcs: interpreter directive changed from "#!/bin/sh" to "/nix/store/94lg0shvsfc845zy8gnflvpqxxiyijbz-bash-interactive-5.2p37/bin/sh" mono> /nix/store/w1xz2lw9bswlssldcvgxmdgwmmdxgwhp-mono-5.20.1.34/bin/xbuild: interpreter directive changed from "#!/bin/sh" to "/nix/store/94lg0shvsfc845zy8gnflvpqxxiyijbz-bash-interactive-5.2p37/bin/sh" mono> stripping (with command strip and flags -S -p) in /nix/store/w1xz2lw9bswlssldcvgxmdgwmmdxgwhp-mono-5.20.1.34/lib /nix/store/w1xz2lw9bswlssldcvgxmdgwmmdxgwhp-mono-5.20.1.34/bin mono> rewriting symlink /nix/store/w1xz2lw9bswlssldcvgxmdgwmmdxgwhp-mono-5.20.1.34/bin/gmcs to be relative to /nix/store/w1xz2lw9bswlssldcvgxmdgwmmdxgwhp-mono-5.20.1.34 error: Unexpected exception on the Lix daemon; this is a bug in Lix. We would appreciate a report of the circumstances it happened in at https://git.lix.systems/lix-project/lix. nix::ForeignException: [json.exception.type_error.302] type must be string, but is array Command 'nix --extra-experimental-features 'nix-command flakes' build --print-out-paths '/home/robin/.config/flake#nixosConfigurations."bmo".config.system.build.toplevel' --max-jobs 10 --cores 5 --print-build-logs --no-link' returned non-zero exit status 1. ┏━ Dependency Graph: ┃ ┌─ ⏸ steam-run-fhsenv-rootfs ┃ ┌─ ⏸ steam-run-bwrap ┃ ┌─ ⏸ steam-run ┃ │ ┌─ ⏸ steam-fhsenv-rootfs ┃ │ ┌─ ⏸ steam-bwrap ┃ ├─ ⏸ steam ┃ ┌─ ⏸ system-path ┃ ├─ ⏸ user-units ┃ ┌─ ⏸ etc ┃ ⏸ nixos-system-bmo-25.11.19800101.be9e214 ``` ## Steps To Reproduce im not sure ## Expected behavior ## `nix --version` output ``` nix (Lix, like Nix but for lesbians) 2.94.0-devpre20250713_ad10504 System type: x86_64-linux Additional system types: i686-linux, x86_64-v1-linux, x86_64-v2-linux, x86_64-v3-linux Features: gc, signed-caches System configuration file: /etc/nix/nix.conf User configuration files: /home/robin/.config/nix/nix.conf:/etc/xdg/nix/nix.conf:/home/robin/.nix-profile/etc/xdg/nix/nix.conf:/nix/profile/etc/xdg/nix/nix.conf:/home/robin/.local/state/nix/profile/etc/xdg/nix/nix.conf:/etc/profiles/per-user/robin/etc/xdg/nix/nix.conf:/nix/var/nix/profiles/default/etc/xdg/nix/nix.conf:/run/current-system/sw/etc/xdg/nix/nix.conf Store directory: /nix/store State directory: /nix/var/nix Data directory: /nix/store/m47kid1vmfprm667nfhjsqj71x2j20k9-lix-2.94.0-devpre20250713_ad10504/share ``` ## Additional context
Owner

Smells like a bad build log line parse possibly, but I thought we fixed those. I'm not sure where else we're parsing JSON. There's definitely some improvements to error reporting that this would suggest (as in, ouch this is hard to debug).

Smells like a bad build log line parse possibly, but I thought we fixed those. I'm not sure where else we're parsing JSON. There's definitely some improvements to error reporting that this would suggest (as in, ouch this is hard to debug).
Owner

This is a foreign exception being thrown, only protected API throws foreign exceptions IIRC? So someone must be calling an unprotected API somehow which still… throw these exceptions?

This is a foreign exception being thrown, only protected API throws foreign exceptions IIRC? So someone must be calling an unprotected API somehow which still… throw these exceptions?
Owner

this is likely the toplevel wrapper in the daemon wrapping a json exception for transport to the client, which is also why there's absolutely no async trace info even though this should be coming out of the worker loop

this is likely the toplevel wrapper in the daemon wrapping a json exception for transport to the client, which is also why there's absolutely no async trace info even though this should be coming out of the worker loop
Sign in to join this conversation.
No milestone
No project
No assignees
4 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: lix-project/lix#918
No description provided.