!lymvtcwDJ7ZA9Npq:lix.systems

Lix Development

422 Members
(Technical) development of Lix, the package manager, a Nix implementation. Please be mindful of ongoing technical conversations in this channel.143 Servers

Load older messages


SenderMessageTime
26 Jul 2025
@raitobezarius:matrix.orgraitobezariusdo it whenever it's convenient for you01:47:25
@xokdvium:matrix.orgSergei Zimmerman (xokdvium) Qyriad: 12:02:58
@xokdvium:matrix.orgSergei Zimmerman (xokdvium) * Qyriad: What's up with the meson host_platform and cpu names? It's all very wonky and slightly broken I think (in both lix and cppnix). 12:03:31
@xokdvium:matrix.orgSergei Zimmerman (xokdvium) The default system double in currentSystem is very f'ed up on 32 bit arm, mips, powerpc e.t.c. It's really a viscous cycle where nixpkgs determines the values in host_platform and the build system doesn't really use those correctly.
E.g. armv7l, armv6l translates to host_platform.cpu_family() = 'arm' in nixpkgs (as it rightly should). By the system double should differentiate between those, so it should look at cpu_name as well.
12:07:40
@xokdvium:matrix.orgSergei Zimmerman (xokdvium) * The default system double in currentSystem is very f'ed up on 32 bit arm, mips, powerpc e.t.c. It's really a viscous cycle where nixpkgs determines the values in host_platform and the build system doesn't really use those correctly.
E.g. armv7l, armv6l translates to host_platform.cpu_family() = 'arm' in nixpkgs (as it rightly should). But the system double should differentiate between those, so it should look at cpu_name as well.
12:08:59
@qyriad:katesiria.orgQyriad it probably should 12:35:28
@qyriad:katesiria.orgQyriad that logic was translated directly from the old buildsystem 12:35:40
@qyriad:katesiria.orgQyriad and at the time most of those targets didn't work anyway for Nixpkgs broken package reasons 12:36:19
@xokdvium:matrix.orgSergei Zimmerman (xokdvium) Yeah, though is there any reason not to use hostPlatform.system when building nix with nix? 12:38:34
@xokdvium:matrix.orgSergei Zimmerman (xokdvium) * Yeah, though is there any reason not to use hostPlatform.system when building nix/lix in nixpkgs? 12:38:56
@qyriad:katesiria.orgQyriad Probably not? Have you tried it? Does anything break? 12:39:19
@xokdvium:matrix.orgSergei Zimmerman (xokdvium) It should just work. I'll try to get the manual logic in meson to align with what https://github.com/NixOS/nixpkgs/blob/master/pkgs/build-support/lib/meson.nix does (for the sake of other distros building nix). But for consistency lib.systems should just be the source of truth IMO. 12:41:20
@emilazy:matrix.orgemily
In reply to @xokdvium:matrix.org
The default system double in currentSystem is very f'ed up on 32 bit arm, mips, powerpc e.t.c. It's really a viscous cycle where nixpkgs determines the values in host_platform and the build system doesn't really use those correctly.
E.g. armv7l, armv6l translates to host_platform.cpu_family() = 'arm' in nixpkgs (as it rightly should). By the system double should differentiate between those, so it should look at cpu_name as well.
32-bit ARM can't even build Nix
12:46:56
@emilazy:matrix.orgemilyso I wouldn't worry overly much12:47:08
@xokdvium:matrix.orgSergei Zimmerman (xokdvium)Well you can build it cross (and hydra does build it).12:47:28
@emilazy:matrix.orgemilydid someone fix it? it was broken very recently12:47:54
@emilazy:matrix.orgemilymaybe only for v6/v512:48:02
@xokdvium:matrix.orgSergei Zimmerman (xokdvium)Not sure, nix hydra jobset has been building it for quite some time now.12:49:42
@emilazy:matrix.orgemilylooks like it's in fact only ARMv5, whoops12:52:43
@emilazy:matrix.orgemily32 bit support in Nixpkgs is usually half broken in general12:53:17
@xokdvium:matrix.orgSergei Zimmerman (xokdvium)Yup, but the PowerPC bringup work shows that it still should be fixed.12:54:36
@emilazy:matrix.orgemilysure :)12:58:30
@emilazy:matrix.orgemilymy impression was that Nix matched the Nixpkgs platform support policy12:59:02
@emilazy:matrix.orgemilynot sure if Lix has any declared tiers12:59:11
@qyriad:katesiria.orgQyriadMost of the time that a Lix build for a platform has broken it has been because of a downstream Nixpkgs breakage13:00:28
@qyriad:katesiria.orgQyriadthough I think sometimes that might've been through dependencies CppNix didn't have13:01:24
@aloisw:julia0815.dealoiswThere have also been a couple of instances where 32-bit specific bugs have been introduced in Lix.13:02:24
@emilazy:matrix.orgemilybuilding is one thing, running is another :)13:03:35
@emilazy:matrix.orgemily(though at least most 32 bit bugs can be caught statically with sufficiently aggressive checking)13:03:56
@aloisw:julia0815.dealoiswThe instances I'm thinking of were actually all build failures. I do not know whether it actually runs.13:04:44

Show newer messages


Back to Room ListRoom Version: 10