!lymvtcwDJ7ZA9Npq:lix.systems

Lix Development

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

Load older messages


SenderMessageTime
15 Dec 2025
@n4ch7:n3831.netn4ch723hr3r (putting stuff in your name is cringe) joined the room.00:11:14
@raitobezarius:matrix.orgraitobezarius aloisw: unfortunately, i'm still overseas and jetlagged as fucked, so i was not able to touch it 00:24:03
@raitobezarius:matrix.orgraitobezariusi should be able to get back to you around ~21st-ish00:24:20
@n4ch7:n3831.netn4ch723hr3r (putting stuff in your name is cringe)touch what?00:31:00
@raitobezarius:matrix.orgraitobezarius

another input: i believe we kinda have to offer a default solution with a sensible UX at some point, but we're still in the phase of extracting flakes, etc. to make a sense of the ecosystem, unify/simplify/improve then we can elect a default solution that people can settle on

and maybe a hot take but i think at that moment, it would be good if all npins/lon/niv/etc. projects could be subsumed by This New Thing™ except if it's proven that having multiple solutions is required (because flexibility, etc.), this won't prevent people from having customized tailor-made solutions via the plugin system, but this shouldn't be the default scenario

00:31:08
@raitobezarius:matrix.orgraitobezariustouch this ^00:31:25
@kfears:matrix.orgKFears (burnt out)

I sometimes think about doing the New Thing, but I often stumbled into doing weird hacks or gross glue or re-implementations from scratch:

  1. A good New Thing might want to do flake-import, but flake inputs are a very restricted subset of NixLang, being able to get them as JSON would be super helpful
  2. Likewise, parsing flakerefs is not something exciting, and being able to turn flakerefs into JSON would be super helpful (flakes already understand both)
  3. Getting NAR hash, store path, etc. from an arbitrary file/dir often feels unnecessarily complicated, so instead of simple git clone and getting hash, there's often a need to shell out to nix-prefetch-helpers
00:55:20
@kfears:matrix.orgKFears (burnt out)I think if Lix provides an improved CLI, then creating New Thing will be much easier and pretty much just wiring things up together00:56:19
@kfears:matrix.orgKFears (burnt out)I haven't spent much time on the problem though, I think people who have done locking solutions can contribute more00:58:51
@kfears:matrix.orgKFears (burnt out)But from my limited time, I felt the lack of plumbing commands badly00:59:28
@piegames:flausch.socialpiegamesI really don't think npins should become a default or "blessed" in any way11:48:43
@piegames:flausch.socialpiegamesNpins needs a successor really, and from my first glance lon is more of a reimplementation than a successor in terms of iteration11:50:10
@k900:0upti.meK900I feel like we need scoped pure eval first11:51:26
@piegames:flausch.socialpiegames
In reply to @kfears:matrix.org
But from my limited time, I felt the lack of plumbing commands badly
It's good to know which plumbing is needed to facilitate that
11:51:26
@k900:0upti.meK900To get any kind of good successor11:51:29
@piegames:flausch.socialpiegames
In reply to @k900:0upti.me
I feel like we need scoped pure eval first
I gave that on the roadmap, but Rust evaluator first
12:13:30
@piegames:flausch.socialpiegames(I started working on a Rust parser port btw)12:13:40
@piegames:flausch.socialpiegamesThough unless I manage to get an NLNet grant or something like that to allow me to work on Lix at work, just bytecode eval and libexpr-RIIR will take most of 202612:20:06
@piegames:flausch.socialpiegames Random thought though: what if we had nix.env as a simple env file to set a pure NIX_PATH and tools can write to that and nix will automagically load it 12:23:07
@k900:0upti.meK900 Can't tools then just set NIX_PATH 12:24:46
@piegames:flausch.socialpiegamesYes but that requires either wrapping the nix commands or relying on a direnv (the latter I'm currently using for stuff like https://piegames.de/dumps/nixpkgs-global-overlays/)12:28:35
@k900:0upti.meK900I mean you'd have to be wrapping nix commands anyway no12:29:13
@k900:0upti.meK900To set nix.env12:29:16
@k900:0upti.meK900Unless you sync it separately out of band I guess12:29:35
@kloenk:kloenk.eukloenk In general interested to help (also with the lang dev I already did and now know a bit). But yeah time is a thing here as well 12:30:24
@piegames:flausch.socialpiegamesI have lots of scaffolding to do first, but I'll appreciate any help im recreating all the subtle parser bugs (we do have a fuzzing suite, though that needs reactivation and updating)12:32:01
@piegames:flausch.socialpiegames
In reply to @k900:0upti.me
Unless you sync it separately out of band I guess
That would be the (interim) plan yes
12:34:30
@kfears:matrix.orgKFears (burnt out) I think I'd need to have some sort of nix hash path be stable, nix flake info --json stable-ish, and some new command to output the inputs of a flake, preferably in attrset format (ideally converted to JSON, too) 12:35:45
@kfears:matrix.orgKFears (burnt out)Flakes are awful, but hopefully extending their CLI to support new commands will be less than impossible after ripping them out of the core12:37:11
@kfears:matrix.orgKFears (burnt out)On second thought, I'm not sure how much of that is needed. I'll get back to you on that eventually12:42:14

Show newer messages


Back to Room ListRoom Version: 10