Merge pull request #216728 from lilyinstarlight/fix/node2nix-bin-crlf
node2nix: pull in patch to fix bin scripts with crlf line-endings
This commit is contained in:
commit
2e80f1ecf5
|
@ -530,12 +530,15 @@ let
|
|||
then
|
||||
ln -s $out/lib/node_modules/.bin $out/bin
|
||||
|
||||
# Patch the shebang lines of all the executables
|
||||
# Fixup all executables
|
||||
ls $out/bin/* | while read i
|
||||
do
|
||||
file="$(readlink -f "$i")"
|
||||
chmod u+rwx "$file"
|
||||
patchShebangs "$file"
|
||||
if isScript "$file"
|
||||
then
|
||||
sed -i 's/\r$//' "$file" # convert crlf to lf
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
|
|
|
@ -340,14 +340,22 @@ final: prev: {
|
|||
};
|
||||
nativeBuildInputs = [ pkgs.buildPackages.makeWrapper ];
|
||||
postInstall = let
|
||||
# Needed to fix Node.js 16+ - PR svanderburg/node2nix#302
|
||||
npmPatch = fetchpatch {
|
||||
name = "emit-lockfile-v2-and-fix-bin-links-with-npmv7.patch";
|
||||
url = "https://github.com/svanderburg/node2nix/commit/375a055041b5ee49ca5fb3f74a58ca197c90c7d5.patch";
|
||||
hash = "sha256-uVYrXptJILojeur9s2O+J/f2vyPNCaZMn1GM/NoC5n8=";
|
||||
};
|
||||
patches = [
|
||||
# Needed to fix Node.js 16+ - PR svanderburg/node2nix#302
|
||||
(fetchpatch {
|
||||
name = "emit-lockfile-v2-and-fix-bin-links-with-npmv7.patch";
|
||||
url = "https://github.com/svanderburg/node2nix/commit/375a055041b5ee49ca5fb3f74a58ca197c90c7d5.patch";
|
||||
hash = "sha256-uVYrXptJILojeur9s2O+J/f2vyPNCaZMn1GM/NoC5n8=";
|
||||
})
|
||||
# Needed to fix packages with DOS line-endings after above patch - PR svanderburg/node2nix#314
|
||||
(fetchpatch {
|
||||
name = "convert-crlf-for-script-bin-files.patch";
|
||||
url = "https://github.com/svanderburg/node2nix/commit/91aa511fe7107938b0409a02ab8c457a6de2d8ca.patch";
|
||||
hash = "sha256-ISiKYkur/o8enKDzJ8mQndkkSC4yrTNlheqyH+LiXlU=";
|
||||
})
|
||||
];
|
||||
in ''
|
||||
patch -d $out/lib/node_modules/node2nix -p1 < ${npmPatch}
|
||||
${lib.concatStringsSep "\n" (map (patch: "patch -d $out/lib/node_modules/node2nix -p1 < ${patch}") patches)}
|
||||
wrapProgram "$out/bin/node2nix" --prefix PATH : ${lib.makeBinPath [ pkgs.nix ]}
|
||||
'';
|
||||
};
|
||||
|
|
Loading…
Reference in a new issue