Removing the NixOS release tag?

Do you use the NixOS release tag?
For example we have the immutable 20.09 (and the branch nixos-20.09 tracking the channel. This is not about the branch or channel)
Using the tag is very risky and it has happened by accident. I wonder if anyone has a use case though.

If we can’t find any, I propose we stop tagging the release.
PR: nixos/doc/releases: Do not tag the release by roberth · Pull Request #124364 · NixOS/nixpkgs · GitHub


I guess tags are useful to maximize reproducibility. If a Nix expression depends on the 20.09 tag, I expect it to always result in the same derivation.

I agree with you their names can easily be confused with branch names though. Maybe we should consider renaming instead of deleting?

It’s in the current release docs, and predates me as a release manager. I think it originated from us having a YY.MM-beta during ZHF/stabilization. And once a “release is cut”, then it gets tagged.

I’m not opposed to removing the practice, because with channels, you never want the immutable tag, but the latest channel release. It’s just always… been there.

One reason for having the tags is to have git describe give you accurate information.

[12:19:58] jon@nixos ~/projects/nixpkgs (master)
$ git describe
[12:20:02] jon@nixos ~/projects/nixpkgs (master)
$ git checkout release-21.05
Switched to branch 'release-21.05'
Your branch is behind 'origin/release-21.05' by 7 commits, and can be fast-forwarded.
  (use "git pull" to update your local branch)
[12:20:17] jon@nixos ~/projects/nixpkgs (release-21.05)
$ git describe
[12:22:28] jon@nixos ~/projects/nixpkgs (release-20.09)
$ git describe

Don’t you think in such situations people would prefer a commit hash? — I would assume so.

1 Like

The problem with commit hashes is that they don’t convey meaning.

Other than that I agree with @jonringer that one would always want to either track a branch head or deliberately pin a revision.

The tags confused me just the other day and I had to stop and think. In favor of removing them from the release manual.