]> Cypherpunks.ru repositories - pygost.git/blob - makedist.sh
Additional signature with my new main key
[pygost.git] / makedist.sh
1 #!/bin/sh -ex
2
3 cur=$(pwd)
4 tmp=$(mktemp -d)
5 release=$1
6 [ -n "$release" ]
7
8 pip_hash=$(pip hash dist/pygost-"$release".tar.gz | sed -n '$p')
9 cp dist/pygost-"$release".tar.gz $tmp
10 cd $tmp
11 gunzip pygost-"$release".tar.gz
12 zstd -19 -v pygost-"$release".tar
13 tarball=pygost-"$release".tar.zst
14 gpg --detach-sign --sign --local-user pygost@cypherpunks.ru "$tarball"
15 gpg --enarmor < "$tarball".sig |
16     sed "/^Comment:/d ; s/ARMORED FILE/SIGNATURE/" > "$tarball".asc
17 meta4-create -file "$tarball" -mtime "$tarball" -sig "$tarball".asc \
18     http://www.pygost.cypherpunks.ru/"$tarball" \
19     http://y.www.pygost.cypherpunks.ru/"$tarball" > "$tarball".meta4
20
21 size=$(( $(stat -f %z $tarball) / 1024 ))
22 hash=$(gpg --print-md SHA256 < $tarball)
23 hashsb=$($HOME/work/gogost/streebog256 < $tarball)
24 release_date=$(date "+%Y-%m-%d")
25
26 cat <<EOF
27 An entry for documentation:
28 @item @ref{Release $release, $release} @tab $release_date @tab $size KiB
29 @tab
30     @url{pygost-${release}.tar.zst.meta4, meta4}
31     @url{pygost-${release}.tar.zst, link}
32     @url{pygost-${release}.tar.zst.sig, sig}
33 @tab @code{$hash}
34 @tab @code{$hashsb}
35 EOF
36
37 cat <<EOF
38 Subject: [EN] PyGOST $release release announcement
39
40 I am pleased to announce PyGOST $release release availability!
41
42 PyGOST is free software pure Python GOST cryptographic functions library.
43 GOST is GOvernment STandard of Russian Federation (and Soviet Union).
44
45 ------------------------ >8 ------------------------
46
47 The main improvements for that release are:
48
49
50 ------------------------ >8 ------------------------
51
52 PyGOST'es home page is: http://www.pygost.cypherpunks.ru/
53
54 Source code and its signature for that version can be found here:
55
56     http://www.pygost.cypherpunks.ru/pygost-${release}.tar.zst ($size KiB)
57     http://www.pygost.cypherpunks.ru/pygost-${release}.tar.zst.sig
58
59 Streebog-256 hash: $hashsb
60 SHA256 hash: $hash
61 GPG key: F55A 7619 3A0C 323A A031  0E6B E6FD 1269 CD0C 009E
62          PyGOST releases <pygost at cypherpunks dot ru>
63
64 Please send questions regarding the use of PyGOST, bug reports and patches
65 to mailing list: http://lists.cypherpunks.ru/gost.html
66 EOF
67
68 cat <<EOF
69 Subject: [RU] Состоялся релиз PyGOST $release
70
71 Я рад сообщить о выходе релиза PyGOST $release!
72
73 PyGOST это свободное программное обеспечение реализующее
74 криптографические функции ГОСТ на чистом Python. ГОСТ -- ГОсударственный
75 СТандарт Российской Федерации (а также Советского Союза).
76
77 ------------------------ >8 ------------------------
78
79 Основные усовершенствования в этом релизе:
80
81
82 ------------------------ >8 ------------------------
83
84 Домашняя страница PyGOST: http://www.pygost.cypherpunks.ru/
85
86 Исходный код и его подпись для этой версии могут быть найдены здесь:
87
88     http://www.pygost.cypherpunks.ru/pygost-${release}.tar.zst ($size KiB)
89     http://www.pygost.cypherpunks.ru/pygost-${release}.tar.zst.sig
90
91 Streebog-256 хэш: $hashsb
92 SHA256 хэш: $hash
93 GPG ключ: F55A 7619 3A0C 323A A031  0E6B E6FD 1269 CD0C 009E
94           PyGOST releases <pygost at cypherpunks dot ru>
95
96 Пожалуйста, все вопросы касающиеся использования PyGOST, отчёты об
97 ошибках и патчи отправляйте в gost почтовую рассылку:
98 http://lists.cypherpunks.ru/gost.html
99 EOF
100
101 mv $tmp/$tarball $tmp/"$tarball".sig $tmp/"$tarball".meta4 $cur/pygost.html/