Skip to content

pnpm_11: init at 11.1.0#505103

Merged
Scrumplex merged 6 commits into
NixOS:masterfrom
Scrumplex:pkgs/pnpm/init-11
May 12, 2026
Merged

pnpm_11: init at 11.1.0#505103
Scrumplex merged 6 commits into
NixOS:masterfrom
Scrumplex:pkgs/pnpm/init-11

Conversation

@Scrumplex

@Scrumplex Scrumplex commented Mar 30, 2026

Copy link
Copy Markdown
Member

Hints for reviewers

  • Make sure no package is using pnpm as an input (I used rg "pnpm,"), but not sure if that missed anything.
  • I split up the commits to make reviews easy
  • The way I am passing nodejs from pnpm to pnpm-fixup-state-db might break splicing? Not sure.
  • Should we move the test for pnpm_11 in-tree?

Wishlist

  • More tests
    • I think we should have more tests across different versions of pnpm so we can always test for regressions
    • We should also test some edge cases like how pnpm behaves when its called within a package script (see pnpm_11: init at 11.1.0 #505103 (comment))
  • Create a setup hook that adds some pnpm helper functions
    • At the moment we use versionAtLeast both in the fetcher and config hook to set pnpm config values based on versions. What if we create a setup hook for some helper functions like a pnpm-set-config <key> <value> that handles these version differences for us.

Things done

  • Built on platform:
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • Tested, as applicable:
  • Ran nixpkgs-review on this PR. See nixpkgs-review usage.
  • Tested basic functionality of all binary files, usually in ./result/bin/.
  • Nixpkgs Release Notes
    • Package update: when the change is major or breaking.
  • NixOS Release Notes
    • Module addition: when adding a new NixOS module.
    • Module update: when the change is significant.
  • Fits CONTRIBUTING.md, pkgs/README.md, maintainers/README.md and other READMEs.

@nixpkgs-ci nixpkgs-ci Bot added 8.has: package (new) This PR adds a new package 10.rebuild-linux: 101-500 This PR causes between 101 and 500 packages to rebuild on Linux. 10.rebuild-darwin: 101-500 This PR causes between 101 and 500 packages to rebuild on Darwin. 6.topic: python Python is a high-level, general-purpose programming language. 6.topic: nodejs Node.js is a free, open-source, cross-platform JavaScript runtime environment 6.topic: vscode A free and versatile code editor that supports almost every major programming language. labels Mar 30, 2026
@Scrumplex Scrumplex force-pushed the pkgs/pnpm/init-11 branch 3 times, most recently from dec08e5 to ee96a1b Compare March 31, 2026 16:15
@Scrumplex

Scrumplex commented Mar 31, 2026

Copy link
Copy Markdown
Member Author

@gepbird this is early work to get pnpm 11 working in nixpkgs.

Some pain points:

  • We can't rely on pnpm config for most settings anymore as the options we were using are now workspace-specific apparently
  • Fixing up the store takes a lot more work, as the index is now stored as a sqlite database. I wrote a script that uses @pnpm/store.index to modify the index to set checkedAt to 0
  • Due to changes in pnpmConfigHook this causes a rebuild of all pnpm packages. As we don't know which pnpm version is used within the derivation, we have to modify the actual script.

I also added a package test specifically for pnpm 11 to have an end-to-end test in tree.

@Scrumplex Scrumplex force-pushed the pkgs/pnpm/init-11 branch 2 times, most recently from 9c02563 to cf340e0 Compare March 31, 2026 16:22
@nixpkgs-ci nixpkgs-ci Bot added the 2.status: merge conflict This PR has merge conflicts with the target branch label Apr 9, 2026
@Scrumplex Scrumplex changed the title pnpm_11: init at 11.0.0-beta.6 pnpm_11: init at 11.0.0-rc.0 Apr 12, 2026
@nixpkgs-ci nixpkgs-ci Bot added 8.has: documentation This PR adds or changes documentation and removed 2.status: merge conflict This PR has merge conflicts with the target branch labels Apr 12, 2026
@Scrumplex Scrumplex force-pushed the pkgs/pnpm/init-11 branch 2 times, most recently from 5af5a70 to 3afcef8 Compare April 12, 2026 10:21
@nixpkgs-ci nixpkgs-ci Bot added the 2.status: merge conflict This PR has merge conflicts with the target branch label Apr 20, 2026
@Scrumplex Scrumplex force-pushed the pkgs/pnpm/init-11 branch 2 times, most recently from ab0769d to b0f3e41 Compare April 26, 2026 17:27
@nixpkgs-ci nixpkgs-ci Bot removed the 2.status: merge conflict This PR has merge conflicts with the target branch label Apr 26, 2026
@Scrumplex Scrumplex force-pushed the pkgs/pnpm/init-11 branch 3 times, most recently from fa79f25 to c4d7569 Compare April 26, 2026 17:45
@nixpkgs-ci nixpkgs-ci Bot added the 2.status: merge conflict This PR has merge conflicts with the target branch label Apr 26, 2026
@nixpkgs-ci nixpkgs-ci Bot added the 2.status: merge conflict This PR has merge conflicts with the target branch label May 11, 2026
@Scrumplex Scrumplex force-pushed the pkgs/pnpm/init-11 branch from f12a715 to 5e31bd3 Compare May 11, 2026 16:08
Scrumplex added 5 commits May 11, 2026 18:09
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
pnpm 11 does not support configuring some options through its new global
config format. As a workaround, we can define these environment
variables instead.

This also adds support for the new pmOnFail option in pnpm 11 that
replaces managePackageManagerVersions.

Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
@Scrumplex Scrumplex force-pushed the pkgs/pnpm/init-11 branch from 5e31bd3 to 0a5d7bf Compare May 11, 2026 16:09
@nixpkgs-ci nixpkgs-ci Bot removed the 2.status: merge conflict This PR has merge conflicts with the target branch label May 11, 2026
@Scrumplex

Copy link
Copy Markdown
Member Author

nixpkgs-review result

Generated using nixpkgs-review.

Command: nixpkgs-review pr 505103
Commit: 0a5d7bf2131d5b1928b324f0e3cf2d92a3e5229f


x86_64-linux

❌ 9 packages failed to build:
  • documenso
  • gui-for-clash
  • kdePackages.audiotube
  • kdePackages.audiotube.debug
  • kdePackages.audiotube.dev
  • kdePackages.audiotube.devtools
  • minitube
  • python314Packages.mpv
  • python314Packages.mpv.dist
✅ 401 packages built:
  • adl
  • agent-browser
  • ani-cli
  • aonsoku
  • apache-airflow
  • apache-airflow.dist
  • apache-answer
  • artalk
  • astro-language-server
  • authelia
  • auto-editor
  • autobrr
  • autoprefixer
  • backrest
  • bash-language-server
  • bilibili-tui
  • bluebubbles
  • bluebubbles.debug
  • bluebubbles.pubcache
  • bluesky-pds
  • botamusique
  • bumpp
  • caddyfile-language-server
  • castero
  • castero.dist
  • catt
  • catt.dist
  • cdxgen
  • celluloid
  • changelogen
  • cherry-studio
  • chiri
  • cine
  • clapper
  • clapper-enhancers
  • clash-verge-rev
  • claude-code-router
  • cliamp
  • coc-cmake
  • concurrently
  • context7-mcp
  • conventional-changelog-cli
  • cplay-ng
  • cplay-ng.dist
  • cspell
  • ctx7
  • curseradio
  • curseradio.dist
  • daed
  • deadlock-mod-manager
  • delfin
  • deltachat-desktop
  • dep-scan
  • dep-scan.dist
  • discourse
  • discourseAllPlugins
  • dmlive
  • dokieli
  • dorion
  • dra-cla
  • element-desktop
  • element-web (element-web-unwrapped)
  • emmet-language-server
  • en-croissant
  • equicord
  • etherpad-lite
  • fedistar
  • feishin
  • ff2mpv
  • ff2mpv-go
  • filebrowser
  • firezone-gui-client
  • firezone-server (firezone-server-domain)
  • firezone-server-api
  • firezone-server-web
  • flood
  • fmd-server
  • folo
  • froide
  • froide-govplan
  • froide-govplan.dist
  • froide.dist
  • gale
  • gallery-dl
  • gallery-dl.dist
  • garage-webui
  • ghostfolio
  • gitbutler
  • gitea
  • gitea.data
  • gitify
  • gitlab-duo
  • goaway
  • gonic
  • gophertube
  • gpodder
  • gtk-pipe-viewer
  • gtk-pipe-viewer.devdoc
  • gui-for-singbox
  • haruna
  • headplane
  • heroic
  • heroic-unwrapped
  • home-assistant-custom-lovelace-modules.atomic-calendar-revive
  • home-assistant-custom-lovelace-modules.custom-sidebar
  • home-assistant-custom-lovelace-modules.kiosk-mode
  • home-assistant-matter-hub
  • homebox
  • homepage-dashboard
  • homer
  • hydrus
  • hydrus.doc
  • hypnotix
  • immich
  • immich-cli
  • immich-kiosk
  • invidtui
  • it-tools
  • jellyfin-mpv-shim
  • jellyfin-mpv-shim.dist
  • jellyfin-tui
  • jellytui
  • jftui
  • karakeep
  • kdePackages.kalarm
  • kdePackages.kalarm.debug
  • kdePackages.kalarm.dev
  • kdePackages.kalarm.devtools
  • kdePackages.plasmatube
  • kdePackages.plasmatube.debug
  • kdePackages.plasmatube.dev
  • kdePackages.plasmatube.devtools
  • kikoplay
  • kilocode-cli
  • klipperscreen
  • kodiPackages.sendtokodi
  • ldap-manager
  • legcord
  • lemmy-ui
  • lessc
  • linkwarden
  • linux-wallpaperengine
  • liquidsoap
  • lollypop
  • mcporter
  • memento
  • memos
  • meshtastic-web
  • metacubexd
  • mgrep
  • misskey
  • mkchromecast
  • mkchromecast.dist
  • modrinth-app
  • modrinth-app-unwrapped
  • monophony
  • monophony.dist
  • moodle-dl
  • moodle-dl.dist
  • moonfire-nvr
  • moonlight
  • mopidy-youtube
  • mopidy-youtube.dist
  • motrix-next
  • mov-cli
  • mov-cli.dist
  • mpc-qt
  • mpv
  • mpv-handler
  • mpvScripts.mpv-playlistmanager
  • mpvpaper
  • n8n
  • n8n-nodes-evolution-api
  • ni
  • nixpkgs-manual
  • nrm
  • ocis
  • openlist
  • openspec
  • overlayed
  • oxfmt
  • oxlint
  • paperless-ngx
  • paperless-ngx.dist
  • papra
  • parabolic
  • parca
  • parrot
  • pawn-appetit
  • pear-desktop
  • peertube
  • peertube.cli
  • peertube.runner
  • persepolis
  • pgrok
  • pgrok.server
  • photoqt
  • picgo
  • pinchflat
  • pipe-viewer
  • pipe-viewer.devdoc
  • piped
  • pipeline
  • plex-mpv-shim
  • plex-mpv-shim.dist
  • pnpm
  • pnpm-fixup-state-db
  • pnpmConfigHook
  • pnpm_10
  • pnpm_10_29_2
  • pnpm_8
  • pnpm_9
  • pocket-id
  • podman-desktop
  • porn-vault
  • postcss
  • previewqt
  • prisma_6
  • prisma_7
  • python313Packages.bgutil-ytdlp-pot-provider
  • python313Packages.bgutil-ytdlp-pot-provider.dist
  • python313Packages.django-filingcabinet
  • python313Packages.django-filingcabinet.dist
  • python313Packages.gradio
  • python313Packages.gradio-client
  • python313Packages.gradio-client.dist
  • python313Packages.gradio-pdf
  • python313Packages.gradio-pdf.dist
  • python313Packages.gradio.dist
  • python313Packages.mpv
  • python313Packages.mpv.dist
  • python313Packages.smolagents
  • python313Packages.smolagents.dist
  • python313Packages.tubeup
  • python313Packages.tubeup.dist
  • python313Packages.txtai
  • python313Packages.txtai.dist
  • python313Packages.yark
  • python313Packages.yark.dist
  • yt-dlp (python313Packages.yt-dlp)
  • python313Packages.yt-dlp-ejs
  • python313Packages.yt-dlp-ejs.dist
  • yt-dlp-light (python313Packages.yt-dlp-light)
  • yt-dlp-light.dist (python313Packages.yt-dlp-light.dist)
  • yt-dlp.dist (python313Packages.yt-dlp.dist)
  • python314Packages.bgutil-ytdlp-pot-provider
  • python314Packages.bgutil-ytdlp-pot-provider.dist
  • python314Packages.django-filingcabinet
  • python314Packages.django-filingcabinet.dist
  • python314Packages.gradio
  • python314Packages.gradio-client
  • python314Packages.gradio-client.dist
  • python314Packages.gradio-pdf
  • python314Packages.gradio-pdf.dist
  • python314Packages.gradio.dist
  • python314Packages.smolagents
  • python314Packages.smolagents.dist
  • python314Packages.tubeup
  • python314Packages.tubeup.dist
  • python314Packages.txtai
  • python314Packages.txtai.dist
  • python314Packages.yark
  • python314Packages.yark.dist
  • python314Packages.yt-dlp
  • python314Packages.yt-dlp-ejs
  • python314Packages.yt-dlp-ejs.dist
  • python314Packages.yt-dlp-light
  • python314Packages.yt-dlp-light.dist
  • python314Packages.yt-dlp.dist
  • qimgv
  • qtgreet
  • quantframe
  • qui
  • radiance-vj
  • radio-cli
  • radioboat
  • readest
  • remark42
  • rembg
  • rembg.dist
  • renovate
  • rmfakecloud
  • rolldown
  • rquickshare
  • rsshub
  • satisfactorymodmanager
  • scdl
  • scdl.dist
  • seerr
  • serve
  • session-desktop
  • sftool-gui
  • shadcn
  • sharedown
  • sharkey
  • shira
  • shira.dist
  • shiru
  • shoko-webui
  • shopify-cli
  • signal-desktop
  • simple-live-app
  • simple-live-app.debug
  • simple-live-app.pubcache
  • siyuan
  • sketchybar-app-font
  • skills
  • slidev-cli
  • slimevr
  • somafm-cli
  • sparkle
  • splayer
  • spotdl
  • spotdl.dist
  • stremio-linux-shell
  • stylelint-lsp
  • styx
  • styx.lib
  • styx.themes
  • sub-store
  • sub-store-frontend
  • subtitleedit
  • svelte-check
  • svelte-language-server
  • svp
  • switchfin
  • synchrony
  • syncyomi
  • szurubooru.server
  • szurubooru.server.dist
  • tabby-agent
  • tabularis
  • tailwindcss-language-server
  • taler-challenger
  • taler-mdb
  • taler-merchant
  • taler-sync
  • taler-wallet-core
  • tartube-yt-dlp
  • tartube-yt-dlp.dist
  • taze
  • teleport (teleport_18)
  • teleport.client (teleport_18.client)
  • teleport_17
  • teleport_17.client
  • tests.home-assistant-components.media_extractor
  • tests.pnpm.pnpm-empty-lockfile
  • tests.pnpm.pnpm-fixup-state-db
  • tests.pnpm.pnpm_11
  • textlint
  • tomato-c
  • tsx
  • tuba
  • turborepo-remote-cache
  • typespec
  • umami
  • varia
  • vencord
  • vencord-web-extension
  • vesktop
  • vidcutter
  • vidcutter.dist
  • video-downloader
  • vikunja
  • vikunja-desktop
  • vimPlugins.coc-cmake
  • vimPlugins.nvim-vtsls
  • vitejs
  • voicevox
  • vrcvideocacher
  • vscode-extensions.eamodio.gitlens
  • vscode-extensions.rooveterinaryinc.roo-cline
  • vtsls
  • vue-language-server
  • wealthfolio
  • weaver
  • webcord-vencord
  • webeep-sync
  • woodpecker-server
  • wox
  • wrangler
  • wtwitch
  • yewtube
  • yewtube.dist
  • your_spotify
  • youtube-tui
  • ytcc
  • ytcc.dist
  • ytdl-sub
  • ytdl-sub.dist
  • ytdownloader
  • ytfzf
  • ytmdl
  • ytmdl.dist
  • ytui-music
  • zammad
  • zashboard
  • zenn-cli
  • zigbee2mqtt
  • zipline
  • zulip

Error logs: `x86_64-linux`
documenso
npm error gyp ERR! cwd /build/source/node_modules/canvas
npm error gyp ERR! node -v v24.14.1
npm error gyp ERR! node-gyp -v v12.2.0
npm error gyp ERR! $npm_package_name canvas
npm error gyp ERR! $npm_package_version 2.11.2
npm error gyp ERR! not ok 
npm error node-pre-gyp ERR! build error 
npm error node-pre-gyp ERR! stack Error: Failed to execute '/nix/store/2bslrww4ch7my47xxwabj1qy4acq4720-nodejs-slim-24.14.1/bin/node /nix/store/1d1cfwpg84gmfvjaf9nspdyj34cj5gg8-nodejs-slim-24.14.1-npm/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --update-binary --module=/build/source/node_modules/canvas/build/Release/canvas.node --module_name=canvas --module_path=/build/source/node_modules/canvas/build/Release --napi_version=10 --node_abi_napi=napi --napi_build_version=0 --node_napi_label=node-v137' (1)
npm error node-pre-gyp ERR! stack     at ChildProcess.<anonymous> (/build/source/node_modules/@mapbox/node-pre-gyp/lib/util/compile.js:89:23)
npm error node-pre-gyp ERR! stack     at ChildProcess.emit (node:events:508:28)
npm error node-pre-gyp ERR! stack     at maybeClose (node:internal/child_process:1100:16)
npm error node-pre-gyp ERR! stack     at ChildProcess._handle.onexit (node:internal/child_process:305:5)
npm error node-pre-gyp ERR! System Linux 6.18.28
npm error node-pre-gyp ERR! command "/nix/store/2bslrww4ch7my47xxwabj1qy4acq4720-nodejs-slim-24.14.1/bin/node" "/build/source/node_modules/.bin/node-pre-gyp" "install" "--fallback-to-build" "--update-binary"
npm error node-pre-gyp ERR! cwd /build/source/node_modules/canvas
npm error node-pre-gyp ERR! node -v v24.14.1
npm error node-pre-gyp ERR! node-pre-gyp -v v1.0.11
npm error node-pre-gyp ERR! not ok
npm error Log files were not written due to an error writing to the directory: /nix/store/m4d0hckndwadljinshlbzmbfcbz8xcmg-documenso-1.12.6-npm-deps/_logs
npm error You can rerun the command with `--loglevel=verbose` to see the logs in your terminal
kdePackages.audiotube
[3/139] Generating ts...
[4/139] Populating .qmlls.ini file at /build/audiotube-26.04.1/build/.qt/.qmlls.build.ini
[5/139] Automatic MOC for target ytm
[6/139] Generating mo...
[7/139] Building CXX object src/CMakeFiles/ytm.dir/ytm_autogen/mocs_compilation.cpp.o
[8/139] Building CXX object src/CMakeFiles/ytm.dir/ytmusic.cpp.o
FAILED: [code=1] src/CMakeFiles/ytm.dir/ytmusic.cpp.o 
/nix/store/qd70v8g0561vm8m33kmnp79z00cgyi5n-gcc-wrapper-15.2.0/bin/g++ -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_FROM_BYTEARRAY -DQT_NO_CAST_TO_ASCII -DQT_NO_FOREACH -DQT_NO_KEYWORDS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_URL_CAST_FROM_STRING -DQT_STRICT_ITERATORS -DQT_USE_QSTRINGBUILDER -DRANDALL_WAS_HERE -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -I/build/audiotube-26.04.1/build/src -I/build/audiotube-26.04.1/src -I/build/audiotube-26.04.1/build/src/ytm_autogen/include -isystem /nix/store/aywmcb0lm1m49chkhln6q9n9h8x6lmi4-python3.13-pybind11-3.0.3/include -fno-operator-names -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wnon-virtual-dtor -Woverloaded-virtual -Werror=return-type -Werror=init-self -Werror=undef -Wvla -Wdate-time -Wsuggest-override -Wlogical-op -pedantic -Wzero-as-null-pointer-constant -Wmissing-include-dirs -fdiagnostics-color=always -fexceptions -O3 -DNDEBUG -std=gnu++20 -fvisibility=hidden -fvisibility-inlines-hidden -MD -MT src/CMakeFiles/ytm.dir/ytmusic.cpp.o -MF src/CMakeFiles/ytm.dir/ytmusic.cpp.o.d -o src/CMakeFiles/ytm.dir/ytmusic.cpp.o -c /build/audiotube-26.04.1/src/ytmusic.cpp
In file included from /nix/store/aywmcb0lm1m49chkhln6q9n9h8x6lmi4-python3.13-pybind11-3.0.3/include/pybind11/detail/common.h:12,
                 from /nix/store/aywmcb0lm1m49chkhln6q9n9h8x6lmi4-python3.13-pybind11-3.0.3/include/pybind11/attr.h:13,
                 from /nix/store/aywmcb0lm1m49chkhln6q9n9h8x6lmi4-python3.13-pybind11-3.0.3/include/pybind11/detail/class.h:12,
                 from /nix/store/aywmcb0lm1m49chkhln6q9n9h8x6lmi4-python3.13-pybind11-3.0.3/include/pybind11/pybind11.h:12,
                 from /nix/store/aywmcb0lm1m49chkhln6q9n9h8x6lmi4-python3.13-pybind11-3.0.3/include/pybind11/embed.h:12,
                 from /build/audiotube-26.04.1/src/ytmusic.cpp:10:
/nix/store/aywmcb0lm1m49chkhln6q9n9h8x6lmi4-python3.13-pybind11-3.0.3/include/pybind11/conduit/wrap_include_python_h.h:44:10: fatal error: Python.h: No such file or directory
   44 | #include <Python.h>
      |          ^~~~~~~~~~
compilation terminated.
[9/139] Automatic MOC for target qtdbusextended
ninja: build stopped: subcommand failed.
minitube
      |                    ^~~~~~~~
src/main.cpp:94:22: warning: ignoring return value of 'bool QTranslator::load(const QString&, const QString&, const QString&, const QString&)', declared with attribute 'nodiscard' [8;;https://gcc.gnu.org/onlinedocs/gcc-15.2.0/gcc/Warning-Options.html#index-Wno-unused-result�-Wunused-result8;;�]
   94 |     qtTranslator.load(QLatin1String("qt_") + QLocale::system().name(),
      |     ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   95 |                       QLibraryInfo::location(QLibraryInfo::TranslationsPath));
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /nix/store/1q8sx67miwfn3ws5k7mkmkcjbym4akkp-qtbase-6.11.0/include/QtCore/QtCore:296:
/nix/store/1q8sx67miwfn3ws5k7mkmkcjbym4akkp-qtbase-6.11.0/include/QtCore/qtranslator.h:34:24: note: declared here
   34 |     [[nodiscard]] bool load(const QString & filename,
      |                        ^~~~
src/main.cpp:114:20: warning: ignoring return value of 'bool QTranslator::load(const QLocale&, const QString&, const QString&, const QString&, const QString&)', declared with attribute 'nodiscard' [8;;https://gcc.gnu.org/onlinedocs/gcc-15.2.0/gcc/Warning-Options.html#index-Wno-unused-result�-Wunused-result8;;�]
  114 |     translator.load(QLocale::system(), QString(), QString(), localeDir);
      |     ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/nix/store/1q8sx67miwfn3ws5k7mkmkcjbym4akkp-qtbase-6.11.0/include/QtCore/qtranslator.h:38:24: note: declared here
   38 |     [[nodiscard]] bool load(const QLocale & locale,
      |                        ^~~~
src/subscriptionimportview.cpp: In member function 'virtual void SubscriptionImportView::showEvent(QShowEvent*)':
src/subscriptionimportview.cpp:100:52: warning: unused parameter 'event' [8;;https://gcc.gnu.org/onlinedocs/gcc-15.2.0/gcc/Warning-Options.html#index-Wno-unused-parameter�-Wunused-parameter8;;�]
  100 | void SubscriptionImportView::showEvent(QShowEvent *event) {}
      |                                        ~~~~~~~~~~~~^~~~~
python314Packages.mpv
	/homeless-shelter/.cache/fontconfig

Fontconfig error: No writable cache directories
/var/cache/fontconfig
/homeless-shelter/.cache/fontconfig

Fontconfig error: No writable cache directories
/var/cache/fontconfig
/homeless-shelter/.cache/fontconfig

Fontconfig error: No writable cache directories
/var/cache/fontconfig
/homeless-shelter/.cache/fontconfig

Fontconfig error: No writable cache directories
/var/cache/fontconfig
/homeless-shelter/.cache/fontconfig
=========================== short test summary info ============================
FAILED tests/test_mpv.py::RegressionTests::test_wait_for_property_concurrency - SystemError: ('Error running mpv command', -12, (<MpvHandle object at 0x7ff...
=================== 1 failed, 46 passed in 133.80s (0:02:13) ===================

Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
@Scrumplex Scrumplex force-pushed the pkgs/pnpm/init-11 branch from 0a5d7bf to 7d318df Compare May 11, 2026 21:13
@Scrumplex Scrumplex changed the title pnpm_11: init at 11.0.4 pnpm_11: init at 11.1.0 May 11, 2026
@Scrumplex

Copy link
Copy Markdown
Member Author

nixpkgs-review result

Generated using nixpkgs-review.

Command: nixpkgs-review pr 505103
Commit: 7d318dfe3b95f6ce5f97db40a3b2dee704d75227


x86_64-linux

❌ 7 packages failed to build:
  • documenso
  • gui-for-clash
  • kdePackages.audiotube
  • kdePackages.audiotube.debug
  • kdePackages.audiotube.dev
  • kdePackages.audiotube.devtools
  • minitube
✅ 403 packages built:
  • adl
  • agent-browser
  • ani-cli
  • aonsoku
  • apache-airflow
  • apache-airflow.dist
  • apache-answer
  • artalk
  • astro-language-server
  • authelia
  • auto-editor
  • autobrr
  • autoprefixer
  • backrest
  • bash-language-server
  • bilibili-tui
  • bluebubbles
  • bluebubbles.debug
  • bluebubbles.pubcache
  • bluesky-pds
  • botamusique
  • bumpp
  • caddyfile-language-server
  • castero
  • castero.dist
  • catt
  • catt.dist
  • cdxgen
  • celluloid
  • changelogen
  • cherry-studio
  • chiri
  • cine
  • clapper
  • clapper-enhancers
  • clash-verge-rev
  • claude-code-router
  • cliamp
  • coc-cmake
  • concurrently
  • context7-mcp
  • conventional-changelog-cli
  • cplay-ng
  • cplay-ng.dist
  • cspell
  • ctx7
  • curseradio
  • curseradio.dist
  • daed
  • deadlock-mod-manager
  • delfin
  • deltachat-desktop
  • dep-scan
  • dep-scan.dist
  • discourse
  • discourseAllPlugins
  • dmlive
  • dokieli
  • dorion
  • dra-cla
  • element-desktop
  • element-web (element-web-unwrapped)
  • emmet-language-server
  • en-croissant
  • equicord
  • etherpad-lite
  • fedistar
  • feishin
  • ff2mpv
  • ff2mpv-go
  • filebrowser
  • firezone-gui-client
  • firezone-server (firezone-server-domain)
  • firezone-server-api
  • firezone-server-web
  • flood
  • fmd-server
  • folo
  • froide
  • froide-govplan
  • froide-govplan.dist
  • froide.dist
  • gale
  • gallery-dl
  • gallery-dl.dist
  • garage-webui
  • ghostfolio
  • gitbutler
  • gitea
  • gitea.data
  • gitify
  • gitlab-duo
  • goaway
  • gonic
  • gophertube
  • gpodder
  • gtk-pipe-viewer
  • gtk-pipe-viewer.devdoc
  • gui-for-singbox
  • haruna
  • headplane
  • heroic
  • heroic-unwrapped
  • home-assistant-custom-lovelace-modules.atomic-calendar-revive
  • home-assistant-custom-lovelace-modules.custom-sidebar
  • home-assistant-custom-lovelace-modules.kiosk-mode
  • home-assistant-matter-hub
  • homebox
  • homepage-dashboard
  • homer
  • hydrus
  • hydrus.doc
  • hypnotix
  • immich
  • immich-cli
  • immich-kiosk
  • invidtui
  • it-tools
  • jellyfin-mpv-shim
  • jellyfin-mpv-shim.dist
  • jellyfin-tui
  • jellytui
  • jftui
  • karakeep
  • kdePackages.kalarm
  • kdePackages.kalarm.debug
  • kdePackages.kalarm.dev
  • kdePackages.kalarm.devtools
  • kdePackages.plasmatube
  • kdePackages.plasmatube.debug
  • kdePackages.plasmatube.dev
  • kdePackages.plasmatube.devtools
  • kikoplay
  • kilocode-cli
  • klipperscreen
  • kodiPackages.sendtokodi
  • ldap-manager
  • legcord
  • lemmy-ui
  • lessc
  • linkwarden
  • linux-wallpaperengine
  • liquidsoap
  • lollypop
  • mcporter
  • memento
  • memos
  • meshtastic-web
  • metacubexd
  • mgrep
  • misskey
  • mkchromecast
  • mkchromecast.dist
  • modrinth-app
  • modrinth-app-unwrapped
  • monophony
  • monophony.dist
  • moodle-dl
  • moodle-dl.dist
  • moonfire-nvr
  • moonlight
  • mopidy-youtube
  • mopidy-youtube.dist
  • motrix-next
  • mov-cli
  • mov-cli.dist
  • mpc-qt
  • mpv
  • mpv-handler
  • mpvScripts.mpv-playlistmanager
  • mpvpaper
  • n8n
  • n8n-nodes-evolution-api
  • ni
  • nixpkgs-manual
  • nrm
  • ocis
  • openlist
  • openspec
  • overlayed
  • oxfmt
  • oxlint
  • paperless-ngx
  • paperless-ngx.dist
  • papra
  • parabolic
  • parca
  • parrot
  • pawn-appetit
  • pear-desktop
  • peertube
  • peertube.cli
  • peertube.runner
  • persepolis
  • pgrok
  • pgrok.server
  • photoqt
  • picgo
  • pinchflat
  • pipe-viewer
  • pipe-viewer.devdoc
  • piped
  • pipeline
  • plex-mpv-shim
  • plex-mpv-shim.dist
  • pnpm
  • pnpm-fixup-state-db
  • pnpmConfigHook
  • pnpm_10
  • pnpm_10_29_2
  • pnpm_8
  • pnpm_9
  • pocket-id
  • podman-desktop
  • porn-vault
  • postcss
  • previewqt
  • prisma_6
  • prisma_7
  • python313Packages.bgutil-ytdlp-pot-provider
  • python313Packages.bgutil-ytdlp-pot-provider.dist
  • python313Packages.django-filingcabinet
  • python313Packages.django-filingcabinet.dist
  • python313Packages.gradio
  • python313Packages.gradio-client
  • python313Packages.gradio-client.dist
  • python313Packages.gradio-pdf
  • python313Packages.gradio-pdf.dist
  • python313Packages.gradio.dist
  • python313Packages.mpv
  • python313Packages.mpv.dist
  • python313Packages.smolagents
  • python313Packages.smolagents.dist
  • python313Packages.tubeup
  • python313Packages.tubeup.dist
  • python313Packages.txtai
  • python313Packages.txtai.dist
  • python313Packages.yark
  • python313Packages.yark.dist
  • yt-dlp (python313Packages.yt-dlp)
  • python313Packages.yt-dlp-ejs
  • python313Packages.yt-dlp-ejs.dist
  • yt-dlp-light (python313Packages.yt-dlp-light)
  • yt-dlp-light.dist (python313Packages.yt-dlp-light.dist)
  • yt-dlp.dist (python313Packages.yt-dlp.dist)
  • python314Packages.bgutil-ytdlp-pot-provider
  • python314Packages.bgutil-ytdlp-pot-provider.dist
  • python314Packages.django-filingcabinet
  • python314Packages.django-filingcabinet.dist
  • python314Packages.gradio
  • python314Packages.gradio-client
  • python314Packages.gradio-client.dist
  • python314Packages.gradio-pdf
  • python314Packages.gradio-pdf.dist
  • python314Packages.gradio.dist
  • python314Packages.mpv
  • python314Packages.mpv.dist
  • python314Packages.smolagents
  • python314Packages.smolagents.dist
  • python314Packages.tubeup
  • python314Packages.tubeup.dist
  • python314Packages.txtai
  • python314Packages.txtai.dist
  • python314Packages.yark
  • python314Packages.yark.dist
  • python314Packages.yt-dlp
  • python314Packages.yt-dlp-ejs
  • python314Packages.yt-dlp-ejs.dist
  • python314Packages.yt-dlp-light
  • python314Packages.yt-dlp-light.dist
  • python314Packages.yt-dlp.dist
  • qimgv
  • qtgreet
  • quantframe
  • qui
  • radiance-vj
  • radio-cli
  • radioboat
  • readest
  • remark42
  • rembg
  • rembg.dist
  • renovate
  • rmfakecloud
  • rolldown
  • rquickshare
  • rsshub
  • satisfactorymodmanager
  • scdl
  • scdl.dist
  • seerr
  • serve
  • session-desktop
  • sftool-gui
  • shadcn
  • sharedown
  • sharkey
  • shira
  • shira.dist
  • shiru
  • shoko-webui
  • shopify-cli
  • signal-desktop
  • simple-live-app
  • simple-live-app.debug
  • simple-live-app.pubcache
  • siyuan
  • sketchybar-app-font
  • skills
  • slidev-cli
  • slimevr
  • somafm-cli
  • sparkle
  • splayer
  • spotdl
  • spotdl.dist
  • stremio-linux-shell
  • stylelint-lsp
  • styx
  • styx.lib
  • styx.themes
  • sub-store
  • sub-store-frontend
  • subtitleedit
  • svelte-check
  • svelte-language-server
  • svp
  • switchfin
  • synchrony
  • syncyomi
  • szurubooru.server
  • szurubooru.server.dist
  • tabby-agent
  • tabularis
  • tailwindcss-language-server
  • taler-challenger
  • taler-mdb
  • taler-merchant
  • taler-sync
  • taler-wallet-core
  • tartube-yt-dlp
  • tartube-yt-dlp.dist
  • taze
  • teleport (teleport_18)
  • teleport.client (teleport_18.client)
  • teleport_17
  • teleport_17.client
  • tests.home-assistant-components.media_extractor
  • tests.pnpm.pnpm-empty-lockfile
  • tests.pnpm.pnpm-fixup-state-db
  • tests.pnpm.pnpm_11
  • textlint
  • tomato-c
  • tsx
  • tuba
  • turborepo-remote-cache
  • typespec
  • umami
  • varia
  • vencord
  • vencord-web-extension
  • vesktop
  • vidcutter
  • vidcutter.dist
  • video-downloader
  • vikunja
  • vikunja-desktop
  • vimPlugins.coc-cmake
  • vimPlugins.nvim-vtsls
  • vitejs
  • voicevox
  • vrcvideocacher
  • vscode-extensions.eamodio.gitlens
  • vscode-extensions.rooveterinaryinc.roo-cline
  • vtsls
  • vue-language-server
  • wealthfolio
  • weaver
  • webcord-vencord
  • webeep-sync
  • woodpecker-server
  • wox
  • wrangler
  • wtwitch
  • yewtube
  • yewtube.dist
  • your_spotify
  • youtube-tui
  • ytcc
  • ytcc.dist
  • ytdl-sub
  • ytdl-sub.dist
  • ytdownloader
  • ytfzf
  • ytmdl
  • ytmdl.dist
  • ytui-music
  • zammad
  • zashboard
  • zenn-cli
  • zigbee2mqtt
  • zipline
  • zulip

Error logs: `x86_64-linux`
documenso
npm error gyp ERR! cwd /build/source/node_modules/canvas
npm error gyp ERR! node -v v24.14.1
npm error gyp ERR! node-gyp -v v12.2.0
npm error gyp ERR! $npm_package_name canvas
npm error gyp ERR! $npm_package_version 2.11.2
npm error gyp ERR! not ok
npm error node-pre-gyp ERR! build error
npm error node-pre-gyp ERR! stack Error: Failed to execute '/nix/store/2bslrww4ch7my47xxwabj1qy4acq4720-nodejs-slim-24.14.1/bin/node /nix/store/1d1cfwpg84gmfvjaf9nspdyj34cj5gg8-nodejs-slim-24.14.1-npm/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --update-binary --module=/build/source/node_modules/canvas/build/Release/canvas.node --module_name=canvas --module_path=/build/source/node_modules/canvas/build/Release --napi_version=10 --node_abi_napi=napi --napi_build_version=0 --node_napi_label=node-v137' (1)
npm error node-pre-gyp ERR! stack     at ChildProcess.<anonymous> (/build/source/node_modules/@mapbox/node-pre-gyp/lib/util/compile.js:89:23)
npm error node-pre-gyp ERR! stack     at ChildProcess.emit (node:events:508:28)
npm error node-pre-gyp ERR! stack     at maybeClose (node:internal/child_process:1100:16)
npm error node-pre-gyp ERR! stack     at ChildProcess._handle.onexit (node:internal/child_process:305:5)
npm error node-pre-gyp ERR! System Linux 6.18.28
npm error node-pre-gyp ERR! command "/nix/store/2bslrww4ch7my47xxwabj1qy4acq4720-nodejs-slim-24.14.1/bin/node" "/build/source/node_modules/.bin/node-pre-gyp" "install" "--fallback-to-build" "--update-binary"
npm error node-pre-gyp ERR! cwd /build/source/node_modules/canvas
npm error node-pre-gyp ERR! node -v v24.14.1
npm error node-pre-gyp ERR! node-pre-gyp -v v1.0.11
npm error node-pre-gyp ERR! not ok
npm error Log files were not written due to an error writing to the directory: /nix/store/m4d0hckndwadljinshlbzmbfcbz8xcmg-documenso-1.12.6-npm-deps/_logs
npm error You can rerun the command with `--loglevel=verbose` to see the logs in your terminal
kdePackages.audiotube
[3/139] Generating ts...
[4/139] Populating .qmlls.ini file at /build/audiotube-26.04.1/build/.qt/.qmlls.build.ini
[5/139] Automatic MOC for target ytm
[6/139] Generating mo...
[7/139] Building CXX object src/CMakeFiles/ytm.dir/ytm_autogen/mocs_compilation.cpp.o
[8/139] Building CXX object src/CMakeFiles/ytm.dir/ytmusic.cpp.o
FAILED: [code=1] src/CMakeFiles/ytm.dir/ytmusic.cpp.o
/nix/store/qd70v8g0561vm8m33kmnp79z00cgyi5n-gcc-wrapper-15.2.0/bin/g++ -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_FROM_BYTEARRAY -DQT_NO_CAST_TO_ASCII -DQT_NO_FOREACH -DQT_NO_KEYWORDS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_URL_CAST_FROM_STRING -DQT_STRICT_ITERATORS -DQT_USE_QSTRINGBUILDER -DRANDALL_WAS_HERE -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -I/build/audiotube-26.04.1/build/src -I/build/audiotube-26.04.1/src -I/build/audiotube-26.04.1/build/src/ytm_autogen/include -isystem /nix/store/aywmcb0lm1m49chkhln6q9n9h8x6lmi4-python3.13-pybind11-3.0.3/include -fno-operator-names -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wnon-virtual-dtor -Woverloaded-virtual -Werror=return-type -Werror=init-self -Werror=undef -Wvla -Wdate-time -Wsuggest-override -Wlogical-op -pedantic -Wzero-as-null-pointer-constant -Wmissing-include-dirs -fdiagnostics-color=always -fexceptions -O3 -DNDEBUG -std=gnu++20 -fvisibility=hidden -fvisibility-inlines-hidden -MD -MT src/CMakeFiles/ytm.dir/ytmusic.cpp.o -MF src/CMakeFiles/ytm.dir/ytmusic.cpp.o.d -o src/CMakeFiles/ytm.dir/ytmusic.cpp.o -c /build/audiotube-26.04.1/src/ytmusic.cpp
In file included from /nix/store/aywmcb0lm1m49chkhln6q9n9h8x6lmi4-python3.13-pybind11-3.0.3/include/pybind11/detail/common.h:12,
                 from /nix/store/aywmcb0lm1m49chkhln6q9n9h8x6lmi4-python3.13-pybind11-3.0.3/include/pybind11/attr.h:13,
                 from /nix/store/aywmcb0lm1m49chkhln6q9n9h8x6lmi4-python3.13-pybind11-3.0.3/include/pybind11/detail/class.h:12,
                 from /nix/store/aywmcb0lm1m49chkhln6q9n9h8x6lmi4-python3.13-pybind11-3.0.3/include/pybind11/pybind11.h:12,
                 from /nix/store/aywmcb0lm1m49chkhln6q9n9h8x6lmi4-python3.13-pybind11-3.0.3/include/pybind11/embed.h:12,
                 from /build/audiotube-26.04.1/src/ytmusic.cpp:10:
/nix/store/aywmcb0lm1m49chkhln6q9n9h8x6lmi4-python3.13-pybind11-3.0.3/include/pybind11/conduit/wrap_include_python_h.h:44:10: fatal error: Python.h: No such file or directory
   44 | #include <Python.h>
      |          ^~~~~~~~~~
compilation terminated.
[9/139] Automatic MOC for target qtdbusextended
ninja: build stopped: subcommand failed.
minitube
                 from /nix/store/1q8sx67miwfn3ws5k7mkmkcjbym4akkp-qtbase-6.11.0/include/QtGui/qabstracttextdocumentlayout.h:9,
                 from /nix/store/1q8sx67miwfn3ws5k7mkmkcjbym4akkp-qtbase-6.11.0/include/QtGui/QtGui:6,
                 from /nix/store/1q8sx67miwfn3ws5k7mkmkcjbym4akkp-qtbase-6.11.0/include/QtWidgets/QtWidgetsDepends:4,
                 from /nix/store/1q8sx67miwfn3ws5k7mkmkcjbym4akkp-qtbase-6.11.0/include/QtWidgets/QtWidgets:3,
                 from src/subscriptionimportview.h:4,
                 from src/subscriptionimportview.cpp:1:
/nix/store/1q8sx67miwfn3ws5k7mkmkcjbym4akkp-qtbase-6.11.0/include/QtGui/qguiapplication.h:161:89: note: declared here
  161 |     QT_DEPRECATED_VERSION_X_6_0("Handle QEvent::ApplicationPaletteChange instead") void paletteChanged(const QPalette &pal);
      |                                                                                         ^~~~~~~~~~~~~~
lib/qt-reusable-widgets/iconutils.h: In static member function 'static void IconUtils::setIcon(T*, const char*)':
lib/qt-reusable-widgets/iconutils.h:23:46: warning: 'void QGuiApplication::paletteChanged(const QPalette&)' is deprecated: Handle QEvent::ApplicationPaletteChange instead [8;;https://gcc.gnu.org/onlinedocs/gcc-15.2.0/gcc/Warning-Options.html#index-Wdeprecated-declarations-Wdeprecated-declarations8;;]
   23 |         obj->connect(qApp, &QGuiApplication::paletteChanged, obj, setObjIcon);
      |                                              ^~~~~~~~~~~~~~
/nix/store/1q8sx67miwfn3ws5k7mkmkcjbym4akkp-qtbase-6.11.0/include/QtGui/qguiapplication.h:161:89: note: declared here
  161 |     QT_DEPRECATED_VERSION_X_6_0("Handle QEvent::ApplicationPaletteChange instead") void paletteChanged(const QPalette &pal);
      |                                                                                         ^~~~~~~~~~~~~~
src/subscriptionimportview.cpp: In member function 'virtual void SubscriptionImportView::showEvent(QShowEvent*)':
src/subscriptionimportview.cpp:100:52: warning: unused parameter 'event' [8;;https://gcc.gnu.org/onlinedocs/gcc-15.2.0/gcc/Warning-Options.html#index-Wno-unused-parameter-Wunused-parameter8;;]
  100 | void SubscriptionImportView::showEvent(QShowEvent *event) {}
      |                                        ~~~~~~~~~~~~^~~~~

@anund

anund commented May 20, 2026

Copy link
Copy Markdown
Contributor

Derivations that use fetchPnpmDeps without pinning the pnpm version can fail with the error ERR_PNPM_LOCKFILE_CONFIG_MISMATCH. The error can be fixed by pinning to the older version of pnpm in the build derivation as documented here.

Might be something to add to the pnpmConfigHook error handling in future.

@Scrumplex

Copy link
Copy Markdown
Member Author

To avoid this within nixpkgs I was thinking about converting pnpm to a proper alias, so that CI will fail for any package that doesn't pin pnpm.

But extending the error reported by the config hook is also a good improvement.

@hsjobeki

Copy link
Copy Markdown
Contributor

This PR changes FOD hashes: I wrongly blamed #522703 for this first.

  • b921adb : Commit on master before this PR
  • 7d318df : Last commit of this PR
$ git rev-parse HEAD
b921adb840062bb5e0856e7e827a251bbd818127

error: hash mismatch in fixed-output derivation '/nix/store/kq2pkw84l5idgrx24irx5imp3wllf966-54d60e2724662ada3759b90f1a67491b-pnpm-deps.drv':
         specified: sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
            got:    sha256-LCAgh+9R0QpddkHP7cgigO2hB/JA3D3/HlqnryLT3U0=
            

$ git rev-parse HEAD
7d318dfe3b95f6ce5f97db40a3b2dee704d75227

error: hash mismatch in fixed-output derivation '/nix/store/1j1n982pnw985n37smjdxkqfvhp0ly10-54d60e2724662ada3759b90f1a67491b-pnpm-deps.drv':
         specified: sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
            got:    sha256-sfl/yhkEJgRYgkKxeSIRNRyF7KKWtF5PTJ5r6MuTQq0=            

I think this is an architectural problem. FODs only invalidate if either name or hash attribute changes it's eval value.
It does not invalidate if the build-output changes. Any change in the build-script could change the output of an FOD.

Below is a technique i used in my own projects to add a hash of the input arguments that should invalidate the fod via its name, if they ever change. (I.e. a change in the build-script)

    fodAttrs = fodArgs // {
      pname = builtins.hashString "md5" (builtins.toJSON fodArgs); # Probably better used as a suffix
    };

@gepbird

gepbird commented May 28, 2026

Copy link
Copy Markdown
Contributor

@hsjobeki are you using the pnpm package (which got changed from pnpm_10 to pnpm_11 in this PR), or pnpm_10?
We recommend using a pinned version to avoid issues, this should be better communicated after #522535.

We rebuilt all packages (#505103 (comment)) to make sure the build script changes didn't change existing FOD hashes, and we found no issues in nixpkgs packages. If your project is public I can take a look why our changes broke it. Otherwise can you provide more info on how you're using pnpm?

@hsjobeki

hsjobeki commented May 28, 2026

Copy link
Copy Markdown
Contributor

@hsjobeki are you using the pnpm package (which got changed from pnpm_10 to pnpm_11 in this PR), or pnpm_10? We recommend using a pinned version to avoid issues, this should be better communicated after #522535.

We rebuilt all packages (#505103 (comment)) to make sure the build script changes didn't change existing FOD hashes, and we found no issues in nixpkgs packages. If your project is public I can take a look why our changes broke it. Otherwise can you provide more info on how you're using pnpm?

Ah it seems this was indeed the problem. I thought pnpm was pinned to pnpm_10.
We copied the usage example from the docs; which at this point didn't mention to use a pinned pnpm version

@diogotcorreia

Copy link
Copy Markdown
Member

Would it be reasonable to force fetchPnpmDeps to always take a pnpm argument? That way it would be harder to accidentally rely on pnpmLatest instead of a pinned version.
Or at least throw a warning perhaps

@hsjobeki

Copy link
Copy Markdown
Contributor

That said, I'm really glad you did the fod-mass-rebuild.

A warning for unpinned would be nice, especially since presumably a lot of people adopted this from the old docs

@Scrumplex

Copy link
Copy Markdown
Member Author

I proposed #522535 for a solution within nixpkgs

@gepbird gepbird mentioned this pull request May 28, 2026
14 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

6.topic: nodejs Node.js is a free, open-source, cross-platform JavaScript runtime environment 6.topic: python Python is a high-level, general-purpose programming language. 6.topic: vscode A free and versatile code editor that supports almost every major programming language. 8.has: documentation This PR adds or changes documentation 8.has: package (new) This PR adds a new package 10.rebuild-darwin: 101-500 This PR causes between 101 and 500 packages to rebuild on Darwin. 10.rebuild-linux: 101-500 This PR causes between 101 and 500 packages to rebuild on Linux. 12.approvals: 1 This PR was reviewed and approved by one person. 12.approved-by: package-maintainer This PR was reviewed and approved by a maintainer listed in any of the changed packages.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Update Request: pnpm 10.33.2 → 11.0.0

5 participants