Closed GeckoEidechse closed 2 years ago
libraryfolders.vdf
file, or something.Hmm, so unrelated to viper, it seems ~/.var/app/com.valvesoftware.Steam/.steam/steam
link to ~/.var/app/com.valvesoftware.Steam/.local/share/Steam
is broken on this machine...
Not sure if that's a single issue on my side but it might make sense to check both
~/.var/app/com.valvesoftware.Steam/.steam/steam/steamapps/libraryfolders.vdf
~/.var/app/com.valvesoftware.Steam/.local/share/Steam/steamapps/libraryfolders.vdf
And libraryfolders.vdf
is also different to what I posted earlier from a different machine (both are Flatpak install)
"libraryfolders"
{
"contentstatsid" "6743519362182655292"
"0"
{
"path" "/home/gecko/.local/share/Steam"
"label" ""
"contentid" "6743519362182655292"
"totalsize" "0"
"update_clean_bytes_tally" "0"
"time_last_update_corruption" "0"
"apps"
{
"1012560" "1577655712"
"1113280" "910331459"
}
}
}
That being said, I sadly cannot test whether Flatpak Steam install works atm as I don't have access to the machine where Titanfall2+Steam is installed via Flatpak.
(My laptop doesn't have enough storage to even start installing Titanfall2 and simply editing libraryfolders.vdf
didn't seem to have been enough :c)
Hmm, so unrelated to viper, it seems
~/.var/app/com.valvesoftware.Steam/.steam/steam
link to~/.var/app/com.valvesoftware.Steam/.local/share/Steam
is broken on this machine... Not sure if that's a single issue on my side but it might make sense to check both
That would be rather tedious to check both, I'll just implement a way for it to check all of them, aka, if normal Steam libraryfolders.vdf
exists but Titanfall isn't found in it it'll check the next one.
That being said, I sadly cannot test whether Flatpak Steam install works atm as I don't have access to the machine where Titanfall2+Steam is installed via Flatpak.
We actually only check for the gamepath to have a Titanfall2.exe
file in it, the contents of it doesn't matter.
... and simply editing libraryfolders.vdf didn't seem to have been enough :c
We also don't use the actual app ID's, we instead search through all the libraries check if steamapps/common/Titanfall2
exists in the library folder, and then validate it like mentioned before with the .exe
existing, i.e just make the folder structure and that file, and it should work.
I'll have a further look at it all tomorrow, hopefully fixing it, and getting a release out before the master server gets back up...
I pushed a commit which should ideally allow it to search multiple VDF files and return it properly and everything, I did some testing and it seems to work just fine, but if you could confirm it that'd be lovely. :)
It's also very simple to add more file paths/VDF files if need be in the future... As it's just an array per platform... There's also a few debug logs to verify it works! Keep in mind they run no matter what, you can even just run ./Viper-1.2.5.AppImage --help
and it'll still output it...
Aight so I tried building from source using the Docker image like last time but it seems like npm
wants to stop me every step on the way. Being too old versions of npm
, peer dependency issues or electron-builder
failures.
Maybe you could just provide me with an existing AppImage to test? :3
Maybe you could just provide me with an existing AppImage to test? :3
Worked. Titanfall2 Steam Flatpak install successfully detected :D
(I made sure to delete viper.json
before running)
Lovely I'll be merging it then! :)
Confirmed working ootb in 1.3.1
^^
Describe the bug If Steam is installed via Flatpak, Viper is unable to detect the Titanfall2 install location.
To Reproduce Steps to reproduce the behavior:
Expected behavior Viper should be able to auto-detect the Titanfall2 install location even if Steam is installed as a Flatpak
Screenshots
Version:
v1.2.5
Additional Info I wanted to check whether the failure to auto-detect install location as part of #94 also affects versions of Linux that aren't SteamOS. So I tried it on another Linux machine of mine, where it promptly failed. I realised however that this was due to the fact that Steam was installed as a Flatpak which probably wasn't anticipated when auto-detecting install path on Linux was added to Viper in #53.
For the Flatpak version of Steam, the default install location of Titanfall2 is
~/.var/app/com.valvesoftware.Steam/.steam/steam/steamapps/common/Titanfall2
Content of
~/.var/app/com.valvesoftware.Steam/.steam/steam/steamapps/libraryfolders.vdf
which contains the appid for Titanfall2 (1237970
):Also I noticed that
~/.var/app/com.valvesoftware.Steam/.steam/steam
links to~/.var/app/com.valvesoftware.Steam/.local/share/Steam
so I guess the two paths can be used interchangeably?