SYNOPSIS
lgogdownloader [OPTION]...DESCRIPTION
An open-source GOG.com downloader for Linux users which uses the same API as the official GOGDownloader.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.
These games are currently offered only for the Microsoft Windows® and Apple OS X® operating systems. To play these games under GNU/Linux will require a compatibility layer such as Wine. Usage of such a program is outside the scope of this document.
LGOGDownloader 2.28 Options:
- -h [ --help ]
- Print help message
- --version
- Print version information
- --login
- Login
- --list
- List games
- --list-details
- List games with detailed info
- --download
- Download
- --repair
- 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)
- --game arg
- Set regular expression filter for download/list/repair (Perl syntax) Aliases: "all", "free" Alias "free" doesn't work with cached details
- --create-xml [=arg(=automatic)]
- Create GOG XML for file "automatic" to enable automatic XML creation
- --update-check
-
Check for update notifications
- --check-orphans arg
- 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)$'
- --status
- Show status of files
- Output format:
- statuscode gamename filename filesize filehash
- Status codes:
- OK - File is OK ND - File is not downloaded MD5 - MD5 mismatch, different version FS - File size mismatch, incomplete download
- --save-config
- Create config file with current settings
- --reset-config
- Reset config settings to default
- --report [=arg(=lgogdownloader-report.log)]
- Save report of downloaded/repaired files to specified file Default filename: lgogdownloader-report .log
- --update-cache
- Update game details cache
- --no-platform-detection
- 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-file arg
- Download files using fileid
- Format:
- "gamename/fileid" or: "gogdownloader://gamename/fileid"
- Multiple files:
- "gamename1/fileid1,gamename2/fileid2" or: "gogdownloader://gamename1/fileid1, gamename2/fileid2"
- This option ignores all subdir options.
- The files are downloaded to directory specified with --directory option.
- -o [ --output-file ] arg
- Set filename of file downloaded with --download-file.
- --wishlist
- Show wishlist
- --login-api
- Login (API only)
- --login-website
- Login (website only)
- --directory arg (=.)
- Set download directory
- --limit-rate arg (=0)
- Limit download rate to value in kB 0 = unlimited
- --xml-directory arg
- Set directory for GOG XML files
- --chunk-size arg (=10)
- Chunk size (in MB) when creating XML
- --platform arg (=w+l)
- Select which installers are downloaded Windows = w|win|windows|1 Mac = m|mac|osx|2 Linux = l|lin|linux|4 All = all|7
- Set priority by separating values with
- "," Combine values by separating with "+" Example: Linux if available otherwise Windows and Mac: l,w+m
- --language arg (=en)
- Select which language installers are downloaded English = en|eng|english|1 German = de|deu|ger|german|2 French = fr|fra|fre|french|4 Polish = pl|pol|polish|8 Russian = ru|rus|russian|16 Chinese = cn|zh|zho|chi|chinese|32 Czech = cz|cs|ces|cze|czech|64 Spanish = es|spa|spanish|128 Hungarian = hu|hun|hungarian|256 Italian = it|ita|italian|512 Japanese = jp|ja|jpn|japanese|1024 Turkish = tr|tur|turkish|2048 Portuguese = pt|por|portuguese|4096 Korean = ko|kor|korean|8192 Dutch = nl|nld|dut|dutch|16384 Swedish = sv|swe|swedish|32768 Norwegian = no|nor|norwegian|65536 Danish = da|dan|danish|131072 Finnish = fi|fin|finnish|262144 Brazilian Portuguese = br|pt_br|pt-br|ptbr|brazilian_portugues e|524288 Slovak = sk|slk|slo|slovak|1048576 Add the values to download multiple languages All = all|2097151 French + Polish = "fr+pl"|12 (4+8=12)
- Set priority by separating values with
- "," Combine values by separating with "+" Example: German if available otherwise English and French: de,en+fr
- --no-remote-xml
- Don't use remote XML for repair
- --no-unicode
- Don't use Unicode in the progress bar
- --no-color
- Don't use coloring in the progress bar
- --no-duplicate-handling
- Don't use duplicate handler for installers Duplicate installers from different languages are handled separately
- --no-subdirectories
- Don't create subdirectories for extras, patches and language packs
- --verbose
- Print lots of information
- --insecure
- Don't verify authenticity of SSL certificates
- --timeout arg (=10)
- Set timeout for connection Maximum time in seconds that connection phase is allowed to take
- --retries arg (=3)
- Set maximum number of retries on failed download
- --wait arg (=0)
- Time to wait between requests (milliseconds)
- --cover-list arg (=https://sites.google.com/site/gogdownloader/covers.xml)
- Set URL for cover list
- --subdir-installers arg
- Set subdirectory for extras Templates: - %platform% - %gamename% - %dlcname%
- --subdir-extras arg (=extras)
- Set subdirectory for extras Templates: - %platform% - %gamename% - %dlcname%
- --subdir-patches arg (=patches)
- Set subdirectory for patches Templates: - %platform% - %gamename% - %dlcname%
- --subdir-language-packs arg (=languagepacks)
- Set subdirectory for language packs Templates: - %platform% - %gamename% - %dlcname%
- --subdir-dlc arg (=dlc/%dlcname%)
- Set subdirectory for dlc Templates: - %platform% - %gamename% - %dlcname%
- --subdir-game arg (=%gamename%)
- Set subdirectory for game Templates: - %platform% - %gamename% - %dlcname%
- --use-cache
- Use game details cache
- --cache-valid arg (=2880)
- Set how long cached game details are valid (in minutes) Default: 2880 minutes (48 hours)
- --save-serials
- Save serial numbers when downloading
- --ignore-dlc-count [=arg(=.*)]
- 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
- --include arg (=all)
- Select what to download/list/repair Installers = i|installers|1 Extras = e|extras|2 Patches = p|patches|4 Language packs = l|languagepacks|langpa cks|8 Covers = c|cover|covers|16 DLCs = d|dlc|dlcs|32 Separate with "," to use multiple values
- --exclude arg (=covers)
- Select what not to download/list/repair Installers = i|installers|1 Extras = e|extras|2 Patches = p|patches|4 Language packs = l|languagepacks|langpa cks|8 Covers = c|cover|covers|16 DLCs = d|dlc|dlcs|32 Separate with "," to use multiple values
- --automatic-xml-creation
- Automatically create XML data after download has completed
- --save-changelogs
- Save changelogs when downloading
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-/lgogdownloaderFILES
- $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/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>
}