DavidoTek / ProtonUp-Qt

Install and manage GE-Proton, Luxtorpeda & more for Steam and Wine-GE & more for Lutris with this graphical user interface.
https://davidotek.github.io/protonup-qt
GNU General Public License v3.0
1.23k stars 40 forks source link

Add Wine Builds #90

Open trymeouteh opened 2 years ago

trymeouteh commented 2 years ago

Is your feature request related to a problem? Please describe. No

Describe the solution you'd like Adding the ability to download Wine and Proton builds from Kron4ek github repo

Describe alternatives you've considered Manually downloading wine builds

Additional context Kron4ek offers the vanilla wine and proton builds. ProtonUp-Qt could add these to be available for download and do the checksum automatically as a secure way of downloading these wine and proton builds.

DavidoTek commented 2 years ago

Kron4ek Vanilla Wine builds can already be installed for Lutris. Proton builds for Steam and non-vanilla(staging, tkg, ...) builds can't be installed yet, but I may add those later.

do the checksum automatically as a secure way of downloading these wine and proton builds

I have to see how I can download the checksum, as it is not available as a downloadable file but rather included in the description of the release. Should be possible somehow.

hmtheboy154 commented 2 years ago

How about wine-wayland ? https://github.com/varmd/wine-wayland

DavidoTek commented 2 years ago

How about wine-wayland ?

Hmm, not sure how easy it would be to install as a Steam compatibility tool, as it is not meant as a Proton compatible replacement, but rather for a global installation on Arch/Manjaro...

teppyboy commented 2 years ago

How about wine-wayland ? https://github.com/varmd/wine-wayland

I could never get wine-wayland to work on my system when using the wineland launcher, and the installation process is so hacky that you download 2 arch linux packages, merging them into one and hope it works lol.

trymeouteh commented 2 years ago

It would be great to have ProtonUp-Qt easily install the Proton builds by Kron4ek for Steam, the other builds being integrated into ProtonUp-Qt will only be a extra bonus.

teppyboy commented 2 years ago

It would be great to have ProtonUp-Qt easily install the Proton builds by Kron4ek for Steam, the other builds being integrated into ProtonUp-Qt will only be a extra bonus.

@trymeouteh If you're talking about Proton builds from https://github.com/Kron4ek/Wine-Builds/releases, you don't know that "Proton" here is actually Valve's Wine and not the whole Proton compatibility tool you're expecting?

teppyboy commented 2 years ago

If that answers your question, please consider to close this issue.

sonic2kk commented 1 year ago

Supporting wine-wayland would be cool, but from some research I'm not sure how we could do it? The releases distributed on the wine-wayland repository are packages for installation on Arch Linux. The repository also seems to really only support Arch and Arch-based distros.

ProtonUp-Qt seems geared towards installing distro-agnostic, pre-compiled releases of compatibility tools (e.g., pre-compiled GE-Proton and Luxtorpeda).

Having the option to download a wine-wayland package that will only work on a subset of distributions may not be desirable. wine-wayland support would be very cool if it was just a case of being able to download and run it (we could even add the binary to the path like we do for SteamTinkerLaunch), but I don't think that is the case?


For Wine builds, as mentioned the Kron4ek builds for Lutris should suffice. Allowing those builds for Steam would probably not serve much purpose since DXVK and other components would need to be manually installed. If the goal is to have Proton with a more up-to-date Wine base, I would say Proton-tkg is the way to go in that instance (which ProtonUp-Qt already supports).

DavidoTek commented 1 year ago

We could add a Arch only ctmod, but I'm not sure if it makes that easier. People will look for the build and say "Well it worked on my old install. I don't know what a distro is". Could be useful for Steam Deck though....

wine-wayland support would be very cool

I agree. When will wine-wayland be upstreamed? That would eliminate the problem.

would be very cool if it was just a case of being able to download and run it

I think Arch binaries are compiled against way newer dependencies. They won't work on most stable distros and even if they were compiled against older library versions, they may be missing some features...

For Wine builds, as mentioned the Kron4ek builds for Lutris should suffice

Yes.

sonic2kk commented 1 year ago

