Skip to content

pnpm.configHook: prevent hard linking on file systems without clone support#429554

Merged
Scrumplex merged 1 commit intoNixOS:masterfrom
terlar:fix-pnpm-packages-on-fs-without-clone
Jul 30, 2025
Merged

pnpm.configHook: prevent hard linking on file systems without clone support#429554
Scrumplex merged 1 commit intoNixOS:masterfrom
terlar:fix-pnpm-packages-on-fs-without-clone

Conversation

@terlar
Copy link
Copy Markdown
Contributor

@terlar terlar commented Jul 30, 2025

Fix #426636

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.

Add a 👍 reaction to pull requests you find important.

@nix-owners nix-owners bot requested review from Scrumplex and gepbird July 30, 2025 08:35
@nixpkgs-ci nixpkgs-ci bot added 10.rebuild-linux: 101-500 This PR causes between 101 and 500 packages to rebuild on Linux. 10.rebuild-darwin: 11-100 This PR causes between 11 and 100 packages to rebuild on Darwin. 6.topic: nodejs Node.js is a free, open-source, cross-platform JavaScript runtime environment labels Jul 30, 2025
@Scrumplex
Copy link
Copy Markdown
Member

Seems reasonable. I completely missed the discussion in the issue, but I was theorizing that hard linking is causing modifications to the store that in turn cause cache misses.

Copy link
Copy Markdown
Contributor

@gepbird gepbird left a comment

Choose a reason for hiding this comment

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

Huge thanks for finding this!

It starts to make sense for me too, the biggest mystery was why it worked on my main machine (which uses btrfs, supporting copy on write), but not on my VM (which uses ext4, pnpm would fall back to hard linking)

This looks good, but running nixpkgs-review wouldn't hurt

I only tested this with the typespec package, build fine on my VM :)

@nixpkgs-ci nixpkgs-ci bot added the 12.approvals: 1 This PR was reviewed and approved by one person. label Jul 30, 2025
@terlar
Copy link
Copy Markdown
Contributor Author

terlar commented Jul 30, 2025

Yeah, I guess I have been working too little with hard links even considering this to be the issue. But with all the data now gathered it all makes sense.

Yes, I was running nixpkgs-review, but ran out of disk space. I have cleaned up and will do another attempt. Will run it both on an btrfs system and ext4.

@SuperSandro2000
Copy link
Copy Markdown
Member

Do we need to backport this?

@nixpkgs-ci nixpkgs-ci bot added 12.approvals: 2 This PR was reviewed and approved by two persons. and removed 12.approvals: 1 This PR was reviewed and approved by one person. labels Jul 30, 2025
@gepbird
Copy link
Copy Markdown
Contributor

gepbird commented Jul 30, 2025

Do we need to backport this?

Not necessarily, PNPM packages build on release-25.05 because the breaking #414448 PR was not backported.

However if for any reason this bug manifests on stable, debugging it again wouldn't be fun, other than causing ~100-200 package rebuilds, backporting it should be safe. Since we backport all PNPM package updates, if we want to decrease the rebuilds we could bundle the backport of this PR with the next backport of a PNPM version bump.

@Scrumplex
Copy link
Copy Markdown
Member

nixpkgs-review result

Generated using nixpkgs-review.

Command: nixpkgs-review pr 429554
Commit: 3427c6a68870738fc6d0f0c9da7a69c4e79e0e1f


x86_64-linux

⏩ 6 packages marked as broken and skipped:
  • en-croissant
  • gui-for-clash
  • gui-for-singbox
  • pot
  • rquickshare-legacy
  • satisfactorymodmanager
❌ 7 packages failed to build:
  • documenso
  • firezone-gui-client
  • froide (python313Packages.froide)
  • froide.dist (python313Packages.froide.dist)
  • python312Packages.froide
  • python312Packages.froide.dist
  • shadcn
✅ 144 packages built:
  • aonsoku
  • apache-answer
  • artalk
  • astro-language-server
  • authelia
  • autobrr
  • autoprefixer
  • backrest
  • bash-language-server
  • bumpp
  • cdxgen
  • clash-verge-rev
  • concurrently
  • daed
  • deltachat-desktop
  • discourse
  • discourseAllPlugins
  • dorion
  • emmet-language-server
  • equibop
  • equicord
  • etherpad-lite
  • fedistar
  • filebrowser
  • firezone-server (firezone-server-domain)
  • firezone-server-api
  • firezone-server-web
  • flood
  • follow
  • froide-govplan
  • froide-govplan.dist
  • gale
  • ghostfolio
  • gitbutler
  • gitify
  • goofcord
  • heroic
  • heroic-unwrapped
  • home-assistant-custom-lovelace-modules.custom-sidebar
  • homebox
  • homepage-dashboard
  • homer
  • it-tools
  • jellyseerr
  • karakeep
  • legcord
  • lemmy-ui
  • memos
  • metacubexd
  • misskey
  • modrinth-app
  • modrinth-app-unwrapped
  • moonfire-nvr
  • moonlight
  • n8n
  • ni
  • ocis
  • openlist
  • overlayed
  • paperless-ngx
  • paperless-ngx.dist
  • parca
  • pds
  • pgrok
  • pgrok.server
  • pingvin-share.backend
  • piped
  • podman-desktop
  • porn-vault
  • prisma
  • python312Packages.django-filingcabinet
  • python312Packages.django-filingcabinet.dist
  • python312Packages.gradio
  • python312Packages.gradio-client
  • python312Packages.gradio-client.dist
  • python312Packages.gradio-pdf
  • python312Packages.gradio-pdf.dist
  • python312Packages.gradio.dist
  • python312Packages.smolagents
  • python312Packages.smolagents.dist
  • python312Packages.txtai
  • python312Packages.txtai.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.smolagents
  • python313Packages.smolagents.dist
  • python313Packages.txtai
  • python313Packages.txtai.dist
  • quantframe
  • readest
  • rembg
  • rembg.dist
  • renovate
  • rmfakecloud
  • rquickshare
  • rsshub
  • sharkey
  • signal-desktop
  • siyuan
  • sketchybar-app-font
  • slimevr
  • splayer
  • stylelint-lsp
  • surrealist
  • synchrony
  • syncyomi
  • tabby-agent
  • tailwindcss-language-server
  • taler-challenger
  • taler-mdb
  • taler-merchant
  • taler-sync
  • taler-wallet-core
  • taze
  • teleport (teleport_17)
  • teleport.client (teleport_17.client)
  • teleport_16
  • teleport_16.client
  • tsx
  • typespec
  • umami
  • vencord
  • vencord-web-extension
  • vesktop
  • vikunja
  • voicevox
  • vtsls
  • vue-language-server
  • wealthfolio
  • webcord-vencord
  • wox
  • wrangler
  • youtube-music
  • zammad
  • zashboard
  • zenn-cli
  • zigbee2mqtt_2
  • zipline

Error logs: `x86_64-linux`
documenso
./pages/api/documents/[id]/send.ts:45:29
Type error: Parameter 'recipient' implicitly has an 'any' type.

43 |
44 | let sentRequests = 0;

