Merge pull request #26410 from kierdavis/hooks

Fix hooks not being called when overriding phases in various packages

Changed files
+30
pkgs
applications
graphics
unigine-valley
os-specific
linux
intel-ocl
tools
misc
security
hashcat
hashcat3
+12
pkgs/applications/graphics/unigine-valley/default.nix
···
];
unpackPhase = ''
+
runHook preUnpack
+
cp $src extractor.run
chmod +x extractor.run
./extractor.run --target $sourceRoot
+
+
runHook postUnpack
'';
patchPhase = ''
+
runHook prePatch
+
# Patch ELF files.
elfs=$(find bin -type f | xargs file | grep ELF | cut -d ':' -f 1)
for elf in $elfs; do
patchelf --set-interpreter ${stdenv.cc.libc}/lib/ld-linux-x86-64.so.2 $elf || true
done
+
+
runHook postPatch
'';
installPhase = ''
+
runHook preInstall
+
instdir=$out/${instPath}
# Install executables and libraries
···
wrapProgram $out/bin/valley \
--run "cd $instdir" \
--prefix LD_LIBRARY_PATH : /run/opengl-driver/lib:$instdir/bin:$libPath
+
+
runHook postInstall
'';
stripDebugList = ["${instPath}/bin"];
+12
pkgs/os-specific/linux/intel-ocl/default.nix
···
'';
patchPhase = ''
+
runHook prePatch
+
# Remove libOpenCL.so, since we use ocl-icd's libOpenCL.so instead and this would cause a clash.
rm opt/intel/opencl/libOpenCL.so*
···
for lib in opt/intel/opencl/*.so; do
patchelf --set-rpath "${libPath}:$out/lib/intel-ocl" $lib || true
done
+
+
runHook postPatch
'';
buildPhase = ''
+
runHook preBuild
+
# Create ICD file, which just contains the path of the corresponding shared library.
echo "$out/lib/intel-ocl/libintelocl.so" > intel.icd
+
+
runHook postBuild
'';
installPhase = ''
+
runHook preInstall
+
install -D -m 0755 opt/intel/opencl/*.so* -t $out/lib/intel-ocl
install -D -m 0644 opt/intel/opencl/*.{o,rtl,bin} -t $out/lib/intel-ocl
install -D -m 0644 opt/intel/opencl/{LICENSE,NOTICES} -t $out/share/doc/intel-ocl
install -D -m 0644 intel.icd -t $out/etc/OpenCL/vendors
+
+
runHook postInstall
'';
dontStrip = true;
+4
pkgs/tools/misc/ckb/default.nix
···
doCheck = false;
installPhase = ''
+
runHook preInstall
+
install -D --mode 0755 --target-directory $out/bin bin/ckb-daemon bin/ckb
install -D --mode 0755 --target-directory $out/libexec/ckb-animations bin/ckb-animations/*
+
+
runHook postInstall
'';
meta = with stdenv.lib; {
+2
pkgs/tools/security/hashcat/hashcat3/default.nix
···
# $out is not known until the build has started.
configurePhase = ''
+
runHook preConfigure
makeFlags="$makeFlags PREFIX=$out"
+
runHook postConfigure
'';
postFixup = ''