Selecting a channel with nix-shell

I have multiple channels:

$ nix-channel --list                                                           
nixpkgs https://nixos.org/channels/nixpkgs-19.03-darwin
nixpkgs-new https://nixos.org/channels/nixpkgs-19.09-darwin

How would I select nixpkgs-new when opening a nix-shell?

(I know you can do nix-shell -I nixpkgs=channel:nixpkgs-19.09-darwin -p ... - really wondering how to select a local channel).

I only have one channel but I expect you can write something like nix-shell -p hello '<nixpkgs>'

That said, if you’re trying to create a shell with the given set of packages available, nix run is the better tool for that.

I’m not using channels, but I use this command every now and than

nix-shell -I nixpkgs=/var/src/nixpkgs-unstable -p git

when I want to install something from the unstable branch.
For that I have to clone the repository in /var/src/nixpkgs-unstable.

The channels are located under /nix/var/nix/profiles/per-user/$USER/channels. So for example if the user was root:

nix-shell -I nixpkgs=/nix/var/nix/profiles/per-user/root/channels/nixpkgs-new

or this works too:

NIX_PATH=nixpkgs=/nix/var/nix/profiles/per-user/root/channels/nixpkgs-new nix-shell