dash/doc/dash-conf.md
MarcoFalke e206ffed6c Merge bitcoin/bitcoin#22393: doc: added info to bitcoin.conf doc
fa84caebc7b647d9483262b6634bfe6b02b90a69 doc: added info to bitcoin.conf doc (Brian Liotti)

Pull request description:

  Should probably be explicitly stated to not make modifications to the conf file while daemon is running. ref #11586

  For example, if rpc credentials are modified while bitcoind is running, `bitcoin-cli stop` is unable to stop bitcoind until the original credentials are restored in `bitcoin.conf`

ACKs for top commit:
  rajarshimaitra:
    ACK fa84caebc7
  Zero-1729:
    ACK fa84caebc7b647d9483262b6634bfe6b02b90a69
  theStack:
    ACK fa84caebc7b647d9483262b6634bfe6b02b90a69 🗄️

Tree-SHA512: f6ddffc25563c0b01e661b6abe43a7909938ad8eca38d6d0e2d4a2ce9fb850e51b54d950ef3118b74b6e340c64fe3f37205861720a2de2933db29782234869bb
2022-03-07 09:42:58 -06:00

65 lines
2.8 KiB
Markdown

# `dash.conf` Configuration File
The configuration file is used by `dashd`, `dash-qt` and `dash-cli`.
All command-line options (except for `-?`, `-help`, `-version` and `-conf`) may be specified in a configuration file, and all configuration file options (except for `includeconf`) may also be specified on the command line. Command-line options override values set in the configuration file and configuration file options override values set in the GUI.
Changes to the configuration file while `dashd` or `dash-qt` is running only take effect after restarting.
## Configuration File Format
The configuration file is a plain text file and consists of `option=value` entries, one per line. Leading and trailing whitespaces are removed.
In contrast to the command-line usage:
- an option must be specified without leading `-`;
- a value of the given option is mandatory; e.g., `testnet=1` (for chain selection options), `noconnect=1` (for negated options).
### Blank lines
Blank lines are allowed and ignored by the parser.
### Comments
A comment starts with a number sign (`#`) and extends to the end of the line. All comments are ignored by the parser.
Comments may appear in two ways:
- on their own on an otherwise empty line (_preferable_);
- after an `option=value` entry.
### Network specific options
Network specific options can be:
- placed into sections with headers `[main]` (not `[mainnet]`), `[test]` (not `[testnet]`) or `[regtest]`;
- prefixed with a chain name; e.g., `regtest.maxmempool=100`.
Network specific options take precedence over non-network specific options.
If multiple values for the same option are found with the same precedence, the
first one is generally chosen.
This means that given the following configuration, `regtest.rpcport` is set to `3000`:
```
regtest=1
rpcport=2000
regtest.rpcport=3000
[regtest]
rpcport=4000
```
## Configuration File Path
The configuration file is not automatically created; you can create it using your favorite text editor. By default, the configuration file name is `dash.conf` and it is located in the Dash data directory, but both the dash data directory and the configuration file path may be changed using the `-datadir` and `-conf` command-line options.
The `includeconf=<file>` option in the `dash.conf` file can be used to include additional configuration files.
### Default configuration file locations
Operating System | Data Directory | Example Path
-- | -- | --
Windows | `%APPDATA%\DashCore\` | `C:\Users\username\AppData\Roaming\DashCore\dash.conf`
Linux | `$HOME/.dashcore/` | `/home/username/.dashcore/dash.conf`
macOS | `$HOME/Library/Application Support/DashCore/` | `/Users/username/Library/Application Support/DashCore/dash.conf`
You can find an example dash.conf file in [share/examples/dash.conf](../share/examples/dash.conf).