An open-source Linux distribution built and optimized for Azure, with sources derived from Fedora Linux. Azure Linux provides a secured, reliable operating system for virtual machines, containers, and bare-metal platforms.
Azure Linux is built on a robust open-source foundation from the Fedora ecosystem and enhanced with Azure-specific innovations. This provides the familiarity of the RPM package ecosystem, while adding Azure-native security, compliance, and operational capabilities.
Key features of Azure Linux include: hardened security posture, an Azure-optimized kernel, supply chain security, native Azure integration, and a predictable lifecycle.
This branch holds the in-development sources for Azure Linux 4. For Azure Linux 3, see the
3.0branch.
The links below will help you get started with Azure Linux:
| Product documentation | https://aka.ms/azurelinux |
| Release information | GitHub Releases |
| File a bug / feedback | GitHub Issues |
| Ask a question / get help | SUPPORT.md |
| Get started as a distro developer | DEVELOPING.md |
| Contribution guidelines | CONTRIBUTING.md |
| Report a security issue | SECURITY.md |
Azure Linux 4 is still in development; downloads will be linked here when available. To deploy Azure Linux today, see Azure Linux 3.
Azure Linux 4 is an RPM-based distribution optimized for Azure and modern cloud workloads. It is defined by a set of TOML configuration files and targeted overlays applied to Fedora Linux, its upstream base.
Deviations from upstream are declaratively defined and scoped to avoid unnecessary divergence or forking. This repository contains a mechanically rendered set of RPM package spec files derived from applying this layer to Fedora's upstream packaging sources.
The distro is described almost entirely in TOML-based configuration files. Our open-source development tool, azldev, is used to apply this configuration to upstream Fedora spec files and packaging sources.
azldev.toml # Top-level entry point
├── distro/ # Distro-wide configs (e.g., sources, mock configs)
└── base/ # The "base" project: components, images, tests
└── comps/ # Component definitions (one per source package)
└── images/ # Base image definitions
- Components (also known as source packages) are the unit of packaging. Most are imported in source form from Fedora's upstream dist-git repositories; each component produces one or more RPMs. Azure Linux builds all components from sources to produce a full set of installable RPM packages.
- Overlays are declarative modifications to upstream specs and sources
(e.g., patches, additions/removals, build parameters). They live alongside the component definition and always carry a
descriptionexplaining why the change is needed. Overlays let us avoid forking upstream specs and are more flexible than plain textual patches. - Rendered specs are the final
.specfiles produced by applying overlays to upstream sources. They are mechanically generated byazldev, checked in for visibility and auditability, and live underspecs/. Treat them as derived output and not sources for editing. We use them as the input to standard RPM building services/tools (mock+rpmbuild,koji).
For a deeper tour of the tooling, the overlay system, and how to get started developing within this distro, please see DEVELOPING.md.
| Path | What's there |
|---|---|
azldev.toml |
Top-level config — includes distro/ and base/. |
distro/ |
Distro definitions (Azure Linux + upstream Fedora), shared mock configs. |
base/ |
The base project: components, images, tests. |
base/comps/ |
Component definitions — the heart of the distro. |
base/images/ |
Image definitions (VM, container, etc.) built from the component set using KIWI NG. |
specs/ |
Rendered specs — generated .spec files after overlays are applied. Checked in for visibility; do not hand-edit. |
locks/ |
Per-component lock files pinning upstream commits + input fingerprints; do not hand-edit. |
external/schemas/ |
Cached copy of the JSON Schema for TOML config files; mirrored from azldev. |
.github/ |
CI workflows, plus Copilot prompts, skills, and agent instructions used by AI-assisted development. |
If you want to build or develop within the distro, start with DEVELOPING.md. Don't worry about this if you're primarily looking to use the distro.
- Bugs and feature requests: file a GitHub issue. Please search existing issues first to avoid duplicates. Share as much as you can with us regarding what you tried and what you're seeing.
- Support: see SUPPORT.md for the full set of channels.
- Security vulnerabilities: do not open a public issue. Follow the process in SECURITY.md to report privately to the Microsoft Security Response Center.
- Pull requests: see CONTRIBUTING.md for the patch-series workflow, commit-message conventions, and review expectations.
This project has adopted the Microsoft Open Source Code of Conduct. For more information, see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.
This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft's Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos is subject to those third parties' policies.
Any Linux distribution, including Azure Linux, benefits from contributions by the open-source software community. We gratefully acknowledge all contributions made from the broader community.
We specifically want to thank the Fedora Project for providing us with a strong foundation across components, spec files, tools, services, and community. We are proud to participate and contribute to this community.
Unless otherwise specified, the content of the Azure Linux distribution and this repository are distributed under an MIT license.
Individual packages within the distribution are distributed under licenses specified in their package spec files and sources.
This repository contains files derived from Fedora Linux. For details on the licensing terms for the Fedora Project, please consult fedoraproject.org.