Skip to content

Commit 123e94a

Browse files
author
Jonathan Ringer
authored
[RFC 0080] Change NixOS releases to YY.05,YY.11 (#80)
1 parent eee6599 commit 123e94a

File tree

1 file changed

+72
-0
lines changed

1 file changed

+72
-0
lines changed
Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
---
2+
feature: nixos-release-schedule
3+
start-date: 2020-11-28
4+
author: Jonathan Ringer (@jonringer)
5+
co-authors: Frederik Rietdijk (@FRidh)
6+
shepherd-team: @ryantm, @domenkozar and @garbas
7+
related-issues:
8+
---
9+
10+
# Summary
11+
[summary]: #summary
12+
13+
NixOS is released twice a year; the current release schedule targets March
14+
and September for the release months. However, trying to provide a polished
15+
desktop-user experience is difficult and moving the target release months to
16+
May and November should minimize the amount of in-house work needed to
17+
cut a release.
18+
19+
# Motivation
20+
[motivation]: #motivation
21+
22+
By changing our release dates to follow those of certain upstream projects,
23+
we could reduce the amount of issues we encounter during stabilization.
24+
In particular, GNOME and KDE Plasma both have a release in September, which
25+
allows ample time for NixOS contributors to package and stabilize the
26+
desktop managers before the November release. For the May release, GNOME will
27+
have a similar stabilization period; while Plasma, which has a four month
28+
release cadence, will have a slightly older but still supported non-LTS
29+
release. Using LTS releases is not feasible as there is no guarantee that
30+
they will be compatible with the version of systemd during branch-off.
31+
32+
The current March and September release months may be the worst months for
33+
GNOME and Plasma, as the release available during stabilization would be
34+
End-of-Life a few weeks after the target release date. Also, this period marks
35+
the greatest potential dependency "drift" from development on unstable. For example,
36+
many of the 20.09 release blockers were related to issues with systemd-246 and plasma-5.18,
37+
however, plasma-5.19 and the yet-released 5.20 both supported systemd-246 with
38+
zero additional effort.
39+
40+
Choosing branch-off points in master where the major desktop manager use
41+
cases should be well stabilized will allow for release stabilization to
42+
focus on failing builds and minor issues.
43+
44+
## Core changes
45+
46+
The 21.03 release will be delayed until 21.05, and the current 20.09 release
47+
will be supported until June 2021. After the initial 21.05 release, all subsequent
48+
releases will occur six months apart following a YY.05 and YY.11 convention.
49+
50+
# Drawbacks
51+
[drawbacks]: #drawbacks
52+
53+
There will be some initial confusion with stable users as to why the 21.03
54+
release was delayed.
55+
56+
# Alternatives
57+
[alternatives]: #alternatives
58+
59+
## Maintain the status quo regarding release dates
60+
61+
We could keep the release dates in March and September. However, we
62+
would need some other way to minimize the work and risk from trying to
63+
provide a polished experience for 60,000+ packages, 17 desktop managers,
64+
and 30+ window managers.
65+
66+
# Future work
67+
[future]: #future-work
68+
69+
- Update .version on master to 21.05
70+
- Update unstable osinfo-db entry to 21.05pre
71+
- Document the release schedule in the NixOS manual.
72+
- Announce the various deadlines on the mailing list (Discourse).

0 commit comments

Comments
 (0)