| 26 Feb 2026 |
alexfmpe | in https://github.com/NixOS/nixpkgs/pull/493742 | 03:11:55 |
Randy Eckenrode | You need to update the Darwin stdenv’s LLVM version. | 03:11:55 |
Randy Eckenrode | There’s a comment at the top. | 03:12:11 |
Randy Eckenrode | It’s necessary to make sure
overrides work right. | 03:12:25 |
alexfmpe | oh derp, I kept searching for stray llvmPackages_21 | 03:13:10 |
alexfmpe | can't we lib.versions.major llvm.version instead? | 03:14:21 |
alexfmpe | * can't we llvmVersion = lib.versions.major llvm.version instead? | 03:14:43 |
Randy Eckenrode | We don’t have a package set at that point, and we can’t get the version in the stage for obvious reasons. | 03:14:59 |
Randy Eckenrode | llvm is llvmPackages.llvm, which is llvmPackages_XX.llvm. Trying to overlay llvmPackages_${lib.versions.major llvm.version} will cause an infinite recursion. | 03:17:07 |
Randy Eckenrode | It worked before because the stdenv did it backwards. It defined the overlay for the unversioned llvmPackages then added a versioned one at the end. | 03:18:16 |
Randy Eckenrode | But that’s not how the package sets are defined normally. | 03:18:58 |
alexfmpe | welp, 300 rebuilds just for hello | 03:19:13 |
alexfmpe | also doing ispc and ghc | 03:19:19 |
alexfmpe | going to leave it overnight, anything else interesting to try? | 03:19:25 |
Randy Eckenrode | Something using Boost? Chromium or Qt Web Engine. | 03:19:56 |
Randy Eckenrode | Maybe Node. | 03:20:05 |
alexfmpe | huh I see 2 llvm 22 in the dep chain, that expected? | 03:20:29 |
Randy Eckenrode | Yes. | 03:20:41 |
Randy Eckenrode | First one is built with the bootstrap tools. Second one is rebuilt with Clang 22. | 03:21:10 |
Randy Eckenrode | At least the LLVM tests are only tun once. | 03:22:04 |
Randy Eckenrode | * | 03:22:13 |
Randy Eckenrode | Second one also has dependencies built by Clang 22 and not the bootstrap tools. | 03:23:27 |
alexfmpe | hmm building llvm_22 with 21 as default yields https://github.com/NixOS/nixpkgs/pull/493742#issuecomment-3960673424 | 03:23:31 |
alexfmpe | should I try 22.1.0-rc3 with 21, or 22 with 22 | 03:23:56 |
alexfmpe | guess the later | 03:24:07 |
alexfmpe | hope it doesn't hit the same test failure | 03:24:22 |
Randy Eckenrode | IIRC some new tests aren’t getting DYLD_LIBRARY_PATH set up to find the required dylibs in the build folder instead of in $lib. | 03:24:52 |
Randy Eckenrode | I ran into something similar with Swift’s LLVM fork, but I just disabled tests for now because I’d rather prioritize getting Swift updated. | 03:29:30 |
Randy Eckenrode | * | 03:29:41 |
Lun | i think we just want to turn off the one failing test there (llvm 22 pr), commented that. it's a regression test for specifically empty env array so if we patch it to pass DYLD_LIBRARY_PATH it isn't even testing the thing it wants to test any more, it kinda just doesn't work for us. | 04:23:40 |