From 5cd8c68589140eddca36b224ae82f110cb97a97f Mon Sep 17 00:00:00 2001 From: DYefremov Date: Sun, 15 Feb 2026 22:37:16 +0300 Subject: [PATCH] add splash screen to win build --- build/win/DemonEditor.spec | 18 +++++++++++++++--- build/win/logo.png | Bin 0 -> 3529 bytes build/win/start.py | 22 ++++++++++++++-------- 3 files changed, 29 insertions(+), 11 deletions(-) create mode 100644 build/win/logo.png diff --git a/build/win/DemonEditor.spec b/build/win/DemonEditor.spec index f6ca6fe6..74535f20 100644 --- a/build/win/DemonEditor.spec +++ b/build/win/DemonEditor.spec @@ -7,8 +7,7 @@ PATH_EXE = [os.path.join(DIR_PATH, EXE_NAME)] block_cipher = None -excludes = ['app.tools.mpv', - 'gi.repository.Gst', +excludes = ['gi.repository.Gst', 'gi.repository.GstBase', 'gi.repository.GstVideo', 'youtube_dl', @@ -48,9 +47,19 @@ a = Analysis([EXE_NAME], win_private_assemblies=False, cipher=block_cipher, noarchive=False) + + pyz = PYZ(a.pure, a.zipped_data, cipher=block_cipher) + + +splash = Splash('logo.png', + binaries=a.binaries, + datas=a.datas) + + exe = EXE(pyz, + splash, a.scripts, [], exclude_binaries=True, @@ -59,13 +68,16 @@ exe = EXE(pyz, bootloader_ignore_signals=False, contents_directory='.', strip=False, - upx=True, + upx=False, console=False, icon='icon.ico') + + coll = COLLECT(exe, a.binaries, a.zipfiles, a.datas, + splash.binaries, strip=False, upx=True, upx_exclude=[], diff --git a/build/win/logo.png b/build/win/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..6c858b43453c683f8f6b03f02f8a95ed28cefa2e GIT binary patch literal 3529 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 literal 0 HcmV?d00001 diff --git a/build/win/start.py b/build/win/start.py index 6fd78698..94ae8b6a 100644 --- a/build/win/start.py +++ b/build/win/start.py @@ -1,14 +1,20 @@ #!/usr/bin/env python3 -import os -import ssl +import sys if __name__ == "__main__": - from multiprocessing import freeze_support + if hasattr(sys, "_MEIPASS"): + import os + import pyi_splash + import ssl + from multiprocessing import freeze_support + + os.environ["PYTHONUTF8"] = "1" + # TODO There needs to be a more "correct" way. + ssl._create_default_https_context = ssl._create_unverified_context + + freeze_support() + pyi_splash.close() + from app.ui.main import start_app - os.environ["PYTHONUTF8"] = "1" - # TODO There needs to be a more "correct" way. - ssl._create_default_https_context = ssl._create_unverified_context - - freeze_support() start_app()