]> Sergey Matveev's repositories - tofuproxy.git/blob - makedist
Download link for 0.6.0 release
[tofuproxy.git] / makedist
1 #!/bin/sh -ex
2
3 cur=$(pwd)
4 tmp=$(mktemp -d)
5 release=$1
6 [ -n "$release" ]
7
8 git clone . $tmp/tofuproxy-$release
9 cd $tmp/tofuproxy-$release
10 git checkout v$release
11
12 redo-ifchange VERSION
13
14 ########################################################################
15 cd doc
16 cat > download.texi <<EOF
17 You can obtain releases source code prepared tarballs on
18 @url{http://www.tofuproxy.stargrave.org}.
19 EOF
20
21 mkinfo() {
22     ${MAKEINFO:-makeinfo} --plaintext \
23         --set-customization-variable ASCII_PUNCTUATION=1 \
24         -D "VERSION `cat ../VERSION`" $@
25 }
26
27 texi=$(mktemp)
28
29 cat > $texi <<EOF
30 \input texinfo
31 @documentencoding UTF-8
32 @settitle INSTALL
33 @include install.texi
34 @bye
35 EOF
36 mkinfo --output INSTALL $texi
37
38 rm $texi
39 redo tofuproxy.info
40 mv tofuproxy.info INSTALL ..
41 cd ..
42
43 ########################################################################
44
45 go mod vendor
46 rm -rf vendor/golang.org/x/sys/windows
47 find . \( -name .gitignore -o -name .travis.yml \) -delete
48
49 ########################################################################
50
51 rm -rf .redo .git makedist VERSION.do
52 find . -type d -exec chmod 755 {} +
53 find . -type f -exec chmod 644 {} +
54 chmod +x build state-init fifos/ensure fifos/multitail cmd/zstd/build
55
56 cd ..
57 tar cvf tofuproxy-"$release".tar --uid=0 --gid=0 --numeric-owner tofuproxy-"$release"
58 zstd -19 -v tofuproxy-"$release".tar
59 tarball=tofuproxy-"$release".tar.zst
60 gpg --detach-sign --sign --local-user 12AD32689C660D426967FD75CB8205632107AD8A "$tarball"
61 gpg --enarmor < "$tarball".sig |
62     sed "/^Comment:/d ; s/ARMORED FILE/SIGNATURE/" > "$tarball".asc
63 meta4-create -fn "$tarball" -mtime "$tarball" -sig "$tarball".asc \
64     http://www.tofuproxy.stargrave.org/download/"$tarball" \
65     http://y.www.tofuproxy.stargrave.org/download/"$tarball" < "$tarball" > "$tarball".meta4
66
67 size=$(( $(stat -f %z $tarball) / 1024 ))
68 release_date=$(date "+%Y-%m-%d")
69
70 release_underscored=`echo $release | tr . _`
71 cat <<EOF
72 An entry for documentation:
73 @item $release @tab $release_date @tab $size KiB @tab
74     @url{download/$tarball.meta4, meta4}
75     @url{download/$tarball, tar}
76     @url{download/$tarball.sig, sig}
77 EOF
78
79 mv $tmp/$tarball $tmp/"$tarball".sig $tarball.meta4 $cur/doc/tofuproxy.html/download