Skip to content

Commit 34d3adb

Browse files
committed
reproducible builds
1 parent 8cd6eaa commit 34d3adb

1 file changed

Lines changed: 15 additions & 5 deletions

File tree

.github/workflows/build.yml

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,9 @@ on:
88

99
env:
1010
FFMPEG_VERSION: "7.1"
11+
FFMPEG_SHA256: "40973d44970dbc83ef302b0609f2e74982be2d85916dd2ee7472d30678a7abe6"
1112
LIBWEBP_VERSION: "1.4.0"
13+
LIBWEBP_SHA256: "61f873ec69e3be1b99535634340d5bde750b2e4447caa1db9f61be3fd49ab1e5"
1214
# Minimal set of components needed for video thumbnail extraction.
1315
FFMPEG_OPTS: >-
1416
--disable-everything
@@ -87,7 +89,9 @@ jobs:
8789
run: |
8890
NPROC=$(nproc 2>/dev/null || sysctl -n hw.logicalcpu)
8991
PREFIX=$(pwd)/ffmpeg-build
90-
curl -fsSL https://storage.googleapis.com/downloads.webmproject.org/releases/webp/libwebp-${{ env.LIBWEBP_VERSION }}.tar.gz | tar xz
92+
curl -fsSL https://storage.googleapis.com/downloads.webmproject.org/releases/webp/libwebp-${{ env.LIBWEBP_VERSION }}.tar.gz -o libwebp.tar.gz
93+
echo "${{ env.LIBWEBP_SHA256 }} libwebp.tar.gz" | sha256sum -c -
94+
tar xzf libwebp.tar.gz
9195
cd libwebp-${{ env.LIBWEBP_VERSION }}
9296
CFLAGS="-fPIC -flto" ./configure --prefix="$PREFIX" \
9397
--enable-static --disable-shared \
@@ -101,7 +105,9 @@ jobs:
101105
run: |
102106
NPROC=$(nproc 2>/dev/null || sysctl -n hw.logicalcpu)
103107
PREFIX=$(pwd)/ffmpeg-build
104-
curl -fsSL https://ffmpeg.org/releases/ffmpeg-${{ env.FFMPEG_VERSION }}.tar.xz | tar xJ
108+
curl -fsSL https://ffmpeg.org/releases/ffmpeg-${{ env.FFMPEG_VERSION }}.tar.xz -o ffmpeg.tar.xz
109+
echo "${{ env.FFMPEG_SHA256 }} ffmpeg.tar.xz" | sha256sum -c -
110+
tar xJf ffmpeg.tar.xz
105111
cd ffmpeg-${{ env.FFMPEG_VERSION }}
106112
export PKG_CONFIG_PATH="$PREFIX/lib/pkgconfig${PKG_CONFIG_PATH:+:$PKG_CONFIG_PATH}"
107113
./configure --prefix="$PREFIX" \
@@ -154,7 +160,9 @@ jobs:
154160
if: runner.os == 'Windows' && steps.cache-ffmpeg-win.outputs.cache-hit != 'true'
155161
shell: msys2 {0}
156162
run: |
157-
curl -fsSL https://storage.googleapis.com/downloads.webmproject.org/releases/webp/libwebp-${{ env.LIBWEBP_VERSION }}.tar.gz | tar xz
163+
curl -fsSL https://storage.googleapis.com/downloads.webmproject.org/releases/webp/libwebp-${{ env.LIBWEBP_VERSION }}.tar.gz -o libwebp.tar.gz
164+
echo "${{ env.LIBWEBP_SHA256 }} libwebp.tar.gz" | sha256sum -c -
165+
tar xzf libwebp.tar.gz
158166
cd libwebp-${{ env.LIBWEBP_VERSION }}
159167
CFLAGS=-flto ./configure --prefix=$(pwd)/../ffmpeg-build \
160168
--enable-static --disable-shared \
@@ -167,7 +175,9 @@ jobs:
167175
if: runner.os == 'Windows' && steps.cache-ffmpeg-win.outputs.cache-hit != 'true'
168176
shell: msys2 {0}
169177
run: |
170-
curl -fsSL https://ffmpeg.org/releases/ffmpeg-${{ env.FFMPEG_VERSION }}.tar.xz | tar xJ
178+
curl -fsSL https://ffmpeg.org/releases/ffmpeg-${{ env.FFMPEG_VERSION }}.tar.xz -o ffmpeg.tar.xz
179+
echo "${{ env.FFMPEG_SHA256 }} ffmpeg.tar.xz" | sha256sum -c -
180+
tar xJf ffmpeg.tar.xz
171181
cd ffmpeg-${{ env.FFMPEG_VERSION }}
172182
export PKG_CONFIG_PATH="$(pwd)/../ffmpeg-build/lib/pkgconfig${PKG_CONFIG_PATH:+:$PKG_CONFIG_PATH}"
173183
./configure --prefix=$(pwd)/../ffmpeg-build \
@@ -220,7 +230,7 @@ jobs:
220230

221231
- name: Build JAR
222232
run: |
223-
ant jar
233+
SOURCE_DATE_EPOCH=0 ant jar
224234
echo "Native libs included:"
225235
jar tf thumbnailer.jar | grep native/
226236

0 commit comments

Comments
 (0)