| 16 Oct 2025 |
matthewcroughan | nixos/modules/system/boot/systemd/initrd.nix- "${pkgs.glibc}/lib/libnss_files.so.2" | 19:08:27 |
matthewcroughan | ah yeah ElvishJerricco already found this yesterday | 19:08:33 |
matthewcroughan | Haha! Hell yeah | 19:23:41 |
matthewcroughan | I fixed that, and now I have a native musl VM running :) | 19:23:48 |
matthewcroughan | And not just musl, but llvm built too | 19:24:00 |
matthewcroughan | Actually, musl fails with the oddest error ever | 19:24:24 |
matthewcroughan | * Actually, musl native fails with the oddest error ever | 19:24:27 |
matthewcroughan | error: Cannot build '/nix/store/sbj58dyg6cbhzsxx2kbwy9ry0jmwawi5-perl5.40.0-DBI-1.644.drv'.
┃ Reason: builder failed with exit code 2.
┃ Output paths:
┃ /nix/store/4i2c9hd1q0pbk3yfmvbpczwjc7klvd19-perl5.40.0-DBI-1.644
┃ /nix/store/w3vb6ih35x1ag2vfdzrhhiab0ygczin2-perl5.40.0-DBI-1.644-devdoc
┃ Last 25 log lines:
┃ > rm -f blib/arch/auto/DBI/DBI.so
┃ > gcc -shared -O2 -L/nix/store/c7f4fl560x8sr8znnib46c1ng8shxlvi-musl-1.2.5/lib -fstack-protector-strong DBI.o -o blib/arch/auto/DBI/DBI.so \
┃ > \
┃ >
┃ > chmod 755 blib/arch/auto/DBI/DBI.so
┃ > "/nix/store/wz6dsqy2ylsa87nc93rhaywnixd1rxhj-perl-5.40.0/bin/perl" "-Iblib/arch" "-Iblib/lib" dbilogstrip.PL dbilogstrip
┃ > Extracted dbilogstrip from dbilogstrip.PL with variable substitutions.
┃ > "/nix/store/wz6dsqy2ylsa87nc93rhaywnixd1rxhj-perl-5.40.0/bin/perl" "-Iblib/arch" "-Iblib/lib" dbiprof.PL dbiprof
┃ > Extracted dbiprof from dbiprof.PL with variable substitutions.
┃ > "/nix/store/wz6dsqy2ylsa87nc93rhaywnixd1rxhj-perl-5.40.0/bin/perl" "-Iblib/arch" "-Iblib/lib" dbiproxy.PL dbiproxy
┃ > Extracted dbiproxy from dbiproxy.PL with variable substitutions.
┃ > cp dbilogstrip blib/script/dbilogstrip
┃ > "/nix/store/wz6dsqy2ylsa87nc93rhaywnixd1rxhj-perl-5.40.0/bin/perl" -MExtUtils::MY -e 'MY->fixin(shift)' -- blib/script/dbilogstrip
┃ > cp dbiprof blib/script/dbiprof
┃ > "/nix/store/wz6dsqy2ylsa87nc93rhaywnixd1rxhj-perl-5.40.0/bin/perl" -MExtUtils::MY -e 'MY->fixin(shift)' -- blib/script/dbiprof
┃ > cp dbiproxy blib/script/dbiproxy
┃ > "/nix/store/wz6dsqy2ylsa87nc93rhaywnixd1rxhj-perl-5.40.0/bin/perl" -MExtUtils::MY -e 'MY->fixin(shift)' -- blib/script/dbiproxy
┃ > Manifying 3 pod documents
┃ > Manifying 49 pod documents
┃ > Running phase: checkPhase
┃ > check flags: SHELL=/nix/store/pgpkqmkb27m3m16c58ls6387vd6ah0k0-bash-5.3p3/bin/bash VERBOSE=y test
┃ > "/nix/store/wz6dsqy2ylsa87nc93rhaywnixd1rxhj-perl-5.40.0/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- DBI.bs blib/arch/auto/DBI/DBI.bs 644
┃ > PERL_DL_NONLAZY=1 "/bin/perl" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
┃ > /nix/store/pgpkqmkb27m3m16c58ls6387vd6ah0k0-bash-5.3p3/bin/bash: line 1: /bin/perl: No such file or directory
┃ > make: *** [Makefile:1435: test_dynamic] Error 127
┃ For full logs, run:
┃ nix log /nix/store/sbj58dyg6cbhzsxx2kbwy9ry0jmwawi5-perl5.40.0-DBI-1.644.drv
| 19:24:38 |
matthewcroughan | I guess my perl overlay does not work as expected | 19:29:35 |
matthewcroughan | Yeah it doesn't | 19:29:52 |
dramforever | i can't reproduce the "ld" thing | 19:31:18 |
dramforever | with or without my patch | 19:31:23 |
dramforever | so i have no idea what went wrong | 19:31:35 |
matthewcroughan | id thing? | 19:35:05 |
dramforever | this | 19:35:51 |
matthewcroughan | oh, ld | 19:35:58 |
matthewcroughan | misread | 19:35:59 |
dramforever | do you have the full logs of that | 19:37:29 |
matthewcroughan | yeah here's one https://hercules-ci.com/accounts/github/MatthewCroughan/derivations/%2Fnix%2Fstore%2F6xi1bfv9ndvsqxl4d12pf69i9zf78r0y-musl-static-aarch64-unknown-linux-musl-1.2.5.drv/log?via-job=12eff0bd-584c-4702-a61a-6e8f2964d6be | 19:38:33 |
matthewcroughan | dramforever:
| 20:20:36 |
matthewcroughan | * dramforever:
> FAILED: [code=1] libnixexpr.so
┃ > aarch64-unknown-linux-musl-g++ -o libnixexpr.so libnixexpr.so.p/meson-generated_.._parser-tab.cc.o libnixexpr.so.p/meson-generated_.._lexer-tab.cc.o libnixexpr.so.p/attr-path.cc.o libnixexpr.so.p/attr-set.cc.o libnixexpr.so.p/eval-cache.cc.o libnixexpr.so.p/eval-error.cc.o libnixexpr.so.p/eval-gc.cc.o libnixexpr.so.p/eval-profiler-settings.cc.o libnixexpr.so.p/eval-p…
┃ > /nix/store/bifvnbzdcmm08kmvwj655a5dsyrh27l6-fortify-headers-1.1alpine3/include/stdio.h: In function '__to_xstring.constprop':
┃ > /nix/store/bifvnbzdcmm08kmvwj655a5dsyrh27l6-fortify-headers-1.1alpine3/include/stdio.h:80:28: error: inlining failed in call to 'always_inline' 'vsnprintf': function body can be overwritten at link time
┃ > 80 | _FORTIFY_FN(vsnprintf) int vsnprintf(char * _FORTIFY_POS0 __s, size_t __n,
┃ > | ^
┃ > /nix/store/v458d50aj6bcw0a0zzvkyiixyfakcz40-aarch64-unknown-linux-musl-gcc-14.3.0/include/c++/14.3.0/ext/string_conversions.h:113:32: note: called from here
┃ > 113 | const int __len = __convf(__s, __n, __fmt, __args);
┃ > | ^
┃ > make: *** [/build/ccCwh0jE.mk:86: /build/cccuMbHY.ltrans28.ltrans.o] Error 1
┃ > make: *** Waiting for unfinished jobs....
┃ > lto-wrapper: fatal error: make returned 2 exit status
┃ > compilation terminated.
┃ > /nix/store/pyfh6ldzdr8m3xkpxi60cjg6abha8r7i-aarch64-unknown-linux-musl-binutils-2.44/bin/aarch64-unknown-linux-musl-ld: error: lto-wrapper failed
┃ > collect2: error: ld returned 1 exit status
┃ > ninja: build stopped: subcommand failed.
┃ For full logs, run:
┃ nix log /nix/store/82aawiy1fids0wp7n9y8d18issf6d00a-nix-expr-aarch64-unknown-linux-musl-2.31.2.drv
`1``
| 20:20:40 |
matthewcroughan | * dramforever:
> FAILED: [code=1] libnixexpr.so
┃ > aarch64-unknown-linux-musl-g++ -o libnixexpr.so libnixexpr.so.p/meson-generated_.._parser-tab.cc.o libnixexpr.so.p/meson-generated_.._lexer-tab.cc.o libnixexpr.so.p/attr-path.cc.o libnixexpr.so.p/attr-set.cc.o libnixexpr.so.p/eval-cache.cc.o libnixexpr.so.p/eval-error.cc.o libnixexpr.so.p/eval-gc.cc.o libnixexpr.so.p/eval-profiler-settings.cc.o libnixexpr.so.p/eval-p…
┃ > /nix/store/bifvnbzdcmm08kmvwj655a5dsyrh27l6-fortify-headers-1.1alpine3/include/stdio.h: In function '__to_xstring.constprop':
┃ > /nix/store/bifvnbzdcmm08kmvwj655a5dsyrh27l6-fortify-headers-1.1alpine3/include/stdio.h:80:28: error: inlining failed in call to 'always_inline' 'vsnprintf': function body can be overwritten at link time
┃ > 80 | _FORTIFY_FN(vsnprintf) int vsnprintf(char * _FORTIFY_POS0 __s, size_t __n,
┃ > | ^
┃ > /nix/store/v458d50aj6bcw0a0zzvkyiixyfakcz40-aarch64-unknown-linux-musl-gcc-14.3.0/include/c++/14.3.0/ext/string_conversions.h:113:32: note: called from here
┃ > 113 | const int __len = __convf(__s, __n, __fmt, __args);
┃ > | ^
┃ > make: *** [/build/ccCwh0jE.mk:86: /build/cccuMbHY.ltrans28.ltrans.o] Error 1
┃ > make: *** Waiting for unfinished jobs....
┃ > lto-wrapper: fatal error: make returned 2 exit status
┃ > compilation terminated.
┃ > /nix/store/pyfh6ldzdr8m3xkpxi60cjg6abha8r7i-aarch64-unknown-linux-musl-binutils-2.44/bin/aarch64-unknown-linux-musl-ld: error: lto-wrapper failed
┃ > collect2: error: ld returned 1 exit status
┃ > ninja: build stopped: subcommand failed.
┃ For full logs, run:
┃ nix log /nix/store/82aawiy1fids0wp7n9y8d18issf6d00a-nix-expr-aarch64-unknown-linux-musl-2.31.2.drv
| 20:20:43 |
matthewcroughan | * dramforever:
> FAILED: [code=1] libnixexpr.so
┃ > aarch64-unknown-linux-musl-g++ -o libnixexpr.so libnixexpr.so.p/meson-generated_.._parser-tab.cc.o libnixexpr.so.p/meson-generated_.._lexer-tab.cc.o libnixexpr.so.p/attr-path.cc.o libnixexpr.so.p/attr-set.cc.o libnixexpr.so.p/eval-cache.cc.o libnixexpr.so.p/eval-error.cc.o libnixexpr.so.p/eval-gc.cc.o libnixexpr.so.p/eval-profiler-settings.cc.o libnixexpr.so.p/eval-p…
┃ > /nix/store/bifvnbzdcmm08kmvwj655a5dsyrh27l6-fortify-headers-1.1alpine3/include/stdio.h: In function '__to_xstring.constprop':
┃ > /nix/store/bifvnbzdcmm08kmvwj655a5dsyrh27l6-fortify-headers-1.1alpine3/include/stdio.h:80:28: error: inlining failed in call to 'always_inline' 'vsnprintf': function body can be overwritten at link time
┃ > 80 | _FORTIFY_FN(vsnprintf) int vsnprintf(char * _FORTIFY_POS0 __s, size_t __n,
┃ > | ^
┃ > /nix/store/v458d50aj6bcw0a0zzvkyiixyfakcz40-aarch64-unknown-linux-musl-gcc-14.3.0/include/c++/14.3.0/ext/string_conversions.h:113:32: note: called from here
┃ > 113 | const int __len = __convf(__s, __n, __fmt, __args);
┃ > | ^
┃ > make: *** [/build/ccCwh0jE.mk:86: /build/cccuMbHY.ltrans28.ltrans.o] Error 1
┃ > make: *** Waiting for unfinished jobs....
┃ > lto-wrapper: fatal error: make returned 2 exit status
┃ > compilation terminated.
┃ > /nix/store/pyfh6ldzdr8m3xkpxi60cjg6abha8r7i-aarch64-unknown-linux-musl-binutils-2.44/bin/aarch64-unknown-linux-musl-ld: error: lto-wrapper failed
┃ > collect2: error: ld returned 1 exit status
┃ > ninja: build stopped: subcommand failed.
┃ For full logs, run:
┃ nix log /nix/store/82aawiy1fids0wp7n9y8d18issf6d00a-nix-expr-aarch64-unknown-linux-musl-2.31.2.drv
This is what I get next
| 20:20:53 |
matthewcroughan | this is for gnu->musl | 20:21:06 |
matthewcroughan | Woo | 20:53:45 |
matthewcroughan | user: matthew 🌐 m2u in nixos-musl on refactor [!?]
✦ ❯ nix build .#nixosConfigurations.{musl-llvm,musl,gnu-musl,gnu-musl-llvm}.config.system.build.vm --keep-going
warning: Git tree '/home/matthew/git/nixos-musl' is dirty
Finished at 20:53:14 after 0s
user: matthew 🌐 m2u in nixos-musl on refactor [!?]
✦ ❯ ls result*
result:
bin system
result-1:
bin system
result-2:
bin system
result-3:
bin system
| 20:53:47 |
matthewcroughan | all 4 combos, great | 20:53:52 |
matthewcroughan | dramforever: very close but.. | 21:44:06 |
matthewcroughan | /nix/store/47djz04prfj1q20vaywic4kp92dk8gng-vm-test-run-musl-vmtest-aarch64-unknown-linux-musl
┏━ 11 Errors:
⋮
┃ /nix/store/a48vvnqlfmvbc5nwwhy0dw1cxlxl6y1v-musl-aarch64-unknown-linux-musl-1.2.5-bin
┃ /nix/store/jfqbx7483gva8nvch6l33idsqxvcfkdf-musl-aarch64-unknown-linux-musl-1.2.5-debug
┃ Last 25 log lines:
┃ > The next patch would create the file src/ldso/riscv64/dlopen.s,
┃ > which already exists! Assume -R? [n]
┃ > Apply anyway? [n]
┃ > Skipping patch.
┃ > 1 out of 1 hunk ignored
┃ > The next patch would create the file src/ldso/s390x/dlopen.s,
┃ > which already exists! Assume -R? [n]
┃ > Apply anyway? [n]
┃ > Skipping patch.
┃ > 1 out of 1 hunk ignored
┃ > The next patch would create the file src/ldso/sh/dlopen.s,
┃ > which already exists! Assume -R? [n]
┃ > Apply anyway? [n]
┃ > Skipping patch.
┃ > 1 out of 1 hunk ignored
┃ > The next patch would create the file src/ldso/x32/dlopen.s,
┃ > which already exists! Assume -R? [n]
┃ > Apply anyway? [n]
┃ > Skipping patch.
┃ > 1 out of 1 hunk ignored
┃ > The next patch would create the file src/ldso/x86_64/dlopen.s,
┃ > which already exists! Assume -R? [n]
┃ > Apply anyway? [n]
┃ > Skipping patch.
┃ > 1 out of 1 hunk ignored
┃ For full logs, run:
┃ nix log /nix/store/6pysjc0czjba7zrzx2jaflps7k717vmv-musl-aarch64-unknown-linux-musl-1.2.5.drv
| 21:44:08 |
matthewcroughan | Your patch somehow causes the patch to fail, when vm tests are invoked | 21:44:18 |