| 17 Dec 2024 |
Randy Eckenrode | Isn’t it used in all-packages.nix to pick the libc package? | 19:55:47 |
Randy Eckenrode | If only setting that were easy. Darwin gave up on it with the SDK rework. There are too many ways to capture the wrong libc version with multiple SDKs. | 19:56:38 |
Tristan Ross | In reply to @reckenrode:matrix.org Isn’t it used in all-packages.nix to pick the libc package? I'm not sure | 21:03:28 |
Tristan Ross | I might have to probe it later lol | 21:03:49 |
Artturin | It is | 22:07:48 |
Artturin | https://github.com/NixOS/nixpkgs/blob/c91d5881387fe13e0e7b361861b099a6f52b2c03/pkgs/top-level/all-packages.nix#L9194 | 22:11:32 |
Philip Taron (UTC-8) | I'm flexible. I would like to make the post on Discourse though. I see no one else has edited. I am happy to do that. | 22:49:15 |
Tristan Ross | In reply to @artturin:matrix.org https://github.com/NixOS/nixpkgs/blob/c91d5881387fe13e0e7b361861b099a6f52b2c03/pkgs/top-level/all-packages.nix#L9194 Oh, that's easy to hook up | 22:55:06 |
Artturin | Its only cross, native is determined in the bootstrap | 23:01:27 |
Tristan Ross | I might add a isDefaultToolchain attribute to detect if the toolchain, linker, bintools, libc, and cc options are the default. It'll make it easy to handle bootstrapping LLVM since it'll ensure nothing is switched weirdly. | 23:55:18 |
| 18 Dec 2024 |
| @dmiskovic:matrix.org joined the room. | 19:38:09 |
| 19 Dec 2024 |
| Alexandros Liarokapis joined the room. | 14:56:31 |
Alexandros Liarokapis | Hi All. Is this correct?
let mapOffset(h, t, i) = i + (if i <= 0 then h else t - 1)
dep(h0, t0, A, B)
propagated-dep(h1, t1, B, C)
h0 + h1 in {-1, 0, 1}
h0 + t1 in {-1, 0, -1}
----------------------------- Take immediate dependencies' propagated dependencies
propagated-dep(mapOffset(h0, t0, h1),
mapOffset(h0, t0, t1),
A, C)
``` ?
| 14:56:48 |
Alexandros Liarokapis | shouldn't the final line be just dep instead of propagated-dep ? | 14:57:01 |
Alexandros Liarokapis | because otherwise I think a propagatedBuildInputs would be propagated across a whole buildInputs chain. | 14:57:25 |
Alexandros Liarokapis | * Hi All. Is this correct?
let mapOffset(h, t, i) = i + (if i <= 0 then h else t - 1)
dep(h0, t0, A, B)
propagated-dep(h1, t1, B, C)
h0 + h1 in {-1, 0, 1}
h0 + t1 in {-1, 0, -1}
----------------------------- Take immediate dependencies' propagated dependencies
propagated-dep(mapOffset(h0, t0, h1),
mapOffset(h0, t0, t1),
A, C)
| 14:57:47 |
Alexandros Liarokapis | eg if propagated-dep(0, 1, C, D), dep(0, 1, B, C), dep(0, 1, A, B) then this results in propagated-dep(0, 1, B, D), propagated-dep(0, 1, A, D) | 15:02:06 |
| @yannis:mozilla.org changed their display name from yannis to yannis|pto. | 21:24:10 |
| 20 Dec 2024 |
| 🐰 xiaoxiangmoe joined the room. | 13:59:03 |
Tristan Ross | Since LLVM is getting UEFI toolchain support, we might be able to get a cross compiled stdenv set up for that. It would have to use LLVM libc though. | 19:55:36 |
Philip Taron (UTC-8) | Good news for https://github.com/NixOS/nixpkgs/pull/353050 | 20:05:35 |
Tristan Ross | In reply to @philiptaron:matrix.org Good news for https://github.com/NixOS/nixpkgs/pull/353050 That's what I had in mind | 20:14:42 |
Tristan Ross | pkgsCross.x86_64-uefi will be a thing | 20:15:06 |
K900 | It really shouldn't be | 20:15:40 |
K900 | Building arbitrary things for a UEFI target is generally not useful | 20:15:48 |
Tristan Ross | True but it's possible using LLVM lol | 20:16:19 |
K900 | It isn't | 20:16:41 |
K900 | If you think just having a compiler target allows you to compile arbitrary things, that's not the case | 20:17:01 |
K900 | And neither is having a libc, really | 20:17:09 |
Tristan Ross | A lot of things would require patches to work but at least having a toolchain would be possible | 20:18:03 |