Initial community commit
This commit is contained in:
parent
537bcbc862
commit
fc06254474
16440 changed files with 4239995 additions and 2 deletions
|
@ -0,0 +1,275 @@
|
|||
#!/usr/bin/env python3
|
||||
|
||||
import datetime
|
||||
import hashlib
|
||||
import json
|
||||
import os
|
||||
|
||||
from subprocess import Popen
|
||||
|
||||
OPENMPT_VERSION_MAJORMAJOR = os.environ['OPENMPT_VERSION_MAJORMAJOR']
|
||||
OPENMPT_VERSION_MAJOR = os.environ['OPENMPT_VERSION_MAJOR']
|
||||
OPENMPT_VERSION_MINOR = os.environ['OPENMPT_VERSION_MINOR']
|
||||
OPENMPT_VERSION_MINORMINOR = os.environ['OPENMPT_VERSION_MINORMINOR']
|
||||
SVNVERSION = os.environ['SVNVERSION']
|
||||
IS_RELEASE = True if OPENMPT_VERSION_MINORMINOR == "00" else False
|
||||
|
||||
if IS_RELEASE:
|
||||
download_base_url = "https://download.openmpt.org/archive/openmpt/"
|
||||
announcement_url = "https://openmpt.org/openmpt-" + OPENMPT_VERSION_MAJORMAJOR + "-" + OPENMPT_VERSION_MAJOR + "-" + OPENMPT_VERSION_MINOR + "-" + OPENMPT_VERSION_MINORMINOR + "-released"
|
||||
changelog_url = "https://openmpt.org/release_notes/History.txt"
|
||||
else:
|
||||
download_base_url = "https://builds.openmpt.org/builds/auto/openmpt/pkg.win/"
|
||||
announcement_url = "https://builds.openmpt.org/builds/auto/openmpt/pkg.win/"
|
||||
changelog_url = "https://source.openmpt.org/browse/openmpt/?op=revision&rev=" + SVNVERSION
|
||||
|
||||
os.chdir(os.path.dirname(os.path.abspath(__file__)))
|
||||
os.chdir("..")
|
||||
|
||||
plainversion = OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "." + OPENMPT_VERSION_MINOR + "." + OPENMPT_VERSION_MINORMINOR
|
||||
version = OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "." + OPENMPT_VERSION_MINOR + "." + OPENMPT_VERSION_MINORMINOR if IS_RELEASE else OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "." + OPENMPT_VERSION_MINOR + "." + OPENMPT_VERSION_MINORMINOR + "-" + SVNVERSION
|
||||
|
||||
def hash_file_sha512(filename):
|
||||
sha512 = hashlib.sha512()
|
||||
with open(filename, "rb") as f:
|
||||
sha512.update(f.read())
|
||||
return sha512.hexdigest()
|
||||
def hash_file_sha3_512(filename):
|
||||
sha3_512 = hashlib.sha3_512()
|
||||
with open(filename, "rb") as f:
|
||||
sha3_512.update(f.read())
|
||||
return sha3_512.hexdigest()
|
||||
|
||||
update = {
|
||||
"url": download_base_url + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "/OpenMPT-" + version + "-Setup.exe",
|
||||
"checksums": {
|
||||
"SHA-512": hash_file_sha512("installer/OpenMPT-" + plainversion + "-Setup.exe"),
|
||||
"SHA3-512": hash_file_sha3_512("installer/OpenMPT-" + plainversion + "-Setup.exe"),
|
||||
},
|
||||
"filename": "OpenMPT-" + version + "-Setup.exe",
|
||||
"autoupdate_installer": {
|
||||
"arguments": [ "/SP-", "/SILENT", "/NOCANCEL", "/AUTOUPDATE=yes" ]
|
||||
},
|
||||
"autoupdate_archive": None
|
||||
}
|
||||
with open("installer/" + "OpenMPT-" + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "." + OPENMPT_VERSION_MINOR + "." + OPENMPT_VERSION_MINORMINOR + "-Setup.update.json", "wb") as f:
|
||||
f.write((json.dumps(update, ensure_ascii=False, indent=1)).encode('utf-8'))
|
||||
f.close()
|
||||
|
||||
update = {
|
||||
"url": download_base_url + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "/OpenMPT-" + version + "-portable-x86.zip",
|
||||
"checksums": {
|
||||
"SHA-512": hash_file_sha512("installer/OpenMPT-" + plainversion + "-portable-x86.zip"),
|
||||
"SHA3-512": hash_file_sha3_512("installer/OpenMPT-" + plainversion + "-portable-x86.zip"),
|
||||
},
|
||||
"filename": "OpenMPT-" + version + "-portable-x86.zip",
|
||||
"autoupdate_installer": None,
|
||||
"autoupdate_archive": {
|
||||
"subfolder": "",
|
||||
"restartbinary": "OpenMPT.exe"
|
||||
}
|
||||
}
|
||||
with open("installer/" + "OpenMPT-" + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "." + OPENMPT_VERSION_MINOR + "." + OPENMPT_VERSION_MINORMINOR + "-portable-x86.update.json", "wb") as f:
|
||||
f.write((json.dumps(update, ensure_ascii=False, indent=1)).encode('utf-8'))
|
||||
f.close()
|
||||
|
||||
update = {
|
||||
"url": download_base_url + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "/OpenMPT-" + version + "-portable-x86-legacy.zip",
|
||||
"checksums": {
|
||||
"SHA-512": hash_file_sha512("installer/OpenMPT-" + plainversion + "-portable-x86-legacy.zip"),
|
||||
"SHA3-512": hash_file_sha3_512("installer/OpenMPT-" + plainversion + "-portable-x86-legacy.zip"),
|
||||
},
|
||||
"filename": "OpenMPT-" + version + "-portable-x86-legacy.zip",
|
||||
"autoupdate_installer": None,
|
||||
"autoupdate_archive": {
|
||||
"subfolder": "",
|
||||
"restartbinary": "OpenMPT.exe"
|
||||
}
|
||||
}
|
||||
with open("installer/" + "OpenMPT-" + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "." + OPENMPT_VERSION_MINOR + "." + OPENMPT_VERSION_MINORMINOR + "-portable-x86-legacy.update.json", "wb") as f:
|
||||
f.write((json.dumps(update, ensure_ascii=False, indent=1)).encode('utf-8'))
|
||||
f.close()
|
||||
|
||||
update = {
|
||||
"url": download_base_url + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "/OpenMPT-" + version + "-portable-amd64.zip",
|
||||
"checksums": {
|
||||
"SHA-512": hash_file_sha512("installer/OpenMPT-" + plainversion + "-portable-amd64.zip"),
|
||||
"SHA3-512": hash_file_sha3_512("installer/OpenMPT-" + plainversion + "-portable-amd64.zip"),
|
||||
},
|
||||
"filename": "OpenMPT-" + version + "-portable-amd64.zip",
|
||||
"autoupdate_installer": None,
|
||||
"autoupdate_archive": {
|
||||
"subfolder": "",
|
||||
"restartbinary": "OpenMPT.exe"
|
||||
}
|
||||
}
|
||||
with open("installer/" + "OpenMPT-" + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "." + OPENMPT_VERSION_MINOR + "." + OPENMPT_VERSION_MINORMINOR + "-portable-amd64.update.json", "wb") as f:
|
||||
f.write((json.dumps(update, ensure_ascii=False, indent=1)).encode('utf-8'))
|
||||
f.close()
|
||||
|
||||
update = {
|
||||
"url": download_base_url + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "/OpenMPT-" + version + "-portable-amd64-legacy.zip",
|
||||
"checksums": {
|
||||
"SHA-512": hash_file_sha512("installer/OpenMPT-" + plainversion + "-portable-amd64-legacy.zip"),
|
||||
"SHA3-512": hash_file_sha3_512("installer/OpenMPT-" + plainversion + "-portable-amd64-legacy.zip"),
|
||||
},
|
||||
"filename": "OpenMPT-" + version + "-portable-amd64-legacy.zip",
|
||||
"autoupdate_installer": None,
|
||||
"autoupdate_archive": {
|
||||
"subfolder": "",
|
||||
"restartbinary": "OpenMPT.exe"
|
||||
}
|
||||
}
|
||||
with open("installer/" + "OpenMPT-" + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "." + OPENMPT_VERSION_MINOR + "." + OPENMPT_VERSION_MINORMINOR + "-portable-amd64-legacy.update.json", "wb") as f:
|
||||
f.write((json.dumps(update, ensure_ascii=False, indent=1)).encode('utf-8'))
|
||||
f.close()
|
||||
|
||||
update = {
|
||||
"url": download_base_url + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "/OpenMPT-" + version + "-portable-arm.zip",
|
||||
"checksums": {
|
||||
"SHA-512": hash_file_sha512("installer/OpenMPT-" + plainversion + "-portable-arm.zip"),
|
||||
"SHA3-512": hash_file_sha3_512("installer/OpenMPT-" + plainversion + "-portable-arm.zip"),
|
||||
},
|
||||
"filename": "OpenMPT-" + version + "-portable-arm.zip",
|
||||
"autoupdate_installer": None,
|
||||
"autoupdate_archive": {
|
||||
"subfolder": "",
|
||||
"restartbinary": "OpenMPT.exe"
|
||||
}
|
||||
}
|
||||
with open("installer/" + "OpenMPT-" + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "." + OPENMPT_VERSION_MINOR + "." + OPENMPT_VERSION_MINORMINOR + "-portable-arm.update.json", "wb") as f:
|
||||
f.write((json.dumps(update, ensure_ascii=False, indent=1)).encode('utf-8'))
|
||||
f.close()
|
||||
|
||||
update = {
|
||||
"url": download_base_url + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "/OpenMPT-" + version + "-portable-arm64.zip",
|
||||
"checksums": {
|
||||
"SHA-512": hash_file_sha512("installer/OpenMPT-" + plainversion + "-portable-arm64.zip"),
|
||||
"SHA3-512": hash_file_sha3_512("installer/OpenMPT-" + plainversion + "-portable-arm64.zip"),
|
||||
},
|
||||
"filename": "OpenMPT-" + version + "-portable-arm64.zip",
|
||||
"autoupdate_installer": None,
|
||||
"autoupdate_archive": {
|
||||
"subfolder": "",
|
||||
"restartbinary": "OpenMPT.exe"
|
||||
}
|
||||
}
|
||||
with open("installer/" + "OpenMPT-" + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "." + OPENMPT_VERSION_MINOR + "." + OPENMPT_VERSION_MINORMINOR + "-portable-arm64.update.json", "wb") as f:
|
||||
f.write((json.dumps(update, ensure_ascii=False, indent=1)).encode('utf-8'))
|
||||
f.close()
|
||||
|
||||
|
||||
|
||||
update = {
|
||||
"OpenMPT " + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR: {
|
||||
"version": version,
|
||||
"date": datetime.datetime.utcnow().isoformat(),
|
||||
"announcement_url": announcement_url,
|
||||
"changelog_url": changelog_url,
|
||||
"downloads": {
|
||||
"installer": {
|
||||
"url": download_base_url + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "/OpenMPT-" + version + "-Setup.update.json",
|
||||
"download_url": download_base_url + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "/OpenMPT-" + version + "-Setup.exe",
|
||||
"type": "installer",
|
||||
"can_autoupdate": True,
|
||||
"autoupdate_minversion": "1.30.00.08",
|
||||
"os": "windows",
|
||||
"required_windows_version": { "version_major":6, "version_minor":1, "servicepack_major":1, "servicepack_minor":0, "build":0, "wine_major":1, "wine_minor":8, "wine_update":0 },
|
||||
"required_architectures": { "x86":True },
|
||||
"supported_architectures": { "x86":True,"amd64":True,"arm":True,"arm64":True },
|
||||
"required_processor_features": { "x86":{"sse2":True}, "amd64":{"sse2":True} }
|
||||
},
|
||||
"portable-x86": {
|
||||
"url": download_base_url + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "/OpenMPT-" + version + "-portable-x86.update.json",
|
||||
"download_url": download_base_url + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "/OpenMPT-" + version + "-portable-x86.zip",
|
||||
"type": "archive",
|
||||
"can_autoupdate": True,
|
||||
"autoupdate_minversion": "1.30.00.08",
|
||||
"os": "windows",
|
||||
"required_windows_version": { "version_major":10, "version_minor":0, "servicepack_major":0, "servicepack_minor":0, "build":0, "wine_major":1, "wine_minor":8, "wine_update":0 },
|
||||
"required_architectures": {},
|
||||
"supported_architectures": { "x86":True },
|
||||
"required_processor_features": { "x86":{"sse2":True} }
|
||||
},
|
||||
"portable-x86-legacy": {
|
||||
"url": download_base_url + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "/OpenMPT-" + version + "-portable-x86-legacy.update.json",
|
||||
"download_url": download_base_url + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "/OpenMPT-" + version + "-portable-x86-legacy.zip",
|
||||
"type": "archive",
|
||||
"can_autoupdate": True,
|
||||
"autoupdate_minversion": "1.30.00.08",
|
||||
"os": "windows",
|
||||
"required_windows_version": { "version_major":6, "version_minor":1, "servicepack_major":0, "servicepack_minor":0, "build":0, "wine_major":1, "wine_minor":8, "wine_update":0 },
|
||||
"required_architectures": {},
|
||||
"supported_architectures": { "x86":True },
|
||||
"required_processor_features": { "x86":{"sse2":True} }
|
||||
},
|
||||
"portable-amd64": {
|
||||
"url": download_base_url + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "/OpenMPT-" + version + "-portable-amd64.update.json",
|
||||
"download_url": download_base_url + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "/OpenMPT-" + version + "-portable-amd64.zip",
|
||||
"type": "archive",
|
||||
"can_autoupdate": True,
|
||||
"autoupdate_minversion": "1.30.00.08",
|
||||
"os": "windows",
|
||||
"required_windows_version": { "version_major":10, "version_minor":0, "servicepack_major":0, "servicepack_minor":0, "build":0, "wine_major":1, "wine_minor":8, "wine_update":0 },
|
||||
"required_architectures": {},
|
||||
"supported_architectures": { "amd64":True },
|
||||
"required_processor_features": { "amd64":{"sse2":True} }
|
||||
},
|
||||
"portable-amd64-legacy": {
|
||||
"url": download_base_url + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "/OpenMPT-" + version + "-portable-amd64-legacy.update.json",
|
||||
"download_url": download_base_url + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "/OpenMPT-" + version + "-portable-amd64-legacy.zip",
|
||||
"type": "archive",
|
||||
"can_autoupdate": True,
|
||||
"autoupdate_minversion": "1.30.00.08",
|
||||
"os": "windows",
|
||||
"required_windows_version": { "version_major":6, "version_minor":1, "servicepack_major":0, "servicepack_minor":0, "build":0, "wine_major":1, "wine_minor":8, "wine_update":0 },
|
||||
"required_architectures": {},
|
||||
"supported_architectures": { "amd64":True },
|
||||
"required_processor_features": { "amd64":{"sse2":True} }
|
||||
},
|
||||
"portable-arm": {
|
||||
"url": download_base_url + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "/OpenMPT-" + version + "-portable-arm.update.json",
|
||||
"download_url": download_base_url + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "/OpenMPT-" + version + "-portable-arm.zip",
|
||||
"type": "archive",
|
||||
"can_autoupdate": True,
|
||||
"autoupdate_minversion": "1.30.00.08",
|
||||
"os": "windows",
|
||||
"required_windows_version": { "version_major":10, "version_minor":0, "servicepack_major":0, "servicepack_minor":0, "build":0, "wine_major":1, "wine_minor":8, "wine_update":0 },
|
||||
"required_architectures": {},
|
||||
"supported_architectures": { "arm":True },
|
||||
"required_processor_features": { "arm":{} }
|
||||
},
|
||||
"portable-arm64": {
|
||||
"url": download_base_url + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "/OpenMPT-" + version + "-portable-arm64.update.json",
|
||||
"download_url": download_base_url + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "/OpenMPT-" + version + "-portable-arm64.zip",
|
||||
"type": "archive",
|
||||
"can_autoupdate": True,
|
||||
"autoupdate_minversion": "1.30.00.08",
|
||||
"os": "windows",
|
||||
"required_windows_version": { "version_major":10, "version_minor":0, "servicepack_major":0, "servicepack_minor":0, "build":0, "wine_major":1, "wine_minor":8, "wine_update":0 },
|
||||
"required_architectures": {},
|
||||
"supported_architectures": { "arm64":True },
|
||||
"required_processor_features": { "arm64":{} }
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
with open("installer/" + "OpenMPT-" + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "." + OPENMPT_VERSION_MINOR + "." + OPENMPT_VERSION_MINORMINOR + "-update.json", "wb") as f:
|
||||
f.write((json.dumps(update, ensure_ascii=False, indent=1)).encode('utf-8'))
|
||||
f.close()
|
||||
|
||||
def sign_file(filename):
|
||||
p = Popen(["bin/release/vs2019-win7-static/amd64/updatesigntool.exe", "sign", "jws", "auto", filename, filename + ".jws.json"])
|
||||
p.communicate()
|
||||
|
||||
sign_file("installer/" + "OpenMPT-" + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "." + OPENMPT_VERSION_MINOR + "." + OPENMPT_VERSION_MINORMINOR + "-Setup.update.json")
|
||||
sign_file("installer/" + "OpenMPT-" + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "." + OPENMPT_VERSION_MINOR + "." + OPENMPT_VERSION_MINORMINOR + "-portable-x86.update.json")
|
||||
sign_file("installer/" + "OpenMPT-" + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "." + OPENMPT_VERSION_MINOR + "." + OPENMPT_VERSION_MINORMINOR + "-portable-x86-legacy.update.json")
|
||||
sign_file("installer/" + "OpenMPT-" + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "." + OPENMPT_VERSION_MINOR + "." + OPENMPT_VERSION_MINORMINOR + "-portable-amd64.update.json")
|
||||
sign_file("installer/" + "OpenMPT-" + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "." + OPENMPT_VERSION_MINOR + "." + OPENMPT_VERSION_MINORMINOR + "-portable-amd64-legacy.update.json")
|
||||
sign_file("installer/" + "OpenMPT-" + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "." + OPENMPT_VERSION_MINOR + "." + OPENMPT_VERSION_MINORMINOR + "-portable-arm.update.json")
|
||||
sign_file("installer/" + "OpenMPT-" + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "." + OPENMPT_VERSION_MINOR + "." + OPENMPT_VERSION_MINORMINOR + "-portable-arm64.update.json")
|
||||
|
||||
pdumpkey = Popen(["bin/release/vs2019-win7-static/amd64/updatesigntool.exe", "dumpkey", "auto", "installer/" + "OpenMPT-" + OPENMPT_VERSION_MAJORMAJOR + "." + OPENMPT_VERSION_MAJOR + "." + OPENMPT_VERSION_MINOR + "." + OPENMPT_VERSION_MINORMINOR + "-update-publickey.jwk.json"])
|
||||
pdumpkey.communicate()
|
Loading…
Add table
Add a link
Reference in a new issue