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
[RFC] libglvnd: depend on mesa #18712
Conversation
Also grep license from README
what do you mean exactly by "relying"? I expect that 99% of nvidia users won't care about the wasted space of ~55MB mesa drivers (maybe a bit more due to deps) they don't actually use and they will just leave them installed. The 1% that cares can remove them via ignorepkg. I think that having |
I wouldn't say too complex, but I agree that adding the duplicate package is ugly |
Now that we are using |
Ah yes, this would reintroduce the build cycle. So maybe let's freeze the other PR until we arrive at a decision here. Anyway, I don't like this PR. The alternative to solve this problem would be to make xbps-src "less strict" with rundeps. I have thought to make it build all rundeps after the dependant instead of before, but that is probably a too drastic change from current behaviour. Or maybe introduce some way to tell it to skip building when it's safe to do so, but it could be misused... what do you think? |
I think either of those would still make bootstrapping pretty complicated. What we'd need is some way of saying that a certain dependency isn't necessary when the package is a makedeps, but when it's installed normally it should be there. This gets hairy pretty quick, unfortunately. |
Can you explain why the build-rundep-after-dependant would make bootstrap complicated? I'll link again my proposal #20438 (comment) and following comments.
Isn't that what |
Re-reading this and that proposal, I'm not sure on which point I disagreed with you. |
Pull Requests become stale 90 days after last activity and are closed 14 days after that. If this pull request is still relevant bump it or assign it. |
libglvnd
doesn't currently install any OpenGL implementation, which makes GL unavailable ootb until the mesa drivers (packagemesa-dri
) are installed. This happens when installingxorg-minimal
(which doesn't pull in the graphics drivers) or a Wayland compositor. Previously,libGL
shipped the software rendering driver, so that GL was available (but not optimal), and users were expected to install themesa-...-dri
matching their GPU. Now that all dri drivers are in a single package, it is possible to provide hardware acceleration by default as soon as any program which links with GL is installed.This PR modifies dependencies so that:
GL app -> libglvnd -> mesa -> mesa-dri
Caveats:
libglvnd
appears as dependency in some subpackages (maybe those deps can be removed?)I initially thought about making
libglvnd
depend on a virtualgl-vendor
which would be provided bymesa
andnvidia*
, but the nvidia packages required non-trivial modifications. Nvidia-only users can uninstall the mesa drivers viaignorepkg
anyway.