pnpm.fetchDeps: ensure consistent permissions for fetcherVersion >=2
Co-authored-by: Oliver Breitwieser <oliver@breitwieser.eu>
This commit is contained in:
@@ -444,7 +444,7 @@ stdenv.mkDerivation (finalAttrs: {
|
|||||||
pnpmDeps = pnpm.fetchDeps {
|
pnpmDeps = pnpm.fetchDeps {
|
||||||
inherit (finalAttrs) pname version src;
|
inherit (finalAttrs) pname version src;
|
||||||
hash = "...";
|
hash = "...";
|
||||||
fetcherVersion = 1;
|
fetcherVersion = 2;
|
||||||
};
|
};
|
||||||
})
|
})
|
||||||
```
|
```
|
||||||
@@ -593,6 +593,7 @@ Changes can include workarounds or bug fixes to existing PNPM issues.
|
|||||||
##### Version history {#javascript-pnpm-fetcherVersion-versionHistory}
|
##### Version history {#javascript-pnpm-fetcherVersion-versionHistory}
|
||||||
|
|
||||||
- 1: Initial version, nothing special
|
- 1: Initial version, nothing special
|
||||||
|
- 2: [Ensure consistent permissions](https://github.com/NixOS/nixpkgs/pull/422975)
|
||||||
|
|
||||||
### Yarn {#javascript-yarn}
|
### Yarn {#javascript-yarn}
|
||||||
|
|
||||||
|
|||||||
@@ -118,6 +118,23 @@ in
|
|||||||
jq --sort-keys "del(.. | .checkedAt?)" $f | sponge $f
|
jq --sort-keys "del(.. | .checkedAt?)" $f | sponge $f
|
||||||
done
|
done
|
||||||
|
|
||||||
|
# Ensure consistent permissions
|
||||||
|
# NOTE: For reasons not yet fully understood, pnpm might create files with
|
||||||
|
# inconsistent permissions, for example inside the ubuntu-24.04
|
||||||
|
# github actions runner.
|
||||||
|
# To ensure stable derivations, we need to set permissions
|
||||||
|
# consistently, namely:
|
||||||
|
# * All files with `-exec` suffix have 555.
|
||||||
|
# * All other files have 444.
|
||||||
|
# * All folders have 555.
|
||||||
|
# See https://github.com/NixOS/nixpkgs/pull/350063
|
||||||
|
# See https://github.com/NixOS/nixpkgs/issues/422889
|
||||||
|
if [[ ${toString fetcherVersion} -ge 2 ]]; then
|
||||||
|
find $out -type f -name "*-exec" -print0 | xargs -0 chmod 555
|
||||||
|
find $out -type f -not -name "*-exec" -print0 | xargs -0 chmod 444
|
||||||
|
find $out -type d -print0 | xargs -0 chmod 555
|
||||||
|
fi
|
||||||
|
|
||||||
runHook postFixup
|
runHook postFixup
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user