macOS 15 arm64 GitHub Actions Runner 镜像软件清单全解析:版本明细、工具链构成与镜像构建原理
2026/9/15 11:59:15 网站建设 项目流程

macOS 15 arm64 GitHub Actions Runner 镜像软件清单全解析:版本明细、工具链构成与镜像构建原理

【免费下载链接】runner-imagesGitHub Actions runner images项目地址: https://gitcode.com/GitHub_Trending/ru/runner-images

macOS 15(Sequoia)arm64 是 GitHub Actions 面向 Apple Silicon 架构的托管运行器镜像,本文基于仓库中的 macos-15-arm64-Readme.md 完整梳理该镜像的软件构成,并结合 macOS-15.arm64.anka.pkr.hcl、toolset-15.json 与报告生成脚本,说明这份清单从"构建配置"到"自动盘点"的全过程。读完本文,你将能准确判断该镜像包含哪些语言运行时、缓存工具、Xcode/SDK 与 Android 组件,理解各版本号从何处而来,以及如何在自己的工作流中依赖这些预装环境。

镜像版本概览

macOS 15 arm64 镜像的核心信息如下(对应 macos-15-arm64-Readme.md 首部):

项目
OS 版本macOS 15.7.9 (24G830)
内核版本Darwin 24.6.0
镜像版本20260907.0337.1

其中"Image Version"由镜像构建的 build_id 派生而来:在报告生成逻辑Build-OSInfoSection中,通过$ImageName.Split('_')[1]截取镜像名中的版本号,因此它精确对应某次镜像发布(参见 SoftwareReport.Common.psm1)。也就是说,这份 Readme 并非手工维护,而是构建完成后自动生成的"实测快照"。

当前仓库公告区还披露了与 macOS 镜像相关的演进信息:Xcode 27 已作为公开预览提供;macOS 26 Tahoe 镜像的默认 Xcode 将于 2026.07.21 调整为 Xcode 26.6;macOS 14 Sonoma 镜像自 7 月 6 日起进入弃用流程,至 11 月 2 日将完全停止支持。在规划工作流时,应关注这些版本过渡节点,提前迁移到仍受支持的镜像。

镜像如何构建:Packer 模板、工具集与自动化报告

这份 Readme 是镜像构建流水线的产物,其上游链路由三部分构成。

Packer 构建模板macOS-15.arm64.anka.pkr.hcl 基于veertu-anka-vm-clone构建器(依赖 veertu-anka 插件>= v3.2.0),从源 VM 克隆出以build_id命名的构建 VM,默认分配 6 个 vCPU、8G 内存,并以macos15作为image_os标识。构建过程大致经历以下阶段:

  1. 上传测试脚本、文档生成脚本、toolset-15.json与 bootstrap 资源到镜像内;
  2. 执行 Xcode 命令行工具、Homebrew、Rosetta 等基础组件安装;
  3. 配置 TCC 数据库、自动登录、自动更新、NTP 与 shell;
  4. 安装 PowerShell、.NET、Python、Ruby、Git、Node 等基础工具链;
  5. 通过 Install-Xcode.ps1 安装多版本 Xcode;
  6. 安装 Actions 缓存、LLVM、OpenJDK、AWS 工具、Rust、GCC、CocoaPods、Android SDK 等;
  7. 执行Install-Toolset.ps1/Configure-Toolset.ps1/Configure-Xcode-Simulators.ps1落地工具集;
  8. 调用Generate-SoftwareReport.ps1生成软件报告,运行RunAll-Tests.ps1全量测试;
  9. 将生成的software-report.mdsoftware-report.json下载回仓库,成为当前这份 Readme 与配套 JSON。

工具集声明文件toolset-15.json 是镜像内容的事实来源(source of truth),集中声明了 Xcode 版本及校验和、Java 版本、Android 组件版本、PowerShell 模块、Homebrew 包、GCC 版本、.NET SDK 版本、toolcache 工具版本等。报告脚本大量通过Get-ToolsetContent读取该文件来决定"要展示什么、展示到哪个粒度",例如 GCC/Fortran 版本列表直接来自toolset.gcc.versions

