summaryrefslogtreecommitdiff
path: root/backend/pyinstaller.spec
diff options
context:
space:
mode:
authorK900 <me@0upti.me>2023-11-14 00:40:37 +0300
committerGitHub <noreply@github.com>2023-11-13 23:40:37 +0200
commit5a633fdd8284dd1a2b6f3c95806f033ef4a4becf (patch)
treeb89f3660d3b8918484e6bc153003a84b95207045 /backend/pyinstaller.spec
parent8ce4a7679e9f0abb67e85822fefe08237ec9d82e (diff)
downloaddecky-loader-5a633fdd8284dd1a2b6f3c95806f033ef4a4becf.tar.gz
decky-loader-5a633fdd8284dd1a2b6f3c95806f033ef4a4becf.zip
* fix: get rid of title view jank on latest beta * Count the number of installs for each plugin (#557) * Bump aiohttp from 3.8.4 to 3.8.5 in /backend (#558) * fix: include Decky version in request for index.js This avoids the If-Modified-Since logic in aiohttp and ensures Steam doesn't cache old JS, even if the timestamps are normalized. * fix: clean up shellcheck warnings in act runner script * fix: gitignore settings/ * fix: ensure state directories exist when running without the installer * feat: determine root directory correctly when running from in-tree * fix: fix typo in CI script * refactor: build a proper Python package with poetry * refactor: move decky_plugin under the poetry structure There's no need to special case it anymore, just treat it like any other Python module. * sandboxed_plugin: better fix, attempt 2 --------- Co-authored-by: AAGaming <aagaming@riseup.net> Co-authored-by: Party Wumpus <48649272+PartyWumpus@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Diffstat (limited to 'backend/pyinstaller.spec')
-rw-r--r--backend/pyinstaller.spec30
1 files changed, 30 insertions, 0 deletions
diff --git a/backend/pyinstaller.spec b/backend/pyinstaller.spec
new file mode 100644
index 00000000..67bdc26e
--- /dev/null
+++ b/backend/pyinstaller.spec
@@ -0,0 +1,30 @@
+import os
+from PyInstaller.building.build_main import Analysis
+from PyInstaller.building.api import EXE, PYZ
+from PyInstaller.utils.hooks import copy_metadata
+
+a = Analysis(
+ ['main.py'],
+ datas=[
+ ('locales', 'locales'),
+ ('static', 'static'),
+ ] + copy_metadata('decky_loader'),
+ hiddenimports=['logging.handlers', 'sqlite3', 'decky_plugin'],
+)
+pyz = PYZ(a.pure, a.zipped_data)
+
+noconsole = bool(os.getenv('DECKY_NOCONSOLE'))
+name = "PluginLoader"
+if noconsole:
+ name += "_noconsole"
+
+exe = EXE(
+ pyz,
+ a.scripts,
+ a.binaries,
+ a.zipfiles,
+ a.datas,
+ name=name,
+ upx=True,
+ console=not noconsole,
+)