regripper: fix perl libs not in path

This prevented the program from working at all.
For perl libs to be loaded, they have to be in PERL5PATH.
This commit is contained in:
Diogo Correia
2024-12-18 19:25:02 +00:00
parent 4989a246d7
commit 802a0aca8d
+14 -11
View File
@@ -2,12 +2,17 @@
lib,
stdenv,
fetchFromGitHub,
makeWrapper,
perl,
perlPackages,
runtimeShell,
}:
stdenv.mkDerivation rec {
let
perlDeps = [
perlPackages.ParseWin32Registry
];
in
stdenv.mkDerivation {
pname = "regripper";
version = "0-unstable-2024-11-02";
@@ -18,26 +23,24 @@ stdenv.mkDerivation rec {
hash = "sha256-dW3Gr4HQH484i47Bg+CEnBYoGQQRMBJr88+YeuU+iV4=";
};
nativeBuildInputs = [ makeWrapper ];
propagatedBuildInputs = [
perl
perlPackages.ParseWin32Registry
];
] ++ perlDeps;
installPhase = ''
runHook preInstall
mkdir -p $out/{bin,share}
rm -r *.md *.exe *.bat *.dll
rm -r *.md *.exe *.bat *.dll *.zip
cp -aR . "$out/share/regripper/"
cat > "$out/bin/regripper" << EOF
#!${runtimeShell}
exec ${perl}/bin/perl $out/share/regripper/rip.pl "\$@"
EOF
chmod u+x "$out/bin/regripper"
makeWrapper ${perl}/bin/perl $out/bin/regripper \
--add-flags "$out/share/regripper/rip.pl" \
--set PERL5LIB ${perlPackages.makeFullPerlPath perlDeps}
runHook postInstall
'';