!lymvtcwDJ7ZA9Npq:lix.systems

Lix Development

428 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
24 Feb 2026
@raitobezarius:matrix.orgraitobezariusor repeat what they want from me13:52:00
@emilazy:matrix.orgemilyi.e. you can implement an ordered-by-attrname == in Nix today (modulo pointer equality)13:52:13
@k900:0upti.meK900https://github.com/NixOS/nix/commit/3180671cabeb6a6010057770731e12761ed5666c cppnix broke flakes again13:52:16
@k900:0upti.meK900We could cherry-pick13:52:27
@k900:0upti.meK900Also the nix profile add thing from the other day13:52:37
@raitobezarius:matrix.orgraitobezariusman13:52:39
@k900:0upti.meK900I think it's fine to pick these small-ish changes that should merge cleanly into the migration13:53:01
@raitobezarius:matrix.orgraitobezariusYes, but this change is non trivial from a libexpr perspective13:53:16
@raitobezarius:matrix.orgraitobezariusNow url Value have context strings?13:53:26
@k900:0upti.meK900Yeah that one might be too much13:53:34
@raitobezarius:matrix.orgraitobezariusI need to think13:53:47
@k900:0upti.meK900I was thinking about the nix profile add one more13:53:47
@raitobezarius:matrix.orgraitobezariusthe nix profile add is controversial because this change has no raison d'etre and I understand that some folks in the team are getting really pissed off by this irresponsible behavior13:54:41
@delroth:delroth.netdelroththis was actively being discussed on zulip yesterday fwiw if you don't follow that medium13:54:47
@emilazy:matrix.orgemilyalso, lists already have short-circuiting equality with a canonical ordering13:55:18
@emilazy:matrix.orgemilyso making attrsets inconsistent with that seems gratuitous13:55:29
@delroth:delroth.netdelrothreally the irresponsible behavior is 3rd party software deciding to build on an experimental interface, no?13:55:34
@raitobezarius:matrix.orgraitobezariusyes13:55:47
@raitobezarius:matrix.orgraitobezarius hence: https://github.com/nix-community/home-manager/issues/8786#issuecomment-3951682232 13:55:54
@delroth:delroth.netdelrothnice, that was roughly my take on this whole thing as well13:56:25
@qyriad:katesiria.orgQyriad
In reply to @raitobezarius:matrix.org
the nix profile add is controversial because this change has no raison d'etre and I understand that some folks in the team are getting really pissed off by this irresponsible behavior
"add" probably does make some sense over "install" since "install" implies a lot of things. but meh.thiho
13:56:29
@raitobezarius:matrix.orgraitobezariusI don't really care about the details of the change in itself, I agree that a rename like that is unproblematic13:57:18
@qyriad:katesiria.orgQyriad
In reply to @raitobezarius:matrix.org
the nix profile add is controversial because this change has no raison d'etre and I understand that some folks in the team are getting really pissed off by this irresponsible behavior
* "add" probably does make some sense over "install" since "install" implies a lot of things. but meh.
13:57:31
@raitobezarius:matrix.orgraitobezariusI care about the consequences for 3rd party software which have stability commitments which are failing to uphold them because they rely on this because people tells them nix-command is defacto stable but it's actually not because someone actually did use the unstable contract to change things13:57:50
@raitobezarius:matrix.orgraitobezariusI don't want to adopt blindly the change and give the signal that it's OK to do this sort of things in the future even more too13:58:43
@qyriad:katesiria.orgQyriad There is a problem though in that nix-env and nix profile can't be used together 13:59:14
@qyriad:katesiria.orgQyriad You can't just stop using nix profile and go back to nix-env without deleting the profile 13:59:30
@raitobezarius:matrix.orgraitobezariusThis seems like a problem we need to address14:00:27
@qyriad:katesiria.orgQyriad Ah, except for nix-env --set. Since that has nothing to do with the profile's manifest and is really about profile generation management than the profile itself 14:04:09
@emilazy:matrix.orgemily to put it another way: set1 == set2 really ought to be equivalent to attrNames set1 == attrNames set2 && attrValues set1 == attrValues set2. you can always express this in the language and if we model the current behaviour as nondeterministic there's always a conceivable execution trace that matches these semantics. so it doesn't make sense to make equality stricter than that interpretation, which is consistent with lists, consistent with the existing builtins on attrsets, and optimal in terms of runtime performance of the comparison loop. thoughts, @piegames:flausch.social ? 15:14:44

Show newer messages


Back to Room ListRoom Version: 10