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

×
avatar
Sude: ffab972 Increased the maximum patch id number

Some games had patch id numbers that were higher than the current maximum. For example Divinity: Original Sin had patch named "en1patch8" which was never listed/downloaded because it was higher than the previous maximum.

Currently the downloader finds the patch nodes in API response by going through all possible combinations (brute force).
A better solution should be implemented if patch id numbers are going to become even higher.
Thanks, like I said it's not really that big of a deal, it's just a bit puzzling. Ultimately, I'm working on a script to split the download up into more manageable chunks that also reduces the unpredictability a bit.

It's a good program, but with the amount of options that are needed, I find that running it from a script makes things a lot easier.
avatar
Sude: This is not expected behavior. The downloader shouldn't care about the filesize at all. What filesystem are you using?
Is anyone else having this problem?

edit: is this 32-bit system?
If you are using 32-bit system try adding these to src/downloader.cpp
#define _LARGEFILE_SOURCE
#define _LARGEFILE64_SOURCE
#define _FILE_OFFSET_BITS 64
Does that help?
avatar
Huinehtar: Sorry, I haven't seen your reply last time I logged in the forums, yes I used a 32 bits system, but (for other reasons), I switched to 64 bits and I haven't tested larger files yet. Thanks for the tip, but as I said, I cannot say if it would have worked in my case ;)
I will answer about files > 2 Gio when I download one of them (except 64 bits, my settings are almost the same than the previous I had).
Thanks again!
I tried this fix on 32 bit Ubuntu, recompiled, and it did not work. _LARGEFILE_SOURCE and _LARGEFILE64_SOURCE were already defined, but the other define did not seem to fix the bug.

Its failing to download the mark_of_the_ninja file that is a little larger than 2GB. No error printed in output. I'll try to do a little more digging...

EDIT: tested on native ext4 and also with a USB drive formatted NTFS. Both fail to download the file.
Post edited August 09, 2014 by retrobits
a3673a5 Use regex to find patch and language pack nodes in API response
avatar
retrobits: I tried this fix on 32 bit Ubuntu, recompiled, and it did not work. _LARGEFILE_SOURCE and _LARGEFILE64_SOURCE were already defined, but the other define did not seem to fix the bug.

Its failing to download the mark_of_the_ninja file that is a little larger than 2GB. No error printed in output. I'll try to do a little more digging...

EDIT: tested on native ext4 and also with a USB drive formatted NTFS. Both fail to download the file.
Try current git with this patch
https://sites.google.com/site/gogdownloader/use_off_t.diff
It changes most size_t variables in the code to use off_t instead
avatar
retrobits: I tried this fix on 32 bit Ubuntu, recompiled, and it did not work. _LARGEFILE_SOURCE and _LARGEFILE64_SOURCE were already defined, but the other define did not seem to fix the bug.

Its failing to download the mark_of_the_ninja file that is a little larger than 2GB. No error printed in output. I'll try to do a little more digging...

EDIT: tested on native ext4 and also with a USB drive formatted NTFS. Both fail to download the file.
avatar
Sude: Try current git with this patch
https://sites.google.com/site/gogdownloader/use_off_t.diff
It changes most size_t variables in the code to use off_t instead
actually your first suggestion worked fine, I just didn't #define early enough. All that is needed is to append:
-D_FILE_OFFSET_BITS=64
to CFLAGS (line 15) in the Makefile. Works like a champ now.
214a843 Change --no-cover to --cover

If you have "no-cover" option in ~/.config/lgogdownloader/config.cfg you will get this error when trying to compile

