lmstudio-ai / venvstacks

Virtual environment stacks for Python
https://lmstudio-ai.github.io/venvstacks/
MIT License
1 stars 0 forks source link

Standalone executable support? #55

Open ncoghlan opened 1 day ago

ncoghlan commented 1 day ago

venvstacks assumes that there will be a containing runtime application which handles unpacking everything appropriately on the destination system.

While that certainly covers a lot of use cases, it would also be interesting to support something akin to the --scie lazy options that pex supports: https://docs.pex-tool.org/scie.html#lazy-scies (where previously installed components are used if they exist on the destination system, but downloaded if they aren't). (This lazy runtime installation feature in pex is the closest thing I've found to a previously existing solution for what venvstacks offers, but even it is missing the ability to separate and share framework layers between applications).

The question mark on this issue title comes from the fact that I'm not sure this idea should be a venvstacks feature. It feels like it would be more appropriate in a wrapper utility that uses venvstacks to build the layer archives, and then something like pex to turn those layers into a standalone executable.

Note "scie" (pronounced "ski") comes from https://github.com/a-scie/, and is the basis of https://docs.pex-tool.org/scie.html