]> Cypherpunks.ru repositories - gogost.git/blob - makedist.sh
gogost. and gost. homepages
[gogost.git] / makedist.sh
1 #!/bin/sh -ex
2
3 cur=$(pwd)
4 tmp=$(mktemp -d)
5 release=$1
6 [ -n "$release" ]
7
8 git clone . $tmp/gogost-$release
9 cd $tmp/gogost-$release
10 git checkout $release
11 git submodule update --init
12
13 mkdir -p src/cypherpunks.ru/gogost/vendor
14 cat > $tmp/includes <<EOF
15 golang.org/x/crypto/AUTHORS
16 golang.org/x/crypto/CONTRIBUTORS
17 golang.org/x/crypto/LICENSE
18 golang.org/x/crypto/PATENTS
19 golang.org/x/crypto/README
20 golang.org/x/crypto/pbkdf2
21 EOF
22 tar cfCI - src $tmp/includes | tar xfC - src/cypherpunks.ru/gogost/vendor
23 find . -name .git -type d | xargs rm -fr
24 rm -fr www* makedist* TODO src/golang.org $tmp/includes
25
26 cd ..
27 tar cvf gogost-"$release".tar gogost-"$release"
28 xz -9 gogost-"$release".tar
29 gpg --detach-sign --sign --local-user 82343436696FC85A gogost-"$release".tar.xz
30
31 tarball=gogost-"$release".tar.xz
32 size=$(( $(wc -c < $tarball) / 1024 ))
33 hash=$(gpg --print-md SHA256 < $tarball)
34 hashsb=$($HOME/work/gogost/streebog256 < $tarball)
35
36 cat <<EOF
37 An entry for documentation:
38 @item $release @tab $size KiB
39 @tab @url{gogost-${release}.tar.xz, link} @url{gogost-${release}.tar.xz.sig, sign}
40 @tab @code{$hash}
41 @tab @code{$hashsb}
42 EOF
43
44 cat <<EOF
45 Subject: [EN] GoGOST $release release announcement
46
47 I am pleased to announce GoGOST $release release availability!
48
49 GoGOST is free software pure Go GOST cryptographic functions library.
50 GOST is GOvernment STandard of Russian Federation (and Soviet Union).
51
52 ------------------------ >8 ------------------------
53
54 The main improvements for that release are:
55
56
57 ------------------------ >8 ------------------------
58
59 GoGOST'es home page is: http://gogost.cypherpunks.ru/
60 Also available as I2P service:
61 http://a5zmymxbjreuvbftgzmu64vcw2ssa3s44c2dn2jryxee6utn34qa.b32.i2p/
62
63 Source code and its signature for that version can be found here:
64
65     http://gogost.cypherpunks.ru/gogost-${release}.tar.xz ($size KiB)
66     http://gogost.cypherpunks.ru/gogost-${release}.tar.xz.sig
67
68 Streebog-256 hash: $hashsb
69 SHA256 hash: $hash
70 GPG key: CEBD 1282 2C46 9C02 A81A  0467 8234 3436 696F C85A
71          GoGOST releases <gogost at cypherpunks dot ru>
72
73 Please send questions regarding the use of GoGOST, bug reports and patches
74 to mailing list: https://lists.cypherpunks.ru/mailman/listinfo/gost
75 EOF
76
77 cat <<EOF
78 Subject: [RU] Состоялся релиз GoGOST $release
79
80 Я рад сообщить о выходе релиза GoGOST $release!
81
82 GoGOST это свободное программное обеспечение реализующее
83 криптографические функции ГОСТ на чистом Go. ГОСТ -- ГОсударственный
84 СТандарт Российской Федерации (а также Советского Союза).
85
86 ------------------------ >8 ------------------------
87
88 Основные усовершенствования в этом релизе:
89
90
91 ------------------------ >8 ------------------------
92
93 Домашняя страница GoGOST: http://gogost.cypherpunks.ru/
94 Также доступная как I2P сервис:
95 http://a5zmymxbjreuvbftgzmu64vcw2ssa3s44c2dn2jryxee6utn34qa.b32.i2p/
96
97 Исходный код и его подпись для этой версии могут быть найдены здесь:
98
99     http://gogost.cypherpunks.ru/gogost-${release}.tar.xz ($size KiB)
100     http://gogost.cypherpunks.ru/gogost-${release}.tar.xz.sig
101
102 Streebog-256 хэш: $hashsb
103 SHA256 хэш: $hash
104 GPG ключ: CEBD 1282 2C46 9C02 A81A  0467 8234 3436 696F C85A
105           GoGOST releases <gogost at cypherpunks dot ru>
106
107 Пожалуйста, все вопросы касающиеся использования GoGOST, отчёты об
108 ошибках и патчи отправляйте в gost почтовую рассылку:
109 https://lists.cypherpunks.ru/mailman/listinfo/gost
110 EOF
111
112 mv $tmp/$tarball $tmp/"$tarball".sig $cur/gogost.html/