-
Notifications
You must be signed in to change notification settings - Fork 68
Description
Hi, I'd like to drive pythonz from another program (specifically, I was thinking of adding pythonz as a dependency of pew).
For this I tried to install pythonz with the setup.py, and apparently it can work even without running the pythonz-install step (you have to workaround some errors, but it's doable).
I'd prefer if there was no pythonz-install step altogether, it should be relatively easy to adapt it:
just use the INSTALLER_ROOT
( os.path.dirname(os.path.abspath(__file__))
works just fine even inside a setuptools-installed source code), instead of the PYTHONZ_ROOT
to get the path for patches, shell scripts, etc. (the MANIFEST.in
apparently already ships the needed ).
The update command then wouldn't obviously relied upon anymore (but as long as it can be securely downloaded, a file that specifies the new versions and the needed patches could still be downloaded into PYTHONZ_ROOT
, but this is an even bigger change).
Failing this, it'd be nice to at least be able to run a silent installation (without having to muck with the stdout). The installation message asks the user to load the supplied bashrc, but I'm also not sure: it seems mostly to be useful wrappers for completion and the like, but I don't know if by avoiding to use them I might stumble into other problems.
It'd also be useful to have it available on Pypi: Pythonbrew is already there. (This should be another issue, and I could do it myself, but it's probably best to discuss this in advance as well)
I don't know the history of Pythonbrew/Pythonz, so I'm not sure about the policy that you have about such changes. I had a look at the codebase, and apparently there're things kept only for compatibility with older python versions (as the host interpreter for pythonz, I mean), and since what I'm proposing might be controversial I haven't prepared any PR nor tweaked any line of code before opening this issue. (I'd also like to get rid of the code that uses shell=True
in subprocess.call
for example)
Sorry if this is a sort of brain-dump and not properly structured.