LNDK is already using a datadir to store TLS certificates.
In this PR we default LNDK config and data to ~/.lndk.
Datadir is moved inside the default dir ~/.lndk/data. Then,
we expect lndk.conf file to be iether in root of the project,
or the default LNDK config folder or --config flag.
Precedence is flag > root > default dir.
In certain deployment scenarios, we may not want (or be able) to write
to the default ~/.lndk data directory. For example, the home directory
may be mounted as read-only, or mounted using ephemeral storage.
This change adds a new `data_dir` configuration option to specify where
LNDK should store data. If this option isn't specified, then falls back
to the default ~/.lndk.
This commit introduces a parameter in the RPC to allow users to modify
the timeout when receiving an invoice from the offer creator.
Additionally, it adds a configuration parameter for the server to set
up a default value if no parameter is used.
The default timeout value is also decreased from 100 seconds to 20
seconds.
LNDK verifies that the version of LND running alongside it is compatible with LNDK.
If users need to bypass this version check for any reason, they can use the skip-version-check option.
build.rs generates the configure_me structs.
config_spec.toml specifies all command line arguments needed,
their type and descriptions.
Removed ArgsError enum, it's display trait, and parse_args subroutine
since they are no longer needed.
updates the documentation accordingly.