I really tried to use PyInstaller and Nuitka to deploy a Python command line [1] to Windows, Mac, and Linux users. We couldn't get around some system dependencies like OpenSSL needing to be available and not broken on user machines. We ended up re-writing the whole program from Python into Go [2].

Using Go solved so many long-tail bugs for us and just simplified the whole process of shipping code to user machines.

Here's the old but working build script that built both PyInstaller and Nuitka [3].

[1] https://github.com/wakatime/legacy-python-cli/tree/standalon...

[2] https://github.com/wakatime/wakatime-cli

[3] https://github.com/wakatime/legacy-python-cli/blob/standalon...

And if you need python-like configurability/reprogrammability, with go, you can use Starlark.

https://github.com/bazelbuild/starlark