Using Pyinstaller it works out in the end, but after everything, it would have been better to use a language meant for user-facing applications.
I need to, because otherwise I wouldn't be able to package it for Windows users.
The app is also closed source.
I cannot easily package the application for Linux users, because of so many different flavours of Linux, so many different combinations of Python and Qt versions.
Which is why I've given up on a pure Linux version and I'm in the middle of adapting it to work under WINE alongside Elite: Dangerous also running under WINE, instead.
edit: including virtualenvs and conda environments have 41 python.exe files on my workstation right now.