forked from TrueCloudLab/restic
Add section about reproducible build to README
In addition, the build script isn't needed any more.
This commit is contained in:
parent
6d36dcd46e
commit
e5c7c314a7
2 changed files with 9 additions and 69 deletions
|
@ -68,6 +68,15 @@ following principles in mind:
|
||||||
data should be de-duplicated before it is actually written to the
|
data should be de-duplicated before it is actually written to the
|
||||||
storage back end to save precious backup space.
|
storage back end to save precious backup space.
|
||||||
|
|
||||||
|
Reproducible Builds
|
||||||
|
-------------------
|
||||||
|
|
||||||
|
The binaries released with each restic version starting at 0.6.1 are
|
||||||
|
[reproducible](https://reproducible-builds.org/), which means that you can
|
||||||
|
easily reproduce a byte identical version from the source code for that
|
||||||
|
release. Instructions on how to do that are contained in the
|
||||||
|
[build repository](https://github.com/restic/build).
|
||||||
|
|
||||||
News
|
News
|
||||||
----
|
----
|
||||||
|
|
||||||
|
|
|
@ -1,69 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
if [[ -z "$VERSION" ]]; then
|
|
||||||
echo '$VERSION unset'
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ -n "$(git diff)" ]]; then
|
|
||||||
echo 'workspace is dirty'
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
dir=$(mktemp -d --tmpdir restic-release-XXXXXX)
|
|
||||||
echo "path is ${dir}"
|
|
||||||
|
|
||||||
for R in \
|
|
||||||
darwin/386 \
|
|
||||||
darwin/amd64 \
|
|
||||||
freebsd/386 \
|
|
||||||
freebsd/amd64 \
|
|
||||||
freebsd/arm \
|
|
||||||
linux/386 \
|
|
||||||
linux/amd64 \
|
|
||||||
linux/arm \
|
|
||||||
linux/arm64 \
|
|
||||||
openbsd/386 \
|
|
||||||
openbsd/amd64 \
|
|
||||||
windows/386 \
|
|
||||||
windows/amd64 \
|
|
||||||
; do \
|
|
||||||
|
|
||||||
OS=$(dirname $R)
|
|
||||||
ARCH=$(basename $R)
|
|
||||||
filename=restic_${VERSION}_${OS}_${ARCH}
|
|
||||||
|
|
||||||
if [[ "$OS" == "windows" ]]; then
|
|
||||||
filename="${filename}.exe"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo $filename
|
|
||||||
|
|
||||||
go run build.go --goos $OS --goarch $ARCH --output ${filename}
|
|
||||||
if [[ "$OS" == "windows" ]]; then
|
|
||||||
zip ${filename%.exe}.zip ${filename}
|
|
||||||
rm ${filename}
|
|
||||||
mv ${filename%.exe}.zip ${dir}
|
|
||||||
else
|
|
||||||
bzip2 ${filename}
|
|
||||||
mv ${filename}.bz2 ${dir}
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
echo "packing sources"
|
|
||||||
git archive --format=tar --prefix=restic-$VERSION/ v$VERSION | gzip -n > restic-$VERSION.tar.gz
|
|
||||||
mv restic-$VERSION.tar.gz ${dir}
|
|
||||||
|
|
||||||
echo "creating checksums"
|
|
||||||
pushd ${dir}
|
|
||||||
sha256sum restic_*.{zip,bz2} restic-$VERSION.tar.gz > SHA256SUMS
|
|
||||||
gpg --armor --detach-sign SHA256SUMS
|
|
||||||
popd
|
|
||||||
|
|
||||||
echo "creating source signature file"
|
|
||||||
gpg --armor --detach-sign ${dir}/restic-$VERSION.tar.gz
|
|
||||||
|
|
||||||
echo
|
|
||||||
echo "done, path is ${dir}"
|
|
Loading…
Reference in a new issue