generated from vincenzopalazzo/talks
fixup! build: add the deploy target
This commit is contained in:
parent
909fcd0590
commit
1e6d41125d
File diff suppressed because one or more lines are too long
|
@ -9,7 +9,7 @@
|
|||
/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>Vite + Svelte + Reveal.js Boilerplate</title>
|
||||
<script type="module" crossorigin src="/assets/index.37bc726f.js"></script>
|
||||
<script type="module" crossorigin src="/assets/index.bbf1bd16.js"></script>
|
||||
<link rel="stylesheet" href="/assets/index.f526871f.css">
|
||||
</head>
|
||||
<body>
|
||||
|
|
|
@ -9,6 +9,141 @@
|
|||
<q>Demo Time!</q>
|
||||
</section>
|
||||
<section>
|
||||
<p>TODO</p>
|
||||
<h3>Compile and Install step</h3>
|
||||
<div
|
||||
style="background-color: #373A3C; color: #ADB5BD;border-radius:25px;width:90%;text-align:left;padding:8px;font-size:28px"
|
||||
>
|
||||
<div>
|
||||
<span style="color:green;diplay:flex;margin-left:14px">➜</span>
|
||||
<span style="color:#ADB5BD">~</span> git clone git@github.com:ElementsProject/lightning.git
|
||||
</div>
|
||||
<div>
|
||||
<span style="color:green;diplay:flex;margin-left:14px">➜</span>
|
||||
<span style="color:#ADB5BD">~</span> ./configure && poetry shell
|
||||
</div>
|
||||
<div>
|
||||
<span style="color:green;diplay:flex;margin-left:14px">➜</span>
|
||||
<span style="color:#ADB5BD">~</span> make && make install
|
||||
</div>
|
||||
</div>
|
||||
<p>
|
||||
See official docs <a
|
||||
href="https://docs.corelightning.org/docs/installation">INSTALL.md</a
|
||||
>
|
||||
</p>
|
||||
</section>
|
||||
<section>
|
||||
<h3>Install Coffee</h3>
|
||||
<div
|
||||
style="background-color: #373A3C; color: #ADB5BD;border-radius:25px;width:90%;text-align:left;padding:8px;font-size:28px"
|
||||
>
|
||||
<div>
|
||||
<span style="color:green;diplay:flex;margin-left:14px">➜</span>
|
||||
<span style="color:#ADB5BD">~</span> git clone git@github.com:coffee-tools/coffee.git
|
||||
</div>
|
||||
<div>
|
||||
<span style="color:green;diplay:flex;margin-left:14px">➜</span>
|
||||
<span style="color:#ADB5BD">~</span> cd coffee && make install
|
||||
</div>
|
||||
</div>
|
||||
<p>
|
||||
See official docs <a href="https://coffee-docs.netlify.app/"
|
||||
>coffee docs</a
|
||||
>
|
||||
</p>
|
||||
</section>
|
||||
<section>
|
||||
<h3>Run Lightning Deamon</h3>
|
||||
<div
|
||||
style="background-color: #373A3C; color: #ADB5BD;border-radius:25px;width:90%;text-align:left;padding:8px;font-size:28px"
|
||||
>
|
||||
<div>
|
||||
<span style="color:green;diplay:flex;margin-left:14px">➜</span>
|
||||
<span style="color:#ADB5BD">~</span> lightningd --signet
|
||||
</div>
|
||||
</div>
|
||||
<pre class="fragment" style="font-size: 12px">
|
||||
<code data-trim data-noescape>
|
||||
<script type="text/template">
|
||||
➜ coffee git:(master) lightningd --signet
|
||||
2023-09-28T17:10:10.571Z INFO lightningd: Creating configuration directory /home/vincent/.lightning/signet
|
||||
2023-09-28T17:10:10.645Z INFO plugin-clnrest.py: Killing plugin: disabled itself: No module named 'gunicorn'
|
||||
2023-09-28T17:10:10.658Z INFO lightningd: Creating database
|
||||
2023-09-28T17:10:10.687Z UNUSUAL hsmd: HSM: created new hsm_secret file
|
||||
|
||||
Could not connect to bitcoind using bitcoin-cli. Is bitcoind running?
|
||||
|
||||
Make sure you have bitcoind running and that bitcoin-cli is able to connect to bitcoind.
|
||||
|
||||
You can verify that your Bitcoin Core installation is ready for use by running:
|
||||
|
||||
$ bitcoin-cli -signet echo 'hello world'
|
||||
2023-09-28T17:10:10.969Z **BROKEN** plugin-bcli: \nCould not connect to bitcoind using bitcoin-cli.
|
||||
Is bitcoind running?
|
||||
Make sure you have bitcoind running and that bitcoin-cli is able to connect to bitcoind.
|
||||
You can verify that your Bitcoin Core installation is ready for use by running:
|
||||
$ bitcoin-cli -signet echo 'hello world'\n
|
||||
2023-09-28T17:10:10.969Z INFO plugin-bcli: Killing plugin: exited before we sent init
|
||||
The Bitcoin backend died.
|
||||
|
||||
</script>
|
||||
</code>
|
||||
</pre>
|
||||
</section>
|
||||
<section>
|
||||
<p>What is the problem?</p>
|
||||
<p class="fragment">We do not have bitcoin core running</p>
|
||||
<p class="fragment">
|
||||
But maybe I do not have it sync and it can take days on mainet
|
||||
</p>
|
||||
<p class="fragment">We can solve this problem?</p>
|
||||
<p class="fragment">
|
||||
Yes with a plugin called <a href="https://github.com/coffee-tools/folgore"
|
||||
>folgore</a
|
||||
>
|
||||
</p>
|
||||
</section>
|
||||
<section>
|
||||
<h3>Install Folgore</h3>
|
||||
<div
|
||||
style="background-color: #373A3C; color: #ADB5BD;border-radius:25px;width:90%;text-align:left;padding:8px;font-size:28px"
|
||||
>
|
||||
<div>
|
||||
<span style="color:green;diplay:flex;margin-left:14px">➜</span>
|
||||
<span style="color:#ADB5BD">~</span> git clone git@github.com:coffee-tools/folgore.git
|
||||
</div>
|
||||
<div>
|
||||
<span style="color:green;diplay:flex;margin-left:14px">➜</span>
|
||||
<span style="color:#ADB5BD">~</span> coffee --network signet setup
|
||||
/home/<user>/.lightning </user>
|
||||
</div>
|
||||
<div>
|
||||
<span style="color:green;diplay:flex;margin-left:14px">➜</span>
|
||||
<span style="color:#ADB5BD">~</span> coffee --network signet remote add folgore-git
|
||||
https://github.com/coffee-tools/folgore.git
|
||||
</div>
|
||||
<div>
|
||||
<span style="color:green;diplay:flex;margin-left:14px">➜</span>
|
||||
<span style="color:#ADB5BD">~</span> coffee --network signet install folgore
|
||||
--verbose
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<section>
|
||||
<h3>Run Lightning Deamon</h3>
|
||||
<div
|
||||
style="background-color: #373A3C; color: #ADB5BD;border-radius:25px;width:90%;text-align:left;padding:8px;font-size:22px"
|
||||
>
|
||||
<div>
|
||||
<span style="color:green;diplay:flex;margin-left:14px">➜</span>
|
||||
<span style="color:#ADB5BD">~</span> lightningd --signet --disable-plugin
|
||||
bcli --bitcoin-client=esplora --bitcoin-rpcuser="" --bitcoin-rpcpassword=""
|
||||
--bitcoin-esplora-url="" --bitcoin-rpcurl=""
|
||||
</div>
|
||||
<div>
|
||||
<span style="color:green;diplay:flex;margin-left:14px">➜</span>
|
||||
<span style="color:#ADB5BD">~</span> lightning-cli --signet getinfo
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
|
|
|
@ -9,6 +9,69 @@
|
|||
<h3>Implementation Details</h3>
|
||||
</section>
|
||||
<section>
|
||||
<p>TODO!</p>
|
||||
<p>
|
||||
How CLN deal with encoding and decoding (aka <strong>wire</strong>)
|
||||
messages
|
||||
</p>
|
||||
<ul>
|
||||
<li class="fragment">
|
||||
Every lightning network messages is a <strong>struct</strong>
|
||||
</li>
|
||||
<li class="fragment">
|
||||
Every message information is defined inside a <strong>csv</strong> file
|
||||
</li>
|
||||
<li class="fragment">CLN build system generate the equivalent C code</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section>
|
||||
<pre>
|
||||
<code data-trim data-noescape>
|
||||
<script type="text/template">
|
||||
msgtype,hsmd_init,11
|
||||
msgdata,hsmd_init,bip32_key_version,bip32_key_version,
|
||||
msgdata,hsmd_init,chainparams,chainparams,
|
||||
msgdata,hsmd_init,hsm_encryption_key,?secret,
|
||||
msgdata,hsmd_init,dev_force_privkey,?privkey,
|
||||
msgdata,hsmd_init,dev_force_bip32_seed,?secret,
|
||||
msgdata,hsmd_init,dev_force_channel_secrets,?secrets,
|
||||
msgdata,hsmd_init,dev_force_channel_secrets_shaseed,?sha256,
|
||||
msgdata,hsmd_init,hsm_wire_min_version,u32,
|
||||
msgdata,hsmd_init,hsm_wire_max_version,u32,
|
||||
</script>
|
||||
</code>
|
||||
</pre>
|
||||
</section>
|
||||
<section>
|
||||
<pre>
|
||||
<code data-trim data-noescape>
|
||||
<script type="text/template">
|
||||
/** hsmd/hsmd_wiregen.h after running make **/
|
||||
u8 *towire_hsmd_init(const tal_t *ctx, ...);
|
||||
bool fromwire_hsmd_init(const tal_t *ctx, ...);
|
||||
</script>
|
||||
</code>
|
||||
</pre>
|
||||
<p class="fragment">
|
||||
Then write/read through a file descriptor (UNIX concept) to communicate
|
||||
with a deamon
|
||||
</p>
|
||||
</section>
|
||||
<section>
|
||||
<p>Message format:</p>
|
||||
<ul>
|
||||
<li class="fragment">All the message are in binary format</li>
|
||||
<li class="fragment">
|
||||
Following the <a
|
||||
href="https://github.com/lightning/bolts/blob/master/01-messaging.md#lightning-message-format"
|
||||
>BOLT 1
|
||||
</a>
|
||||
</li>
|
||||
<li class="fragment">
|
||||
There are different code generator, e.g <a
|
||||
href="https://github.com/lnspec-tools/lncodegen"
|
||||
>https://github.com/lnspec-tools/lncodegen</a
|
||||
>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</section>
|
||||
|
|
|
@ -8,5 +8,45 @@
|
|||
</p>
|
||||
<h3>How CLN uses plugins</h3>
|
||||
</section>
|
||||
<section>TODO</section>
|
||||
<section>
|
||||
<ul>
|
||||
<li>Plugins in core lightning are first citizen</li>
|
||||
<li class="fragment">CLN implement functions with builtin plugins</li>
|
||||
<li class="fragment">
|
||||
Most of the major important functionality are plugins
|
||||
</li>
|
||||
<li class="fragment">You can write the plugin in any languages</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section>
|
||||
<ul>
|
||||
<li>CLN talk with bitcoin through a plugin</li>
|
||||
<li class="fragment">CLN pay an invoice through a plugin</li>
|
||||
<li class="fragment"><strong>plugins can be replaced</strong></li>
|
||||
</ul>
|
||||
</section>
|
||||
<section>
|
||||
<ul>
|
||||
<li>
|
||||
List of plugins <a href="https://github.com/lightningd/plugins">
|
||||
lightningd/plugins
|
||||
</a>
|
||||
</li>
|
||||
<li class="fragment">
|
||||
Initial support for plugins manager. e.g <a
|
||||
href="https://github.com/coffee-tools/coffee">coffee</a
|
||||
>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section>
|
||||
<p>Why use a plugin manager:</p>
|
||||
<ul>
|
||||
<li class="fragment">Every language required different setup</li>
|
||||
<li class="fragment">
|
||||
A plugin manager <strong>try to do</strong> all the setup for you under the
|
||||
hood
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</section>
|
||||
|
|
Loading…
Reference in New Issue