mirror of
https://github.com/mynodebtc/mynode.git
synced 2024-12-24 13:38:11 +00:00
Add Rock Pi 4 support
This commit is contained in:
parent
d243b27ce8
commit
ffb7b58e21
5
Makefile
5
Makefile
|
@ -66,6 +66,11 @@ setup_new_rockpro64: start_file_server out/base_images/rockpro64_base.img.gz roo
|
||||||
@cp -f setup/setup_device.sh out/setup_device.sh
|
@cp -f setup/setup_device.sh out/setup_device.sh
|
||||||
@/bin/bash scripts/setup_new_rockpro64.sh
|
@/bin/bash scripts/setup_new_rockpro64.sh
|
||||||
|
|
||||||
|
.PHONY: setup_new_rockpi4
|
||||||
|
setup_new_rockpi4: start_file_server out/base_images/rockpi4_base.img.gz rootfs
|
||||||
|
@cp -f setup/setup_device.sh out/setup_device.sh
|
||||||
|
@/bin/bash scripts/setup_new_rockpi4.sh
|
||||||
|
|
||||||
.PHONY: setup_new_raspi3
|
.PHONY: setup_new_raspi3
|
||||||
setup_new_raspi3: start_file_server out/base_images/raspi3_base.img.gz rootfs
|
setup_new_raspi3: start_file_server out/base_images/raspi3_base.img.gz rootfs
|
||||||
@cp -f setup/setup_device.sh out/setup_device.sh
|
@cp -f setup/setup_device.sh out/setup_device.sh
|
||||||
|
|
45
doc/setup_base_image_rockpi4.md
Normal file
45
doc/setup_base_image_rockpi4.md
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
# Setup Base Image (Rock Pi 4)
|
||||||
|
|
||||||
|
1. After Armbian Flash
|
||||||
|
|
||||||
|
- Open Terminal (no login)
|
||||||
|
- Change set root password to something like rootbolt
|
||||||
|
- Create admin user with password adminbolt
|
||||||
|
|
||||||
|
2. Login as admin
|
||||||
|
|
||||||
|
3. Delete root password and set admin pass to bolt
|
||||||
|
|
||||||
|
```sh
|
||||||
|
sudo passwd -d root
|
||||||
|
sudo passwd admin
|
||||||
|
```
|
||||||
|
|
||||||
|
4. Set hostname
|
||||||
|
|
||||||
|
```sh
|
||||||
|
echo "myNode" | sudo tee /etc/hostname
|
||||||
|
sudo sed -i 's/rockpi4-b/myNode/g' /etc/hosts
|
||||||
|
# OR armbian-config -> Personal -> Hostname
|
||||||
|
```
|
||||||
|
|
||||||
|
5. Update packages
|
||||||
|
|
||||||
|
```sh
|
||||||
|
sudo apt-get update
|
||||||
|
sudo apt-get -y upgrade
|
||||||
|
```
|
||||||
|
|
||||||
|
6. Install some necessary tools
|
||||||
|
|
||||||
|
```sh
|
||||||
|
sudo apt-get -y install network-manager tmux
|
||||||
|
```
|
||||||
|
|
||||||
|
7. Sync
|
||||||
|
|
||||||
|
```sh
|
||||||
|
sync
|
||||||
|
```
|
||||||
|
|
||||||
|
8. Make image now (if imaging)
|
|
@ -3,7 +3,7 @@
|
||||||
# DEPRECATED DEVICES: raspi3
|
# DEPRECATED DEVICES: raspi3
|
||||||
|
|
||||||
# Make each device
|
# Make each device
|
||||||
for i in 'raspi4' 'rock64' 'rockpro64' 'debian'; do
|
for i in 'raspi4' 'rock64' 'rockpro64' 'rockpi4' 'debian'; do
|
||||||
echo Creating root file system for $i
|
echo Creating root file system for $i
|
||||||
mkdir -p out/rootfs_$i/
|
mkdir -p out/rootfs_$i/
|
||||||
rsync -r -u rootfs/standard/* out/rootfs_$i/
|
rsync -r -u rootfs/standard/* out/rootfs_$i/
|
||||||
|
|
4
rootfs/rockpi4/etc/cron.d/armbian-truncate-logs
Normal file
4
rootfs/rockpi4/etc/cron.d/armbian-truncate-logs
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
|
||||||
|
|
||||||
|
# No reason to truncate, we use log rotate
|
||||||
|
# */15 * * * * root /usr/lib/armbian/armbian-truncate-logs
|
12
rootfs/rockpi4/etc/default/armbian-ramlog
Normal file
12
rootfs/rockpi4/etc/default/armbian-ramlog
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
# configuration values for the armbian-ram-logging service
|
||||||
|
#
|
||||||
|
# enable the armbian-ram-logging service?
|
||||||
|
ENABLED=true
|
||||||
|
#
|
||||||
|
# size of the tmpfs mount -- please keep in mind to adjust /etc/default/armbian-zram-config too when increasing
|
||||||
|
SIZE=150M
|
||||||
|
#
|
||||||
|
# use rsync instead of cp -r
|
||||||
|
# requires rsync installed, may provide better performance
|
||||||
|
# due to copying only new and changed files
|
||||||
|
USE_RSYNC=false
|
34
rootfs/rockpi4/etc/default/armbian-zram-config
Normal file
34
rootfs/rockpi4/etc/default/armbian-zram-config
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
# configuration values for the armbian-zram-config service
|
||||||
|
#
|
||||||
|
# enable the armbian-zram-config service?
|
||||||
|
ENABLED=false
|
||||||
|
|
||||||
|
# percentage of zram used as swap compared to physically available DRAM.
|
||||||
|
# Huge overcommitment (300) is possible and sometimes desirable. See
|
||||||
|
# https://forum.armbian.com/topic/5565-zram-vs-swap/?do=findComment&comment=61082
|
||||||
|
# and don't forget to adjust $MEM_LIMIT_PERCENTAGE below too.
|
||||||
|
# ZRAM_PERCENTAGE=50
|
||||||
|
|
||||||
|
# percentage of DRAM available to zram. If this amount is exceeded the zram
|
||||||
|
# devices used for swap simply behave as if the device is full. You need to
|
||||||
|
# adjust/increase this value only if you want to work with massive memory
|
||||||
|
# overcommitment (ZRAM_PERCENTAGE exceeding 150 for example)
|
||||||
|
# MEM_LIMIT_PERCENTAGE=50
|
||||||
|
|
||||||
|
# create how many zram devices max for swap
|
||||||
|
# ZRAM_MAX_DEVICES=4
|
||||||
|
|
||||||
|
# Which algorithm for zram based swapping. Seems lzo is best choice on ARM:
|
||||||
|
# https://forum.armbian.com/topic/8161-swap-on-sbc/?do=findComment&comment=61668
|
||||||
|
# SWAP_ALGORITHM=lzo
|
||||||
|
|
||||||
|
# Which algorithm to choose for zram based ramlog partition
|
||||||
|
# RAMLOG_ALGORITHM=zstd
|
||||||
|
|
||||||
|
# Which algorithm to choose for zram based /tmp
|
||||||
|
# TMP_ALGORITHM=zstd
|
||||||
|
|
||||||
|
# If defined a separate partition will be used as zram backing device. Be CAREFUL
|
||||||
|
# which partition you assign and read starting from CONFIG_ZRAM_WRITEBACK in
|
||||||
|
# https://www.kernel.org/doc/Documentation/blockdev/zram.txt
|
||||||
|
# ZRAM_BACKING_DEV=/dev/nvme0n2
|
BIN
rootfs/rockpi4/usr/bin/electrs
Executable file
BIN
rootfs/rockpi4/usr/bin/electrs
Executable file
Binary file not shown.
|
@ -269,7 +269,7 @@ if [ $IS_RASPI = 1 ]; then
|
||||||
if [ $IS_RASPI4_ARM64 = 1 ]; then
|
if [ $IS_RASPI4_ARM64 = 1 ]; then
|
||||||
ARCH="aarch64-linux-gnu"
|
ARCH="aarch64-linux-gnu"
|
||||||
fi
|
fi
|
||||||
elif [ $IS_ROCK64 = 1 ] || [ $IS_ROCKPRO64 = 1 ]; then
|
elif [ $IS_ROCK64 = 1 ] || [ $IS_ROCKPRO64 = 1 ] || [ $IS_ROCKPI4 = 1 ]; then
|
||||||
ARCH="aarch64-linux-gnu"
|
ARCH="aarch64-linux-gnu"
|
||||||
elif [ $IS_X86 = 1 ]; then
|
elif [ $IS_X86 = 1 ]; then
|
||||||
ARCH="x86_64-linux-gnu"
|
ARCH="x86_64-linux-gnu"
|
||||||
|
@ -324,7 +324,7 @@ LND_ARCH="lnd-linux-armv7"
|
||||||
if [ $IS_X86 = 1 ]; then
|
if [ $IS_X86 = 1 ]; then
|
||||||
LND_ARCH="lnd-linux-amd64"
|
LND_ARCH="lnd-linux-amd64"
|
||||||
fi
|
fi
|
||||||
if [ $IS_RASPI4_ARM64 = 1 ]; then
|
if [ $IS_RASPI4_ARM64 = 1 ] || [ $IS_ROCK64 = 1 ] || [ $IS_ROCKPRO64 = 1 ] || [ $IS_ROCKPI4 = 1 ]; then
|
||||||
LND_ARCH="lnd-linux-arm64"
|
LND_ARCH="lnd-linux-arm64"
|
||||||
fi
|
fi
|
||||||
LND_UPGRADE_URL=https://github.com/lightningnetwork/lnd/releases/download/$LND_VERSION/$LND_ARCH-$LND_VERSION.tar.gz
|
LND_UPGRADE_URL=https://github.com/lightningnetwork/lnd/releases/download/$LND_VERSION/$LND_ARCH-$LND_VERSION.tar.gz
|
||||||
|
|
|
@ -59,7 +59,8 @@ if [ ! -f /var/lib/mynode/.expanded_rootfs ]; then
|
||||||
raspi-config --expand-rootfs
|
raspi-config --expand-rootfs
|
||||||
touch /var/lib/mynode/.expanded_rootfs
|
touch /var/lib/mynode/.expanded_rootfs
|
||||||
fi
|
fi
|
||||||
if [ $IS_ROCK64 = 1 ] || [ $IS_ROCKPRO64 = 1 ]; then
|
#if [ $IS_ROCK64 = 1 ] || [ $IS_ROCKPRO64 = 1 ] || [ $IS_ROCKPI4 = 1 ]; then
|
||||||
|
if [ $IS_ARMBIAN = 1 ]; then
|
||||||
/usr/lib/armbian/armbian-resize-filesystem start
|
/usr/lib/armbian/armbian-resize-filesystem start
|
||||||
touch /var/lib/mynode/.expanded_rootfs
|
touch /var/lib/mynode/.expanded_rootfs
|
||||||
fi
|
fi
|
||||||
|
@ -487,18 +488,7 @@ fi
|
||||||
chown -R joinmarket:joinmarket /mnt/hdd/mynode/joinmarket
|
chown -R joinmarket:joinmarket /mnt/hdd/mynode/joinmarket
|
||||||
|
|
||||||
# Setup Mempool
|
# Setup Mempool
|
||||||
cp -f /usr/share/mynode/mempool-docker-compose.yml /mnt/hdd/mynode/mempool/docker-compose.yml
|
# Moved to mynode_pre_mempool.sh
|
||||||
if [ ! -f /mnt/hdd/mynode/mempool/.env ]; then
|
|
||||||
cp -f /usr/share/mynode/mempool.env /mnt/hdd/mynode/mempool/.env
|
|
||||||
fi
|
|
||||||
if [ -f /mnt/hdd/mynode/mempool/.env ]; then
|
|
||||||
sed -i "s/VERSION=.*/VERSION=$MEMPOOL_VERSION/g" /mnt/hdd/mynode/mempool/.env
|
|
||||||
fi
|
|
||||||
if [ $IS_RASPI -eq 1 ] && [ $IS_RASPI4_ARM64 -eq 0 ]; then
|
|
||||||
sed -i "s|MARIA_DB_IMAGE=.*|MARIA_DB_IMAGE=hypriot/rpi-mysql:latest|g" /mnt/hdd/mynode/mempool/.env
|
|
||||||
else
|
|
||||||
sed -i "s|MARIA_DB_IMAGE=.*|MARIA_DB_IMAGE=mariadb:10.5.8|g" /mnt/hdd/mynode/mempool/.env
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Setup Netdata
|
# Setup Netdata
|
||||||
mkdir -p /opt/mynode/netdata
|
mkdir -p /opt/mynode/netdata
|
||||||
|
@ -541,9 +531,6 @@ fi
|
||||||
if [ -f /mnt/hdd/mynode/lit/lit.conf ]; then
|
if [ -f /mnt/hdd/mynode/lit/lit.conf ]; then
|
||||||
sed -i "s/faraday.bitcoin.password=.*/faraday.bitcoin.password=$BTCRPCPW/g" /mnt/hdd/mynode/lit/lit.conf
|
sed -i "s/faraday.bitcoin.password=.*/faraday.bitcoin.password=$BTCRPCPW/g" /mnt/hdd/mynode/lit/lit.conf
|
||||||
fi
|
fi
|
||||||
if [ -f /mnt/hdd/mynode/mempool/.env ]; then
|
|
||||||
sed -i "s/BITCOIN_RPC_PASS=.*/BITCOIN_RPC_PASS=$BTCRPCPW/g" /mnt/hdd/mynode/mempool/.env
|
|
||||||
fi
|
|
||||||
echo "BTC_RPC_PASSWORD=$BTCRPCPW" > /mnt/hdd/mynode/settings/.btcrpc_environment
|
echo "BTC_RPC_PASSWORD=$BTCRPCPW" > /mnt/hdd/mynode/settings/.btcrpc_environment
|
||||||
chown bitcoin:bitcoin /mnt/hdd/mynode/settings/.btcrpc_environment
|
chown bitcoin:bitcoin /mnt/hdd/mynode/settings/.btcrpc_environment
|
||||||
if [ -f /mnt/hdd/mynode/bitcoin/bitcoin.conf ]; then
|
if [ -f /mnt/hdd/mynode/bitcoin/bitcoin.conf ]; then
|
||||||
|
|
|
@ -53,9 +53,9 @@ rm -f /usr/share/mynode/beta_version
|
||||||
# Extract to temp location
|
# Extract to temp location
|
||||||
tar -xf /opt/mynode_release_latest.tar.gz -C /opt/upgrade/
|
tar -xf /opt/mynode_release_latest.tar.gz -C /opt/upgrade/
|
||||||
|
|
||||||
# Install files
|
# Install files (migrate all to rsync?)
|
||||||
VERSION=$(cat /opt/upgrade/out/rootfs_*/usr/share/mynode/version)
|
VERSION=$(cat /opt/upgrade/out/rootfs_*/usr/share/mynode/version)
|
||||||
if [ $IS_X86 = 1 ] || [ $IS_RASPI4_ARM64 = 1 ]; then
|
if [ $IS_X86 = 1 ] || [ $IS_RASPI4_ARM64 = 1 ] || [ $IS_ROCKPI4 = 1 ]; then
|
||||||
rsync -r -K /opt/upgrade/out/rootfs_${DEVICE_TYPE}/* / 2>&1
|
rsync -r -K /opt/upgrade/out/rootfs_${DEVICE_TYPE}/* / 2>&1
|
||||||
else
|
else
|
||||||
cp -rf /opt/upgrade/out/rootfs_${DEVICE_TYPE}/* / 2>&1
|
cp -rf /opt/upgrade/out/rootfs_${DEVICE_TYPE}/* / 2>&1
|
||||||
|
|
|
@ -2,16 +2,31 @@ version: "3.7"
|
||||||
|
|
||||||
services:
|
services:
|
||||||
web:
|
web:
|
||||||
|
environment:
|
||||||
|
FRONTEND_HTTP_PORT: "8080"
|
||||||
|
BACKEND_MAINNET_HTTP_HOST: "api"
|
||||||
image: mempool/frontend:${VERSION}
|
image: mempool/frontend:${VERSION}
|
||||||
restart: on-failure
|
restart: on-failure
|
||||||
stop_grace_period: 1m
|
stop_grace_period: 1m
|
||||||
command: "./wait-for db:3306 --timeout=720 -- nginx -g 'daemon off;'"
|
command: "./wait-for db:3306 --timeout=720 -- nginx -g 'daemon off;'"
|
||||||
ports:
|
ports:
|
||||||
- 4080:8080
|
- 4080:8080
|
||||||
environment:
|
|
||||||
FRONTEND_HTTP_PORT: "8080"
|
|
||||||
BACKEND_MAINNET_HTTP_HOST: "api"
|
|
||||||
api:
|
api:
|
||||||
|
environment:
|
||||||
|
MEMPOOL_BACKEND: "electrum"
|
||||||
|
CORE_RPC_HOST: "172.26.0.1"
|
||||||
|
CORE_RPC_PORT: "8332"
|
||||||
|
CORE_RPC_USERNAME: "mynode"
|
||||||
|
CORE_RPC_PASSWORD: "${BITCOIN_RPC_PASS}"
|
||||||
|
ELECTRUM_HOST: "172.26.0.1"
|
||||||
|
ELECTRUM_PORT: "50001"
|
||||||
|
ELECTRUM_TLS: "false"
|
||||||
|
DATABASE_ENABLED: "true"
|
||||||
|
DATABASE_HOST: "db"
|
||||||
|
DATABASE_DATABASE: "mempool"
|
||||||
|
DATABASE_USERNAME: "mempool"
|
||||||
|
DATABASE_PASSWORD: "mempool"
|
||||||
|
STATISTICS_ENABLED: "true"
|
||||||
image: mempool/backend:${VERSION}
|
image: mempool/backend:${VERSION}
|
||||||
user: 0:0
|
user: 0:0
|
||||||
restart: on-failure
|
restart: on-failure
|
||||||
|
@ -19,31 +34,22 @@ services:
|
||||||
command: "./wait-for-it.sh db:3306 --timeout=720 --strict -- ./start.sh"
|
command: "./wait-for-it.sh db:3306 --timeout=720 --strict -- ./start.sh"
|
||||||
volumes:
|
volumes:
|
||||||
- /mnt/hdd/mynode/mempool/data:/backend/cache
|
- /mnt/hdd/mynode/mempool/data:/backend/cache
|
||||||
environment:
|
|
||||||
RPC_HOST: "172.17.0.1"
|
|
||||||
RPC_PORT: "8332"
|
|
||||||
RPC_USER: "mynode"
|
|
||||||
RPC_PASS: "${BITCOIN_RPC_PASS}"
|
|
||||||
ELECTRUM_HOST: "172.17.0.1"
|
|
||||||
ELECTRUM_PORT: "50001"
|
|
||||||
ELECTRUM_TLS: "false"
|
|
||||||
MYSQL_HOST: "db"
|
|
||||||
MYSQL_PORT: "3306"
|
|
||||||
MYSQL_DATABASE: "mempool"
|
|
||||||
MYSQL_USER: "mempool"
|
|
||||||
MYSQL_PASS: "mempool"
|
|
||||||
BACKEND_MAINNET_HTTP_PORT: "8999"
|
|
||||||
MEMPOOL_CLEAR_PROTECTION_MINUTES: "20"
|
|
||||||
CACHE_DIR: "/backend/cache/"
|
|
||||||
db:
|
db:
|
||||||
|
environment:
|
||||||
|
MYSQL_DATABASE: "mempool"
|
||||||
|
MYSQL_USER: "mempool"
|
||||||
|
MYSQL_PASSWORD: "mempool"
|
||||||
|
MYSQL_ROOT_PASSWORD: "admin"
|
||||||
image: ${MARIA_DB_IMAGE}
|
image: ${MARIA_DB_IMAGE}
|
||||||
restart: on-failure
|
restart: on-failure
|
||||||
stop_grace_period: 1m
|
stop_grace_period: 1m
|
||||||
volumes:
|
volumes:
|
||||||
- /mnt/hdd/mynode/mempool/mysql/data:/var/lib/mysql
|
- /mnt/hdd/mynode/mempool/mysql/data:/var/lib/mysql
|
||||||
- /mnt/hdd/mynode/mempool/mysql/db-scripts:/docker-entrypoint-initdb.d
|
|
||||||
environment:
|
networks:
|
||||||
MYSQL_DATABASE: "mempool"
|
default:
|
||||||
MYSQL_USER: "mempool"
|
driver: bridge
|
||||||
MYSQL_PASSWORD: "mempool"
|
ipam:
|
||||||
MYSQL_ROOT_PASSWORD: "admin"
|
driver: default
|
||||||
|
config:
|
||||||
|
- subnet: 172.26.0.1/24
|
||||||
|
|
|
@ -8,6 +8,7 @@ IS_RASPI=0
|
||||||
IS_RASPI3=0
|
IS_RASPI3=0
|
||||||
IS_RASPI4=0
|
IS_RASPI4=0
|
||||||
IS_RASPI4_ARM64=0
|
IS_RASPI4_ARM64=0
|
||||||
|
IS_ROCKPI4=0
|
||||||
IS_X86=0
|
IS_X86=0
|
||||||
IS_32_BIT=0
|
IS_32_BIT=0
|
||||||
IS_64_BIT=0
|
IS_64_BIT=0
|
||||||
|
@ -36,12 +37,18 @@ elif [[ $MODEL == *"Raspberry Pi 4"* ]]; then
|
||||||
IS_32_BIT=0
|
IS_32_BIT=0
|
||||||
IS_64_BIT=1
|
IS_64_BIT=1
|
||||||
fi
|
fi
|
||||||
|
elif [[ $MODEL == *"ROCK Pi 4"* ]]; then
|
||||||
|
IS_ARMBIAN=1
|
||||||
|
IS_ROCKPI4=1
|
||||||
|
IS_64_BIT=1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ $IS_RASPI3 -eq 1 ]; then
|
if [ $IS_RASPI3 -eq 1 ]; then
|
||||||
DEVICE_TYPE="raspi3"
|
DEVICE_TYPE="raspi3"
|
||||||
elif [ $IS_RASPI4 -eq 1 ]; then
|
elif [ $IS_RASPI4 -eq 1 ]; then
|
||||||
DEVICE_TYPE="raspi4"
|
DEVICE_TYPE="raspi4"
|
||||||
|
elif [ $IS_ROCKPI4 -eq 1 ]; then
|
||||||
|
DEVICE_TYPE="rockpi4"
|
||||||
elif [ $IS_ROCK64 -eq 1 ]; then
|
elif [ $IS_ROCK64 -eq 1 ]; then
|
||||||
DEVICE_TYPE="rock64"
|
DEVICE_TYPE="rock64"
|
||||||
elif [ $IS_ROCKPRO64 -eq 1 ]; then
|
elif [ $IS_ROCKPRO64 -eq 1 ]; then
|
||||||
|
|
49
scripts/setup_new_rockpi4.sh
Executable file
49
scripts/setup_new_rockpi4.sh
Executable file
|
@ -0,0 +1,49 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
LOCAL_IP=$(python ./scripts/get_local_ip.py)
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "Finished updating rootfs and other files!"
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
clear
|
||||||
|
echo "Step 1: "
|
||||||
|
echo " Flash SD Card with Rock Pi 4 Image: out/base_images/rockpi4_base.img.gz"
|
||||||
|
echo " OR"
|
||||||
|
echo " If you would rather create your own base image, follow the"
|
||||||
|
echo " manual instructions in doc/setup_base_image_rockpi4.md"
|
||||||
|
echo ""
|
||||||
|
echo "Press a key when complete..."
|
||||||
|
read -n 1
|
||||||
|
|
||||||
|
clear
|
||||||
|
echo "Step 2: "
|
||||||
|
echo " Insert SD Card into your Rock Pi 4 and boot the device"
|
||||||
|
echo ""
|
||||||
|
echo "Press a key when complete..."
|
||||||
|
read -n 1
|
||||||
|
|
||||||
|
clear
|
||||||
|
echo "Step 3: "
|
||||||
|
echo " Login to device with username 'admin' and password 'bolt'"
|
||||||
|
echo " Run the following commands. Use bolt at password prompts."
|
||||||
|
echo " wget http://${LOCAL_IP}:8000/setup_device.sh -O setup_device.sh"
|
||||||
|
echo " chmod +x setup_device.sh"
|
||||||
|
echo " tmux new-session -s mynode sudo ./setup_device.sh ${LOCAL_IP}"
|
||||||
|
echo ""
|
||||||
|
echo "Press a key when complete..."
|
||||||
|
read -n 1
|
||||||
|
|
||||||
|
clear
|
||||||
|
echo "Step 4:"
|
||||||
|
echo " Reboot your device."
|
||||||
|
echo ""
|
||||||
|
echo "Press a key when complete..."
|
||||||
|
read -n 1
|
||||||
|
|
||||||
|
clear
|
||||||
|
echo "Congratulations! Your device is now ready!"
|
||||||
|
echo " Access it via a web browser at http://mynode.local/ or http://<device ip>/"
|
||||||
|
echo " Access it via SSH using the default credentials: admin / bolt"
|
||||||
|
echo " You should change your password on the settings page in the web GUI"
|
||||||
|
echo ""
|
|
@ -22,6 +22,7 @@ IS_RASPI=0
|
||||||
IS_RASPI3=0
|
IS_RASPI3=0
|
||||||
IS_RASPI4=0
|
IS_RASPI4=0
|
||||||
IS_RASPI4_ARM64=0
|
IS_RASPI4_ARM64=0
|
||||||
|
IS_ROCKPI4=0
|
||||||
IS_X86=0
|
IS_X86=0
|
||||||
IS_32_BIT=0
|
IS_32_BIT=0
|
||||||
IS_64_BIT=0
|
IS_64_BIT=0
|
||||||
|
@ -51,8 +52,13 @@ elif [[ $MODEL == *"Raspberry Pi 4"* ]]; then
|
||||||
IS_32_BIT=0
|
IS_32_BIT=0
|
||||||
IS_64_BIT=1
|
IS_64_BIT=1
|
||||||
fi
|
fi
|
||||||
|
elif [[ $MODEL == *"ROCK Pi 4"* ]]; then
|
||||||
|
IS_ARMBIAN=1
|
||||||
|
IS_ROCKPI4=1
|
||||||
|
IS_64_BIT=1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
if [ $IS_UNKNOWN = 1 ]; then
|
if [ $IS_UNKNOWN = 1 ]; then
|
||||||
echo "UNKNOWN DEVICE TYPE"
|
echo "UNKNOWN DEVICE TYPE"
|
||||||
exit 1
|
exit 1
|
||||||
|
@ -102,6 +108,8 @@ elif [ $IS_RASPI3 = 1 ]; then
|
||||||
TARBALL="mynode_rootfs_raspi3.tar.gz"
|
TARBALL="mynode_rootfs_raspi3.tar.gz"
|
||||||
elif [ $IS_RASPI4 = 1 ]; then
|
elif [ $IS_RASPI4 = 1 ]; then
|
||||||
TARBALL="mynode_rootfs_raspi4.tar.gz"
|
TARBALL="mynode_rootfs_raspi4.tar.gz"
|
||||||
|
elif [ $IS_ROCKPI4 = 1 ]; then
|
||||||
|
TARBALL="mynode_rootfs_rockpi4.tar.gz"
|
||||||
elif [ $IS_X86 = 1 ]; then
|
elif [ $IS_X86 = 1 ]; then
|
||||||
TARBALL="mynode_rootfs_debian.tar.gz"
|
TARBALL="mynode_rootfs_debian.tar.gz"
|
||||||
fi
|
fi
|
||||||
|
@ -328,7 +336,7 @@ if [ $IS_RASPI = 1 ]; then
|
||||||
if [ $IS_RASPI4_ARM64 = 1 ]; then
|
if [ $IS_RASPI4_ARM64 = 1 ]; then
|
||||||
ARCH="aarch64-linux-gnu"
|
ARCH="aarch64-linux-gnu"
|
||||||
fi
|
fi
|
||||||
elif [ $IS_ROCK64 = 1 ] || [ $IS_ROCKPRO64 = 1 ]; then
|
elif [ $IS_ROCK64 = 1 ] || [ $IS_ROCKPRO64 = 1 ] || [ $IS_ROCKPI4 = 1 ]; then
|
||||||
ARCH="aarch64-linux-gnu"
|
ARCH="aarch64-linux-gnu"
|
||||||
elif [ $IS_X86 = 1 ]; then
|
elif [ $IS_X86 = 1 ]; then
|
||||||
ARCH="x86_64-linux-gnu"
|
ARCH="x86_64-linux-gnu"
|
||||||
|
@ -382,7 +390,7 @@ LND_ARCH="lnd-linux-armv7"
|
||||||
if [ $IS_X86 = 1 ]; then
|
if [ $IS_X86 = 1 ]; then
|
||||||
LND_ARCH="lnd-linux-amd64"
|
LND_ARCH="lnd-linux-amd64"
|
||||||
fi
|
fi
|
||||||
if [ $IS_RASPI4_ARM64 = 1 ]; then
|
if [ $IS_RASPI4_ARM64 = 1 ] || [ $IS_ROCK64 = 1 ] || [ $IS_ROCKPRO64 = 1 ] || [ $IS_ROCKPI4 = 1 ]; then
|
||||||
LND_ARCH="lnd-linux-arm64"
|
LND_ARCH="lnd-linux-arm64"
|
||||||
fi
|
fi
|
||||||
LND_UPGRADE_URL=https://github.com/lightningnetwork/lnd/releases/download/$LND_VERSION/$LND_ARCH-$LND_VERSION.tar.gz
|
LND_UPGRADE_URL=https://github.com/lightningnetwork/lnd/releases/download/$LND_VERSION/$LND_ARCH-$LND_VERSION.tar.gz
|
||||||
|
@ -902,12 +910,7 @@ update-alternatives --set ip6tables /usr/sbin/ip6tables-legacy || true
|
||||||
|
|
||||||
|
|
||||||
# Install files (downloaded and extracted earlier)
|
# Install files (downloaded and extracted earlier)
|
||||||
if [ $IS_X86 = 1 ] || [ $IS_RASPI4_ARM64 = 1 ]; then
|
rsync -r -K /tmp/upgrade/out/rootfs_*/* /
|
||||||
rsync -r -K /tmp/upgrade/out/rootfs_*/* /
|
|
||||||
else
|
|
||||||
cp -rf /tmp/upgrade/out/rootfs_*/* /
|
|
||||||
fi
|
|
||||||
sleep 1
|
|
||||||
sync
|
sync
|
||||||
sleep 1
|
sleep 1
|
||||||
|
|
||||||
|
@ -965,17 +968,6 @@ systemctl enable corsproxy_btcrpc
|
||||||
systemctl enable usb_extras
|
systemctl enable usb_extras
|
||||||
|
|
||||||
|
|
||||||
# Regenerate MAC Address for Armbian devices
|
|
||||||
if [ $IS_ARMBIAN = 1 ]; then
|
|
||||||
. /usr/lib/armbian/armbian-common
|
|
||||||
CONNECTION="$(nmcli -f UUID,ACTIVE,DEVICE,TYPE connection show --active | grep ethernet | tail -n1)"
|
|
||||||
UUID=$(awk -F" " '/ethernet/ {print $1}' <<< "${CONNECTION}")
|
|
||||||
get_random_mac
|
|
||||||
nmcli connection modify $UUID ethernet.cloned-mac-address $MACADDR
|
|
||||||
nmcli connection modify $UUID -ethernet.mac-address ""
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
||||||
# Disable services
|
# Disable services
|
||||||
systemctl disable hitch || true
|
systemctl disable hitch || true
|
||||||
systemctl disable mongodb || true
|
systemctl disable mongodb || true
|
||||||
|
@ -993,8 +985,8 @@ rm -rf /tmp/*
|
||||||
rm -rf ~/setup_device.sh
|
rm -rf ~/setup_device.sh
|
||||||
rm -rf /etc/motd # Remove simple motd for update-motd.d
|
rm -rf /etc/motd # Remove simple motd for update-motd.d
|
||||||
|
|
||||||
# Reset MAC address for Armbian devices
|
# Regenerate MAC address for some Armbian devices
|
||||||
if [ $IS_ARMBIAN = 1 ] ; then
|
if [ $IS_ROCK64 = 1 ] || [ $IS_ROCKPRO64 = 1 ] ; then
|
||||||
. /usr/lib/armbian/armbian-common
|
. /usr/lib/armbian/armbian-common
|
||||||
CONNECTION="$(nmcli -f UUID,ACTIVE,DEVICE,TYPE connection show --active | tail -n1)"
|
CONNECTION="$(nmcli -f UUID,ACTIVE,DEVICE,TYPE connection show --active | tail -n1)"
|
||||||
UUID=$(awk -F" " '/ethernet/ {print $1}' <<< "${CONNECTION}")
|
UUID=$(awk -F" " '/ethernet/ {print $1}' <<< "${CONNECTION}")
|
||||||
|
|
Loading…
Reference in New Issue
Block a user