From 802a0aca8d7fdec58710cf0cdc55d83ccc2707f6 Mon Sep 17 00:00:00 2001 From: Diogo Correia Date: Wed, 18 Dec 2024 19:21:05 +0000 Subject: [PATCH] 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. --- pkgs/by-name/re/regripper/package.nix | 25 ++++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/pkgs/by-name/re/regripper/package.nix b/pkgs/by-name/re/regripper/package.nix index ac5405d72fda..4f0b9e429fac 100644 --- a/pkgs/by-name/re/regripper/package.nix +++ b/pkgs/by-name/re/regripper/package.nix @@ -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 '';