]> gitweb.hhaalo.de Git - feierabend.git/commitdiff
add reproducible check
authorBastian Dehn <hhaalo@arcor.de>
Mon, 11 May 2026 18:24:57 +0000 (20:24 +0200)
committerBastian Dehn <hhaalo@arcor.de>
Mon, 11 May 2026 18:28:38 +0000 (20:28 +0200)
builder/run

index 7a076b49a2ef362fbb220e1dede1e08e0f077cbc..d5558c25309e099d2c3844ec7ef9c5bba7f4108b 100644 (file)
@@ -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