| 18 Oct 2025 |
matthewcroughan | Why is switch-to-configuration rust when I said system.switch.enableNg = false anyway? | 15:11:29 |
matthewcroughan | and why is it rust when nixos-rebuild-ng is python anyway? | 15:11:59 |
K900 | Because old stc has been removed | 15:12:15 |
matthewcroughan | The log for failure is very very obscure | 15:12:45 |
matthewcroughan | @nix { "action": "setPhase", "phase": "checkPhase" }
Executing cargoCheckHook
Running clippy...
Compiling libc v0.2.174
Compiling pkg-config v0.3.32
Compiling crunchy v0.2.4
Compiling tiny-keccak v2.0.2
Compiling utf8parse v0.2.2
Compiling anstyle-query v1.1.3
Compiling is_terminal_polyfill v1.70.1
Compiling anstyle v1.0.11
Compiling colorchoice v1.0.4
Compiling cfg-if v1.0.1
Compiling clap_lex v0.7.5
Compiling once_cell v1.21.3
Compiling strsim v0.11.1
Checking memchr v2.7.5
Checking powerfmt v0.2.0
Compiling xml-rs v0.8.27
Compiling cfg_aliases v0.2.1
Compiling anyhow v1.0.98
Checking time-core v0.1.4
Checking itoa v1.0.15
Checking hashbrown v0.14.5
Checking num_threads v0.1.7
Compiling anstyle-parse v0.2.7
Checking regex-syntax v0.8.5
Checking num-conv v0.1.0
Checking log v0.4.27
Checking bitflags v2.9.1
Compiling nix v0.30.1
Checking glob v0.3.2
Checking deranged v0.4.0
Compiling anstream v0.6.19
Checking aho-corasick v1.1.3
Compiling clap_builder v4.5.41
Compiling libdbus-sys v0.2.5
Compiling getrandom v0.2.16
Compiling dbus v0.9.7
Compiling const-random-macro v0.1.16
Checking regex-automata v0.4.9
Checking const-random v0.1.18
Checking hostname v0.4.1
Checking time v0.3.41
Checking dlv-list v0.5.2
Checking ordered-multimap v0.7.3
Compiling clap v4.5.41
Checking rust-ini v0.21.2
Checking syslog v7.0.0
Compiling dbus-codegen v0.12.0
Checking regex v1.11.1
Compiling switch-to-configuration v0.1.0 (/build/src)
error: failed to run custom build command for `switch-to-configuration v0.1.0 (/build/src)`
Caused by:
could not execute process `/build/src/target/debug/build/switch-to-configuration-dae2ab357d8c799a/build-script-build` (never executed)
Caused by:
No such file or directory (os error 2)
| 15:12:53 |
matthewcroughan | how get more logs | 15:13:33 |
matthewcroughan | the build.rs isn't verbose enough | 15:13:37 |
Alyssa Ross | strace in nix-shell is a nice easy way | 15:16:53 |
dramforever | i thought macos has that header | 15:24:32 |
emily | so it does | 15:56:25 |
dramforever | oh no, is it wrong dynamic linker or something | 16:00:54 |
dramforever | the build.rs just uses unwrap(), so this isn't even in build.rs | 16:01:35 |
dramforever | unrelatedly, i don't know if this is excessive but it seems justified to: https://github.com/NixOS/nixpkgs/pull/453259 | 16:04:19 |
matthewcroughan | Seems good to me, I don't know how to test the mercurial stuff with google-re2 | 16:05:35 |
matthewcroughan | * Seems good to me, I don't know how to test the mercurial stuff with google-re2 though | 16:05:38 |
matthewcroughan | I mean it might build, but who knows whether it works at runtime with mercurial the same exact way that is expected | 16:06:30 |
dramforever | i checked the code in mercurial and it does runtime checks for feature testing | 16:07:28 |
dramforever | like for example if it's missing test_match it uses match instead | 16:07:42 |
dramforever | oh they even have code that add fb-re2 compat https://phab.mercurial-scm.org/D10284 | 16:11:18 |
dramforever | so mercurial most definitely does not specifically depend on fb-re2 | 16:12:48 |
dramforever | and given that the actual regex works the same under the hood, i really doubt there will be any problems | 16:13:12 |
dramforever | oh they also catch re2 errors and fall back to normal re | 16:13:44 |
matthewcroughan | so they even noticed that the code was bad and then fallback | 16:19:10 |
matthewcroughan | lolwut | 16:19:11 |
matthewcroughan | Bah so close to making a fully switchable system by swapping Nix out for Lix | 16:19:47 |
matthewcroughan | But Lix fails with llvm in ways that nix doesn't | 16:20:01 |
matthewcroughan | FAILED: [code=1] lix/libutil/liblixutil.so.p/processes.cc.o
aarch64-unknown-linux-musl-clang++ -Ilix/libutil/liblixutil.so.p -Ilix/libutil -I../lix/libutil -I. -I.. -flto -fdiagnostics-color=always -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_FAST -fpch-instantiate-templates -include-pch lix/libutil/liblixutil.so.p/precompiled-headers.hh.pch -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=c++23 -O2 -g -DLIX_UR_COMPILER_UWU -fp>
../lix/libutil/processes.cc:249:17: warning: parentheses were disambiguated as redundant parentheses around declaration of variable named 'stdout' [-Wvexing-parse]
249 | std::string stdout;
| ^~~~~~
/nix/store/4w3bhgsi1al9v1jwgk9vc6ch20l7ynba-musl-aarch64-unknown-linux-musl-1.2.5-dev/include/stdio.h:67:16: note: expanded from macro 'stdout'
67 | #define stdout (stdout)
| ^~~~~~~~
../lix/libutil/processes.cc:249:17: note: add a variable name to declare a 'std::string' (aka 'basic_string<char>') initialized with 'stdout'
249 | std::string stdout;
| ^
| varname
/nix/store/4w3bhgsi1al9v1jwgk9vc6ch20l7ynba-musl-aarch64-unknown-linux-musl-1.2.5-dev/include/stdio.h:67:16: note: expanded from macro 'stdout'
67 | #define stdout (stdout)
| ^
../lix/libutil/processes.cc:249:5: note: add enclosing parentheses to perform a function-style cast
249 | std::string stdout;
| ^
| ( )
../lix/libutil/processes.cc:249:17: note: remove parentheses to silence this warning
249 | std::string stdout;
| ^
/nix/store/4w3bhgsi1al9v1jwgk9vc6ch20l7ynba-musl-aarch64-unknown-linux-musl-1.2.5-dev/include/stdio.h:67:16: note: expanded from macro 'stdout'
67 | #define stdout (stdout)
| ^
../lix/libutil/processes.cc:384:25: error: use of undeclared identifier 'SYS_capset'
384 | if (syscall(SYS_capset, &hdr, data)) {
| ^~~~~~~~~~
1 warning and 1 error generated
| 16:20:18 |
dramforever | not really bad, more that fb-re2 didn't do bytes | 16:20:32 |
dramforever | but i guess in a way | 16:20:39 |
dramforever | that means it's python 2 brained | 16:20:49 |