Skip to content

Commit 258bda8

Browse files
committed
doc: Mention bitcoin wrapper executable in documentation
1 parent d2739d7 commit 258bda8

12 files changed

+38
-5
lines changed

doc/JSON-RPC-interface.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,8 @@ bitcoin-cli -named createwallet wallet_name=mywallet load_on_startup=true
6262
bitcoin-cli -named createwallet mywallet load_on_startup=true
6363
```
6464

65+
`bitcoin rpc` can also be substituted for `bitcoin-cli -named`, and is a newer alternative.
66+
6567
## Versioning
6668

6769
The RPC interface might change from one major version of Bitcoin Core to the

doc/README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,9 @@ Unpack the files into a directory and run:
1717

1818
- `bin/bitcoin-qt` (GUI) or
1919
- `bin/bitcoind` (headless)
20+
- `bin/bitcoin` (wrapper command)
21+
22+
The `bitcoin` command supports subcommands like `bitcoin gui`, `bitcoin node`, and `bitcoin rpc` exposing different functionality. Subcommands can be listed with `bitcoin help`.
2023

2124
### Windows
2225

doc/build-osx.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -199,6 +199,10 @@ cmake --build build --target deploy
199199
Bitcoin Core should now be available at `./build/bin/bitcoind`.
200200
If you compiled support for the GUI, it should be available at `./build/bin/bitcoin-qt`.
201201

202+
There is also a multifunction command line interface at `./build/bin/bitcoin`
203+
supporting subcommands like `bitcoin node`, `bitcoin gui`, `bitcoin rpc`, and
204+
others that can be listed with `bitcoin help`.
205+
202206
The first time you run `bitcoind` or `bitcoin-qt`, it will start downloading the blockchain.
203207
This process could take many hours, or even days on slower than average systems.
204208

doc/build-unix.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -174,4 +174,5 @@ This example lists the steps necessary to setup and build a command line only di
174174
cmake --build build
175175
ctest --test-dir build
176176
./build/bin/bitcoind
177+
./build/bin/bitcoin help
177178

doc/cjdns.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -113,3 +113,5 @@ To see which CJDNS peers your node is connected to, use `bitcoin-cli -netinfo 4`
113113
or the `getpeerinfo` RPC (i.e. `bitcoin-cli getpeerinfo`).
114114

115115
You can use the `getnodeaddresses` RPC to fetch a number of CJDNS peers known to your node; run `bitcoin-cli help getnodeaddresses` for details.
116+
117+
`bitcoin rpc` can also be substituted for `bitcoin-cli`.

doc/external-signer.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@ Start Bitcoin Core:
1414
$ bitcoind -signer=../HWI/hwi.py
1515
```
1616

17+
`bitcoin node` can also be substituted for `bitcoind`.
18+
1719
### Device setup
1820

