···
<title>Release process</title>
13
-
Going through an example of releasing NixOS 15.09:
13
+
Going through an example of releasing NixOS 17.09:
<section xml:id="one-month-before-the-beta">
···
<itemizedlist spacing="compact">
21
-
Send an email to nix-dev mailinglist as a warning about upcoming beta "feature freeze" in a month.
21
+
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.
27
-
Any issue or Pull Request targeting the release should have assigned milestone.
27
+
Any issue or Pull Request targeting the release should be included in the release milestone.
···
<itemizedlist spacing="compact">
37
-
Rename <literal>rl-unstable.xml</literal> ->
38
-
<literal>rl-1509.xml</literal>.
37
+
Create a new release notes file for the upcoming release + 1, in this
38
+
case <literal>rl-1803.xml</literal>.
43
-
<literal>git tag -a -m "Release 15.09-beta" 15.09-beta && git push --tags</literal>
43
+
<literal>git tag -a -s -m "Release 17.09-beta" 17.09-beta && git push --tags</literal>
48
-
From the master branch run <literal>git checkout -B release-15.09</literal>.
48
+
From the master branch run <literal>git checkout -B release-17.09</literal>.
<link xlink:href="https://github.com/NixOS/nixos-org-configurations/pull/18">
54
-
Make sure channel is created at http://nixos.org/channels/.
54
+
Make sure a channel is created at http://nixos.org/channels/.
<link xlink:href="https://github.com/NixOS/nixpkgs/settings/branches">
61
-
Lock the branch on github (so developers can’t force push)
61
+
Let a GitHub nixpkgs admin lock the branch on github for you.
62
+
(so developers can’t force push)
67
-
<link xlink:href="https://github.com/NixOS/nixpkgs/compare/bdf161ed8d21...6b63c4616790">bump
68
-
<literal>system.defaultChannel</literal> attribute in
69
-
<literal>nixos/modules/misc/version.nix</literal></link>
68
+
<link xlink:href="https://github.com/NixOS/nixpkgs/compare/bdf161ed8d21...6b63c4616790">
69
+
Bump the <literal>system.defaultChannel</literal> attribute in
70
+
<literal>nixos/modules/misc/version.nix</literal>
74
-
<link xlink:href="https://github.com/NixOS/nixpkgs/commit/d6b08acd1ccac0d9d502c4b635e00b04d3387f06">update
75
-
<literal>versionSuffix</literal> in
76
+
<link xlink:href="https://github.com/NixOS/nixpkgs/commit/d6b08acd1ccac0d9d502c4b635e00b04d3387f06">
77
+
Update <literal>versionSuffix</literal> in
<literal>nixos/release.nix</literal></link>, use
77
-
<literal>git log --format=%an|wc -l</literal> to get commit
79
+
<literal>git log --format=%an|wc -l</literal> to get the commit
83
-
<literal>echo -n "16.03" > .version</literal> in
85
+
<literal>echo -n "18.03" > .version</literal> on
89
-
<link xlink:href="https://github.com/NixOS/nixpkgs/commit/b8a4095003e27659092892a4708bb3698231a842">pick
90
-
a new name for unstable branch.</link>
91
+
<link xlink:href="https://github.com/NixOS/nixpkgs/commit/b8a4095003e27659092892a4708bb3698231a842">
92
+
Pick a new name for the unstable branch.
···
102
-
Use https://lwn.net/Vulnerabilities/ and
103
-
<link xlink:href="https://github.com/NixOS/nixpkgs/search?utf8=%E2%9C%93&q=vulnerabilities&type=Issues">triage vulnerabilities in an issue</link>.
108
-
Create two Hydra jobsets: release-15.09 and release-15.09-small with <literal>stableBranch</literal> set to false
105
+
Create two Hydra jobsets: release-17.09 and release-17.09-small with <literal>stableBranch</literal> set to false.
114
-
<literal>nixos/doc/manual/release-notes/rl-1509.xml</literal>
111
+
<literal>nixos/doc/manual/release-notes/rl-1709.xml</literal>
(double check desktop versions are noted)
<itemizedlist spacing="compact">
Get all new NixOS modules
121
-
<literal>git diff release-14.12..release-15.09 nixos/modules/module-list.nix|grep ^+</literal>
118
+
<literal>git diff release-17.03..release-17.09 nixos/modules/module-list.nix|grep ^+</literal>
···
130
+
<section xml:id="during-beta">
131
+
<title>During Beta</title>
132
+
<itemizedlist spacing="compact">
135
+
Monitor the master branch for bugfixes and minor updates
136
+
and cherry-pick them to the release branch.
<section xml:id="before-the-final-release">
<title>Before the final release</title>
<itemizedlist spacing="compact">
146
+
Re-check that the release notes are complete.
Release Nix (currently only Eelco Dolstra can do that).