-
Notifications
You must be signed in to change notification settings - Fork 23
Description
#338 adds support for targeting different versions of glibc when building Linux layers.
Targeting different libc variants is a more complex endeavour, as:
muslsupport would need to be added to https://github.com/frostming/pbs-installer- logic would need to be added to ensure all layers in a stack were using the same target libc variant (since mixing C runtimes in one process won't work properly).
This is different from mixing versions, where its OK if different layers (including the runtime layer) have different minimum version requirements, it just makes the overall stack minimum target version the highest of the layer minimum versions.
This is a low priority, since it mainly comes up in the context of Linux containers (where official Docker containers are based on the Alpine Linux, which uses musl libc), and venvstacks is primarily a technology aimed at bundling Python runtimes and environments into desktop applications.
It may also be worth exploring including macosx_target and linux_target information when the --tag-outputs option is passed to venvstacks publish (that could potentially be split out into its own issue, but #328 may provide a different way to handle the problem by making parallel layer stacks easier to define, letting that kind of information be encoded directly into layer names for layers that are only built for a specific target OS).