Omarchy Release Cycle Explained: Four Channels and Update Strategy
Omarchy uses a four-channel release model (stable, RC, edge, and dev) that allows users to balance production stability against cutting-edge features, with the stable channel intentionally lagging approximately one month behind the main development branch for validation and migration safety.
The release cycle for Omarchy, an opinionated Arch Linux distribution maintained by omacom/omarchy, is designed to accommodate both conservative production users and aggressive early adopters. Rather than following a traditional timed release schedule, Omarchy employs a channel-based system where users subscribe to different levels of software freshness. This approach is implemented through specific CLI commands and tracked in the repository's bin/ directory and manual documentation.
Understanding the Four Release Channels
Omarchy's release cycle revolves around four distinct channels, each serving different use cases and risk tolerances. According to the source code in manual/30-updates.md, these channels determine which packages and configuration states your system receives during updates.
Stable Channel
The stable channel provides production-ready builds that have passed all validation stages. As documented in manual/30-updates.md, this channel mirrors the official GitHub releases and uses a stable Arch mirror that runs "one month behind the latest" to ensure adequate time for configuration migrations and bug detection. When you run omarchy update on the stable channel, the system pulls packages from the Omarchy Package Repository (omarchy-pkgs) and the Omarchy Arch mirror, then executes any pending migrations to keep your configuration synchronized.
RC (Release Candidate) Channel
The RC channel serves as the final validation gate before major releases graduate to stable. As noted in agents/skills/acceptance-tests.md, this channel is used for "validation using the RC channel" prior to new major releases. Users who switch to this channel receive pre-stable builds intended for testing upcoming features without exposing themselves to the absolute bleeding edge. This channel is critical for the Omarchy release cycle, ensuring that major changes undergo community validation before reaching the stable population.
Edge Channel
The edge channel tracks the quattro branch directly, providing "cutting-edge" builds that contain the newest changes as soon as they land in the main development branch. This channel bypasses the one-month delay imposed on stable, giving users immediate access to recent fixes and features. However, this comes with increased risk, as edge builds may contain undocumented changes that have not yet undergone full regression testing.
Dev Channel
The dev channel represents the absolute bleeding edge, pulling from continuous integration builds and nightly pipelines. These builds may include experimental changes and are not guaranteed to be stable. This channel is intended primarily for Omarchy developers and contributors who need to test changes against the latest code before submission.
How Updates Flow Through the Release Cycle
The mechanics of the Omarchy release cycle are controlled through the bin/omarchy-update script, which orchestrates the entire update process. When invoked, this script:
- Checks the current channel configuration
- Downloads the latest packages appropriate for that channel from the Omarchy Package Repository
- Runs pending migrations to update user configurations
- Refreshes all system packages from the Omarchy Arch mirror and the AUR
This migration system is crucial to the release cycle, as it ensures that configuration changes introduced in newer versions are automatically applied to existing installations, preventing breakage when users update after the one-month stable delay.
Managing Your Release Channel
Users interact with the release cycle through the omarchy CLI, specifically via commands implemented in bin/omarchy-version-channel and bin/omarchy-version-branch. As documented in manual/14-omarchy-cli.md, you can view and modify your current channel subscription.
To check your active release channel:
omarchy version channel
To switch to a different channel (for example, moving from stable to edge to test recent fixes):
omarchy version channel set edge
To view which Git branch your installation currently tracks:
omarchy version branch
To perform a full update for your current channel:
omarchy update
These commands directly read from and write to the channel configuration files, ensuring that subsequent update operations pull from the correct package sources.
Summary
- Omarchy's release cycle uses a four-channel system (stable, RC, edge, dev) rather than traditional version numbers or date-based releases.
- The stable channel intentionally lags one month behind the
quattrodevelopment branch to allow for validation and automated configuration migrations. - The RC channel provides early access to major releases for final community validation before they reach stable.
- The edge channel tracks the
quattrobranch directly for users who need immediate access to fixes and features. - Channel management is handled through
bin/omarchy-version-channeland documented inmanual/14-omarchy-cli.md. - The
bin/omarchy-updatescript handles package retrieval, migration execution, and system synchronization for the active channel.
Frequently Asked Questions
What is the difference between the stable and edge channels in Omarchy?
The stable channel provides thoroughly tested builds that lag approximately one month behind the main development branch, using a curated mirror to ensure configuration migrations complete successfully. The edge channel tracks the quattro branch directly, offering immediate access to the latest commits but without the validation period or automated migration guarantees that stable provides.
How often does the stable channel receive updates?
The stable channel updates continuously as new validated releases become available, but the packages themselves are approximately one month behind the latest development changes. This delay is intentional, allowing the Omarchy maintainers to identify necessary configuration migrations and ensure stability before the changes reach production systems.
Can I switch release channels without reinstalling Omarchy?
Yes. You can switch channels at any time using the omarchy version channel set <channel> command implemented in bin/omarchy-version-channel. After switching, running omarchy update will align your system with the new channel's current state, including any necessary configuration migrations that need to be applied.
What happens if an update breaks my configuration?
The Omarchy release cycle includes an automated migration system run by bin/omarchy-update that attempts to transform existing configurations to match new format requirements. However, if you encounter issues after updating, you can check manual/30-updates.md for recovery procedures or switch to a more conservative channel (like stable from edge) to avoid recently introduced breaking changes.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →