diff --git a/Updater/Updater.py b/Updater/Updater.py new file mode 100644 index 0000000..1df4494 --- /dev/null +++ b/Updater/Updater.py @@ -0,0 +1,33 @@ +import requests +import zipfile +import os +import sys + +Dir, ext = os.path.splitext(sys.argv[0]) +if ext == ".py": + input("Ce code ne doit être lancé que sous sa forme .exe !") + exit() + +VERSION_FILE_URL = "https://raw.githubusercontent.com/Faraphel/MKWF-Install/master/version" + +try: + gitversion = requests.get(VERSION_FILE_URL, allow_redirects=True).json() + URL = gitversion["download_bin"] + + dl = requests.get(URL, allow_redirects=True) + with open("./download.zip", "wb") as file: + print(f"Téléchargement de la version {gitversion['version']}.{gitversion['subversion']} en cours...") + file.write(dl.content) + print("fin du téléchargement, début de l'extraction...") + + with zipfile.ZipFile("./download.zip") as file: + file.extractall("./") + print("fin de l'extraction") + + os.remove("./download.zip") + print("lancement de l'application...") + os.startfile(os.path.realpath("./MKWF-Install.exe")) + +except Exception as e: + print(f"Impossible d'effectuer la mise à jour :\n\n{str(e)}") + input("Appuyez pour continuer...") \ No newline at end of file diff --git a/Updater/Updater.zip b/Updater/Updater.zip new file mode 100644 index 0000000..7836093 Binary files /dev/null and b/Updater/Updater.zip differ diff --git a/Updater/build.bat b/Updater/build.bat new file mode 100644 index 0000000..7494a24 --- /dev/null +++ b/Updater/build.bat @@ -0,0 +1 @@ +"../venv/Scripts/python.exe" "./setup.py" build \ No newline at end of file diff --git a/Updater/setup.py b/Updater/setup.py new file mode 100644 index 0000000..1654d34 --- /dev/null +++ b/Updater/setup.py @@ -0,0 +1,24 @@ +from cx_Freeze import setup, Executable + +options = { + "build_exe":{ + "includes": ["requests"], + "packages": [], + "excludes": [] + } +} + +setup( + options=options, + name='MKWF-Install', + version='0.3', + url='https://github.com/Faraphel/MKWF-Install', + license='GPL-3.0', + author='Faraphel', + author_email='rc60650@hotmail.com', + description='Logiciel de mise à jour pour MKWF-Install.', + executables = [Executable("./Updater.py", + target_name = "Updater.exe", + shortcut_name = "MKWF-Install Updater", + shortcut_dir = "DesktopFolder")], +) \ No newline at end of file diff --git a/version b/version new file mode 100644 index 0000000..ee6d04d --- /dev/null +++ b/version @@ -0,0 +1,7 @@ +{ + "version": "0.1", + "subversion": "0", + "changelog": "", + "download_bin": "https://github.com/Faraphel/MKWF-Install/releases/download/0.1/MKWF.v0.1.zip", + "updater_bin": "https://github.com/Faraphel/MKWF-Install/raw/master/Updater/Updater.zip" +}