!vxTmkuJzhGPsMdkAOc:transformierende-gesellschaft.org

NixOS Matrix Subsystem

130 Members
Coordination and discussion about the matrix subsystem in NixOS - https://nixos.wiki/wiki/Matrix63 Servers

Load older messages


SenderMessageTime
26 Apr 2025
@emilazy:matrix.orgemilywhich nobody did for months13:07:11
@emilazy:matrix.orgemily(are all the projects that switched to pnpm going to suddenly switch to yarn now? can we start writing a reproducible fetcher for whatever the next trendy JS thing is going to be in advance?)13:07:55
@hexa:lossy.networkhexa

Internally, this uses a patched version of Yarn to ensure git dependencies are re-packed and any attempted downloads fail immediately.

13:08:52
@hexa:lossy.networkhexa🙃13:08:57
@emma:rory.gayEmma [it/its]oh ffs13:09:20
@emilazy:matrix.orgemilyit's yarn's fault that they don't support an offline mode (or record hashes for platform-specific deps)13:11:04
@emilazy:matrix.orgemilythankfully the work was put in13:11:15
@emilazy:matrix.orgemilythe fetcher will tell you if you need to run a command to get the missing hashes13:12:18
@emilazy:matrix.orgemilyCargo is less silly about this, so our deterministic Cargo fetcher doesn't need extra hashes.13:12:40
@hexa:lossy.networkhexaexcept for git deps 😛 13:12:57
@emilazy:matrix.orgemilyno, our new fetcher handles those.13:17:20
@emilazy:matrix.orgemilyCargo does record hashes for them13:17:26
@hexa:lossy.networkhexahuh13:17:31
@emilazy:matrix.orgemilythose hashes should all be gone from the tree now13:17:34
@emilazy:matrix.orgemilypreviously we explicitly banned them because Cargo changed their format in the past, making it unstable13:17:48
@emilazy:matrix.orgemilybut then Cargo changed the format for all packages and we switched over to our own deterministic fetcher13:18:01
@hexa:lossy.networkhexaok13:18:21
@hexa:lossy.networkhexaimage.png
Download image.png
13:22:24
@hexa:lossy.networkhexahttps://github.com/NixOS/nixpkgs/pull/40202413:22:49
@cat:feline.supportCat joined the room.13:29:46
@hexa:lossy.networkhexageez, why is the lockfile incomplete in that regard13:30:16
@emilazy:matrix.orgemilyhttps://github.com/yarnpkg/berry/issues/675913:33:56
@emilazy:matrix.orgemily"known limitation"13:33:58
@emilazy:matrix.orgemilysince 202113:34:05
@hexa:lossy.networkhexaclownshow13:34:29
@emma:rory.gayEmma [it/its]

closed as not planned

13:36:08
@ma27:nicht-so.sexyma27I mean they also insisted on their garbage lock-file format instead of some standardized format and berry changed that. So maybe in 10 years...13:45:46
@hexa:lossy.networkhexa

Unfortunately, yarn.lock files do not include hashes for optional/platform-specific dependencies. This is by design.

\To compensate for this, the yarn-berry-fetcher missing-hashes subcommand can be used to produce all missing hashes. These are usually stored in a missing-hashes.json file, which needs to be passed to both the build itself, as well as the fetchYarnBerryDeps helper:

22:08:59
@hexa:lossy.networkhexa *

Unfortunately, yarn.lock files do not include hashes for optional/platform-specific dependencies. This is by design.

To compensate for this, the yarn-berry-fetcher missing-hashes subcommand can be used to produce all missing hashes. These are usually stored in a missing-hashes.json file, which needs to be passed to both the build itself, as well as the fetchYarnBerryDeps helper:

22:09:02
@hexa:lossy.networkhexaso according to the docs the missing-hashes command should account for this issue22:09:25

Show newer messages


Back to Room ListRoom Version: 4