minigalaxy
minigalaxy copied to clipboard
Can't update game | Exception in thread Thread-77 (__download_update):
Try to update cyberpunk 2077 and get this error in the console:
Exception in thread Thread-77 (__download_update): Traceback (most recent call last): File "/usr/lib/python3.10/threading.py", line 1009, in _bootstrap_inner self.run() File "/usr/lib/python3.10/threading.py", line 946, in run self._target(*self._args, **self._kwargs) File "/usr/lib/python3.10/site-packages/minigalaxy/ui/gametile.py", line 324, in __download_update result = self.__download(download_info, finish_func, cancel_to_state) File "/usr/lib/python3.10/site-packages/minigalaxy/ui/gametile.py", line 248, in __download total_file_size += int(self.api.get_file_size(file_info["downlink"])) File "/usr/lib/python3.10/site-packages/minigalaxy/api.py", line 177, in get_file_size root = ET.fromstring(xml_string) File "/usr/lib/python3.10/xml/etree/ElementTree.py", line 1348, in XML return parser.close() xml.etree.ElementTree.ParseError: no element found: line 1, column 0
Happens with 1.1.0-3 and building from git via AUR. on Manjaro Linux. Python 3.10.2-1. python-gobject 3.42.0-3
I have the same error but with
- Stellaris (https://www.gog.com/en/game/stellaris)
- Stoneshard (https://www.gog.com/en/game/stoneshard)
- Northgard (https://www.gog.com/en/game/northgard)
- Terraria
Arch Linux, same package versions
in api.py::get_file_size a request is done calling SESSION.get(xml_link). The result has these headers indicating an empty content:
{
'Date': 'Tue, 01 Mar 2022 15:12:40 GMT',
'Content-Type': 'text/xml',
'Content-Length': '1',
'Connection': 'keep-alive',
'Cache-Control': 'max-age=604800',
'Content-Encoding': 'gzip',
'ETag': '"4209162031+gzip"',
'Expires': 'Tue, 08 Mar 2022 15:12:41 GMT',
'Last-Modified': 'Tue, 01 Mar 2022 14:30:03 GMT',
'Server': 'ECAcc (nya/7947)',
'Age': '240493',
'Accept-Ranges': 'bytes'
}
Same error trying to install the latest Spiritfarer update. Updates to the same game worked fine previously. Linux Mint, Python 3.8. Native game, but that probably makes no difference here.
I installed Minigalaxy via the official deb package from the releases page.
EDIT: If it's just the GOG API sometimes not returning valid size information and nothing more serious, maybe you'll need to simply "pulse" the progress bar during the download in these cases, like you'd do with a GtkProgressBar when you don't know the amount of work to be done.
This should be fixed on master now. Hopefully I'll be able to release a fixed version soon.
@sharkwouter Can you please make a small release soon?
Thanks a lot for the awesome app! 🚀
BTW: This happens on my side when trying to install Lumencraft on the Flatpak version.
My workaround until a new version is released:
I downloaded the .sh file of Lumencraft from the GOG website. Then, I did cd to the installers directory of the installation path (normally ~/GOG Games/installer). In this directory, I created a directory with the name of the game (in my case Lumencraft). You need the option "Keep installers" to be on. Then, I placed the .sh file there.
-> GOG Games/installer/Lumencraft/lumencraft_ea_release_55090.sh
Then I did close Minigalaxy and then restart it. Lumencraft had now the "install" button. Clicked on install and there it is :D