I have had success with using nix-starter-configs by Misterio77.
Here’s how I use packages from unstable:
1. Import nixpkgs-unstable in flake.nix
2. Define an overlay that makes the unstable packages available under “unstable”
3. Import the overlay
4. Take a package from the unstable set
Note that I use home-manager separately from NixOS configuration.
You have home-manager as a NixOS module, but it should be easy to
adapt to that approach.
btw, I don’t have a deep understanding of how this all works, either
The starter config works almost too well - there’s not much opportunity to learn when everything works.