When using the nvidia proprietary drivers, mesa isn't needed, since the proprietary nvidia drivers implement everything in mesa. However, some programs need libgbm from mesa to work. For these situations, building the entire mesa is just wasteful, with no benefits. As such, I propose that libgbm be split from USE=opengl into it's separate USE flag. A bug regarding this was just fixed upstream. See: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10585 https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30716 https://gitlab.freedesktop.org/mesa/mesa/-/issues/11763 https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31074 https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31223 https://github.com/NixOS/nixpkgs/pull/338109 To quote from one of the above mr's, further showing that use cases such as this are the reason this was merged upstream: >This does a few things: > >Applications linked against a non-matching GBM can load the right version of >the backend >from the environment, avoiding GBM/Mesa version mismatches in many cases >Distros that want to split off libgbm into a separate package from the actual >drivers >get to not ship 40MB of libgallium_dri >The loader logic becomes way less complex > >Daniel Stone >@daniels ยท 1 week ago >Owner > >Yeah, this looks good to me. The logical continuation is that GBM finally gets >split out into its own repo and gains something like the Vulkan loader and/or >GLVND have in terms of proper ICD search paths. But this is a good first step >on that path. Thanks Ilya. >
> However, some programs need libgbm from mesa to work. > For these situations, building the entire mesa is just wasteful, with no benefits. > As such, I propose that libgbm be split from USE=opengl into it's separate USE flag. That doesn't seem like it would accomplish your goal of not installing `media-libs/mesa`. It sounds like what you actually want is a separate libgbm package that you could install without `media-libs/mesa`.
(In reply to Matt Turner from comment #1) > > However, some programs need libgbm from mesa to work. > > For these situations, building the entire mesa is just wasteful, with no benefits. > > As such, I propose that libgbm be split from USE=opengl into it's separate USE flag. > > That doesn't seem like it would accomplish your goal of not installing > `media-libs/mesa`. > > It sounds like what you actually want is a separate libgbm package that you > could install without `media-libs/mesa`. Either way would work. Yes, with a separate USE=gbm flag, I would still emerge media-libs/mesa, but that emerge would take seconds instead of ~15 minutes. I don't have a problem having a package named media-libs/mesa on it, but the name of the package I install on my system to provide libgbm and just libgbm isn't that important to me.
(In reply to stefan11111 from comment #2) > (In reply to Matt Turner from comment #1) > > > However, some programs need libgbm from mesa to work. > > > For these situations, building the entire mesa is just wasteful, with no benefits. > > > As such, I propose that libgbm be split from USE=opengl into it's separate USE flag. > > > > That doesn't seem like it would accomplish your goal of not installing > > `media-libs/mesa`. > > > > It sounds like what you actually want is a separate libgbm package that you > > could install without `media-libs/mesa`. > > Either way would work. > Yes, with a separate USE=gbm flag, I would still emerge media-libs/mesa, but > that emerge would take seconds instead of ~15 minutes. > > I don't have a problem having a package named media-libs/mesa on it, but the > name of the package I install on my system to provide libgbm and just libgbm > isn't that important to me. Though, given that, from what I read in the upstream links, libgbm might be put in a separate repo in the future, a separate media-libs/libgbm or whatever package might be better.