Question
The question is if there another way that I'm just not thinking of to solve those problems below, or is it really the answer to build a python flavor with our tools? I have a proposed solution that solves the problems, but that doesn't mean it's the right answer.
Problems
I work in a support organization where we're developing tools for support on our main product. This product has it's own flavor of OS that it runs on. We have three distinct problems to solve in packaging o
The flavor of OS has it's original python binaries we can install to, but this limits us to the OS version of python which will change as a separate team that manages the OS. This is expected to change over the next 2 years between releases 3.4, 3.5, and 3.6 of python - which have changes that affect libraries we use consistently, for better and worse.
The tools that we build are also used as standalone tools at sites with no connectivity externally for analysis. We're currently limited to "hope the python that's on wherever they're using it plays nice".
There are significant performance improvements in later versions of python that we would like to take advantage of, and can't without upgrading to 3.6, but that removes our ability to use the older versions because of some significant differences in the python lib that break things in one vs. the other.
My original approach was to try and make a standalone virtualenv that was relocatable, but the more I looked at that code, the more I found that it's just editing PYTHONHOME and PATH, and if you wanted it to be relocatable, you have to copy all the binaries anyway, or it's only usable if the host has the version of python you're built for. This also had the downside of needing a lot of modification to the virtualenv scripting so that the shebangs were modified, the paths were updated, etc - and would need to be updated on every move, or have dynamic shebangs.
Proposed Solution that feels wrong
Right now I'm looking at creating our own "flavor" of python - but that feels like bringing an axe to a dinner party to cut your carrots. It solves all of the problems of multiple locations that it could be used all having a consistent up to date version of python with the tools we've installed, so all the users would need to do is run a script that updates the PATH with the /bin where these things are installed.
So back to the question:
Is there another way that I'm just not thinking of to solve those problems, or is it really the answer to build a python flavor with our tools? Am I making this feel wrong because of inexperience, or is this a valid answer I should be considering?