Since the multilib flag was now removed from package.use.force, users by default will get 64-bit-only nvidia-drivers on amd64. So app-emulation/emul-linux-x86-opengl should probably explicitly pull in nvidia-drivers[multilib] when USE=video_cards_nvidia to ensure nvidia users get a fast opengl library instead of mesa.
Wouldn't be better to enable "multilib" USE flag for nvidia-drivers by default on multilib profiles?
(In reply to Pacho Ramos from comment #1) > Wouldn't be better to enable "multilib" USE flag for nvidia-drivers by > default on multilib profiles? That issue is orthagonal, the dependency should still be set so that the expected files are in place.
But emul-linux-x86-opengl doesn't need nvidia-drivers[multilib] for the libs it does include :/ I think x11-base/xorg-drivers would fit better for this purpose of installing drivers for people easily
(In reply to Pacho Ramos from comment #3) > But emul-linux-x86-opengl doesn't need nvidia-drivers[multilib] for the libs > it does include :/ > > I think x11-base/xorg-drivers would fit better for this purpose of > installing drivers for people easily Well, there needs to be some package which pulls in nvidia-drivers[multilib] and which is almost certain to be installed by users of 32-bit game binaries or other tools; emul-linux-x86-opengl seemed like a good candidate for the role because 32-bit game binaries already depend on it. But I can also see your point. CC-ing xorg-drivers and nvidia-drivers maintainers.
Using virtual/opengl or app-emulation/emul-linux-x86-opengl would be ok with me. x11-base/xorg-drivers does not sound like a good idea, that is only for the DDX parts, not OpenGL.
(In reply to Chí-Thanh Christopher Nguyễn from comment #5) > Using virtual/opengl or app-emulation/emul-linux-x86-opengl would be ok with > me. > > x11-base/xorg-drivers does not sound like a good idea, that is only for the > DDX parts, not OpenGL. And virtual/opengl is used not just for pulling in the gl library but also for headers, which means mesa or opengl-apple; nvidia-drivers does not install gl headers.
(In reply to Alexandre Rostovtsev from comment #6) Although something like the following ugly logic for virtual/opengl should work: RDEPEND=" video_cards_nvidia? ( x11-drivers/nvidia-drivers amd64? ( abi_x86_32? ( x11-drivers/nvidia-drivers[multilib] ) ) media-libs/mesa[${MULTILIB_USEDEP}] ) !video_cards_nvidia? ( || ( media-libs/mesa[${MULTILIB_USEDEP}] media-libs/opengl-apple ) )"
(In reply to Alexandre Rostovtsev from comment #6) > (In reply to Chí-Thanh Christopher Nguyễn from comment #5) > > Using virtual/opengl or app-emulation/emul-linux-x86-opengl would be ok with > > me. > > > > x11-base/xorg-drivers does not sound like a good idea, that is only for the > > DDX parts, not OpenGL. > > And virtual/opengl is used not just for pulling in the gl library but also > for headers, which means mesa or opengl-apple; nvidia-drivers does not > install gl headers. Installing the headers wouldn't fix all the toolkits that link against media-libs/mesa, so adding x11-drivers/nvidia-drivers to virtual/opengl's RDEPEND wouldn't help much on its own, even if nvidia-drivers did install the Khronos OpenGL/EGL/GLES* headers.
The emul-linux-x86 packages have been removed.