Skip to content

Pythonz without pythonz-install? (or silent pythonz-install) #73

@berdario

Description

@berdario

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions