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