报告生成入口Generate-SoftwareReport.ps1 以SoftwareReport对象模型组织文档结构,按"Installed Software → 各分类"的层级添加节点,最终同时输出 Markdown 与 JSON 两份产物。镜像内构建完成后,该脚本的执行命令为:

pwsh -File "${image_folder}/software-report/Generate-SoftwareReport.ps1" -OutputDirectory "${image_folder}/output" -ImageName ${build_id}

语言与运行时(Language and Runtime)

该分类覆盖镜像预装的主要语言运行时,原文档完整清单如下:

  • .NET Core SDK:8.0.101、8.0.204、8.0.303、8.0.424、9.0.102、9.0.203、9.0.317、10.0.103、10.0.203、10.0.302、10.0.400 —— 由Get-DotnetVersionList执行dotnet --list-sdks并提取各 SDK 版本号获得(SoftwareReport.Common.psm1),与 toolset 中dotnet.arch.arm64.versions声明的 8.0 / 9.0 / 10.0 三个大版本线对应;
  • Bash3.2.57(1)-release;
  • Clang/LLVM17.0.0(系统默认);Clang/LLVM (Homebrew)18.1.8,位于$(brew --prefix llvm@18)/bin/clang—— Homebrew 版本号来自 toolset 中llvm.version = 18
  • GCC:13.4.0(gcc-13别名)、14.4.0(gcc-14)、15.3.0(gcc-15),三者均由 toolset 的gcc.versions: ["13","14","15"]驱动,报告脚本逐版本执行gcc-${_} --version解析;
  • GNU Fortran:13.4.0(gfortran-13)、14.4.0(gfortran-14)、15.3.0(gfortran-15);
  • Kotlin2.4.10-release-377;
  • Node.js22.23.2(toolset 中node.default = 22,报告通过node --version实测);
  • Perl5.44.0;
  • Python33.14.7;
  • Ruby3.3.12(toolset 中ruby.default = 3.3)。

值得注意的架构差异:arm64 镜像不包含 PHP(SoftwareReport.Common.psm1if (-not $os.IsArm64)条件跳过 PHP),也不包含 x64 镜像才有的 Mono、Composer、NuGet、SwiftLint 等条目;这是报告脚本按Get-OSVersion探测到的架构分支自动取舍的结果,说明 arm64 与 x64 镜像的软件集并不完全对称。

包管理(Package Management)

该分类包含镜像预装的包管理器与包管理生态工具:

  • Bundler4.0.20
  • Carthage0.40.0
  • CocoaPods1.17.0
  • Homebrew6.0.22
  • NPM10.9.8
  • Pip326.2.1 (python 3.14)
  • Pipx1.17.2
  • RubyGems4.0.20
  • Vcpkg2026(build from commit 04a9d8e521)——Get-VcpkgVersion同时执行vcpkg versiongit -C /usr/local/share/vcpkg rev-parse --short HEAD,因此版本号附带了具体源码 commit;
  • Yarn1.22.22

其中 CocoaPods 与 Bundler 的安装由 toolset 中ruby.rubygems: ["multi_json","cocoapods","bundler","fastlane"]声明,Homebrew 则是镜像构建的基石——构建流程第一步就是执行 install-homebrew.sh。

项目管理(Project Management)

  • Apache Ant1.10.18
  • Apache Maven3.9.16
  • Gradle9.7.1

工具(Utilities)

