From a0814bb6421e258bb76a2090e464222476cb45ae Mon Sep 17 00:00:00 2001 From: Ben Carman Date: Wed, 17 Apr 2019 02:46:43 -0500 Subject: [PATCH 01/12] feature: fee report on info screen --- home.admin/00infoBlitz.sh | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/home.admin/00infoBlitz.sh b/home.admin/00infoBlitz.sh index 4d30fa3e..d570c6ea 100755 --- a/home.admin/00infoBlitz.sh +++ b/home.admin/00infoBlitz.sh @@ -266,6 +266,10 @@ else ln_peers="$(echo "${ln_getInfo}" | jq -r '.num_peers')" 2>/dev/null ln_channelInfo="${ln_channels_online}/${ln_channels_total} Channels ${ln_channelbalance} sat" ln_peersInfo="${color_purple}${ln_peers} ${color_gray}peers" + ln_dailyfees="$(sudo -u bitcoin /usr/local/bin/lncli --macaroonpath=${lnd_macaroon_dir}/readonly.macaroon --tlscertpath=${lnd_dir}/tls.cert feereport | jq -r '.day_fee_sum')" 2>/dev/null + ln_weeklyfees="$(sudo -u bitcoin /usr/local/bin/lncli --macaroonpath=${lnd_macaroon_dir}/readonly.macaroon --tlscertpath=${lnd_dir}/tls.cert feereport | jq -r '.week_fee_sum')" 2>/dev/null + ln_monthlyfees="$(sudo -u bitcoin /usr/local/bin/lncli --macaroonpath=${lnd_macaroon_dir}/readonly.macaroon --tlscertpath=${lnd_dir}/tls.cert feereport | jq -r '.month_fee_sum')" 2>/dev/null + ln_feeReport="Fee Report: ${color_green}${ln_dailyfees}-${ln_weeklyfees}-${ln_monthlyfees} ${color_gray}sat (D-W-M)" fi fi @@ -286,6 +290,8 @@ ${color_yellow} / ,' ${color_gray}${public_addr_pre}${public_color}${pu ${color_yellow} /,' ${color_gray} ${color_yellow} /' ${color_gray}LND ${color_green}${ln_version} ${ln_baseInfo} ${color_yellow} ${color_gray}${ln_channelInfo} ${ln_peersInfo} +${color_yellow} ${color_gray} +${color_yellow} ${color_gray}${ln_feeReport} ${color_yellow} ${color_yellow}${ln_publicColor}${ln_external}${color_red} From 5a01196dc1abe38fe286ebd483b625ce7a8321dd Mon Sep 17 00:00:00 2001 From: Julian Ritz-Barr <35571634+Juized@users.noreply.github.com> Date: Wed, 4 Dec 2019 15:35:52 +0100 Subject: [PATCH 02/12] Update WORKSHOP.md fixing typos --- WORKSHOP.md | 48 ++++++++++++++++++++++++------------------------ 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/WORKSHOP.md b/WORKSHOP.md index 14b9caa2..9185c30c 100644 --- a/WORKSHOP.md +++ b/WORKSHOP.md @@ -1,22 +1,22 @@ # RaspiBlitz Workshop Tutorial -One goal of the RaspiBlitz project is to provide a open DIY platform for workshops - to setup your own lightning node and learn to manage it. This tutorial is collecting best practices on how to organise a RaspiBlitz workshop. +One goal of the RaspiBlitz project is to provide an open DIY platform for workshops - to setup your own lightning node and learn to manage it. This tutorial is collecting best practices on how to organise a RaspiBlitz workshop. # Time Planning First thing on planning a RaspiBlitz workshop is to calculate the time needed correctly. Because the setup from scratch with no further support is still a weekend project - mostly because downloading and syncing the blockchain takes a lot of time. -So it all depends on what you as a workshop organizer provide on prepartion for the workshop participants. Basically you can choose one of the following starting configurations ... going from most prepared to least prepared. +So it all depends on what you as a workshop organizer provide on preparation for the workshop participants. Basically you can choose one of the following starting configurations ... going from most prepared to least prepared. Also the time estimates below are about getting a node to a "clean setup". That is not containing the funding & setting up channels process - which is adding an additional 30 min to 1 hour to the calculation. -Also if your group is lager then 5 participants, calculate some extra time for individual support. You can compensate for that if you let two participants together work on one RaspiBlitz setup - this way you limit individual support and let them help each other. +Also if your group is larger than 5 participants, calculate some extra time for individual support. You can compensate for that if you let two participants together work on one RaspiBlitz setup - this way you limit individual support and let them help each other. ## A) Provide a Ready-2-Go RaspiBlitz Estimated Duration: 2 hours -Sure one part of the fun for participents is to assemble the hardware themselves. But if you aim for the shortest workshop possible, by keeping it at around 2 hours lenght, then this is your way to go. Because if you have the RaspiBlitz already assembled to be operational at the workshop, you can utilize one big time saver feature: "The Pre-Sync" - before the workshop starts you can already plug a assembled RaspiBlitz into power+network and when there is a preloaded bitcoin blockchain on the HDD it will already start catching up. So your participants start with an on-the-spot synced blockchain and will just have to deal with waiting times during the lightning node setup. But keep in mind that you need budget to buy all the hardware and lots of time in preparation for this - order the parts two weeks before and start peparing at least 3 days before the workshop. +Sure one part of the fun for participants is to assemble the hardware themselves. But if you aim for the shortest workshop possible, by keeping it at around 2 hours length, then this is your way to go. Because if you have the RaspiBlitz already assembled to be operational at the workshop, you can utilize one big time saver feature: "The Pre-Sync" - before the workshop starts you can already plug an assembled RaspiBlitz into power+network and when there is a preloaded bitcoin blockchain on the HDD it will already start catching up. So your participants start with an on-the-spot synced blockchain and will just have to deal with waiting times during the lightning node setup. But keep in mind that you need budget to buy all the hardware and lots of time in preparation for this - order the parts two weeks before and start preparing at least 3 days before the workshop. These are the following steps you need to prepare (follow links for details): @@ -33,7 +33,7 @@ These are the following steps you need to prepare (follow links for details): Estimated Duration: 3 hours -In this workshop scenario you buy all the hardware but let participants assemble the RaspiBlitz themselves - thats half the fun and people get a feel for the gear. But to keep the blockchain sync time short and being able to keep in a 3 hour timeframe you need to prepare the HDDs with Blockchain Data not much older than one day. So start ordering the parts minimum one week before the workshop (budget needed) and plan the day before completly for copy blockchain data to all those HDDs. +In this workshop scenario you buy all the hardware but let participants assemble the RaspiBlitz themselves - thats half the fun and people get a feel for the gear. But to keep the blockchain sync time short and being able to keep in a 3 hour timeframe you need to prepare the HDDs with Blockchain Data not much older than one day. So start ordering the parts minimum one week before the workshop (budget needed) and plan the day before completely for copy blockchain data to all those HDDs. These are the following steps you need to prepare (follow links for details): @@ -42,19 +42,19 @@ These are the following steps you need to prepare (follow links for details): * [Prepare SD cards with latest RaspiBlitz image](WORKSHOP.md#prepare-sd-cards-with-latest-raspiblitz-image) * [Setup Workshop Environment](WORKSHOP.md#setup-workshop-environment) -Variation: If you dont have a big bugdet to prefinance the part shoppings or people have already hardware they want to bring to can just buy the HDDs and SD cards and prepare them to run this scenario. +Variation: If you don't have a big budget to prefinance the parts or people already have hardware they want to bring to can just buy the HDDs and SD cards and prepare them to run this scenario. ## C) Bring your own Hardware Estimated Duration: 4-6 hours -This scenario is just adviced for small groups or you need to bring multiple blockchain copy stations - see details on "Prepare HDDs with Blockchain Data". Otherwise it needs the least prepartion time and prefinance and can be announced about participants 5 days before, so that they have time to order all the parts online. +This scenario is just advised for small groups or you need to bring multiple blockchain copy stations - see details on "Prepare HDDs with Blockchain Data". Otherwise it needs the least preparation time and prefinance and can be announced about participants 5 days before, so that they have time to order all the parts online. * [Instruct Participants to bring Hardware](WORKSHOP.md#instruct-participants-to-bring-hardware) * [Prepare Blockchain Copy Station](WORKSHOP.md#prepare-blockchain-copy-station) * [Setup Workshop Environment](WORKSHOP.md#setup-workshop-environment) -Make sure that as early as the participants arrive at the workhop location to check their hardware list and even before official starting time take their HDDs and start the blockchain copy process. +Make sure that as early as the participants arrive at the workshop location to check their hardware list and even before official starting time take their HDDs and start the blockchain copy process. # Checklist for running a Workshop @@ -67,18 +67,18 @@ Make sure you have the following Hardware and Infrastructure ready for the works - Extra WLAN Router (if you are not sure if LAN & WLAN is not on the same network at location) - One or two USB SD card adapters - One or two USB-C to USB-A adapters -- Some Tape, Marker & Pens come always handy (also for participants to wirte down seed & passwords) +- Some Tape, Marker & Pens come always handy (also for participants to write down seed & passwords) - And eventually some Bitcoin funds (if people dont have their own to start small funding channels) -Participants need at least to bring their laptops. +Participants need to at least bring their laptops. # Running of the Workshop -*The basic structure of the workshop is set by the RaspiBlitz setup process. Simply you just follow that. The following parts should share some experiences and suggestions how you can optimize the time and the mentoring during this process. Feel free to share your experience here.* +*The basic structure of the workshop is set by the RaspiBlitz setup process. Simply you just follow that. The following parts should share some experiences and suggestions on how you can optimize the time and mentoring during this process. Feel free to share your experience here.* ## Welcome and Intro -In the beginning it would be great to give a small introduction into Lightning and show the RaspiBlitz GitHub page to let everybody know where to find the basic infos. But try to keeo it in the area of 10min to not waste time. +In the beginning it would be great to give a small introduction into Lightning and show the RaspiBlitz GitHub page to let everybody know where to find the basic infos. But try to keep it in the area of 10min to not waste time. Also even before the intro take care about the blockchain preparation. If people bring clean HDDs hook them up to your blockchain copy station as soon as possible. If you have to copy on location, plan to bringe the time for some deeper educational intro while the HDDs getting prepared. @@ -88,17 +88,17 @@ If you hand out hardware kits or people bring their own hardware its time to put ## Basic Setup -Connect everybodies Laptop to the same local network the RaspiBlitzes are connected to. Prepare to explain how to open a terminal - especially windows users need some help here (see README on this). +Connect everybody's Laptop to the same local network the RaspiBlitzes are connected to. Prepare to explain how to open a terminal - especially windows users need some help here (see README on this). Then everybody is SSHing into the RaspiBlitz and is following the setup dialog. Hand out paper and pens for people to write down their passwords and the word seed. ## Waiting Time -After the lightning wallet setup you have the longest waiting time during the workshop - around 30min when you have a presynced ready-2-go or up to 1 hour in the other scenarios. Its he time when the node is syncing up the blockchain and LND is scanning. If you see somebodies blockchain progress under 97% something is wrong - possibly the HDD was not correctly preparred or blockchain is way to old to finish during workshop time. +After the lightning wallet setup you have the longest waiting time during the workshop - around 30min when you have a presynced ready-2-go or up to 1 hour in the other scenarios. Its the time when the node is syncing up the blockchain and LND is scanning. If you see someone's blockchain progress under 97% something is wrong - possibly the HDD was not correctly prepared or blockchain is way too old to finish during workshop time. Use this time for a more in-depth educational segment on lightning in general. Also this time can be used to demo with one RaspiBlitz that is already on clean-setup (you prepared before the workshop) how the funding, setting up channels and the other features of the RaspiBlitz work. That way people see what are the next steps once their node is ready and even if your workshop time is over by then they can know the next steps to do at home. -Also this time is good for trouble shooting in individal sessions. If someone is not able to finish the sync on location in time shutdown the Raspiblitz from SSH terminal with CTRL+C and then `shutdown now`. If the device gets connected back up at home it should pickup the sync/scan process (let people know about the wallet unlock). +Also this time is good for troubleshooting in individual sessions. If someone is not able to finish the sync on location in time shutdown the Raspiblitz from SSH terminal with CTRL+C and then `shutdown now`. If the device gets connected back up at home it should pickup the sync/scan process (let people know about the wallet unlock). ## Finalizing Setup @@ -106,7 +106,7 @@ Once the RaspiBlitz is ready (LCD shows status screen) and people can SSH into t ## Funding, Channels, API -Check how much time is left to go thru the next steps of connecting to peers, funding and opening channels. While you wait on funding or channel opening confirmations, its a good moment to try to connect users mobile wallets with the device. But just so that on the local network for demo - dynamicDNS is something people then can try at home with port forwarding on theior routers. +Check how much time is left to go thru the next steps of connecting to peers, funding and opening channels. While you wait on funding or channel opening confirmations, its a good moment to try to connect users mobile wallets with the device. But just so that on the local network for demo - dynamicDNS is something people then can try at home with port forwarding on their routers. Its also nice to add casual social open-end segment to the end of the workshop. So people can already go into personal conversations, music and beverages while some last nodes sync up, confirmations come in and people sending their first satoshis on some lightning chess or from node to node. @@ -115,13 +115,13 @@ Here are some videos that show what else is possible with the RaspiBlitz: # Organisation Tasks -*Which of the follwoing organisation tasks are relevant for you depends on which starting scenario you choose (see above). Here is the complete possible list with details:* +*Which of the following organisation tasks are relevant for you depends on which starting scenario you choose (see above). Here is the complete possible list with details:* ## Buy all the Hardware See the shopping list on the RaspiBlitz Github README - you need to buy all of those and also dont forget that every participant needs a short (about 1m) network cable. -From experience start ordering two weeks before the workshop (if you need to assembly) and minimum one week if you handing out hardware kits - even if you have Amazon Prime. There is always a shipment comming late - its a lot of packages. +From experience start ordering two weeks before the workshop (if you need to assembly) and minimum one week if you handing out hardware kits - even if you have Amazon Prime. There is always a shipment coming late - its a lot of packages. If you like to support the RaspiBlitz project you can order a ready-2-go RaspiBlitz or a all-you-need-hardwareset for your RaspiBlitz workshop from [raspiblitz.com](https://raspiblitz.com) @@ -133,7 +133,7 @@ In all scenarios make sure people bring their laptops. ## Assemble all the Hardware -Basically you follow the assemble instructions on the RaspiBlitz GuitHUb README. Think of a safe way to transport the assambled devices to the workshop location - HDDs like it soft. +Basically you follow the assembly instructions on the RaspiBlitz GitHUb README. Think of a safe way to transport the assembled devices to the workshop location - HDDs like it soft. ## Prepare HDDs with Blockchain Data @@ -150,7 +150,7 @@ The bitcoin core client (0.17.1 or higher) needs to be stopped while the data is The easiest way to get a "template" of such HDD is to setup a fresh RaspiBlitz (without channel and fundings) and then run the script `/home/admin/XXcleanHDD.sh` and manually delete all rest data from the HDD and just leave those folders. -Once you have that "template" you can make a image from that and write that image to the other HDDs. This works for HDDs that all habe +Once you have that "template" you can make an image from that and write that image to the other HDDs. This works for HDDs that all have ... ## Prepare Blockchain Copy Station @@ -165,10 +165,10 @@ This can be used to prepare and keep multiple HDDs in snyc with blockchain data In "Copy Station Mode" the RaspiBlitz will just run the bitcoind (so it needs network connection), copy fresh blockchain data over to a template folder on the HDD called `/mnt/hdd/templateHDD` and from there syncs it to further HDDs that get connected to it. -If you run it in a setup lke on this photo with an extra powered USB hub, you can connect up to 10 HDDs at once to be synced with an almost up-to-date blockchain. +If you run it in a setup like on this photo with an extra powered USB hub, you can connect up to 10 HDDs at once to be synced with an almost up-to-date blockchain. -At the moment the "Blockchain Copy Station" is just a computer (laptop - not a RaspberryPi) having a image of a "template" HDD (see above) and you can attach (with a USB3.0 Hub) multiple fresh HHDs to it and start writing in the template image to that. +At the moment the "Blockchain Copy Station" is just a computer (laptop - not a RaspberryPi) having an image of a "template" HDD (see above) and you can attach (with a USB3.0 Hub) multiple fresh HHDs to it and start writing in the template image to that. To update the "template" HDD for the next workshop use it for a fresh clean RaspiBllitz setup just days before, sync the blockchain to 100% and repeat the process above. @@ -182,7 +182,7 @@ For former workshops i had a Laptop just with the data and had a script that was ## Prepare SD cards with latest RaspiBlitz image -Download the latest RasopiBlitz SD card image from the README page. `Balena Etcher` is the best image writing softare forn thsi usecase because if you have multiple sd card adapters, you can write multiple crads at once - that is cutting down your preperation time. +Download the latest RaspiBlitz SD card image from the README page. `Balena Etcher` is the best image writing software for this use case because if you have multiple sd card adapters, you can write multiple cards at once - that is cutting down your preparation time. ## Setup Workshop Environment @@ -194,6 +194,6 @@ Most important is the network setup. Every RaspiBlitz needs a LAN port in the sw ## Pre-Sync RaspiBlitzes at Workshop Location -In the ready-2-go scenario you have the RaspiBlitzes already assembled and a recent blockchain copy on the HDD. So one ot two hours before the workshop you setup your environment and already plug all RaspiBlitzes with power & network. You will see on the LCD at the top a pre-sync info and progress .. if its something '99.99..' its good to go. Just leave it running until the workshop starts. You dont need to stop it - just let participents SSH in and they can to the setup. +In the ready-2-go scenario you have the RaspiBlitzes already assembled and a recent blockchain copy on the HDD. So one ot two hours before the workshop you setup your environment and already plug all RaspiBlitzes with power & network. You will see on the LCD at the top a pre-sync info and progress .. if its something '99.99..' its good to go. Just leave it running until the workshop starts. You dont need to stop it - just let participants SSH in and they can to the setup. Its also best practice that you pre-sync all devices before you move them over to the workshop location. You dont need to SSH to shut them down before packing up - just unplug the network cable first, wait until the HDD is stopping to flash and then remove the power. From 7d67c2b826f3b4a8deae27e3a4667f58ec80b1ee Mon Sep 17 00:00:00 2001 From: Julian Ritz-Barr <35571634+Juized@users.noreply.github.com> Date: Wed, 4 Dec 2019 15:37:19 +0100 Subject: [PATCH 03/12] Update WORKSHOP.md fixing typos --- WORKSHOP.md | 48 ++++++++++++++++++++++++------------------------ 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/WORKSHOP.md b/WORKSHOP.md index 14b9caa2..9185c30c 100644 --- a/WORKSHOP.md +++ b/WORKSHOP.md @@ -1,22 +1,22 @@ # RaspiBlitz Workshop Tutorial -One goal of the RaspiBlitz project is to provide a open DIY platform for workshops - to setup your own lightning node and learn to manage it. This tutorial is collecting best practices on how to organise a RaspiBlitz workshop. +One goal of the RaspiBlitz project is to provide an open DIY platform for workshops - to setup your own lightning node and learn to manage it. This tutorial is collecting best practices on how to organise a RaspiBlitz workshop. # Time Planning First thing on planning a RaspiBlitz workshop is to calculate the time needed correctly. Because the setup from scratch with no further support is still a weekend project - mostly because downloading and syncing the blockchain takes a lot of time. -So it all depends on what you as a workshop organizer provide on prepartion for the workshop participants. Basically you can choose one of the following starting configurations ... going from most prepared to least prepared. +So it all depends on what you as a workshop organizer provide on preparation for the workshop participants. Basically you can choose one of the following starting configurations ... going from most prepared to least prepared. Also the time estimates below are about getting a node to a "clean setup". That is not containing the funding & setting up channels process - which is adding an additional 30 min to 1 hour to the calculation. -Also if your group is lager then 5 participants, calculate some extra time for individual support. You can compensate for that if you let two participants together work on one RaspiBlitz setup - this way you limit individual support and let them help each other. +Also if your group is larger than 5 participants, calculate some extra time for individual support. You can compensate for that if you let two participants together work on one RaspiBlitz setup - this way you limit individual support and let them help each other. ## A) Provide a Ready-2-Go RaspiBlitz Estimated Duration: 2 hours -Sure one part of the fun for participents is to assemble the hardware themselves. But if you aim for the shortest workshop possible, by keeping it at around 2 hours lenght, then this is your way to go. Because if you have the RaspiBlitz already assembled to be operational at the workshop, you can utilize one big time saver feature: "The Pre-Sync" - before the workshop starts you can already plug a assembled RaspiBlitz into power+network and when there is a preloaded bitcoin blockchain on the HDD it will already start catching up. So your participants start with an on-the-spot synced blockchain and will just have to deal with waiting times during the lightning node setup. But keep in mind that you need budget to buy all the hardware and lots of time in preparation for this - order the parts two weeks before and start peparing at least 3 days before the workshop. +Sure one part of the fun for participants is to assemble the hardware themselves. But if you aim for the shortest workshop possible, by keeping it at around 2 hours length, then this is your way to go. Because if you have the RaspiBlitz already assembled to be operational at the workshop, you can utilize one big time saver feature: "The Pre-Sync" - before the workshop starts you can already plug an assembled RaspiBlitz into power+network and when there is a preloaded bitcoin blockchain on the HDD it will already start catching up. So your participants start with an on-the-spot synced blockchain and will just have to deal with waiting times during the lightning node setup. But keep in mind that you need budget to buy all the hardware and lots of time in preparation for this - order the parts two weeks before and start preparing at least 3 days before the workshop. These are the following steps you need to prepare (follow links for details): @@ -33,7 +33,7 @@ These are the following steps you need to prepare (follow links for details): Estimated Duration: 3 hours -In this workshop scenario you buy all the hardware but let participants assemble the RaspiBlitz themselves - thats half the fun and people get a feel for the gear. But to keep the blockchain sync time short and being able to keep in a 3 hour timeframe you need to prepare the HDDs with Blockchain Data not much older than one day. So start ordering the parts minimum one week before the workshop (budget needed) and plan the day before completly for copy blockchain data to all those HDDs. +In this workshop scenario you buy all the hardware but let participants assemble the RaspiBlitz themselves - thats half the fun and people get a feel for the gear. But to keep the blockchain sync time short and being able to keep in a 3 hour timeframe you need to prepare the HDDs with Blockchain Data not much older than one day. So start ordering the parts minimum one week before the workshop (budget needed) and plan the day before completely for copy blockchain data to all those HDDs. These are the following steps you need to prepare (follow links for details): @@ -42,19 +42,19 @@ These are the following steps you need to prepare (follow links for details): * [Prepare SD cards with latest RaspiBlitz image](WORKSHOP.md#prepare-sd-cards-with-latest-raspiblitz-image) * [Setup Workshop Environment](WORKSHOP.md#setup-workshop-environment) -Variation: If you dont have a big bugdet to prefinance the part shoppings or people have already hardware they want to bring to can just buy the HDDs and SD cards and prepare them to run this scenario. +Variation: If you don't have a big budget to prefinance the parts or people already have hardware they want to bring to can just buy the HDDs and SD cards and prepare them to run this scenario. ## C) Bring your own Hardware Estimated Duration: 4-6 hours -This scenario is just adviced for small groups or you need to bring multiple blockchain copy stations - see details on "Prepare HDDs with Blockchain Data". Otherwise it needs the least prepartion time and prefinance and can be announced about participants 5 days before, so that they have time to order all the parts online. +This scenario is just advised for small groups or you need to bring multiple blockchain copy stations - see details on "Prepare HDDs with Blockchain Data". Otherwise it needs the least preparation time and prefinance and can be announced about participants 5 days before, so that they have time to order all the parts online. * [Instruct Participants to bring Hardware](WORKSHOP.md#instruct-participants-to-bring-hardware) * [Prepare Blockchain Copy Station](WORKSHOP.md#prepare-blockchain-copy-station) * [Setup Workshop Environment](WORKSHOP.md#setup-workshop-environment) -Make sure that as early as the participants arrive at the workhop location to check their hardware list and even before official starting time take their HDDs and start the blockchain copy process. +Make sure that as early as the participants arrive at the workshop location to check their hardware list and even before official starting time take their HDDs and start the blockchain copy process. # Checklist for running a Workshop @@ -67,18 +67,18 @@ Make sure you have the following Hardware and Infrastructure ready for the works - Extra WLAN Router (if you are not sure if LAN & WLAN is not on the same network at location) - One or two USB SD card adapters - One or two USB-C to USB-A adapters -- Some Tape, Marker & Pens come always handy (also for participants to wirte down seed & passwords) +- Some Tape, Marker & Pens come always handy (also for participants to write down seed & passwords) - And eventually some Bitcoin funds (if people dont have their own to start small funding channels) -Participants need at least to bring their laptops. +Participants need to at least bring their laptops. # Running of the Workshop -*The basic structure of the workshop is set by the RaspiBlitz setup process. Simply you just follow that. The following parts should share some experiences and suggestions how you can optimize the time and the mentoring during this process. Feel free to share your experience here.* +*The basic structure of the workshop is set by the RaspiBlitz setup process. Simply you just follow that. The following parts should share some experiences and suggestions on how you can optimize the time and mentoring during this process. Feel free to share your experience here.* ## Welcome and Intro -In the beginning it would be great to give a small introduction into Lightning and show the RaspiBlitz GitHub page to let everybody know where to find the basic infos. But try to keeo it in the area of 10min to not waste time. +In the beginning it would be great to give a small introduction into Lightning and show the RaspiBlitz GitHub page to let everybody know where to find the basic infos. But try to keep it in the area of 10min to not waste time. Also even before the intro take care about the blockchain preparation. If people bring clean HDDs hook them up to your blockchain copy station as soon as possible. If you have to copy on location, plan to bringe the time for some deeper educational intro while the HDDs getting prepared. @@ -88,17 +88,17 @@ If you hand out hardware kits or people bring their own hardware its time to put ## Basic Setup -Connect everybodies Laptop to the same local network the RaspiBlitzes are connected to. Prepare to explain how to open a terminal - especially windows users need some help here (see README on this). +Connect everybody's Laptop to the same local network the RaspiBlitzes are connected to. Prepare to explain how to open a terminal - especially windows users need some help here (see README on this). Then everybody is SSHing into the RaspiBlitz and is following the setup dialog. Hand out paper and pens for people to write down their passwords and the word seed. ## Waiting Time -After the lightning wallet setup you have the longest waiting time during the workshop - around 30min when you have a presynced ready-2-go or up to 1 hour in the other scenarios. Its he time when the node is syncing up the blockchain and LND is scanning. If you see somebodies blockchain progress under 97% something is wrong - possibly the HDD was not correctly preparred or blockchain is way to old to finish during workshop time. +After the lightning wallet setup you have the longest waiting time during the workshop - around 30min when you have a presynced ready-2-go or up to 1 hour in the other scenarios. Its the time when the node is syncing up the blockchain and LND is scanning. If you see someone's blockchain progress under 97% something is wrong - possibly the HDD was not correctly prepared or blockchain is way too old to finish during workshop time. Use this time for a more in-depth educational segment on lightning in general. Also this time can be used to demo with one RaspiBlitz that is already on clean-setup (you prepared before the workshop) how the funding, setting up channels and the other features of the RaspiBlitz work. That way people see what are the next steps once their node is ready and even if your workshop time is over by then they can know the next steps to do at home. -Also this time is good for trouble shooting in individal sessions. If someone is not able to finish the sync on location in time shutdown the Raspiblitz from SSH terminal with CTRL+C and then `shutdown now`. If the device gets connected back up at home it should pickup the sync/scan process (let people know about the wallet unlock). +Also this time is good for troubleshooting in individual sessions. If someone is not able to finish the sync on location in time shutdown the Raspiblitz from SSH terminal with CTRL+C and then `shutdown now`. If the device gets connected back up at home it should pickup the sync/scan process (let people know about the wallet unlock). ## Finalizing Setup @@ -106,7 +106,7 @@ Once the RaspiBlitz is ready (LCD shows status screen) and people can SSH into t ## Funding, Channels, API -Check how much time is left to go thru the next steps of connecting to peers, funding and opening channels. While you wait on funding or channel opening confirmations, its a good moment to try to connect users mobile wallets with the device. But just so that on the local network for demo - dynamicDNS is something people then can try at home with port forwarding on theior routers. +Check how much time is left to go thru the next steps of connecting to peers, funding and opening channels. While you wait on funding or channel opening confirmations, its a good moment to try to connect users mobile wallets with the device. But just so that on the local network for demo - dynamicDNS is something people then can try at home with port forwarding on their routers. Its also nice to add casual social open-end segment to the end of the workshop. So people can already go into personal conversations, music and beverages while some last nodes sync up, confirmations come in and people sending their first satoshis on some lightning chess or from node to node. @@ -115,13 +115,13 @@ Here are some videos that show what else is possible with the RaspiBlitz: # Organisation Tasks -*Which of the follwoing organisation tasks are relevant for you depends on which starting scenario you choose (see above). Here is the complete possible list with details:* +*Which of the following organisation tasks are relevant for you depends on which starting scenario you choose (see above). Here is the complete possible list with details:* ## Buy all the Hardware See the shopping list on the RaspiBlitz Github README - you need to buy all of those and also dont forget that every participant needs a short (about 1m) network cable. -From experience start ordering two weeks before the workshop (if you need to assembly) and minimum one week if you handing out hardware kits - even if you have Amazon Prime. There is always a shipment comming late - its a lot of packages. +From experience start ordering two weeks before the workshop (if you need to assembly) and minimum one week if you handing out hardware kits - even if you have Amazon Prime. There is always a shipment coming late - its a lot of packages. If you like to support the RaspiBlitz project you can order a ready-2-go RaspiBlitz or a all-you-need-hardwareset for your RaspiBlitz workshop from [raspiblitz.com](https://raspiblitz.com) @@ -133,7 +133,7 @@ In all scenarios make sure people bring their laptops. ## Assemble all the Hardware -Basically you follow the assemble instructions on the RaspiBlitz GuitHUb README. Think of a safe way to transport the assambled devices to the workshop location - HDDs like it soft. +Basically you follow the assembly instructions on the RaspiBlitz GitHUb README. Think of a safe way to transport the assembled devices to the workshop location - HDDs like it soft. ## Prepare HDDs with Blockchain Data @@ -150,7 +150,7 @@ The bitcoin core client (0.17.1 or higher) needs to be stopped while the data is The easiest way to get a "template" of such HDD is to setup a fresh RaspiBlitz (without channel and fundings) and then run the script `/home/admin/XXcleanHDD.sh` and manually delete all rest data from the HDD and just leave those folders. -Once you have that "template" you can make a image from that and write that image to the other HDDs. This works for HDDs that all habe +Once you have that "template" you can make an image from that and write that image to the other HDDs. This works for HDDs that all have ... ## Prepare Blockchain Copy Station @@ -165,10 +165,10 @@ This can be used to prepare and keep multiple HDDs in snyc with blockchain data In "Copy Station Mode" the RaspiBlitz will just run the bitcoind (so it needs network connection), copy fresh blockchain data over to a template folder on the HDD called `/mnt/hdd/templateHDD` and from there syncs it to further HDDs that get connected to it. -If you run it in a setup lke on this photo with an extra powered USB hub, you can connect up to 10 HDDs at once to be synced with an almost up-to-date blockchain. +If you run it in a setup like on this photo with an extra powered USB hub, you can connect up to 10 HDDs at once to be synced with an almost up-to-date blockchain. -At the moment the "Blockchain Copy Station" is just a computer (laptop - not a RaspberryPi) having a image of a "template" HDD (see above) and you can attach (with a USB3.0 Hub) multiple fresh HHDs to it and start writing in the template image to that. +At the moment the "Blockchain Copy Station" is just a computer (laptop - not a RaspberryPi) having an image of a "template" HDD (see above) and you can attach (with a USB3.0 Hub) multiple fresh HHDs to it and start writing in the template image to that. To update the "template" HDD for the next workshop use it for a fresh clean RaspiBllitz setup just days before, sync the blockchain to 100% and repeat the process above. @@ -182,7 +182,7 @@ For former workshops i had a Laptop just with the data and had a script that was ## Prepare SD cards with latest RaspiBlitz image -Download the latest RasopiBlitz SD card image from the README page. `Balena Etcher` is the best image writing softare forn thsi usecase because if you have multiple sd card adapters, you can write multiple crads at once - that is cutting down your preperation time. +Download the latest RaspiBlitz SD card image from the README page. `Balena Etcher` is the best image writing software for this use case because if you have multiple sd card adapters, you can write multiple cards at once - that is cutting down your preparation time. ## Setup Workshop Environment @@ -194,6 +194,6 @@ Most important is the network setup. Every RaspiBlitz needs a LAN port in the sw ## Pre-Sync RaspiBlitzes at Workshop Location -In the ready-2-go scenario you have the RaspiBlitzes already assembled and a recent blockchain copy on the HDD. So one ot two hours before the workshop you setup your environment and already plug all RaspiBlitzes with power & network. You will see on the LCD at the top a pre-sync info and progress .. if its something '99.99..' its good to go. Just leave it running until the workshop starts. You dont need to stop it - just let participents SSH in and they can to the setup. +In the ready-2-go scenario you have the RaspiBlitzes already assembled and a recent blockchain copy on the HDD. So one ot two hours before the workshop you setup your environment and already plug all RaspiBlitzes with power & network. You will see on the LCD at the top a pre-sync info and progress .. if its something '99.99..' its good to go. Just leave it running until the workshop starts. You dont need to stop it - just let participants SSH in and they can to the setup. Its also best practice that you pre-sync all devices before you move them over to the workshop location. You dont need to SSH to shut them down before packing up - just unplug the network cable first, wait until the HDD is stopping to flash and then remove the power. From 33d81369ebaafc4d88f52413da5cb8fb8b7426ba Mon Sep 17 00:00:00 2001 From: Julian Ritz-Barr <35571634+Juized@users.noreply.github.com> Date: Wed, 4 Dec 2019 15:38:50 +0100 Subject: [PATCH 04/12] Update WORKSHOP.md fixing typos --- WORKSHOP.md | 48 ++++++++++++++++++++++++------------------------ 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/WORKSHOP.md b/WORKSHOP.md index 14b9caa2..9185c30c 100644 --- a/WORKSHOP.md +++ b/WORKSHOP.md @@ -1,22 +1,22 @@ # RaspiBlitz Workshop Tutorial -One goal of the RaspiBlitz project is to provide a open DIY platform for workshops - to setup your own lightning node and learn to manage it. This tutorial is collecting best practices on how to organise a RaspiBlitz workshop. +One goal of the RaspiBlitz project is to provide an open DIY platform for workshops - to setup your own lightning node and learn to manage it. This tutorial is collecting best practices on how to organise a RaspiBlitz workshop. # Time Planning First thing on planning a RaspiBlitz workshop is to calculate the time needed correctly. Because the setup from scratch with no further support is still a weekend project - mostly because downloading and syncing the blockchain takes a lot of time. -So it all depends on what you as a workshop organizer provide on prepartion for the workshop participants. Basically you can choose one of the following starting configurations ... going from most prepared to least prepared. +So it all depends on what you as a workshop organizer provide on preparation for the workshop participants. Basically you can choose one of the following starting configurations ... going from most prepared to least prepared. Also the time estimates below are about getting a node to a "clean setup". That is not containing the funding & setting up channels process - which is adding an additional 30 min to 1 hour to the calculation. -Also if your group is lager then 5 participants, calculate some extra time for individual support. You can compensate for that if you let two participants together work on one RaspiBlitz setup - this way you limit individual support and let them help each other. +Also if your group is larger than 5 participants, calculate some extra time for individual support. You can compensate for that if you let two participants together work on one RaspiBlitz setup - this way you limit individual support and let them help each other. ## A) Provide a Ready-2-Go RaspiBlitz Estimated Duration: 2 hours -Sure one part of the fun for participents is to assemble the hardware themselves. But if you aim for the shortest workshop possible, by keeping it at around 2 hours lenght, then this is your way to go. Because if you have the RaspiBlitz already assembled to be operational at the workshop, you can utilize one big time saver feature: "The Pre-Sync" - before the workshop starts you can already plug a assembled RaspiBlitz into power+network and when there is a preloaded bitcoin blockchain on the HDD it will already start catching up. So your participants start with an on-the-spot synced blockchain and will just have to deal with waiting times during the lightning node setup. But keep in mind that you need budget to buy all the hardware and lots of time in preparation for this - order the parts two weeks before and start peparing at least 3 days before the workshop. +Sure one part of the fun for participants is to assemble the hardware themselves. But if you aim for the shortest workshop possible, by keeping it at around 2 hours length, then this is your way to go. Because if you have the RaspiBlitz already assembled to be operational at the workshop, you can utilize one big time saver feature: "The Pre-Sync" - before the workshop starts you can already plug an assembled RaspiBlitz into power+network and when there is a preloaded bitcoin blockchain on the HDD it will already start catching up. So your participants start with an on-the-spot synced blockchain and will just have to deal with waiting times during the lightning node setup. But keep in mind that you need budget to buy all the hardware and lots of time in preparation for this - order the parts two weeks before and start preparing at least 3 days before the workshop. These are the following steps you need to prepare (follow links for details): @@ -33,7 +33,7 @@ These are the following steps you need to prepare (follow links for details): Estimated Duration: 3 hours -In this workshop scenario you buy all the hardware but let participants assemble the RaspiBlitz themselves - thats half the fun and people get a feel for the gear. But to keep the blockchain sync time short and being able to keep in a 3 hour timeframe you need to prepare the HDDs with Blockchain Data not much older than one day. So start ordering the parts minimum one week before the workshop (budget needed) and plan the day before completly for copy blockchain data to all those HDDs. +In this workshop scenario you buy all the hardware but let participants assemble the RaspiBlitz themselves - thats half the fun and people get a feel for the gear. But to keep the blockchain sync time short and being able to keep in a 3 hour timeframe you need to prepare the HDDs with Blockchain Data not much older than one day. So start ordering the parts minimum one week before the workshop (budget needed) and plan the day before completely for copy blockchain data to all those HDDs. These are the following steps you need to prepare (follow links for details): @@ -42,19 +42,19 @@ These are the following steps you need to prepare (follow links for details): * [Prepare SD cards with latest RaspiBlitz image](WORKSHOP.md#prepare-sd-cards-with-latest-raspiblitz-image) * [Setup Workshop Environment](WORKSHOP.md#setup-workshop-environment) -Variation: If you dont have a big bugdet to prefinance the part shoppings or people have already hardware they want to bring to can just buy the HDDs and SD cards and prepare them to run this scenario. +Variation: If you don't have a big budget to prefinance the parts or people already have hardware they want to bring to can just buy the HDDs and SD cards and prepare them to run this scenario. ## C) Bring your own Hardware Estimated Duration: 4-6 hours -This scenario is just adviced for small groups or you need to bring multiple blockchain copy stations - see details on "Prepare HDDs with Blockchain Data". Otherwise it needs the least prepartion time and prefinance and can be announced about participants 5 days before, so that they have time to order all the parts online. +This scenario is just advised for small groups or you need to bring multiple blockchain copy stations - see details on "Prepare HDDs with Blockchain Data". Otherwise it needs the least preparation time and prefinance and can be announced about participants 5 days before, so that they have time to order all the parts online. * [Instruct Participants to bring Hardware](WORKSHOP.md#instruct-participants-to-bring-hardware) * [Prepare Blockchain Copy Station](WORKSHOP.md#prepare-blockchain-copy-station) * [Setup Workshop Environment](WORKSHOP.md#setup-workshop-environment) -Make sure that as early as the participants arrive at the workhop location to check their hardware list and even before official starting time take their HDDs and start the blockchain copy process. +Make sure that as early as the participants arrive at the workshop location to check their hardware list and even before official starting time take their HDDs and start the blockchain copy process. # Checklist for running a Workshop @@ -67,18 +67,18 @@ Make sure you have the following Hardware and Infrastructure ready for the works - Extra WLAN Router (if you are not sure if LAN & WLAN is not on the same network at location) - One or two USB SD card adapters - One or two USB-C to USB-A adapters -- Some Tape, Marker & Pens come always handy (also for participants to wirte down seed & passwords) +- Some Tape, Marker & Pens come always handy (also for participants to write down seed & passwords) - And eventually some Bitcoin funds (if people dont have their own to start small funding channels) -Participants need at least to bring their laptops. +Participants need to at least bring their laptops. # Running of the Workshop -*The basic structure of the workshop is set by the RaspiBlitz setup process. Simply you just follow that. The following parts should share some experiences and suggestions how you can optimize the time and the mentoring during this process. Feel free to share your experience here.* +*The basic structure of the workshop is set by the RaspiBlitz setup process. Simply you just follow that. The following parts should share some experiences and suggestions on how you can optimize the time and mentoring during this process. Feel free to share your experience here.* ## Welcome and Intro -In the beginning it would be great to give a small introduction into Lightning and show the RaspiBlitz GitHub page to let everybody know where to find the basic infos. But try to keeo it in the area of 10min to not waste time. +In the beginning it would be great to give a small introduction into Lightning and show the RaspiBlitz GitHub page to let everybody know where to find the basic infos. But try to keep it in the area of 10min to not waste time. Also even before the intro take care about the blockchain preparation. If people bring clean HDDs hook them up to your blockchain copy station as soon as possible. If you have to copy on location, plan to bringe the time for some deeper educational intro while the HDDs getting prepared. @@ -88,17 +88,17 @@ If you hand out hardware kits or people bring their own hardware its time to put ## Basic Setup -Connect everybodies Laptop to the same local network the RaspiBlitzes are connected to. Prepare to explain how to open a terminal - especially windows users need some help here (see README on this). +Connect everybody's Laptop to the same local network the RaspiBlitzes are connected to. Prepare to explain how to open a terminal - especially windows users need some help here (see README on this). Then everybody is SSHing into the RaspiBlitz and is following the setup dialog. Hand out paper and pens for people to write down their passwords and the word seed. ## Waiting Time -After the lightning wallet setup you have the longest waiting time during the workshop - around 30min when you have a presynced ready-2-go or up to 1 hour in the other scenarios. Its he time when the node is syncing up the blockchain and LND is scanning. If you see somebodies blockchain progress under 97% something is wrong - possibly the HDD was not correctly preparred or blockchain is way to old to finish during workshop time. +After the lightning wallet setup you have the longest waiting time during the workshop - around 30min when you have a presynced ready-2-go or up to 1 hour in the other scenarios. Its the time when the node is syncing up the blockchain and LND is scanning. If you see someone's blockchain progress under 97% something is wrong - possibly the HDD was not correctly prepared or blockchain is way too old to finish during workshop time. Use this time for a more in-depth educational segment on lightning in general. Also this time can be used to demo with one RaspiBlitz that is already on clean-setup (you prepared before the workshop) how the funding, setting up channels and the other features of the RaspiBlitz work. That way people see what are the next steps once their node is ready and even if your workshop time is over by then they can know the next steps to do at home. -Also this time is good for trouble shooting in individal sessions. If someone is not able to finish the sync on location in time shutdown the Raspiblitz from SSH terminal with CTRL+C and then `shutdown now`. If the device gets connected back up at home it should pickup the sync/scan process (let people know about the wallet unlock). +Also this time is good for troubleshooting in individual sessions. If someone is not able to finish the sync on location in time shutdown the Raspiblitz from SSH terminal with CTRL+C and then `shutdown now`. If the device gets connected back up at home it should pickup the sync/scan process (let people know about the wallet unlock). ## Finalizing Setup @@ -106,7 +106,7 @@ Once the RaspiBlitz is ready (LCD shows status screen) and people can SSH into t ## Funding, Channels, API -Check how much time is left to go thru the next steps of connecting to peers, funding and opening channels. While you wait on funding or channel opening confirmations, its a good moment to try to connect users mobile wallets with the device. But just so that on the local network for demo - dynamicDNS is something people then can try at home with port forwarding on theior routers. +Check how much time is left to go thru the next steps of connecting to peers, funding and opening channels. While you wait on funding or channel opening confirmations, its a good moment to try to connect users mobile wallets with the device. But just so that on the local network for demo - dynamicDNS is something people then can try at home with port forwarding on their routers. Its also nice to add casual social open-end segment to the end of the workshop. So people can already go into personal conversations, music and beverages while some last nodes sync up, confirmations come in and people sending their first satoshis on some lightning chess or from node to node. @@ -115,13 +115,13 @@ Here are some videos that show what else is possible with the RaspiBlitz: # Organisation Tasks -*Which of the follwoing organisation tasks are relevant for you depends on which starting scenario you choose (see above). Here is the complete possible list with details:* +*Which of the following organisation tasks are relevant for you depends on which starting scenario you choose (see above). Here is the complete possible list with details:* ## Buy all the Hardware See the shopping list on the RaspiBlitz Github README - you need to buy all of those and also dont forget that every participant needs a short (about 1m) network cable. -From experience start ordering two weeks before the workshop (if you need to assembly) and minimum one week if you handing out hardware kits - even if you have Amazon Prime. There is always a shipment comming late - its a lot of packages. +From experience start ordering two weeks before the workshop (if you need to assembly) and minimum one week if you handing out hardware kits - even if you have Amazon Prime. There is always a shipment coming late - its a lot of packages. If you like to support the RaspiBlitz project you can order a ready-2-go RaspiBlitz or a all-you-need-hardwareset for your RaspiBlitz workshop from [raspiblitz.com](https://raspiblitz.com) @@ -133,7 +133,7 @@ In all scenarios make sure people bring their laptops. ## Assemble all the Hardware -Basically you follow the assemble instructions on the RaspiBlitz GuitHUb README. Think of a safe way to transport the assambled devices to the workshop location - HDDs like it soft. +Basically you follow the assembly instructions on the RaspiBlitz GitHUb README. Think of a safe way to transport the assembled devices to the workshop location - HDDs like it soft. ## Prepare HDDs with Blockchain Data @@ -150,7 +150,7 @@ The bitcoin core client (0.17.1 or higher) needs to be stopped while the data is The easiest way to get a "template" of such HDD is to setup a fresh RaspiBlitz (without channel and fundings) and then run the script `/home/admin/XXcleanHDD.sh` and manually delete all rest data from the HDD and just leave those folders. -Once you have that "template" you can make a image from that and write that image to the other HDDs. This works for HDDs that all habe +Once you have that "template" you can make an image from that and write that image to the other HDDs. This works for HDDs that all have ... ## Prepare Blockchain Copy Station @@ -165,10 +165,10 @@ This can be used to prepare and keep multiple HDDs in snyc with blockchain data In "Copy Station Mode" the RaspiBlitz will just run the bitcoind (so it needs network connection), copy fresh blockchain data over to a template folder on the HDD called `/mnt/hdd/templateHDD` and from there syncs it to further HDDs that get connected to it. -If you run it in a setup lke on this photo with an extra powered USB hub, you can connect up to 10 HDDs at once to be synced with an almost up-to-date blockchain. +If you run it in a setup like on this photo with an extra powered USB hub, you can connect up to 10 HDDs at once to be synced with an almost up-to-date blockchain. -At the moment the "Blockchain Copy Station" is just a computer (laptop - not a RaspberryPi) having a image of a "template" HDD (see above) and you can attach (with a USB3.0 Hub) multiple fresh HHDs to it and start writing in the template image to that. +At the moment the "Blockchain Copy Station" is just a computer (laptop - not a RaspberryPi) having an image of a "template" HDD (see above) and you can attach (with a USB3.0 Hub) multiple fresh HHDs to it and start writing in the template image to that. To update the "template" HDD for the next workshop use it for a fresh clean RaspiBllitz setup just days before, sync the blockchain to 100% and repeat the process above. @@ -182,7 +182,7 @@ For former workshops i had a Laptop just with the data and had a script that was ## Prepare SD cards with latest RaspiBlitz image -Download the latest RasopiBlitz SD card image from the README page. `Balena Etcher` is the best image writing softare forn thsi usecase because if you have multiple sd card adapters, you can write multiple crads at once - that is cutting down your preperation time. +Download the latest RaspiBlitz SD card image from the README page. `Balena Etcher` is the best image writing software for this use case because if you have multiple sd card adapters, you can write multiple cards at once - that is cutting down your preparation time. ## Setup Workshop Environment @@ -194,6 +194,6 @@ Most important is the network setup. Every RaspiBlitz needs a LAN port in the sw ## Pre-Sync RaspiBlitzes at Workshop Location -In the ready-2-go scenario you have the RaspiBlitzes already assembled and a recent blockchain copy on the HDD. So one ot two hours before the workshop you setup your environment and already plug all RaspiBlitzes with power & network. You will see on the LCD at the top a pre-sync info and progress .. if its something '99.99..' its good to go. Just leave it running until the workshop starts. You dont need to stop it - just let participents SSH in and they can to the setup. +In the ready-2-go scenario you have the RaspiBlitzes already assembled and a recent blockchain copy on the HDD. So one ot two hours before the workshop you setup your environment and already plug all RaspiBlitzes with power & network. You will see on the LCD at the top a pre-sync info and progress .. if its something '99.99..' its good to go. Just leave it running until the workshop starts. You dont need to stop it - just let participants SSH in and they can to the setup. Its also best practice that you pre-sync all devices before you move them over to the workshop location. You dont need to SSH to shut them down before packing up - just unplug the network cable first, wait until the HDD is stopping to flash and then remove the power. From 9229a668d02b21312926b6a1c23fbc4822caa43c Mon Sep 17 00:00:00 2001 From: Marc Steiner Date: Sun, 15 Dec 2019 14:54:20 +0100 Subject: [PATCH 05/12] added working SSD and display info --- shoppinglist_ch.md | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/shoppinglist_ch.md b/shoppinglist_ch.md index 7a222871..0cb9b3a3 100644 --- a/shoppinglist_ch.md +++ b/shoppinglist_ch.md @@ -4,7 +4,7 @@ The new shopping list comes in three different packages: Minimal, Standard & Maximal: -## Package: Standard (around 210 CHF) +## Package: Standard (around 240 CHF) *The "Standard Package" is most tested and recommended if you can effort it. It aims to give you the best economic value to run all the RaspiBlitz features at a good performance and even allows you to self-validate your blockchain in under 3 days.* @@ -12,19 +12,20 @@ The new shopping list comes in three different packages: Minimal, Standard & Max * ShimFan Cooling: [pi-shop.ch](https://www.pi-shop.ch/fan-shim-for-raspberry-pi) (order later if sold out) * Power USBC: [pi-shop.ch](https://www.pi-shop.ch/raspberry-pi-15w-power-supply-eu-schwarz) * RaspberryPi-Case: [pi-shop.ch](https://www.pi-shop.ch/rainbow-pibow-coupe-4-raspberry-pi-4-only) -* 1TB SSD: [pi-shop.ch](https://www.pi-shop.ch/seagate-expansion-portable-2-5-1tb) or [Brack.ch](https://www.brack.ch/toshiba-externe-festplatte-canvio-basics-1-tb-813514) -* SSD-Case: (not needed in case of [pi-shop.ch](https://www.pi-shop.ch/seagate-expansion-portable-2-5-1tb) solution) +* 500GB SSD: [Digitec](https://www.digitec.ch/en/s1/product/crucial-mx500-500gb-25-ssd-7331523) +* SSD-Case: [Digitec](https://www.digitec.ch/en/s1/product/icy-box-ib-ac703-u3-converters-6067574) * Micro SD-Card 32GB: [pi-shop.ch](https://www.pi-shop.ch/32gb-microsd-karte-class10-noobs-fuer-raspberry-pi-bereits-installiert) -* LCD-Display: [pi-shop.ch](https://www.pi-shop.ch/3-5inch-rpi-lcd-b-ic-test-board) +* LCD-Display: Original Display is not available in CH. You can by the original from [Amazon.de](https://www.amazon.de/gp/product/B06X191RX7) or us this [pi-shop.ch](https://www.pi-shop.ch/3-5inch-rpi-lcd-b-ic-test-board). If display from pi-shop.ch, you have to install the drivers manually. -## Package: Minimal (around 180 CHF) +## Package: Minimal (around 200 CHF) *The minimal package aims for the cheapest price and allows you to use old hardware. It will always be possible to run all the basic features of a Bitcoin- & Lightning-Fullnode, but the system might be too slow to validate the blockchain history by itself and run some resource intensive extended services. 500GB SSD are in the same price range like 1TB, therefore go with 1TB* Basic Parts for all minimal variants: -* 1TB SSD: [pi-shop.ch](https://www.pi-shop.ch/seagate-expansion-portable-2-5-1tb) or [Brack.ch](https://www.brack.ch/toshiba-externe-festplatte-canvio-basics-1-tb-813514) +* 500GB SSD: [Digitec](https://www.digitec.ch/en/s1/product/crucial-mx500-500gb-25-ssd-7331523) +* SSD-Case: [Digitec](https://www.digitec.ch/en/s1/product/icy-box-ib-ac703-u3-converters-6067574) * Micro SD-Card 16GB: [pi-shop.ch](https://www.pi-shop.ch/16-gb-microsd-karte-class10-noobs-fuer-raspberry-pi-bereits-installiert) -* LCD-Display: [pi-shop.ch](https://www.pi-shop.ch/3-5inch-rpi-lcd-b-ic-test-board) +* LCD-Display: Original Display is not available in CH. You can by the original from [Amazon.de](https://www.amazon.de/gp/product/B06X191RX7) or us this [pi-shop.ch](https://www.pi-shop.ch/3-5inch-rpi-lcd-b-ic-test-board). If display from pi-shop.ch, you have to install the drivers manually. If you have already a used RaspberryPi 3 B+ you can reuse with the following parts: * RaspBerry Pi 3: [pi-shop.ch](https://www.pi-shop.ch/raspberry-pi-3-model-b) From 3697083423d4326ee501e627885f957f70eeefa4 Mon Sep 17 00:00:00 2001 From: Marc Steiner Date: Sun, 15 Dec 2019 15:00:08 +0100 Subject: [PATCH 06/12] changed minimal package --- shoppinglist_ch.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/shoppinglist_ch.md b/shoppinglist_ch.md index 0cb9b3a3..d1848d1b 100644 --- a/shoppinglist_ch.md +++ b/shoppinglist_ch.md @@ -19,11 +19,10 @@ The new shopping list comes in three different packages: Minimal, Standard & Max ## Package: Minimal (around 200 CHF) -*The minimal package aims for the cheapest price and allows you to use old hardware. It will always be possible to run all the basic features of a Bitcoin- & Lightning-Fullnode, but the system might be too slow to validate the blockchain history by itself and run some resource intensive extended services. 500GB SSD are in the same price range like 1TB, therefore go with 1TB* +*The minimal package aims for the cheapest price and allows you to use old hardware. It will always be possible to run all the basic features of a Bitcoin- & Lightning-Fullnode, but the system might be too slow to validate the blockchain history by itself and run some resource intensive extended services.* Basic Parts for all minimal variants: -* 500GB SSD: [Digitec](https://www.digitec.ch/en/s1/product/crucial-mx500-500gb-25-ssd-7331523) -* SSD-Case: [Digitec](https://www.digitec.ch/en/s1/product/icy-box-ib-ac703-u3-converters-6067574) +* 1TB Hard Drive: [Digitec](https://www.digitec.ch/de/s1/product/toshiba-canvio-basics-1tb-externe-festplatte-3227990) * Micro SD-Card 16GB: [pi-shop.ch](https://www.pi-shop.ch/16-gb-microsd-karte-class10-noobs-fuer-raspberry-pi-bereits-installiert) * LCD-Display: Original Display is not available in CH. You can by the original from [Amazon.de](https://www.amazon.de/gp/product/B06X191RX7) or us this [pi-shop.ch](https://www.pi-shop.ch/3-5inch-rpi-lcd-b-ic-test-board). If display from pi-shop.ch, you have to install the drivers manually. From 4c76806a25fb31c74de80c1eb3567e7f8e6b6d53 Mon Sep 17 00:00:00 2001 From: openoms <43343391+openoms@users.noreply.github.com> Date: Tue, 24 Dec 2019 10:55:28 +0100 Subject: [PATCH 07/12] 00infoBlitz.sh: remove empty line to fit --- home.admin/00infoBlitz.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/home.admin/00infoBlitz.sh b/home.admin/00infoBlitz.sh index d570c6ea..674a6d35 100755 --- a/home.admin/00infoBlitz.sh +++ b/home.admin/00infoBlitz.sh @@ -290,7 +290,6 @@ ${color_yellow} / ,' ${color_gray}${public_addr_pre}${public_color}${pu ${color_yellow} /,' ${color_gray} ${color_yellow} /' ${color_gray}LND ${color_green}${ln_version} ${ln_baseInfo} ${color_yellow} ${color_gray}${ln_channelInfo} ${ln_peersInfo} -${color_yellow} ${color_gray} ${color_yellow} ${color_gray}${ln_feeReport} ${color_yellow} ${color_yellow}${ln_publicColor}${ln_external}${color_red} From 39393e77f487e419ed6152b8391271b955431479 Mon Sep 17 00:00:00 2001 From: Zhe Li Date: Wed, 25 Dec 2019 20:57:21 +0100 Subject: [PATCH 08/12] Fix typo: usefull -> useful. --- home.admin/30initHDD.sh | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/home.admin/30initHDD.sh b/home.admin/30initHDD.sh index 3e144ef7..319e8207 100755 --- a/home.admin/30initHDD.sh +++ b/home.admin/30initHDD.sh @@ -32,7 +32,7 @@ if [ ${existsHDD} -eq 1 ]; then device="sda2" elif [ ${size3} -gt ${size1} ]; then echo "sdb is BIGGER - run with this one" - device="sdb" + device="sdb" else echo "sda1 is BIGGER - run with this one" fi @@ -57,7 +57,7 @@ if [ ${existsHDD} -eq 1 ]; then echo "You HDD was detected with the size of ${isSize} bytes" echo "For ${network} at least ${minSize} bytes is recommended" echo "If you know the HDD is bigger then detected, please" - echo "change HDD to 1 partition on another computer first," + echo "change HDD to 1 partition on another computer first," echo "If you want to change to a bigger HDD:" echo "* Unplug power of RaspiBlitz" echo "* Make a fresh SD card again" @@ -77,17 +77,17 @@ if [ ${existsHDD} -eq 1 ]; then if [ ${mountOK} -eq 1 ]; then echo "FAIL - HDD is mounted" echo "If you really want to reinit the HDD, then unmount the HDD first and try again" - else + else echo "" dialog --title "Format HDD" --yes-button "Yes" --no-button "Cancel" --yesno "RaspiBlitz detected a Hard Disk Drive (HDD). -It will get formatted to EXT4 to be usefull. +It will get formatted to EXT4 to be useful. This will DELETE ALL FORMER DATA on the HDD. Is it OK to delete HDD for fresh RaspiBlitz? " 10 48 if [ $? -eq 1 ]; then dialog --title "Replace HDD" --msgbox "OK. RaspiBlitz will shutdown now. -Please disconnect Power then. +Please disconnect Power then. Backup HDD data or connect another one. Then Power up again." 8 39 sudo shutdown now @@ -102,7 +102,7 @@ Then Power up again." 8 39 sudo mkfs.ext4 /dev/${device} -F -L BLOCKCHAIN echo "format ext4 done - wait 6 secs" sleep 6 - formatExt4OK=$(lsblk -o UUID,NAME,FSTYPE,SIZE,LABEL,MODEL | grep BLOCKCHAIN | grep -c ext4) + formatExt4OK=$(lsblk -o UUID,NAME,FSTYPE,SIZE,LABEL,MODEL | grep BLOCKCHAIN | grep -c ext4) if [ ${formatExt4OK} -eq 1 ]; then echo "OK - HDD is now formatted in ext4" sleep 1 From e076603474246a0b98c491cf6ff3b9f8cbe4d1df Mon Sep 17 00:00:00 2001 From: frennkie Date: Sun, 29 Dec 2019 16:29:00 +0100 Subject: [PATCH 09/12] fix sshd_config syntax --- FAQ.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/FAQ.md b/FAQ.md index ce9f38ba..5fc5fded 100644 --- a/FAQ.md +++ b/FAQ.md @@ -771,7 +771,7 @@ PubkeyAuthentication yes GatewayPorts yes AllowTcpForwarding yes ClientAliveInterval 60 -ClientAliveCountMax=2 +ClientAliveCountMax 2 ``` *Last two parameters were added as used in the ssh tunnel demo at #GPN19 https://media.ccc.de/v/gpn19-76-einen-server-daheim-ohne-ffentliche-ipv4-adresse#t=911* From 80b975f5f7ab8db50bddc08db1911f738459d435 Mon Sep 17 00:00:00 2001 From: rootzoll Date: Mon, 6 Jan 2020 22:59:43 +0100 Subject: [PATCH 10/12] #691 update canada shopping list --- shoppinglist_ca.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/shoppinglist_ca.md b/shoppinglist_ca.md index 8168d8ad..b33382e8 100644 --- a/shoppinglist_ca.md +++ b/shoppinglist_ca.md @@ -8,8 +8,9 @@ The new shopping list comes in three different packages: Minimal, Standard & Max *The "Standard Package" is most tested and recommended if you can effort it. It aims to give you the best economic value to run all the RaspiBlitz features at a good performance and even allows you to self-validate your blockchain in under 3 days.* -* RaspBerry Pi 4 2GB + Power: [amazon.com](https://www.amazon.com/CanaKit-Raspberry-Basic-Kit-2GB/dp/B07TYK4RL8) (shipping from USA) -* ShimFan Cooling: [amazon.com](https://www.amazon.com/Pimoroni-Fan-Shim-Raspberry-PI/dp/B07TTTCN8H/) (shipping from USA) +* RaspBerry Pi 4 2GB [amazon.ca](https://www.amazon.ca/Raspberry-Pi-Computer-Model-2GB/dp/B07W5BJ2CQ) ++ Power: [amazon.ca](https://www.amazon.ca/Official-Raspberry-Pi-Supply-Output/dp/B07W8XHMJZ) +* ShimFan Cooling: [amazon.ca](https://www.amazon.ca/Pimoroni-Fan-SHIM-Raspberry-Expectancy/dp/B07TTTCN8H) * 500GB SSD: [amazon.ca](https://www.amazon.ca/Crucial-MX500-500GB-NAND-Internal/dp/B0786QNS9B) * SSD-Case: [amazon.ca](https://www.amazon.ca/UGREEN-Enclosure-External-Adapter-Housing/dp/B07D2BHVBD) * Micro SD-Card 32GB: [amazon.ca](https://www.amazon.ca/dp/B07DTFRNRJ) From 27cfc642996b048d9a83c56575bd6c34b7b4470b Mon Sep 17 00:00:00 2001 From: rootzoll Date: Mon, 6 Jan 2020 23:00:29 +0100 Subject: [PATCH 11/12] #691 fix typo --- shoppinglist_ca.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shoppinglist_ca.md b/shoppinglist_ca.md index b33382e8..09f7c10f 100644 --- a/shoppinglist_ca.md +++ b/shoppinglist_ca.md @@ -9,7 +9,7 @@ The new shopping list comes in three different packages: Minimal, Standard & Max *The "Standard Package" is most tested and recommended if you can effort it. It aims to give you the best economic value to run all the RaspiBlitz features at a good performance and even allows you to self-validate your blockchain in under 3 days.* * RaspBerry Pi 4 2GB [amazon.ca](https://www.amazon.ca/Raspberry-Pi-Computer-Model-2GB/dp/B07W5BJ2CQ) -+ Power: [amazon.ca](https://www.amazon.ca/Official-Raspberry-Pi-Supply-Output/dp/B07W8XHMJZ) +* Power: [amazon.ca](https://www.amazon.ca/Official-Raspberry-Pi-Supply-Output/dp/B07W8XHMJZ) * ShimFan Cooling: [amazon.ca](https://www.amazon.ca/Pimoroni-Fan-SHIM-Raspberry-Expectancy/dp/B07TTTCN8H) * 500GB SSD: [amazon.ca](https://www.amazon.ca/Crucial-MX500-500GB-NAND-Internal/dp/B0786QNS9B) * SSD-Case: [amazon.ca](https://www.amazon.ca/UGREEN-Enclosure-External-Adapter-Housing/dp/B07D2BHVBD) From 6358d3631a95506c4fce843d174d7c05d87b78f9 Mon Sep 17 00:00:00 2001 From: rootzoll Date: Tue, 7 Jan 2020 17:11:21 +0100 Subject: [PATCH 12/12] #936 expanding sd card, detecting too small card --- home.admin/00infoLCD.sh | 4 ++++ home.admin/95finalSetup.sh | 4 ++++ home.admin/_bootstrap.provision.sh | 34 ++++++++++++++++++++++++++++++ home.admin/_bootstrap.sh | 2 ++ 4 files changed, 44 insertions(+) diff --git a/home.admin/00infoLCD.sh b/home.admin/00infoLCD.sh index bd6cd65e..7865c366 100755 --- a/home.admin/00infoLCD.sh +++ b/home.admin/00infoLCD.sh @@ -143,6 +143,10 @@ while : message=$(echo $message | awk '{printf( "%.2f%%", 100 * $1)}') fi + # when old data - improve message + elif [ "${state}" = "sdtoosmall" ]; then + message="SDCARD TOO SMALL - min 16GB" + # when old data - improve message elif [ "${state}" = "olddata" ]; then message="login for manual migration" diff --git a/home.admin/95finalSetup.sh b/home.admin/95finalSetup.sh index 516d07d6..5799796f 100755 --- a/home.admin/95finalSetup.sh +++ b/home.admin/95finalSetup.sh @@ -30,6 +30,10 @@ cp $logFile /home/admin/raspiblitz.setup.log echo "Setting the Name/Alias/Hostname .." sudo /home/admin/config.scripts/lnd.setname.sh ${hostname} +# expanding the root of the sd card +sudo raspi-config --expand-rootfs +sudo sed -i "s/^fsexpanded=.*/fsexpanded=1/g" /home/admin/raspiblitz.info + # mark setup is done sudo sed -i "s/^setupStep=.*/setupStep=100/g" /home/admin/raspiblitz.info diff --git a/home.admin/_bootstrap.provision.sh b/home.admin/_bootstrap.provision.sh index 00990e5c..c5354a21 100644 --- a/home.admin/_bootstrap.provision.sh +++ b/home.admin/_bootstrap.provision.sh @@ -26,6 +26,40 @@ if [ ${configExists} -eq 0 ]; then exit 1 fi +# check if file system was expanded to full capacity and sd card is bigger then 8GB +# see: https://github.com/rootzoll/raspiblitz/issues/936 +source ${infoFile} +if [ "${baseImage}" = "raspbian" ]; then + echo "### RASPBIAN: CHECKING SD CARD SIZE ###" >> ${logFile} + sudo sed -i "s/^message=.*/message='Checking SD Card'/g" ${infoFile} + byteSizeSdCard=$(df --output=size,source | grep "/dev/root" | tr -cd "[0-9]") + echo "Size in Bytes is: ${byteSizeSdCard}" >> ${logFile} + if [ ${byteSizeSdCard} -lt 8192000 ]; then + echo "SD Card filesystem is smaller then 8GB." >> ${logFile} + if [ ${fsexpanded} -eq 1 ]; then + echo "There was already an attempt to expand the fs, but still not bigger then 8GB." >> ${logFile} + echo "SD card seems to small - at least a 16GB card is needed. Display on LCD to user." >> ${logFile} + sudo sed -i "s/^state=.*/state=sdtoosmall/g" ${infoFile} + sudo sed -i "s/^message=.*/message='Min 16GB SD card needed'/g" ${infoFile} + exit 1 + else + echo "Try to expand SD card FS, display info and reboot." >> ${logFile} + sudo sed -i "s/^state=.*/state=reboot/g" ${infoFile} + sudo sed -i "s/^message=.*/message='Expanding SD Card'/g" ${infoFile} + sudo sed -i "s/^fsexpanded=.*/fsexpanded=1/g" ${infoFile} + sudo raspi-config --expand-rootfs + sleep 6 + sudo shutdown -r now + exit 0 + fi + else + echo "Size looks good. Bigger then 8GB card is used." >> ${logFile} + fi +else + echo "Baseimage is ${baseImage} - not raspbian, skipping the sd card size check." >> ${logFile} +fi + + # import config values sudo chmod 777 ${configFile} source ${configFile} diff --git a/home.admin/_bootstrap.sh b/home.admin/_bootstrap.sh index 21c7aa96..f2936bf7 100644 --- a/home.admin/_bootstrap.sh +++ b/home.admin/_bootstrap.sh @@ -50,6 +50,7 @@ sudo killall -3 fbi network="" chain="" setupStep=0 +fsexpanded=0 # try to load old values if available (overwrites defaults) source ${infoFile} 2>/dev/null @@ -60,6 +61,7 @@ echo "state=starting" > $infoFile echo "message=" >> $infoFile echo "network=${network}" >> $infoFile echo "chain=${chain}" >> $infoFile +echo "fsexpanded=${fsexpanded}" >> $infoFile echo "setupStep=${setupStep}" >> $infoFile if [ "${setupStep}" != "100" ]; then echo "hostname=${hostname}" >> $infoFile