Wallet format note

Beginning with Dash, these packages use Berkeley DB 5.3 to manage the Dash wallet, rather than the antiquated BDB 4.8. This is necessary because BDB 4.8 is no longer supported in the modern Linux distributions that we target, and also has unresolved security issues.

We expect Dash upstream will also switch to BDB 5.3 soon. The wallet format is forward compatible, but not backward compatible. If you need to move your wallet from this Dash build to a Dash build that still uses BDB 4.8, you won’t be able to copy the wallet.dat file; instead you must export it from this software and import it into the other software.

Install the GUI

Install the dash-core package.

RHEL 8 / Fedora dnf install dash-core
RHEL 7 yum install dash-core

Install the Server

Use the Dash server to run a wallet server as a system service. The Dash server distributed here is protected by SELinux and has some other slight differences you should be aware of.

When started from the system inititalization script, dashd stores all of its files in /var/lib/dash instead of $HOME/.dashcore and its configuration file is located at /etc/dash/dash.conf. This change was necessary to ensure that SELinux policies could be applied to them with maximum security. In particular, some system services may be allowed to access /home, and this change helps to ensure that such services, if compromised, cannot access the Dash wallet.

Note that when you install or update the Dash server, the installation may take an additional minute or so while its SELinux policies are being rebuilt on your system.

  1. Install the dash-server package.
    RHEL 8 / Fedora dnf install dash-server
    RHEL 7 yum install dash-server
  2. Set an RPC password for the server by creating or editing /etc/dash/dash.conf as root. rpcpassword=a_more_secure_password_than_this_one
  3. Set the Dash server to start at boot time. Run systemctl enable dash.
  4. If desired, start the Dash server immediately. Run systemctl start dash. Note that the Dash server will not start if an RPC password is not set as shown above.

Install the Command Line Utilities

The dash-cli command line program connects to a remote Dash server via RPC. You need to provide the RPC password in your user configuration file $HOME/.dashcore/dash.conf. You can also explicitly point to the global configuration file with -conf /etc/dash/dash.conf, but as this requires being root it is not recommended.

The dash-tx command line program creates and modifies transactions.

Both of these programs are in the dash-utils package.

Install the dash-utils package.

RHEL 8 / Fedora dnf install dash-utils
RHEL 7 yum install dash-utils

Install the Consensus Library

Developers who wish to use the libdashconsensus library can install the dash-devel package to gain access to this library and the header files needed to use it.

Install the dash-devel package.

RHEL 8 / Fedora dnf install dash-devel
RHEL 7 yum install dash-devel