!VRULIdgoKmKPzJZzjj:nixos.org

Nix Hackers

884 Members
For people hacking on the Nix package manager itself189 Servers

Load older messages


SenderMessageTime
1 Apr 2025
@emilazy:matrix.orgemily John Ericson: btw, I wanted to say thanks for engaging, and sorry for getting frustrated. I don't want to stand in the way of reducing version drift, getting rid of autotools, making Nix more modular and maintainable. just want to make sure that the root causes of 2.18 type situations are addressed by getting properly in tune with the constraints Nixpkgs is under 00:52:23
@emilazy:matrix.orgemily(or in the way of properly-defined interfaces in Nixpkgs, either)00:54:28
@emilazy:matrix.orgemily FWIW, while I think it's best to leave the ultimate judgement calls up to the release manager here, I'll say that if you wanted to maximize the chances of getting autotools out the door and start the transition to a componentized Nix, this seems like the smoothest plan to me: bump to the latest version but ditch the everything package, since it's a transition mechanism that fails to fully support the transition, and dropping it will save some complexity. instead just offer both a "classic" monolithic build and the new components as a tech preview. implement shims for the componentized overrides in the monolithic build, and make using the deprecated override style on it warn and point out the new ways to accomplish things in the componentized build 00:55:18
@emilazy:matrix.orgemilyit's certainly some unfortunate temporary duplication, but it makes Meson happen and paves the way to seamlessly swap things over by the next release00:56:00
@emilazy:matrix.orgemilyanyway, I think I said most of what I had to say in the comment I was going to write, so I'll hold off until further developments :)00:56:20
@jade_:matrix.orgjade_we had to pick that change in lix 2.93 because it turns out it was ill-designed from the beginning and the previous behaviour was severely broken in a very hard to fix way that caused eval to be nondeterministic (which seemed like a bigger sin). the issue i have is not that the output path changed; i don't particularly care about that; but it needs to be in the Breaking Changes section like it is in lix.01:44:28
@jade_:matrix.orgjade_* we had to pick that change in lix 2.93 because it turns out it was ill-designed from the beginning and the previous behaviour was severely broken in a very hard to fix way that caused eval to be nondeterministic (which seemed like a bigger sin). the issue i have is not that the output path changed; i don't particularly care about that; but it needs to be in the Breaking Changes section and done on purpose like it is in lix.01:45:14
@jade_:matrix.orgjade_* we had to do effectively the same change in lix 2.93 because it turns out it was ill-designed from the beginning and the previous behaviour was severely broken in a very hard to fix way that caused eval to be nondeterministic (which seemed like a bigger sin). the issue i have is not that the output path changed; i don't particularly care about that; but it needs to be in the Breaking Changes section and done on purpose like it is in lix.01:45:35
@jade_:matrix.orgjade_ btw now that we fixed nixpkgs to not break when you put an overlays.default shaped overlay that overrides pkgs.nix, you should write an equivalent document to https://wiki.lix.systems/books/lix-contributors/page/lix-beta-guide 01:48:19
@jade_:matrix.orgjade_ this is the foundation of lix's QA processes and is one of the main reasons, besides generally immediately prioritizing regressions on main, that lix has relatively few bugs. 01:52:40
@jade_:matrix.orgjade_ * this is the foundation of lix's QA processes and is one of the main reasons, besides generally immediately prioritizing regressions on main when they are found, that lix has relatively few bugs. 01:52:54
@fzakaria:one.ems.hostfzakariawhat's new nix ?02:45:45
@jade_:matrix.orgjade_ it's like updog
(i assume they actually mean the master branch)
05:28:09
@roberthensing:matrix.orgroberthI'm a fan of IFD too, but I don't see how it helps here08:09:11
@roberthensing:matrix.orgroberthgoes to show that fetchTree and its tests are in a bad state and needs to be experimental for another while, as implementers (not just us) figure out what the right behavior should even be. It sucks08:13:04
@roberthensing:matrix.orgroberthI agree that breaking changes should be in the release notes, also for experimental features08:14:02
@leona:leona.isleona

This seems about right.

John Ericson: I understand your thoughts and constraints. I'm not an expert for the packaging for nix packaging tho. By assuring me that you will be available for fixing broken things, I'm okay with updating nix before the first freeze period (2025-04-09). I trust you with your judgement. Also, I will try nix 2.27 as soon as packaging is ready-enough in nixpkgs.
I'm even more happy when you (as in the team) improves the packaging (in the ways emily, ElvishJerricco and others already mentioned), but not change it in major ways after the actual freeze period (2025-04-23). After branch-off, you can of course test changes in packaging and if no breakages occur, also backport them.
Thanks for the open communication style.

