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 this awesome script!
Here's my (short) wishlist:
- I use Python Portable - I didn't feel like installing the regular Python (in Windows) just for one thing. So it was more "convoluted" than usual to get those 2 needed modules in there.
And this thing is 600 MB... so I'd like a Windows .exe with a simple GUI.
Btw. the information on the github page and in the readme file is a bit out of date. There's no mention of the "clean" function (e.g.) anywhere.
Is this script 'smart'? Can it work out if a file has changed or not so it can skip downloading it? Can it remove the old versions of an installer before downloadint the updated files?
avatar
dyrl: Is this script 'smart'? Can it work out if a file has changed or not so it can skip downloading it? Can it remove the old versions of an installer before downloadint the updated files?
Yes. It checks name, md5 hash where available and file size. There's also a clean function which removes outdated files.
Short version: yes the script is able to do all the things you requested.

Longer version:

avatar
dyrl: Is this script 'smart'? Can it work out if a file has changed or not so it can skip downloading it?
When you initiate the download with gogrepo, IIRC it skips files whose filename and size are correct in your local collection.

For deeper verification of your local GOG game collection, you can run the verify option which will also check the md5 checksums (for those files that have that), and for zip files (extras) it checks the zip file integrity. This will catch files whose names and sizes are correct, but which are e.g. corrupted in some way. You can tell "verify" to delete files which fail that check, or just delete them yourself afterwards if you want to.

avatar
dyrl: Can it remove the old versions of an installer before downloading the updated files?
The "clean" option is for that, and you can run it either before or after downloading the new installers, it doesn't really matter. I choose to run clean always before downloading new installers.

The clean option moves all obsolete files (ie. files it doesn't see and recognize in the manifest file) to a special directory "!orphaned", and you can delete all the files from that directory whenever you feel it is safe to do so.
Post edited November 26, 2016 by timppu
avatar
teceem: Here's my (short) wishlist:
I forgot one thing:
Would it be possible to skip all the patches?
The script downloads the latest versions of the games; so I don't see the need to also have the patches with it...
Post edited November 27, 2016 by teceem
avatar
teceem: Here's my (short) wishlist:
avatar
teceem: I forgot one thing:
Would it be possible to skip all the patches?
The script downloads the latest versions of the games; so I don't see the need to also have the patches with it...
Exactyl the same I asked too. Installers are up to date. No need to download patches.
avatar
Lebostein: Exactyl the same I asked too. Installers are up to date. No need to download patches.
Is this certain, ie. there has never been cases even for a limited time that the installer would not be the same version as the latest patch? I feel like at some point that was the case with e.g. The Witcher 3, ie. you had to install a patch on top of the base game installer to get it to the latest version.
avatar
Lebostein: Exactyl the same I asked too. Installers are up to date. No need to download patches.
avatar
timppu: Is this certain, ie. there has never been cases even for a limited time that the installer would not be the same version as the latest patch? I feel like at some point that was the case with e.g. The Witcher 3, ie. you had to install a patch on top of the base game installer to get it to the latest version.
Yeah, the installers don't always get updated (certainly not immediately) so there are times when you would need the installer and patches.
avatar
teceem: I forgot one thing:
Would it be possible to skip all the patches?
The script downloads the latest versions of the games; so I don't see the need to also have the patches with it...
avatar
Lebostein: Exactyl the same I asked too. Installers are up to date. No need to download patches.
Most of the time this is the case. It isn't always that way though.
avatar
timppu: Is this certain, ie. there has never been cases even for a limited time that the installer would not be the same version as the latest patch? I feel like at some point that was the case with e.g. The Witcher 3, ie. you had to install a patch on top of the base game installer to get it to the latest version.
avatar
adaliabooks: Yeah, the installers don't always get updated (certainly not immediately) so there are times when you would need the installer and patches.
Sure, but having the option to skip them doesn't hurt anyone. ;)
I have a relatively big collection and an internet cap - so I'd prefer not downloading gigabytes of unwanted data even if it means that I temporarily miss out on 1 or 2 useful patches.
avatar
teceem: Sure, but having the option to skip them doesn't hurt anyone. ;)
I have a relatively big collection and an internet cap - so I'd prefer not downloading gigabytes of unwanted data even if it means that I temporarily miss out on 1 or 2 useful patches.
I guess, if you can live with the idea that at any point of time, many of your downloaded games may be missing the latest updates GOG has already provided (and you don't necessarily know which games those are).

If the separate patches are always named in the same format (e.g. the filename always starting with "patch"), then maybe one idea would be that you can exclude downloading of files based on keywords, e.g. don't download any files whose filename includes the string´"patch". So there wouldn't be a separate gogrepo option for not downloading patches, but not downloading files based on keywords the user decides. So if you don't want any separate patches, you tell gogrepo to skip all files with that string ("patch") in the filename. (I didn't check right now how GOG names those update patches and what kind of variations there are possibly...)

I think I eariler suggested such feature that you could skip files based on keywords. My reason was those unofficial non-English versions on some games that are included in Extras, e.g. the Russian-translated version of Planescape Torment. I'd like to be able to skip it based on a keyword (maybe "russian", or even something more elaborate).

Now gogrepo keeps downloading that Russian fan-made translation (the full game) because it is in the extras, even though I am only interested in the English version. The official non-English versions I can easily exclude as they are behind different language tags, but those fan-made translations are not. They are just waste of HDD space for me.
Post edited November 28, 2016 by timppu
Is there a beta channel to test the current development version of gogrepo? At the moment the current version is from 11th november.
Post edited November 28, 2016 by Lebostein
avatar
timppu: I guess, if you can live with the idea that at any point of time, many of your downloaded games may be missing the latest updates GOG has already provided (and you don't necessarily know which games those are).
I only play 1 game at once (The Witcher 1 atm) - so it doesn't matter that much to me if the rest of my library gets updated a bit later. ;-)
avatar
teceem: I only play 1 game at once (The Witcher 1 atm) - so it doesn't matter that much to me if the rest of my library gets updated a bit later. ;-)
Yeah... but when you install your next game, you have to manually check that it has all the latest updates in your local collection, and wasn't right then when you happened to download it in that "twilight zone" where the base installer wasn't updated yet, but only a separate patch was provided.

Anyway, I'm all for a "keyword-exclusion" feature to be added to gogrepo. Then you could tell gogrepo to skip any files which e.g. start with the string "patch_", while I could tell it to skip any files that include e.g. "torment_russian" OR "torment_001_ru" so that I wouldn't needlessly download the following big files:

Windows Russian localization (Fargus) 1100 MB
Mac Russian localization (Fargus) 1200 MB
Linux Russian localization (Fargus) 1300 MB

which are included in the extras of Planescape Torment, even though all I really wanted to download was the English Windows version + extras of the game. Well over 3 extra gigabytes of useless downloads.
Post edited November 28, 2016 by timppu
avatar
timppu: Yeah... but when you install your next game, you have to manually check that it has all the latest updates in your local collection, and wasn't right then when you happened to download it in that "twilight zone" where the base installer wasn't updated yet, but only a separate patch was provided.
Usually it takes just a couple of days for GOG to update the full installer with the latest patch. I'll just run GOGrepo update+verify once in a while to check if any full installers have been updated.
But it's the same thing with patches right? You can never be sure (without checking) if a new patch hasn't been released since the last time you downloaded the "latest" patch...