Look up the full list of pre-installed tools on a specific GitHub Actions runner to know what your workflow can skip installing.
Build custom VM images using the same tooling GitHub uses, for self-hosted runners in your own infrastructure.
Report a bug or broken tool version on a specific runner image to GitHub's team.
Plan a workflow update when GitHub announces that a '-latest' label is moving to a newer OS version.
Building custom images requires the same cloud infrastructure GitHub uses internally, most users only need to read the pre-installed software lists.
When you use GitHub Actions to automatically test or build your code, GitHub runs your code on a virtual machine somewhere in the cloud. This repository contains the scripts and configuration files that GitHub uses to build those virtual machines. It is maintained by GitHub's own team and is also used by Microsoft Azure's pipeline service for the same purpose. The images available cover three operating systems: Ubuntu Linux (versions 22.04 and 24.04, plus a smaller "slim" variant), macOS (versions 14, 15, and 26, for both standard Intel chips and the newer ARM-based chips Apple uses), and Windows Server (versions 2022 and 2025). Each image comes with a large collection of programming languages, developer tools, and build utilities pre-installed, so most projects can start running code without needing to install anything first. The exact list of what is included in each image is documented in separate files linked from the README. In your GitHub Actions workflow file, you refer to one of these images by a short label such as "ubuntu-latest" or "windows-2022". The "-latest" labels always point to the most recent stable version of that operating system. When GitHub moves the "-latest" label to a newer OS version, they announce it in advance and roll it out gradually over one to two months to give users time to update their workflows. Images go through a lifecycle before they are widely available. A Beta period comes first, where the image is made available for testing and feedback, but is not covered by GitHub's service guarantees. After the beta period, if the image is stable and the major software on it is compatible, it moves to General Availability. GitHub supports the two most recent versions of each operating system, and older images are eventually retired. This repository is mainly useful to people who want to understand exactly what software is on GitHub's hosted runners, report issues with a specific image, or build custom VM images using the same tooling for their own self-hosted runners.
← actions on gitmyhub — every repo by this author, as a profile.
Verify against the repo before relying on details.