How to distinguish between multiple operating systems

A simple approach for this case would be to simply find out the respective OS via the runtime library (see here) and choose the respective os_client accordingly.

But since we will offer different binaries for different OSes anyway, we could also solve the whole thing via so-called build-tags. I think that build-tags could be practical in our case, because we only need one os_client and can separate the separate implementations for each OS clearly via the build-tags.

Edited by Malte Bauch