It's possible to create a virtual audio cable on Linux. Setting it up is very different, but it will function somewhat the same way as on Windows.
PulseAudio
If you use PulseAudio, you'll need to use pacmd
to create a loopback interface and set its monitor as an input interface to your application: pacmd load-module module-null-sink sink_name=VAC
. This doesn't work with every application (they don't always detect monitor devices).
You then need to create a combined output channel to listen to your desktop audio while splitting this to your new VAC: pacmd load-module module-combine-sink sink_name=MAIN slaves=<PREFERRED SINK>,VAC
.
Then, you can add your microphone input to this channel: pacmd load-module module-loopback sink=VAC source=<MIC> latency_msec=1
. The latency is really up to you. If you sound choppy, go higher.
Cadence
Cadence is another option, and you'll probably need it with realtime permissions.
It can create a virtual audio connector using JACK as its backend.
It allows you to save your patchbay and Studio session, which can save a lot of time. Especially if you need to launch additional shell commands.
All you need to do is configure your microphone at Configure -> Driver -> Device
.
I have a more elaborate explanation on GitHub.