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.25k stars 40 forks source link

Add Sarek #464

Open pythonlover02 opened 1 week ago

pythonlover02 commented 1 week ago

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

Describe the solution you'd like Adding Sarek or Proton-For-Old-Vulkan Builds: https://github.com/pythonlover02/Proton-Sarek/tree/Stable

Describe alternatives you've considered Manually downloading the Sarek builds

Additional context Sarek (Proton-For-Old-Vulkan) is a custom Proton build featuring DXVK 1.10.3 and DXVK 1.10.3 Async, tailored for users with GPUs supporting Vulkan 1.1+ (but not 1.3+) and non-Vulkan setups. It offers patched versions of Proton-GE for improved performance on old hardware, with little enhancements to WineD3D. Originally created for two friends with GT 710 GPUs, the goal is to allow users with older GPUs to run Proton-GE without needing to use older versions.

Im the creator and maintainer of the repo, i come here because some people would really like those builds to be on ProtonUp-Qt for a more easy access, anything that i need to know, or do i am at the orders

pd: while i have a decent experience modifying code and using GitHub a im new to this of doing a public request, if i mess up anywhere just say it and i will fix it. And thx for reading :)

sonic2kk commented 1 week ago

Sounds like a good idea, can you give more information on the technical details? Including:

The repository can probably answer some of these but getting them directly from someone familiar with the project is also good, and having the answers here gives a good single reference point during implementation. :-)

while i have a decent experience modifying code and using GitHub

I'd wait until the maintainer weighs in, but if you'd like you're free to implement this yourself! Using the GE-Proton ctmod as a base is probably good, it could probably be subclassed and used in a new file called something like ctmod_sarek.py.

That may not be super straightforward to do right now but I am planning a bit of a refactor PR for GE-Proton, and it might make this an easy thing to implement!

pythonlover02 commented 1 week ago

Shure, i can give that info :)

What archive type is used, and is this likely to change, or has this changed in the past? This could impact implementation a bit, if the extension has changed before.

I will use always the .tar.gz as its the standard that i follow, and in the past it hadn't change

Does this project use standard GitHub releases only? If there are nightlies would we also want to add support for downloading these as well?

Yep standard releases only, about what releases adding i would like to only add the Sarek[version_here] and the Sarek[version_here]-async and not the testing versions. I just don’t want new users to accidentally use a testing version and mess up a game prefix. Even though I’m careful with what goes into testing, there’s always a small chance something could break.

What launchers are supported here? Steam seems like the obvious one of course, but what about Lutris, Heroic, and Bottles, which usually support Proton-based tools as well as those using Wine with patches and tweaks. While this tool may work with these launchers I'm asking this more to get an understanding ofan "official" standpoint.

For now only Steam its and will be officially supported, i will considerate making it available for others Launchers, maybe even make a version without the proton stuff so it can be used just like a normal Wine version on those launchers. But first i want this to be a little more future prof, i am at the moment teaching 2 of my closest friends of how to make the releases, add patches and anything that they need to know, so in the future if something happens to me they can take care till i come back, they had already help a loot doing testing and feedback to the builds.

Lutris may detect this tool already if installed for Steam so we may get Lutris for free / whether we like it or not, I'd need to check though.

For some reason, it doesn’t work on my PC, even though I have all the versions in the ~/.local/share/Steam/compatibilitytools.d/ directory. Both Steam and Lutris are native versions, so maybe it’s an issue with the distro package (OpenSUSE Tumbleweed).

The repository can probably answer some of these but getting them directly from someone familiar with the project is also good, and having the answers here gives a good single reference point during implementation. :-)

Just say if you or anyone needs anything more and i will add it :)

I'd wait until the maintainer weighs in, but if you'd like you're free to implement this yourself! Using the GE-Proton ctmod as a base is probably good, it could probably be subclassed and used in a new file called something like ctmod_sarek.py.

I would like to do it, but i dont have much time rn i have a loot of exams this week and the next, im currently at my university writing this on my laptop, waiting to do the Geometry and Linear Algebra 2 exam lol(hope that i write that right).

That may not be super straightforward to do right now but I am planning a bit of a refactor PR for GE-Proton, and it might make this an easy thing to implement!

That sounds really nice. Good luck with that :)

sonic2kk commented 1 week ago

Thanks for the info! This sounds like a pretty straightforward tool to add, then. We could probably add it now but I think it would make sense to base this on the GE-Proton ctmod (this is the most generic installer path, basically just downloads and extracts a compatibility tool archive), and to do that like I said I think it would make sense to wait until after a refactor PR. I don't have time to write up a PR right now and give background (I like to be detailed, for review and historical purposes, in PRs about the "what, why, how", rationale, pros/cons, future work etc).

That's good to know about other launchers, there's absolutely no problem with only Steam being supported fwiw I want to clear that up, I asked to make sure ProtonUp-Qt only lists it for "valid" launchers.

pythonlover02 commented 6 days ago

Thanks for the info! This sounds like a pretty straightforward tool to add, then. We could probably add it now but I think it would make sense to base this on the GE-Proton ctmod (this is the most generic installer path, basically just downloads and extracts a compatibility tool archive), and to do that like I said I think it would make sense to wait until after a refactor PR. I don't have time to write up a PR right now and give background (I like to be detailed, for review and historical purposes, in PRs about the "what, why, how", rationale, pros/cons, future work etc).

I understand, also i have all the time of the world, i am just doing a request feel free to add or not my tool once its all ready :), and thanks for your work

That's good to know about other launchers, there's absolutely no problem with only Steam being supported fwiw I want to clear that up, I asked to make sure ProtonUp-Qt only lists it for "valid" launchers.

Its organized and avoids problems, i really like it :+1: . About supporting other launchers its something that might come in one month or two, it really depends of how the schedule change on the short therm, also i will make a request at least one version/revision before adding that build to any release.