Release process
- Going through an example of releasing NixOS 15.09:
+ Going through an example of releasing NixOS 17.09:
@@ -18,13 +18,13 @@
- Send an email to nix-dev mailinglist as a warning about upcoming beta "feature freeze" in a month.
+ Send an email to the nix-devel mailinglist as a warning about upcoming beta "feature freeze" in a month.
Discuss with Eelco Dolstra and the community (via IRC, ML) about what will reach the deadline.
- Any issue or Pull Request targeting the release should have assigned milestone.
+ Any issue or Pull Request targeting the release should be included in the release milestone.
@@ -34,60 +34,63 @@
- Rename rl-unstable.xml ->
- rl-1509.xml.
+ Create a new release notes file for the upcoming release + 1, in this
+ case rl-1803.xml.
- git tag -a -m "Release 15.09-beta" 15.09-beta && git push --tags
+ git tag -a -s -m "Release 17.09-beta" 17.09-beta && git push --tags
- From the master branch run git checkout -B release-15.09.
+ From the master branch run git checkout -B release-17.09.
- Make sure channel is created at http://nixos.org/channels/.
+ Make sure a channel is created at http://nixos.org/channels/.
- Lock the branch on github (so developers can’t force push)
+ Let a GitHub nixpkgs admin lock the branch on github for you.
+ (so developers can’t force push)
- bump
- system.defaultChannel attribute in
- nixos/modules/misc/version.nix
+
+ Bump the system.defaultChannel attribute in
+ nixos/modules/misc/version.nix
+
- update
- versionSuffix in
+
+ Update versionSuffix in
nixos/release.nix, use
- git log --format=%an|wc -l to get commit
+ git log --format=%an|wc -l to get the commit
count
- echo -n "16.03" > .version in
+ echo -n "18.03" > .version on
master.
- pick
- a new name for unstable branch.
+
+ Pick a new name for the unstable branch.
+
@@ -99,26 +102,20 @@
- Use https://lwn.net/Vulnerabilities/ and
- triage vulnerabilities in an issue.
-
-
-
-
- Create two Hydra jobsets: release-15.09 and release-15.09-small with stableBranch set to false
+ Create two Hydra jobsets: release-17.09 and release-17.09-small with stableBranch set to false.
Edit changelog at
- nixos/doc/manual/release-notes/rl-1509.xml
+ nixos/doc/manual/release-notes/rl-1709.xml
(double check desktop versions are noted)
Get all new NixOS modules
- git diff release-14.12..release-15.09 nixos/modules/module-list.nix|grep ^+
+ git diff release-17.03..release-17.09 nixos/modules/module-list.nix|grep ^+
@@ -130,9 +127,25 @@
+
+ During Beta
+
+
+
+ Monitor the master branch for bugfixes and minor updates
+ and cherry-pick them to the release branch.
+
+
+
+ Before the final release
+
+
+ Re-check that the release notes are complete.
+
+
Release Nix (currently only Eelco Dolstra can do that).