mirror of
git://holbrook.no/erc20-demurrage-token
synced 2024-11-28 10:16:46 +01:00
219 lines
7.8 KiB
Groff
219 lines
7.8 KiB
Groff
.TH erc20-demurrage-token-publish 1
|
|
|
|
.SH NAME
|
|
erc20-demurrage-token-publish \- Publishing tool for the ERC20 Demurrage Token smart contract.
|
|
|
|
|
|
.SH SYNOPSIS
|
|
.SY erc20-demurrage-token-publish
|
|
.RI --name NAME --symbol SYMBOL --decimals DECIMALS --demurrage-level PPM --redistribution-period MINUTES --sink-address ADDRESS
|
|
.YS
|
|
|
|
|
|
.SH DESCRIPTION
|
|
.P
|
|
This tool generates the appropriate bytecode to store the ERC20 Demurrage Token smartcontract code on an EVM chain, along with the required construction parameters.
|
|
|
|
Arguments for EVM encoding and interaction with EVM RPC node is handled by the \fBchainlib-eth\fP python package.
|
|
|
|
Specific arguments for this tool are the \fB--demurrage-level\fP, \fB--redistribution-period\fP and \fB--sink-address\fP arguments.
|
|
|
|
|
|
.SS OPTIONS
|
|
|
|
.TP
|
|
\fB-0\fP
|
|
Omit newline to output
|
|
|
|
.TP
|
|
\fB-c \fI\fIconfig_dir\fP\fP, \fB--config \fI\fIconfig_dir\fP\fP
|
|
Load configuration files from given directory. All files with an .ini extension will be loaded, of which all must contain valid ini file data.
|
|
|
|
.TP
|
|
\fB--demurrage-level \fI\fIlevel
|
|
\fP\fP
|
|
Level of decay per minute. See SPECIFYING DEMURRAGE below.
|
|
|
|
.TP
|
|
\fB--dumpconfig \fI\fIformat\fP\fP
|
|
Output configuration settings rendered from environment and inputs. Valid arguments are \fIini\fP for ini file output, and \fIenv\fP for environment variable output. See \fBCONFIGURATION\fP.
|
|
|
|
.TP
|
|
\fB-e\fP, \fB--executable-address\fP
|
|
Address of an executable code point on the network.
|
|
|
|
.TP
|
|
\fB--env-prefix\fP
|
|
Environment prefix for variables to overwrite configuration. Example: If \fB--env-prefix\fP is set to \fBFOO\fP then configuration variable \fBBAR_BAZ\fP would be set by environment variable \fBFOO_BAZ_BAR\fP. Also see \fBENVIRONMENT\fP.
|
|
|
|
.TP
|
|
\fB--fee-limit\fP
|
|
Set the limit of execution units for the transaction. If used with \fB-s\fP this may incur actual network token cost. If \fB--fee-price\fP is not explicitly set, the price \fImay\fP be retrieved from the network, and multiplied with this value to define the cost.
|
|
|
|
.TP
|
|
\fB--fee-price\fP
|
|
Set fee unit price to offer for the transaction. If used with \fB-s\fP this may incur actual network token cost.
|
|
|
|
.TP
|
|
\fB--height\fP
|
|
Block height at which to query state for. Does not apply to transactions.
|
|
|
|
.TP
|
|
\fB-i \fI\fIchain_spec\fP\fP, \fB--chain-spec \fI\fIchain_spec\fP\fP
|
|
Chain specification string, in the format <engine>:<fork>:<chain_id>:<common_name>. Example: "evm:london:1:ethereum". Overrides the \fIRPC_CREDENTIALS\fP configuration setting.
|
|
|
|
.TP
|
|
\fB-n \fI\fInamespace\fP\fP, \fB--namespace \fI\fInamespace\fP\fP
|
|
Load given configuration namespace. Configuration will be loaded from the immediate configuration subdirectory with the same name.
|
|
|
|
.TP
|
|
\fB--no-logs\fP
|
|
Turn of logging completely. Negates \fB-v\fP and \fB-vv\fP
|
|
|
|
.TP
|
|
\fB--nonce\fP
|
|
Explicitly set nonce to use for transaction.
|
|
|
|
.TP
|
|
\fB-p\fP, \fB--rpc-provider\fP
|
|
Fully-qualified URL of RPC provider. Overrides the \fIRPC_PROVIDER\fP configuration setting.
|
|
|
|
.TP
|
|
\fB--passphrase-file \fI\fIpath\fP\fP
|
|
Path to file containing password to unlock key file
|
|
|
|
.TP
|
|
\fB--raw\fP
|
|
Produce output most optimized for machines.
|
|
|
|
.TP
|
|
\fB--redistribution-period \fI\fIminutes
|
|
\fP\fP
|
|
Number of minuntes between each withdrawal of demurraged value is possible.
|
|
|
|
.TP
|
|
\fB--rpc-auth\fP
|
|
RPC endpoint authentication method, e.g. how to handle a HTTP WWW-Authenticate header. Overrides the \fIRPC_AUTH\fP configuration setting.
|
|
|
|
.TP
|
|
\fB--rpc-credentials\fP
|
|
RPC endpoint authentication data. Format depends on the authentication method defined in \fB--rpc-auth\fP. Overrides the \fIRPC_CREDENTIALS\fP configuration setting.
|
|
|
|
.TP
|
|
\fB--rpc-dialect\fP
|
|
RPC backend dialect. If specified it \fImay\fP help with encoding and decoding issues. Overrides the \fIRPC_DIALECT\fP configuration setting.
|
|
|
|
.TP
|
|
\fB-s\fP
|
|
Send to network. If set, network state may change. This means tokens may be spent and so on. Use with care. Only applies to transactions.
|
|
|
|
.TP
|
|
\fB--seq\fP
|
|
Use numeric sequencial jsonrpc query ids. Useful for buggy server implementations who expects such.
|
|
|
|
.TP
|
|
\fB--sink-address \fI\fIaddress
|
|
\fP\fP
|
|
Initial address receiving the demurrage value withdrawal.
|
|
|
|
.TP
|
|
\fB-u\fP, \fB--unsafe\fP
|
|
Allow addresses that do not pass checksum.
|
|
|
|
.TP
|
|
\fB-v\fP
|
|
Verbose. Show logs for important state changes.
|
|
|
|
.TP
|
|
\fB-vv\fP
|
|
Very verbose. Show logs with debugging information.
|
|
|
|
.TP
|
|
\fB-w\fP
|
|
Wait for the last transaction to be confirmed on the network. Will generate an error if the EVM execution fails.
|
|
|
|
.TP
|
|
\fB-ww\fP
|
|
Wait for \fIall\fP transactions sequentially to be confirmed on the network. Will generate an error if EVM execution fails for any of the transactions.
|
|
|
|
.TP
|
|
\fB-y \fI\fIpath\fP\fP, \fB--key-path \fI\fIpath\fP\fP
|
|
Path to signing key. Overrides the \fIWALLET_KEY_FILE\fP configuration setting.
|
|
|
|
.SH CONFIGURATION
|
|
|
|
All configuration settings may be overriden both by environment variables, or by overriding settings with the contents of ini-files in the directory defined by the \fB-c\fP option.
|
|
|
|
The active configuration, with values assigned from environment and arguments, can be output using the \fB--dumpconfig\fP \fIformat\fP option. Note that entries having keys prefixed with underscore (e.g. _SEQ) are not actual configuration settings, and thus cannot be overridden with environment variables.
|
|
|
|
To refer to a configuration setting by environment variables, the \fIsection\fP and \fIkey\fP are concatenated together with an underscore, and transformed to upper-case. For example, the configuration variable \fIFOO_BAZ_BAR\fP refers to an ini-file entry as follows:
|
|
|
|
.EX
|
|
[foo]
|
|
bar_baz = xyzzy
|
|
.EE
|
|
|
|
In the \fBENVIRONMENT\fP section below, the relevant configuration settings for this tool is listed along with a short description of its meaning.
|
|
|
|
Some configuration settings may also be overriden by command line options. Also note that the use of the \fB-n\fP and \fB--env-prefix\fP options affect how environment and configuration is read. The effects of options on how configuration settings are affective is described in the respective \fBOPTIONS\fP section.
|
|
|
|
.SH SPECIFYING DEMURRAGE
|
|
|
|
Demurrage is specified as a parts-per-million value in terms of the chosen \fI--redistribution-period\fP.
|
|
|
|
For example, a value of \fB20000\fP with a \fI--redistribution-period\fP of \fB43200\fP corresponds to a \fB2%\fP demurrage per \fB30\fP days.
|
|
.SH ENVIRONMENT
|
|
|
|
|
|
.TP
|
|
\fICHAIN_SPEC\fP
|
|
String specifying the type of chain connected to, in the format \fI<engine>:<fork>:<network_id>:<common_name>\fP. For EVM nodes the \fIengine\fP value will always be \fIevm\fP.
|
|
|
|
.TP
|
|
\fIRPC_AUTH\fP
|
|
Authentication method to use for the \fIRPC_PROVIDER\fP. Currently only \fIbasic\fP is supported.
|
|
|
|
.TP
|
|
\fIRPC_CREDENTIALS\fP
|
|
Authentication credentials to use for \fIRPC_AUTH\fP. For \fIbasic\fP authentication the value must be given as \fI<user>:<pass>\fP.
|
|
|
|
.TP
|
|
\fIRPC_DIALECT\fP
|
|
Enables translations of EVM node specific formatting and response codes.
|
|
|
|
.TP
|
|
\fIRPC_PROVIDER\fP
|
|
Fully-qualified URL to the RPC endpoint of the blockchain node.
|
|
|
|
.TP
|
|
\fIWALLET_KEY_FILE\fP
|
|
The wallet key file containing private key to use for transaction signing. Overridden by \fB-y\fP.
|
|
|
|
.TP
|
|
\fIWALLET_PASSPHRASE\fP
|
|
Passphrase to unlock wallet. \fBWARNING:\fP it is \fBunsafe\fP to pass the passphrase as an environment variable. If the key unlocks something of value, the passphrase should rather be in a configuration file, preferably as an encrypted entry. Alternatively, a passphrase can be read from file using the \fB--passphrase-file\fP option. Files containing passphrases should only be accessible by the owner.
|
|
|
|
.SH LICENSE
|
|
|
|
This documentation and its source is licensed under the Creative Commons Attribution-Sharealike 4.0 International license.
|
|
|
|
The source code of the tool this documentation describes is licensed under the GNU General Public License 3.0.
|
|
|
|
.SH COPYRIGHT
|
|
|
|
Louis Holbrook <dev@holbrook.no> (https://holbrook.no)
|
|
PGP: 59A844A484AC11253D3A3E9DCDCBD24DD1D0E001
|
|
|
|
|
|
|
|
.SH SOURCE CODE
|
|
|
|
https://git.defalsify.org
|
|
|
|
|
|
.SH SEE ALSO
|
|
|
|
.BP
|
|
confini-dump(1), eth-keyfile(1)
|
|
|