Skip to content

Conversation

@jmoggr
Copy link
Collaborator

@jmoggr jmoggr commented Jan 5, 2026

The upgrade went very smoothly and took ~15min outside of unearthed issues with wasm-pack.


We are using wasm-pack to build the notebook-types and catlog packages, and wasm-pack expects to find version of wasm-bindgen-cli in the environment that matches the Cargo version of wasm-bindgen used by the package being built. It appears that coincidentally this has always been true, up until now. Note: outside of Nix wasm-pack will download the necessary wasm-bindgen.

This is very similar to the issue of the npm biome version not matching the nix version. The workaround employed there was to just use a biome version that matches whatever version of biome is used by nixpkgs-unstable. This is not really feasible for a critical library like wasm-bindgen.

It's pretty straight forward to build the build wasm-bindgen-cli from source using a helper function from nixpkgs. The downside of doing this is that we now need to update multiple Nix hashes whenever we upgrade wasm-bindgen, and that the version needs to be manually kept in sync between Nix and Cargo. I think that this is acceptable given that we don't frequently upgrade wasm-bindgen, and that this pattern should hopefully not apply to much more of our tooling.

I'm using an overlay in Nix to set the specific version of wasm-bindgen-cli, this is basically just inheritance for nixpkgs. The alternative is passing around our own copy of wasm-bindgen-cli in Nix, but in my experience I've found that to be more error prone and tedious.

If we like this pattern, it might make sense to apply it to biome as well.

@jmoggr jmoggr force-pushed the nixos-25-11-upgrade branch from 5e2f340 to ac03a6b Compare January 5, 2026 16:31
@github-actions github-actions bot temporarily deployed to netlify-preview January 5, 2026 16:31 Destroyed
@epatters epatters changed the title Uprade to nixos 25.11 Uprade to NixOS 25.11 Jan 6, 2026
@jmoggr jmoggr force-pushed the nixos-25-11-upgrade branch from ac03a6b to 3de4758 Compare January 7, 2026 15:55
@jmoggr jmoggr force-pushed the nixos-25-11-upgrade branch from 3de4758 to c3952df Compare January 7, 2026 16:23
@github-actions github-actions bot temporarily deployed to netlify-preview January 7, 2026 16:23 Destroyed
# wasm-pack needs a writeable $HOME
# https://github.com/ipetkov/crane/issues/362
HOME=$(mktemp -d) npm run build:node
'';
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't love how this is duplicated, however #875 should remove the need for a Nix package for notebook-types.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agreed. Since we've got a near-term plan that will eliminate the duplication, we don't have to sweat it right now.

@jmoggr jmoggr marked this pull request as ready for review January 7, 2026 16:50
@jmoggr jmoggr requested a review from epatters January 7, 2026 16:50
@epatters epatters merged commit 7244d1b into main Jan 7, 2026
19 checks passed
@epatters epatters changed the title Uprade to NixOS 25.11 Upgrade to NixOS 25.11 Jan 7, 2026
@epatters epatters deleted the nixos-25-11-upgrade branch January 7, 2026 19:03
@epatters epatters added the backend Backend, including web server and database label Jan 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backend Backend, including web server and database

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants