Things like GRUB or the kernel version are handled at the level of NixOS, because, as you say, they affect the system globally.