Scroll to navigation

LGOGDOWNLOADER(1) User Commands LGOGDOWNLOADER(1)

NAME

LGOGDownloader - downloader for GOG.com games and other files

SYNOPSIS

lgogdownloader [OPTION]...

DESCRIPTION

An open-source GOG.com downloader for Linux users which uses the same API as GOG Galaxy.

LGOGDownloader can download purchased games, query GOG.com to see if game files have changed, as well as downloading extras such as artwork and manuals. It is capable of downloading language-specific installers for games where they exist.

LGOGDownloader 3.9 Options:

Print help message
Print version information
Login
List games
List games with detailed info
Download
Repair downloaded files Use --repair --download to redownload files when filesizes don't match (possibly different version). Redownload will rename the old file (appends .old to filename)
Set regular expression filter for download/list/repair (Perl syntax)
Create GOG XML for file "automatic" to enable automatic XML creation
Check notifications
List/download only games with update flag set
Clear update notification flags
Check for orphaned files (files found on local filesystem that are not found on GOG servers). Sets regular expression filter (Perl syntax) for files to check. If no argument is given then the regex defaults to '.*\.(zip|exe|bin|dmg|old|deb|tar\.gz|p kg|sh)$'
Show status of files
statuscode gamename filename filesize filehash
OK - File is OK ND - File is not downloaded MD5 - MD5 mismatch, different version FS - File size mismatch, incomplete download
Create config file with current
settings
Reset config settings to default
Save report of downloaded/repaired
files to specified file
Default filename: lgogdownloader-report
.log
Update game details cache
Don't try to detect supported platforms
from game shelf.
Skips the initial fast platform
detection and detects the supported
platforms from game details which is
slower but more accurate.
Useful in case platform identifier is
missing for some games in the game
shelf.
Using --platform with --list doesn't
work with this option.
Download files using fileid
"gamename/fileid"
or: "gogdownloader://gamename/fileid"
"gamename1/fileid1,gamename2/fileid2"
or: "gogdownloader://gamename1/fileid1,
gamename2/fileid2"
The files are downloaded to directory
specified with --directory option.
Set filename of file downloaded with
--download-file.
Show wishlist
Path to CA certificate bundle in PEM
format
Do not adjust permissions of sensitive
files
Set user agent
Enable login GUI when encountering
reCAPTCHA on login form
List tags
Filter using tags. Separate with "," to
use multiple values
Set download directory
Limit download rate to value in kB
0 = unlimited
Set directory for GOG XML files
Chunk size (in MB) when creating XML
Select which installers are downloaded
Windows = w|win|windows
Mac = m|mac|osx
Linux = l|lin|linux
All = all
","
Combine values by separating with "+"
Example: Linux if available otherwise
Windows and Mac: l,w+m
Select which language installers are
downloaded
English = en|eng|english|en[_-]US
German = de|deu|ger|german|de[_-]DE
French = fr|fra|fre|french|fr[_-]FR
Polish = pl|pol|polish|pl[_-]PL
Russian = ru|rus|russian|ru[_-]RU
Chinese = cn|zh|zho|chi|chinese|zh[_-]C
N
Czech = cz|cs|ces|cze|czech|cs[_-]CZ
Spanish = es|spa|spanish|es[_-]ES
Hungarian = hu|hun|hungarian|hu[_-]HU
Italian = it|ita|italian|it[_-]IT
Japanese = jp|ja|jpn|japanese|ja[_-]JP
Turkish = tr|tur|turkish|tr[_-]TR
Portuguese = pt|por|portuguese|pt[_-]PT
Korean = ko|kor|korean|ko[_-]KR
Dutch = nl|nld|dut|dutch|nl[_-]NL
Swedish = sv|swe|swedish|sv[_-]SE
Norwegian = no|nor|norwegian|nb[_-]no|n
n[_-]NO
Danish = da|dan|danish|da[_-]DK
Finnish = fi|fin|finnish|fi[_-]FI
Brazilian Portuguese =
br|pt_br|pt-br|ptbr|brazilian_portugues
e
Slovak = sk|slk|slo|slovak|sk[_-]SK
Bulgarian = bl|bg|bul|bulgarian|bg[_-]B
G
Ukrainian = uk|ukr|ukrainian|uk[_-]UA
Spanish (Latin American) =
es_mx|es-mx|esmx|es-419|spanish_latin_a
merican
Arabic = ar|ara|arabic|ar[_-][A-Z]{2}
Romanian = ro|ron|rum|romanian|ro[_-][R
M]O
Hebrew = he|heb|hebrew|he[_-]IL
Thai = th|tha|thai|th[_-]TH
All = all
","
Combine values by separating with "+"
Example: German if available otherwise
English and French: de,en+fr
Don't use remote XML for repair
Don't use Unicode in the progress bar
Don't use coloring in the progress bar
or status messages
Don't use duplicate handler for
installers
Duplicate installers from different
languages are handled separately
Don't create subdirectories for extras,
patches and language packs
Print lots of information
Set libcurl to verbose mode
Don't verify authenticity of SSL
certificates
Set timeout for connection
Maximum time in seconds that connection
phase is allowed to take
Set maximum number of retries on failed
download
Time to wait between requests
(milliseconds)
Set subdirectory for installers
Templates:
- %platform%
- %gamename%
- %gamename_firstletter%
- %dlcname%
Set subdirectory for extras
Templates:
- %platform%
- %gamename%
- %gamename_firstletter%
- %dlcname%
Set subdirectory for patches
Templates:
- %platform%
- %gamename%
- %gamename_firstletter%
- %dlcname%
Set subdirectory for language packs
Templates:
- %platform%
- %gamename%
- %gamename_firstletter%
- %dlcname%
Set subdirectory for dlc
Templates:
- %platform%
- %gamename%
- %gamename_firstletter%
- %dlcname%
Set subdirectory for game
Templates:
- %platform%
- %gamename%
- %gamename_firstletter%
- %dlcname%
Use game details cache
Set how long cached game details are
valid (in minutes)
Default: 2880 minutes (48 hours)
Save serial numbers when downloading
Set regular expression filter for games
to ignore DLC count information
Ignoring DLC count information helps in
situations where the account page
doesn't provide accurate information
about DLCs
Select what to download/list/repair
Installers = i|installers
Extras = e|extras
Patches = p|patches
Language packs = l|languagepacks|langpa
cks
DLCs = d|dlc|dlcs
Separate with "," to use multiple
values
Select what not to download/list/repair
Installers = i|installers
Extras = e|extras
Patches = p|patches
Language packs = l|languagepacks|langpa
cks
DLCs = d|dlc|dlcs
Separate with "," to use multiple
values
Automatically create XML data after
download has completed
Save changelogs when downloading
Number of download threads
Number of threads for getting product
info
Use DLC list specified with --dlc-list
https://raw.githubusercontent.com/Sude-/lgogdownloader-lists/master/game_has_dlc.txt)
Set URL for list of games that have DLC
Set interval for progress bar update
(milliseconds)
Value must be between 1 and 10000
Set time in number seconds that the
transfer speed should be below the rate
set with --lowspeed-rate for it to
considered too slow and aborted
Set average transfer speed in bytes per
second that the transfer should be
below during time specified with
--lowspeed-timeout for it to be
considered too slow and aborted
Include games that have been set hidden
in account page
Don't check the hashes of the files
whose size matches that on the server

