You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

32 lines
1.2 KiB

  1. #!/usr/bin/env python3
  2. import hashlib
  3. import shutil
  4. import subprocess
  5. import tempfile
  6. import urllib.request
  7. import json
  8. versions_info = json.load(open('update/versions.json'))
  9. version = versions_info['latest']
  10. URL = versions_info['versions'][version]['bin'][0]
  11. data = urllib.request.urlopen(URL).read()
  12. # Read template page
  13. with open('download.html.in', 'r', encoding='utf-8') as tmplf:
  14. template = tmplf.read()
  15. md5sum = hashlib.md5(data).hexdigest()
  16. sha1sum = hashlib.sha1(data).hexdigest()
  17. sha256sum = hashlib.sha256(data).hexdigest()
  18. template = template.replace('@PROGRAM_VERSION@', version)
  19. template = template.replace('@PROGRAM_URL@', URL)
  20. template = template.replace('@PROGRAM_MD5SUM@', md5sum)
  21. template = template.replace('@PROGRAM_SHA1SUM@', sha1sum)
  22. template = template.replace('@PROGRAM_SHA256SUM@', sha256sum)
  23. template = template.replace('@EXE_URL@', versions_info['versions'][version]['exe'][0])
  24. template = template.replace('@EXE_SHA256SUM@', versions_info['versions'][version]['exe'][1])
  25. template = template.replace('@TAR_URL@', versions_info['versions'][version]['tar'][0])
  26. template = template.replace('@TAR_SHA256SUM@', versions_info['versions'][version]['tar'][1])
  27. with open('download.html', 'w', encoding='utf-8') as dlf:
  28. dlf.write(template)