Because the terms “upgrade” and “update” are used interchangeably in common English, and NixOS has no glossary, standardized review practices, or coherent vision. We can’t even consistently document our modules, are you really expecting consistent use of semi-technical terms?
The --upgrade-all flag also is also out of line.
That said, because of this ambiguity, it’s hard to tell why you are disappointed by its behavior. Were you expecting an automatic upgrade to 26.05 (which really shouldn’t exist), or do you have yet another definition of “upgrade”?
To my understanding a “system upgrade” should be tied to the bi-annual version number update as opposed to a “system update” that deals with anything in between. I also have an Arch Linux system seeing at least daily updates.
I am worried not to automatically receive “system updates” in that sense, say on a weekly or even daily basis. The log from nixos-upgrade indicates that the service works - I just have not seen it rebooting and have become suspicious. Then, running the above command supdated my system big time.
I agree that such discussions are quite important to conduct.
There will never be a service in NixOS that automatically upgrades to the new stable, and this is intentional. You need to handle the data and settings changes that will be affected by the breaking changes, because that is outside the scope of NixOS.
If you want to upgrade to the new stable, you have to make the necessary changes to your config, migrate your data, then change your channel or flake input or whatever and then let it do its thing.
If you need to leave a system unattended for a year or even more, NixOS likely isn’t for you. There are LTS alternatives available, like CTRL-OS (to which I have no affiliation, it’s just the only one coming to my mind right now).
Ok, then yeah, the autoUpgrade service indeed performs automatic updates, not upgrades, by your definition.
The naming is indeed silly, but entirely un-sarcastically, I don’t think you can expect the kind of polish you’d need to get consistent naming from NixOS. We just don’t have the functioning organizational structure that’d be needed to enforce that kind of thing, unlike the big distros like Debian or Fedora. Too few experienced people, too big of a scope. Hell, even those distros struggle from time to time.
You can try sending up PRs with deprecations for this and other inappropriately named update things, they might be accepted.
If you care about these kind of details in general, I suggest manually looking through the NixOS modules you use. Maybe upstream fixes where you see problems, we could use your hands and eyes.
Is that the first time the service ran or do you have longer-term logs?
The allowReboot option is documented as follows (emphasis mine):
Reboot the system into the new generation instead of a switch if the new generation uses a different kernel, kernel modules or initrd than the booted system.
Kernel updates aren’t that common, and you probably haven’t made un-applied system changes. If your system isn’t all that old, there’s a good chance you simply haven’t seen a kernel update.
If you want to assert that auto reboots happen experimentally, you can try to add a random kernel module to your config and start the service manually with systemctl start.
Speaking about it, I have just had it auto-reboot on another Laptop. I will have more time on my hands next year, get into NixOS deeper and support it.