As of Verus version 0.7.0, shielding and unshielding of coinbase is no longer required.
After the hardfork on block 1053660, all coinbase rewards earned participate in the staking process after their minimum stake age is met.
This means you can comment out the core.php wallet shield
cron entry, balance e-mails and wallet backups can still be used.
These tools will help you stake on your permanently running machine using Verus CLI, instead of running the Agama GUI wallet.
- automatic shielding and unshielding of coinbase (staking, solo mining)
- automatic tracking of total coins generated (also present in e-mail notifications)
- optional e-mail notifications on newly generated coins
- optional periodical wallet.dat backups, also as an encrypted ZIP archive
- optional periodical wallet balance e-mail notifications
Follow this guide
to set-up your daemon for the first time. You will need a transparent address, a zs address and the daemon running with correct parameters
(-mint -cheatcatcher=zs...
).
Do not stake with the same wallet.dat on multiple nodes.
Prerequisites:
- install PHP 7.3+, use e.g
apt-get install php7.3-cli php7.3-zip php7.3-bcmath
asroot
Perform the following steps as non-root user (the same user the verusd
daemon runs as):
cd; git clone https://github.com/kbs1/verus-staking-cli
cd verus-staking-cli/engine
cp config.php.EXAMPLE config.php
, editconfig.php
. Read the comments to enable or disable features.- install composer, run
php composer.phar install
- configure the following CRON schedule (
crontab -e
). Substitute paths as appropriate. Don't enter entries you do not wish to perform. You can configure CRON timings arbitrarily, see the Usage section.
0 * * * * /usr/bin/php /home/verus/verus-staking-cli/engine/core.php wallet shield 2>&1 >> /home/verus/SHIELDING_LOG
45 3 * * * /usr/bin/php /home/verus/verus-staking-cli/engine/core.php wallet balanceEmail 2>&1 >> /home/verus/BALANCE_EMAILS_LOG
50 3 25 * * /usr/bin/php /home/verus/verus-staking-cli/engine/core.php wallet backupEmail 2>&1 >> /home/verus/BACKUP_EMAILS_LOG
*/5 * * * * /usr/bin/php /home/verus/verus-staking-cli/engine/core.php emails send 2>&1 >> /home/verus/QUEUED_EMAILS_LOG
You do not need to attend the machine. Each newly generated coinbase will be automatically shielded and unshielded. You will receive e-mail notifications whenever you generate a new block, if you configure them. You may also receive periodical wallet backups, and periodical balance reports.
When you upgrade Verus, you don't have to disable the CRON schedule temporarily. Just check with ps aux | grep php
to see if the scripts aren't currently
running. Otherwise you risk script failures with an inconsistent state as a result, should the verusd
daemon become unexpectedly unavailable.
You may alter the crontab to run the scripts at any schedule. For example you can execute the shielding operation every minute if desired. Scripts contain protections that won't allow critical tasks (such as shielding and unshielding) to overlap, so no harm is caused if scripts are invoked by CRON arbitrarily fast.
To view operations log at any time, simply tail ..._LOG
to view recent output of that command.
These scripts expect you have all your coins in transparent addresses only. For more advanced usage scenarios, update the source accordingly.