Este es un tutorial para instalar la implementación de Blockstream de la Lightning Network llamada inicialmente *c-lightning* y renombrada actualmente a *Core Lightning (CLN)*. **Tabla de contenido** [TOC] ## Autor Twitter para correcciones, comentarios o sugerencias: [@bitao36](https://twitter.com/bitao36) El presente tutorial fue elaborado para el [Seminario socrático de Mastering Lightning](https://libreriadesatoshi.com/) a través de [@libreriadesatoshi](https://twitter.com/libdesatoshi). ## Requerimentos :information_source: :::info * Tener instalada una distribución de Linux basada en Debian, preferiblemente Ubuntu. * Tener instalado un nodo de Bitcoin Core ::: Para poder ejecutar un nodo core lightning en testnet, debes tener instalado y corriendo Bitcoin Core. ## Instalar dependencias para poder compilar lightningd ```shell sudo apt update sudo apt upgrade sudo apt install -y autoconf automake build-essential \ git libtool libsqlite3-dev python3 python3-mako python3-pip \ net-tools zlib1g-dev libsodium-dev gettext libgmp-dev pip3 install --upgrade pip ``` Si se quiere usar el plugin cln-grpc o construir plugins con Rust debes instalar Rust con esta linea: ```shell sudo apt-get install -y cargo rustfmt protobuf-compiler ``` Para que al momento de compilar los protobuffer no te generen un error debes chequear la siguiente guía para garantizar que tengas la última versión de [protoc](https://www.estebansuarez.com/como-instalar-la-ultima-version-de-protoc-en-ubuntu/). En caso de que estés interesado en desarrollar, debes instalar estas dependencias adicionales: ```shell sudo apt-get install -y valgrind libpq-dev shellcheck cppcheck \ libsecp256k1-dev jq ``` ## Compilar e instalar lightningd Clonamos el repositorio donde está el código fuente : ```shell git clone https://github.com/ElementsProject/lightning.git cd lightning ``` Buscamos la última versión estable: ```shell git tag ``` En el momento de actualizar este tutorial es la v23.05 de modo que vamos a ese release: ```shell git checkout v23.05 ``` Ahora si compilamos y ejecutamos lightning: ```shell pip3 install mako ./configure make -j$(nproc) sudo make install ``` Antes de ejecutar lightningd debemos crear el directorio `.lightning` y dentro de ese directorio vamos a crear el archivo `config`. ```shell mkdir .lightning cd .lightning nano config ``` Y agregamos las siguientes líneas: ```= network=testnet log-level=debug log-file=lightningd.log addr=0.0.0.0:9735 ``` Antes de lanzar lightningd ya debe estar corriendo bitcoind. Ahora si lanzamos lightningd como demonio: ```shell lightningd --daemon ``` Y obtenemos datos del nodo: ```shell lightning-cli getinfo ``` Con este comando puedes detener lightningd ```shell lightning-cli stop ``` Si has llegado hasta aquí muchas felicitaciones, tienes corriendo un nodo con Bitcoin Core y Core Lightning :-) ## :zap: Donaciones :::success Si te fue útil este material puedes agradecer a @bitao36, enviándole un aporte vía Lightning Address: bitao36@getalby.com :::