Make it a flake.
This explanation from the Zero-to-Nix flake entry is good:
"A Nix flake is a directory with a flake.nix
and flake.lock
at the root that outputs Nix expressions that others can use to do things like build packages, run programs, use development environments, or stand up NixOS systems. If necessary, flakes can use the outputs of other flakes as inputs."
A flake is a directory, and makes most sense when that directory is also a git source tree.