We could add a Arch only ctmod, but I'm not sure if it makes that easier. People will look for the build and say "Well it worked on my old install. I don't know what a distro is"

I agree.

Could be useful for Steam Deck though....

I wonder how installs like this would work on Steam Deck? The Steam Deck has a read-only filesystem by default and, at the time of writing, uses Plasma X11. I'm not sure if SteamOS 3.4 is going to move to Plasma Wayland, since I believe it also bumps to 5.26.2.

User installed packages get reset when the Steam Deck gets a SteamOS update (separate to the Steam Client updates I believe), so it may be less useful for a regular Steam Deck. I would guess only a small amount of users would mod their Steam Deck enough to take advantage of this (disabling the read-only filesystem, moving off the SteamOS repos, and installing Plasma Wayland).

When will wine-wayland be upstreamed? That would eliminate the problem.

It'll probably be a long time. I know Collabora were working on some Wayland stuff for wine (there was a Kron4ek build for it over a year ago), but maybe wine-wayland is the successor to this work? Either way, I'm not sure when it'll be upstreamed. I'd bet solid Wayland support not hidden behind any flags or options, whether wine-wayland or another implementation, will land (pun intended) in 2 or 3 years.

I think Arch binaries are compiled against way newer dependencies. They won't work on most stable distros and even if they were compiled against older library versions, they may be missing some features...

Yup, definitely. The wine-wayland repo calls out glibc specifically, I am sure there are many more.

I'm not sure how feasible or useful it would be to include this project in ProtonUp-Qt, but at the very least there would be a good amount to consider :-)

DavidoTek commented 1 year ago

The SteamDeck ... at the time of writing, uses Plasma X11

Okay, that means it will work in Steam UI mode but not in Desktop mode...

will land (pun intended) in 2 or 3 years.

That's not good that it may land so late.

I'm not sure how feasible or useful it would be to include this project in ProtonUp-Qt, but at the very least there would be a good amount to consider :-)

EDIT: Until we have a build for Steam, I don't think we can do anything here. Lutris will most likely be used in desktop mode on Steam Deck (until we have the Godot Steam Deck UI), here it won't be useful at all.

sonic2kk commented 9 months ago

An update to the discussion on this issue just over a year later

It seems Wine in Wayland may land a lot sooner than I anticipated. This year alone, a huge amount of the core work for the Wayland driver has landed, most recently landing support for HiDPI/display scaling and Vulkan support in Wine 8.21. This is the 10th part of the overall Wine Wayland work, with some core MRs still pending for things like supporting different keyboard layouts. However, in a matter of months we could see solid Wine Wayland being used by default upstream. Of course, it may take longer for this to filter through to Proton, it depends on what version of Wine 9 that Valve rebase onto. Given how much time Valve have put into Wayland (contributing to Wayland Protocols with the Tearing and Fractional Scaling protocols, sponsoring KDE's Wayland work, and contributing to wlroots) I would argue it's in their best interests to get Wayland support into their Wine fork ASAP, so I think we'll end up seeing it before long. Not to mention, a significant amount of the Wayland work has come from Collabora's Alexandros Frantzis, and Collabora and CodeWeavers work closely with Valve afaik on Proton.

As for Steam Deck, this is my own personal speculation but since Plasma 6 will be Wayland by default, and since Valve and KDE have done enormous amounts of work on the Plasma Desktop and Wayland Protocol side to introduce HDR, and since Plasma 6 Alpha 1 already has HDR support (same article linked above has HDR details), I could see Valve wanting to move the Steam Deck's KDE Plasma over to Plasma 6 Wayland as soon as possible. If the next version of SteamOS will be 3.6, then I would say 3.7 will see a switch to Plasma 6 at the latest with the Arch snapshot bump. There are other benefits to switching to Wayland for them as well since on Wayland, native applications like Firefox can send a trigger to open the on-screen keyboard etc. Not to mention adjusting overscan for TVs, and setting a per-display scale factor for docking into 4k displays in Desktop Mode.


I'm not sure how the Wine-Wayland project will develop from here or how much thought we should put into supporting it at this point, but I'm not necessarily trying to sway one way or the other here. This is just an update on how the Wayland situation has changed under Wine quite dramatically this year alone.