i’d suggest starting by finding out what package in your distro actually decides where audio goes - mostly it is pulseaudio (older) or pipewire (newer).
depending on the details of how your distro and the dongle work, it could either be a simple “pactl set-default-sink <headset-name>”, or a more complicated set of udev rules or pipewire/wireplumber scripts.
note that distros using pipewire still often support a lot of pactl commands, so it may be worth looking at the simple option even when not using pulseaudio.
i think flatpak has done a lot to make this easier, but at the same time… i’ll admit i’m not a fan of it (mostly due to random issues).
the way i see it, more distros need something like arch linux’ AUR. if an application is reasonably easy to build, it really does not take much to get it into the AUR, from where there’s also a path towards inclusion in the official repos.
i don’t know too much about other distros, but arch really makes it amazingly easy to package software and publish everything needed for others to use it. i feel like linux needs more of this, not less - there’s a great writeup that puts why linux maintainers are important way better than i ever could:
https://web.archive.org/web/20230525163337/https://kmkeen.com/maintainers-matter/