-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathcx_exe_setup.py
97 lines (86 loc) · 2.84 KB
/
cx_exe_setup.py
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
import sys
import markdown
from cx_Freeze import setup, Executable
# Dependencies are automatically detected, but it might need fine tuning.
from ui_params import cometrics_version
with open('PRIVACY_POLICY.md', 'r') as f:
text = f.read()
html = markdown.markdown(text)
with open('reference/PRIVACY_POLICY.html', 'w') as f:
f.write(html)
base = None
if sys.platform == "win32":
base = "Win32GUI"
directory_table = [
(
"ProgramMenuFolder",
"TARGETDIR",
".",
),
(
"MyProgramMenu",
"ProgramMenuFolder",
"MYPROG~1|cometrics",
),
]
shortcut_table = [
("DesktopShortcut", # Shortcut
"DesktopFolder", # Directory_
"cometrics", # Name
"TARGETDIR", # Component_
"[TARGETDIR]cometrics.exe",# Target
None, # Arguments
None, # Description
None, # Hotkey
None, # Icon
None, # IconIndex
None, # ShowCmd
'TARGETDIR' # WkDir
)
]
msi_data = {
"Directory": directory_table,
"Shortcut": shortcut_table,
"ProgId": [
("Prog.Id", None, None, "cometrics", "IconId", None),
],
"Icon": [
("IconId", r'images\icon.ico'),
],
}
build_exe_options = dict(
packages=["os", "sys", "tkinter", 'logger_util', 'scipy'],
includes=['pynput', 'pynput.keyboard._win32', 'pynput.mouse._win32', 'logger_util', 'scipy._lib.deprecation'],
excludes=['markdown'],
include_files=['external_bin', 'images', 'reference', 'config.yml', 'LICENSE',
(r'venv\Lib\site-packages\imageio', r'lib\imageio')],
)
bdist_msi_options = {
'add_to_path': False,
'initial_target_dir': r'[ProgramFilesFolder]\%s\%s' % ("cometrics", cometrics_version),
'data': msi_data,
'upgrade_code': '{9DD1C082-2D1D-4AC5-9150-22CA5DF3D780}',
"summary_data": {
"author": "Walker Arce",
"comments": "Copyright (C) 2022",
},
"install_icon": r'images\icon.ico',
}
executable = [Executable("cometrics.py",
targetName="cometrics.exe",
base=base,
icon=r'images\icon.ico',
shortcutName="cometrics",
shortcutDir="MyProgramMenu",
copyright="Copyright (C) 2022 Walker Arce",
),]
setup(name="cometrics",
version=cometrics_version,
author_email="wsarcera@gmail.com",
url="https://github.com/Munroe-Meyer-Institute-VR-Laboratory/cometrics/issues",
author="Walker Arce",
description=f'cometrics v{cometrics_version}',
options={"bdist_msi": bdist_msi_options,
"build_exe": build_exe_options},
executables=executable
)