tldr; when bolt12 😭
Problem: Geyser Fund doesn't allow you to directly connect to CLN nodes, they only support LND. They also offer the option to provide them with a LN address. I run CLN, I don't have an LN address. Fine, I'll use Alby.
Problem: Geyser fund is amazingly successful (we're still only 50% of the way there!), Alby starts rate limiting us and says "please dont send us more funds"
Spend lots of time and some sats paying Boltz to swap out Alby funds. Cry to @kodylow about how CLN doesn't support LN addresses.
Solution: Kody sends me @elsirion's amazing clnurl plugin repo. https://github.com/elsirion/clnurl/tree/master
Ok, we're in business. Sort of.
Add clnurl to base58 lightning node and restart it, adjust the firewalls etc.
Problem: This would be simple except that base58 lightning node runs in a container on a nixos box. Solution: Jump clnurl through container to host port, to outside.
Problem: lightning node box is on private network, can only be talked to from external "jump host". Problem: Also I need a domain name to front this. Preferrably base58.school, since that's the website address.
Problem: base58.school is pointed to a different server, which runs the base58.school webapp.
Ok here's the very janky way that I solved this:
  • added nginx rewrite rules to the "jump host" so that hitting a certain endpoint will send commands to the internal port which is forwarding to the container.
  • added some hard coded rewrite rules into the base58 webapp so that it'll automagically forward everything from the base58 server to the jump host to the ln node box to the container. And then back.
In case you want to see all the ways you now zap sats to base58.school
Actual solution: get Geyser Fund to support bolt12 offers so I could have done this with about two clicks instead of needing to configure 3 different servers and not had to involve Alby in the process at all. Now my bookkeeping is all screwed up, as I've got sats strewn across two different accounts (three technically as I swapped in my personal Alby LN address when the base58 one got rate limited). RIP
Have you looked at the bolt12 DNS stuff? Seems like a few wallets are going to roll that out soon.
reply
Neat write up! This is the kind of thing I usually do but forget to take notes so I forget what I did
reply
"Now my bookkeeping is all screwed up, as I've got sats strewn across two different accounts"
So if I Zap this post a few hundred Sats, is it going to mess you up even more?
... oops, too late, I already did it.
reply
personal sats are sorta different from business sats!! but yeah actually… 😂
is there a personal zap option on SN?
reply
Not yet, but I've been told they are actively working on developing one.
reply
is there a personal zap option on SN?
What do you mean with personal zap option?
but I've been told they are actively working on developing one.
Mhh, interesting. This rings no bells. Every user has a LN address on here (see profile). But that's been the case since basically forever. So I think you're talking about something else
reply
reply
0 sats \ 1 reply \ @ek 25 Jan
Ah, haha, even a comment from myself. I would say it's mostly done.
Imagined something else when I read "personal zap"
reply
lol, wow. I didn't even realize that was you!
Here I thought I was educating someone on current development, and it turns out the person I'm trying to educate is the developer him/her-self.
Egg on my face.
reply
101 sats \ 0 replies \ @anon 25 Jan
need everyone everywhere to support bolt12 ASAP
reply
Same goes for lightning addresses. These payment stop gaps that are often enough centralized or require additional clearnet servers need to go.
reply
That's very cool. Also sry for no bolt12. You might be the first Geyser creator to actually ask for that.
Wanted to play with it but the https://bootstrap.bolt12.org API is down :( are there any other examples for fetching an invoice from an offer?
reply
Alby starts rate limiting us and says "please dont send us more funds"
/cc @Alby
Problem: Also I need a domain name to front this. Preferrably base58.school, since that's the website address. Problem: base58.school is pointed to a different server, which runs the base58.school webapp.
That's where I started to say oof
In case you want to see all the ways you now zap sats to base58.school https://github.com/base58btc/base58-web/commit/ae85c4ebd19eacab2417498017a1f3f6a658c015
Mhh, this commit only shows a single line changed? I guess you wanted to point to the repository or commit history of the day?
Btw, what are you thoughts why LND has such a big market share1? Because of VC funding? Branding? Marketing? Network effect?
You might have answered this several times already. You can also just reply with a link in that case :)
Footnotes
  1. SN also uses LND under the hood 😅 ↩
reply
Btw, what are you thoughts why LND has such a big market share1? Because of VC funding? Branding? Marketing? Network effect?
If you wanted to run a CLN node, the options you have are quite limited in terms of how and where to run it. I think a lot of defaults on shipped products default to LND as well (Umbrel, Voltage, not sure what Start9 defaults to, etc). This adds up in terms of deploy base/accessibility.
reply
100 sats \ 0 replies \ @ek 26 Jan
So first-mover advantage? Since they were integrated first into these products and now will forever be the default?
reply
Mhh, this commit only shows a single line changed? I guess you wanted to point to the repository or commit history of the day?
That line shows all the options for all the users @base58.school that you can zap sats to.
I think my favorite is zap@base58.school
reply
0 sats \ 1 reply \ @ek 25 Jan
That line shows all the options for all the users @base58.school that you can zap sats to.
Ahh, I was too interested in the pain you endured and misinterpreted what you were saying. I was expecting a huge diff lol
reply
the weird thing about networking config issues is that it's more like getting a few short configurations exactly correct and not really having a lot of "code" per se :/
reply