!ayCRiZriCVtuCUpeLp:nixos.org

Nix Cross Compiling

557 Members
119 Servers

Load older messages


SenderMessageTime
17 Oct 2025
@matthewcroughan:defenestrate.itmatthewcroughanBecause I don't know anything04:14:56
@matthewcroughan:defenestrate.itmatthewcroughanI especially don't know what "correct semantics" are, or what "correctness" is04:15:26
@matthewcroughan:defenestrate.itmatthewcroughanI'm skeptical of correctness though04:15:31
@elvishjerricco:matrix.orgElvishJerriccoI made that very clear04:15:36
@elvishjerricco:matrix.orgElvishJerriccoin this case, the only thing that matters is that the libc is glibc04:15:44
@elvishjerricco:matrix.orgElvishJerricconot gnu, not musl, not anything else04:15:55
@elvishjerricco:matrix.orgElvishJerriccoat this point I've explained myself five times04:16:10
@elvishjerricco:matrix.orgElvishJerriccoso I'm done04:16:13
@matthewcroughan:defenestrate.itmatthewcroughan For me, in my mind, isMusl and libc == musl evaluates to true 04:16:59
@elvishjerricco:matrix.orgElvishJerricco == musl is not the right semantics 04:17:09
@elvishjerricco:matrix.orgElvishJerriccoas I already explained04:17:12
@matthewcroughan:defenestrate.itmatthewcroughanI was unsure and still kind of am unsure, in what circumstances this can be untrue 04:17:12
@elvishjerricco:matrix.orgElvishJerriccoliterally04:17:17
@elvishjerricco:matrix.orgElvishJerricco literally the only correct situation for that condition is if the libc is glibc 04:17:30
@elvishjerricco:matrix.orgElvishJerricconot "not musl"04:17:33
@matthewcroughan:defenestrate.itmatthewcroughanI mean chill, if you don't want to explain this to me you don't have to04:17:35
@matthewcroughan:defenestrate.itmatthewcroughan But I'm in lib/systems/inspect.nix right now, and trying to figure it out 04:17:45
@matthewcroughan:defenestrate.itmatthewcroughan
    isMusl =
      with abis;
      map (a: { abi = a; }) [
        musl
        musleabi
        musleabihf
        muslabin32
        muslabi64
      ];

04:17:51
@elvishjerricco:matrix.orgElvishJerriccoIs this clear? There are other libcs than glibc or musl04:19:44
@matthewcroughan:defenestrate.itmatthewcroughanLike, however complex this is, it can't evaluate to anything other than the libc being equal to musl though can it?04:19:58
@matthewcroughan:defenestrate.itmatthewcroughan
nix-repl> lib.systems.parse.abis
{
  android = { ... };
  androideabi = { ... };
  eabi = { ... };
  eabihf = { ... };
  elf = { ... };
  gnu = { ... };
  gnuabi64 = { ... };
  gnuabielfv1 = { ... };
  gnuabielfv2 = { ... };
  gnuabin32 = { ... };
  gnueabi = { ... };
  gnueabihf = { ... };
  msvc = { ... };
  musl = { ... };
  muslabi64 = { ... };
  muslabin32 = { ... };
  musleabi = { ... };
  musleabihf = { ... };
  uclibc = { ... };
  uclibceabi = { ... };
  uclibceabihf = { ... };
  unknown = { ... };
}
04:20:07
@matthewcroughan:defenestrate.itmatthewcroughan like, yes, there are crazy combos, but musl always means the libc is musl right? 04:20:21
@elvishjerricco:matrix.orgElvishJerricco yes, but like I've said already, the condition is not about musl 04:20:53
@elvishjerricco:matrix.orgElvishJerriccomusl / glibc is not a binary04:20:58
@elvishjerricco:matrix.orgElvishJerriccoit's not one or the other04:21:00
@elvishjerricco:matrix.orgElvishJerriccothe thing we care about here is if the libc is literally glibc. Is it clear that "not musl" is not equal to "is glibc"?04:21:22
@elvishjerricco:matrix.orgElvishJerriccobecause "is glibc" is the correct semantics04:21:27
@matthewcroughan:defenestrate.itmatthewcroughan I wonder now how hostPlatform.libc even gets defined 04:21:49
@elvishjerricco:matrix.orgElvishJerriccohttps://github.com/NixOS/nixpkgs/blob/ff84020dd9cc87bab5c2675d62e555afeb09304f/lib/systems/default.nix#L12004:22:09
@matthewcroughan:defenestrate.itmatthewcroughan like what comes first, isMusl = or libc = 04:22:11

Show newer messages


Back to Room ListRoom Version: 6