Title: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on October 21, 2021, 01:12:09 PM Since I wanted to rebuild one of my full nodes anyway, and like to experiment with different distro's, this time I went for OpenSUSE. It's enterprise-ready software with long-term support and should be very stable. Perfect for a Bitcoin node!
Changelog: [...] 15.01.2024: Update guide -- all latest versions! Bitcoin Core v26.0, electrs v0.10.2, Core Lightning v23.11.2 and RTL v0.15.0 Disclaimers: I used @mocacinno's great centos 7 (https://bitcointalk.org/index.php?topic=5217198.0) guide in parts and he generously helped me with some SUSE issues as well, so I want to give credit for that. His walkthrough is very good, but CentOS 7 is now outdated and I also wanted to add Electrum as well as configuring Electrum & C-Lightning to use Tor. I opted to configure Electrum and C-Lightning to just use Tor. I find this the best way for privacy, circumventing NAT issues (home networks) and it has built-in encryption thus requiring no TLS certificates. Finally, your eyes might be bleeding looking at all the nano commands. I myself obviously prefer vim, but someone who isn't familiar with it might prefer nano instead, that's why I wrote it down like this. The hardware is quite low-end stuff, which goes to show that even a cheap node (https://bitcointalk.org/index.php?topic=5364742.0) can run the 'full stack' :)
Note: By now, I switched to a 1TB SSD. Since then, the electrum server (still through Tor) is super snappy. My clients seem to connect and refresh much quicker. It still takes a bit longer than through clearnet, but Tor is hassle-free and secure. mocacinno's remarks apply here as well: some remaks:
Software list Bitcoin Core: (https://bitcointalk.org/index.php?topic=5366854.msg58233711#msg58233711) Reference implementation of Bitcoin, fully verified, keeps whole blockchain, requires no trust. ElectRS: (https://bitcointalk.org/index.php?topic=5366854.msg58233714#msg58233714) Lightweight Electrum implementation - get privacy for your SPV wallets! C-Lightning: (https://bitcointalk.org/index.php?topic=5366854.msg58233717#msg58233717) Lightweight Lightning Network implementation - instant and cheap BTC payments. Ride The Lightning: (https://bitcointalk.org/index.php?topic=5366854.msg58233721#msg58233721) Lightning management GUI, accessible via LAN from other devices in the network. My C-Lightning backup guide can now be found here: https://bitcointalk.org/index.php?topic=5384133.0 How to update your node: https://bitcointalk.org/index.php?topic=5366854.msg61920456#msg61920456 Title: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on October 21, 2021, 01:12:32 PM openSUSE
Setting up openSUSE is analogous to any other Linux install; I would just recommend to go with the Leap version for stability instead of rolling-release Tumbleweed option. Quote from: https://get.opensuse.org/desktop/ For Sysadmins, Enterprise Developers, and ‘Regular’ Desktop Users Regular release with the benefits of both enterprise-grade engineering and community-developed innovation. Simply download the ISO and checksum here: https://get.opensuse.org/leap/#download And verify it on your local machine. Instructions can be found here: https://www.suse.com/support/security/download-verification/ After installing openSUSE on the target machine, setup a Bitcoin user Code: sudo useradd -m bitcoin Restrict sudo access to your administrator user account by editing sudoers via visudo: Code: sudo visudo Go to the line that looks like: Code: root ALL=(ALL) ALL And add another line like follows. Replace your_user with your 'admin' account which will be the only sudo-capable account. Code: your_user ALL=(ALL) ALL Further edit the file to prevent the unprivileged bitcoin user to execute sudo commands, even if it has a root user's password. The last two lines must be commented out like shown. Code: ## In the default (unconfigured) configuration, sudo asks for the root password. Title: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on October 21, 2021, 01:12:52 PM Bitcoin Core
[1] Install prerequisites: Code: sudo zypper addrepo https://download.opensuse.org/repositories/devel:languages:python:Factory/openSUSE_Leap_15.3/devel:languages:python:Factory.repo [2] Switch to unprivileged bitcoin user. Commands should output bitcoin (user) and /home/bitcoin (working directory) Code: su - bitcoin [3] Download & build Bitcoin Core. v26.0 parameter needs to be adapted to the latest version whenever you read this guide. Code: git clone https://github.com/bitcoin/bitcoin.git [4] Create random username and password to access core via RPC. Code: cd share/rpcauth/ [4.1] Delete history, otherwise the password remains in history file in cleartext. Code: history -c [5] Create Bitcoin config file Code: mkdir ~/.bitcoin [6] Fill it like follows: Code: daemon=1 [7] Exit back to admin account Code: exit [8] Install Bitcoin Code: cd /home/bitcoin/bitcoin [9] Still logged in as sudoer, create Bitcoin service: Code: sudo nano /usr/lib/systemd/system/bitcoind.service [10] Contents should be like shown: Code: [Unit] [11] Enable & start service Code: sudo systemctl enable bitcoind.service [12] Check if running Code: tail -f /home/bitcoin/.bitcoin/debug.log [13] Exit with CTRL+C, now wait for many moons (or hours) for the IBD to finish. To check on the progress, you may use the tail command from before again or check disk utilization. Code: du -h /home/bitcoin/.bitcoin/blocks After initial block download is finished, bitcoin-cli getblockchaininfo should return 99.999% verification like this. Code: "verificationprogress": 0.9999999999, As alluded to in the start post, IBD was going for around a week and still under 50%. Then I bought a second stick of 4GB RAM, look what happened. For now, I would like to share my experience with a node that I've setup a few days ago. It is one of my nodes that needed a bit of maintenance; it was quite cluttered and had outdated software so I rebuilt it from scratch. I will also post a guide about it soon (OpenSUSE node walkthrough). The hardware is a laptop motherboard with 4GB RAM and 2 500GB HDDs. After it had taken almost a week to achieve ~40% sync, it was going super slow; around 1-2% a day, so I thought it may be a good idea to just plop in a second stick of RAM and see if it does anything. I kind of expected something to happen, but I was astonished at the speed it was going at afterwards! The HDD arm was moving much less now (audible difference); I suspect it was swapping a ton before, and the log was literally flying. Here's a graph of some measurements I took; I let you guys guess at which point in time I upgraded the node from 4GB to 8GB :D https://i.postimg.cc/DwGyjNGz/image.png Title: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on October 21, 2021, 01:13:17 PM electrs
Since one of the main benefits of running a full node is privacy during transaction & address lookup, an Electrum server is needed. Otherwise you'd have to query using Bitcoin Core all the time and can't just use your mobile and desktop applications for that. [1] Install dependencies, make sure you're logged into your sudoer account and not in bitcoin. Code: sudo zypper install clang cargo rust tor libstdc++6-devel-gcc11 [2] Download and build electrs as bitcoin. It took my machine around 10 minutes. Code: su - bitcoin [3] Create electrs config file Code: nano electrs.toml [4] Enter the following: Code: cookie_file = "/home/bitcoin/.bitcoin/.cookie" [5] Log back out into your sudo account, and open the Tor config file. Code: exit [6] Add the following contents, preferably in the right section (somewhere where there's HiddenServiceDir stuff commented out). Code: HiddenServiceDir /var/lib/tor/electrs_hidden_service/ [7] Start up Tor and fetch your electrs Tor hostname. The hostname can then be entered in wallets like Wasabi and BlueWallet settings. Code: sudo systemctl enable tor.service [8] Create a service so electrs starts on startup Code: sudo nano /usr/lib/systemd/system/electrs.service [9] Enter this information Code: [Unit] [10] Start the service Code: sudo systemctl enable electrs.service [11] Check that it's running. This should return the electrs version. Code: echo '{"jsonrpc": "2.0", "method": "server.version", "params": ["", "1.4"], "id": 0}' | netcat 127.0.0.1 50001 Title: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on October 21, 2021, 01:13:42 PM C-Lightning
[1] Install dependencies Code: sudo zypper install sqlite3-devel gmp-devel zlib-devel python3-Mako gettext-tools [2] Create another Tor hidden service for C-Lightning. Similar procedure as before. Code: sudo nano /etc/tor/torrc [3] Below the other hidden service, add this info for Lightning. Code: HiddenServiceDir /var/lib/tor/lightningd_hidden_service/ [4] Then restart Tor and retrieve the new v3 Tor hostname for your Lightning installation. Copy it somewhere so you have it handy in step 7. Code: sudo service tor restart [5] Log into bitcoin user and download + build Lightning. v23.05.1 needs to be set to the currently latest version. Code: su - bitcoin [6] Create Lightning config. Code: mkdir -p /home/bitcoin/.lightning/bitcoin [7] Enter the following. Alias can be chosen at will! :) Replace onion_address_you_got with the hidden service hostname you got in step 4! Code: daemon [8] Log back out of the unprivileged bitcoin account to install Lightning and create the service. Code: exit [9] In the service file, we need the following contents. Code: [Unit] [10] Start the Lightning service Code: sudo systemctl enable lightningd.service [11] To check if it's running, we can use the lightning-cli command as bitcoin user with any of its parameters. Code: su - bitcoin Title: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on October 21, 2021, 01:13:49 PM Ride The Lightning (RTL) GUI
I will preface the RTL install instruction: it is not required to run and manage C-Lightning nodes, but it makes a lot of things a lot simpler. And of course it's graphical opposed to the purely command-line based C-Lightning interface. Unfortunately, it is based on NodeJS, which many people find is bloated, that should also be kept in mind. So unless you need it, you can omit RTL in the beginning. Also another remark: You can install c-lightning-REST as a C-Lightning plugin, which is a pretty cool feature of C-Lightning (ability to add features as plugins), however I recommend installing as services, since it makes it easier to restart them without restarting C-Lightning all the time (which is not optimal). Updated 15th January 2024: Skip part 1 - not needed anymore! Part 1: Installing the backend - c-lightning-REST [1] Install dependencies Check out the latest non-development nodejs version in the package manager: Code: sudo zypper search nodejs At the time of writing, it is version 16. Code: S | Name | Summary | Type Install the non-development version. Code: sudo zypper install nodejs16 [2] While still in your privileged user, check if ports 3001 and 4001 are already in use (shouldn't be), as follows. If the commands return nothing, you're clear. Code: sudo lsof -i :3001 [3] Clone the c-lightning-REST repository and check out the latest version. Code: su - bitcoin [4] Install this version in 'production' mode. Code: npm install --only=prod [5] Create new config file from sample config and leave all values on their defaults for now. Code: cp sample-cl-rest-config.json cl-rest-config.json [6] If you got an issue in step 2 with ports 3001 and / or 4001 already in use, open the file cl-rest-config.json now and change the values to the ones you chose and verified were clear to use. Otherwise you can skip this step. Code: nano cl-rest-config.json [7] Log out of unprivileged bitcoin account and create a service file. Code: exit [8] Add the following contents: Code: [Unit] [9] Enable and start the c-lightning-REST service. Code: sudo systemctl enable c-lightning-REST.service [10] Check that the service is running and everything's fine so far. Exit by just typing the letter Q. Code: sudo service c-lightning-REST status Part 2: Installing the frontend - RTL [1] Change back into unprivileged bitcoin user and clone the repository. Also going to check out the latest release. Code: su - bitcoin [2] Install requests dependency and RTL in production mode. Code: npm install request --save [3] Create a new configuration file and open it up. Code: nano RTL-Config.json [4] Enter the following. Code: { [5] Change to privileged account to create a new service file for RTL. Code: exit [6] Enter the following. Code: [Unit] [7] Activate and install the service. Code: sudo systemctl enable RTL.service [8] Make sure the service is up and running correctly. Code: sudo service RTL status [9] If you just want to access RTL on the node itself, visit a web browser and type localhost:3000. Otherwise, either open port 3000 to access the node in your local network or proceed with the next step to tunnel this again through Tor! [10] Open torrc and add the following below the previously installed Tor hidden services. Code: sudo nano /etc/tor/torrc Code: HiddenServiceDir /var/lib/tor/rtl_hidden_service/ [11] Restart Tor and retrieve the Tor URL for RTL. Code: sudo service tor restart [12] You can now access Ride The Lightning from anywhere through Tor Browser, on Desktop and even Mobile! Quote from: https://www.torproject.org/download/ Simply type in the [mumbojumbo].onion:3000 address from step 11. Highly recommend to bookmark it or otherwise save it, since you can't probably memorize it! ;)[13] VERY IMPORTANT! Changing the password. By default, it is password. Change it to something secure and add 2FA through an open-source 2FA application (not Google Authenticator). Part 3 (optional): Hardening This is a version 3 hidden service, so it cannot be found in any way unlike servers in the clearnet or Tor v2. You also have authentication within RTL. If you don't deem this secure enough though, you can set up client authentication, which involves generating a shared secret and setting it up on both the node and the client (Tor browser or Tor service on client computer). I am not trying this, since I find Onion v3 addresses good enough, especially when paired with a secure password and 2FA code. If you still want it (e.g. multiple BTC in channels, etc.), here's a guide I found: https://matt.traudt.xyz/posts/2019-01-19-creating-private-v3-onion-services/ I also archived it twice, since I saw this guy already moved his blog once in the past. https://archive.fo/80CN4 https://web.archive.org/web/20220130032823/https://matt.traudt.xyz/posts/2019-01-19-creating-private-v3-onion-services/ Instead of doing this, I would simply turn off RTL via service when not needed (C-Lightning will obviously continue running) as shown. Code: sudo service RTL stop Turning it back on for completeness: Code: sudo service RTL start Title: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on October 21, 2021, 01:14:06 PM Changelog:
29.11.2021: Update guide for electrs 0.9.3 and c-lightning 0.10.2 30.01.2022: Add RTL install instructions 17.07.2022: Update guide -- all latest versions! Bitcoin Core v23.0, electrs 0.9.8, c-lightning 0.11.2 and RTL v0.12.3. 22.08.2022: Update guide -- all latest versions! Bitcoin Core v23.0, electrs 0.9.9, Core Lightning v0.11.2 and RTL v0.13.0. 16.03.2023: Update guide -- latest versions except Core... (to-do): electrs 0.9.12, Core Lightning v23.02.2 and RTL v0.13.6. 26.06.2023: Update guide -- all latest versions! Bitcoin Core v25.0, electrs 0.9.12, Core Lightning v23.05.1 and RTL v0.14.0. 15.01.2024: Update guide -- all latest versions! Bitcoin Core v26.0, electrs v0.10.2, Core Lightning v23.11.2 and RTL v0.15.0 Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on January 30, 2022, 03:48:03 AM Friendly bump for anyone who wanted to finish their install with me and was still missing RTL!
It's not even that bad that I postponed it until now, because from the latest version of RTL, it supports C-Lightning offers in an 'experimental' stage. Topic for testing Offers! (https://bitcointalk.org/index.php?topic=5383567.0) Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: darkv0rt3x on February 02, 2022, 11:35:58 PM Would like to make a suggestion regarding Tor configuration.
It's just a bit for improved privacy which is to uncomment the following line in /etc/tor/torrc Code: ExitPolicy reject *:* This will prevent your node to be an exit node in the Tor network. Being an exit node allows for 3rd parties to get certain info from your node. Read more here, if interested: Section Exit node eavesdropping https://en.wikipedia.org/wiki/Tor_(network) Or also here: https://medium.com/coinmonks/tor-nodes-explained-580808c29e2d Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on February 03, 2022, 01:32:09 AM Would like to make a suggestion regarding Tor configuration. It's just a bit for improved privacy which is to uncomment the following line in /etc/tor/torrc Code: ExitPolicy reject *:* This will prevent your node to be an exit node in the Tor network. Being an exit node allows for 3rd parties to get certain info from your node. Read more here, if interested: Section Exit node eavesdropping https://en.wikipedia.org/wiki/Tor_(network) Or also here: https://medium.com/coinmonks/tor-nodes-explained-580808c29e2d Thanks, but I did include it exactly because of this already! [6] Add the following contents, preferably in the right section (somewhere where there's HiddenServiceDir stuff commented out). Code: HiddenServiceDir /var/lib/tor/electrs_hidden_service/ Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: darkv0rt3x on February 03, 2022, 09:47:05 PM Would like to make a suggestion regarding Tor configuration. It's just a bit for improved privacy which is to uncomment the following line in /etc/tor/torrc Code: ExitPolicy reject *:* This will prevent your node to be an exit node in the Tor network. Being an exit node allows for 3rd parties to get certain info from your node. Read more here, if interested: Section Exit node eavesdropping https://en.wikipedia.org/wiki/Tor_(network) Or also here: https://medium.com/coinmonks/tor-nodes-explained-580808c29e2d Thanks, but I did include it exactly because of this already! [6] Add the following contents, preferably in the right section (somewhere where there's HiddenServiceDir stuff commented out). Code: HiddenServiceDir /var/lib/tor/electrs_hidden_service/ I guess I missed it! Good job! Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: darkv0rt3x on February 08, 2022, 08:48:59 PM One other step I can't see is adding the username to tor group. At least in Debiana based distros, it's usually needed!
Something like usermod -a -G myUserName debian-tor I didn't see this step. Hope I didn't miss it! Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on February 09, 2022, 12:34:49 AM One other step I can't see is adding the username to tor group. At least in Debiana based distros, it's usually needed! I didn't do it since it wasn't needed.. ;DSomething like usermod -a -G myUserName debian-tor I didn't see this step. Hope I didn't miss it! I know most guides do it, but if it works without, I prefer to omit it - keeping everything simple & lean as possible is my mantra! Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: darkv0rt3x on February 09, 2022, 07:30:23 PM One other step I can't see is adding the username to tor group. At least in Debiana based distros, it's usually needed! Something like usermod -a -G myUserName debian-tor I didn't see this step. Hope I didn't miss it! Are there any good reason/advantage by adding your username to tor group? Personally i almost never see any guide doing it and when they do, there's no detailed explanation. Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on February 10, 2022, 12:14:12 PM So, I checked my node again.
It's not needed with my guide, since I simply don't use CookieAuthentication. Instead, I have these more compact, readable 3-liners for each service. In my opinion easier to understand what's going on, modify if needed and less modifications to the system. [2] Create another Tor hidden service for C-Lightning. Similar procedure as before. Code: sudo nano /etc/tor/torrc [3] Below the other hidden service, add this info for Lightning. Code: HiddenServiceDir /var/lib/tor/lightningd_hidden_service/ The official C-Lightning guide would have you do: Code: ControlPort 9051 You also need to make your user a member of the Tor group. If it's somehow possible to avoid opening any type of port and changing any types of permissions, I usually avoid it. ;) Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: darkv0rt3x on February 11, 2022, 12:24:46 AM Code: ControlPort 9051 I know about this but still, I had problems with Tor, and after adding my user name to debian-tor, the problem was fixed! Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: NotATether on February 17, 2022, 07:32:38 AM I should mention that With the exception of CentOS and Red Hat, Linux filesystems are prone to corruption on power failure so you will probably want to configure fsck(8 ) to run at evrey boot so that you do not get "Read-Only Filesystem" errors which will prevent you from writing to any of your mounted filesystems. In particular, it will prevent Bitcoin Core from running.
You can actually configure it to run from GRUB's config file: 1. Edit the /etc/default/grub file on Debian/Ubuntu. CentOS/RHEL/Fedora/Rocky/Alma Linux user edit the /etc/sysconfig/grub file. 2. Find line that read as GRUB_CMDLINE_LINUX_DEFAULT and append the fsck.mode=force. You may have other config options. Just add it between the quote marks. For example: GRUB_CMDLINE_LINUX_DEFAULT="quiet splash fsck.mode=force" [do not remove anything else from the string, just add fsck.mode=force at the end of the string] 3. To force all auto repair option including that may cause damage add the fsck.repair=yes option too. 4. Then run an sudo update-grub. OpenSuse Leap uses btrfs filesystem which should also work with these instructions despite being written for ext4. That's because fsck will automatically call the correct command for the filesystem. Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: BlackHatCoiner on February 17, 2022, 07:39:40 PM Lightning dislikes me. Does anybody know why am I getting this when I start the RTL service?
I don't have OpenSUSE, but Raspbian. I've installed nodejs, cloned c-lightning-REST.git, installed it with npm, created both sample-cl-rest-config.json and cl-rest-config.json, edited the c-lightning-REST.service accordingly and started it. Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: vv181 on February 17, 2022, 11:47:24 PM Lightning dislikes me. Does anybody know why am I getting this when I start the RTL service? Use below command to shows a better log about it:I don't have OpenSUSE, but Raspbian. I've installed nodejs, cloned c-lightning-REST.git, installed it with npm, created both sample-cl-rest-config.json and cl-rest-config.json, edited the c-lightning-REST.service accordingly and started it. Code: sudo journalctl -f -u c-lightning-REST Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: BlackHatCoiner on February 18, 2022, 12:29:16 PM Code: sudo journalctl -f -u c-lightning-REST Code: bitcoin@raspibolt:~ $ sudo journalctl -f -u c-lightning-REST Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: BlackHatCoiner on February 19, 2022, 10:03:51 AM Thanks to n0nce who helped me in PMs! I now have my Lightning node working with RTL!
Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on February 19, 2022, 10:40:15 AM Thanks to n0nce who helped me in PMs! I now have my Lightning node working with RTL! Just 1 thing to point out here for other readers: there was no issue with the guide; it should still be possible to follow it line by line and get everything working without problem.In BlackHatCoiner's case it was simply stuff like permissions and group memberships which were different due to him running Debian instead of OpenSUSE and in general only having followed parts of the guide opposed to the whole thing; so some tweaks had to be made here and there. Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: cygan on February 24, 2022, 07:03:17 PM as you have already seen and read here👉https://bitcointalk.org/index.php?topic=5356129.msg59271490#msg59271490 (https://bitcointalk.org/index.php?topic=5356129.msg59271490#msg59271490), i have installed 2 rpi 4 in my triton case ... on the one runs the umbrel full node and what should be operated on the second rpi 4, i am still undecided and would like to read from you a few suggestions and opinions... what would be in mind that i already run 2 full nodes on the second rpi 4 useful to install and start? since in the actual thread still no one has reacted to my post, i quote my message and post it here in the higher-frequented thread with the hope to still get good suggestions ;) Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: vv181 on March 09, 2022, 09:33:11 AM Would like to make a suggestion regarding Tor configuration. It's just a bit for improved privacy which is to uncomment the following line in /etc/tor/torrc Code: ExitPolicy reject *:* Thanks, but I did include it exactly because of this already! [6] Add the following contents, preferably in the right section (somewhere where there's HiddenServiceDir stuff commented out). Code: HiddenServiceDir /var/lib/tor/electrs_hidden_service/ Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on March 09, 2022, 11:22:25 PM ~ snip ~ Just curious, wouldn't that config has no effect since the default torrc configuration isn't technically enabled your node as a Tor exit relay and by default Tor already rejects it as a default config? or is there something to do with running the hidden service?Creating a hidden service shouldn't set you up as an exit node, if that's not the default. Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on June 26, 2022, 11:21:08 PM Little bump / PSA in case anyone is running this config / openSUSE node like me.
Since I chose to use Tor for the 'user facing' connections to the node, and because of the recent Tor vulnerability TROVE-2022-001 (https://gitlab.torproject.org/tpo/core/team/-/wikis/NetworkTeam/TROVE) / CVE-2021-38385 (https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-38385), you may experience issues connecting to your Electrum or C-Lightning interface. It's easy to fix since openSUSE already has the package for latest stable release 0.4.7.8 (https://forum.torproject.net/t/stable-release-0-4-7-8/3679) ready and will install it by just doing a quick zypper update! This will get you right back on track. Code: sudo zypper update Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on July 18, 2022, 01:18:17 AM Changelog: Little bump for this guide. It's now all up-to-date again, with the latest version of every single piece of software.29.11.2021: Update guide for electrs 0.9.3 and c-lightning 0.10.2 30.01.2022: Add RTL install instructions 17.07.2022: Update guide -- all latest versions! Bitcoin Core v23.0, electrs 0.9.8, c-lightning 0.11.2 and RTL v0.12.3. I did walk through it in a VM, but can't start up most programs since they require Bitcoin Core to be up and running and fully synced, for which I don't have the space in the VM. But if someone's got a problem, I'll install it pruned, and debug it of course.. :) Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on August 22, 2022, 01:00:26 PM Changelog: Updated again! Pretty excited about this one, since RTL v0.13.0 (https://github.com/Ride-The-Lightning/RTL/releases/tag/v0.13.0) now has a pretty cool GUI for creating and finding Liquidity Ads (https://nitter.it/RTL_App/status/1558926546928250880).29.11.2021: Update guide for electrs 0.9.3 and c-lightning 0.10.2 30.01.2022: Add RTL install instructions 17.07.2022: Update guide -- all latest versions! Bitcoin Core v23.0, electrs 0.9.8, c-lightning 0.11.2 and RTL v0.12.3. 22.08.2022: Update guide -- all latest versions! Bitcoin Core v23.0, electrs 0.9.9, Core Lightning v0.11.2 and RTL v0.13.0. https://i.postimg.cc/d12B1Z2G/image.jpg Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: BlackHatCoiner on September 11, 2022, 05:01:49 PM I'm trying to upgrade from v0.10.2 to v0.11.2, and there must be something wrong with either my machine or this installation. I have renamed my previous lightning directory to lightning2, and I'm git-ing the new version. I do the git checkout, run the ./configure, make with make -j $(nproc), add the safe directories (lightning & lightning/external/libwally-core), but once I run sudo make install, this happens:
Code: [...] Should I open a Github issue, or has it happened to you before, and you know how it can be resolved? Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: vv181 on September 11, 2022, 05:53:49 PM Code: Caused by: What is your Cargo version? Code: cargo --version Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: BlackHatCoiner on September 11, 2022, 05:54:48 PM What is your Cargo version? Code: cargo 1.48.0 (65cbdd2dc 2020-10-14) Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: vv181 on September 11, 2022, 06:12:52 PM What is your Cargo version? Code: cargo 1.48.0 (65cbdd2dc 2020-10-14) Yea it's the older unsupported version. It's weird because CLN plugin didn't update its Rust edition since 0.10.2. How did you install Rust and Cargo? For the issue, simply upgrading the cargo version should suffice. You either update it from the package manager(if your package repository has min cargo v 1.56.0) or simply change/use the Rust installation method using Rustup https://www.rust-lang.org/tools/install Code: curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: BlackHatCoiner on September 11, 2022, 08:45:37 PM It's weird because CLN plugin didn't update its Rust edition since 0.10.2. How did you install Rust and Cargo? I honestly don't remember installing neither of them.Code: curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on September 11, 2022, 11:46:36 PM It's weird because CLN plugin didn't update its Rust edition since 0.10.2. How did you install Rust and Cargo? I honestly don't remember install neither of them.[1] Install dependencies, make sure you're logged into your sudoer account and not in bitcoin. Code: sudo zypper install clang cargo rust tor libstdc++6-devel-gcc11 I don't know neither of the two, but isn't the error essentially saying that I have to upgrade my cargo? The error is saying that your cargo is outdated, yes. Leap 15.3 should be giving you Rust 1.62 and accompanying cargo version. https://software.opensuse.org/package/rust Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: BlackHatCoiner on September 12, 2022, 08:53:47 AM Do you run OpenSUSE & installed through this guide? Oh no, I used Raspibolt's guide. I presume I just need to run the same command with sudo apt install, instead?Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: vv181 on September 12, 2022, 09:56:30 AM Do you run OpenSUSE & installed through this guide? Oh no, I used Raspibolt's guide. I presume I just need to run the same command with sudo apt install, instead?That is correct but the default Debian Cargo package uses the old version. https://tracker.debian.org/pkg/cargo Is this supposed to change my cargo or rust version? Because I just executed it, and I'm still with the same error during sudo make install. It supposes to change both since it comes prepackaged.That installation should have automatically updated your PATH environment, have you tried to restart your console? If it still does not work, updating it should do it. export PATH="$HOME/.cargo/bin:$PATH" Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: BlackHatCoiner on September 13, 2022, 02:33:32 PM That installation should have automatically updated your PATH environment, have you tried to restart your console? Yes, it's updated:Code: bitcoin@raspibolt:~/lightning $ cargo --version But it now fails to run custom command with this "prost-build v0.8.0": Code: make: *** [plugins/Makefile:191: target/debug/examples/cln-plugin-startup] Error 101 It must have to do with cargo, as it searches the .cargo path. The above is prompt on make. I'm trying to install libprotobuf-dev, protobuf-compiler as said in Github (https://github.com/tari-project/tari/issues/1781#issuecomment-623387777), and I'll let you know. Edit: Ugh, another ugly error. Code: error: failed to run custom build command for `cln-grpc v0.0.1 (/home/bitcoin/lightning/cln-grpc)` Followed by an endless list of stuff like: Quote thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Custom { kind: Other, error: "protoc failed: node.proto:75:18: Explicit 'optional' labels are disallowed in the Proto3 syntax. To define 'optional' fields in Proto3, simply remove the 'optional' label, as fields are 'optional' by default.\nnode.proto:76:18: Explicit 'optional' labels are disallowed in the Proto3 syntax. To define 'optional' fields in Proto3, simply remove the 'optional' label, as fields are 'optional' by default.\nnode.proto:98:18: Explicit 'optional' labels are disallowed in the Proto3 syntax. Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on September 13, 2022, 09:55:22 PM I'm trying to install libprotobuf-dev, protobuf-compiler as said in Github (https://github.com/tari-project/tari/issues/1781#issuecomment-623387777), and I'll let you know. Something's off with your protobuf.Edit: Ugh, another ugly error. Code: error: failed to run custom build command for `cln-grpc v0.0.1 (/home/bitcoin/lightning/cln-grpc)` Followed by an endless list of stuff like: Quote thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Custom { kind: Other, error: "protoc failed: node.proto:75:18: Explicit 'optional' labels are disallowed in the Proto3 syntax. To define 'optional' fields in Proto3, simply remove the 'optional' label, as fields are 'optional' by default.\nnode.proto:76:18: Explicit 'optional' labels are disallowed in the Proto3 syntax. To define 'optional' fields in Proto3, simply remove the 'optional' label, as fields are 'optional' by default.\nnode.proto:98:18: Explicit 'optional' labels are disallowed in the Proto3 syntax. What does your machine spit out for these 2 commands? Code: protoc --version Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: BlackHatCoiner on September 13, 2022, 09:58:26 PM Code: protoc --version Code: bitcoin@raspibolt:~ $ protoc --version Code: locate libprotobuf Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on September 13, 2022, 10:52:51 PM ~ Seems like an outdated version.Make sure to update your package manager and other packages. Code: root$ sudo apt update && sudo apt upgrade Then install latest protobuf using sudo apt install protobuf-compiler. On current Ubuntu it should be 3.12 or 3.14, meanwhile you've somehow got 3.6 Code: root$ protoc --version The following is also helpful to see what is installed and where. Code: root$ sudo apt install plocate Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: BlackHatCoiner on September 14, 2022, 07:44:40 AM Make sure to update your package manager and other packages. I've updated both, and even restarted, but the version remains the same. My system doesn't know any newer versions:Quote protobuf-compiler is already the newest version (3.6.1.3-2+rpi1) Code: root$ sudo apt install plocate Code: root@raspibolt:/home/bitcoin# locate libprotobuf (I've installed the locate package) Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: vv181 on September 14, 2022, 10:10:39 AM I've updated both, and even restarted, but the version remains the same. My system doesn't know any newer versions: I would try to install it with Python dependencies installed. Code: make clean Then install if it works. Code: sudo make install It looks like building CLN didn't require a system protobuf lib since I did not install it but was able to build it, either with @n0nce guide or the above one. The way of installing using Poetry above install the protobuf depedency which required to build cln-grpc. Adjust the python command accordingly if your default python version is not the same. Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: BlackHatCoiner on September 14, 2022, 03:08:36 PM Unfortunately, I'm still with protoc 3.6 as the newest version, and can't build c-lightning v0.11.2.
Code: python -m poetry run make -j4 The worst part is that I've run lots of commands that I don't know what they do. But, that's just personal, I'll have to study more. Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on September 14, 2022, 04:32:59 PM Make sure to update your package manager and other packages. I've updated both, and even restarted, but the version remains the same. My system doesn't know any newer versions:Quote protobuf-compiler is already the newest version (3.6.1.3-2+rpi1) What I tried and sent you before, was on Ubuntu 20.04 LTS, as I figured Raspibolt is Debian or Ubuntu based. Can you try these commands to figure out what you're running? Code: lsb_release -a Code: root$ sudo apt install plocate Code: root@raspibolt:/home/bitcoin# locate libprotobuf Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: BlackHatCoiner on September 14, 2022, 05:35:27 PM Code: lsb_release -a Code: bitcoin@raspibolt:~ $ lsb_release -a Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on September 14, 2022, 09:19:38 PM ~ Alright, I spun up a new Debian 10 Droplet.(1) Updated package manager and packages Code: sudo apt update && sudo apt upgrade (2) Install latest protobuf for Debian 10 Code: sudo apt install protobuf-compiler (3) Check protoc version Code: root@helloworld:~# protoc --version ==> Indeed, seems like Debian 10 Buster does not have latest protobuf in its package manager by default! So it's not your fault, BlackHatCoiner! ;) Now, last Raspibolt release is quite a while ago, so upgrading it is probably not an option. Let's solve this otherwise. [1] Add the buster-backports sources to our package manager. Code: echo "deb http://deb.debian.org/debian buster-backports main" >> /etc/apt/sources.list.d/sources.list [2] Update package manager Code: sudo apt update [3] Install protobuf again Code: sudo apt install -t buster-backports protobuf-compiler [4] Maybe, for good measure also install these (they should come with protobuf-compiler, though). Code: sudo apt install -t buster-backports libprotoc-dev libprotoc23 I just tried compiling Core Lightning, and am happy to report that it works fine! Code: ./configure If you have any more questions about any of the commands, don't hesitate to ask here or through DM! I say this specifically because of: The worst part is that I've run lots of commands that I don't know what they do. But, that's just personal, I'll have to study more. Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: BlackHatCoiner on September 15, 2022, 01:53:45 PM It still stops here during make:
Code: error: failed to run custom build command for `cln-grpc v0.0.1 (/home/bitcoin/lightning/cln-grpc)` Thanks for your time, though. Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on September 15, 2022, 09:08:56 PM It still stops here during make: Code: ~ Thanks for your time, though. Did the install work? Code: protoc --version And I'd probably do a make clean or just re-clone the repo at this point; you've tried a lot of stuff. ;D No worries! This is an OpenSUSE full node guide, but if it contains a few tips for Debian users, why the hell not.. ;) Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: vv181 on September 15, 2022, 10:35:45 PM I just tried compiling Core Lightning, and am happy to report that it works fine! Do you try it out on a 32-bit system environment? Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: BlackHatCoiner on September 16, 2022, 08:02:41 AM Did the install work? Yes.Code: protoc --version Code: libprotoc 3.12.3 And I'd probably do a make clean or just re-clone the repo at this point; you've tried a lot of stuff I did both make with clean and re-cloned the repository. It still stops in sudo make install as it fails to parse the manifest at `/home/bitcoin/lightning/cln-rpc/Cargo.toml`.Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: BlackHatCoiner on September 19, 2022, 08:31:45 AM I have a question. How does lightning daemon works normally when I've renamed the lightning directory? (lightning is the v0.11.2 directory, lightning2 is the old v0.10.2 directory which is running at the moment)
What binary does it run when I execute lightningd? Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: Rath_ on September 19, 2022, 09:09:29 AM What binary does it run when I execute lightningd? Probably the one you compiled more recently. You probably used "sudo make install" after the compilation which should have replaced old binaries. Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: psycodad on September 19, 2022, 09:12:20 AM I have a question. How does lightning daemon works normally when I've renamed the lightning directory? (lightning is the v0.11.2 directory, lightning2 is the old v0.10.2 directory which is running at the moment) What binary does it run when I execute lightningd? Maybe try Code: whereis lightningd Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on September 19, 2022, 01:50:42 PM I have a question. How does lightning daemon works normally when I've renamed the lightning directory? (lightning is the v0.11.2 directory, lightning2 is the old v0.10.2 directory which is running at the moment) What binary does it run when I execute lightningd? For location either of these: Code: whereis lightningd For version: Code: lightningd --version What binary does it run when I execute lightningd? Probably the one you compiled more recently. You probably used "sudo make install" after the compilation which should have replaced old binaries. If there's another binary there with the same name, it is indeed replaced. You could work around that by either renaming the old binary before sudo make install, such that it's not overwritten. Or you could also start lightningd directly from the build directory. Code: bitcoin@localhost:~/lightning> ./lightningd/lightningd --version Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: ibruteforce94 on December 17, 2022, 03:28:23 PM Do you also maybe have a guide for updating core lightning node without losing funds/channels?
Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on December 17, 2022, 07:42:40 PM Do you also maybe have a guide for updating core lightning node without losing funds/channels? I had at least considered making one, but I believe I've never gotten around to doing it.Usually, I put links to my guides on my webpage so they can be found easily. But in essence, you can just install the new version (just like in the guide, but checking out latest version number) 'on top' of the old installation and it will just replace the binary; not touching your seed, channels and other existing data. Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: ibruteforce94 on December 17, 2022, 11:57:44 PM Awesome, I postponed updating to v22 to not screw something up, it works just installing over old files as you said. Thanks!
Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: unicornmangle on January 28, 2023, 02:03:37 AM n0nce thanks for taking the time to make the guides they are very useful as im learning the rest of how bitcoin operates. I think i like baremetal as opposed to arm is there a benefit? What about Mac Mini the latest versions with 16g of ram? i prefer mac os i know its a walled garden but most things are just done right in the os.
I'm hopeful i will get to do my first lightning transaction sometime tonight! everything is done except RTL doing it on futurebit for now but will probably migrate it to a thread ripper that i have sitting for the past 2 years or is that overkill? Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: Carlton Banks on January 28, 2023, 03:49:00 PM Part 3 (optional): Hardening This is a version 3 hidden service, so it cannot be found in any way unlike servers in the clearnet or Tor v2. not sure if this is altogether true. The tor project people advise to defend against side-channel attacks that can (supposedly) discover the IP of hidden services, they have an add-on (vanguards (https://github.com/mikeperry-tor/vanguards)) to mitigate the issue. not sure if more recent versions of tor daemon manage the side-channel attacks better, although a "lite" version of the add-on has been part of the main tor daemon, since last year I think. The recommendation at that time was that any serious hidden service should continue to use the full vanguards add-on. Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on January 29, 2023, 07:45:21 PM n0nce thanks for taking the time to make the guides they are very useful as im learning the rest of how bitcoin operates. I think i like baremetal as opposed to arm is there a benefit? What about Mac Mini the latest versions with 16g of ram? i prefer mac os i know its a walled garden but most things are just done right in the os. You're confusing some terms here. Bare-metal refers to installing software directly on the base OS without any virtualization layer like a VirtualBox VM or Docker. ARM is a processor architecture; used for instance in Raspberry Pi SoCs, but also in Apple mobile chips and lately the M1 and M2 families of laptop and desktop chips. You absolutely don't need a Mac Mini with 16GB to run a full node. Something cheap with 8GB totally suffices. For a server application like a Bitcoin full node with Electrum and Lightning on it, I do recommend sticking to Linux. If you want to use that Mac Mini for personal stuff, too, you may want to look into running the Bitcoin stuff in a VirtualBox VM with OpenSUSE. I'm hopeful i will get to do my first lightning transaction sometime tonight! everything is done except RTL doing it on futurebit for now but will probably migrate it to a thread ripper that i have sitting for the past 2 years or is that overkill? You installed Bitcoin Core and Core Lightning on your Futurebit Apollo? How is it going?If you have the Apollo, a Mac Mini and a Threadripper-based PC, I'd absolutely recommend leaving the node on the Apollo (Orange Pi 4), as long as you installed custom OS like described in my guide (https://bitcointalk.org/index.php?topic=5401729.0). It pulls the least amount of power and runs Linux by default. So it's kind of an easy choice. Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: Carlton Banks on January 30, 2023, 02:34:24 PM i prefer mac os i know its a walled garden but most things are just done right in the os. linux is:
"supported forever" is the most practical point, and servers are all about practicality imo. Look at it this way: you'll need to buy a new Mac, or start using Linux, when Apple cancel support for your hardware. Start today instead. I'd absolutely recommend leaving the node on the Apollo (Orange Pi 4), as long as you installed custom OS like described in my guide (https://bitcointalk.org/index.php?topic=5401729.0). right, the least powerful node I'm running is a Raspberry Pi 3 (1GB RAM, 1.5GHz processor). With all the software upgrades (to linux + all bitcoin upgrades), it now runs better than it did when I bought it 5 years ago. Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on January 30, 2023, 06:11:31 PM "supported forever" is the most practical point, and servers are all about practicality imo. Look at it this way: you'll need to buy a new Mac, or start using Linux, when Apple cancel support for your hardware. Start today instead. That's not entirely correct, to be honest. Every Linux LTS version has some kind of end date. Sometimes modern packages start getting unavailable even long before that and you need to install custom sources and whatever.Of course, you can upgrade to a newer version, but even that is not 'forever'. See: https://linuxiac.com/linux-kernel-developers-discuss-dropping-old-cpu-platforms/ If he does end up choosing a Mac Mini, that's an expensive, but not terrible, relatively low-power, but more capable platform than e.g. a Raspberry Pi, so he would have more computing headroom for other stuff. One more thing regarding longevity: To the best of my knowledge, Apple hardware gets major version updates for many many years. Even when that stops, similarly to Android, they still ship security updates. For instance, macOS 11 (https://en.wikipedia.org/wiki/MacOS#Release_history) is still supported, with its first release in June 2020. And lastly, even when that support ends, technically Bitcoin Core will still run on it. Bitcoin Core doesn't really care whether your OS is still updated or not. Although there may be security concerns at that point. Even then, the Mac Mini buyer can still always install some nice, modern LTS Linux distro on that hardware... ;) Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: Carlton Banks on January 31, 2023, 02:12:10 PM "supported forever" is the most practical point, and servers are all about practicality imo. Look at it this way: you'll need to buy a new Mac, or start using Linux, when Apple cancel support for your hardware. Start today instead. you can upgrade to a newer version, but even that is not 'forever'.chack out 'rolling' distributions, it's a concept that suits servers very well (OS/software support forever). you just keep on downloading and installing the updates, and that's it obviously hardware is not often supported in perpetuity, but if that's the issue, Apple is the last platform to consider If he does end up choosing a Mac Mini, that's an expensive, but not terrible, relatively low-power, but more capable platform than e.g. a Raspberry Pi, so he would have more computing headroom for other stuff. One more thing regarding longevity: To the best of my knowledge, Apple hardware gets major version updates for many many years. Even when that stops, similarly to Android, they still ship security updates. For instance, macOS 11 (https://en.wikipedia.org/wiki/MacOS#Release_history) is still supported, with its first release in June 2020. no. although Apple provide some long-term hardware support, they have the worst record in the industry when it comes to supporting old hardware (and that's a significant part of their business model). "Many years" might be enough in practice, maybe we can agree on that And lastly, even when that support ends, technically Bitcoin Core will still run on it. Bitcoin Core doesn't really care whether your OS is still updated or not. sure but some hacker will care about your OS having known security holes: for the wrong reasons! Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on January 31, 2023, 02:58:19 PM "Many years" might be enough in practice, maybe we can agree on that Agreed. ;)And lastly, even when that support ends, technically Bitcoin Core will still run on it. Bitcoin Core doesn't really care whether your OS is still updated or not. sure but some hacker will care about your OS having known security holes: but for the wrong reasons!Even the M1 Mac Mini already runs Linux thanks to Asahi Linux (https://asahilinux.org/about/). I'm not sure how it compares price-wise to an Intel Nuc, though. Those seem to fit into a similar niche of laptop-style hardware in a cheaper, headless package. I do think it's a very interesting form factor, because single-board computers often just don't cut it and not everyone wants to keep a power-hungry desktop or server running 24/7 for mostly small tasks. Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: unicornmangle on February 08, 2023, 09:21:32 PM How do you find other peers to link to? Just got all my lightning node up unsure what steps to do next with it. im also running a seperate bitcoind with no outgoing besides tor is that fine for lightning or should i switch it to my main bitcoin node? i setup second one so i could use bitcoincore with wallet enabled.
Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on February 08, 2023, 11:45:55 PM How do you find other peers to link to? Just got all my lightning node up unsure what steps to do next with it. im also running a seperate bitcoind with no outgoing besides tor is that fine for lightning or should i switch it to my main bitcoin node? i setup second one so i could use bitcoincore with wallet enabled. You don't need a second instance of Bitcoin Core, because you also don't need the Bitcoin Core wallet.Core Lightning has its own integrated on-chain wallet, but I know that it is easy to assume that Lightning's on-chain wallet is the Bitcoin Core default wallet. As for finding peers; there is no real science behind that. I'd advice if there is a service you (plan to) often use, feel free to open a direct channel. Be it a centralized exchange (although I recommend against using those, in general), an online shop or another platform you use regularly like https://www.bitrefill.com/. You could also open channels with other forum members; just ask in here (https://bitcointalk.org/index.php?topic=5158920.0) or here (https://bitcointalk.org/index.php?topic=5369431.0). In the beginning especially, it is a bit of trial and error and you'll figure out which channels are never used (close them), which routes are often long & expensive (open direct / closer channels to the destination) and such. There are also quite a few guides online, such as here (https://docs.lightning.engineering/the-lightning-network/the-gossip-network/identify-good-peers). Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: unicornmangle on February 09, 2023, 01:35:26 PM In the beginning especially, it is a bit of trial and error and you'll figure out which channels are never used (close them), which routes are often long & expensive (open direct / closer channels to the destination) and such. There are also quite a few guides online, such as here (https://docs.lightning.engineering/the-lightning-network/the-gossip-network/identify-good-peers). I just want to start off trying to route transactions i dont have a specific goal in mind to utilize it myself i dont know enough people into bitcoin they all seen me lose my ass. Thanks for all that guides you put up blockchain has a lot of moving parts and the information is a little hard to sift through. Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on February 09, 2023, 06:32:52 PM In the beginning especially, it is a bit of trial and error and you'll figure out which channels are never used (close them), which routes are often long & expensive (open direct / closer channels to the destination) and such. There are also quite a few guides online, such as here (https://docs.lightning.engineering/the-lightning-network/the-gossip-network/identify-good-peers). I don't think we have a guide for configuring a dedicated routing node here on Bitcointalk, probably because nobody here is running one and can make a well-informed guide about it. Do feel free to create one yourself, after gathering some experience with your own routing node! Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: unicornmangle on February 09, 2023, 09:52:09 PM You installed Bitcoin Core and Core Lightning on your Futurebit Apollo? How is it going? If you have the Apollo, a Mac Mini and a Threadripper-based PC, I'd absolutely recommend leaving the node on the Apollo (Orange Pi 4), as long as you installed custom OS like described in my guide (https://bitcointalk.org/index.php?topic=5401729.0). Sorry totally missed this post yes i got it going as you described i didnt install the buster version was that a mistake? im noticing the new version debian 11 is basically ubuntu should i redo it with buster? Everytime i make a change i just copy back over the device tree. I'm wondering now if the original futurebit image is fine as it appears to run alpine linux under the good with ubuntu overtop i may be wrong here. I like the idea of a SBC so can add a battery backup to keep it going on cellular just incase. My futurebit node has 70-80 peers on average shipping off 14-20 gigs a day of served up blocks. whether it helps or not i have no idea i would assume so it seems node should be more important than miners as they are far less of them in residential as i can tell anyways. ive given up on making any kind of break even on mining im focusing on the software portion and learning C i always neglected it the past 20 years. When i think of arm i think of software based hardware so when i think of bare metal its a full blown pc. maybe not proper terms. I have had major tech burnout the last 3 years looking back on all the things i should of been aware of and just ignored. trying to get back on the pony its all ive ever loved a hobby. Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on March 16, 2023, 12:35:42 AM Updated the version numbers for Lightning stuff especially.
In general, for updating these components, you should navigate to their respective folders:
And then for each, as user bitcoin stash changes, switch to master, pull latest version, check it out and rebuild. Code: su - bitcoin I decided to type them all out for completeness. I still think it's good to know what the commands do (hence the generic version with explanations above). Bitcoin Core Code: su - bitcoin electrs Code: su - bitcoin Core Lightning Code: su - bitcoin CLN REST API Code: su - bitcoin Ride The Lightning Code: su - bitcoin Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on June 26, 2023, 06:31:24 AM Just a little PSA for everyone updating to Bitcoin Core v25.0 that I just noticed: Since some time in May of this year, it requires GCC version 9 or higher: https://github.com/bitcoin/bitcoin/pull/27662
Therefore, you need to install it as shown here. Code: sudo zypper up Then, proceed with the instructions I have previously given for updating Bitcoin Core. Bitcoin Core Code: su - bitcoin Also just finished updating the guide to all latest versions: Changelog: [...] 26.06.2023: Update guide -- all latest versions! Bitcoin Core v25.0, electrs 0.9.12, Core Lightning v23.05.1 and RTL v0.14.0. Title: Re: [Guide] FULL NODE OpenSUSE 15.3: bitcoind + electrs + c-lightning + RTL Post by: n0nce on January 15, 2024, 11:34:55 AM The guide was again updated to the latest version of everything:
Code: Bitcoin Core v26.0 Upgrading worked mostly as I previously described here: https://bitcointalk.org/index.php?topic=5366854.msg61920456#msg61920456 However, this time there are a few changes regarding the Lightning REST API. I switched from c-lightning-REST to the new CLNRest API built into Core Lightning since v23.08, because sticking to the old method was giving me some issues when upgrading. The following changes need to be made. After upgrading Core Lightning, do the following: Code: cd /home/bitcoin/lightning Add the following lines to the end of the file: Code: # REST API Then, after upgrading RTL, edit this line in /home/bitcoin/RTL/RTL-Config.json and replace CLT with CLN, and port number 3001 with 3010: Code: "lnImplementation": "CLN" Also, add this element to the Authentication section of this file (look at the updated guide (https://bitcointalk.org/index.php?topic=5366854.msg58233721#msg58233721) for the whole file): Code: "runePath": "/home/bitcoin/RTL/rune0" Lastly, create a 'rune', which is like an access token in Core Lightning, as follows: Code: lightning-cli createrune You'll get an output like this. Code: $ lightning-cli showrunes Create a file /home/bitcoin/RTL/rune0 with the following contents. Paste the rune from above between the quotes, as shown here. Code: LIGHTNING_RUNE="SGVsbG8gQml0Y29pbnRhbGshIFRoaXMgaXMgYSBkZW1vLg==" Now you do a clean restart of your node or restart all the services individually. Code: sudo service bitcoind restart |