This looks useful enough!github.com/vcstools/wstool/blo…
> wstool allows manipulation of a set of version-controlled folders as specified in a workspace definition file.
I looked at the alternatives and they all look either git-specific or tied to some specific project and project structure like yoctolinux (bitbake)(0) or ROS. Some want to own your layout and put things in some specific workspaces directory.
wstool, the one linked above, looks like it's rosinstall without the ROS dependency (just some vestigial config file naming).
I have a sudden urge to write a rosinstall2nix. Later! Not now!
(0) *shudder* bad memories from when I was battling bitbake 3 summers ago