-
-
Notifications
You must be signed in to change notification settings - Fork 480
Update Legendary to 0.20.33 #2806
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
In the changelog I see does it mean that if we try to uninstall an Epic game while another Epic game is being installed the command will fail? currently it works BUT the uninstalled games show up as installed in the library after the one that was being installed ends I understand now the uninstall will fail instead? maybe in that case we have to disable uninstalling an epic game just to prevent this failure? |
Another solution is to add the game to uninstall to the queue, pause the current download, uninstall, continue the download. OR heroic could uninstall manually. That means deleting the game folder and then removing it from the json file. But that can still lead to conflicts. Pausing would be ideal. |
This wouldn't work (for the same reason that uninstalling while installing doesn't work). When installing, Legendary reads the list of installed games when starting the install & adds the new game and writes out the list at the end. If you modify the file while an install is happening, those modifications will be lost Pausing the install, uninstalling the game, and then resuming the install sounds like the best option. I'll look into that |
I just checked and it does fail to uninstall the game but the output is handled as a successful uninstallation and it removes shortcuts and refreshes the library. Here you can see the legendary log trying to uninstall a game while a download is in progress (with the error to acquire the lock):
Here you can see heroic's logs thinking it was fine:
At the end the game is still there showing up as installed in heroic, with the shortcuts removed |
And I believe we just need to pause the queue if both games are from the legendary runner. If they are different, should be fine. |
Since download resumption restarts an unfinished file from the beginning this is rather suboptimal. Many games these days put most of their data into big archive files (e.g. Unreal Engine |
That's a good point. So I believe we will need to wait for the next Heroic release to update this one so we can test more. What about we make Heroic manually delete the game files and remove the game from the installed list (Heroic list) and wait for the .lock file to be removed on the legendary side, and then call Legendary to properly 'uninstall' the game on its side? A more complex approach would be to refactor the code so Legendary is used like GOGDL, so we store the game metadata and the installation information on Heroic folder using electron-store, and we do not check for legendary files anymore. The downside would be that we would lose the information about games installed if someone was using Legendary before (we could maybe check only on startup for Legendary files as a workaround) |
Closing in favor of #3168, includes the legendary update and a few more related things |
See original changelog here
Can't test this on Windows & macOS at the moment, looks to be working fine on Linux
Use the following Checklist if you have changed something on the Backend or Frontend: