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
timppu: Sorry I don't recall if I've asked this already and just forgot... but when it says "lgogdownloader uses the Galaxy API", what does it mean in practice?
I think it means it can download Galaxy builds. But there was some setting which CDN to use as well. Check --galaxy-cdn-priority parameter.
avatar
timppu: Sorry I don't recall if I've asked this already and just forgot... but when it says "lgogdownloader uses the Galaxy API", what does it mean in practice?
avatar
shmerl: I think it means it can download Galaxy builds. But there was some setting which CDN to use as well. Check --galaxy-cdn-priority parameter.
I don't have it installed (yet), but merely to know if they use the Fastly (browser) or Akamai Technologies (Galaxy) CDN. The latter appear to be much faster for offline installer downloads.

If lgogdownloader can download "Galaxy builds" (I presume it to mean whatever Galaxy downloads when it installs games, ie. not the offline installers), then I presume it can at least access the Akamai CDN. Unless GOG keeps Galaxy builds also on Fastly CDN even though Galaxy apparently never uses Fastly CDN (to my knowledge).
Post edited July 28, 2024 by timppu
Does Lgogdownloader use a manifest, somewhat like gogrepo.py and gogcli.exe do?

And if so, are there download links in it?
In the case of the other two programs, those links are the same as the browser ones found in your GOG library web page.

And does anyone know if GOG create the true download link for a CDN?
Or is it the CDN themselves who provide that link to GOG?
avatar
shmerl: I think it means it can download Galaxy builds. But there was some setting which CDN to use as well. Check --galaxy-cdn-priority parameter.
avatar
timppu: I don't have it installed (yet), but merely to know if they use the Fastly (browser) or Akamai Technologies (Galaxy) CDN. The latter appear to be much faster for offline installer downloads.

If lgogdownloader can download "Galaxy builds" (I presume it to mean whatever Galaxy downloads when it installs games, ie. not the offline installers), then I presume it can at least access the Akamai CDN. Unless GOG keeps Galaxy builds also on Fastly CDN even though Galaxy apparently never uses Fastly CDN (to my knowledge).
Offline installers seem to use Fastly (while downloading, running whois on the ip address reported from jnettop).

For Galaxy CDNs (i.e. not offline installers, as you said), per the man page:

--galaxy-cdn-priority arg (=edgecast,highwinds,akamai,lumen,gog_cdn)
Set priority for used CDNs
avatar
jedi5002: Offline installers seem to use Fastly (while downloading, running whois on the ip address reported from jnettop).

For Galaxy CDNs (i.e. not offline installers, as you said), per the man page:

--galaxy-cdn-priority arg (=edgecast,highwinds,akamai,lumen,gog_cdn)
Set priority for used CDNs
avatar
jedi5002:
This is not totally clear though, as Galaxy can also download Offline Installers through the Extras section.

Which CDN does Galaxy use when downloading Offline Installers?
avatar
Timboli: Which CDN does Galaxy use when downloading Offline Installers?
Fastky

I'm sorry about the late reply.
Post edited August 08, 2024 by jedi5002
avatar
jedi5002: Fastky

I'm sorry about the late reply.
No worries, thanks.

Unexpected though, as that would mean no advantage to using Galaxy to download Offline Installers, other than its ability to multi-stream and resume supposedly.

So I then wonder if Lgogdownloader can use the other CDN to download Offline Installers?

In fact I am a bit vague on what Lgogdownloader is doing in regard to Galaxy commands?
Does it offer the ability to download plus install like Galaxy does?
avatar
Timboli: Which CDN does Galaxy use when downloading Offline Installers?
avatar
jedi5002: Fastly

I'm sorry about the late reply.
That's odd. In another thread someone else claimed the Galaxy client was using Akamai, and also the fact that with e.g. browser downloads I get around 15-34 MBytes/sec downloads (with e.g. four simultaneous download threads), while with Galaxy offline installer downloads I've reached up to 70 MBytes/sec.

I thought the reason for that disparity would be different CDNs (Galaxy uses speedier CDN even for offline installer downloads), but if that is not the case, then it must be about something else...
Post edited August 10, 2024 by timppu
avatar
Timboli: No worries, thanks.

Unexpected though, as that would mean no advantage to using Galaxy to download Offline Installers, other than its ability to multi-stream and resume supposedly.

So I then wonder if Lgogdownloader can use the other CDN to download Offline Installers?

In fact I am a bit vague on what Lgogdownloader is doing in regard to Galaxy commands?
Does it offer the ability to download plus install like Galaxy does?
avatar
timppu: That's odd. In another thread someone else claimed the Galaxy client was using Akamai, and also the fact that with e.g. browser downloads I get around 15-34 MBytes/sec downloads (with e.g. four simultaneous download threads), while with Galaxy offline installer downloads I've reached up to 70 MBytes/sec.

I thought the reason for that disparity would be different CDNs (Galaxy uses speedier CDN even for offline installer downloads), but if that is not the case, then it must be about something else...
I think I misunderstood / misread previous comments. I was interpreting them exclusively from the point-of-view of lgogdownloader (and probably a bit of fatigue). When I saw "Galaxy", I was specifically thinking about how lgogdownlaoder interfaces with it / the API, not Gog's client (which I've not used). Galaxy Client pulling from Akamai (and not Fastly) could certainly be possible. Lgogdownloader (at least for me), in my recent inspection, only downloaded offline installers from Fastly.

When lgogdownloader is using the '--galaxy-install' method, it mirrors the "loose" files from one of Gog's CDNs, and puts the files in a <location of your choosing>/<sub-directory> (the default sub-directory being received from Galaxy API).
e.g. </home/user/GOG.com/GALAXY>/<Cyberpunk 2077> (sans angle brackets)

In my usage / understanding, '--galaxy-install' is equivalent to using 'innoextract' to extract an offline installer. If there's registry entries that need to be added, or directories to be created in e.g. AppData, it won't do that.

I'm not sure how helpful I can be (also considering my prior confusion). I do things quite manually; I know Lutris exists, but I've never used it.
avatar
jedi5002: I think I misunderstood / misread previous comments. I was interpreting them exclusively from the point-of-view of lgogdownloader (and probably a bit of fatigue). When I saw "Galaxy", I was specifically thinking about how lgogdownlaoder interfaces with it / the API, not Gog's client (which I've not used). Galaxy Client pulling from Akamai (and not Fastly) could certainly be possible. Lgogdownloader (at least for me), in my recent inspection, only downloaded offline installers from Fastly.
Ok thanks, that was what I wanted to know. So using lgogdownloader (instead of e.g. gogrepoc or a web browser) hoping to get better download speeds for the offline installers from non-Fastly CDN is not an option at least at this point.

Maybe it would be possible since the Galaxy client seems to do that, downloading the offline installers faster from non-Fastly CDN. Since it is possible to download "Galaxy files" with a third-party tool, I presume it should be possible to download also "Galaxy offline installers".
Post edited August 11, 2024 by timppu
avatar
jedi5002: Lgogdownloader (at least for me), in my recent inspection, only downloaded offline installers from Fastly.
I wonder, Is that because you are not specifying a specific CDN, but just going with the default?

avatar
jedi5002: When lgogdownloader is using the '--galaxy-install' method, it mirrors the "loose" files from one of Gog's CDNs, and puts the files in a <location of your choosing>/<sub-directory> (the default sub-directory being received from Galaxy API).
e.g. </home/user/GOG.com/GALAXY>/<Cyberpunk 2077> (sans angle brackets)

In my usage / understanding, '--galaxy-install' is equivalent to using 'innoextract' to extract an offline installer. If there's registry entries that need to be added, or directories to be created in e.g. AppData, it won't do that.
Thanks for the info.
It sounds like lgogdownloader is kind of downloading another type of Offline Installer, if it isn't automatically installing. Or in other words, only doing the first half of what Galaxy does, unless you use the '--galaxy-install' command. If so, then how similar is that download to the Offline Installer version, I wonder? Or if we ponder the meaning of loose files, is the result many files in the destination folder, so kind of similar to extract?

