Skip to content

[windows-11-arm] Pre-install msys2 #14087

Closed

Description

@jeremyd2019

Type of issue

  • Error when running a workflow.
  • Request for additional tools or software for an existing image.
  • Request for a new image, Linux or Windows.
  • Other

Describe the issue
MSYS2 is not installed in C:\msys64 as it is on other Windows images

To Reproduce
try using msys2/setup-msys2 action with release: false option.

Expected behavior
C:\msys64 exists and contains MSYS2

Additional context
I thought about using msys2/setup-msys2 with release: true and location: C:\, but the action checks for and errors out in that configuration because
'location' cannot be 'C:' because that contains the built-in MSYS2 installation in GitHub Actions environments. See option 'release', in order to use that installation: https://github.com/msys2/setup-msys2#release

Activity

  1. Kichura commented on Apr 18, 2025

    @Kichura

    MSYS2 currently does not exist as an native ARM64 program and cannot be deployed to this image unfortunately.

  2. jeremyd2019 commented on Apr 18, 2025

    @jeremyd2019
    Author

    It runs fine under emulation. And based on some of these other issues asking for native ARM64 variants of things instead of the x86_64 versions (like actions/partner-runner-images#85), it's apparently not an issue to install x86_64 things.

  3. jeremyd2019 commented on Apr 19, 2025

    @jeremyd2019
    Author

    Actually, there is some bug going on with the Qt installer (msys2/msys2-installer#96), but the sfx is probably what you'd want to use anyway (it's what I've used on self-hosted Windows-on-arm64 runners as long as I've had to provide them for msys2 due to GitHub lacking them).

  4. changed the title [-][windows-11-arm] Install msys2[/-] [+][windows-11-arm] Pre-install msys2[/+] on Apr 22, 2025
  5. jeremyd2019 commented on Apr 24, 2025

    @jeremyd2019
    Author

    I think the better strategy would be to install only native binaries in base image and if anything is not available at the time it can be installed by the user as x86, but with explicit decision to do so as it carry some implications.

    There are cases where x86_64 tools are currently necessary to build aarch64 binaries, particularly MSYS2. MSYS2 is a Cygwin fork specifically for providing UNIX tools necessary to build native win32 (mingw-w64) binaries of open-source packages that are frequently UNIX-first. The toolchain support is not there to even start to port Cygwin to native aarch64 (it relies on GNU-specific things that are not in LLVM or MSVC), but it's still a useful tool to then get a large number of native aarch64 open-source libraries and tools. https://packages.msys2.org/packages/?repo=clangarm64

  6. robtaylor commented on Jun 19, 2025

    @robtaylor

    I can confirm that both mingw-w64 x86_64 and aarch64 MSYS2 work well on windows-arm.
    The msys2 installer is indeed not native arm, but will install an aarch64 system, which has a pretty well populated package set (https://packages.msys2.org/packages/?repo=clangarm64)
    ISTR that it took a bit of fiddling - Had to use the latest installer build self extracting archive (.sfx.exe)

  7. Alovchin91 commented on Aug 2, 2025

    @Alovchin91

    Bump. MSYS2 is a no-brainer. It's the basis of Git for Windows. Not sure why it's even being debated.

  8. jeremyd2019 commented on Aug 30, 2025

    @jeremyd2019
    Author

    The msys2 qt-based installer now has an arm64 binary. It's the same contents as the x86_64 one, but with an arm64 installer due to a bug that the x86_64 one was not working right on arm64 windows. For unattended install like setting up a runner, it'd still be better to use the sfx.

  9. Artoria2e5 commented on Nov 22, 2025

    @Artoria2e5

    MSYS2 now exists as a native thing on ARM, with its own ARM-based installer and an ARM-based prefix. Not providing MSYS2 makes windows-11-arm too different from GitHub's windows runners.

  10. lazka commented on Jun 4, 2026

    @lazka

    Only the installer is ARM not the content, see above. Either way, x86 emulation works fine.

  11. kmilos commented on Sep 4, 2026

    @kmilos

    Doesn't seem to be in the 20260830 image yet, although the commit is in that tag?

    Runner Image
      Image: windows-11-arm64
      Version: 20260830.155.1
      Included Software: https://github.com/actions/runner-images/blob/win11-arm64/20260830.155/images/windows/Windows11-Arm64-Readme.md
      Image Release: https://github.com/actions/runner-images/releases/tag/win11-arm64%2F20260830.155
    

    snip

    Run msys2/setup-msys2@v2
      with:
        msystem: CLANGARM64
        release: false
        pacboy: cc:p cmake:p meson:p ninja:p pkgconf:p
        path-type: minimal
        update: false
        platform-check-severity: fatal
        cache: true
    Error: MSYS2 installation not found at C:\msys64, cannot continue.
    
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions