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
Unresolved soname dependencies in x11-drivers/nvidia-drivers #532
Comments
I have AMD so correct me if I'm mistaken, but Nividia's drivers are a proprietary blob and unless Nvidia want's to provide the source or a version compiled against LibreSSL this is impossible to support? |
Can't a compatibility library be written?
Maybe also remove the fallback as Ionen described. |
To be forward I would not know how.
My guess would be that subtle differences between LibreSSL and OpenSSL would be problematic here, but would need someone with Nvidia hardware to test it out and submit the fix. If you or someone else can figure it out PRs would be welcome. Unfortunately I don't think I can be very helpful here... |
I will try to do something, but for the next few weeks I will be mostly away. |
Don't know if you followed what was said on the linked topic and the changes to the ebuild.
This can be fixed either by maintaining yet another ebuild in this overlay, or by adding dev-libs/openssl-3.1.2 Also, maybe you can help me properly fixing this.
I don't see any undefined symbols regarding openssl. |
Thanks for the update.
I believe you might be misunderstanding the error, it seems to be depending on the slot version |
Actually now that I slept on it my idea is flawed, we will need to change the slot on the fake openssl package everytime the libressl API changes requiring other packages to be rebuilt which makes it impossible to match the package in ::gentoo... I also believe package.provided is only on the user's local system, but please correct me if I am mistaken? This leaves the solution is to add nvidia to the overlay and then sync it every time it updates in ::gentoo, but that will be very tedious and I personally can't test that, but PRs welcome. Bluntly this is one of the reasons why it would be much easier if libressl was still in the ::gentoo repo, just getting rid of the fake openssl package would make integration much easier.... |
It was once possible to use package.provided in profiles. Note that using package.provided like this seems to cause problems:
This is the dev-libs/openssl::libressl being slated for removal.
Openssl 1.1 is on the chopping block, so maybe we can get the slot dependency to be relaxed.
But we can't do that for whatever reason. |
Yea, that should of been obvious in retrospect...again this doesn't seem to be the right approach because we need the dummy openssl to trigger rebuilds for libressl API changes.
I would suspect that would be acceptable for ::gentoo when openssl 1.1 is finally removed. Until then I think the easiest is to just edit the nvidia ebuild. |
After looking further into this(mostly reading error messages), It seems that cs2(formerly cs:go) needs this. I decided to make this small "repo": https://github.com/stefan11111/libcrypto-compat Using this, the unresolved soname dependency error from portage is gone. However, there seems to be a better solution to all this:
So libressl does have that library, but it has a different soname:
In that case, the best way to fix this is to somehow build/make a copy of libcrypto.so and give it a different soname. Any idea how to do that? |
Sorry, I'm not really sure, but maybe |
I found a way to properly solve this with a hook:
I still can't get rid of that dummy package and put the hook directly on libressl or openssl because portage doesn't see it and throws that warning. |
See: https://forums.gentoo.org/viewtopic-t-1164119.html
Ionen has explained it there better than I can.
The text was updated successfully, but these errors were encountered: