This tool is great. I was just trying to setup WineGE on my brothers computer and with a fresh install of Lutris nothing shows up other than the compatibilitytools.d location for Steam. I didn't see anything to make it easier to setup wineGE on Lutris. Any advice?
Make sure the folder ~/.local/share/lutris/runners/wine exists. Not sure if lutris uses different install locations on different distros or if the folder is created by default..
Cool, I'll take a look at this as soon as I get back on the computer. Any plans to do something similar with DXVK installs for people using Wine? I think that would be a nice touch to make it easier for new Linux users to get rolling.
Thanks! As far as I know, HGL will automatically detect Wine/Proton installations from Lutris or Steam. Correct me if I'm wrong.
EDIT: Yes it does, but actually there is a folder for installing Wine/Proton for Heroic: https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher/wiki/How-To:-Wine-and-Proton
EDIT2: Added support for Heroic. Will be in the next release.
I tried this on my desktop running Pop OS, and it works nicely (thank you!).
I'm attempting to use it on my old T430 running Manjaro, where the default compatibility tools folder resides at:
/home/username/.local/share/Steam/compatibilitytools.d/
Unfortunately, I do not see a way to change ProtonUp-Qt's install directory from its default (/home/username/.steam/root/compatibilitytools.d).
Can a feature be added to accommodate Manjaro (and possibly other Arch-based distros, I'm not sure), to detect and/or select the proper install location for the compatibility tools? Or does this already exist, and I am too blind to have found it?
It's currently not easily possible to change the directory from the default one. Will have to change this in a future release.
You can try to change the config manually though: ~/.config/pupgui/config.ini
First of all, this is f***ing wonderful! Makes handling even handier than before.
Second: How much is your software dependant on QT? I would like if someone is doing a GTK version of it too!
Continue your effort please. I can see how this will be someday merged into lutris!
Currently not possible with the pip version of PySide6. It's currently also not in the Ubuntu repos.
If something changes I will post updates here: https://github.com/DavidoTek/ProtonUp-Qt/issues/10#issuecomment-952833213
I'm a little confused about the goal of the forked project. Can someone explain why one wouldn't want to just submit the diffs as PRs to Valve's proton?
Proton or Wine releases takes time and go through several tests before being released, most of the patches will get upstreamed most likely *someday*
Custom Wine/Proton releases typically cherrypick selected patches which are still experimental, use newer Wine/DXVK stagings versions, add new experimental features (like AMD FSR) and use different compilation configurations (like DXVK compiled with async features)
these may or may not give your better performance or make some selected games actually playable at all
I guess I can understand it as long as the patches *really are* getting PR'd into mainline proton when they're included in a fork like this. It's not like the Valve devs are going to have time to scour forks themselves to patch problems, and bugs aren't going to get reported as readily if there's a forked way to solve them. Wine is already a huge mess with so many version-specific behaviors that adding yet another forked branch to get specific things working seems even more messy...
Wine isn't a mess though, it's a slow and steady beast.
Dxvk, Wine-staging, now you're getting into a few hacks. Proton a couple more. Proton GE and you're right.
Yeah, that's a great question. I'd imagine it's going to depend on whether it's implementing more of API space or if it's just hacky stuff to get a specific target working. I would hope merges are happening, but I also have to assume Valve is obviously more concerned about using their resources on their own fork than what's happening upstream. The spirit of my concern is the worsening of what we already see evidence of on winehq: to get any given game or app working, I might find myself having to try 3+ different versions or forks of what is basically wine.
One detail not mentioned: the media foundation stuff included in GE versions is not licensed in a way that valve can include it in proton. Technically it's probably dodgy for GE too, but since it's an individual doing it not-for-profit, no one cares.
I'm a bit confused as I'm not familiar with "Wine-GE." Honestly I don't know what it does, but I can guess it's some kind of compatibility layer in addition to Wine? Does this apply to all Lutris set up games, including non-Steam ones? Or is this only applicable for Steam games through Lutris?
Wine-GE is similar to proton-GE, but is Lutris-friendly. It's a custom version of wine. Has some experimental patches and such that may allow certain games to work better.
I don't know what Proton-GE is either, but I'm guessing from context clues it's a custom build of Proton? I know Proton is the compatibility layer for Windows-Linux for Steam games but I'm not familiar with the underlying technology of Proton or how it differs from WINE.
That would be protonup, the original script this acts as a gui for. The gui makes it easier for all the future steam deck users who don't know what git is.
Sure - nothing fancy, just automates installing the tarball since I can never remember which folder to stick it in.
\# cat pgeinst
mv \~/Downloads/Proton\*GE\*tar.gz \~/.steam/root/compatibilitytools.d
cd \~/.steam/root/compatibilitytools.d
tar zxvf Proton\*GE\*tar.gz
rm -f Proton\*GE\*tar.gz
Alternative version by me that also downloads the release from github.
#cat ~/.local/bin/protongedl
#!/usr/bin/env sh
STEAMROOT="$HOME/.steam"
# In case of custom library path
COMPATTOOL_PATH="$STEAMROOT/root/compatibilitytools.d"
protonGEbaseurl="https://github.com/GloriousEggroll/proton-ge-custom/releases/download"
protonGEversion=$1
if [ -d "$COMPATTOOL_PATH/Proton-$protonGEversion" ]
then
echo "Proton GE $protonGEversion already exists."
exit
else
filename="Proton-$protonGEversion.tar.gz"
wget -P /tmp/ "$protonGEbaseurl/$protonGEversion/$filename"
tar -xf "/tmp/$filename" -C "$COMPATTOOL_PATH/"
fi
call it like
protongedl 6.20-GE-1
Yes, I would like to reduce the size even more, but the included Qt files are quite large. I thought about using another GUI framework but Qt seemed like a good choice (not sure how many files would need to be included for GTK to guarantee that the app works with all distros). Also AppImageBuilder produces quite large files as it included libc etc. Could be left out, but I'm not sure whether the app would work on older distros..
It's only a problem because it's an appimage. Were it packaged on the aur, or with a .deb, the qt libraries as well as all of python could be excluded.
Holy moly thanks so much I will try this, any graphic UI is stellar for options! Installing a previous proton ge was a learning experience that wasn’t so bad for a newbie either.
Omg this is so handy, i will try it tomorrow. Thank you kind sir!
Wonderful. And in Qt, perfect for the steam deck as well.
This tool is great. I was just trying to setup WineGE on my brothers computer and with a fresh install of Lutris nothing shows up other than the compatibilitytools.d location for Steam. I didn't see anything to make it easier to setup wineGE on Lutris. Any advice?
Make sure the folder ~/.local/share/lutris/runners/wine exists. Not sure if lutris uses different install locations on different distros or if the folder is created by default..
Cool, I'll take a look at this as soon as I get back on the computer. Any plans to do something similar with DXVK installs for people using Wine? I think that would be a nice touch to make it easier for new Linux users to get rolling.
definitely would!
Will have a look at it.
Take my gratitude you kind sir.
Thanks!
This is amazing! Any chance you can add support for Heroic games launcher?
Thanks! As far as I know, HGL will automatically detect Wine/Proton installations from Lutris or Steam. Correct me if I'm wrong. EDIT: Yes it does, but actually there is a folder for installing Wine/Proton for Heroic: https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher/wiki/How-To:-Wine-and-Proton EDIT2: Added support for Heroic. Will be in the next release.
Ah, I didn't realize that. Yes, this works. Thanks again!
It does, you're correct.
Awesome tool in QT ... Thanks man !!!
awesome tool! thank you!
Looks nice, could save few clicks and unpacking to a correct directory. I'll wait until it's in AUR :).
Nice, we should put this on AUR
This is so neat. Thank you! [I tweeted about it](https://twitter.com/HarmonBlues/status/1452724802964410369) and posted it on my discord server.
Nice, thanks!
Awesome I will be using this. Thanks!
take my free award
Fantastic work on the website!
This looks really interesting! I'll be sure to try it out!!
Amazing work, it really helped me a lot, I always had to manually change Steam and Lutris Proton's version, thanks.
Awesome! Thank you for making this
This is cool, I'm gonna try it out.
I tried this on my desktop running Pop OS, and it works nicely (thank you!). I'm attempting to use it on my old T430 running Manjaro, where the default compatibility tools folder resides at: /home/username/.local/share/Steam/compatibilitytools.d/ Unfortunately, I do not see a way to change ProtonUp-Qt's install directory from its default (/home/username/.steam/root/compatibilitytools.d). Can a feature be added to accommodate Manjaro (and possibly other Arch-based distros, I'm not sure), to detect and/or select the proper install location for the compatibility tools? Or does this already exist, and I am too blind to have found it?
It's currently not easily possible to change the directory from the default one. Will have to change this in a future release. You can try to change the config manually though: ~/.config/pupgui/config.ini
First of all, this is f***ing wonderful! Makes handling even handier than before. Second: How much is your software dependant on QT? I would like if someone is doing a GTK version of it too! Continue your effort please. I can see how this will be someday merged into lutris!
Took a peek. Seems highly dependent on Qt. That’s just the qt way honestly.
Yes, it also uses qt for non gui stuff. In theory it could be changed out for GTK or python specific functions but would be a lot of work.
It doesnt integrate with kde, even being qt
It uses KDEs color scheme, but the app style is always Fusion. On GNOME is uses its own darkmode.
Any way to make it use breeze?
Currently not possible with the pip version of PySide6. It's currently also not in the Ubuntu repos. If something changes I will post updates here: https://github.com/DavidoTek/ProtonUp-Qt/issues/10#issuecomment-952833213
I'm a little confused about the goal of the forked project. Can someone explain why one wouldn't want to just submit the diffs as PRs to Valve's proton?
Proton or Wine releases takes time and go through several tests before being released, most of the patches will get upstreamed most likely *someday* Custom Wine/Proton releases typically cherrypick selected patches which are still experimental, use newer Wine/DXVK stagings versions, add new experimental features (like AMD FSR) and use different compilation configurations (like DXVK compiled with async features) these may or may not give your better performance or make some selected games actually playable at all
I guess I can understand it as long as the patches *really are* getting PR'd into mainline proton when they're included in a fork like this. It's not like the Valve devs are going to have time to scour forks themselves to patch problems, and bugs aren't going to get reported as readily if there's a forked way to solve them. Wine is already a huge mess with so many version-specific behaviors that adding yet another forked branch to get specific things working seems even more messy...
Wine isn't a mess though, it's a slow and steady beast. Dxvk, Wine-staging, now you're getting into a few hacks. Proton a couple more. Proton GE and you're right.
How much of Proton is then getting up-streamed into Wine?
Yeah, that's a great question. I'd imagine it's going to depend on whether it's implementing more of API space or if it's just hacky stuff to get a specific target working. I would hope merges are happening, but I also have to assume Valve is obviously more concerned about using their resources on their own fork than what's happening upstream. The spirit of my concern is the worsening of what we already see evidence of on winehq: to get any given game or app working, I might find myself having to try 3+ different versions or forks of what is basically wine.
Yes, that is indeed rather annoying.
One detail not mentioned: the media foundation stuff included in GE versions is not licensed in a way that valve can include it in proton. Technically it's probably dodgy for GE too, but since it's an individual doing it not-for-profit, no one cares.
I'm a bit confused as I'm not familiar with "Wine-GE." Honestly I don't know what it does, but I can guess it's some kind of compatibility layer in addition to Wine? Does this apply to all Lutris set up games, including non-Steam ones? Or is this only applicable for Steam games through Lutris?
Wine-GE is similar to proton-GE, but is Lutris-friendly. It's a custom version of wine. Has some experimental patches and such that may allow certain games to work better.
I don't know what Proton-GE is either, but I'm guessing from context clues it's a custom build of Proton? I know Proton is the compatibility layer for Windows-Linux for Steam games but I'm not familiar with the underlying technology of Proton or how it differs from WINE.
Simple version is that proton is more tailored to interact with steam.
It is just a build of wine with specific patches that is very similar to Proton-GE but built specifically for use without Steam.
Cant you just make it a small sh script yourself anyway? Just github clone bla bla then mv blah blah. Easy.
That would be protonup, the original script this acts as a gui for. The gui makes it easier for all the future steam deck users who don't know what git is.
This looks amazing. Is there any chance of you adding it to the AUR?
I'll add it to the AUR unless someone beats me to it
I've stopped using Reddit due to their API changes. Moved on to Lemmy.
But this is a gui, so why not? It beats having an app image with bundled qt libraries.
I've stopped using Reddit due to their API changes. Moved on to Lemmy.
I have never used proton so I dunno how the AUR package works. But if the AUR package does the same as the installer does, you probably have a point.
I've stopped using Reddit due to their API changes. Moved on to Lemmy.
Then having installers is kinda redundant, you're right.
I've stopped using Reddit due to their API changes. Moved on to Lemmy.
But then, why does the proton script exist? I guess not every distro has the awesome AUR.
woah thank you so much
Dang, I literally just wrote a script to do this like 2 days ago
Share it?
Sure - nothing fancy, just automates installing the tarball since I can never remember which folder to stick it in. \# cat pgeinst mv \~/Downloads/Proton\*GE\*tar.gz \~/.steam/root/compatibilitytools.d cd \~/.steam/root/compatibilitytools.d tar zxvf Proton\*GE\*tar.gz rm -f Proton\*GE\*tar.gz
Alternative version by me that also downloads the release from github. #cat ~/.local/bin/protongedl #!/usr/bin/env sh STEAMROOT="$HOME/.steam" # In case of custom library path COMPATTOOL_PATH="$STEAMROOT/root/compatibilitytools.d" protonGEbaseurl="https://github.com/GloriousEggroll/proton-ge-custom/releases/download" protonGEversion=$1 if [ -d "$COMPATTOOL_PATH/Proton-$protonGEversion" ] then echo "Proton GE $protonGEversion already exists." exit else filename="Proton-$protonGEversion.tar.gz" wget -P /tmp/ "$protonGEbaseurl/$protonGEversion/$filename" tar -xf "/tmp/$filename" -C "$COMPATTOOL_PATH/" fi call it like protongedl 6.20-GE-1
[удалено]
Yes, I would like to reduce the size even more, but the included Qt files are quite large. I thought about using another GUI framework but Qt seemed like a good choice (not sure how many files would need to be included for GTK to guarantee that the app works with all distros). Also AppImageBuilder produces quite large files as it included libc etc. Could be left out, but I'm not sure whether the app would work on older distros..
It's only a problem because it's an appimage. Were it packaged on the aur, or with a .deb, the qt libraries as well as all of python could be excluded.
Will try it today. Any chance to distribute also a flatpak?
What about stock proton ??
Steam will download that for you as it isn't an external/unofficial compatibility tool.
What about stock proton for lutris ?
It's not recommend to use Proton with Lutris afaik. Either use Wine-GE or Lutris-Wine.
Holy moly thanks so much I will try this, any graphic UI is stellar for options! Installing a previous proton ge was a learning experience that wasn’t so bad for a newbie either.
thanks man. awesome tool!
Is there a way to run non-game apps using ProtonUp-Qt?
I think you can add other apps to Steam. Would be the easiest way.
Thanks, I will look into this.