| 15 Oct 2025 |
matthewcroughan | interesting though | 21:26:24 |
matthewcroughan | the llvm cross compiled closure is much smaller | 21:26:30 |
| 16 Oct 2025 |
matthewcroughan | DBI-aarch64-linux> /nix/store/bvp4jwn1ibkjh7yhr2mlcxxd908y4x4v-perl-5.40.0/lib/perl5/5.40.0/aarch64-linux-thread-multi/CORE/perl.h:3358:22: error: unknown type name 'off64_t'; did you mean 'off_t'?
DBI-aarch64-linux> 3358 | # define Off_t off64_t
DBI-aarch64-linux> | ^~~~~~~
DBI-aarch64-linux> /nix/store/bvp4jwn1ibkjh7yhr2mlcxxd908y4x4v-perl-5.40.0/lib/perl5/5.40.0/aarch64-linux-thread-multi/CORE/perlio.h:252:15: note: in expansion of macro 'Off_t'
DBI-aarch64-linux> 252 | PERL_CALLCONV Off_t PerlIO_tell(PerlIO *);
| 01:20:58 |
matthewcroughan | So much perl in nix | 01:21:24 |
matthewcroughan | FAILED: [code=1] libnixutil.so.p/unix_file-descriptor.cc.o
aarch64-unknown-linux-musl-clang++ -Ilibnixutil.so.p -I. -I.. -Iinclude -I../include -I../widecharwidth -Ilinux/include -I../linux/include -Iunix -I../unix -Iunix/include -I../unix/include -I/nix/store/2kq21fj8mcqbb2dk078kdkz0a4slp9y9-libarchive-aarch64-unknown-linux-musl-3.8.1-dev/include -I/nix/store/15nrd5ki3mn2wky0879jq6p8v3nl3ins-nlohmann_json-aarch64-unknown-linux-musl-3.12.>
../unix/file-descriptor.cc:174:20: error: use of undeclared identifier 'SYS_close_range'; did you mean 'unix_close_range'?
174 | return syscall(SYS_close_range, first, last, (unsigned int) flags);
| ^~~~~~~~~~~~~~~
| unix_close_range
../unix/file-descriptor.cc:171:12: note: 'unix_close_range' declared here
171 | static int unix_close_range(unsigned int first, unsigned int last, int flags)
| ^
../unix/file-descriptor.cc:174:12: error: no matching function for call to 'syscall'
174 | return syscall(SYS_close_range, first, last, (unsigned int) flags);
| ^~~~~~~
/nix/store/4w3bhgsi1al9v1jwgk9vc6ch20l7ynba-musl-aarch64-unknown-linux-musl-1.2.5-dev/include/unistd.h:180:6: note: candidate function not viable: no known conversion from 'int (unsigned int, unsigned int, int)' to 'long' for 1st argument
180 | long syscall(long, ...);
| ^ ~~~~
2 errors generated.
| 02:31:03 |
matthewcroughan | Seems like an easy fix | 02:31:08 |
dramforever | matthewcroughan: do you want to give this a try? https://github.com/bminor/musl/compare/master...dramforever:musl:dlopen-use-rpath-of-caller-dso | 04:54:21 |
matthewcroughan | for kmod stuff? | 04:54:39 |
dramforever | yeah | 04:54:55 |
dramforever | or just in general | 04:55:06 |
matthewcroughan | I really nerd sniped you that hard huh? :P | 04:55:22 |
dramforever | but it does mean you have to rebuild musl to patch this in, and then rebuild it again if that doesn't work... | 04:55:27 |
dramforever | no it's fairly easy, i'm surprised i've never heard of anyone complain | 04:55:56 |
dramforever | the biggest change in my patch was moving the addr2dso function up a little | 04:56:10 |
matthewcroughan | :q | 04:56:31 |
matthewcroughan | oops | 04:56:35 |
matthewcroughan | Apparently I can't just override musl | 04:59:26 |
matthewcroughan | infinite recursion | 04:59:38 |
matthewcroughan | musl = super.musl.overrideAttrs {
src = super.fetchFromGitHub {
owner = "dramforever";
repo = "musl";
rev = "0f746cb7a6a1eff157ff90d48bc1661d2612b670";
hash = "";
};
};
| 04:59:58 |
matthewcroughan | in an overlay, this doesn't work | 05:00:01 |
dramforever | just vendor the patch or something | 05:01:50 |
dramforever | https://github.com/bminor/musl/compare/master...dramforever:musl:dlopen-use-rpath-of-caller-dso.patch | 05:02:27 |
matthewcroughan | nice, clever | 05:04:11 |
matthewcroughan | https://hercules-ci.com/github/MatthewCroughan/nixos-musl/jobs/37 | 05:05:02 |
matthewcroughan | We shall see! | 05:05:03 |
matthewcroughan | * https://hercules-ci.com/github/MatthewCroughan/nixos-musl/jobs/38 | 05:05:19 |
matthewcroughan | The above job is going to build a vm test of musl | 05:05:28 |
matthewcroughan | the vm test will just echo hello | 05:05:49 |
matthewcroughan | There's an attribute legacyPackages.aarch64-linux.vmtests which contains each nixosConfiguration | 05:07:40 |
matthewcroughan | I gotta sleep now though | 05:30:21 |