feat(ci): cross-compile lets-chat-desktop for Windows x86_64 #102
Loading…
Reference in a new issue
No description provided.
Delete branch "feat/desktop-windows-build"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Adds a Windows x86_64 build for
lets-chat-desktopparallel to the existing Linux build:ci-build/Dockerfile.desktop-windowssits on top of the existingrust-builder-glibc-windowsbase image, which already ships the mingw-w64 toolchain (gcc-mingw-w64-x86-64) and thex86_64-pc-windows-gnuRust target, so no extra apt or rustup steps are needed. The Dockerfile only setsCARGO_TARGET_X86_64_PC_WINDOWS_GNU_LINKER=x86_64-w64-mingw32-gccto point rustc at the mingw cross-linker, then runscargo build --release -p lets-chat-desktop --target x86_64-pc-windows-gnu..forgejo/workflows/build-desktop-windows.ymlmirrorsbuild-desktop-linux.yml: same paths-trigger set, sameCARGO_BUILD_JOBS=nproc/2cap, and an extract step that pulls the.exeout of the builder container viadocker create+docker cpand uploads it as thelets-chat-desktop-windows-x86_64artifact.Wry uses WebView2 on Windows, which is accessed via Windows-RT bindings (the
webview2-comcrate), so no build-time GTK / WebKit / Soup libraries are required.Test plan
docker buildx build --tag lets-chat-desktop-windows:smoke --load -f ci-build/Dockerfile.desktop-windows .succeeds end-to-end.target/x86_64-pc-windows-gnu/release/lets-chat-desktop.exeexists (3.4 MB PE32+ executable).lets-chat-desktop-<version>-windows-x86_64.exeas an artifact..exeopens a WebView2 window againstLETS_CHAT_SERVER_URLon a Windows host (requires manual verification by a Windows user).