!lymvtcwDJ7ZA9Npq:lix.systems

Lix Development

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

Load older messages


SenderMessageTime
21 Jul 2025
@jade_:matrix.orgjade_ (I am building nix store paths directly with buck2(!) and jamming them directly into the store. they're to be used with builtins.fetchClosure ideally. hopefully we didn't delete enough CA code that we can't run that stuff anymore) 19:01:46
@jade_:matrix.orgjade_actually it looks like the fixed-output derivations cannot have references thing is entirely at the builder layer? seemingly CA paths just are allowed to have references?19:12:35
@jade_:matrix.orgjade_* actually it looks like the fixed-output derivations cannot have references thing is entirely at the builder layer? seemingly output-addressed paths just are allowed to have references?19:12:44
@jade_:matrix.orgjade_ .... oh. if you want to import random bullshit IA paths, you can't do it with nix-store --import. I wonder how I get around that. 19:29:58
@jade_:matrix.orgjade_ * .... oh. if you want to import random bullshit IA paths, you can't do it with nix-store --import. I wonder how I get around that because I have no reason to not be CA. 19:30:19
@jade_:matrix.orgjade_........... why did they do modulo hashing?!19:33:42
@jade_:matrix.orgjade_what is the purpose of that?19:33:48
@jade_:matrix.orgjade_"jade go read Eelco's thesis" yeah okay it's in there19:34:14
@jade_:matrix.orgjade_page 14419:34:22
@jade_:matrix.orgjade_oh! modulo hashes are identical if you prohibit self refs. lets go!19:34:45
@jade_:matrix.orgjade_* oh! modulo hashes are possibly identical if you prohibit self refs. lets go!19:35:09
@jade_:matrix.orgjade_ oh no. okay so I have to implement a thing that either links to the nix implementation or implements the protocol, because nix-store --import doesn't support importing CA hashed paths. Either way I am quite displeased. 19:39:45
@puck:puck.moepuck
In reply to @jade_:matrix.org
actually it looks like the fixed-output derivations cannot have references thing is entirely at the builder layer? seemingly output-addressed paths just are allowed to have references?
yes, the store path changes tho, and it can only be recursive/sha256
20:30:58
@puck:puck.moepuck
In reply to @jade_:matrix.org
........... why did they do modulo hashing?!
modulo hashing on content addressed store paths is Fucked
20:31:27
@raitobezarius:matrix.orgraitobezarius (DECT: 7248)
In reply to @jade_:matrix.org
oh no. okay so I have to implement a thing that either links to the nix implementation or implements the protocol, because nix-store --import doesn't support importing CA hashed paths. Either way I am quite displeased.
doesn't import --fixed do the job?
20:39:34
@jade_:matrix.orgjade_references required21:09:30
@jade_:matrix.orgjade_blessedly its not my problem, but it's clearly Turbo Broken in Lix since we have stubbed out the code (!)21:11:00
@jade_:matrix.orgjade_anyway i guess we are becoming a daemon proto client in rust21:11:26
@jade_:matrix.orgjade_because i want my shit to work21:11:30
@puck:puck.moepuck
In reply to @jade_:matrix.org
blessedly its not my problem, but it's clearly Turbo Broken in Lix since we have stubbed out the code (!)
that code was broken in cppnix too, just more subtly :D
21:48:25
@jade_:matrix.orgjade_indeed22:18:44
22 Jul 2025
@jade_:matrix.orgjade_I don't really want to know what bugs lurk in the trailing padding of the base32 of store path hash parts...00:23:32
@jade_:matrix.orgjade_I'm sure there's bugs there, since it's unchecked.00:23:43
@jade_:matrix.orgjade_oh, hash part length is 3200:24:33
@jade_:matrix.orgjade_so they delete a char. perfect.00:24:39
@jade_:matrix.orgjade_* hm. maths.00:28:00
@jade_:matrix.orgjade_im not doing maths successfully00:29:55
@jade_:matrix.orgjade_oh. yeah it's not a problem for paths because they're 160 bit and evenly divide by 5 bits. but it is maybe busted for sha256 hashes encoded as base32, in the same way as we know of buggy handling of corrupt padding in base64 SRI hashes that we should probably reject but don't at present.00:55:47
@flokli:matrix.orgflokli @jade_:matrix.org: hash parsing is very broken for the SRI case at least. See the test cases at https://git.snix.dev/snix/snix/src/branch/canon/snix/nix-compat/src/nixhash/mod.rs 08:57:49
@flokli:matrix.orgflokliWe opted to keep that behavior for now, cause some things in nixpkgs used these strange encodings (probably mostly copy paste errors)08:58:26

Show newer messages


Back to Room ListRoom Version: 10