Files
LinedanceAfspiller/linedance-app/build_windows.spec
2026-04-12 16:20:02 +02:00

135 lines
3.5 KiB
Python

# -*- mode: python ; coding: utf-8 -*-
from PyInstaller.utils.hooks import collect_data_files, collect_dynamic_libs
block_cipher = None
a = Analysis(
['main.py'],
pathex=['.'],
binaries=[],
datas=[
('translations', 'translations'),
('ui', 'ui'),
('local', 'local'),
('player', 'player'),
],
hiddenimports=[
'PyQt6.sip',
'PyQt6.QtCore',
'PyQt6.QtGui',
'PyQt6.QtWidgets',
'PyQt6.QtNetwork',
'ui.main_window',
'ui.playlist_panel',
'ui.library_panel',
'ui.library_manager',
'ui.themes',
'ui.vu_meter',
'ui.scan_worker',
'ui.bpm_worker',
'ui.tag_editor',
'ui.login_dialog',
'ui.settings_dialog',
'ui.register_dialog',
'ui.playlist_browser',
'ui.playlist_info_dialog',
'ui.dance_info_dialog',
'ui.dance_picker_dialog',
'ui.next_up_bar',
'player.player',
'local.local_db',
'local.tag_reader',
'local.file_watcher',
'local.scanner',
'translations',
'translations.da',
'translations.en',
'mutagen',
'mutagen.mp3', 'mutagen.id3', 'mutagen.flac',
'mutagen.mp4', 'mutagen.oggvorbis', 'mutagen.ogg',
'mutagen.wave', 'mutagen.aiff', 'mutagen.asf',
'watchdog',
'watchdog.observers',
'watchdog.observers.polling',
'watchdog.events',
'vlc',
'sqlite3',
],
hookspath=[],
runtime_hooks=[],
excludes=[
# Ubrugte store pakker
'tkinter', 'tk', 'tcl',
'matplotlib', 'pandas', 'scipy', 'numpy',
'IPython', 'jupyter', 'notebook',
'PIL', 'Pillow',
'cv2', 'sklearn',
'PyQt6.QtWebEngineWidgets',
'PyQt6.QtWebEngineCore',
'PyQt6.QtWebEngine',
'PyQt6.QtMultimedia',
'PyQt6.QtMultimediaWidgets',
'PyQt6.QtBluetooth',
'PyQt6.QtNfc',
'PyQt6.QtPositioning',
'PyQt6.QtLocation',
'PyQt6.QtSensors',
'PyQt6.QtSerialPort',
'PyQt6.QtSql',
'PyQt6.QtTest',
'PyQt6.QtXml',
'PyQt6.QtOpenGL',
'PyQt6.QtOpenGLWidgets',
'PyQt6.Qt3DCore',
'PyQt6.Qt3DRender',
'PyQt6.Qt3DInput',
'PyQt6.Qt3DLogic',
'PyQt6.Qt3DAnimation',
'PyQt6.Qt3DExtras',
'PyQt6.QtCharts',
'PyQt6.QtDataVisualization',
'PyQt6.QtQuick',
'PyQt6.QtQuickWidgets',
'PyQt6.QtQml',
'PyQt6.QtRemoteObjects',
'PyQt6.QtScxml',
'PyQt6.QtStateMachine',
'email', 'html', 'http', 'urllib',
'xml', 'xmlrpc',
'unittest', 'doctest', 'pdb',
'difflib', 'inspect',
'pydoc', 'py_compile', 'compileall',
'distutils', 'setuptools', 'pkg_resources',
],
cipher=block_cipher,
noarchive=False,
)
pyz = PYZ(a.pure, a.zipped_data, cipher=block_cipher)
exe = EXE(
pyz,
a.scripts,
a.binaries,
a.zipfiles,
a.datas,
[],
name='LineDancePlayer',
debug=False,
bootloader_ignore_signals=False,
strip=False,
upx=True, # UPX komprimering — reducer størrelse ~30%
upx_exclude=[
'vcruntime140.dll',
'msvcp140.dll',
'python3*.dll',
'Qt6*.dll',
],
console=False,
disable_windowed_traceback=False,
target_arch=None,
codesign_identity=None,
entitlements_file=None,
icon=None,
onefile=True,
)