trivionomicon: athena-bccr: run update-gaudi during build if gaudiHash is given

This commit is contained in:
Alejandro Soto 2026-03-09 15:42:13 -06:00
parent 286c49e369
commit 26f1fa436a

View file

@ -26,13 +26,15 @@
inherit (release) hash;
};
gaudiUpdateSrc = {update-gaudi}:
requireFile {
url = "${update-gaudi}";
name = "gaudi-update-${release.name}.zip";
hash = gaudiHash;
};
gaudiUpdateSrc = {
update-gaudi,
runCommand,
}:
runCommand "gaudi-update-${release.name}.zip" {
outputHash = gaudiHash;
} ''
${update-gaudi} $out
'';
moduleFromDeb = name: args @ {
stdenv,
@ -188,6 +190,7 @@ in
pkgs,
stdenv,
unzip,
runCommand,
writeShellScriptBin,
update-gaudi,
...
@ -198,7 +201,7 @@ in
};
fakeSudo = writeShellScriptBin "sudo" "";
gaudiUpdate = gaudiUpdateSrc {inherit update-gaudi;};
gaudiUpdate = gaudiUpdateSrc {inherit runCommand update-gaudi;};
in
moduleFromDeb "gaudi" {
inherit dpkg stdenv unzip;
@ -300,17 +303,20 @@ in
wget --ca-certificate="$ca_cert" "$base_url/bccr-firma-fva-clienteMultiplataforma.jar"
wget --ca-certificate="$ca_cert" "$base_url/ServicioActualizadorClienteBCCR.jar"
if [ -n "$1" ]; then
zip_path="$1"
else
zip_path="$PWD/gaudi-update-${release.name}.zip"
fi
# https://gist.github.com/stokito/c588b8d6a6a0aee211393d68eea678f2
TZ=UTC find . -exec touch --no-dereference -a -m -t 198002010000.00 {} +
zip_path="$PWD/gaudi-update-${release.name}.zip"
TZ=UTC zip -q --move --recurse-paths --symlinks -X "$zip_path" .
TZ=UTC touch -a -m -t 198002010000.00 "$zip_path"
set -x
nix-store --add-fixed sha256 "$zip_path"
set +x
if [ -z "$1" ]; then
echo -e "\ngaudiHash: $(nix-hash --to-sri --type sha256 $(sha256sum "$zip_path" | cut -d' ' -f1))"
fi
'';
}
// lib.optionalAttrs (vendor == "athena") {