Closed kira75 closed 2 years ago
You don't need to install Wine from your package manager. On the contrary, Protontricks by default ignores the system Wine and uses the version of Wine shipped with Steam to avoid potential compatibility issues.
Can you try running protontricks -v --gui
(or the command you're using but with the -v
flag in the very beginning?) in the terminal and copy the output? You can use GitHub Gist for this and copy the link into this thread.
In addition, if the output mentions a certain Proton version, you could try to select the corresponding Proton version in Steam library, right-click and select Properties -> Local files -> Verify integrity of tool files.
I commented out the usernames with "-"
protontricks (INFO): Found Steam directory at /home/-/.steam/steam. You can also define Steam directory manually using $STEAM_DIR
protontricks (INFO): Using default Steam Runtime at /home/-/.steam/root/ubuntu12_32/steam-runtime
protontricks (INFO): WINETRICKS environment variable is not available. Searching from $PATH.
protontricks (INFO): Found 0 Steam library folders
protontricks (INFO): Currently logged-in Steam user: -
protontricks (INFO): Couldn't find custom shortcuts. Maybe none have been created yet?
protontricks (INFO): Using 'zenity' as GUI provider
protontricks (INFO): Found active compatibility tool: Proton 5.13
protontricks (INFO): Active compatibility tool is a Proton installation
protontricks (INFO): WINE environment variable is not available. Setting WINE environment variable to Proton bundled version
protontricks (INFO): WINESERVER environment variable is not available. Setting WINESERVER environment variable to Proton bundled version
protontricks (INFO): Using separately installed Steam Runtime: Steam Linux Runtime - Soldier
protontricks (INFO): Running Steam Runtime using bwrap containerization.
If any problems arise, please try running the command again using the --no-bwrap
flag and make an issue report if the problem only occurs when bwrap is in use.
protontricks (INFO): Created Steam Runtime Wine binary directory at /home/-/.cache/protontricks/proton/Proton 5.13/bin
protontricks (INFO): Attempting to run command [PosixPath('/usr/local/bin/winetricks'), '--gui']
winetricks GUI enabled, using zenity 3.32.0
warning: wineserver not found!
Could you try running the following commands?
$ protontricks -c "wine --version; wineserver --version" <appid>
$ winetricks --version
To run the first command you'll need to provide an app ID; it's the numeric ID you'll see next to each title when you run protontricks --gui
. The first command should then print wine-5.3
or something similar twice, assuming Protontricks has found both binaries correctly. The second version should print the Winetricks version.
The error message seems to originate from Winetricks, not Protontricks. Since you're running Lubuntu, if you have installed Winetricks using your package manager, you might want to try manual installation for Winetricks instead, as recommended for Debian / Ubuntu users here.
I did not install winetricks via package manager. I followed the instructions via wiki.winehq.org/Winetricks website. I downloaded the file with wget, and copied it to /usr/local/bin, then did chmod +x on the file. I also tried adding the bash-completion script to where it directed me to. Whether it needed the bash-completion script or not, I don't know.
Using winetricks command from the terminal launches the gui just fine. However from what those protontricks errors seem to say, it can't find winetricks, or wine, or wineserver? I am guessing on that, because I do not know what it is actually saying by "environmental variable is not available"
How do I even set the winetricks or protontricks environmental variables? The --help section lists the variables, but does not tell me how to set them (as in tell it where to find the location of wine, winetricks, and wineserver)
The first command that you listed displays: wine-5.13-789-gc14054e6923 Wine 5.13
The second command displays: 20210206-next - sha256sum: dbcb01e57092118f2e142799ae2b66c18e71537df294820a8210f4d65bf43557
The output seems to match what I'm getting on my own system for Proton 5.3, which means that the shell can find them properly in the environment Protontricks sets up.
Could you try running Winetricks again but use this command instead:
$ protontricks -c 'bash -x winetricks --gui' <appid>
This will print every line of execution for Winetricks which might result in a lot of output, so consider uploading to GitHub Gist to keep the thread tidy.
OK, it may be that the scripts that Protontricks creates don't have execute bit set for some reason.
Could you test by running the following command (add the username back) after running the Protontricks command again:
$ ls -lh /home/-/.cache/protontricks/proton/Proton 5.13/bin/
In my case, it looks like this:
total 24K
-rwxr--r-- 1 matoking matoking 2,1K Sep 28 19:35 msidb
-rwxr--r-- 1 matoking matoking 2,1K Sep 28 19:35 wine
-rwxr--r-- 1 matoking matoking 2,1K Sep 28 19:35 wine64
-rwxr--r-- 1 matoking matoking 2,1K Sep 28 19:35 wine64-preloader
-rwxr--r-- 1 matoking matoking 2,1K Sep 28 19:35 wine-preloader
-rwxr--r-- 1 matoking matoking 2,1K Sep 28 19:35 wineserver
In this case x in rwx is set, meaning all of the files have the execute bit as they should.
If those files exist, but they don't have the execute bit set, it may have something to do with how the filesystem is mounted. You could check if noexec
is set in /etc/fstab
.
I run .cache in tmpfs as well, and yes, I have noexec set for that (will change it). Are these files temporary (created each run)? .cache is not really a place for permanent files.
I removed noexec from the setting, and reboot, it seems to be working now.
Thanks for the help.
Protontricks creates scripts for the enabled Proton version under ~/.cache/protontricks
on each run, and the entire directory tree can be safely removed when you're not running Protontricks. ~/.local/share
could be used instead, but in that case the user would specifically have to know that the directory tree can be removed to get rid of old data (eg. scripts for old Proton versions).
Closing this issue for now. Let me know if there are any other questions.
I have no idea what to do with this error I am getting. I have wine installed via winehq-stable, I have the winetricks script (copied under /usr/local/bin), and I installed protontricks + dependencies. I am running Lubuntu 20.04. The only thing I have been able to do is launch the GUI, but as soon as I select my game and click ok, it pops up "Warning: wineserver not found!" If I use the terminal with the game ID, it gives the same warning.
I ran the command dpkg -S wineserver, and it lists several paths (including wine-stable & a winehq-stable), so I know it is installed. If I run wineserver in terminal it does nothing.