It seems that you're using an outdated browser. Some things may not work as they should (or don't work at all).
We suggest you upgrade newer and better browser like: Chrome, Firefox, Internet Explorer or Opera

×
Thanks for the clarification, now it makes more sense to me. I guess I will be mainly using the new clean option then, and checking what it has decided to move to orphaned files. And then just download any missing files.
Post edited September 06, 2015 by timppu
avatar
timppu: Thanks for the clarification, now it makes more sense to me. I guess I will be mainly using the new clean option then, and checking what it has decided to move to orphaned files. And then just download any missing files.
Yeah, once you have your repo setup, basically you just do "update" to get the latest GOG db changes, "download" to get any new files, and "clean" to orphan and remove old files. Rinse and repeat :)
Neato scripto, I'll definitely have to try this out sometime.
Especially now the GOG downloader no longer downloads Linux files.

I would like a song for this script based on this song.
Post edited September 06, 2015 by Smannesman
avatar
timppu: Thanks for the clarification, now it makes more sense to me. I guess I will be mainly using the new clean option then, and checking what it has decided to move to orphaned files. And then just download any missing files.
there is a -dryrun argument you could

gogrepo.py clean -dryrun e:\gog > c:\cleanoutput.txt

this would log all data to the TXT made and you could read though it.
Post edited September 07, 2015 by Starkrun
Now I finally have a neat, clean, up-to-date set of all my 1027 GOG games (Windows/English + extras) on my external hard drive. :) I think this is the first time, earlier (even when I had much less games) I always lagged behind even when trying to keep them up to date. Either I hadn't yet downloaded them all, or some had received updates already.

All hail gogrepo! What this means is that now I am all set if GOG ever performs another publicity stunt by closing the site down jokingly, or the nuclear apocalypse finally comes. Whichever happens first. I'll just laugh watching others go berserk, and keep installing/playing my GOG games in my bunker. :)

I had some odd issue with the Trine 2 wallpaper zip file though. At first gogrepo kept constantly redownloading it each time I ran download (I saw this was reported earlier already, different filesize?), and that downloaded file seemed to be corrupt (at least the Linux Mint archive manager couldn't open that zip file but gave an error). The filename is trine_2_wallpapers.zip.

Then when I ran the clean option, it found and moved an obsolete file, trine_2_awallpapers.zip (if I recall the name correctly). That one opened fine in the archive manager though.

When I just downloaded trine_2_wallpapers.zip manually from GOG.com, it seems fine though, so I have no idea why I had some problem with it on Linux... Oh well. I still have to recheck this when I get back home.

Oh, and yes, gogrepo is now able to download the Iron Storm (English) installer fine. Earlier gogrepo couldn't detect and download it because it wasn't marked as an English version in the GOG database.
Post edited September 08, 2015 by timppu
avatar
timppu: When I just downloaded trine_2_wallpapers.zip manually from GOG.com, it seems fine though, so I have no idea why I had some problem with it on Linux... Oh well. I still have to recheck this when I get back home.
Manually delete the trine_2_wallpapers.zip and re-download, should be fine.

I mentioned in an earlier post, GOG updated the file and made it smaller and currently gogrepo doesn't clear out these extra bytes. I'll fix that in next update.
Unfortunately I'm unable to use this as it turns out.
Using the script gets me temporarily blocked from GOG.
After the first X number of games I get 403 errors and then I can no longer access the GOG community and support.
avatar
Smannesman: Unfortunately I'm unable to use this as it turns out.
Using the script gets me temporarily blocked from GOG.
After the first X number of games I get 403 errors and then I can no longer access the GOG community and support.
I recall encountering something similar when I tried some earlier version of the script with the default values.

Have you tried changing the HTTP request settings in the script itself? I use these (maybe the author has better settings):

HTTP_FETCH_DELAY = 4 # in seconds
HTTP_RETRY_DELAY = 10 # in seconds
HTTP_RETRY_COUNT = 10

At least with these I haven't encountered problems (at least the last time I used it), albeit I think the fetch delay setting may make many operations quite a bit more time consuming (like getting the whole new manifest file).

Also, during which operation did you have the problem? E,g, update or download? I think I had the issues with update (ie. getting the game details for the manifest file).
Post edited September 15, 2015 by timppu
avatar
timppu: I recall encountering something similar when I tried some earlier version of the script with the default values.

Have you tried changing the HTTP request settings in the script itself? I use these (maybe the author has better settings):

HTTP_FETCH_DELAY = 4 # in seconds
HTTP_RETRY_DELAY = 10 # in seconds
HTTP_RETRY_COUNT = 10

At least with these I haven't encountered problems (at least the last time I used it), albeit I think the fetch delay setting may make many operations quite a bit more time consuming (like getting the whole new manifest file).

Also, during which operation did you have the problem? E,g, update or download? I think I had the issues with update (ie. getting the game details for the manifest file).
Yeah with the update, first time running the script so I figured I should get the manifest.
It was already going super slow, but I guess it needs to be even slower. But it'll be a while before I try again, it's very annoying having to go through proxies to visit and post.
avatar
timppu: I recall encountering something similar when I tried some earlier version of the script with the default values.

Have you tried changing the HTTP request settings in the script itself? I use these (maybe the author has better settings):

HTTP_FETCH_DELAY = 4 # in seconds
HTTP_RETRY_DELAY = 10 # in seconds
HTTP_RETRY_COUNT = 10

At least with these I haven't encountered problems (at least the last time I used it), albeit I think the fetch delay setting may make many operations quite a bit more time consuming (like getting the whole new manifest file).

Also, during which operation did you have the problem? E,g, update or download? I think I had the issues with update (ie. getting the game details for the manifest file).
avatar
Smannesman: Yeah with the update, first time running the script so I figured I should get the manifest.
It was already going super slow, but I guess it needs to be even slower. But it'll be a while before I try again, it's very annoying having to go through proxies to visit and post.
Yeah unfortunately too many web requests to GOG results in a temporary ban. I find that 1 second works well for me, but others may see differently (I'm in Canada, perhaps location/server makes a difference).

I got banned many times while developing this script :) It goes away after a few hours.

To me, this highlights the importance of actually downloading your games. :)
Mein Gott, it took over six hours to get the full manifest.
I also saw a 404 come across my screen during the run, unfortunately I didn't output anything to a text file so I don't know if there are more.
Is there some way to download a specific OS version of a game?
I tried using -os but that didn't work.
I'm assuming if I backup the manifest I will never have to go through those hours and hours again, am I correct in that?
Thank you for gogrepo.py!

