`nix-channel` reads its channel list from $HOME/.nix-channels, so running
it through a non-login `sudo`/`su` keeps the caller's $HOME and operates
on the wrong user's channels (e.g. `nix-channel --list` prints nothing).
Add a login-shell prerequisite before the first root command in the
upgrading chapter, so the commands that follow work as written, and
rewrite the per-user channel note to lead with what a login shell does
before describing the mistake.
Trim the `#`-prompt note in the preface to a single sentence; the
login-shell details belong next to the commands that need them.
Closes#27172
Assisted-by: claude-code with claude-opus-5[1m]-high
The phrasing that channels are updated automatically "[when] all packages have been built" could be
read as "all packages have been built successfully". However, in reality, it only meant to say that
all packages have been *attempted* to be built, so a channel may still contain broken packages. This
patch aims to make this clearer by mentioning that only a selection of packages is required to be
built successfully and by pointing to the files which contain these selections.