From: Bastian Dehn Date: Mon, 11 May 2026 18:02:23 +0000 (+0200) Subject: add reproducible checksum check X-Git-Tag: v1.1.31^2~8 X-Git-Url: https://gitweb.hhaalo.de/?a=commitdiff_plain;h=77f8497bcc12d2f4bef8f4248dfe603378d54547;p=sane-kds-s2000w-net.git add reproducible checksum check --- diff --git a/builder/run b/builder/run index 4a9cee7..53f6f58 100644 --- a/builder/run +++ b/builder/run @@ -11,6 +11,17 @@ create_package_checksum() sha256sum *.deb > $package.sha256 || return $? } +reproducible_package_checksum_check() +{ + local package=$(find . -name '*.deb' | head --lines=1) + cp /src/build/$package.sha256 . || return $? + sha256sum -c $package.sha256 +} + +################################################################################ +# normal build # +################################################################################ + run_tests() { mkdir --parents /app/tests && cd /app/tests @@ -29,6 +40,25 @@ build_package() make --jobs=$(nproc) package || return $? } +copy_package() +{ + cp /app/build/*.deb /src/build/ || return $? + cp /app/build/*.sha256 /src/build/ || return $? +} + +build_reproducible_package() +{ + mkdir --parents /app/reproducible-build && cd /app/reproducible-build + cmake -DCMAKE_BUILD_TYPE=Release \ + -DIMAGEMAGICK=OFF \ + -DEXTRA_VERSION="-$ID-$VERSION_CODENAME" /src || return $? + make --jobs=$(nproc) package || return $? +} + +################################################################################ +# with imagemagick library # +################################################################################ + run_imagemagick_tests() { mkdir --parents /app/imagemagick-tests && cd /app/imagemagick-tests @@ -47,18 +77,23 @@ build_imagemagick_package() make --jobs=$(nproc) package || return $? } -copy_package() -{ - cp /app/build/*.deb /src/build/ || return $? - cp /app/build/*.sha256 /src/build/ || return $? -} - copy_imagemagick_package() { cp /app/imagemagick-build/*.deb /src/build/ || return $? cp /app/imagemagick-build/*.sha256 /src/build/ || return $? } +build_imagemagick_reproducible_package() +{ + mkdir --parents /app/imagemagick-reproducible-build && cd /app/imagemagick-reproducible-build + cmake -DCMAKE_BUILD_TYPE=Release \ + -DIMAGEMAGICK=ON \ + -DEXTRA_VERSION="-imagemagick-$ID-$VERSION_CODENAME" /src || return $? + make --jobs=$(nproc) package || return $? +} + +################################################################################ + main() { source /etc/os-release @@ -68,11 +103,15 @@ main() build_package || return $? create_package_checksum || return $? copy_package || return $? + build_reproducible_package || return $? + reproducible_package_checksum_check || return $? run_imagemagick_tests || return $? build_imagemagick_package || return $? create_package_checksum || return $? - copy_imagemagick_package + copy_imagemagick_package || return $? + build_imagemagick_reproducible_package || return $? + reproducible_package_checksum_check || return $? } main \ No newline at end of file