fix typos and add suggested edits from community

This commit is contained in:
Adi Shankara 2023-11-07 18:29:08 +04:00 committed by Rusty Russell
parent 6f4a3c86e9
commit d50d7d428d
4 changed files with 50 additions and 47 deletions

View file

@ -22,4 +22,5 @@ In order to avoid this situation you should be monitoring the gap between Core L
You can use _trusted_ third-party plugins as bitcoin backends instead of using your own node. You can use _trusted_ third-party plugins as bitcoin backends instead of using your own node.
- [sauron](https://github.com/lightningd/plugins/tree/master/sauron) is a bitcoin backend plugin relying on [Esplora](https://github.com/Blockstream/esplora). - [sauron](https://github.com/lightningd/plugins/tree/master/sauron) is a bitcoin backend plugin relying on [Esplora](https://github.com/Blockstream/esplora).
- [trustedcoin](https://github.com/nbd-wtf/trustedcoin) is a plugin that uses block explorers (blockstream.info, mempool.space, blockchair.com and blockchain.info) as backends instead of your own bitcoin node. - [trustedcoin](https://github.com/nbd-wtf/trustedcoin) is a plugin that uses block explorers (blockstream.info, mempool.space, blockchair.com and blockchain.info) as backends instead of your own bitcoin node.
- [bps](https://github.com/coinos/bps) is a proxy server that exposes just the RPC commands that lightning needs. There's a public endpoint at <https://coinos.io/proxy> or you can host your own.

View file

@ -14,6 +14,7 @@ If you're on Ubuntu, you need to install bitcoind:
```shell ```shell
sudo apt-get install -y software-properties-common sudo apt-get install -y software-properties-common
sudo snap install bitcoin-core sudo snap install bitcoin-core
sudo snap refresh --hold bitcoin-core # To prevent automated update of bitcoin-core
sudo ln -s /snap/bitcoin-core/current/bin/bitcoin{d,-cli} /usr/local/bin/ sudo ln -s /snap/bitcoin-core/current/bin/bitcoin{d,-cli} /usr/local/bin/
``` ```
@ -175,7 +176,7 @@ OS version: Fedora 27 or above
Get dependencies: Get dependencies:
```shell ```shell
$ sudo dnf update -y && \ sudo dnf update -y && \
sudo dnf groupinstall -y \ sudo dnf groupinstall -y \
'C Development Tools and Libraries' \ 'C Development Tools and Libraries' \
'Development Tools' && \ 'Development Tools' && \
@ -201,36 +202,36 @@ Make sure you have [bitcoind](https://github.com/bitcoin/bitcoin) available to r
Clone lightning: Clone lightning:
```shell ```shell
$ git clone https://github.com/ElementsProject/lightning.git git clone https://github.com/ElementsProject/lightning.git
$ cd lightning cd lightning
``` ```
Checkout a release tag: Checkout a release tag:
```shell ```shell
$ git checkout v22.11.1 git checkout v22.11.1
``` ```
Build and install lightning: Build and install lightning:
```shell ```shell
$lightning> ./configure ./configure
$lightning> make make
$lightning> sudo make install sudo make install
``` ```
Running lightning (mainnet): Running lightning (mainnet):
```shell ```shell
$ bitcoind & bitcoind &
$ lightningd --network=bitcoin lightningd --network=bitcoin
``` ```
Running lightning on testnet: Running lightning on testnet:
```shell ```shell
$ bitcoind -testnet & bitcoind -testnet &
$ lightningd --network=testnet lightningd --network=testnet
``` ```
## To Build on FreeBSD ## To Build on FreeBSD
@ -318,11 +319,11 @@ Finally, build `c-lightning`:
Use nix-shell launch a shell with a full Core Lightning dev environment: Use nix-shell launch a shell with a full Core Lightning dev environment:
```shell ```shell
$ nix-shell -Q -p gdb sqlite autoconf git clang libtool sqlite autoconf \ nix-shell -Q -p gdb sqlite autoconf git clang libtool sqlite autoconf \
autogen automake gmp zlib gettext libsodium poetry 'python3.withPackages (p: [p.bitcoinlib])' \ autogen automake gmp zlib gettext libsodium poetry 'python3.withPackages (p: [p.bitcoinlib])' \
valgrind --run "./configure && poetry shell" valgrind --run "./configure && poetry shell"
$ poetry install poetry install
$ make make
``` ```
## To Build on macOS ## To Build on macOS
@ -330,67 +331,67 @@ $ make
Assuming you have Xcode and Homebrew installed. Install dependencies: Assuming you have Xcode and Homebrew installed. Install dependencies:
```shell ```shell
$ brew install autoconf automake libtool python3 gnu-sed gettext libsodium brew install autoconf automake libtool python3 gnu-sed gettext libsodium
$ ln -s /usr/local/Cellar/gettext/0.20.1/bin/xgettext /usr/local/opt ln -s /usr/local/Cellar/gettext/0.20.1/bin/xgettext /usr/local/opt
$ export PATH="/usr/local/opt:$PATH" export PATH="/usr/local/opt:$PATH"
``` ```
If you need SQLite (or get a SQLite mismatch build error): If you need SQLite (or get a SQLite mismatch build error):
```shell ```shell
$ brew install sqlite brew install sqlite
$ export LDFLAGS="-L/usr/local/opt/sqlite/lib" export LDFLAGS="-L/usr/local/opt/sqlite/lib"
$ export CPPFLAGS="-I/usr/local/opt/sqlite/include" export CPPFLAGS="-I/usr/local/opt/sqlite/include"
``` ```
Some library paths are different when using `homebrew` with M1 macs, therefore the following two variables need to be set for M1 machines Some library paths are different when using `homebrew` on Macs with Apple silicon, therefore the following two variables need to be set for Macs with Apple silicon:
```shell ```shell
$ export CPATH=/opt/homebrew/include export CPATH=/opt/homebrew/include
$ export LIBRARY_PATH=/opt/homebrew/lib export LIBRARY_PATH=/opt/homebrew/lib
``` ```
If you need Python 3.x for mako (or get a mako build error): If you need Python 3.x for mako (or get a mako build error):
```shell ```shell
$ brew install pyenv brew install pyenv
$ echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\nfi' >> ~/.bash_profile echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\nfi' >> ~/.bash_profile
$ source ~/.bash_profile source ~/.bash_profile
$ pyenv install 3.8.10 pyenv install 3.8.10
$ pip install --upgrade pip pip install --upgrade pip
$ pip install poetry pip install poetry
``` ```
If you don't have bitcoind installed locally you'll need to install that as well: If you don't have bitcoind installed locally you'll need to install that as well:
```shell ```shell
$ brew install berkeley-db4 boost miniupnpc pkg-config libevent brew install berkeley-db4 boost miniupnpc pkg-config libevent
$ git clone https://github.com/bitcoin/bitcoin git clone https://github.com/bitcoin/bitcoin
$ cd bitcoin cd bitcoin
$ ./autogen.sh ./autogen.sh
$ ./configure ./configure
$ make src/bitcoind src/bitcoin-cli && make install make src/bitcoind src/bitcoin-cli && make install
``` ```
Clone lightning: Clone lightning:
```shell ```shell
$ git clone https://github.com/ElementsProject/lightning.git git clone https://github.com/ElementsProject/lightning.git
$ cd lightning cd lightning
``` ```
Checkout a release tag: Checkout a release tag:
```shell ```shell
$ git checkout v22.11.1 git checkout v22.11.1
``` ```
Build lightning: Build lightning:
```shell ```shell
$ poetry install poetry install
$ ./configure ./configure
$ poetry run make poetry run make
``` ```
Running lightning: Running lightning:
@ -411,7 +412,7 @@ To install the built binaries into your system, you'll need to run `make install
make install make install
``` ```
On an M1 mac you may need to use this command instead: On a Mac with Apple silicon, you may need to use this command instead:
```shell ```shell
sudo PATH="/usr/local/opt:$PATH" LIBRARY_PATH=/opt/homebrew/lib CPATH=/opt/homebrew/include make install sudo PATH="/usr/local/opt:$PATH" LIBRARY_PATH=/opt/homebrew/lib CPATH=/opt/homebrew/include make install
@ -429,8 +430,8 @@ pip install --user poetry
Clone Core Lightning: Clone Core Lightning:
```shell ```shell
$ git clone https://github.com/ElementsProject/lightning.git git clone https://github.com/ElementsProject/lightning.git
$ cd lightning cd lightning
``` ```
Build Core Lightning: Build Core Lightning:

View file

@ -19,4 +19,5 @@ There are a handful of third-party GUI tools that provide analytics on the top o
- [Ride-the-Lightning](https://www.ridethelightning.info/) - [Ride-the-Lightning](https://www.ridethelightning.info/)
- [Umbrel](https://getumbrel.com/) - [Umbrel](https://getumbrel.com/)
- [bolt.observer](https://bolt.observer) - [bolt.observer](https://bolt.observer)
- <https://lnnodeinsight.com/> - [LN Node Insights](https://lnnodeinsight.com/)
- [Munin](https://github.com/lduchosal/munin-clightning)

View file

@ -63,7 +63,7 @@ If you need a lot of inbound liquidity, you can use a service that trustlessly s
### Are there any issues if my node changes its IP address? What happens to the channels if it does? ### Are there any issues if my node changes its IP address? What happens to the channels if it does?
There is no risk to your channels if your IP address changes. Other nodes might not be able to connect to you, but your node can still connect to them. But Core Lightning also has an integrated IPv4/6 address discovery mechanism. If your node detects an new public address, it will update its announcement. For this to work binhind a NAT router you need to forward the default TCP port 9735 to your node. IP discovery is only active if no other addresses are announced. There is no risk to your channels if your IP address changes. Other nodes might not be able to connect to you, but your node can still connect to them. But Core Lightning also has an integrated IPv4/6 address discovery mechanism. If your node detects an new public address, it will update its announcement. For this to work behindd a NAT router you need to forward the default TCP port 9735 to your node. IP discovery is only active if no other addresses are announced.
Alternatively, you can [setup a TOR hidden service](doc:tor) for your node that will also work well behind NAT firewalls. Alternatively, you can [setup a TOR hidden service](doc:tor) for your node that will also work well behind NAT firewalls.