| 5 Nov 2025 |
| aleksi joined the room. | 11:39:05 |
K900 | So uh I just tried to yolo update to staging-next | 17:42:34 |
K900 | And I think something is bork | 17:42:36 |
K900 | Because my Lix does not | 17:42:40 |
K900 | 113/139 lix:installcheck / functional-substitute-truncated-nar FAIL 0.60s exit status 1
>>> MSAN_OPTIONS=halt_on_error=1:abort_on_error=1:print_summary=1:print_stacktrace=1 MESON_BUILD_ROOT=/build/source/build MALLOC_PERTURB_=209 MESON_TEST_ITERATION=1 ASAN_OPTIONS=halt_on_error=1:abort_on_error=1:print_summary=1 UBSAN_OPTIONS=halt_on_error=1:abort_on_error=1:print_summary=1:print_stacktrace=1 /nix/store/bwl0kc22rdai48lhf9jg4x4x240kmg84-python3-3.13.9-env/bin/python3 /build/source/meson/run-test.py substitute-truncated-nar.sh
✀
stdout:
[FAIL]
stderr:
++(common/vars-and-functions.sh:314) trap onError ERR
+(init.sh:6) test -n /build/nix-test/substitute-truncated-nar
+(init.sh:7) test -d /build/nix-test/substitute-truncated-nar
+(init.sh:8) chmod -R u+w /build/nix-test/substitute-truncated-nar
+(init.sh:10) killDaemon
+(common/vars-and-functions.sh:122) [[ '' == '' ]]
+(common/vars-and-functions.sh:123) return
+(init.sh:11) rm -rf /build/nix-test/substitute-truncated-nar
+(init.sh:13) mkdir /build/nix-test/substitute-truncated-nar
+(init.sh:15) mkdir /build/nix-test/substitute-truncated-nar/store
+(init.sh:16) mkdir /build/nix-test/substitute-truncated-nar/var
+(init.sh:17) mkdir -p /build/nix-test/substitute-truncated-nar/var/log/nix/drvs
+(init.sh:18) mkdir /build/nix-test/substitute-truncated-nar/var/nix
+(init.sh:19) mkdir /build/nix-test/substitute-truncated-nar/etc
+(init.sh:21) cat
++(init.sh:21) whoami
+(init.sh:35) cat
+(init.sh:42) nix-store --init
+(init.sh:45) test -e /build/nix-test/substitute-truncated-nar/var/nix/db/db.sqlite
+++(/build/source/build/tests/functional/common/vars-and-functions.sh:314) trap onError ERR
++(common.sh:8) [[ -n '' ]]
+(substitute-truncated-nar.sh:3) BINARY_CACHE=file:///build/nix-test/substitute-truncated-nar/binary-cache
++(substitute-truncated-nar.sh:14) build
++(substitute-truncated-nar.sh:6) nix-build --no-out-link --expr $'derivation {\n name = "text";\n system = builtins.currentSystem;\n builder = "/bin/sh";\n args = [ "-c" "echo some text to make the nar less empty > $out" ];\n }'
this derivation will be built:
/build/nix-test/substitute-truncated-nar/store/xv50b2m33ys1574a8xlkbbxxhkywjpfi-text.drv
building '/build/nix-test/substitute-truncated-nar/store/xv50b2m33ys1574a8xlkbbxxhkywjpfi-text.drv'...
+(substitute-truncated-nar.sh:14) path=/build/nix-test/substitute-truncated-nar/store/phq31ijvr3g0y2wdnq55cmrawaawlf03-text
+(substitute-truncated-nar.sh:15) nix copy --to file:///build/nix-test/substitute-truncated-nar/binary-cache /build/nix-test/substitute-truncated-nar/store/phq31ijvr3g0y2wdnq55cmrawaawlf03-text
warning: you don't have Internet access; disabling some network-dependent features
copying 1 paths...
copying path '/build/nix-test/substitute-truncated-nar/store/phq31ijvr3g0y2wdnq55cmrawaawlf03-text' to 'file:///build/nix-test/substitute-truncated-nar/binary-cache'...
+(substitute-truncated-nar.sh:16) nix-collect-garbage
+(substitute-truncated-nar.sh:18) nar=0c3y7p42issm0ydjilwvk0drv958p4p4d2d6c7y5ksmzmbf7rfhg.nar.zst
+(substitute-truncated-nar.sh:20) '[' -e /build/nix-test/substitute-truncated-nar/binary-cache/nar/0c3y7p42issm0ydjilwvk0drv958p4p4d2d6c7y5ksmzmbf7rfhg.nar.zst ']'
+(substitute-truncated-nar.sh:20) fail 'long nar missing?'
+(/build/source/build/tests/functional/common/vars-and-functions.sh:193) echo 'long nar missing?'
long nar missing?
+(/build/source/build/tests/functional/common/vars-and-functions.sh:194) exit 1
| 17:54:19 |
K900 | This sure smells like curl | 17:54:23 |
K900 | Ah no this is just https://git.lix.systems/lix-project/lix/issues/1027 | 17:56:13 |
K900 | /me updates | 17:56:16 |
kloenk | what is the current state of rust in lix? I see/know there is lix-doc. but is that something that wants to get removed (saw the consumer saying some TODO that I did not fully understand).
end question would be is it acceptable to write other features in rust or should as much as possible still be C++? | 22:34:37 |
K900 | The problem with writing features in Rust is mostly that there's no bindings to the C++ bits | 22:37:47 |
K900 | And the C++ bits are increasingly relying on coroutines via kj which basically don't FFI | 22:38:23 |
K900 | So you could write things in Rust, but those things need to either expose a sync C API surface or communicate over some sort of currently-not-existent RPC mechanism | 22:39:34 |
kloenk | raito nerdsniped me to write a new log format (like the multiline I did years ago). Kinda don't have the time for that, but wonderd if I can just forward all the data to rust and do the actuall handling of all the printing in rust | 22:42:47 |
K900 | Will have to build some sort of RPC layer for this | 22:44:29 |
K900 | Probably | 22:44:40 |
kloenk | From what I remember I think I could do most stuff with just a sync C abi. but also might have changed. but sounds like in general I can look into it (should I find the time for it :)) | 22:45:39 |
| 6 Nov 2025 |
raitobezarius | blocked on ability for rustc to tell us what we need to do wrt linkage to meson | 01:02:06 |
raitobezarius | mostly libstd relinking issues, etc. | 01:02:27 |
raitobezarius | the same set of problems that systemd is running into afaik | 01:02:40 |
raitobezarius | if we go any RPC way, that's akin to do nom | 01:03:22 |
| 7 Nov 2025 |
Qyriad | we think the strat re: Rust may be to just have rustc do the final link | 23:03:21 |
| 8 Nov 2025 |
| byteflavour joined the room. | 07:59:59 |
Rutile (Commentator2.0) feel free to ping | currently working on this cl: https://gerrit.lix.systems/c/lix/+/4533 (specifying remote builders using toml instead of what the actual stuff the current thingy is) but am getting the following cryptic error message, when specifying more than one element in a list:
error: bad machine specification: failed to convert column #3 in a row: 'systemTypes = ["Arch1", "Arch2"]' to 'unsigned int'"
using systemTypes = ["Arch1"] works, but as soon as i add a second value, it throws the error above.. anyone have any clue why and how to fix this? note: am trying to data.get<std::vector<std::string>>(...)
| 19:51:46 |
| 9 Nov 2025 |
| ghpzin (moved to @ghpzin:envs.net) changed their display name from ghpzin to ghpzin (moved to @ghpzin:envs.net). | 15:04:03 |
Sergei Zimmerman (xokdvium) | Is this a known regression? Wasn't too successful at minimizing, maybe somebody could give it a shot:
nix eval "https://api.flakehub.com/f/pinned/HariAmoor-professional/nixos-config/0.1.15%2Brev-9663eb776b745a0eb637320c165729bf6acaac70/018a8b2d-121a-7d71-8db4-666a0ec6c497/source.tar.gz#nixosConfigurations.nixos.config.system.build.toplevel" --no-allow-import-from-derivation --no-eval-cache
Fails on 3ad1af8 with:
error: makeWrapper/makeShellWrapper must be in nativeBuildInputs
note: trace involved the following derivations:
derivation 'home-manager-generation'
derivation 'home-manager-files'
derivation 'home-manager-path'
derivation 'bitwarden-x86_64-unknown-linux-gnu-2023.5.1'
derivation 'npm-install-hook'
derivation 'make-shell-wrapper-hook'
Works on 2.93. Sorry for the flakehub repro, don't have a lot of energy atm to keep minimizing this. I think a tell-tale sign is the fact that the derivation name is prefixed (x86_64-unknown-linux-gnu) as if nixpkgs is cross-compiled to gnu64, but it's not. raitobezarius this must have to do with the thunk equality changes?
| 15:41:12 |
raitobezarius | if cross is involved, that seems likely | 15:43:22 |
raitobezarius | thanks for the report | 15:43:24 |
Sergei Zimmerman (xokdvium) | The issue is that it has no cross is sight | 15:43:37 |
Sergei Zimmerman (xokdvium) | * The issue is that it has no cross in sight | 15:45:32 |
Sergei Zimmerman (xokdvium) | Plain old native config of nixpkgs. | 15:45:47 |