!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
14 Dec 2025
@helle:tacobelllabs.nethelle (just a stray cat girl)still slightly dislike nix does not have hex and oct literals from when we started using it first19:13:11
@522_:catgirl.cloud0x4fbb09 it/its ⛯✇ΘΔ the error for 0xff being "you tried to call 0" is really funny 19:14:31
@helle:tacobelllabs.nethelle (just a stray cat girl)I know it so far has not really come up with anything we wrote, but still it was "okay, huh"19:14:50
@piegames:flausch.socialpiegames Can't be added atm because 0x10 parses as 0 x10 19:15:15
@piegames:flausch.socialpiegamesSo we can deprecate that syntax but can't give it new semantics without langver19:15:42
@helle:tacobelllabs.nethelle (just a stray cat girl)yep, we know, and it rarely comes up19:16:10
@helle:tacobelllabs.nethelle (just a stray cat girl)and nixpkgs brings lib.trivial.fromHexString, which I have used a total of once19:16:35
@helle:tacobelllabs.nethelle (just a stray cat girl)octal, so far, never19:16:46
@piegames:flausch.socialpiegamesBecause permissions are usually treated as strings19:22:27
@helle:tacobelllabs.nethelle (just a stray cat girl)yep19:22:42
@lucy:elia.gardenlucy joined the room.22:20:42
@crop_tech:matrix.orgcrop
In reply to @522_:catgirl.cloud

... what's with this

# nix-instantiate --parse -E "01.4"
{
  "_type": "ExprCall",
  "args": [
    {
      "_type": "ExprLiteral",
      "value": 0.4,
      "valueType": "Float"
    }
  ],
  "fun": {
    "_type": "ExprLiteral",
    "value": 1,
    "valueType": "Int"
  }
}

... why is that not just a float literal with value 1.4

If all this would be made to behave more reasonable would this actually break things?
23:13:19
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 (they/them)

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 (they/them)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 (they/them)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 (they/them)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

Show newer messages


Back to Room ListRoom Version: 10