Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support PyBI #87

Open
EpicWink opened this issue Jul 23, 2023 · 4 comments
Open

Support PyBI #87

EpicWink opened this issue Jul 23, 2023 · 4 comments
Labels
enhancement New feature or request undecided Still unsure if this makes sense / will be done / etc. -- needs more study

Comments

@EpicWink
Copy link

EpicWink commented Jul 23, 2023

Add support for packing a Python interpreter in the PyBI format, and using that interpreter at runtime.

Obviously right now that format is still in draft, but perhaps it's not much work to implement and could make PyEmpaq able to run without Python installed (or at least with an arbitrary version).

@facundobatista
Copy link
Owner

Hello @EpicWink .

For sure the PyBI format is something that I want to analyze in the future, but as you said, it's not enough stable yet.

The main conversation point here is if including something from PyBI will break the "multiplatformity" idea from PyEmpaq ("pack it once, use it in any platform").

Do you think PyBI will evolve to support something like that?

Thanks!!

@sinoroc
Copy link

sinoroc commented Aug 13, 2023

The workflow that PyEmpaq + PyBI would allow is that the end user only need a Python interpreter installed, any Python interpreter, even if the packaged application is not compatible with that Python interpreter. The Python interpreter available on the user's machine would run the bootstrap as usual, and the bootstrap code could choose (if necessary) to download a different Python interpreter as PyBI, "install" that PyBI (whatever "install" means in that case), and finally let this new Python interpreter run the actual application. So it would improve the portability.

For example if the application only runs on PyPy, but no PyPy is installed this would be no issue.

@facundobatista
Copy link
Owner

In that case it would be an improvement for the current unpack restrictions; if those exist in the configuration file and are not met by the already installed Python, instead of failing it could download the appropriate version and use it.

Thanks!

@facundobatista facundobatista added the enhancement New feature or request label Aug 14, 2023
@facundobatista
Copy link
Owner

Flagging this as "undecided" as the PEP is still in Draft state.

@facundobatista facundobatista added the undecided Still unsure if this makes sense / will be done / etc. -- needs more study label Dec 26, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request undecided Still unsure if this makes sense / will be done / etc. -- needs more study
Projects
None yet
Development

No branches or pull requests

3 participants