flathub / com.github.Matoking.protontricks

https://flathub.org/apps/details/com.github.Matoking.protontricks
39 stars 3 forks source link

Flatpak override doesnt seem to work with colon in path (steam deck) #27

Open scorpion81 opened 2 years ago

scorpion81 commented 2 years ago

Not quite sure whether this is the correct place for this issue.

Running this on steam deck's konsole in order to be able to install directmusic and directplay into "Rise of Nation Extended Edition" (in order to attempt to fix ingame audio) ...

flatpak override --user --filesystem=/home/deck/.local/share/Steam/steamapps/compatdata/287450/pfx/dosdevices/c:/windows/syswow64  com.github.Matoking.protontricks

brings up following error basically:

F: Unexpected filesystem suffix /windows/syswow64, ignoring

and since this path is being ignored by flatpak override... protontricks / cabextract cannot access it

Executing cabextract -q -d /home/deck/.local/share/Steam/steamapps/compatdata/287450/pfx/dosdevices/c:/windows/syswow64 -L -F dmband.dll /home/deck/.local/share/Steam/steamapps/compatdata/287450/pfx/dosdevices/c:/windows/temp/dxnt.cab
/home/deck/.local/share/Steam/steamapps/compatdata/287450/pfx/dosdevices/c:/windows/temp/dxnt.cab: WARNING; possible 5960 extra bytes at end of file.
/home/deck/.local/share/Steam/steamapps/compatdata/287450/pfx/dosdevices/c:/windows/syswow64/dmband.dll: Permission denied

Full error log: log.txt

I also tried flatseal with the option of granting access to all user files, even host files, no avail. Could it possibly be that flatpak needs to know the exact path protontricks / winetricks / cabextract will try to access later on ?

scorpion81 commented 2 years ago

Sorry, me being an idiot... found this https://github.com/Matoking/protontricks/issues/144 but maybe leaving this open due to also flatpak override seemingly being uncomfortable with the colon in the path

Matoking commented 2 years ago

Did Protontricks or something else prompt you to run that flatpak override command? ~/.local/share/Steam, is the default Steam home directory, so Protontricks shouldn't need any additional changes in order to access it and seems to work fine as far as filesystem permissions are concerned going by your log. It's still failing due to the other issue you linked, unfortunately.

The problem here is that the path contained a : character. The colon, as well as some other characters, have a special meaning in Linux shells, meaning you need to quote the part to make it just a string that the shell won't try to interpret differently, like so:

$ flatpak override --filesystem="/home/deck/.local/share/Steam/steamapps/compatdata/287450/pfx/dosdevices/c:/windows/syswow64" com.github.Matoking.protontricks
scorpion81 commented 2 years ago

Hmm, even with quoting the path as you showed, i get the same exact error message about the path suffix. Furthermore, it may be that because there already exists a symlink named dmband.dll in the target directory, pointing to a common proton / wine directory in newer proton versions, cabextract gets a hiccup. This file might be either provided by proton or a leftover from a failed previous install. This symlinking approach is being used since proton 5.1 it seems. Versions prior to proton 5.0 dont work at all for me with that game, so this leads only to 5.0.10. But running winetricks throws another error then: bug: w_metadata art2kmin has a unix path for installed_file1, should be a windows path and quits then too. this error happens in a small popup window (i ran protontricks with --gui, since for some reason this message doesnt appear when being run with -v )