# Windows continuous release (GitHub Actions as private builder) Native InfiniPaint Windows builds need **MSVC** (see `docs/BUILDING.md` + `windowsinstall/`). There is no Linux cross-build path. Policy: **Forgejo is the public fork**; GitHub is only a **private** mirror used to run `windows-latest` CI. Friends download the zip from Forgejo — not GitHub. ## Public download (friends) https://forgejo.fsociety00.cc/copilot/infinipaint/releases/tag/windows-continuous Portable zip → extract → run `infinipaint.exe`. ## Workflow File: `.github/workflows/windows_release.yml` | | | |---|---| | Trigger | every push to `main` on the private GitHub mirror, plus `workflow_dispatch` | | Runner | `windows-latest` (GitHub-hosted, MSVC ~195 / VS 18) | | Build | Conan profile `win-ci` + **Ninja** (avoids CMake<4 vs `Visual Studio 18 2026`) | | Output | public Forgejo prerelease **`windows-continuous`** (+ private GitHub copy) | Required GitHub Actions secret: `FORGEJO_TOKEN` (Forgejo PAT with release write on `copilot/infinipaint`). Local Tower Windows can keep using `windowsinstall/conan_init_x86_64.bat` (`conan/profiles/win-x86_64`, MSVC 194). CI generates a `win-ci` profile for whatever MSVC `windows-latest` ships. ## GitHub remote (private builder) ```bash git remote add github https://github.com/littlecodedragon/infinipaint.git git push -u github main ``` Keep the repo **private** (Settings → Change visibility, or `gh repo edit littlecodedragon/infinipaint --visibility private`). ## Forgejo note `.forgejo/workflows/windows_release.yml` still targets a self-hosted `windows-release` runner (optional). Primary public zips come from the GitHub builder → Forgejo release upload above.