- macOS: .pkg installer replaces the DMG; Linux: .AppImage replaces the ZIP - winmain runs velopack.App() first (proper hook handling) and checks for updates in the background; downloads are applied on next launch - release.py uploads the vpk update feed (releases.<channel>.json, nupkgs) so GiteaSource finds updates on the latest release - guibuild.py bootstraps a .NET runtime into build/dotnet when the runner host lacks one