epiccurious / bitcoin-core-node-builder

Spin up a secure Bitcoin Core node with ease.
Other
3 stars 0 forks source link
bitcoin bitcoin-api bitcoin-cli bitcoin-core bitcoin-qt bitcoin-wallet bitcoincore bitcoind

Bitcoin Core Node Builder

Create a secure Bitcoin Core node with ease.

NOTE: This code is still under development and not yet ready. Test at your own risk. You can track progress under the Minimum Viable Product milestone.

Table of Contents

Prerequisites

  1. An active internet connection
  2. A fresh install of any modern Linux distribution based on Debian like Ubuntu Desktop LTS
  3. curl, which you can install with sudo apt install -y curl

This script does not support macOS, 32-bit operating systems, or Arm-based hardware.

How to Run Node Builder

Open the Terminal and run the following command:

/bin/bash -c "$(curl -fsSL https://github.com/epiccurious/bitcoin-core-node-builder/raw/master/nodebuilder)"

NOTE: This code is still under development and not yet ready. Test at your own risk. You can track progress under the Minimum Viable Product milestone.

What Does This Script Do?

The script performs the following actions:

  1. Install system updates, reboot if necessary, then install dependencies.
  2. Download, validate, and extract Bitcoin Core.
  3. Set a prune for Bitcoin Core based on the disk free space.
  4. Create shortcuts for Bitcoin Core on the desktop and on the "Show Applications" list.
  5. Start Bitcoin Core.
  6. Prevent the system from sleeping, suspending, and hibernating.
  7. While the initial block download proceeds, display relevant info such as the percent synced, blocks left to sync, current chain tip date, and the free disk space remaining.
  8. After the initial block download completes, tell the user that the script has finished and end the script.

Which Files Does This Script Touch?

Before launching Bitcoin Core, this script modifies the following files:

YouTube Playlist

Follow the changes to this repository on our YouTube playlist.

Acknowledgements

Inspiration for this project came from these Open Source projects:

And from these guides:

License

This project is licensed under the terms of the MIT No Attribution license.