I finally build functional NixOS using flake (fantastic project!!!) by using the following inputs:
nixpkgs.url = "github:nixos/nixpkgs/nixos-23.05";
home_manager.url = "github:nix-community/home-manager/release-23.05"
Before that I spent some time playing with unstable:
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
home_manager.url = "github:nix-community/home-manager"
But at the end for my laptop in production I decided to use the stable branch.
Is there a link that never change and always point to the current stable? Something like
github:nix-community/home-manager/current-lts? In other words something that points at this moment to 23.05 but in future it is going to point to 23.11.
In short: no
You have to update your
nixpkgs.url every 6 months. Make sure to review the release notes when updating.
On the other hand:
nixos-unstable is actually quite stable and a lot of people in the community are using it as their daily driver on laptops/desktops.
This doesn’t make sense.
The promise of the stable channels/branches is that they will never breaking your system by introducing some incompatible changes in how you have to write your configuration or do not do breaking updates to your software.
By providing such a channel that would pop up a wall of breaking changes every 6 months when you are actually not prepared to handle them, you basically just give up on all the good things of the stable branch, while at the same time do not get any benefits from the unstable branches.
Just manually bump when you have the time to also fix the config and software issues this update brings you, or use stable and just have some fiddling with every other update you do, because there is yet another deprecation warning popping up…
Thank you Wamserma and NoobZ.
I was thinking that having LTS link would give me heads up in 6 months that there is another version to look at. In other words one day I’d do
nix flake update and
nixos-rebuild ... and get deprecation warnings that I didn’t see before. But I do get your point.