It works perfectly so far. Even though I was following no nixpkgs channels before I installed home-manager.
Is there a problem? Can there be problems with updating? Is home-manager separate from nix installation, so was the manual actually talking about the nixpkgs channel I want to follow ‘inside’ the home-manager?
I’ll use Nix only for my user, through home-manager. So I felt no need to follow a nixpkgs channel.
Environment: 64-bit Raspbian Raspberry Pi Zero 2W (aarch64)
Without it, home-manager simply could not even run. It’s getting nixpkgs from somewhere, and I’m not aware of any other mechanism.
Are you using flakes and have manually written a nixpkgs entry to NIX_PATH or something?
It’s possible the detsys installer does something like that, in which case my main concern is that you have no way to update your software without knowing what exactly it’s doing to achieve this. What is in NIX_PATH?
Notice that nix-shell knows where to get hello from. And also, isn’t it odd that while I am in nix-shell, output of echo $NIX_PATH increased from one blank lines to two?
Are you using flakes and have manually written a nixpkgs entry to NIX_PATH or something?
DetSys installer enables flakes by default. No, I didn’t. The system is quite fresh.
What this means is that it writes the flags to enable nix’ experimental flakes feature (and presumably the nix-command feature) into the nix config. It does not mean that you are using flakes to configure your system.
This means either your user or your root user must have channels, otherwise none of this should work. Perhaps the detsys installer writes a channel to the root channel location without actually registering this in the data structure nix-channel inspects?
nixpkgs environment variable does not exist, for both root and user shells.
I couldn’t see any nixpkgs anywhere except nix-defexpr/channels/home-manager/default.nix.
That will give you the path your system is grabbing nixpkgs from, at which point we at least know that your system in fact has a definition for nixpkgs somewhere. You can also check the .version file in the repo to see the major version.
For reference, having unset my NIX_PATH (I don’t use channels), I get:
error: file 'nixpkgs' was not found in the Nix search path (add it using $NIX_PATH or -I)
at «string»:1:1:
1| <nixpkgs>
| ^