]> Cypherpunks.ru repositories - pyderasn.git/blobdiff - makedist.sh
Generate Metalinks
[pyderasn.git] / makedist.sh
index f329c1afec972b686168e7e5958ebeffd612030b..413b15e5d3656b11b2fdabff3e5aaa6e845bfcd2 100755 (executable)
@@ -6,32 +6,82 @@ release=$1
 [ -n "$release" ]
 
 mkdir $tmp/pyderasn-"$release"
-cut -d' ' -f2 < MANIFEST.in > $tmp/includes
-echo pyderasn.py >> $tmp/includes
-echo setup.py >> $tmp/includes
-tar cfI - $tmp/includes | tar xfC - $tmp/pyderasn-"$release"
+{
+    echo pyderasn.py
+    echo setup.py
+    find $(perl -lane 'print $F[1]' MANIFEST.in)
+} | tar cfI - - | tar xfC - $tmp/pyderasn-"$release"
 
-PYTHONPATH="$tmp/pyderasn-$release" make -C $tmp/pyderasn-"$release"/doc
+PYTHONPATH="$tmp/pyderasn-$release" redo $tmp/pyderasn-"$release"/doc/build.log
+rm -r $tmp/pyderasn-"$release"/doc/.redo $tmp/pyderasn-"$release"/doc/build.log
 
-tar xvfC doc/download/six-*.tar.xz $tmp --include '*/six.py'
-mv -v $tmp/six-*/six.py $tmp/pyderasn-"$release"
+tar xvfC doc/download/termcolor-1.1.0.tar.gz $tmp --include "*/termcolor.py"
+mv -v $tmp/termcolor-*/termcolor.py $tmp/pyderasn-"$release"
+
+pip_hash=$(pip hash dist/pyderasn-"$release".tar.gz | sed -n '$p')
 
 cd $tmp
-tar cvf pyderasn-"$release".tar pyderasn-"$release"
-xz -9v pyderasn-"$release".tar
-gpg --detach-sign --sign --local-user 04A933D1BA20327A pyderasn-"$release".tar.xz
+find . -type d -exec chmod 755 {} +
+find . -type f -exec chmod 644 {} +
+chmod 755 pyderasn-"$release"/pyderasn.py
+tar cvf pyderasn-"$release".tar --uid=0 --gid=0 --numeric-owner pyderasn-"$release"
+zstd -19 -v pyderasn-"$release".tar
+tarball=pyderasn-"$release".tar.zst
+gpg --detach-sign --sign --local-user pyderasn@cypherpunks.ru $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.pyderasn.cypherpunks.ru/download/"$tarball" \
+    http://y.www.pyderasn.cypherpunks.ru/download/"$tarball" > "$tarball".meta4
 
-tarball=pyderasn-"$release".tar.xz
-size=$(( $(wc -c < $tarball) / 1024 ))
+size=$(( $(stat -f %z $tarball) / 1024 ))
 hash=$(gpg --print-md SHA256 < $tarball)
+release_date=$(date "+%Y-%m-%d")
 
 cat <<EOF
 An entry for documentation:
-   * - \`\`pyderasn\`\` $release
+   * - \`\`pyderasn\`\` :ref:\`$release <release$release>\`
+     - $release_date
      - $size KiB
-     - \`link <download/pyderasn-${release}.tar.xz>\`__
-       \`sign <download/pyderasn-${release}.tar.xz.sig>\`__
+     - \`meta4 <download/pyderasn-${release}.tar.zst.meta4>\`__
+       \`link <download/pyderasn-${release}.tar.zst>\`__
+       \`sig <download/pyderasn-${release}.tar.zst.sig>\`__
      - \`\`$hash\`\`
+
+pyderasn==$release $pip_hash
 EOF
 
-mv $tmp/$tarball $tmp/"$tarball".sig $cur/doc/download
+mv $tmp/$tarball $tmp/"$tarball".sig $tmp/"$tarball".meta4 $cur/doc/download
+
+cat <<EOF
+Subject: PyDERASN $release release announcement
+
+I am pleased to announce PyDERASN $release release availability!
+
+PyDERASN is free software pure Python ASN.1 DER/CER/BER library.
+
+------------------------ >8 ------------------------
+
+The main improvements for that release are:
+
+
+------------------------ >8 ------------------------
+
+PyDERASN'es home page is: http://www.pyderasn.cypherpunks.ru/
+
+Source code and its signature for that version can be found here:
+
+    http://www.pyderasn.cypherpunks.ru/download/pyderasn-${release}.tar.zst ($size KiB)
+    http://www.pyderasn.cypherpunks.ru/download/pyderasn-${release}.tar.zst.sig
+
+SHA256 hash: $hash
+GPG key: 2ED6 C846 3051 02DF 5B4E  0383 04A9 33D1 BA20 327A
+         PyDERASN releases <pyderasn at cypherpunks dot ru>
+
+pip'es requirements file:
+
+    pyderasn==$release $pip_hash
+
+Please send questions regarding the use of PyDERASN, bug reports and patches
+to mailing list: http://lists.cypherpunks.ru/pyderasn_002ddevel.html
+EOF