-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathbuild.py
More file actions
70 lines (58 loc) · 2.88 KB
/
build.py
File metadata and controls
70 lines (58 loc) · 2.88 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
import os, shutil
def sprint(content):
print("[Automated_App_Builder] " + content)
def prun(command):
os.system(f"powershell {command}")
return
def clearTempFile():
try:
prun(f"rm ./dist_electron/win-unpacked/resources/{ASAP_OLD}")
except:
sprint("Old temp file has been deleted. Continue")
try:
prun(f"rm ./dist_electron/win-unpacked/resources/{EXT_FOLDER}")
except:
sprint("Old temp folder has been deleted. Continue")
ASAP_OLD = "app_old.asar"
ASAP_NEW = "app_new.asar"
ASAP_USE = "app.asar"
EXT_FOLDER = "temp"
def main_process(skip_build:bool):
clearTempFile()
if (not skip_build):
sprint("Starting the electron-build process...")
# build
os.system("npm run electron:build")
sprint("Build finished.")
else:
sprint("Script announced to skip building process. Continuing...")
# modify and change the asap file
sprint("Starting the process of exchanging asap file.")
sprint("Unzipping asap file...")
prun(f"mkdir ./dist_electron/win-unpacked/resources/{EXT_FOLDER}")
prun(f"asar e ./dist_electron/win-unpacked/resources/{ASAP_USE} ./dist_electron/win-unpacked/resources/{EXT_FOLDER}")
sprint("File unzipped. Start file insertion")
# try:
# # Copy the files to the dir
# shutil.copytree(f".\\dist_electron\\config", f".\\dist_electron\\win-unpacked\\resources\\config")
# shutil.copytree(f".\\dist_electron\\projects", f".\\dist_electron\\win-unpacked\\resources\\projects")
# shutil.copytree(f".\\dist_electron\\public", f".\\dist_electron\\win-unpacked\\resources\\public")
# shutil.copy(f".\\dist_electron\\preload.js", f".\\dist_electron\\win-unpacked\\resources\\{EXT_FOLDER}")
# # =========================
# sprint("File insertion finished.")
# except:
# sprint(f"Insertion Error:. Exiting...")
shutil.copytree(f".\\config", f".\\dist_electron\\win-unpacked\\resources\\config")
shutil.copytree(f".\\projects", f".\\dist_electron\\win-unpacked\\resources\\projects")
shutil.copytree(f".\\public_resources", f".\\dist_electron\\win-unpacked\\resources\\public_resources")
shutil.copy(f".\\dist_electron\\preload.js", f".\\dist_electron\\win-unpacked\\resources\\{EXT_FOLDER}")
sprint("Preparing to exchange the legacy asar file...")
prun(f"mv ./dist_electron/win-unpacked/resources/{ASAP_USE} ./dist_electron/win-unpacked/resources/{ASAP_OLD}")
sprint("Packing...")
prun(f"asar p ./dist_electron/win-unpacked/resources/{EXT_FOLDER} ./dist_electron/win-unpacked/resources/{ASAP_USE}")
sprint("Cleaning up...")
prun(f"rmdir ./dist_electron/win-unpacked/resources/{EXT_FOLDER}")
sprint("Packed finished! Script running sequences finished! Enjoy your application!")
return
if __name__ == "__main__":
main_process(skip_build=False)