---
name: "game-data-packager"
section: "6"
platform: "linux"
package: "game-data-packager"
version: "85.1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/game-data-packager"
---

# game-data-packager(6)

build a package (.deb\|.rpm\|...) of game data

## NAME

game-data-packager - build a package (.deb\|.rpm\|...) of game data

## SYNOPSIS

**game-data-packager** \[*OPTIONS*\] *GAME* \[*OPTIONS*\] \[*PER-GAME OPTIONS*\]

## DESCRIPTION

Many open-source games require game data which is licensed incompatibly with the Debian Free Software Guidelines and other Linux distributions' licensing guidelines, or cannot be legally redistributed at all. **game-data-packager** is a tool designed to help you locally assemble packages for Debian or other packaging systems, containing such game data from CD-ROMs, the Internet or elsewhere.

## OPTIONS

- **--package** *PACKAGE*, **-p** *PACKAGE*

  For games that produce more than one package, only produce the specified package. This option can be repeated. For example, **game-data-packager quake2 -i -pquake2-groundzero -pquake2-reckoning** would update the two Quake II expansions (Ground Zero and The Reckoning), building new native-code game modules if necessary, without updating the packages for the base game or the music.

- **--target-format** **arch**\|**deb**\|**rpm**

  Produce packages for the given packaging system. All packaging systems except for **deb** (which represents dpkg) are considered experimental. The default is to try to auto-detect what is appropriate for the system where **game-data-packager** is run.

- **--target-distro** **fedora**\|**suse**\|**...**

  For packaging systems where different Linux distributions need different content (currently this means **rpm**), produce packages suitable for the selected distribution. The default is to try to auto-detect what is appropriate for the system where **game-data-packager** is run.

- **-i**\|**--install**

  Attempt to install the generated package using the *--install-method* and the *--gain-root-command*.

- **--install-method** **apt**\|**dpkg**\|**gdebi**\|**gdebi-gtk**\|**gdebi-kde**\|**dnf**\|**zypper**\|**urpmi**\|**rpm**

  Install the generated package using the requested command. Only methods that can install the selected **--target-format** are valid.

- **--gain-root-command** **pkexec**\|**sudo**\|**su**\|**super**\|**really**\|***COMMAND***

  Use the requested command prefix to run commands as root when needed. **su** uses the **su -c** syntax to run a one-line shell command; the rest (including user-specified commands) are assumed to work as an "adverb" command prefix, similar to **sudo dpkg -i ...** or **pkexec rpm -U ...**.

- **-d** *OUT-DIRECTORY* \| **--destination** *OUT-DIRECTORY*

  Write the generated package to the specified directory, instead of or in addition to installing it.

- **-n**\|**--no-install**

  Do not attempt to install the generated package. This option must be used in conjunction with **-d**.

- **--binary-executables**

  Allow the creation of packages containing native executable code that was not built from publically-available source code. By default, such executables are not packaged to avoid creating a security risk. For example, this allows the proprietary Linux binaries for Quake 4 and Unreal to be packaged.

- **-z**\|**--compress**

  Compress the generated package. This is the default if -i is not used.

- **--no-compress**

  Do not compress the generated package. This is the default if -i is used (since it is not usually useful to compress the package if it will just be installed and then discarded).

- **--download**

  Automatically downloading any missing files from the Internet if possible.

- **--no-download**

  Do not download missing files from the Internet. If the missing files are not very important (for example optional documentation), **game-data-packager** will produce a package that lacks those files; if the missing files are required, **game-data-packager** will not produce a package at all.

- **--save-downloads** *DIRECTORY*

  If files are downloaded, save them to *DIRECTORY*.

- **--verbose**

  Be more verbose, and in particular show output from any external tools that are invoked during operation.

- **--no-verbose**

  Do not show verbose output. This is the default.

- **--debug**

  Show output that is interesting to **game-data-packager** developers.

- *GAME*

  The game being packaged. Running **game-data-packager** without arguments will display a list of valid games.

## PER-GAME OPTIONS

Some games have additional options. Running **game-data-packager** *GAME* **--help** will display a list of valid options for that game.

## NON-GAME MODES

Some non-game-specific modes can be selected by specifying a special keyword instead of the name of a game.

**game-data-packager** \[*COMMON OPTIONS*\] **steam** \[*COMMON OPTIONS*\] \[**--new**\|**--all**\]\
 will package all your Steam games at once.

Most games can only be downloaded with the Windows version of Steam, optionally running through Wine, or by using the **steamcmd** tool. This mode takes the same options as **game-data-packager**, and adds its own options:

- **--new**

  Only package new games

- **--all**

  Package all games available

**game-data-packager** \[*COMMON OPTIONS*\] **gog** \[*COMMON OPTIONS*\]\
 will match all the GOG.com games you own against the games supported by this tool.\
 Each games must then be packaged individually.

## ENVIRONMENT VARIABLES

- **LANGUAGE, LANG**

  These environment variables are used when a game is available in various languages to choose the correct version.\
   Those are normally set by your desktop environment.

## PATHS

game-data-packager will automatically locate applicable files in these directories:

- **~/.steam/SteamApps/common/\<game\>/**

  - **~/.wine/drive\_c/Program Files/Steam/SteamApps/common/\<game\>/**

  and also the ~/.PlayOnLinux/wineprefix/Steam/drive\_c/... variant

- **X:/Program Files/Steam/SteamApps/common/\<game\>/**

  where X:\\ is any mounted vfat or NTFS partition

## FILES

- **/etc/game-data-packager.conf**

  game-data-packager configuration file

- **~/.scummvmrc**

  provides location information for game registered in ScummVM GUI

- **~/.steam/config/loginusers.vdf**

  is used to detect user's SteamID, which is then used to download a list of owned games

- **~/.cache/lgogdownloader/gamedetails.json**

  holds a cached list of owned GOG.com games

## SEE ALSO

[*pkexec*(1)](/pkexec/1.md), [*sudo*(8)](/sudo/8.md), [*su*(1)](/su/1.md), [*lgogdownloader*(1)](/lgogdownloader/1.md)\
 Project homepage:\
  ⟨URL: https://wiki.debian.org/Games/GameDataPackager/ ⟩

## AUTHOR

Copyright © 2010-2013 Jonathan Dowland *\<jmtd@debian.org\>*\
 Thanks to Branden Robinson for his ‘Write the Fine Manual’ presentation, once found at\
  ⟨URL: http://people.debian.org/~branden/talks/wtfm/ ⟩