Experimental:

Install game using product id [product_id/build_index] or gamename regex [gamename/build_id] Build index is used to select a build and defaults to 0 if not specified.
product 12345
Show game builds using product id [product_id/build_index] or gamename regex [gamename/build_id] Build index is used to select a build and defaults to 0 if not specified.
product 12345
Select platform Windows = w|win|windows Mac = m|mac|osx Linux = l|lin|linux
Select language English = en|eng|english|en[_-]US German = de|deu|ger|german|de[_-]DE French = fr|fra|fre|french|fr[_-]FR Polish = pl|pol|polish|pl[_-]PL Russian = ru|rus|russian|ru[_-]RU Chinese = cn|zh|zho|chi|chinese|zh[_-]C N Czech = cz|cs|ces|cze|czech|cs[_-]CZ Spanish = es|spa|spanish|es[_-]ES Hungarian = hu|hun|hungarian|hu[_-]HU Italian = it|ita|italian|it[_-]IT Japanese = jp|ja|jpn|japanese|ja[_-]JP Turkish = tr|tur|turkish|tr[_-]TR Portuguese = pt|por|portuguese|pt[_-]PT Korean = ko|kor|korean|ko[_-]KR Dutch = nl|nld|dut|dutch|nl[_-]NL Swedish = sv|swe|swedish|sv[_-]SE Norwegian = no|nor|norwegian|nb[_-]no|n n[_-]NO Danish = da|dan|danish|da[_-]DK Finnish = fi|fin|finnish|fi[_-]FI Brazilian Portuguese = br|pt_br|pt-br|ptbr|brazilian_portugues e Slovak = sk|slk|slo|slovak|sk[_-]SK Bulgarian = bl|bg|bul|bulgarian|bg[_-]B G Ukrainian = uk|ukr|ukrainian|uk[_-]UA Spanish (Latin American) = es_mx|es-mx|esmx|es-419|spanish_latin_a merican Arabic = ar|ara|arabic|ar[_-][A-Z]{2} Romanian = ro|ron|rum|romanian|ro[_-][R M]O Hebrew = he|heb|hebrew|he[_-]IL Thai = th|tha|thai|th[_-]TH
Select architecture 32-bit = 32|x86|32bit|32-bit 64-bit = 64|x64|64bit|64-bit
Don't download dependencies during --galaxy-install
Set subdirectory for galaxy install
- %install_dir% = Installation directory from Galaxy API response - %gamename% = Game name - %title% = Title of the game - %product_id% = Product id of the game - %install_dir_stripped% = %install_dir% with some characters stripped - %title_stripped% = %title% with some characters stripped
"stripped" means that every character
that doesn't match the following list is removed: > alphanumeric > space > - _ . ( ) [ ] { }
Set priority for used CDNs Edgecast = ec|edgecast Highwinds = hw|highwinds|high_winds GOG = gog|gog_cdn Lumen = lumen|lumen_cdn Akamai = akamai|akamai_cdn|akamai_ec|ak amai_edgecast_proxy
"," Combine values by separating with "+"
Delete orphaned files during --galaxy-install

