!9IQChSjwSHXPPWTa:lix.systems

Lix

1124 Members
Lix user channel. Feel free to discuss on-topic issues here and give each other help. For matrix.to links to the rest of the Lix channels, see: https://wiki.lix.systems/books/lix-organisation/page/matrix-rooms304 Servers

Load older messages


SenderMessageTime
29 Jan 2026
@lillecarl:matrix.orglillecarl "legacy" is a good name too 🤣 neobrain you can use flake-compatish to get the benefits of both flakes and non-flakes with minimal effort 😄 15:10:41
@aloisw:julia0815.dealoisw
In reply to @delroth:delroth.net
not necessarily channels (which are pretty terrible), my nixos machines are configured to have the nixpkgs they're built from symlinked at /etc/nixpkgs and a nix.nixPath = [ "nixpkgs=/etc/nixpkgs" ];
Something about the name "channel" meaning too many different things …
15:12:54
@neobrain:matrix.orgneobrainPragmatically that's nice, though I appreciate having a "standard way" of doing stuff in nix, which flakes seem to be the closest candidate for. Much easier to implement external tooling if everyone isn't using their own bespoke little setup15:17:00
@lillecarl:matrix.orglillecarlThat's the thing with flake-compatish. You can always use flakes, but when you don't want the downsides of flakes you work around them. It can be seen as an "optional addon" rather than a replacement. Being able to quickly override inputs to local paths (or other flakerefs) without molesting the lockfile is pretty convenient, especially if you're a flake user who against all odds decide to contribute to nixpkgs 😄 15:20:26
@lillecarl:matrix.orglillecarl* That's the thing with flake-compatish. You can always use flakes, but when you don't want the downsides of flakes you work around them. It can be seen as an "optional addon" rather than a replacement. Being able to quickly override inputs to local paths (including self for monorepos) (or other flakerefs) without molesting the lockfile is pretty convenient, especially if you're a flake user who against all odds decide to contribute to nixpkgs 😄 15:22:30
@neobrain:matrix.orgneobrainah yeah I see, makes sense15:24:27
@llakala:matrix.orgllakala
In reply to @coca162:matrix.org
Would it be fine to have to "sync" any edits to the source of truth as a separate action from evaluating the sources? The nice thing with flakes is that they can reflect the changes in flakes.nix without you needing to explicitly tell it to do so as the commands are built to handle it, and I'm not sure if not having that ability would make this worth it.
wdym by this
15:42:43
@llakala:matrix.orgllakalanot fully grasping what you're referring to15:42:59
@coca162:matrix.orgCocaIf I edit a file, the lockfile will not be updated to reflect the changes I have done to the source of truth15:43:42
@llakala:matrix.orgllakalaah yeah I see15:43:52
@llakala:matrix.orgllakalayeah I would like autosync15:44:28
@llakala:matrix.orgllakalai mean I think it would be possible to do it with only nix mechanisms15:44:43
@llakala:matrix.orgllakalacould you hash the npins.nix and see if the contents differ?15:45:09
@coca162:matrix.orgCocahttps://discourse.nixos.org/t/nixtamal-fulfilling-pure-input-pinning-for-nix/74745 funnily I just saw this, so I'm curious how they handle it, unfortunately I cannot comment however due to my trust level so I will just poke around at it15:45:15
@coca162:matrix.orgCoca* https://discourse.nixos.org/t/nixtamal-fulfilling-pure-input-pinning-for-nix/74745 funnily I just saw this, so I'm curious how they handle it, though unfortunately I cannot comment due to my trust level so I will just poke around at it15:45:36
@llakala:matrix.orgllakalai didn't look into nixtimal too much, it only uses derivation fetchers which I find a little silly15:46:01
@llakala:matrix.orgllakalaif you wanted to be really crazy, you could have a single npins.nix file with two attrsets within it15:47:16
@llakala:matrix.orgllakala```nix { sources.nixpkgs = { type = "github"; owner = "nixos"; repo = "nixpkgs"; branch = "nixos-unstable"; }; lock.nixpkgs = { ref = "some-git-ref-here"; url = "https://github.com/nixos/nixpkgs/some-git-ref-here.tar.gz"; hash = "sha256-blahblahblah"; }; } ```15:50:32
@llakala:matrix.orgllakala* ``` { sources.nixpkgs = { type = "github"; owner = "nixos"; repo = "nixpkgs"; branch = "nixos-unstable"; }; lock.nixpkgs = { ref = "some-git-ref-here"; url = "https://github.com/nixos/nixpkgs/some-git-ref-here.tar.gz"; hash = "sha256-blahblahblah"; }; } ```15:50:40
@llakala:matrix.orgllakalagod i hate matrix15:50:49
@llakala:matrix.orgllakalaanyways in this approach, this file is our only source of truth15:51:44
@llakala:matrix.orgllakalaif we have some extra info in lock.nixpkgs, we could probably prevent desync by detecting when the lock and the source disagree15:52:43
@coca162:matrix.orgCocathe issue still pretty much remains, in nix there is no way for us to edit files to update the locks, the user would see the locks are mismatching but they'd still need to do something extra15:52:44
@llakala:matrix.orgllakala
In reply to @coca162:matrix.org
the issue still pretty much remains, in nix there is no way for us to edit files to update the locks, the user would see the locks are mismatching but they'd still need to do something extra
oh yeah wait of course
15:53:18
@llakala:matrix.orgllakalaI forgot we couldn't edit files in nix15:53:23
@llakala:matrix.orgllakalaand I was imagining we could just update the lockfile for the user15:53:35
@llakala:matrix.orgllakalai mean we could error out if there's a desync15:53:47
@llakala:matrix.orgllakalathe alternative would be an in-repo minimal executable15:54:52
@llakala:matrix.orgllakalabut I guess you couldn't call that from within a rebuild15:55:47
@llakala:matrix.orgllakalaso you'd have to use that for all your nix commands, which seems suboptimal15:55:58

Show newer messages


Back to Room ListRoom Version: 10