Skip to content

Comments

Added native Windows ARM64 build and installer to Fladder#747

Draft
talynone wants to merge 4 commits intoDonutWare:developfrom
talynone:WINARM64
Draft

Added native Windows ARM64 build and installer to Fladder#747
talynone wants to merge 4 commits intoDonutWare:developfrom
talynone:WINARM64

Conversation

@talynone
Copy link

@talynone talynone commented Feb 8, 2026

Pull Request Description

Added native Windows ARM64 support to Fladder, including build configuration, CI/CD integration, and installer setup. This enables the application to run natively on Windows ARM64 devices (e.g., Surface Pro X, Windows 11 ARM).

With the rising popularity of Windows ARM64 devices, such as the latest Surface / Snapdragon X laptops, and soon to be released Snapdragon X2 devices and Nvidia N1X SOC users are increasingly expecting native applications.

Currently this is in Draft mode due to several reasons:

Key Changes:

  • Added Windows ARM64 build job to GitHub Actions workflow
  • Created ARM64-specific Inno Setup installer configuration with unique AppId
  • Configured dependency override for media_kit_libs_windows_video to use ARM64-compatible fork
  • Fixed RepeatMode import conflicts in playback models

Issue Being Addressed

Windows ARM64 devices could not run Fladder natively and had to rely on x64 emulation. This PR enables native ARM64 builds for optimal performance on ARM-based Windows devices.

Technical improvements:

  • Native ARM64 execution eliminates emulation overhead
  • Separate AppId ({D573EDD5-117A-47AD-88AC-62C8EBD11DC8}) prevents installation conflicts between x64 and ARM64 versions
  • Both architectures can be installed side-by-side for testing
  • ARM64 installer clearly labeled as "Fladder (ARM64)" in Windows Settings

Automated Test Builds

A build, both in portable and installer versions, are available from the GitHub Actions artifacts here:
https://github.com/talynone/Fladder/actions

Screenshots / Recordings

image

Checklist

  • If a new package was added, did you ensure it works for all supported platforms? Is the package well maintained
    • Updated media_kit_libs_windows_video dependency to use ARM64-compatible fork (talynone/media-kit ref: WINARM64)
  • Check that any changes are related to the issue at hand.
    • All changes support Windows ARM64 native builds
    • Fixed unrelated RepeatMode import ambiguity issues discovered during ARM64 build testing

Files Changed:

  • .github/workflows/build.yml - Added build-windows-arm64 job using windows-11-arm runner
  • windows/windows_setup_arm64.iss - New ARM64 installer configuration with unique AppId
  • pubspec.yaml- Updated media_kit_libs_windows_video dependency override
  • lib/models/playback/direct_playback_model.dart - Fixed RepeatMode error import errors when building locally. Error was: (is imported from both 'package:fladder/jellyfin/jellyfin_open_api.enums.swagger.dart' and 'package:flutter/src/widgets/repeating_animation_builder.dart'. ) by providing JellyFin alias
  • lib/models/playback/transcode_playback_model.dart - Fixed RepeatMode import (see above)

@talynone talynone reopened this Feb 20, 2026
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