1921
Follow the hardware manufacturers instructions for the initial device setup, as well as their instructions for creating a backup. Alternatively, for some devices, you can use the `setup`, `restore` and `backup` commands provided by [HWI](https://github.com/bitcoin-core/HWI).
@@ -40,6 +42,8 @@ Create a wallet, this automatically imports the public keys:
4042
$ bitcoin-cli createwallet "hww" true true "" true true true
4143
```
4244

45+
`bitcoin rpc` can also be substituted for `bitcoin-cli`.
46+
4347
### Verify an address
4448

4549
Display an address on the device:

doc/managing-wallets.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@ The following command, for example, creates a descriptor wallet. More informatio
1515
$ bitcoin-cli createwallet "wallet-01"
1616
```
1717

18+
`bitcoin rpc` can also be substituted for `bitcoin-cli`.
19+
1820
By default, wallets are created in the `wallets` folder of the data directory, which varies by operating system, as shown below. The user can change the default by using the `-datadir` or `-walletdir` initialization parameters.
1921

2022
| Operating System | Default wallet directory |

doc/multiprocess.md

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,8 @@ make -C depends NO_QT=1 MULTIPROCESS=1
2525
HOST_PLATFORM="x86_64-pc-linux-gnu"
2626
cmake -B build --toolchain=depends/$HOST_PLATFORM/toolchain.cmake
2727
cmake --build build
28-
build/bin/bitcoin-node -regtest -printtoconsole -debug=ipc
29-
BITCOIND=$(pwd)/build/bin/bitcoin-node build/test/functional/test_runner.py
28+
build/bin/bitcoin -m node -regtest -printtoconsole -debug=ipc
29+
BITCOIN_CMD="bitcoin -m" build/test/functional/test_runner.py
3030
```
3131

3232
The `cmake` build will pick up settings and library locations from the depends directory, so there is no need to pass `-DENABLE_IPC=ON` as a separate flag when using the depends system (it's controlled by the `MULTIPROCESS=1` option).
@@ -41,6 +41,11 @@ By default when `-DENABLE_IPC=ON` is enabled, the libmultiprocess sources at [..
4141

4242
## Usage
4343

44-
`bitcoin-node` is a drop-in replacement for `bitcoind`, and `bitcoin-gui` is a drop-in replacement for `bitcoin-qt`, and there are no differences in use or external behavior between the new and old executables. But internally after [#10102](https://github.com/bitcoin/bitcoin/pull/10102), `bitcoin-gui` will spawn a `bitcoin-node` process to run P2P and RPC code, communicating with it across a socket pair, and `bitcoin-node` will spawn `bitcoin-wallet` to run wallet code, also communicating over a socket pair. This will let node, wallet, and GUI code run in separate address spaces for better isolation, and allow future improvements like being able to start and stop components independently on different machines and environments.
45-
[#19460](https://github.com/bitcoin/bitcoin/pull/19460) also adds a new `bitcoin-node` `-ipcbind` option and a `bitcoind-wallet` `-ipcconnect` option to allow new wallet processes to connect to an existing node process.
46-
And [#19461](https://github.com/bitcoin/bitcoin/pull/19461) adds a new `bitcoin-gui` `-ipcconnect` option to allow new GUI processes to connect to an existing node process.
44+
Recommended way to use multiprocess binaries is to invoke `bitcoin` CLI like `bitcoin -m node -debug=ipc` or `bitcoin -m gui -printtoconsole -debug=ipc`.
45+
46+
When the `-m` (`--multiprocess`) option is used the `bitcoin` command will execute multiprocess binaries instead of monolithic ones (`bitcoin-node` instead of `bitcoind`, and `bitcoin-gui` instead of `bitcoin-qt`). The multiprocess binaries can also be invoked directly, but this is not recommended as they may change or be renamed in the future, and they are not installed in the PATH.
47+
48+
The multiprocess binaries currently function the same as the monolithic binaries, except they support an `-ipcbind` option.
49+
50+
In the future, after [#10102](https://github.com/bitcoin/bitcoin/pull/10102) they will have other differences. Specifically `bitcoin-gui` will spawn a `bitcoin-node` process to run P2P and RPC code, communicating with it across a socket pair, and `bitcoin-node` will spawn `bitcoin-wallet` to run wallet code, also communicating over a socket pair. This will let node, wallet, and GUI code run in separate address spaces for better isolation, and allow future improvements like being able to start and stop components independently on different machines and environments. [#19460](https://github.com/bitcoin/bitcoin/pull/19460) also adds a new `bitcoin-wallet -ipcconnect` option to allow new wallet processes to connect to an existing node process.
51+
And [#19461](https://github.com/bitcoin/bitcoin/pull/19461) adds a new `bitcoin-gui -ipcconnect` option to allow new GUI processes to connect to an existing node process.

doc/multisig-tutorial.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,8 @@ do
3131
done
3232
```
3333

34+
`bitcoin rpc` can also be substituted for `bitcoin-cli`.
35+
3436
Extract the xpub of each wallet. To do this, the `listdescriptors` RPC is used. By default, Bitcoin Core single-sig wallets are created using path `m/44'/1'/0'` for PKH, `m/84'/1'/0'` for WPKH, `m/49'/1'/0'` for P2WPKH-nested-in-P2SH and `m/86'/1'/0'` for P2TR based accounts. Each of them uses the chain 0 for external addresses and chain 1 for internal ones, as shown in the example below.
3537

3638
```

doc/offline-signing-tutorial.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,8 @@ We are going to first create an `offline_wallet` on the offline host. We will th
3434
}
3535
```
3636

37+
`bitcoin rpc` can also be substituted for `bitcoin-cli`.
38+
3739
> [!NOTE]
3840
> The use of a passphrase is crucial to encrypt the wallet.dat file. This encryption ensures that even if an unauthorized individual gains access to the offline host, they won't be able to access the wallet's contents. Further details about securing your wallet can be found in [Managing the Wallet](https://github.com/bitcoin/bitcoin/blob/master/doc/managing-wallets.md#12-encrypting-the-wallet)
3941

0 commit comments

Comments
 (0)