]> Cypherpunks.ru repositories - nncp.git/blobdiff - makedist.sh
nncp-xfer compares the checksum
[nncp.git] / makedist.sh
index 94f95c9b6487ce2c5c5352e35419086c330dabf5..3d00aed205835b4d31da2276fd18afadcc9add6c 100755 (executable)
@@ -17,14 +17,23 @@ rm -r \
     github.com/flynn/noise/vector* \
     github.com/gorhill/cronexpr/APLv2 \
     github.com/hjson/hjson-go/build_release.sh \
-    github.com/golang/snappy \
+    github.com/klauspost/compress/gen.sh \
+    github.com/klauspost/compress/gzhttp \
+    github.com/klauspost/compress/internal \
+    github.com/klauspost/compress/s2* \
+    github.com/klauspost/compress/snappy \
     github.com/klauspost/compress/zstd/snappy.go \
     golang.org/x/sys/plan9 \
     golang.org/x/sys/windows
 find github.com/klauspost/compress golang.org/x/sys -name "*_test.go" -delete
+find . -type d -exec rmdir {} + 2>/dev/null || :
 cd ../..
 rm -r ports
-find . \( -name .gitignore -o -name .travis.yml \) -delete
+find . \( \
+    -name .gitignore -o \
+    -name .travis.yml -o \
+    -name .goreleaser.yml -o \
+    -name .gitattributes \) -delete
 
 mkdir contrib
 cp ~/work/redo/minimal/do contrib/do
@@ -32,14 +41,15 @@ cp ~/work/redo/minimal/do contrib/do
 cat > doc/download.texi <<EOF
 @node Tarballs
 @section Prepared tarballs
-You can obtain releases source code prepared tarballs on
-@url{http://www.nncpgo.org/}.
+You can obtain releases source code prepared tarballs from
+@url{http://www.nncpgo.org/} and from one of its
+@url{http://www.nncpgo.org/Mirrors.html, mirrors}.
 EOF
 perl -i -ne 'print unless /include pedro/' doc/index.texi doc/about.ru.texi
 perl -p -i -e 's/^(.verbatiminclude) .*$/$1 PUBKEY.asc/g' doc/integrity.texi
-mv doc/.well-known/openpgpkey/hu/i4cdqgcarfjdjnba6y4jnf498asg8c6p.asc PUBKEY.asc
+mv doc/.well-known/openpgpkey/nncpgo.org/hu/i4cdqgcarfjdjnba6y4jnf498asg8c6p.asc PUBKEY.asc
 ln -s ../PUBKEY.asc doc
-redo doc
+redo doc/all
 
 ########################################################################
 # Supplementary files autogeneration
@@ -94,7 +104,7 @@ EOF
 mkinfo --output THANKS $texi
 
 rm -f $texi
-rm -r doc/.well-known doc/nncp.html/.well-known
+rm -r doc/.well-known
 
 ########################################################################
 
@@ -104,27 +114,37 @@ perl -i -npe "s/GO test/GO test -mod=vendor/" test.do
 rm makedist.sh VERSION.do
 rm -r .git
 redo-cleanup full
-find . -type d -exec chmod 755 {} \;
-find . -type f -exec chmod 644 {} \;
-find . -type f -name "*.sh" -exec chmod +x {} \;
+find . -type d -exec chmod 755 {} +
+find . -type f -exec chmod 644 {} +
+find . -type f -name "*.sh" -exec chmod +x {} +
 chmod +x contrib/do
 
 cd ..
 tar cvf nncp-"$release".tar --uid=0 --gid=0 --numeric-owner nncp-"$release"
 xz -9v nncp-"$release".tar
-gpg --detach-sign --sign --local-user releases@nncpgo.org nncp-"$release".tar.xz
-mv -v $tmp/nncp-"$release".tar.xz $tmp/nncp-"$release".tar.xz.sig $cur/doc/download
+tarball=nncp-"$release".tar.xz
+gpg --detach-sign --sign --local-user releases@nncpgo.org "$tarball"
+gpg --enarmor < "$tarball".sig |
+    sed "/^Comment:/d ; s/ARMORED FILE/SIGNATURE/" > "$tarball".asc
+meta4-create -file "$tarball" -mtime "$tarball" -sig "$tarball".asc \
+    http://www.nncpgo.org/download/"$tarball" \
+    http://y.www.nncpgo.org/download/"$tarball" \
+    https://nncp.mirrors.quux.org/download/"$tarball" > "$tarball".meta4
 
-tarball=$cur/doc/download/nncp-"$release".tar.xz
 size=$(( $(stat -f %z $tarball) / 1024 ))
 hash=$(gpg --print-md SHA256 < $tarball)
 release_date=$(date "+%Y-%m-%d")
 
+mv -v $tmp/"$tarball" $tmp/"$tarball".sig $tmp/"$tarball".meta4 $cur/doc/download
+
 release_underscored=`echo $release | tr . _`
 cat <<EOF
 An entry for documentation:
 @item @ref{Release $release_underscored, $release} @tab $release_date @tab $size KiB
-@tab @url{download/nncp-${release}.tar.xz, link} @url{download/nncp-${release}.tar.xz.sig, sign}
+@tab
+    @url{download/nncp-${release}.tar.xz.meta4, meta4}
+    @url{download/nncp-${release}.tar.xz, link}
+    @url{download/nncp-${release}.tar.xz.sig, sig}
 @tab @code{$hash}
 EOF
 
@@ -170,9 +190,15 @@ SHA256 hash: $hash
 GPG key ID: 0x2B25868E75A1A953 NNCP releases <releases@nncpgo.org>
 Fingerprint: 92C2 F0AE FE73 208E 46BF  F3DE 2B25 868E 75A1 A953
 
+There are mirrors where you can also get the source code tarballs:
+http://www.nncpgo.org/Mirrors.html
+
 Please send questions regarding the use of NNCP, bug reports and patches
 to mailing list: http://lists.cypherpunks.ru/nncp_002ddevel.html
 EOF
+echo mutt -s \"[EN] NNCP $release release announcement\" \
+    nncp-devel@lists.cypherpunks.ru \
+    -a $cur/doc/download/"$tarball".meta4
 
 cat <<EOF
 Subject: [RU] Состоялся релиз NNCP $release
@@ -219,7 +245,13 @@ SHA256 хэш: $hash
 Идентификатор GPG ключа: 0x2B25868E75A1A953 NNCP releases <releases@nncpgo.org>
 Отпечаток: 92C2 F0AE FE73 208E 46BF  F3DE 2B25 868E 75A1 A953
 
+Есть и зеркала где вы также можете получить архивы с исходным кодом:
+http://www.nncpgo.org/Mirrors.html
+
 Пожалуйста, все вопросы касающиеся использования NNCP, отчёты об ошибках
 и патчи отправляйте в nncp-devel почтовую рассылку:
 http://lists.cypherpunks.ru/nncp_002ddevel.html
 EOF
+echo mutt -s \"[RU] Состоялся релиз NNCP $release\" \
+    nncp-devel@lists.cypherpunks.ru \
+    -a $cur/doc/download/"$tarball".meta4