I am developing something in Python which comes as a Python - based extension to a Java component which gets installed transparently to the end user via Maven.
Python is great to implement the functionality needed, but how to make sure Python and the necessary packages are installed on Windows, Mac, and Linux is a nightmare.
Python is extremely complex to set up and even more so when environments should get used and specific version dependencies exist. For an end user who does not want to know anything about Python and just use the software it is even worse, especially on Windows.
For my own use as a developer I always go with conda and conda environments. But there are many different ways for how to set this up, get python on the path or not, need to figure out where the installation is located etc.
So I was thinking to provide my own completely separate python environment. This apparently can be achieved for Windows with the “embeddable zip” but there is nothing like that prepared for Linux or Mac. Why?
How do people do this, if at all?
All the ways so far require users to go through a number of error-prone steps, and those ways may fail if the user already has a Python installation or environment active, may interact with system wide Python installations and so on.
I find it really hard to figure out how to get a properly prepared zero-install app running on all systems with Python.