3 Commits
Author SHA1 Message Date
Aeth3randClaude Opus 5.5 f16a67e042 Add Linux and Windows installers
- install.sh: checks Python 3.12+, installs the app into its own
  environment, checks Qt's system libraries, installs icons and a
  --background .desktop launcher, offers start at login; --uninstall.
- install.bat / install_windows.ps1: checks Python (offering winget),
  builds with PyInstaller, installs to LOCALAPPDATA with Start Menu and
  Desktop shortcuts, offers start at login; -Uninstall.
- .gitattributes keeps .bat/.ps1 as CRLF and .sh as LF.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 09:54:08 -04:00
Aeth3randClaude Opus 5.5 fb6220155c Use the new app icon
The icon now comes from images/mtga-assistant-icon.png: make_icon.py
copies it into the package (window, taskbar and tray icon) and builds
the Windows .ico used for the .exe. The old generated SVG icon is gone.
The PyInstaller spec also keeps QtNetwork, needed for single-instance.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 09:54:08 -04:00
Aeth3randClaude Opus 5.5 e82f8d1858 Make the app cross-platform and add a Windows build
- paths: per-platform detection behind an injectable Env. Windows finds
  Player.log in the user profile and the install via Steam (registry),
  the standalone installer, Epic, or the uninstall registry. App dirs
  come from platformdirs (unchanged XDG locations on Linux).
- logtail: open Player.log only while reading, so Windows can still
  rotate it when MTGA restarts.
- carddb: on Windows read a private copy of the card database so MTGA's
  updater can replace the original.
- App icon (SVG source + generated ICO/PNG), Windows taskbar identity,
  and a Windows-safe timer glyph.
- PyInstaller spec, launcher and PowerShell build script producing a
  one-folder windowed build and zip.
- Tests for path detection, the log follower and the card-DB copy;
  README covers Windows usage, building and per-OS locations.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 13:06:19 -04:00