-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsetup_py2app.py
More file actions
38 lines (34 loc) · 1.13 KB
/
setup_py2app.py
File metadata and controls
38 lines (34 loc) · 1.13 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
"""
py2app setup script for Qrly
"""
from setuptools import setup
import os
# Check if icon exists, use it if available
icon_file = 'assets/icons/app_icon.icns' if os.path.exists('assets/icons/app_icon.icns') else None
APP = ['src/qrly/app.py']
DATA_FILES = []
OPTIONS = {
'argv_emulation': False,
'semi_standalone': False, # Fully standalone mode to avoid Python path issues
'plist': {
'CFBundleName': 'Qrly',
'CFBundleDisplayName': 'Qrly - QR Code 3D Generator',
'CFBundleIdentifier': 'com.qrly.app',
'CFBundleVersion': '0.3.2',
'CFBundleShortVersionString': '0.3.2',
'NSHighResolutionCapable': True,
'LSMinimumSystemVersion': '10.13.0',
},
'packages': ['PyQt6', 'PIL', 'qrcode', 'qrly'],
'includes': ['PyQt6.QtCore', 'PyQt6.QtWidgets', 'PyQt6.QtGui'],
'excludes': ['matplotlib', 'numpy', 'pandas', 'scipy', 'pyvista', 'pyvistaqt', 'vtk', 'vtkmodules', 'test', 'tkinter', 'Tkinter'],
}
if icon_file:
OPTIONS['iconfile'] = icon_file
setup(
app=APP,
name='Qrly',
data_files=DATA_FILES,
options={'py2app': OPTIONS},
setup_requires=['py2app'],
)