08:36:54
@leona:leona.isleona I think it would also be good to backport 2.27 to 24.11 (inside nixVersions). That way people on 24.11 can also test compatibility. 08:40:39
@hemantyb:matrix.orgHemant Baviskar set a profile picture.09:30:34
@p14:matrix.orgp14

I am trying to use nix-store —load-db with a closureInfo registration file. In the closure I put a fixed output deviation for nixpkgs itself: I am baking a machine image with nixpkgs available.

One problem though is I can’t easily get my hands on the nixpkgs path. I tried to use fetchClosure, but this doesn’t work on a machine whose nixpkgs path was registered using nix-store —load-db. So it fails when built using the machine image. ‘Nix path-info’ shows that the ca:fixed: metadata is missing, which results in fetchClosure saying that it is input addressed but inputAddressed = false.

Should the ca metadata be missing in this scenario? Is there a way to put it there?

13:09:32
@sandro:supersandro.deSandro 🐧 changed their display name from Sandro 🐧 to Sandro 🐧 [c3d2].13:58:06
@sandro:supersandro.deSandro 🐧 changed their display name from Sandro 🐧 [c3d2] to Sandro 🐧.13:59:29
@toonn:matrix.orgtoonn I don't really follow the reasoning here, https://github.com/NixOS/nixpkgs/issues/393359#issuecomment-2767289529 The build system for Nix 2.24 is already packaged, no? So why would 25.05 sticking to that version of Nix mean having to maintain two build systems? GHC very intentionally did a gradual shift and the Make based build system hasn't been supported as of 9.6.1 from 2023-03-10 latest 15:37:04
@toonn:matrix.orgtoonn release is 9.12.2, so that's long past. 15:37:10
2 Apr 2025
@p14:matrix.orgp14
In reply to @p14:matrix.org

I am trying to use nix-store —load-db with a closureInfo registration file. In the closure I put a fixed output deviation for nixpkgs itself: I am baking a machine image with nixpkgs available.

One problem though is I can’t easily get my hands on the nixpkgs path. I tried to use fetchClosure, but this doesn’t work on a machine whose nixpkgs path was registered using nix-store —load-db. So it fails when built using the machine image. ‘Nix path-info’ shows that the ca:fixed: metadata is missing, which results in fetchClosure saying that it is input addressed but inputAddressed = false.

Should the ca metadata be missing in this scenario? Is there a way to put it there?

Robert Hensing (roberth): I saw your reaction, was what I wrote clear enough, does this sound like an issue or misuse?
12:46:19
@mschwaig:matrix.orgMartin Schwaighofer

Why do I see this difference between the builders of the same unresolved and resolved content-addressed derivation? 🤔

diff /nix/store/q2nzjyqf4w19w3mgbkn34k2as5hrvwh1-builder.sh /nix/store/ckzrg0f0bdyx8rf703nc61r3hz5yys9q-builder.sh
22c22
<     printf '%s ' "${propagatedUserEnvPkgs[@]}" > $out/nix-support/propagated-user-env-packages
---
>     printf '%s ' $propagatedUserEnvPkgs > $out/nix-support/propagated-user-env-packages
13:10:54
@roberthensing:matrix.orgroberth I haven't found time to look into this properly, whether this is a bug or a missing feature, or both. The main constraint for closureInfo etc, is that the info needs to be reproducible, so for example no signatures or other mutable store metadata. ca:fixed: seems like something that should be possible to include 14:08:20
@roberthensing:matrix.orgroberth The --load-db format has come up before. It is entirely forward-incompatible, so we may need to introduce any additions as a new format 14:09:42
@p14:matrix.orgp14
In reply to @roberthensing:matrix.org
The --load-db format has come up before. It is entirely forward-incompatible, so we may need to introduce any additions as a new format
Glancing at the load db there are signs the signature is there; is it just not being imported properly, I wonder 🤔
14:39:37
@Ericson2314:matrix.orgJohn Ericson emily ElvishJerricco OK we discussed a bunch and we're liking the sort of compromise you all proposed 20:30:03

Show newer messages


Back to Room ListRoom Version: 6