2.8 KiB
| feature | start-date | author | co-authors | shepherd-team | related-issues |
|---|---|---|---|---|---|
| nixos-release-schedule | 2020-11-28 | Jonathan Ringer (@jonringer) | Frederik Rietdijk (@FRidh) | @ryantm, @domenkozar and @garbas |
Summary
NixOS is released twice a year; the current release schedule targets March and September for the release months. However, trying to provide a polished desktop-user experience is difficult and moving the target release months to May and November should minimize the amount of in-house work needed to cut a release.
Motivation
By changing our release dates to follow those of certain upstream projects, we could reduce the amount of issues we encounter during stabilization. In particular, GNOME and KDE Plasma both have a release in September, which allows ample time for NixOS contributors to package and stabilize the desktop managers before the November release. For the May release, GNOME will have a similar stabilization period; while Plasma, which has a four month release cadence, will have a slightly older but still supported non-LTS release. Using LTS releases is not feasible as there is no guarantee that they will be compatible with the version of systemd during branch-off.
The current March and September release months may be the worst months for GNOME and Plasma, as the release available during stabilization would be End-of-Life a few weeks after the target release date. Also, this period marks the greatest potential dependency "drift" from development on unstable. For example, many of the 20.09 release blockers were related to issues with systemd-246 and plasma-5.18, however, plasma-5.19 and the yet-released 5.20 both supported systemd-246 with zero additional effort.
Choosing branch-off points in master where the major desktop manager use cases should be well stabilized will allow for release stabilization to focus on failing builds and minor issues.
Core changes
The 21.03 release will be delayed until 21.05, and the current 20.09 release will be supported until June 2021. After the initial 21.05 release, all subsequent releases will occur six months apart following a YY.05 and YY.11 convention.
Drawbacks
There will be some initial confusion with stable users as to why the 21.03 release was delayed.
Alternatives
Maintain the status quo regarding release dates
We could keep the release dates in March and September. However, we would need some other way to minimize the work and risk from trying to provide a polished experience for 60,000+ packages, 17 desktop managers, and 30+ window managers.
Future work
- Update .version on master to 21.05
- Update unstable osinfo-db entry to 21.05pre
- Document the release schedule in the NixOS manual.
- Announce the various deadlines on the mailing list (Discourse).