help2man: can't get `--help' info from bin/Release/lgogdownloader
Try `--no-discard-stderr' if option outputs to stderr
Makefile:99: recipe for target 'after_release' failed
make: *** [after_release] Error 1
Remove "no-cover" from config.cfg or change it to "cover" to fix this issue
Post edited August 15, 2014 by Sude
avatar
Sude: 214a843 Change --no-cover to --cover
Is there a way to download only tarball and not deb packages when setting Linux as a platform? Using

--download --platform 4 --game <game>

downloads both, while I'd prefer to use tarballs only. May be they can be filtered with another option like --tarballs-only ?
Post edited August 17, 2014 by shmerl
avatar
Sude: 214a843 Change --no-cover to --cover
avatar
shmerl: Is there a way to download only tarball and not deb packages when setting Linux as a platform? Using

--download --platform 4 --game <game>

downloads both, while I'd prefer to use tarballs only. May be they can be filtered with another option like --tarballs-only ?
Have you tried --platform=4 --no-installers without --no-patches. I don't remember how LGOGDownloader handles it, but the GOG internals store the .deb as an installer and the tarball as a patch.
avatar
ssokolow: Have you tried --platform=4 --no-installers without --no-patches. I don't remember how LGOGDownloader handles it, but the GOG internals store the .deb as an installer and the tarball as a patch.
Nope, --platform=4 --no-installers skips tarballs.

Looking at the code, that's a bit unexpected, since when --no-patches is absent it's supposed to download them. I might look more on it a bit later.
Post edited August 17, 2014 by shmerl
avatar
ssokolow: Have you tried --platform=4 --no-installers without --no-patches. I don't remember how LGOGDownloader handles it, but the GOG internals store the .deb as an installer and the tarball as a patch.
avatar
shmerl: Nope, --platform=4 --no-installers skips tarballs.

Looking at the code, that's a bit unexpected, since when --no-patches is absent it's supposed to download them. I might look more on it a bit later.
Tarballs in patch nodes are treated as installers and thus --no-installers skips them
https://github.com/Sude-/lgogdownloader/blob/master/src/api.cpp#L418-L430

For now you can use blacklist to skip deb packages by adding

Rp .*\.deb$
to $XDG_CONFIG_HOME/lgogdownloader/blacklist.txt

Relevant feature request on github
https://github.com/Sude-/lgogdownloader/issues/25
Post edited August 18, 2014 by Sude
avatar
Sude: Tarballs in patch nodes are treated as installers and thus --no-installers skips them
https://github.com/Sude-/lgogdownloader/blob/master/src/api.cpp#L418-L430

For now you can use blacklist to skip deb packages by adding

Rp .*\.tar\.gz$
avatar
Sude: to $XDG_CONFIG_HOME/lgogdownloader/blacklist.txt

Relevant feature request on github
https://github.com/Sude-/lgogdownloader/issues/25
Thanks, you probably meant .*\.deb$ as in the comment there. If I'll have time I can add --only-tarballs option with relevant checks in the code (or whatever you prefer to call it).
Post edited August 18, 2014 by shmerl
6eba3c7 Use update/notification flags for patches
11be8a7 Add .pkg to to orphan check regex
5dd8332 Add --no-deb and --no-targz command line options

New default for --check-orphans is '.*\.(zip|exe|bin|dmg|old|deb|tar\.gz|pkg)$'
.pkg is used for Mac patches
LGOGDownloader 2.16
- Fixed blacklisted file causing downloader to skip a game
* Incorrect check for blacklisted file caused the downloader to skip a game instead of skipping just one file
- Added .deb, .tar.gz and .pkg file extensions to orphan check regex
* New default for --check-orphans is '.*\.(zip|exe|bin|dmg|old|deb|tar\.gz|pkg)$'
- Added support for some game specific settings
* $XDG_CONFIG_HOME/lgogdownloader/gamename.conf
* See man page for details
- Fix downloading >2GB files on 32 bit systems
- Use regex to find patch and language pack nodes in API response
- Added blacklist support for --list-details
- Don't download covers by default
* Changed --no-cover to --cover
- Patches now use update/notification flags
- Added --no-deb and --no-targz command line options

https://sites.google.com/site/gogdownloader/lgogdownloader-2.16.tar.gz

sha256: 58f8deeb5c3a50bf66d27b60f75a6160b315715866d7fbd66d32829f678f7c12
md5: bda9b6494ba5b4f95237434555d3a8e2

If you have "no-cover" option in ~/.config/lgogdownloader/config.cfg you will get this error when trying to compile

help2man: can't get `--help' info from bin/Release/lgogdownloader
Try `--no-discard-stderr' if option outputs to stderr
Makefile:99: recipe for target 'after_release' failed
make: *** [after_release] Error 1
Remove "no-cover" from config.cfg or change it to "cover" to fix this issue

sed -e '/no-cover/d' -i ~/.config/lgogdownloader/config.cfg
Post edited August 21, 2014 by Sude
a51fb3e Use boost regex in api if gcc/g++ < 4.9.0

I didn't want boost as dependency for the API implementation in case anyone else wanted to use it and didn't want to include boost. However there are some problems when using std::regex with gcc/g++ < 4.9.0
Because of these issues the git version now uses Boost.Regex in API if gcc < 4.9.0

Should I switch to Boost.Regex completely?
Is anyone else using the API implementation from lgogdownloader?
Let me know your thoughts on the change if you're using the API implementation.
Post edited August 21, 2014 by Sude
I'm having a bit of trouble with 2.16, I get the following error: Error: unrecognised option 'no-cover' . My script doesn't include that option, so, I'm guessing that must have something to do with the default setting.