!lymvtcwDJ7ZA9Npq:lix.systems

Lix Development

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

Load older messages


SenderMessageTime
26 Jul 2025
@aloisw:julia0815.dealoiswOr if you're already in a cross (or not-so-cross, like mine) package set.13:18:41
@aloisw:julia0815.dealoisw They're basically broken except in the crossSystem = null case. 13:19:09
@emilazy:matrix.orgemilyI forgot that setting both of those was different in any way to setting just one tbh13:34:07
@emilazy:matrix.orgemilyI think it used to force cross flags being passed to toolchains but I believe that was changed13:34:27
@aloisw:julia0815.dealoisw
In reply to @emilazy:matrix.org
I forgot that setting both of those was different in any way to setting just one tbh
Passing crossSystem = null indeed has the same effect as passing both of them the same. The problem starts when pkgsi686Linux and similar change localSystem but pass crossSystem down.
13:39:07
@emilazy:matrix.orgemilynot quite the same effect then :D13:40:51
@emilazy:matrix.orgemilysince the difference is exposed13:40:56
@emilazy:matrix.orgemilyI think it used to be more different though. probably this lingering behaviour is just a bug but reworking those variant sets to compose properly is a whole ordeal that is in limbo waiting for changes to system handling I think13:41:42
@aloisw:julia0815.dealoisw
In reply to @emilazy:matrix.org
not quite the same effect then :D
Well yes. I mean in the package set itself.
13:53:14
@aloisw:julia0815.dealoisw
nix-repl> (import <nixpkgs> { localSystem = "x86_64-linux"; crossSystem = null; }).hello == (import <nixpkgs> { localSystem = "x86_64-linux"; crossSystem = "x86_64-linux"; }).hello
true
13:54:25
@piegames:flausch.socialpiegames Finally made meeting notes for this, CC K900 raitobezarius Please double-check the conclusion section if you can
https://wiki.lix.systems/books/lix-contributors/page/2025-06-26-lix-nixos-module
16:29:31
@piegames:flausch.socialpiegamesQuick side question: can we define overlays within Nixpkgs and directly use them, or does this result in infinite recursion because non-lazy attrs and thus require a double-import of Nixpkgs?16:33:49
@piegames:flausch.socialpiegamesnvm we of course can't I'm dumb16:34:22
@piegames:flausch.socialpiegames so this begs the question, pkgs.lixPackageSet is overlay-shaped but how to apply it (in a non-NixOS setting especially) 16:34:50
@aloisw:julia0815.dealoiswDepends on what you mean by "within nixpkgs" I guess?16:34:54
@piegames:flausch.socialpiegames (side question, how does this even work with NixOS with config.nixpkgs.overlays, how does it bootstrap itself there) 16:35:21
@qyriad:katesiria.orgQyriad pkgs.config doesn't contain overlays 16:36:33
@qyriad:katesiria.orgQyriad I think like, pkgs' = import <nixpkgs> { overlays = [ pkgs.lixOverlay ]; }? 16:37:01
@piegames:flausch.socialpiegames e.g. pkgs.lixOverlay, which takes a Lix derivation and produces an overlay which overrides all packages that depend on Nix to use that derivation 16:37:16
@emilazy:matrix.orgemily I thought the idea was to do something like nixpkgs.overlays = [ (final: prev: prev.lixPackageSets.<version>) ]; or something? 16:38:33
@piegames:flausch.socialpiegamesI'll take that if it works16:39:04
@emilazy:matrix.orgemily there is pkgs.extend, but generally overlays in Nixpkgs are only used for stdenv bootstrap. my understanding was that the point of lixPackageSets was to have the overrides that you can overlay directly, but I'm not 100% sure 16:39:16
@emilazy:matrix.orgemily (so you can also pkgs.extend pkgs.lixPackageSets.<version>, in non-NixOS) 16:39:39
@emilazy:matrix.orgemily(er, type error)16:39:53
@aloisw:julia0815.dealoisw
In reply to @piegames:flausch.social
e.g. pkgs.lixOverlay, which takes a Lix derivation and produces an overlay which overrides all packages that depend on Nix to use that derivation
Do you want to use this in a particular place? Or just expose it to users?
16:40:11
@aloisw:julia0815.dealoisw
In reply to @emilazy:matrix.org
I thought the idea was to do something like nixpkgs.overlays = [ (final: prev: prev.lixPackageSets.<version>) ]; or something?
That probably does not really work, given that lixPackageSets has some non-Lix packages in it, and the Nix implementation is called lix there and not nix.
16:41:08
@emilazy:matrix.orgemilyfair enough. I thought that was the general idea, but I can believe the implementation is not there yet :)16:41:35
@emilazy:matrix.orgemily nix = lix; seems like an easy enough fix, though 16:41:43
@emilazy:matrix.orgemilyhaving non-Lix packages in it is the point, right? to overlay stuff that depends on Nix16:41:52
@aloisw:julia0815.dealoiswI mean that's basically what the nixos-module does right?16:42:02

Show newer messages


Back to Room ListRoom Version: 10