It's a bit annoying that #btrfs can't snapshot to a location that's in fact on the same disk and filesystem, but has been mounted separately as a subvolume.
Makes me question my choice of making and mounting subvolumes for /nix and /home and /var...
A #btrfs filesystem can have subvolumes, which can be mounted individually, like internal partitions. But one can also make subvolumes in a live mounted filesystem, which behave exactly like folders. Only subvolumes can be snapshotted - not subdirectories. Basically, a snapshot is just a instant copy of a directory. And if you snapshot to <subvoldir>/.snapshots, you will uselessly accumulate the .snapshots dir. But if you mounted <subvoldir> e.g. at /var, you can't snapshot to /.snapshots.
Oh! Good to know
@nobodyinperson I usually use the way #OpenSuse does it as reference. They got it all figured out, including bootable snapshots. Really cool.
@nobodyinperson as a workaround (or fundamentally), you can mount the root of the filesystem to some location; I have it at /btrfs on all my btrfs systems and make the snapshots through that mountpoint.
If you don't want it permanently visible, you could even mount it temporarily in a private mount namespace as part of the snapshot process!
@nobodyinperson You can make snapshots of subvolumes. Every subvolume is snapshotted individually.