mirror of
https://github.com/JoinMarket-Org/joinmarket-clientserver.git
synced 2026-08-13 12:33:40 +02:00
add clarifying notes on rpc wallet settings for Core
This commit is contained in:
parent
a6b0e159f1
commit
f674388011
2 changed files with 41 additions and 13 deletions
|
|
@ -27,6 +27,8 @@ The github commits to the main repo, above, are signed.
|
|||
|
||||
### Walkthrough
|
||||
|
||||
Ensure Bitcoin Core is running, and synced. (Your version of Bitcoin Core must be compiled with wallet support).
|
||||
|
||||
Double click the binary to run it, or go to the `/scripts` subdirectory and run `python joinmarket-qt.py`
|
||||
(make sure you're in the venv, go back to the README quick install instructions if you don't know what that means).
|
||||
|
||||
|
|
@ -43,7 +45,10 @@ has been created in your Joinmarket data directory (see [here](USAGE.md#data)).
|
|||
rpc_host = localhost #default usually correct
|
||||
rpc_port = 8332 # default for mainnet
|
||||
|
||||
Once the rpc connection is correct, you will be presented with this start screen:
|
||||
Before restarting though, you're strongly advised to make the configuration change explained [here](USAGE.md#setting-core-wallet), this
|
||||
may avoid possible RPC errors (indeed, read the whole of that section on "Configuring for Bitcoin Core").
|
||||
|
||||
Once the rpc connection is correct, and you restart, you will be presented with this start screen:
|
||||
|
||||

|
||||
|
||||
|
|
@ -74,16 +79,8 @@ stick to that convention.
|
|||
|
||||
The wallet will now automatically load from the your Bitcoin Core node. It may take a few seconds, during which you'll see "Reading wallet from blockchain...".
|
||||
|
||||
If JoinMarketQt stucks in "Reading wallet from blockchain..." state, close it.
|
||||
You need to create a wallet in the Bitcoin Core using the command:
|
||||
```bitcoin-cli createwallet "jm_wallet"```
|
||||
|
||||
The "jm_wallet" name is just an example. You can set any name.
|
||||
|
||||
After you create the wallet in the Bitcoin Core, you should set it in the `joinmarket.cfg`:
|
||||
```rpc_wallet_file= jm_wallet```
|
||||
|
||||
Now you can start the JoinMarketQt, load the wallet and it should work.
|
||||
If JoinMarketQt gets stuck at "Reading wallet from blockchain..." state, one possible solution may be to ensure you have set `rpc_wallet_file` correctly
|
||||
as described above. You can also check the terminal you ran the `joinmarket-qt.py` script from for other error messages.
|
||||
|
||||
Since you just created it, it will have no coins initially:
|
||||
|
||||
|
|
|
|||
|
|
@ -11,6 +11,8 @@ followed a manual installation as per [here](INSTALL.md)).
|
|||
|
||||
2. [Configuring for Bitcoin Core](#configure)
|
||||
|
||||
a. [Setting a Core wallet (recommended)](#setting-core-wallet)
|
||||
|
||||
3. [Using the wallet-tool.py script](#wallet-tool)
|
||||
|
||||
a. [Creating a Wallet](#generate)
|
||||
|
|
@ -85,6 +87,8 @@ The worst case is if you recover only from seedphrase and on a new Core instance
|
|||
|
||||
Bitcoin Core is required to use Joinmarket; note that the node *can* be pruned.
|
||||
|
||||
Note that if you compile Core yourself, it must have wallet support (the default), but does not need Qt.
|
||||
|
||||
Configuring Joinmarket for Core no longer needs any `walletnotify` setting.
|
||||
|
||||
In the `joinmarket.cfg` file described above, edit this section (comments omitted; do read them):
|
||||
|
|
@ -97,7 +101,34 @@ In the `joinmarket.cfg` file described above, edit this section (comments omitte
|
|||
|
||||
Note, you can also use a cookie file by setting, in this section, a variable `rpc_cookie_file` to the location of the file, as an alternative to using user/password.
|
||||
|
||||
If you use Bitcoin Core's multiwallet feature, you can edit the value of `rpc_wallet_file` to your chosen wallet file. Just use a new line with `rpc_wallet_file = wallet2.dat` or similar.
|
||||
<a name="setting-core-wallet" />
|
||||
|
||||
### Setting a Core wallet (recommended)
|
||||
|
||||
This point often confuses people. Joinmarket has its own wallet, with encryption and storage of keys, separate to Bitcoin Core,
|
||||
but it *stores addresses as watch-only in the Bitcoin Core wallet*, and the relevant rpc calls to Bitcon Core always specify the
|
||||
wallet they're talking to. As a result it's strongly recommended to use this feature, as it isolates those watch-only addresses
|
||||
being stored in Bitcoin Core, from any other usage you might have for that Core instance.
|
||||
|
||||
If you don't do this, Joinmarket will use the default Core wallet `wallet.dat` to store these watch-only addresses in.
|
||||
|
||||
With `bitcoind` running, do:
|
||||
|
||||
```
|
||||
bitcoin-cli createwallet "jm_wallet"
|
||||
```
|
||||
|
||||
The "jm_wallet" name is just an example. You can set any name. Alternative to this `bitcoin-cli` command: you can set a line with `wallet=..` in your
|
||||
`bitcoin.conf` before starting Core (see the Bitcoin Core documentation for details).
|
||||
|
||||
After you create the wallet in the Bitcoin Core, you should set it in the `joinmarket.cfg`:
|
||||
|
||||
```
|
||||
[BLOCKCHAIN]
|
||||
...
|
||||
...
|
||||
rpc_wallet_file= jm_wallet
|
||||
```
|
||||
|
||||
Then retry the `generate` command we mentioned above; it should now not error (see [below](#generate)).
|
||||
|
||||
|
|
@ -207,7 +238,7 @@ Total balance: 0.00000000
|
|||
|
||||
```
|
||||
|
||||
The [BIP32](https://github.com/bitcoin/bips/blob/master/bip-0049.mediawiki) xpub keys of each external branch are shown in case that is needed.
|
||||
The [BIP32](https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki) xpub keys of each external branch are shown in case that is needed.
|
||||
The BIP32 derivation paths are also shown; for Joinmarket they are defined by [BIP49](https://github.com/bitcoin/bips/blob/master/bip-0049.mediawiki); for more on this see [below](#structure).
|
||||
|
||||
**Bitcoins should be sent to empty external addresses** (sometimes known as receive addresses). You'll notice in
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue