ckmamerc — config
    file for ckmame, dumpgame, and mkmamedb
The ckmamerc config file sets global or
    local configuration for running
    ckmame(1),
    dumpgame(1), and
    mkmamedb(1).
By default, the configuration is read from ~/.config/ckmame/ckmamerc and .ckmamerc in the current directory if they exist, in this order.
Many settings can also be specified on the command line.
Later settings override earlier ones.
The config file is in TOML format and consists of three types of sections. A section header consists of the name of the section enclosed in square brackets on its own line.
--set command line option).Most command line options can be used as configuration variables in the config file. Take the name of the long option and use it without the leading dashes. For boolean settings and those with a value, use the
variable = value--complete-games-only will be written in the config
  file as
complete-games-only =
  trueOptions that exist as --foo and
    --no-foo are mapped to a single configuration value
    with values “true” and “false”.
For full documentation of config file options with corresponding command line options, see the manual page of the command.
Options can use the string “$set” which will be replaced by the set name when used.
The following options are supported by all tools:
The following options are supported only by ckmame(1) and mkmamedb(1):
--directory-cache) and
      ckmame(1)'s
      .ckmame.db files for extra-directories (but not
      for the roms, saved, and
      unknown directories).The following options are supported only by ckmame(1):
--copy-from-extra on the command line.The following variables are only supported by ckstatus(1):
--all-sets. Defaults to “true”.The following variables are only supported by mkmamedb(1):
While TOML is a relatively simple and readable format, it has some unexpected details:
Any key that contains characters other than letters, digits, “-”, and “_” must be quoted using double quotes.
Nested tables can be written in two forms:
Inline using “{” and “}”. However, the complete inline table must be on one line (unlike inline arrays, which can span multiple lines). See “extra-directories-append” in “Big Set” in EXAMPLES below.
As sections with a “.” separating the outer and inner names:
["outer table
  name"."inner table name"][global]
verbose = true
extra-directories = [ "incoming" ]
sets = [ "Set using standard settings only" ]
[profile.incomplete]
complete-only = true
report-missing = false
["Big Set"]
verbose = false
rom-directory = "Big Set ROMs"
extra-directories-append = { "another-location" = { move-from-extra = true } }
rom-db = "Big Set.db"
profiles = [ "incomplete" ]
["Unzipped Set"]
roms-unzipped = true
rom-directory = "Unzipped Set ROMs"
rom-db = "Unzipped Set.db"
["Unzipped Set".extra-directories]
"unzipped-incoming" = { use-central-cache-directory = true }
This configuration would by default report verbosely, but override this for the "Big Set" set. It would also set the rom directories and database files for both the "Big Set" and the "Unzipped Set" and not use ZIP archives for the latter.
Example run:
ckmame --set Big Setckmame was written by
    Dieter Baron
    <dillo@nih.at> and
    Thomas Klausner
    <wiz@gatalith.at>.