45 | recipients.forEach(async (recipient) => {
| ^
46 | await sendSigningRequest(recipient, document, user).catch((err) => {
47 | console.log(err);
48 | return res.status(502).end("Coud not send request for signing.");
info - Linting and checking validity of types ...
ERROR: npm build failed

Here are a few things you can try, depending on the error:

  1. Make sure your build script (build) exists
    If there is none, set dontNpmBuild = true.
  2. If the error being thrown is something similar to "error:0308010C:digital envelope routines::unsupported", add NODE_OPTIONS = "--openssl-legacy-provider" to your derivation
    See nodejs 17: digital envelope routines::unsupported webpack/webpack#14532 for more information.
firezone-gui-client
   Compiling tracing-journald v0.3.1
   Compiling tokio-stream v0.1.17
   Compiling serde_variant v0.1.3
   Compiling sd-notify v0.4.5
   Compiling strum v0.27.1
   Compiling sadness-generator v0.6.0
   Compiling humantime v2.2.0
   Compiling snownet v0.1.0 (/build/source/rust/connlib/snownet)
   Compiling firezone-tunnel v0.1.0 (/build/source/rust/connlib/tunnel)
   Compiling client-shared v0.1.0 (/build/source/rust/client-shared)
   Compiling webkit2gtk v2.0.1
   Compiling muda v0.16.1
   Compiling tao v0.33.0
   Compiling libappindicator v0.9.0
   Compiling tray-icon v0.20.1
error: could not compile `firezone-gui-client` (lib)

Caused by:
process didn't exit successfully: rustc --crate-name firezone_gui_client --edition=2024 gui-client/src-tauri/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C linker-plugin-lto -C codegen-units=1 -C debuginfo=2 -C split-debuginfo=packed '--warn=clippy::wildcard_enum_match_arm' '--warn=clippy::unwrap_used' '--warn=clippy::unwrap_in_result' '--warn=clippy::unused_async' '--warn=clippy::unnecessary_wraps' '--warn=clippy::redundant_else' '--warn=clippy::redundant_clone' '--allow=rustdoc::private-intra-doc-links' '--warn=clippy::print_stdout' '--warn=clippy::print_stderr' '--warn=clippy::dbg_macro' --check-cfg 'cfg(docsrs,test)' --check-cfg 'cfg(feature, values("custom-protocol"))' -C metadata=a2175315325f564d -C extra-filename=-a92619404d16c8da --out-dir /build/source/rust/target/x86_64-unknown-linux-gnu/release/deps --target x86_64-unknown-linux-gnu -C linker=/nix/store/67x7pknz0qa2j16x02idf0x98lpcspah-gcc-wrapper-14.3.0/bin/cc -L dependency=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps -L dependency=/build/source/rust/target/release/deps --extern anyhow=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libanyhow-9a34f90d16047202.rmeta --extern arboard=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libarboard-4c5b44135d829412.rmeta --extern atomicwrites=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libatomicwrites-37abe06e2e478c51.rmeta --extern backoff=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libbackoff-bc7a8aa06fc5facb.rmeta --extern chrono=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libchrono-0ada780bcb942c51.rmeta --extern clap=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libclap-efebd6b4425d10e5.rmeta --extern client_shared=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libclient_shared-14e1ea73c69092aa.rmeta --extern connlib_model=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libconnlib_model-3511a76812cf8a3a.rmeta --extern derive_more=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libderive_more-2b07767745aae905.rmeta --extern dirs=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libdirs-e90e815b90947a9f.rmeta --extern firezone_bin_shared=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libfirezone_bin_shared-6e6e46136aec1f6a.rmeta --extern firezone_logging=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libfirezone_logging-83bd51699ef90ef1.rmeta --extern firezone_telemetry=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libfirezone_telemetry-30a0f4b6c29325c5.rmeta --extern futures=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libfutures-66d0d985eab1d01d.rmeta --extern hex=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libhex-8ebf00e8c952fe09.rmeta --extern humantime=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libhumantime-7561af1286cf897a.rmeta --extern ip_packet=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libip_packet-cc029cee89c69b92.rmeta --extern keyring=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libkeyring-1f2510b204e4e529.rmeta --extern native_dialog=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libnative_dialog-c93c5f85b5edca08.rmeta --extern nix=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libnix-e4bc4bf4cb6b0d57.rmeta --extern output_vt100=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/liboutput_vt100-93bfa18aa4eb55fd.rmeta --extern phoenix_channel=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libphoenix_channel-2958d33528c67793.rmeta --extern png=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libpng-599d972f47018bfb.rmeta --extern rand=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/librand-b9277fd3872132ee.rmeta --extern reqwest=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libreqwest-9f4019f37959bc0e.rmeta --extern rustls=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/librustls-4201bcc24b8b98e1.rmeta --extern sadness_generator=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libsadness_generator-d6ec86ca4444a8db.rmeta --extern sd_notify=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libsd_notify-069ec469c5be04f2.rmeta --extern secrecy=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libsecrecy-74ab0c3009715b22.rmeta --extern semver=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libsemver-3dc053cabf9e4233.rmeta --extern serde=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libserde-cfc3953605a8853f.rmeta --extern serde_json=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libserde_json-eccb8ccbb94a4fa6.rmeta --extern serde_variant=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libserde_variant-f13d46320ddc8387.rmeta --extern strum=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libstrum-7c4e665bdff94b58.rmeta --extern subtle=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libsubtle-bcc2d6fc74c35158.rmeta --extern tauri=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libtauri-3d112fd81fa1cee1.rmeta --extern tauri_plugin_dialog=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libtauri_plugin_dialog-347e4beb9ceb066f.rmeta --extern tauri_plugin_notification=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libtauri_plugin_notification-34c937cd8373a4d9.rmeta --extern tauri_plugin_opener=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libtauri_plugin_opener-2fd363bcb5b8c9d9.rmeta --extern tauri_plugin_shell=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libtauri_plugin_shell-4cb8a4f0642ddb14.rmeta --extern tauri_runtime=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libtauri_runtime-a1ecc5e1a2df6430.rmeta --extern tauri_utils=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libtauri_utils-8252876bc6d6233f.rmeta --extern thiserror=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libthiserror-23b004e6e0653116.rmeta --extern tokio=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libtokio-5ea7dec8444423e1.rmeta --extern tokio_stream=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libtokio_stream-0fa36ea990ad342f.rmeta --extern tokio_util=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libtokio_util-73eb395f654803b2.rmeta --extern tracing=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libtracing-ca4ce4c19fcd6a19.rmeta --extern tracing_journald=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libtracing_journald-9ebf962dc09e1bbe.rmeta --extern tracing_log=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libtracing_log-71462d97d7ebb17f.rmeta --extern tracing_subscriber=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libtracing_subscriber-c5b184c2742b5a2e.rmeta --extern tslink=/build/source/rust/target/release/deps/libtslink-b1d8e0ef9629cc14.so --extern url=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/liburl-55d9263c9fc32797.rmeta --extern uuid=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libuuid-6f0d9a48bafe63a2.rmeta --extern zip=/build/source/rust/target/x86_64-unknown-linux-gnu/release/deps/libzip-28fbd643b2696abb.rmeta --cfg system_certs -L native=/build/source/rust/target/x86_64-unknown-linux-gnu/release/build/ring-401e3c03776dd164/out -L native=/build/source/rust/target/x86_64-unknown-linux-gnu/release/build/sha1-asm-e67ffa9a83b47496/out -L native=/nix/store/rpl71za25x0kf5dw28vgcgwhpvwjg006-dbus-1.14.10-lib/lib -L native=/nix/store/kww24b3s330m61gy3n7fdl6517vpayv6-glib-2.84.3/lib -L native=/nix/store/i59xawddlxiqwrky2fnv032wmf34klms-at-spi2-core-2.56.2/lib -L native=/nix/store/kww24b3s330m61gy3n7fdl6517vpayv6-glib-2.84.3/lib -L native=/nix/store/kww24b3s330m61gy3n7fdl6517vpayv6-glib-2.84.3/lib -L native=/nix/store/kww24b3s330m61gy3n7fdl6517vpayv6-glib-2.84.3/lib -L native=/nix/store/kww24b3s330m61gy3n7fdl6517vpayv6-glib-2.84.3/lib -L native=/nix/store/29qc4slnbpvgzgjq04bprj5qmjf1v63x-cairo-1.18.4/lib -L native=/nix/store/kww24b3s330m61gy3n7fdl6517vpayv6-glib-2.84.3/lib -L native=/nix/store/29qc4slnbpvgzgjq04bprj5qmjf1v63x-cairo-1.18.4/lib -L native=/nix/store/kww24b3s330m61gy3n7fdl6517vpayv6-glib-2.84.3/lib -L native=/nix/store/084l9gcppiyqwglglzvwbvxgk3k6cw1j-gdk-pixbuf-2.42.12/lib -L native=/nix/store/kww24b3s330m61gy3n7fdl6517vpayv6-glib-2.84.3/lib -L native=/nix/store/084l9gcppiyqwglglzvwbvxgk3k6cw1j-gdk-pixbuf-2.42.12/lib -L native=/nix/store/29qc4slnbpvgzgjq04bprj5qmjf1v63x-cairo-1.18.4/lib -L native=/nix/store/j9x63rkvf4jzkshacpzabvi6xhdj87by-gtk+3-3.24.49/lib -L native=/nix/store/jmjzwbsx3i3ahid7in49429116rv2b2w-pango-1.56.3/lib -L native=/nix/store/w46nrr5gly3vvsv2vmn5nfclznqngvc0-harfbuzz-11.2.1/lib -L native=/nix/store/kww24b3s330m61gy3n7fdl6517vpayv6-glib-2.84.3/lib -L native=/nix/store/jmjzwbsx3i3ahid7in49429116rv2b2w-pango-1.56.3/lib -L native=/nix/store/w46nrr5gly3vvsv2vmn5nfclznqngvc0-harfbuzz-11.2.1/lib -L native=/nix/store/kww24b3s330m61gy3n7fdl6517vpayv6-glib-2.84.3/lib -L native=/nix/store/084l9gcppiyqwglglzvwbvxgk3k6cw1j-gdk-pixbuf-2.42.12/lib -L native=/nix/store/29qc4slnbpvgzgjq04bprj5qmjf1v63x-cairo-1.18.4/lib -L native=/nix/store/j9x63rkvf4jzkshacpzabvi6xhdj87by-gtk+3-3.24.49/lib -L native=/nix/store/i59xawddlxiqwrky2fnv032wmf34klms-at-spi2-core-2.56.2/lib -L native=/nix/store/jmjzwbsx3i3ahid7in49429116rv2b2w-pango-1.56.3/lib -L native=/nix/store/w46nrr5gly3vvsv2vmn5nfclznqngvc0-harfbuzz-11.2.1/lib -L native=/nix/store/kww24b3s330m61gy3n7fdl6517vpayv6-glib-2.84.3/lib -L native=/nix/store/084l9gcppiyqwglglzvwbvxgk3k6cw1j-gdk-pixbuf-2.42.12/lib -L native=/nix/store/29qc4slnbpvgzgjq04bprj5qmjf1v63x-cairo-1.18.4/lib -L native=/nix/store/j9x63rkvf4jzkshacpzabvi6xhdj87by-gtk+3-3.24.49/lib -L native=/nix/store/jmjzwbsx3i3ahid7in49429116rv2b2w-pango-1.56.3/lib -L native=/nix/store/w46nrr5gly3vvsv2vmn5nfclznqngvc0-harfbuzz-11.2.1/lib -L native=/nix/store/kww24b3s330m61gy3n7fdl6517vpayv6-glib-2.84.3/lib -L native=/nix/store/vs02461va6yz78dpdz8ynapinmhzpfrk-webkitgtk-2.48.3+abi=4.1/lib -L native=/nix/store/kww24b3s330m61gy3n7fdl6517vpayv6-glib-2.84.3/lib -L native=/nix/store/6kg7fg968yz0q31fxf9v6a1wx5fry68v-libsoup-3.6.5/lib -L native=/nix/store/kww24b3s330m61gy3n7fdl6517vpayv6-glib-2.84.3/lib -L native=/nix/store/084l9gcppiyqwglglzvwbvxgk3k6cw1j-gdk-pixbuf-2.42.12/lib -L native=/nix/store/29qc4slnbpvgzgjq04bprj5qmjf1v63x-cairo-1.18.4/lib -L native=/nix/store/j9x63rkvf4jzkshacpzabvi6xhdj87by-gtk+3-3.24.49/lib -L native=/nix/store/i59xawddlxiqwrky2fnv032wmf34klms-at-spi2-core-2.56.2/lib -L native=/nix/store/jmjzwbsx3i3ahid7in49429116rv2b2w-pango-1.56.3/lib -L native=/nix/store/w46nrr5gly3vvsv2vmn5nfclznqngvc0-harfbuzz-11.2.1/lib -L native=/nix/store/6kg7fg968yz0q31fxf9v6a1wx5fry68v-libsoup-3.6.5/lib -L native=/nix/store/vs02461va6yz78dpdz8ynapinmhzpfrk-webkitgtk-2.48.3+abi=4.1/lib --cfg desktop --check-cfg 'cfg(desktop)' --check-cfg 'cfg(mobile)' --check-cfg 'cfg(dev)' (signal: 9, SIGKILL: kill)
Error failed to build app:

froide
checking for references to /build/ in /nix/store/1rq6xdyavzl0lq7adwjx9xmhpxdgi0qx-froide-0-unstable-2025-07-01-dist...
patching script interpreter paths in /nix/store/1rq6xdyavzl0lq7adwjx9xmhpxdgi0qx-froide-0-unstable-2025-07-01-dist
Rewriting #! /nix/store/gkwbw9nzbkbz298njbn3577zmrnglbbi-bash-5.3p0/bin/bash -e to #!/nix/store/9yh9ak97gn659bk4d3n411fx6c0ng7s2-python3-3.13.5
Executing pythonRemoveTestsDir
Finished executing pythonRemoveTestsDir
Running phase: installCheckPhase
@nix { "action": "setPhase", "phase": "installCheckPhase" }
no Makefile or custom installCheckPhase, doing nothing
Running phase: pythonCatchConflictsPhase
@nix { "action": "setPhase", "phase": "pythonCatchConflictsPhase" }
Running phase: pythonRemoveBinBytecodePhase
@nix { "action": "setPhase", "phase": "pythonRemoveBinBytecodePhase" }
Running phase: pythonImportsCheckPhase
@nix { "action": "setPhase", "phase": "pythonImportsCheckPhase" }
Executing pythonImportsCheckPhase
Running phase: pytestCheckPhase
@nix { "action": "setPhase", "phase": "pytestCheckPhase" }
Executing pytestCheckPhase
/nix/store/1shr16l4v98qqiv196r9i9pjwzrsnhd0-postgresql-test-hook/nix-support/setup-hook: line 52: type: initdb: not found
initdb not found. Did you add postgresql to the nativeCheckInputs?
shadcn
patchelf: cannot find section '.dynamic'. The input file is most likely statically linked
patchelf: cannot find section '.dynamic'. The input file is most likely statically linked
patching script interpreter paths in /nix/store/sqhfdqh619hqk2mc60z1db48zyqdva3d-shadcn-2.0.3
/nix/store/sqhfdqh619hqk2mc60z1db48zyqdva3d-shadcn-2.0.3/lib/packages/shadcn/node_modules/.bin/nu: interpreter directive changed from "#!/bin/sh" to "/nix/store/gkwbw9nzbkbz298njbn3577zmrnglbbi-bash-5.3p0/bin/sh"
/nix/store/sqhfdqh619hqk2mc60z1db48zyqdva3d-shadcn-2.0.3/lib/packages/shadcn/node_modules/.bin/tsc: interpreter directive changed from "#!/bin/sh" to "/nix/store/gkwbw9nzbkbz298njbn3577zmrnglbbi-bash-5.3p0/bin/sh"
/nix/store/sqhfdqh619hqk2mc60z1db48zyqdva3d-shadcn-2.0.3/lib/packages/shadcn/node_modules/.bin/ni: interpreter directive changed from "#!/bin/sh" to "/nix/store/gkwbw9nzbkbz298njbn3577zmrnglbbi-bash-5.3p0/bin/sh"
/nix/store/sqhfdqh619hqk2mc60z1db48zyqdva3d-shadcn-2.0.3/lib/packages/shadcn/node_modules/.bin/rimraf: interpreter directive changed from "#!/bin/sh" to "/nix/store/gkwbw9nzbkbz298njbn3577zmrnglbbi-bash-5.3p0/bin/sh"
/nix/store/sqhfdqh619hqk2mc60z1db48zyqdva3d-shadcn-2.0.3/lib/packages/shadcn/node_modules/.bin/nci: interpreter directive changed from "#!/bin/sh" to "/nix/store/gkwbw9nzbkbz298njbn3577zmrnglbbi-bash-5.3p0/bin/sh"
/nix/store/sqhfdqh619hqk2mc60z1db48zyqdva3d-shadcn-2.0.3/lib/packages/shadcn/node_modules/.bin/nlx: interpreter directive changed from "#!/bin/sh" to "/nix/store/gkwbw9nzbkbz298njbn3577zmrnglbbi-bash-5.3p0/bin/sh"
/nix/store/sqhfdqh619hqk2mc60z1db48zyqdva3d-shadcn-2.0.3/lib/packages/shadcn/node_modules/.bin/tsup: interpreter directive changed from "#!/bin/sh" to "/nix/store/gkwbw9nzbkbz298njbn3577zmrnglbbi-bash-5.3p0/bin/sh"
/nix/store/sqhfdqh619hqk2mc60z1db48zyqdva3d-shadcn-2.0.3/lib/packages/shadcn/node_modules/.bin/na: interpreter directive changed from "#!/bin/sh" to "/nix/store/gkwbw9nzbkbz298njbn3577zmrnglbbi-bash-5.3p0/bin/sh"
/nix/store/sqhfdqh619hqk2mc60z1db48zyqdva3d-shadcn-2.0.3/lib/packages/shadcn/node_modules/.bin/parser: interpreter directive changed from "#!/bin/sh" to "/nix/store/gkwbw9nzbkbz298njbn3577zmrnglbbi-bash-5.3p0/bin/sh"
/nix/store/sqhfdqh619hqk2mc60z1db48zyqdva3d-shadcn-2.0.3/lib/packages/shadcn/node_modules/.bin/tsup-node: interpreter directive changed from "#!/bin/sh" to "/nix/store/gkwbw9nzbkbz298njbn3577zmrnglbbi-bash-5.3p0/bin/sh"
/nix/store/sqhfdqh619hqk2mc60z1db48zyqdva3d-shadcn-2.0.3/lib/packages/shadcn/node_modules/.bin/tsserver: interpreter directive changed from "#!/bin/sh" to "/nix/store/gkwbw9nzbkbz298njbn3577zmrnglbbi-bash-5.3p0/bin/sh"
/nix/store/sqhfdqh619hqk2mc60z1db48zyqdva3d-shadcn-2.0.3/lib/packages/shadcn/node_modules/.bin/nun: interpreter directive changed from "#!/bin/sh" to "/nix/store/gkwbw9nzbkbz298njbn3577zmrnglbbi-bash-5.3p0/bin/sh"
/nix/store/sqhfdqh619hqk2mc60z1db48zyqdva3d-shadcn-2.0.3/lib/packages/shadcn/node_modules/.bin/nr: interpreter directive changed from "#!/bin/sh" to "/nix/store/gkwbw9nzbkbz298njbn3577zmrnglbbi-bash-5.3p0/bin/sh"
ERROR: noBrokenSymlinks: the symlink /nix/store/sqhfdqh619hqk2mc60z1db48zyqdva3d-shadcn-2.0.3/lib/node_modules/.pnpm/node_modules/www points to a missing target: /nix/store/sqhfdqh619hqk2mc60z1db48zyqdva3d-shadcn-2.0.3/lib/apps/www
ERROR: noBrokenSymlinks: the symlink /nix/store/sqhfdqh619hqk2mc60z1db48zyqdva3d-shadcn-2.0.3/lib/node_modules/.pnpm/node_modules/next-template points to a missing target: /nix/store/sqhfdqh619hqk2mc60z1db48zyqdva3d-shadcn-2.0.3/lib/templates/next-template
ERROR: noBrokenSymlinks: the symlink /nix/store/sqhfdqh619hqk2mc60z1db48zyqdva3d-shadcn-2.0.3/lib/node_modules/.pnpm/node_modules/shadcn-ui points to a missing target: /nix/store/sqhfdqh619hqk2mc60z1db48zyqdva3d-shadcn-2.0.3/lib/packages/cli
ERROR: noBrokenSymlinks: found 3 dangling symlinks, 0 reflexive symlinks and 0 unreadable symlinks

@Scrumplex Scrumplex merged commit f5b4fd5 into NixOS:master Jul 30, 2025
31 of 33 checks passed
@nixpkgs-ci
Copy link
Copy Markdown
Contributor

nixpkgs-ci bot commented Jul 30, 2025

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 8.has: port to stable This PR already has a backport to the stable release. 10.rebuild-darwin: 11-100 This PR causes between 11 and 100 packages to rebuild on Darwin. 10.rebuild-linux: 101-500 This PR causes between 101 and 500 packages to rebuild on Linux. 12.approvals: 2 This PR was reviewed and approved by two persons.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

ERR_PNPM_NO_OFFLINE_TARBALL for various PNPM packages

4 participants