镜像预装的通用命令行工具,多数为 CI 场景高频依赖:

  • 7-Zip17.05(7z i探测)
  • aria21.37.0
  • azcopy10.32.7
  • bazel9.2.0
  • bazelisk1.29.0
  • bsdtar3.5.3(tar别名)
  • Curl8.7.1
  • Git2.55.0
  • Git LFS3.8.0
  • GitHub CLI2.100.0
  • GNU Tar1.35(gtar别名)
  • GNU Wget1.25.0
  • gpg (GnuPG)2.5.22
  • jq1.8.2
  • OpenSSL1.1.1w(2023-09-11)
  • Packer1.16.0
  • pkgconf3.0.7
  • Unxip3.3
  • yq4.53.6
  • zstd1.5.7
  • Ninja1.13.2

注意 bsdtar 与 GNU Tar 同时存在但以不同别名暴露:默认tar指向 bsdtar,gtar指向 GNU Tar,这在处理不同压缩包格式时很有用。pkgconfzstdyqunxipninja等包来自 toolset 中brew.common_packages列表。

开发工具(Tools)

面向云与移动开发的高级工具集:

  • AWS CLI2.36.40
  • AWS SAM CLI1.166.1
  • AWS Session Manager CLI1.2.835.0
  • Azure CLI2.90.0
  • Azure CLI (azure-devops)1.0.8(az version扩展版本)
  • Bicep CLI0.46.1
  • Cmake4.4.3
  • CodeQL Action Bundle2.26.4
  • Fastlane2.239.0
  • SwiftFormat0.63.0
  • Xcbeautify3.2.1
  • Xcode Command Line Tools16.4.0.0.1.1747106510(通过pkgutil --pkg-info com.apple.pkg.CLTools_Executables读取)
  • Xcodes2.0.3(Xcode 版本管理工具)

浏览器与 WebDriver(Browsers)

镜像预装了四款浏览器及其驱动:

  • Safari26.6.1 (20624.5.1.18.3) 与SafariDriver26.6.1
  • Google Chrome152.0.7977.83
  • Google Chrome for Testing152.0.7977.82 与ChromeDriver152.0.7977.82
  • Microsoft Edge152.0.4191.66 与Microsoft Edge WebDriver152.0.4191.62
  • Mozilla Firefox155.0.1 与geckodriver0.37.1
  • Selenium server4.48.0

对应环境变量(由Build-BrowserWebdriversEnvironmentTable生成,SoftwareReport.Browsers.psm1):

NameValue
CHROMEWEBDRIVER/usr/local/share/chromedriver-mac-arm64
EDGEWEBDRIVER/usr/local/share/edge_driver
GECKOWEBDRIVER/opt/homebrew/opt/geckodriver/bin

浏览器安装脚本位于 install-chrome.sh、install-firefox.sh、install-edge.sh、install-safari.sh,均作为 Packer 构建的一环在镜像内执行。

Java 运行时

镜像通过 install-openjdk.sh 预装四套 JDK,并注册架构专属的环境变量(arm64 后缀_arm64):

VersionEnvironment Variable
11.0.32+101JAVA_HOME_11_arm64
17.0.20+101JAVA_HOME_17_arm64
21.0.12+101.0 (default)JAVA_HOME_21_arm64
25.0.4+101.0JAVA_HOME_25_arm64

默认 JDK 为 21,与 toolset 中java.arm64.default = "21"versions: ["11","17","21","25"]完全一致。

缓存工具集(Cached Tools)

所谓"缓存工具"(toolcache)指安装在~/hostedtoolcache下、供 setup-* 类 action 快速切换多版本的一组运行时。arm64 镜像包含:

  • Ruby:3.2.11、3.3.12、3.4.10、4.0.6
  • Python:3.11.9、3.12.10、3.13.15、3.14.7
  • Node.js:22.23.2、24.20.0
  • Go:1.24.13、1.25.14、1.26.8

这些版本由 toolset 的toolcache段声明:Python/Node/Go 通过各自的官方 versions-manifest 与通配版本(如3.14.*24.*1.26.*)解析出具体版本,Ruby 则按 3.2/3.3/3.4/4.0 四个版本线固定安装。报告侧由 SoftwareReport.Toolcache.psm1 的Get-ToolcacheXxxVersions直接扫描$HOME/hostedtoolcache目录实测得出,因而与镜像实际内容严格一致。

