Initial SyncGames tree: agent, Android, deploy, docs.

Session-gated MinIO save sync with AppImage GUI, CLI edit/session flow, and Gitea release helper.

Co-authored-by: Cursor <[email protected]>
This commit is contained in:
2026-07-14 22:06:36 -05:00
co-authored by Cursor
commit 0d6b0b2f80
76 changed files with 5697 additions and 0 deletions
+68
View File
@@ -0,0 +1,68 @@
# -*- mode: python ; coding: utf-8 -*-
# From SyncGames/agent: pyinstaller packaging/pyinstaller.spec
import os
from pathlib import Path
from PyInstaller.utils.hooks import collect_submodules
project_root = Path(os.path.dirname(os.path.abspath(SPEC))).parent
repo_root = project_root.parent
block_cipher = None
hidden = collect_submodules("syncgames") + ["boto3", "botocore", "psutil"]
datas = []
games_src = repo_root / "config" / "games"
if games_src.is_dir():
for toml in sorted(games_src.glob("*.toml")):
datas.append((str(toml), "bundled_config/games"))
systemd_src = repo_root / "systemd"
if systemd_src.is_dir():
for unit in ("syncgames-agent.service", "syncgames-watch@.service", "install-user-units.sh"):
p = systemd_src / unit
if p.exists():
datas.append((str(p), "bundled_systemd"))
a = Analysis(
[str(project_root / "packaging" / "entrypoint.py")],
pathex=[str(project_root)],
binaries=[],
datas=datas,
hiddenimports=hidden,
hookspath=[],
hooksconfig={},
runtime_hooks=[],
excludes=[],
win_no_prefer_redirects=False,
win_private_assemblies=False,
cipher=block_cipher,
noarchive=False,
)
pyz = PYZ(a.pure, a.zipped_data, cipher=block_cipher)
exe = EXE(
pyz,
a.scripts,
[],
exclude_binaries=True,
name="SyncGames",
debug=False,
bootloader_ignore_signals=False,
strip=False,
upx=True,
console=False,
disable_windowed_traceback=False,
argv_emulation=False,
target_arch=None,
codesign_identity=None,
entitlements_file=None,
)
coll = COLLECT(
exe,
a.binaries,
a.zipfiles,
a.datas,
strip=False,
upx=True,
upx_exclude=[],
name="SyncGames",
)