The docs/packaging were largely un-rebranded Hush3 content, with several docs stating facts that are wrong for DragonX. This rewrites them against the verified DragonX source state. Corrections (not just branding): - PoW: RandomX (CPU), not Equihash/ASIC — README, overview.md, randomx.md - Privacy: private from genesis (ac_private=1, Sapling@height1), not "as of block 340000" — overview.md, payment-api.md - Removed the false "coinbase must be shielded" consensus claim (shield-coinbase.md, payment-api.md); coinbase is directly spendable - Fixed default fee 0.0001 (was 0.0010000, 10x); stratum port 22769 (was 19031) - datadir ~/.hush/DRAGONX, DRAGONX.conf, dragonxd/dragonx-cli/dragonx-tx, git.dragonx.is throughout; branch model dev->dragonx - Softened the inherited dPoW reorg claim (no live DragonX notary infra) Packaging: fix build-debian-package.sh + gen-manpages.sh to use the dragonx binaries/manpages; rename bash-completions to dragonx*; drop hush-arrakis-chain from the package. Keep /usr/share/hush (hardcoded in the binary for params). Also: README links/logo, ObsidianDragon + SilentDragonXAndroid wallets, networking/init/dev-process/contrib/util rebrand, and leftover helper scripts. Delete legacy duplicates (hushd.* init/service, HUSH3.conf examples, OLD_WALLETS.md, hsc.md) and rename hush-uri.bat -> dragonx-uri.bat. Out of scope (noted, not changed): historical changelog/copyright, the Hush mainnet airdrop snapshot, seed data files, depends/ source mirrors, and the in-code strCurrencyUnits="HUSH". Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
108 lines
4.2 KiB
Markdown
108 lines
4.2 KiB
Markdown
Sample init scripts and service configuration for dragonxd
|
|
==========================================================
|
|
|
|
Sample scripts and configuration files for systemd, Upstart and OpenRC
|
|
can be found in the contrib/init folder.
|
|
|
|
contrib/init/dragonxd.service: systemd service unit configuration
|
|
contrib/init/dragonxd.openrc: OpenRC compatible SysV style init script
|
|
contrib/init/dragonxd.openrcconf: OpenRC conf.d file
|
|
contrib/init/dragonxd.conf: Upstart service configuration file
|
|
contrib/init/dragonxd.init: CentOS compatible SysV style init script
|
|
|
|
For a simpler per-user systemd setup, see doc/dragonxd-systemd.md.
|
|
|
|
1. Service User
|
|
---------------------------------
|
|
|
|
All startup configurations assume the existence of a "hush" user
|
|
and group. They must be created before attempting to use these scripts.
|
|
(The service user is named "hush" for packaging compatibility across the
|
|
Hush lineage; renaming it is a separate packaging decision.)
|
|
|
|
2. Configuration
|
|
---------------------------------
|
|
|
|
At a bare minimum, dragonxd requires that the rpcpassword setting be set
|
|
when running as a daemon. If the configuration file does not exist or this
|
|
setting is not set, dragonxd will shutdown promptly after startup.
|
|
|
|
This password does not have to be remembered or typed as it is mostly used
|
|
as a fixed token that dragonxd and client programs read from the configuration
|
|
file, however it is recommended that a strong and secure password be used
|
|
as this password is security critical to securing the wallet should the
|
|
wallet be enabled.
|
|
|
|
If dragonxd is run with "-daemon" flag, and no rpcpassword is set, it will
|
|
print a randomly generated suitable password to stderr. You can also
|
|
generate one from the shell yourself like this:
|
|
|
|
bash -c 'tr -dc a-zA-Z0-9 < /dev/urandom | head -c32 && echo'
|
|
|
|
|
|
For an example configuration file that describes the configuration settings,
|
|
see contrib/debian/examples/DRAGONX.conf.
|
|
|
|
3. Paths
|
|
---------------------------------
|
|
|
|
All configurations assume several paths that might need to be adjusted.
|
|
|
|
Binary: /usr/bin/dragonxd
|
|
Configuration file: /etc/dragonx/DRAGONX.conf
|
|
Data directory: /var/lib/dragonxd
|
|
PID file: /var/run/dragonxd/dragonxd.pid (OpenRC and Upstart)
|
|
/var/lib/dragonxd/dragonxd.pid (systemd)
|
|
Lock file: /var/lock/subsys/dragonxd (CentOS)
|
|
|
|
The configuration file, PID directory (if applicable) and data directory
|
|
should all be owned by the hush user and group. It is advised for security
|
|
reasons to make the configuration file and data directory only readable by the
|
|
hush user and group. Access to dragonx-cli and other dragonxd rpc clients
|
|
can then be controlled by group membership.
|
|
|
|
4. Installing Service Configuration
|
|
-----------------------------------
|
|
|
|
4a) systemd
|
|
|
|
Installing this .service file consists of just copying it to
|
|
/usr/lib/systemd/system directory, followed by the command
|
|
"systemctl daemon-reload" in order to update running systemd configuration.
|
|
|
|
To test, run "systemctl start dragonxd" and to enable for system startup run
|
|
"systemctl enable dragonxd"
|
|
|
|
4b) OpenRC
|
|
|
|
Rename dragonxd.openrc to dragonxd and drop it in /etc/init.d. Double
|
|
check ownership and permissions and make it executable. Test it with
|
|
"/etc/init.d/dragonxd start" and configure it to run on startup with
|
|
"rc-update add dragonxd"
|
|
|
|
4c) Upstart (for Debian/Ubuntu based distributions)
|
|
|
|
Drop dragonxd.conf in /etc/init. Test by running "service dragonxd start"
|
|
it will automatically start on reboot.
|
|
|
|
NOTE: This script is incompatible with CentOS 5 and Amazon Linux 2014 as they
|
|
use old versions of Upstart and do not supply the start-stop-daemon utility.
|
|
|
|
4d) CentOS
|
|
|
|
Copy dragonxd.init to /etc/init.d/dragonxd. Test by running "service dragonxd start".
|
|
|
|
Using this script, you can adjust the path and flags to the dragonxd program by
|
|
setting the HUSHD_BIN and HUSHD_OPTS environment variables in the file
|
|
/etc/sysconfig/dragonxd. You can also use the DAEMONOPTS environment variable here.
|
|
(The HUSHD_* environment variable names are retained from the Hush lineage for
|
|
packaging compatibility.)
|
|
|
|
5. Auto-respawn
|
|
-----------------------------------
|
|
|
|
Auto respawning is currently only configured for Upstart and systemd.
|
|
Reasonable defaults have been chosen but YMMV.
|
|
</content>
|
|
</invoke>
|