Minimum requirements:
- ARMv8 or x86 processor (64 bit)
- 1 GB RAM
- 500 GB HDD
- Python >=3.9 (see how to upgrade below )
Desirable:
- > 2GB DDR3 ECC RAM (8GB+ if using ZFS)
- USB 3.0 / SATA / PCIE / NVME connectors
- SSD - multiple disks for redundancy
Specifications of the tested hardware: hw_comparison.md
All testers are welcome. Open an issue for your specific board to collaborate and share your experience.
Instructions to run a RaspiBlitz as a VM on a Linux host machine.
The process is similar if you want to run RaspiBlitz on the bare metal.
Tested with:
- Debian image in VirtualBox and linux virt-manager / cockpit-machines
- Ubuntu image in VirtualBox and linux virt-manager / cockpit-machines
- Debian image in VirtualBox raspiblitz#2756 (comment)
- TrueNAS (FreeBSD bhyve) with an Ubuntu VM: raspiblitz#2104 (comment)
- Download and install the base OS on an at least 32GB drive
- Debian is the most tested and is closest to the RaspberryOS: https://www.debian.org/distrib/
- Ubuntu should work, but less tested
- To just experiment can load a virtualbox image from: https://www.osboxes.org/debian/ or https://www.osboxes.org/ubuntu.
These not need installation, password:osboxes.org
-
Run the build script in the terminal of the guest OS (with sudo access):
# download the build script wget https://raw.githubusercontent.com/rootzoll/raspiblitz/dev/build_sdcard.sh # run sudo bash build_sdcard.sh -f true -b dev -d headless -t false -w off # Options: # -h, --help this help info # -i, --interaction [0|1] interaction before proceeding with exection (default: 1) # -f, --fatpack [0|1] fatpack mode (default: 1) # -u, --github-user [rootzoll|other] github user to be checked from the repo (default: rootzoll) # -b, --branch [v1.7|v1.8] branch to be built on (default: v1.7) # -d, --display [lcd|hdmi|headless] display class (default: lcd) # -t, --tweak-boot-drive [0|1] tweak boot drives (default: 1) # -w, --wifi-region [off|US|GB|other] wifi iso code (default: US) or 'off'
-
Switch off when ready
-
Attach an other disk (can be even small if you prune or stop bitcoind manually.
The second virtual disk will be used as the BLOCKCHAIN drive.
This makes that data portable and independent from the OS similar to the combination of the SDcard and separate SSD.
- create a raw image of 500+ GB for best compatibility
- if there are permission issues try to symlink the disk image to
/var/lib/libvirt/images
Many SBC-s are supported: https://www.armbian.com/download/
To verify the downloaded image follow: https://docs.armbian.com/User-Guide_Getting-Started/#how-to-check-download-authenticity
Tested on:
- Odroid XU4 / HC1 / HC2 with the Armbian Buster image from https://www.armbian.com/odroid-xu4/
Burn the image to the SDcard with Etcher.
Assemble and boot.
password: 1234
Follow the instructions in the terminal. Set the new password to raspiblitz
and name the new user admin
to keep in line with the rest of the setup.
Continue with building the SDcard: https://github.com/rootzoll/raspiblitz#build-the-sd-card-image
A common distro to be supplied by the manufacturer for various boards.
Tested on:
- Odroid XU4 with ubuntu-18.04.1-4.14-minimal image from https://de.eu.odroid.in/ubuntu_18.04lts/XU3_XU4_MC1_HC1_HC2
- Nvidia Jetson Nano with Ubuntu Bionic image from https://developer.nvidia.com/embedded/learn/get-started-jetson-nano-devkit#write
Burn the image to the SDCard with Etcher.
Assemble and boot.
password: odroid
apt-get update
apt-get upgrade
if there is an error:
E: Could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource temporarily unavailable)
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another process using it?
run:
reboot
and update as above
Continue with building the SDcard: https://github.com/rootzoll/raspiblitz#build-the-sd-card-image
# select version
pythonVersion="3.10.1"
majorPythonVersion=$(echo "$pythonVersion" | awk -F. '{print $1"."$2}' )
# update and upgrade
sudo apt update
sudo apt upgrade -y
# dependencies
sudo apt install wget software-properties-common build-essential libnss3-dev zlib1g-dev libgdbm-dev libncurses5-dev libssl-dev libffi-dev libreadline-dev libsqlite3-dev libbz2-dev -y
# download
wget https://www.python.org/ftp/python/${pythonVersion}/Python-${pythonVersion}.tgz
# optional signature for verification
wget https://www.python.org/ftp/python/${pythonVersion}/Python-${pythonVersion}.tgz.asc
# get PGP pubkey of Pablo Galindo Salgado
gpg --recv-key CFDCA245B1043CF2A5F97865FFE87404168BD847
# check for: Good signature from "Pablo Galindo Salgado <[email protected]>"
gpg --verify Python-${pythonVersion}.tgz.asc
# unzip
tar xvf Python-${pythonVersion}.tgz
cd Python-${pythonVersion}
# configure
./configure --enable-optimizations
# install
sudo make altinstall
# move the python binary to the expected directory
sudo mv $(which python${majorPythonVersion}) /usr/bin/
# check
ls -la /usr/bin/python${majorPythonVersion}