BLACKLIST


Allows user to specify individual files that should not be downloaded or mentioned as orphans.

Each line in the file specifies one blacklist expression, except for empty lines and lines starting with #. First few characters specify blacklist item type and flags. So far, only regular expression (perl variant) are supported, so each line must start with "Rp" characters. After a space comes the expression itself. Expressions are matched against file path relative to what was specified as --directory.

Example black list
# used to store manually downloaded mods/patches/maps/, don't mention it as orphans
Rp ^[^/]*/manual/.*
# included with every *divinity game, once is enough
Rp beyond_divinity/extras/bd_ladymageknight.zip
Rp divinity_2_developers_cut/extras/divinity_2_ladymageknight.zip

# extra 6GB is A LOT of space if you don't actually plan to mod your game
Rp the_witcher_2/extras/the_witcher_2_redkit.zip
Rp the_witcher_2/extras/extras_pack_3_hu_pl_ru_tr_zh_.zip
Rp the_witcher_2/extras/extras_pack_2_fr_it_jp_.zip

PRIORITIES

Separating values with "," when using language and platform switches enables a priority-based mode: only the first matching one will be downloaded.

For example, setting language to fr+en means both French and English will be downloaded (if available) for all games. Setting language to fr,en means that the French version (and only that one) will be downloaded if available, and if not, the English version will be downloaded.

You're allowed to "stack" codes in the priority string if needed. If you set language to es+fr,en it means it'll download both Spanish (es) and French (fr) versions if they are available, and the English (en) one only if none of French and Spanish are available.

AVAILABILITY

The latest version of this distribution is available from https://github.com/Sude-/lgogdownloader

FILES


$XDG_CONFIG_HOME/lgogdownloader/
Storage for configuration files and cookies
If $XDG_CONFIG_HOME is not set, it will use $HOME/.config/lgogdownloader/.

$XDG_CACHE_HOME/lgogdownloader/xml/
Storage for XML files
If $XDG_CACHE_HOME is not set, it will use $HOME/.cache/lgogdownloader/xml/.

$XDG_CONFIG_HOME/lgogdownloader/blacklist.txt
Allows user to specify individual files that should not be downloaded.
It doesn't have to exist, but if it does exist, it must be readable to lgogdownloader.

$XDG_CONFIG_HOME/lgogdownloader/ignorelist.txt
Allows user to specify individual files that should not be mentioned as orphans. The file has the same format and interpretation as a blacklist.
It doesn't have to exist, but if it does exist, it must be readable to lgogdownloader.

$XDG_CONFIG_HOME/lgogdownloader/game_has_dlc.txt
Allows user to specify which games have dlc and should have their DLC count information ignored. The file has the same format and interpretation as a blacklist.
It doesn't have to exist, but if it does exist, it must be readable to lgogdownloader.
If the file exists lgogdownloader uses it instead of list specified with --dlc-list option

$XDG_CONFIG_HOME/lgogdownloader/gamespecific/gamename.conf
JSON formatted file. Sets game specific settings for gamename.
Allowed settings are language, platform, dlc, ignore-dlc-count subdirectories, directory, subdir-game, subdir-installers, subdir-extras, subdir-patches, subdir-language-packs and subdir-dlc.
The dlc option is limited to disabling DLC for specific game. It can't enable DLC listing/downloading if --no-dlc option is used.
Must be in the following format:
{
"language" : <string>,
"platform" : <string>,
"dlc" : <bool>,
"ignore-dlc-count" : <bool>,
"subdirectories" : <bool>,
"directory" : <string>,
"subdir-game" : <string>,
"subdir-installers" : <string>,
"subdir-extras" : <string>,
"subdir-patches" : <string>,
"subdir-language-packs" : <string>,
"subdir-dlc" : <string>
}
April 2022 LGOGDownloader 3.9