-
-
Notifications
You must be signed in to change notification settings - Fork 14.9k
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
Mesa: failed to load iris driver due to glibc #216361
Comments
Also, I'm not sure if this also affects Steam, but I think it does because games still use llvmpipe instead of the actual gpu driver. |
I believe this usually happens when you mix significantly different nixpkgs versions. For the OS (and thus |
root's channel was just nixos-unstable and my user just has home-manager's master. How could this happen? I don't have anything fancy beyond that. |
Well, yesterday on nixpkgs EDIT: such major changes can't happen when following stable nixpkgs, for example. |
ah, so perhaps I got bit by that. Coincidentally I'm moving back to nixos stable and h-m stable so I can game. I doubt I'll actually need the latest and greatest, so I'll be fine. I guess this can be closed, then? |
Seems like yet another instance of #95808. |
Yes, just libstdc++ instead of glibc. We've had it with some wayland lib, too, IIRC. |
You probably built part of the app with one gcc version (and thus libstdc++ version) and part with another one. |
You were right! kind of. I was using an overlay that was based on an older nixpkgs. I had to rebase that on the current master and now it works. |
No, something similar, because steam out of nowhere can't open proton games. |
Had the same issue but only with Steam games which try to access OpenGL drivers, running OGL games outside Steam worked fine. Tried both stable and unstable, but what fixed it for me was to switch to the "previous" beta branch for the Steam Linux Runtime. Not sure what the culprit was. |
i reinstalled nixos (still using stable) and proton works now. |
Hmm is this the same problem as #218238? The fix there was adding a dependency on gcc. |
i ran into this on my occasionally used laptop, |
Hit the same issue running mpv on laptop,
|
I think most people are running into this "just" because they're using a (sufficiently) different commit for their NixOS and their steam. (or forgot to pull 32-bit drivers into OS, but I think that causes different message) A "proper" fix, i.e. making even mismatching version work seems even getting further away. Upstream mesa is going towards more strict version matching than before. |
Just as an additional "workaround" (for posterity): When I needed an unstable I thought I had gotten away with any issues after additionally getting My (temporary) solution now is overlaying all opengl related deps from {
nixpkgs.overlays = [
(_: _: { # !!! overlay to force full deps on unstable opengl
mesa = unstable.mesa;
intel-media-driver = unstable.intel-media-driver;
vaapiIntel = unstable.vaapiIntel;
vaapiVdpau = unstable.vaapiVdpau;
libvdpau-va-gl = unstable.libvdpau-va-gl;
virglrenderer = unstable.virglrenderer;
xdg-desktop-portal-wlr = unstable.xdg-desktop-portal-wlr;
qemu = unstable.qemu;
})
];
hardware.opengl = {
enable = true;
# package = mesa.drivers;
driSupport = true; # for wine with openGL
driSupport32Bit = true; # for wine with openGL
extraPackages = with pkgs; [
intel-media-driver # LIBVA_DRIVER_NAME=iHD
vaapiIntel # LIBVA_DRIVER_NAME=i965 (older but works better for Firefox/Chromium)
vaapiVdpau
libvdpau-va-gl
];
};
} EDITIt appears the (time) cost of the compiling is so high (you also need to recompile things like |
For other passers-by, I wanted an older version of a package from nixpkgs, so I had just that overridden. However it conflicted with the system/current mesa also.
Based on @ppenguin 's suggestion above it was simply a matter of pinning the opengl version to the same source. Likely this will break the current opengl programs but it's easy enough for me to switch back.
|
I suppose that for such use cases it might be better to use approaches like nixGL: |
I had a similar issue where my whole system fell back to rendering with llvmpipe, reinstalling didn't fix it for me. I commented out the opengl part of my config, rebuilt, rebooted, and that fixed it. It still works when I then re-enable it. Maybe some package (Firefox?) implicitly installs another version of the media acceleration drivers, so installing them explicitly leads to the "two different versions installed" error. I'm really not sure why it continues to work when re-enabled, maybe Nix doesn't reinstall them Edit: the culprit was actually this: services.xserver.deviceSection = ''
Option "AccelMethod" "uxa"
Option "DRI" "iris"
''; Which I had disabled along with the OpenGL configuration while troubleshooting. I think the first "AccelMethod" is the trigger, which I set because tabbing out of games was causing artifacting and that seemed to fix it. |
Describe the bug
When running multiple programs like Element, Google Chrome, or trying to play something on Bottles, I get the following:
As a result, chrome/ium stuff relies on the cpu for rendering, and games straight up don't work.
Expected behavior
The driver is loaded correctly and all works fine.
Screenshots
If applicable, add screenshots to help explain your problem.
Additional context
Add any other context about the problem here.
Notify maintainers
@primeos @vcunat
Metadata
Please run
nix-shell -p nix-info --run "nix-info -m"
and paste the result.The text was updated successfully, but these errors were encountered: