tkashkin / GameHub

All your games in one place
https://tkashkin.github.io/projects/gamehub
GNU General Public License v3.0
2.23k stars 129 forks source link

Steam games installed on a location other than ~/.steam don't show up as installed #558

Open Foro38 opened 3 years ago

Foro38 commented 3 years ago
Expected behavior

Steam games installed on a location other than ~/.steam show up as installed

Actual behavior

Steam games installed on a location other than ~/.steam don't show up as installed

Steps to reproduce
  1. Install Steam games in a location other than ~/.steam
  2. Launch GameHub
  3. They show up as "Not installed"
Version and environment
- GameHub
    Version: 0.16.0-b0f5e25-master
    Branch:  master
    Commit:  b0f5e258999b495e0f777ceb6a8349aac0454032
- Environment
    Distro:  Linux Mint 20.1
    DE:      X-Cinnamon
    GTK:     3.24.20
Lucki commented 3 years ago

Is the expected path in steam included as a steam library folder?

Foro38 commented 3 years ago

image

Yes, it even is the default path

o-schneider commented 3 years ago

I have the same issue. Looking at the code, I think the vdf file structure changed. Here's what I have in the librariesfolder.vdf file.

"libraryfolders"
{
    "contentstatsid"        "8413575840315298086"
    "1"
    {
        "path"      "/home/foo/Games/Steam"
        "label"     ""
        "mounted"       "1"
        "contentid"     "4767286281369263029"
    }
}

The code expects "LibraryFolders" as the root element and certainly doesn't expect to have nested objects.

Lucki commented 3 years ago

That's interesting, are these new installations? I'm in the beta and still have the "older" format.

tkashkin commented 3 years ago

Looks like Steam updates the file to new format when a new library folder is added, maybe also when existing folder is removed. Also it looks like Steam keeps removed folders in the list and sets mounted property to 0.

I guess it's related to the new library management UI Valve is currently working on.

o-schneider commented 3 years ago

Yes, it's a new installation, few days old only. That's interesting though, would you have a sample of how the file looked before?

dimike96 commented 3 years ago

I just moved several games from the library on my boot drive to a secondary drive (my new default steam library) and now I have the same issue. Only games I haven't moved show up in game hub as installed.

Lucki commented 3 years ago

would you have a sample of how the file looked before?

"LibraryFolders"
{
    "TimeNextStatsReport"  "xxxx"
    "ContentStatsID"       "xxxx"
    "1"                    "/path/to/steam/library1"
    "2"                    "/path/to/steam/library2"
}
Lucki commented 3 years ago

When participating in the steam beta the old format is now converted to the new format.

Willdrick commented 3 years ago

fresh install here, gamehub is not showing my installed games nor the different proton versions.

crt0mega commented 3 years ago

Same here for some days now.

Tripp024 commented 3 years ago

Same problem here. Hopefully I can use this nice program again soon :)

Willdrick commented 3 years ago

Seems it has issues detecting the games from previous libraries/installs. From what I could test, if you install a game on steam after gamehub has been launched at least once, it'll show up as "installed" on Gamehub

imagen gamehub showing only valheim (steam) and spiritfarer (user game) as installed

MadByteDE commented 3 years ago

Same for me. Even when installing a game through GameHub and selecting a game library other then the one in $HOME/.steam/ . the game status in GameHub will show up as "Installation" and after that it still won't be shown as installed. I tried all possible options I could think of: Building GameHub from source, using the latest release version, using Steam Beta and Steam Non-Beta. Nothing worked.

Btw where can I find the cached files that store my GameHub account logins and config ? There are three directories named "com.github.tkashkin.gamehub" in .cache, .config and .local/share/ but deleting them all + removing the GameHub installation and then reinstalling the client results in the client detecting all my previously stored logins / connections for all game providers.. so where is the directory that stores that stuff and why isn't it stored in one of the other directories? This is really annoying.

lavenderdotpet commented 3 years ago

same issue here

tkashkin commented 3 years ago

Should be fixed in 0.16.1

lavenderdotpet commented 3 years ago

tysm