Matoking / protontricks

A wrapper that does winetricks things for Proton enabled games, requires Winetricks.
GNU General Public License v3.0
1.59k stars 34 forks source link

crash upon selecting a game #314

Open github2452 opened 1 month ago

github2452 commented 1 month ago

Describe the bug crash due to a nonexisting directory or I don't know.

To Reproduce Steps to reproduce the behavior: Selecting a game in the gui or running any command with a game for example: "protontricks 123 xna40"

Expected behavior With the GUI version a new Window. with the cli version executing the expected commands

System (please complete the following information):

Additional context

If the error happens when trying to run a Protontricks command, run the command again using the -vv flag and copy the output!

protontricks 855860 xna40 -vw

pressure-vessel-wrap[9]: E: linkat: No such file or directory Traceback (most recent call last): File "/app/bin/protontricks", line 8, in sys.exit(cli()) ^^^^^ File "/app/lib/python3.11/site-packages/protontricks/cli/main.py", line 32, in cli main(args) File "/app/lib/python3.11/site-packages/protontricks/cli/util.py", line 159, in wrapper return cli_func(self, *args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/app/lib/python3.11/site-packages/protontricks/cli/main.py", line 370, in main returncode = run_command( ^^^^^^^^^^^^ File "/app/lib/python3.11/site-packages/protontricks/util.py", line 516, in run_command raise RuntimeError( RuntimeError: bwrap launcher crashed, returncode: 1

the log from the gui: Protontricks was closed due to the following error:

Traceback (most recent call last): File "/app/lib/python3.11/site-packages/protontricks/cli/util.py", line 159, in wrapper return cli_func(self, *args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/app/lib/python3.11/site-packages/protontricks/cli/main.py", line 290, in main run_command( File "/app/lib/python3.11/site-packages/protontricks/util.py", line 516, in run_command raise RuntimeError( RuntimeError: bwrap launcher crashed, returncode: 1

=============

Please include this entire error message when making a bug report. Log messages:

Running inside Flatpak sandbox, version 1.14.6. Found Steam directory at /home/thememe/.local/share/Steam Using default Steam Runtime at /home/thememe/.local/share/Steam/ubuntu12_32/steam-runtime WINETRICKS environment variable is not available. Searching from $PATH. Found 1 Steam library folders Currently logged-in Steam user: josephss242 Couldn't find custom shortcuts. Maybe none have been created yet? Using 'yad' as GUI provider User has configured app Proton version (CompatToolMapping): proton_9 Found active compatibility tool: Proton 9.0 Active compatibility tool is a Proton installation Using 'bwrap = True' as default value Using separately installed Steam Runtime: Steam Linux Runtime 3.0 (sniper) 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. Created Steam Runtime Wine binary directory at /home/thememe/.var/app/com.github.Matoking.protontricks/cache/protontricks/proton/Proton 9.0/bin WINE environment variable is not available. Setting WINE environment variable to Proton bundled version. WINESERVER environment variable is not available. Setting WINESERVER environment variable to Proton bundled version Starting bwrap launcher process: /home/thememe/.var/app/com.github.Matoking.protontricks/cache/protontricks/proton/Proton 9.0/bin/bwrap-launcher Terminating launcher process 14 Launcher process terminated

github2452 commented 1 month ago

it's also happens with the --no-bwrap

dslauter commented 1 month ago

Same issue on Linux Mint 22

Osced86 commented 3 weeks ago

Same issues for me as well I'm on Ubuntu 24.04 with latest protontricks version 1.11.1 via pipx installation.

Osced86 commented 3 weeks ago

I seems to have got around the problem, by installing winetricks manually, see link for how to manually install it: https://github.com/Winetricks/winetricks?tab=readme-ov-file#manual-install and then using --no-bwrap flag. Still get some errors/warning but are able to do what I want to do.

Matoking commented 2 weeks ago

This could be related to this upstream Ubuntu issue. In short, an update to an Ubuntu security policy makes it too strict and prevents bwrap (which Protontricks uses unless --no-bwrap is specified) from working. I haven't checked this, however.

Could someone who's affected try running journalctl -f in one window, and then run Protontricks in another window while the first window is still open? If the security policy is to blame, I'm guessing a few lines prefixed audit: and containing the segment apparmor="DENIED" should pop up.

vproper commented 2 weeks ago

Same error on Arch Linux

stevenlafl commented 2 weeks ago

@Matoking

Could someone who's affected try running journalctl -f in one window, and then run Protontricks in another window while the first window is still open? If the security policy is to blame, I'm guessing a few lines prefixed audit: and containing the segment apparmor="DENIED" should pop up.

Without --no-bwrap:

Jul 31 16:36:38 DESKTOP-1VF8NE6 kernel: audit: type=1400 audit(1722465398.482:281): apparmor="AUDIT" operation="userns_create" class="namespace" info="Userns create - transitioning profile" profile="unconfined" pid=26536 comm="srt-bwrap" requested="userns_create" target="unprivileged_userns"
Jul 31 16:36:38 DESKTOP-1VF8NE6 kernel: audit: type=1400 audit(1722465398.482:282): apparmor="DENIED" operation="open" class="file" info="Failed name lookup - disconnected path" error=-13 profile="unprivileged_userns" name="proc/26537/uid_map" pid=26537 comm="srt-bwrap" requested_mask="wr" denied_mask="wr" fsuid=1000 ouid=1000
Jul 31 16:36:38 DESKTOP-1VF8NE6 kernel: audit: type=1400 audit(1722465398.484:283): apparmor="AUDIT" operation="userns_create" class="namespace" info="Userns create - transitioning profile" profile="unconfined" pid=26538 comm="bwrap" requested="userns_create" target="unprivileged_userns"
Jul 31 16:36:38 DESKTOP-1VF8NE6 kernel: audit: type=1400 audit(1722465398.484:284): apparmor="DENIED" operation="open" class="file" info="Failed name lookup - disconnected path" error=-13 profile="unprivileged_userns" name="proc/26539/uid_map" pid=26539 comm="bwrap" requested_mask="wr" denied_mask="wr" fsuid=1000 ouid=1000
Jul 31 16:36:38 DESKTOP-1VF8NE6 kernel: audit: type=1400 audit(1722465398.486:285): apparmor="AUDIT" operation="userns_create" class="namespace" info="Userns create - transitioning profile" profile="unconfined" pid=26541 comm="srt-bwrap" requested="userns_create" target="unprivileged_userns"
Jul 31 16:36:38 DESKTOP-1VF8NE6 kernel: audit: type=1400 audit(1722465398.486:286): apparmor="DENIED" operation="capable" class="cap" profile="unprivileged_userns" pid=26542 comm="srt-bwrap" capability=8  capname="setpcap"
Jul 31 16:36:38 DESKTOP-1VF8NE6 kernel: audit: type=1400 audit(1722465398.486:287): apparmor="DENIED" operation="open" class="file" info="Failed name lookup - disconnected path" error=-13 profile="unprivileged_userns" name="proc/26542/uid_map" pid=26542 comm="srt-bwrap" requested_mask="wr" denied_mask="wr" fsuid=1000 ouid=1000

with --no-bwrap, I don't get journal entries. However, I do get:

Executing cd /usr/bin
------------------------------------------------------
warning: Unknown file arch of /home/stevenlafl/.cache/protontricks/proton/Proton 9.0/bin/wineserver.
------------------------------------------------------
protontricks (INFO): Command returned 1

This is using the latest pipx install for protontricks. It doesn't seem to matter at all what Proton version is selected. I can, in fact, launch games -- so the "file arch" problem is not related to whether or not Wine/Proton is actually working.

However, this does work:

WINEPREFIX=/home/stevenlafl/.steam/steam/steamapps/compatdata/1715130/pfx/ winetricks vcrun2019

So I do not suspect a problem with winetricks.

Matoking commented 2 weeks ago

Yes, AppArmor security policy appears to be causing issues. bwrap (or Bubblewrap) is the utility used by Steam Runtime to create a containerized environment for the Proton games to run in. Protontricks uses Steam Runtime by default since it ensures better compatibility across different distros.


The "Unknown file arch" Winetricks problem is tracked in Winetricks/winetricks#2183. In short, Protontricks creates wrapper scripts that launch Wine using the aforementioned Steam Runtime, as well as setting other settings for the environment. Winetricks didn't have a problem with this before, but it introduced a new check that attempts to determine the bitness of the Wine binaries; this fails since the executables added by Protontricks are not binaries at all.

It's annoying, but you should be able to skip the errors. The bitness check has also been disabled in the Winetricks bundled with the Protontricks Flatpak for this reason.

dotaxis commented 1 week ago

Having this issue on a steam deck where winetricks is not an option :/

Matoking commented 1 week ago

Having this issue on a steam deck where winetricks is not an option :/

What error message are you getting specifically? This error in particular is identified by the "bwrap launcher crashed, returncode: 1" message.

The "Invalid file magic number" error which affects all Steam beta users is in #304, with a workaround described in the same issue.

dotaxis commented 4 days ago

Having this issue on a steam deck where winetricks is not an option :/

What error message are you getting specifically? This error in particular is identified by the "bwrap launcher crashed, returncode: 1" message.

The "Invalid file magic number" error which affects all Steam beta users is in #304, with a workaround described in the same issue.

Apologies, I was on the wrong issue. I had the magic number error and needed to downgrade from Steam beta.