Add PyInstaller packaging (--onedir) as alternative to pyw launch
Avoids the cmd.exe flash from double-clicking run_desktop.bat and gives a proper double-click .exe like VersaGUI.exe. Must be deployed locally (%LOCALAPPDATA%) -- Windows silently refuses to load the _internal DLLs when the .exe sits on the Z: network share, no error shown. build_and_deploy.ps1 handles build + local copy in one step.
This commit is contained in:
parent
6227903ebd
commit
50658107d5
4 changed files with 99 additions and 0 deletions
27
AGENTS.md
27
AGENTS.md
|
|
@ -100,6 +100,33 @@ liegt in PATH zuerst eine Hermes-Agent-venv (`...\hermes\hermes-agent\venv\
|
|||
Scripts\pythonw.exe`) ohne pyserial. `pyw`/`py` (Python Launcher) lösen
|
||||
zuverlässig zur echten Python313-Installation auf.
|
||||
|
||||
## Gepackte .exe (PyInstaller) — kein Terminal-Flash, kein Python-Setup nötig
|
||||
|
||||
`build_and_deploy.ps1` baut `desktop_viewer.py` mit PyInstaller
|
||||
(`--windowed --onedir`) und kopiert das Ergebnis lokal nach
|
||||
`%LOCALAPPDATA%\VersaPadViewer\VersaPadViewer.exe`. Desktop-Verknüpfung
|
||||
"VersaPad Viewer (Fenster)" zeigt dorthin.
|
||||
|
||||
**`--onedir`, nicht `--onefile`** — Single-File-PyInstaller-Bundles lösen
|
||||
öfter AV-Fehlalarme aus (sehen strukturell wie ein Packer aus); `--onedir`
|
||||
(Ordner mit `.exe` + `_internal`) ist unauffälliger. Trotzdem unsigniert,
|
||||
also grundsätzlich nie über Smart App Control/AV in Stein gemeißelt sicher.
|
||||
|
||||
**Kritischer Stolperstein:** Die gebaute `.exe` läuft NICHT vom Netzlaufwerk
|
||||
aus (`Z:\Git\...`, SMB-Share auf cj-ki) — Windows blockiert das Nachladen
|
||||
der `_internal`-DLLs von einem Netzwerkpfad, der Prozess startet dann
|
||||
einfach nie, ganz ohne Fehlermeldung/Crash-Log/AV-Benachrichtigung (sah
|
||||
zuerst wie ein AV-Block aus, war aber keiner — sauber verifiziert indem
|
||||
dieselbe `.exe` 1:1 lokal kopiert sofort lief). Bauen darf auf Z: passieren,
|
||||
das fertige Bundle muss vor dem Start nach C: kopiert werden — genau das
|
||||
macht `build_and_deploy.ps1`.
|
||||
|
||||
Bei erneutem Bauen: `.\build_and_deploy.ps1` in PowerShell ausführen
|
||||
(lokal, nicht über die sandboxed Bash-Tool-Umgebung — die hat eine eigene
|
||||
Dateisystem-Sicht, die nicht zuverlässig mit dem echten Windows-Dateisystem
|
||||
übereinstimmt; Kopieroperationen für Dinge, die der User/andere Prozesse
|
||||
sehen sollen, gehören in PowerShell, nicht in Bash).
|
||||
|
||||
## Dateien/Pfade (hardcoded, hal9001-spezifisch)
|
||||
|
||||
- Einzel-JSONs (Read-only-Modus): `~\OneDrive\Desktop\versapad_config{1,2,3}.json`
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue