xenial (1) innoextract.1.gz

Provided by: innoextract_1.5-1_amd64 bug

NAME

       innoextract - tool to extract installers created by Inno Setup

SYNOPSIS

       innoextract [--extract] [--lowercase] [options] [--] installers ...

       innoextract --list [options] [--] installers ...

       innoextract --test [options] [--] installers ...

DESCRIPTION

       innoextract is a tool that can extract installer executables created by Inno Setup.

       innoextract will extract files from installers specified on the command line.

       To  extract  a multi-part installer with external data files, only the executable (.exe) file needs to be
       given as an argument to innoextract.

OPTIONS SUMMARY

       Here is a short  summary  of  the  options  available  in  innoextract.  Please  refer  to  the  detailed
       documentation below for a complete description.

       Generic options:
               -h --help               Show supported options
               -v --version            Print version information
                  --license            Show license information

       Actions:
               -t --test               Only verify checksums, don't write anything
               -e --extract            Extract files (default action)
               -l --list               Only list files, don't write anything
                  --list-languages     List languages supported by the installer
                  --gog-game-id        Determine the GOG.com game ID for this installer

       Modifiers:
                  --collisions ACTION  How to handle filename collisions
                  --default-language   Default language for renaming
                  --dump               Dump contents without converting filenames
               -L --lowercase          Convert extracted filenames to lower-case
               -T --timestamps TZ      Timezone for file times or "local" or "none"
               -d --output-dir DIR     Extract files into the given directory
               -g --gog                Process additional archives from GOG.com installers

       Filters:
               -m --exclude-temp       Don't extract temporary files
                  --language LANG      Extract only files for this language
                  --language-only      Only extract language-specific files
               -I --include EXPR       Extract only files that match this path

       Display options:
               -q --quiet              Output less information
               -s --silent             Output only error/warning information
               --no-warn-unused        Don't warn on unused .bin files
               -c --color[=ENABLE]     Enable/disable color output
               -p --progress[=ENABLE]  Enable/disable the progress bar

OPTIONS

       --     Treat all arguments after this one as files, even if they begin with a dash.

       --collisions ACTION
              Inno Setup installers can contain multiple files with the same name. This option tells innoextract
              what to do when such a collisions is encountered. Valid actions are:

                "overwrite"  Extract only one of the colliding files. The choice is done  similar  to  how  Inno
              Setup overwrites files during installation. This is the default.

                "rename"      Rename  files  in  the collision set by appending "#component", "@language" and/or
              "$id" where component and language are the file's unique component and  language  and  id  is  the
              lowest number to make the filename unique. If the --default-language is specified, the "@language"
              component is omitted if it matches the default language.

                "error"      Exit when a collision is detected.

       --default-language LANG
              Set a language as the default.

              With --collisions=overwrite (the default) this will change the choice of which  file  to  keep  to
              always  prefer  the  given language. In effect, --default-language behaves almost like --language,
              except that files are extracted for all languages if they have different names.

              When using the --collisions=rename option, --default-language chooses a  language  for  which  the
              files should keep the original name if possible.

       -c, --color[=ENABLE]
              By  default  innoextract will try to detect if the terminal supports shell escape codes and enable
              or disable color output accordingly. Specifically, colors will  be  enabled  if  both  stdout  and
              stderr  point  to  a TTY and the TERM environment variable is not set to "dumb". Pass 1 or true to
              --color to force color output. Pass 0 or false to never output color codes.

       --dump Don't convert Windows paths to UNIX paths and don't substitute variables in paths.

       -m, --exclude-temp
              Don't extract files that would have been deleted at the end of the install process. Such files are
              marked with [temp] in the file listing.

              This  option  takes  precedence over --include and --language: temporary files are never extracted
              when using the --exclude-temp, even if they match the selected language or include expressions.

       -e, --extract
              Extract all files to the current directory. This action  is  enabled  by  default,  unless  either
              --list or --extract is specified. You may only specify one of --extract and --test.

       -g, --gog
              Try to process additional .bin files that have the same basename as the setup but are not actually
              part of the Inno Setup installer. This is the case for newer multi-part GOG.com  installers  where
              these  .bin  files are RAR archives, potential encrypted with the MD5 checksum of the game ID (see
              the --gog-game-id option).

              Extracting these RAR archives requires rar, unrar or lsar/unar command-line utilities to be in the
              PATH.

              The  --list,  --test, --extract and --output-dir options are passed along to unrar/unar, but other
              options may be ignored for the RAR files. For multi-part  RAR  archives,  the  --test  requires  a
              writable output directory for temporary files.

              Note  that  is  option  is geared towards GOG.com installers. Other installers may come be bundled
              with different extraneous .bin which this option might not be able to handle.

       --gog-game-id
              Determine the ID used by GOG.com for the game contained in this installer.  This  will  only  work
              with Galaxy-ready GOG.com installers.

              This option can be combined with --silent to print only the game ID without additional syntax that
              would make consumption by other scripts harder.

              The --gog-game-id action can be combined with --list, --test, --extract  and/or  --list-languages.
              If --silent and --gog-game-id are combined with --list and/or --list-languages, the game ID (or an
              empty line) will be printed on it's own line before the file list but after the language list.

              For newer multi-part GOG.com installers the .bin files are not part of the  Inno  Setup  installer
              but  instead  are RAR archives. Some of these RAR files are encrypted, with the password being the
              MD5 checksum of the game ID:

                innoextract --gog-game-id --silent setup_....exe | md5sum | cut -d ' ' -f 1

       -h, --help
              Show a list of the supported options.

       -I, --include EXPR
              If this option is specified, innoextract will only process files  whose  path  matches  EXPR.  The
              expression  can  be  either  a  single  path  component  (a file or directory name) or a series of
              successive path components joined by the OS path separator (\ on Windows, / elsewhere).

              The expression is always matched against one or more full path components. Filtering by  parts  of
              filenames is currently not supported. Matching is done case-insensitively.

              EXPR  may  contain one leading path separator, in which case the rest of the expression is matched
              against the start of the path. Otherwise, the expression is matched against any part of the path.

              The --include option may be repeated in  order  allow  files  matching  against  one  of  multiple
              patterns. If --include is not used, all files are processed.

       --language LANG
              Extract only language-independent files and files for the given language. By default all files are
              extracted.

              To also skip language-independent files, combine this option with --language-only.

       --language-only
              Only extract files that are language-specific.

              This option can be combined with --language to only extract the files of a specific language.

       --license
              Show license information.

       -l, --list
              List files contained in the installer but don't extract anything.

              This option can be combined with --silent to print only the names of the contained files (one  per
              line) without additional syntax that would make consumption by other scripts harder.

              The --list action can be combined with --test, --extract, --list-languages and/or --gog-game-id to
              display the names of the files as they are extracted even with --silent.

       --list-languages
              List languages supported by the installer.

              This option can be combined with --silent to print only the identifiers of the languages (one  per
              line)  followed  by  a space and then the language name, without additional syntax that would make
              consumption by other scripts harder.

              The --list-languages action can be combined with --list, --test, --extract and/or --gog-game-id to
              display  the  available languages before doing anything else. If --silent and --list-languages are
              combined with --list and/or --gog-game-id, the languages list will be  terminated  with  an  empty
              line and will precede both the game ID and files list.

       -L, --lowercase
              Convert filenames stored in the installer to lower-case before extracting.

       -d, --output-dir DIR
              Extract  all files into the given directory. By default, innoextract will extract all files to the
              current directory.

              If the specified directory does not exist, it will be created. However, the parent directory  must
              exist or extracting will fail.

       -p, --progress[=ENABLE]
              By  default  innoextract will try to detect if the terminal supports shell escape codes and enable
              or disable progress bar output accordingly. Pass 1 or true to --progress  to  force  progress  bar
              output. Pass 0 or false to never show a progress bar.

       -q, --quiet
              Less verbose output.

       -s, --silent
              Don't output anything except errors and warnings unless explicitly requested.

              This  option  can  be combined with --list to print only the names of the contained files (one per
              line) without additional syntax that would make consumption by other scripts harder.

       -t, --test
              Test archive integrity but don't write any output files. You may only specify one of --extract and
              --test.

       -T, --timestamps TZ
              Inno Setup installers can contain timestamps in both UTC and 'local' timezones.

              The --timestamps option specifies what timezone should be used to adjust these 'local' file times.

              Valid values are those accepted by tzset in the TZ environment variable, except with the direction
              of the time offset reversed: both -T CET and -T GMT+1 will (when DST is in effect) give  the  same
              result.

              Besides timezones, two special values are accepted:

                "none"     Don't  preserve  file times for extracted files, both for UTC and 'local' timestamps.
              The file times wil be left the way the OS set them when creating the output files.

                "local"  Use the system timezone for 'local' timestamps. This is the normal Inno Setup behavior,
              and can be used together with the TZ environment variable.

              The  default  value  for this option is UTC, causing innoextract to not adjust 'local' file times.
              File times marked as UTC in the Inno Setup file will never be adjusted no matter what --timestamps
              is set to.

       -v, --version
              Print the innoextract version number and supported Inno Setup versions.

              If  combined  with  the --silent option, only the version number is printed. Otherwise, the output
              will contain the name (innoextract) followed by the version number on the first line, and,  unless
              the  --quiet  options  is  specified,  the range of suuported Inno Setup installer versions on the
              second line.

       --no-warn-unused
              By default, innoextract will print a warning if it encounters .bin files that look like they could
              be part of the setup but are not used. This option disables that warning.

EXIT VALUES

       0      Success

       1      Syntax or usage error

       2+     Broken or unsupported setup file, or input/output error

LIMITATIONS

       There is no support for extracting individual components and limited support for filtering by name.

       Included scripts and checks are not executed.

       The mapping from Inno Setup variables like the application directory to subdirectories is hard-coded.

       Names for data slice/disk files in multi-file installers must follow the standard naming scheme.

       Encrypted installers are not supported.

SEE ALSO

       cabextract(1), unar(1), unrar(1), unshield(1), tzset(3)

BUGS

       Please report bugs to http://innoextract.constexpr.org/issues.

CREDITS

       innoextract is distributed under the zlib/libpng license.  See the LICENSE file for details.

       A website is available at http://constexpr.org/innoextract/.

       This program uses the excellent lzma/xz decompression library written by Lasse Collin.

AUTHOR

       Daniel Scharrer (daniel@constexpr.org)