Certain elements of snapd actually require the (ab)use of snapd to operate,
such as making the NVIDIA proprietary drivers available to the guest snap.
In this instance, if we happen to encounter a library from these search
paths we must unconditionally allow it to be loaded, so that we do not
break libGL resolution.
This adds initial support for issue #30.
Signed-off-by: Ikey Doherty <ikey@solus-project.com>
This new functionality is about controlling the usage of older LibreSSL
builds within Linux ports. The versions being overriden at the moment
actually come from 2015, hence having this directly in LSI.
Effectively we'll "solve" the issue of not being able to have both
LibreSSL and OpenSSL at the same time, by adding a shim mode. With this
mode we're able to provide new names for the LibreSSL libraries, so that
they can be provided explicitly for LSI usage.
For Solus we've opted to package this up as "libressl-shim", and suffixed
all of the libraries with "-libressl". This can be controlled within the
meson options for best results. For distributions already using LibreSSL
as their native SSL implementation, the `native` option will ensure that
the host libSSL (libressl) is used providing that it has the required
1.0.0 ABI compatibility symlinks.
Signed-off-by: Ikey Doherty <ikey@solus-project.com>
We're left in the awkward position that there are some games that **still**
misbehave on Linux, and generally do Dumb Things. So to get around the fact
that some vendors basically stopped caring about us, we'll create a special
`LD_PRELOAD` library that is responsible for redirecting syscalls to basically
monkeypatch broken behaviour completely.
Signed-off-by: Ikey Doherty <ikey@solus-project.com>