Skip to content

Windows on ARM support#8542

Open
atavism wants to merge 3 commits intomainfrom
atavism/windows-arm
Open

Windows on ARM support#8542
atavism wants to merge 3 commits intomainfrom
atavism/windows-arm

Conversation

@atavism
Copy link
Contributor

@atavism atavism commented Mar 18, 2026

Copilot AI review requested due to automatic review settings March 18, 2026 21:37
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds Windows on ARM64 support to the Windows installer/build pipeline by producing ARM64-specific service/Wintun artifacts and updating the Inno Setup installer to run on ARM64 and register the correct service binary.

Changes:

  • Allow the installer to run on ARM64 and choose an ARM64 service executable when present.
  • Extend the Makefile to build/copy lanternsvc.exe for both amd64 and arm64 into the Windows release layout.
  • Download/package Wintun DLLs for both amd64 and arm64.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.

File Description
windows/packaging/exe/inno_setup.iss Enables ARM64 installs and dynamically selects the service binary path (ARM64 vs amd64).
Makefile Builds and stages ARM64 Windows service + Wintun alongside existing amd64 artifacts for packaging.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

You can also share your feedback on Copilot code review. Take the survey.

Comment on lines +321 to +324
function ServiceExecutablePath(Param: String): String;
var
Arm64ServicePath: String;
begin
Comment on lines +68 to +72
WINDOWS_SERVICE_BUILD_AMD64 := $(BIN_DIR)/windows-amd64/$(WINDOWS_SERVICE_NAME)
WINDOWS_SERVICE_BUILD_ARM64 := $(BIN_DIR)/windows-arm64/$(WINDOWS_SERVICE_NAME)
WINDOWS_SERVICE_BUILD := $(WINDOWS_SERVICE_BUILD_AMD64)
WINDOWS_SERVICE_BUILD_ARM64_RELEASE = $(WINDOWS_RELEASE_DIR)/arm64/$(WINDOWS_SERVICE_NAME)
WINDOWS_SERVICE_CGO_ENABLED ?= 0
Comment on lines +419 to +424
curl -fsSL -o "$$zip" "$$url"; \
mkdir -p '$(WINTUN_OUT_DIR_AMD64)/_unz'; \
tar -xf "$$zip" -C "$(WINTUN_OUT_DIR_AMD64)/_unz" "wintun/bin/amd64/wintun.dll" \
|| powershell -NoProfile -Command "Expand-Archive -Force -LiteralPath '$$zip' -DestinationPath '$(WINTUN_OUT_DIR_AMD64)/_unz'"; \
cp -f "$(WINTUN_OUT_DIR_AMD64)/_unz/wintun/bin/amd64/wintun.dll" "$(WINTUN_DLL_AMD64)"; \
rm -rf "$(WINTUN_OUT_DIR_AMD64)/_unz"; \
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants