Wine 9.0 breaks

I recently updated to 24.05 and my one wine application won’t start now - it complains about missing dll’s.
I have wine installed in my config:

 environment.systemPackages = with pkgs; [
    wineWowPackages.stable
    winetricks
    wineWowPackages.waylandFull
  ];

The last wine version 8.0.2 worked well. Anyone run into this and/or know how to fix it?

Note that wineWowPackages.waylandFull is a not-actively-maintained fork of Wine 8.2, not Wine 9.0. I don’t know if that’s the cause of your problems or not but it’s a potential point of confusion; you should make sure you’re running the Wine you think you are.

I wish that were it. I’ve tried fixing this problem a few times and that is the config I landed on last that wasn’t working. Can I just pull that waylandFull out? I wasn’t sure why it would be used as I was running Wine 8.0.2 fine under wayland in 23.11 without it.

Probably.

All flavors of Wine can run via XWayland. The fork that waylandFull uses added an additional backend that Wine can be configured to use that uses Wayland directly instead of via XWayland. In Wine 9, the author of that fork has begun the long-running process of adding that backend to mainstream Wine, but I don’t know if it’s practically usable yet, and it very likely isn’t being selected by default.

(I’m still using waylandFull for my Wine needs, because it works and I haven’t needed to invest in changing it yet, but I’m doing so because I know I need some Wayland-only features.)

What DLLs are missing? Does the issue occur with a new prefix? You may need to update your prefix for Wine 9.0 (using WINEPREFIX=<path> wineboot --update).

1 Like

Regarding Wayland support in Wine 9.0, it can be enabled using wineWowPackages.stable.override { waylandSupport = true; }.

From what I understand, it’s still a work in progress. I’m pretty sure there are improvements in unstable compared to stable, but I run and maintain Wine on Darwin, so that’s just going by the release notes.

Ah, yes, that was the problem! I ran WINEPREFIX=~/.wine wineboot --update and it fixed the dll problems and now my windows program works again.
Thank you!

1 Like