Rust 工具链

  • Cargo1.98.1
  • Rust1.98.1
  • Rustdoc1.98.1
  • Rustup1.29.0

子分类Packages

  • Clippy0.1.98
  • Rustfmt1.9.0-stable

Rust 由 install-rust.sh 安装,版本信息分别来自rustc --versioncargo --versionrustdoc --versionrustup --versioncargo clippy --versionrustfmt --version等命令的实测输出。

PowerShell 工具

  • PowerShell7.6.5(toolset 中pwsh.version = 7.6

PowerShell Modules

  • Az:15.6.1
  • Pester:5.9.0
  • PSScriptAnalyzer:1.25.0

模块列表由 toolset 的powershellModules声明,报告脚本通过Get-Module -ListAvailable枚举各模块已安装版本(SoftwareReport.Toolcache.psm1 中的Get-PowerShellModules)。

Xcode 多版本管理、SDK 与模拟器

Xcode 是该镜像的核心组件。当前镜像预装了 9 个版本,默认版本为16.4(toolset 中xcode.default = "16.4"):

VersionBuildPathSymlinks
26.317C529/Applications/Xcode_26.3.app/Applications/Xcode_26.3.0.app
26.217C52/Applications/Xcode_26.2.app/Applications/Xcode_26.2.0.app
26.1.117B100/Applications/Xcode_26.1.1.app/Applications/Xcode_26.1.app
26.0.117A400/Applications/Xcode_26.0.1.app/Applications/Xcode_26.0.app
16.4 (default)16F6/Applications/Xcode_16.4.app/Applications/Xcode_16.4.0.app、/Applications/Xcode.app
16.316E140/Applications/Xcode_16.3.app/Applications/Xcode_16.3.0.app
16.216C5032a/Applications/Xcode_16.2.app/Applications/Xcode_16.2.0.app
16.116B40/Applications/Xcode_16.1.app/Applications/Xcode_16.1.0.app
16.016A242d/Applications/Xcode_16.app/Applications/Xcode_16.0.0.app、/Applications/Xcode_16.0.app

版本数据从何而来:toolset 的xcode.arm64.versions数组声明每个版本的link(安装目录版本)、filenameversion(形如26.3+17C529,由语义版本 + build 号组成)、sha256校验和、install_runtimes策略与symlinks。安装流程由 Xcode.Installer.psm1 驱动:从XCODE_INSTALL_STORAGE_URL下载Xcode-{version}.xip(附 SAS 令牌),校验 SHA256 后优先用unxip解包(否则回退xip -x),移动到/Applications/Xcode_<version>.app,随后执行稳定版spctl --assess完整性校验、xcodebuild -license accept许可接受、MetalToolchain 组件安装、-runFirstLaunch首次启动初始化。

运行时安装策略:toolset 中install_runtimes支持三种值——defaultxcodebuild -downloadAllPlatforms安装全部平台)、none(跳过)、或按平台映射安装(如 Xcode 16.4 安装 iOS 18.5/18.6、watchOS 11.5、tvOS 18.5 与 arm64 专属的 visionOS 2.3/2.4/2.5)。Xcode 26+ 版本还会附加-architectureVariant universal参数(Xcode.Installer.psm1)。visionOS 运行时仅在 arm64 上安装,这正解释了下方 SDK/模拟器表中 visionOS 系列的来源。

默认 Xcode 的切换/Applications/Xcode.app是指向默认版本(16.4)的符号链接,Get-DefaultXcodeRootPath通过读取该链接的 Target 定位默认版本(Xcode.Helpers.psm1);构建时通过sudo xcode-select --switch在版本间切换。此外构建脚本还会把各 Xcode 主版本的XCODE_<主版本>_DEVELOPER_DIR环境变量写入~/.bashrc(如XCODE_26_DEVELOPER_DIRXCODE_16_DEVELOPER_DIR),供工作流直接引用指定 Xcode 的开发者目录。

Installed SDKs

镜像内 SDK 数据由xcodebuild -showsdks -json实测枚举(SoftwareReport.Xcode.psm1),并按平台与版本排序。覆盖 macOS、iOS、tvOS、watchOS、visionOS、DriverKit 及各自模拟器 SDK,具体如下:

SDKSDK NameXcode Version
macOS 15.0macosx15.016.0
macOS 15.1macosx15.116.1
macOS 15.2macosx15.216.2
macOS 15.4macosx15.416.3
macOS 15.5macosx15.516.4
macOS 26.0macosx26.026.0.1
macOS 26.1macosx26.126.1.1
macOS 26.2macosx26.226.2, 26.3
iOS 18.0iphoneos18.016.0
iOS 18.1iphoneos18.116.1
iOS 18.2iphoneos18.216.2
iOS 18.4iphoneos18.416.3
iOS 18.5iphoneos18.516.4
iOS 26.0iphoneos26.026.0.1
iOS 26.1iphoneos26.126.1.1
iOS 26.2iphoneos26.226.2, 26.3
Simulator - iOS 18.0iphonesimulator18.016.0
Simulator - iOS 18.1iphonesimulator18.116.1
Simulator - iOS 18.2iphonesimulator18.216.2
Simulator - iOS 18.4iphonesimulator18.416.3
Simulator - iOS 18.5iphonesimulator18.516.4
Simulator - iOS 26.0iphonesimulator26.026.0.1
Simulator - iOS 26.1iphonesimulator26.126.1.1
Simulator - iOS 26.2iphonesimulator26.226.2, 26.3
tvOS 18.0appletvos18.016.0
tvOS 18.1appletvos18.116.1
tvOS 18.2appletvos18.216.2
tvOS 18.4appletvos18.416.3
tvOS 18.5appletvos18.516.4
tvOS 26.0appletvos26.026.0.1
tvOS 26.1appletvos26.126.1.1
tvOS 26.2appletvos26.226.2, 26.3
Simulator - tvOS 18.0appletvsimulator18.016.0
Simulator - tvOS 18.1appletvsimulator18.116.1
Simulator - tvOS 18.2appletvsimulator18.216.2
Simulator - tvOS 18.4appletvsimulator18.416.3
Simulator - tvOS 18.5appletvsimulator18.516.4
Simulator - tvOS 26.0appletvsimulator26.026.0.1
Simulator - tvOS 26.1appletvsimulator26.126.1.1
Simulator - tvOS 26.2appletvsimulator26.226.2, 26.3
watchOS 11.0watchos11.016.0
watchOS 11.1watchos11.116.1
watchOS 11.2watchos11.216.2
watchOS 11.4watchos11.416.3
watchOS 11.5watchos11.516.4
watchOS 26.0watchos26.026.0.1
watchOS 26.1watchos26.126.1.1
watchOS 26.2watchos26.226.2, 26.3
Simulator - watchOS 11.0watchsimulator11.016.0
Simulator - watchOS 11.1watchsimulator11.116.1
Simulator - watchOS 11.2watchsimulator11.216.2
Simulator - watchOS 11.4watchsimulator11.416.3
Simulator - watchOS 11.5watchsimulator11.516.4
Simulator - watchOS 26.0watchsimulator26.026.0.1
Simulator - watchOS 26.1watchsimulator26.126.1.1
Simulator - watchOS 26.2watchsimulator26.226.2, 26.3
visionOS 2.0xros2.016.0
visionOS 2.1xros2.116.1
visionOS 2.2xros2.216.2
visionOS 2.4xros2.416.3
visionOS 2.5xros2.516.4
visionOS 26.0xros26.026.0.1
visionOS 26.1xros26.126.1.1
visionOS 26.2xros26.226.2, 26.3
Simulator - visionOS 2.0xrsimulator2.016.0
Simulator - visionOS 2.1xrsimulator2.116.1
Simulator - visionOS 2.2xrsimulator2.216.2
Simulator - visionOS 2.4xrsimulator2.416.3
Simulator - visionOS 2.5xrsimulator2.516.4
Simulator - visionOS 26.0xrsimulator26.026.0.1
Simulator - visionOS 26.1xrsimulator26.126.1.1
Simulator - visionOS 26.2xrsimulator26.226.2, 26.3
DriverKit 24.0driverkit24.016.0
DriverKit 24.1driverkit24.116.1
DriverKit 24.2driverkit24.216.2
DriverKit 24.4driverkit24.416.3
DriverKit 24.5driverkit24.516.4
DriverKit 25.0driverkit25.026.0.1
DriverKit 25.1driverkit25.126.1.1
DriverKit 25.2driverkit25.226.2, 26.3

Installed Simulators(由xcrun simctl list --json采集运行时与设备,经Build-XcodeSimulatorsTable排序组装):

NameOSSimulators
iOS 18.518.5iPhone 16、iPhone 16 Plus、iPhone 16 Pro、iPhone 16 Pro Max、iPhone 16e、iPhone SE (3rd generation)、iPad (10th generation)、iPad (A16)、iPad Air 11-inch (M2)、iPad Air 11-inch (M3)、iPad Air 13-inch (M2)、iPad Air 13-inch (M3)、iPad mini (A17 Pro)、iPad Pro 11-inch (M4)、iPad Pro 13-inch (M4)
iOS 18.618.6同上(15 台设备)
iOS 26.026.0.1iPhone 16 系列、iPhone 17、iPhone 17 Pro、iPhone 17 Pro Max、iPhone Air、iPhone SE (3rd generation)、iPad (10th generation)、iPad (A16)、iPad Air 11-inch (M2/M3)、iPad Air 13-inch (M2/M3)、iPad mini (A17 Pro)、iPad Pro 11-inch (M4/M5)、iPad Pro 13-inch (M4/M5)
iOS 26.126.1同上(21 台设备)
iOS 26.226.2同上(21 台设备)
tvOS 18.518.5Apple TV、Apple TV 4K (3rd generation)、Apple TV 4K (3rd generation) (at 1080p)
tvOS 26.126.1同上
tvOS 26.226.2同上
watchOS 11.511.5Apple Watch SE (40mm/44mm) (2nd generation)、Apple Watch Series 10 (42mm/46mm)、Apple Watch Ultra 2 (49mm)
watchOS 26.126.1Apple Watch SE (40mm/44mm) (2nd generation)、Apple Watch SE 3 (40mm/44mm)、Apple Watch Series 10 (42mm/46mm)、Apple Watch Series 11 (42mm/46mm)、Apple Watch Ultra 2/3 (49mm)
watchOS 26.226.2同上(10 台设备)
visionOS 2.32.3Apple Vision Pro
visionOS 2.42.4Apple Vision Pro
visionOS 2.52.5Apple Vision Pro
visionOS 26.126.1Apple Vision Pro
visionOS 26.226.2Apple Vision Pro

从表中可以清晰看到两代 SDK 并存:Xcode 16.x 提供 macOS 15.x / iOS 18.x / watchOS 11.x / tvOS 18.x / visionOS 2.x,Xcode 26.x 提供 macOS 26.x / iOS 26.x / watchOS 26.x / tvOS 26.x / visionOS 26.x。模拟器运行时在构建阶段由 Configure-Xcode-Simulators.ps1 落地。

Android SDK 环境

镜像预装完整 Android SDK,安装由 install-android-sdk.sh 完成,主要组件如下:

