libcapsule merge requestshttps://gitlab.collabora.com/vivek/libcapsule/-/merge_requests2021-08-03T18:57:40Zhttps://gitlab.collabora.com/vivek/libcapsule/-/merge_requests/46Draft: capture-libs: Add if-not-in-container flag2021-08-03T18:57:40ZSimon McVittieDraft: capture-libs: Add if-not-in-container flagWhen pressure-vessel maps LD_PRELOAD options into a container, it's not
completely obvious what to do with a plain basename. If it's
LD_PRELOAD=libMangoHud.so, then we'll want to import that library into
the container and load it. Howeve...When pressure-vessel maps LD_PRELOAD options into a container, it's not
completely obvious what to do with a plain basename. If it's
LD_PRELOAD=libMangoHud.so, then we'll want to import that library into
the container and load it. However, if it's something like
LD_PRELOAD=libcurl.so.4, then arbitrarily deciding that we will load
the one from the host system seems like it defeats the object of the
predictable runtime environment.
We can avoid this by assuming that if a particular SONAME exists in the
container, then we should probably interpret LD_PRELOADing it as meaning
use the container's version, even if the version from the provider
(host system) appears newer. The if-not-in-container flag makes this
implementable.
If the library has dependencies, they are compared between container
and provider as usual.
/cc @denittisSimon McVittieSimon McVittiehttps://gitlab.collabora.com/vivek/libcapsule/-/merge_requests/31WIP: Add "list paths" option, continued2020-02-11T19:23:26ZSimon McVittieWIP: Add "list paths" option, continuedWIP for !24.WIP for !24.https://gitlab.collabora.com/vivek/libcapsule/-/merge_requests/24Add "list paths" option to capture-libs2020-02-12T10:47:36ZLudovico de NittisAdd "list paths" option to capture-libsWith this patch it will be possible to execute `capsule-capture-libs --list 'soname-match:libGLX_*.so.0'` and get in output the list of paths instead of creating symlinks like the default behavior.
With this patch it will be possible to execute `capsule-capture-libs --list 'soname-match:libGLX_*.so.0'` and get in output the list of paths instead of creating symlinks like the default behavior.