If this hasn't been asked previously: is there a way to see how large the complete downloads will be beforehand? E.g. win/lin en noextras?

Thanks
avatar
Smannesman: Mein Gott, it took over six hours to get the full manifest.
Yeah it is quite slow. I let it run overnight. Then again, after you have the manifest file, later you don't necessarily need to redownload it completely, but just update it with -skipknown and -updateonly options to get it up to date. Not sure if those options can be used on one update command, or two times separately, ie.

gogrepo.py update -os windows -lang en -skipknown
gogrepo.py update -os windows -lang en -updateonly

(English windows versions in my example, as those are what I am interested in at the moment.)

I run it twice, it just takes a few seconds either way.

avatar
Smannesman: Is there some way to download a specific OS version of a game?
I tried using -os but that didn't work.
You ask the same questions I asked earlier. :) Read the README.md file that comes with it, it has the commands and options, except maybe missing the new clean command though.

You have to give the -os and -lang options with the update command while downloading the manifest file data. The download command doesn't have the same options, it downloads all language and os versions it finds in the manifest file. So you have to decide which OS and language versions you want to download and keep up to date already when you update the manifest file, I think.

These are the options you can use with the download command:

``gogrepo.py download`` Use the saved manifest file from an update command, and download all known game items and bonus files.

download [-h] [-dryrun] [-skipextras] [-skipextras] [-skipgames] [-wait WAIT] [-id <title>] [savedir]
-h, --help show this help message and exit
-dryrun display, but skip downloading of any files
-skipextras skip downloading of any GOG extra files
-skipgames skip downloading of any GOG game files
-wait WAIT wait this long in hours before starting
-id <title> specify the game to download by 'title' from the manifest
<title> can be found in the !info.txt of the game directory
savedir directory to save downloads to

avatar
garvanell: If this hasn't been asked previously: is there a way to see how large the complete downloads will be beforehand? E.g. win/lin en noextras?
When you start the download, it will tell in the beginning how much data it has to download overall, and keeps telling all the time during the download how much more is left.

If you just want to know how much your collection will take space, run the download with the -dryrun option, in which case it will only simulate the download. Or alternatively, simply Ctrl-C cancel the script right after it has started the download, even without the -dryrun option.
Post edited September 17, 2015 by timppu
Thank you very much.
avatar
timppu: You ask the same questions I asked earlier. :) Read the README.md file that comes with it, it has the commands and options, except maybe missing the new clean command though.
I did read the readme, it was just a way of both asking if there was an option for it that wasn't documented and to indicate a desire for such an option if it did not exist yet.