Package NameVersion
Android Command Line Tools16.0
Android Emulator37.1.11
Android SDK Build-tools37.0.0、36.0.0、36.1.0、35.0.0、35.0.1
Android SDK Platformsandroid-37.2-beta3 (rev 3)、android-37.2-beta2 (rev 2)、android-37.2-beta1 (rev 1)、android-37.2 (rev 1)、android-37.1 (rev 1)、android-37.0 (rev 2)、android-36.1 (rev 1)、android-36-ext19 (rev 1)、android-36-ext18 (rev 1)、android-36 (rev 2)、android-35-ext15 (rev 1)、android-35-ext14 (rev 1)、android-35 (rev 2)、android-34-ext8 (rev 1)、android-34-ext12 (rev 1)、android-34-ext11 (rev 1)、android-34-ext10 (rev 1)、android-34 (rev 3)
Android SDK Platform-Tools37.0.1
Android Support Repository47.0.0
CMake3.31.5、4.1.2
Google Play services49
Google Repository58
NDK27.3.13750724 (default)、28.2.13676358、29.0.14206865

toolset 中对应的声明包括:android.platform_min_version = 34android.build_tools_min_version = 35.0.0android.ndk.default = "27"versions: ["27","28","29"]additional_tools: ["cmake;3.31.5","cmake;4.1.2"],以及cmdline-toolssdk-tools的具体安装包。报告侧通过sdkmanager --list_installed实测包清单(SoftwareReport.Android.psm1),保证与 SDK 实际内容同步。

Android 相关环境变量

NameValue
ANDROID_HOME/Users/runner/Library/Android/sdk
ANDROID_NDK/Users/runner/Library/Android/sdk/ndk/27.3.13750724
ANDROID_NDK_HOME/Users/runner/Library/Android/sdk/ndk/27.3.13750724
ANDROID_NDK_LATEST_HOME/Users/runner/Library/Android/sdk/ndk/29.0.14206865
ANDROID_NDK_ROOT/Users/runner/Library/Android/sdk/ndk/27.3.13750724
ANDROID_SDK_ROOT/Users/runner/Library/Android/sdk

注意ANDROID_NDK_*系列指向默认 NDK 27,而ANDROID_NDK_LATEST_HOME指向最新 NDK 29,这与 toolset 中ndk.default = "27"的设定一致;报告脚本对这类符号链接路径做了真实解析(Get-PathWithLink),确保展示的是实际生效目录。

其他软件(Miscellaneous)

  • Tcl/Tk8.6.18(来自 Homebrewtcl-tk@8,toolset 的brew.common_packages中声明,报告通过brew info --json tcl-tk@8读取已装版本)

Tcl/Tk 仅出现在 Sonoma 及更新版本的镜像中,由报告脚本按 OS 分支条件加入。

如何利用这份清单

  • 核对预装环境:在 workflow 中可通过macos-15标签(arm64 对应 Apple Silicon 运行器)选择该镜像。若某个工具未在清单中出现,说明镜像未预装,需要自行安装(例如通过brew install)。
  • 读取自动生成的 JSON:与 Readme 同源的 software-report.json 形态的数据(macOS 镜像对应 JSON 在构建产物中输出)可被程序化解析,便于做依赖版本断言。
  • 切换 Xcode:默认 Xcode 为 16.4;如需使用 Xcode 26.x 等版本,可结合镜像中声明的XCODE_<主版本>_DEVELOPER_DIR环境变量或sudo xcode-select --switch /Applications/Xcode_26.3.app切换。
  • 查看测试覆盖:镜像在构建时会运行 RunAll-Tests.ps1 全量测试,测试用例散见于 images/macos/scripts/tests 目录(如 Xcode.Tests.ps1、Android.Tests.ps1),它们校验的就是这份清单中列出的关键版本与行为。

总体而言,这份 Readme 的价值在于"可信":它由构建流水线在镜像内自动盘点生成,每个版本号都有对应的安装脚本与 toolset 声明作为依据,是判断 macOS 15 arm64 运行器上"有什么、是什么版本、路径在哪"的权威参考。

【免费下载链接】runner-imagesGitHub Actions runner images项目地址: https://gitcode.com/GitHub_Trending/ru/runner-images

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询