From 275ad6df4d1b6813b25143757fc149276dea5818 Mon Sep 17 00:00:00 2001 From: Bastian Dehn Date: Mon, 11 May 2026 20:24:57 +0200 Subject: [PATCH] add reproducible check --- builder/run | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/builder/run b/builder/run index 7a076b4..d5558c2 100644 --- a/builder/run +++ b/builder/run @@ -5,6 +5,19 @@ get_source_date() cd /src && export SOURCE_DATE_EPOCH=$(git log --max-count=1 --pretty="%ct") } +create_package_checksum() +{ + local package=$(find . -maxdepth 1 -name '*.deb') + sha256sum *.deb > $package.sha256 || return $? +} + +reproducible_package_checksum_check() +{ + local package=$(find . -maxdepth 1 -name '*.deb') + cp /src/build/$package.sha256 . || return $? + sha256sum -c $package.sha256 +} + run_tests() { mkdir --parents /app/tests && cd /app/tests @@ -25,18 +38,37 @@ build_package() make --jobs=$(nproc) package || return $? } +build_reproducible_package() +{ + local soll_hour=${SOLL_HOUR:="8"} + local soll_minutes=${SOLL_MINUTES:="0"} + + mkdir --parents /app/reproducible-build && cd /app/reproducible-build + cmake -DCMAKE_BUILD_TYPE=Release \ + -DEXTRA_VERSION="-$ID-$VERSION_CODENAME" \ + -DSOLL_HOUR="$soll_hour" \ + -DSOLL_MINUTES="$soll_minutes" /src || return $? + make --jobs=$(nproc) package || return $? +} + copy_package() { cp /app/build/*.deb /src/build/ || return $? + cp /app/build/*.sha256 /src/build/ || return $? } main() { source /etc/os-release get_source_date || return $? + run_tests || return $? build_package || return $? + create_package_checksum || return $? copy_package || return $? + + build_reproducible_package || return $? + reproducible_package_checksum_check || return $? } main -- 2.47.3