avatar
jedi5002: I'm not sure how helpful I can be (also considering my prior confusion).
Any enlightenment is better than none, so thanks.
avatar
Timboli: (…) how similar is that download to the Offline Installer version, I wonder?
Downloading a DRM-free installer from GOG website or through LGOGDownloader gives the exact same file.
avatar
Timboli: (…) how similar is that download to the Offline Installer version, I wonder?
avatar
vv221: Downloading a DRM-free installer from GOG website or through LGOGDownloader gives the exact same file.
You misunderstand, I am not talking about downloading the Offline Installers and comparing them with other Offline Installers, because of course they would be the same, regardless of program used for downloading, including Galaxy's Extras option for Offline Installers.

I was asking about the Galaxy variant of a game from GOG, that downloads and installs automatically. If you re-read what was said, you should note that 'loose' files was mentioned.

As I recall it, Galaxy basically streams loose files to your PC to a temporary location and then installs from there. And from what I have read here, Lgogdownloader can do the same thing, but can split it into two separate processes, and only do one of them if desired.

Also note, for further proof of this, that Lgogdownloader can use one or more of several CDN, as seen in the program command parameters, which was also mentioned earlier.

--galaxy-cdn-priority arg (=edgecast,highwinds,akamai,lumen,gog_cdn)

NOTE - There is no mention of Fastly as an optional CDN in that list.
Post edited August 14, 2024 by Timboli
e5d2c87 Galaxy: Refactor CDN priority handling
Adds option --galaxy-list-cdns to list available CDNs for a product
Makes CDN url template handling more generic so the downloader should now be able to handle new CDNs without any changes to code (assuming that GOG doesn't change the API json response structure)
This change removed all CDN specific code
I also removed references to CDNs that are no longer used like Lumen (sold to Akamai in October 2023) and Highwinds (shut down in November 2023)
Changes the default Galaxy CDN priority to "edgecast,akamai_edgecast_proxy,fastly"

5c4b201 Fix login check when redirected to embedded version of website
Redirect to embedded version of GOG website happens if you set user-agent of lgogdownloader to one used by GOG Galaxy.
For example: --user-agent "GOGGalaxyClient/2.0.75.142 (GOG Galaxy) 83b6745cff679691b69876bc7ee33e05e5d90bda"

b4c6638 Add option to force browser login
Adds --browser-login to force browser based login method

52b8bdc Fix galaxyAPI::getPathFromDownlinkUrl with Fastly CDN urls

b30515b Check for errors in Util::htmlToXhtml
Fixes crash caused by errors in html to xhtml conversion
Post edited August 22, 2024 by Sude
Would this fix the following?

$ /usr/bin/lgogdownloader --update-cache --threads 8
Getting game names (46/46) 33 / 33
terminate called after throwing an instance of 'std::length_error'
what(): basic_string::_M_replace
Aborted


avatar
Sude: e5d2c87 Galaxy: Refactor CDN priority handling
Adds option --galaxy-list-cdns to list available CDNs for a product
Makes CDN url template handling more generic so the downloader should now be able to handle new CDNs without any changes to code (assuming that GOG doesn't change the API json response structure)
This change removed all CDN specific code
I also removed references to CDNs that are no longer used like Lumen (sold to Akamai in October 2023) and Highwinds (shut down in November 2023)
Changes the default Galaxy CDN priority to "edgecast,akamai_edgecast_proxy,fastly"

5c4b201 Fix login check when redirected to embedded version of website
Redirect to embedded version of GOG website happens if you set user-agent of lgogdownloader to one used by GOG Galaxy.
For example: --user-agent "GOGGalaxyClient/2.0.75.142 (GOG Galaxy) 83b6745cff679691b69876bc7ee33e05e5d90bda"

b4c6638 Add option to force browser login
Adds --browser-login to force browser based login method

52b8bdc Fix galaxyAPI::getPathFromDownlinkUrl with Fastly CDN urls

b30515b Check for errors in Util::htmlToXhtml
Fixes crash caused by errors in html to xhtml conversion