016a8fc6b6
fyne.io/systray requires .ico content on Windows, and LoadImage cannot read PNG-in-ICO. The embedded icons are PNG, so SetIcon always failed and no tray icon ever appeared. pngToIco decodes the PNG and re-encodes classic BMP (XOR + AND mask) entries at 16/32/48px — the format LoadImage has always supported. Verified: the 'unable to set icon' error is gone and the tray process stays up. feat(installer): wizard page, Start Menu icons, silent install params - Wizard page asks for the SSO Manager URL + join key, with an 'Open SSO install-agent page' button (ShellExec); values feed agent.yml - /SERVER_URL /JOIN_KEY /AUTH_TOKEN /PUBLIC_KEY and /B64_CONFIG (base64 of a full agent.yml, decoded by an inline B64Decode) drive the same result in /SILENT mode, so the SSO's Install Agent modal can emit one Windows command - [Icons]: Theta Agent Tray / Open Agent Config / Uninstall in Start Menu - WireGuard client launches its UI at the end of the MSI; taskkill after the msiexec step closes it (the tunnel is agent-managed) - tray starts right after install (not just at next logon) - Inno 7 fixes: controls parent to Page.Surface, SaveStringsToUTF8FileWithoutBOM Adds pngToIco structure tests (valid ICO dir + 32bpp DIBs) and a platform passthrough test for toWindowsIcon. Rebuilds all tracked dist binaries + the setup.exe.