mirror of
https://github.com/raspiblitz/raspiblitz.git
synced 2025-11-22 11:56:35 +01:00
Compare commits
14 Commits
lnd-update
...
fuclrum-me
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9c0034fe59 | ||
|
|
b384e047ca | ||
|
|
a54c2f67da | ||
|
|
494326ee71 | ||
|
|
6da56d5a0e | ||
|
|
8a5c91873a | ||
|
|
51344a51ea | ||
|
|
10547d7f4d | ||
|
|
faa6a982dd | ||
|
|
7b1ba1b0ab | ||
|
|
824aeac5db | ||
|
|
abd78a56a3 | ||
|
|
ef56363027 | ||
|
|
62f3baac5b |
@@ -10,11 +10,11 @@ Features:
|
||||
- New: Copy from old HDD/SSD/NVMe
|
||||
- New: Optional separation of Data & Storage/Blockchain drives with Auto-Expand for Proxmox
|
||||
- New: Bitcoin Knots 28.1 (as experimental option in SETTINGS ssh-menu)
|
||||
- Update: RaspberryOS arm64 base image 2024-11-19 (Debian 12 Bookworm) [details](https://downloads.raspberrypi.com/raspios_full_arm64/release_notes.txt)
|
||||
- Update: RaspberryOS arm64 base image 2025-05-13 (Debian 12 Bookworm) [details](https://downloads.raspberrypi.com/raspios_full_arm64/release_notes.txt)
|
||||
- Update: amd64 base image: debian-12.8.0-amd64-netinst.iso [details](https://www.debian.org/releases/stable/amd64/release-notes/ch-whats-new.en.html)
|
||||
- Update: Bitcoin Core v29.0 [details](https://github.com/bitcoin/bitcoin/blob/master/doc/release-notes/release-notes-29.0.md)
|
||||
- Update: LND v0.19.1-beta [details](https://github.com/lightningnetwork/lnd/releases/tag/v0.19.1-beta)
|
||||
- Update: LNbits 1.0.0 [details](https://github.com/lnbits/lnbits/releases/tag/v1.0.0)
|
||||
- Update: LNbits 1.1.0 [details](https://github.com/lnbits/lnbits/releases/tag/v1.1.0)
|
||||
- Update: AlbyHub v1.17.2 [details](https://github.com/getAlby/hub/releases/tag/v1.17.2)
|
||||
- Update: Lightning Terminal v0.14.1-alpha [details](https://github.com/lightninglabs/lightning-terminal/releases/tag/v0.14.1-alpha)
|
||||
- Update: Mempool 3.2.1 [details](hhttps://github.com/mempool/mempool/releases/tag/v3.2.1)
|
||||
|
||||
@@ -28,7 +28,7 @@ if [ "$1" != "-EXPORT" ] && [ "$1" != "EXPORT" ]; then
|
||||
fi
|
||||
|
||||
defaultRepo="raspiblitz" # user that hosts a `raspiblitz` repo
|
||||
defaultBranch="v1.11" # latest version branch
|
||||
defaultBranch="v1.12" # latest version branch
|
||||
|
||||
defaultAPIuser="fusion44"
|
||||
defaultAPIrepo="blitz_api"
|
||||
@@ -351,6 +351,14 @@ sudo sed -i '/^en_GB.UTF-8/s/^/#/' /etc/locale.gen
|
||||
sudo locale-gen
|
||||
echo -e "LANG=en_US.UTF-8\nLANGUAGE=en_US.UTF-8\nLC_ALL=en_US.UTF-8" | sudo tee /etc/default/locale > /dev/null
|
||||
|
||||
echo "*** Setting Fallback DNS ***"
|
||||
connName=$(nmcli -g GENERAL.CONNECTION device show eth0 2>/dev/null)
|
||||
echo "current nmcli eth0 connection (${connName})"
|
||||
if [ "${connName}" != "" ]; then
|
||||
echo "Adding DNS fallback servers ..."
|
||||
nmcli connection modify "${connName}" ipv4.dns "208.67.222.222,208.67.220.220,1.1.1.1" ipv4.dns-priority -1 ipv4.ignore-auto-dns no
|
||||
fi
|
||||
|
||||
echo "*** Remove unnecessary packages ***"
|
||||
unnecessary_packages=(libreoffice* oracle-java* chromium-browser nuscratch scratch sonic-pi plymouth python2 vlc* cups* libcups* libcamera* firefox* ffmpeg libpostproc* eom* evince*)
|
||||
for pkg in "${unnecessary_packages[@]}"; do
|
||||
@@ -364,8 +372,6 @@ done
|
||||
apt-get clean -y
|
||||
apt-get autoremove -y
|
||||
|
||||
grep -q "^nameserver 8.8.8.8$" /etc/resolv.conf || echo "nameserver 8.8.8.8" >> /etc/resolv.conf
|
||||
|
||||
echo -e "\n*** UPDATE Debian***" # add sources if not present
|
||||
echo -e "checking/adding sources ..."
|
||||
for SOURCE in "${REQUIRED_SOURCES[@]}"; do
|
||||
@@ -401,7 +407,7 @@ echo -e "\n*** SOFTWARE UPDATE ***"
|
||||
# sqlite3 -> database
|
||||
# fdisk -> create partitions
|
||||
# lsb-release -> needed to know which distro version we're running to add APT sources
|
||||
general_utils="sudo policykit-1 htop git curl bash-completion vim jq dphys-swapfile bsdmainutils autossh telnet vnstat parted dosfstools fbi sysbench build-essential dialog bc python3-dialog unzip whois fdisk lsb-release smartmontools rsyslog qrencode"
|
||||
general_utils="sudo policykit-1 htop git curl bash-completion vim jq dphys-swapfile bsdmainutils autossh telnet vnstat parted dosfstools fbi sysbench build-essential dialog bc python3-dialog unzip whois fdisk lsb-release smartmontools rsyslog qrencode dnsutils"
|
||||
# add btrfs-progs if not bookworm on aarch64
|
||||
[ "${architecture}" = "aarch64" ] && ! grep "12 (bookworm)" < /etc/os-release && general_utils="${general_utils} btrfs-progs"
|
||||
# python3-mako --> https://github.com/rootzoll/raspiblitz/issues/3441
|
||||
@@ -710,6 +716,8 @@ sudo -u admin chmod +x /home/admin/config.scripts/*.sh || exit 1
|
||||
sudo -u admin cp -r /home/admin/raspiblitz/home.admin/setup.scripts /home/admin/ || exit 1
|
||||
sudo -u admin chmod +x /home/admin/setup.scripts/*.sh || exit 1
|
||||
sudo -u admin git config --global --add safe.directory /home/admin/raspiblitz
|
||||
# Also configure safe.directory for root user in case root processes need to access the repo
|
||||
git config --global --add safe.directory /home/admin/raspiblitz
|
||||
|
||||
# install newest version of BlitzPy
|
||||
blitzpy_wheel=$(ls -tR /home/admin/raspiblitz/home.admin/BlitzPy/dist | grep -E "any.whl" | tail -n 1)
|
||||
|
||||
@@ -329,7 +329,7 @@ if [ "$action" = "status" ]; then
|
||||
fi
|
||||
|
||||
# Check SYSTEM DRIVE
|
||||
elif [ -d "${mountPath}/boot" ] && [ -d "${mountPath}/home/admin/raspiblitz" ] && [ ${size} -gt 7 ] && [ "${storageDevice}" != "" ]; then
|
||||
elif [ -d "${mountPath}/boot" ] && [ -d "${mountPath}/home/admin/raspiblitz" ] && [ ${size} -gt 7 ]; then
|
||||
|
||||
# check for unclean setups
|
||||
if [ -d "${mountPath}/app-storage" ]; then
|
||||
@@ -656,24 +656,24 @@ if [ "$action" = "status" ]; then
|
||||
|
||||
# STORAGE
|
||||
if [ ${#storageDevice} -gt 0 ]; then
|
||||
if [ ${storageSizeGB} -lt $(storageFullMinGB) ]; then
|
||||
if [ ${storageSizeGB} -lt ${storageFullMinGB} ]; then
|
||||
storageWarning='only-pruned'
|
||||
fi
|
||||
if [ ${storageSizeGB} -lt $(storagePrunedMinGB) ]; then
|
||||
if [ ${storageSizeGB} -lt ${storagePrunedMinGB} ]; then
|
||||
storageWarning='too-small'
|
||||
fi
|
||||
fi
|
||||
|
||||
# SYSTEM
|
||||
if [ ${#systemDevice} -gt 0 ] && [ ${bootFromStorage} -eq 0 ]; then
|
||||
if [ ${systemSizeGB} -lt $((systemMinGB - 1)) ]; then
|
||||
if [ ${systemSizeGB} -lt ${systemMinGB} ]; then
|
||||
systemWarning='too-small'
|
||||
fi
|
||||
fi
|
||||
|
||||
# DATA
|
||||
if [ ${#dataDevice} -gt 0 ]; then
|
||||
if [ ${dataSizeGB} -lt $((dataMinGB - 1)) ]; then
|
||||
if [ ${dataSizeGB} -lt ${dataMinGB} ]; then
|
||||
dataWarning='too-small'
|
||||
fi
|
||||
fi
|
||||
@@ -1854,11 +1854,15 @@ if [ "$action" = "recover" ] || [ "$action" = "clean" ]; then
|
||||
# get number of partions of device
|
||||
numPartitions=$(lsblk -no NAME /dev/${actionDevice} | grep -c "${actionDevicePartitionBase}")
|
||||
if [ ${numPartitions} -eq 3 ]; then
|
||||
if [ "${actionCreateSystemPartition}" == "1" ]; then
|
||||
echo "# .. formating boot & system partition" >> ${logFile}
|
||||
wipefs -a /dev/${actionDevicePartitionBase}1 >> ${logFile}
|
||||
mkfs.fat -F 32 /dev/${actionDevicePartitionBase}1 >> ${logFile}
|
||||
wipefs -a /dev/${actionDevicePartitionBase}2 >> ${logFile}
|
||||
mkfs -t ext4 /dev/${actionDevicePartitionBase}2 >> ${logFile}
|
||||
else
|
||||
echo "# dont format boot & system partition .. actionCreateSystemPartition(${actionCreateSystemPartition})" >> ${logFile}
|
||||
fi
|
||||
echo "storagePartition='${actionDevicePartitionBase}3'"
|
||||
echo "# storagePartition(${actionDevicePartitionBase}3)" >> ${logFile}
|
||||
else
|
||||
|
||||
@@ -188,6 +188,10 @@ if [ "$1" = "1" ] || [ "$1" = "on" ]; then
|
||||
GITHUB_USER="${defaultAPIuser}"
|
||||
GITHUB_REPO="${defaultAPIrepo}"
|
||||
activeBranch=$(git -C /home/admin/raspiblitz branch --show-current)
|
||||
if [ "${activeBranch}" == "" ]; then
|
||||
echo "# activeBranch not detected by git command, trying build script repo(${githubBranch})"
|
||||
activeBranch="${githubBranch}"
|
||||
fi
|
||||
echo "# activeBranch detected by raspiblitz repo: ${activeBranch}"
|
||||
if [[ "$activeBranch" == *"dev"* || "$activeBranch" != v* ]]; then
|
||||
echo "# RELEASE CANDIDATE: using dev branch"
|
||||
|
||||
@@ -54,6 +54,10 @@ if [ "$1" = "1" ] || [ "$1" = "on" ]; then
|
||||
GITHUB_USER="${defaultWEBUIuser}"
|
||||
GITHUB_REPO="${defaultWEBUIrepo}"
|
||||
activeBranch=$(git -C /home/admin/raspiblitz branch --show-current)
|
||||
if [ "${activeBranch}" == "" ]; then
|
||||
echo "# activeBranch not detected by git command, trying build script repo(${githubBranch})"
|
||||
activeBranch="${githubBranch}"
|
||||
fi
|
||||
echo "# activeBranch detected by raspiblitz repo: ${activeBranch}"
|
||||
# use dev branch when raspiblitz repo is n dev branch
|
||||
if [[ "$activeBranch" == *"dev"* || "$activeBranch" != v* ]]; then
|
||||
|
||||
@@ -14,6 +14,7 @@ if [ $# -eq 0 ] || [ "$1" = "-h" ] || [ "$1" = "-help" ]; then
|
||||
echo "bonus.fulcrum.sh getinfo -> FulcrumAdmin getinfo output"
|
||||
echo "bonus.fulcrum.sh status -> don't call in loops"
|
||||
echo "bonus.fulcrum.sh status-sync"
|
||||
echo "bonus.fulcrum.sh menu -> interactive SSH menu"
|
||||
echo "installs the version $fulcrumVersion"
|
||||
exit 1
|
||||
fi
|
||||
@@ -186,9 +187,7 @@ The fulcrum.service is not running.
|
||||
Please check the following debug info.
|
||||
" 8 48
|
||||
sudo journalctl -u fulcrum -n 100
|
||||
echo "Press ENTER to get back to main menu."
|
||||
read -r
|
||||
exit 0
|
||||
echo "Press Q to get back to the Fulcrum menu."
|
||||
fi
|
||||
|
||||
if [ ${initialSynced} -eq 0 ]; then
|
||||
@@ -199,7 +198,6 @@ This can take multiple days.
|
||||
Monitor the progress with the command:
|
||||
'sudo journalctl -fu fulcrum'
|
||||
" 11 48
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [ ${nginxTest} -eq 0 ]; then
|
||||
@@ -214,9 +212,8 @@ Check 'sudo nginx -t' for a detailed error message.
|
||||
sudo systemctl restart nginx
|
||||
fi
|
||||
/home/admin/config.scripts/blitz.web.sh
|
||||
echo "Press ENTER to get back to main menu."
|
||||
echo "Press ENTER to get back to the Fulcrum menu."
|
||||
read -r
|
||||
exit 0
|
||||
fi
|
||||
|
||||
OPTIONS=(
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
# https://github.com/lnbits/lnbits
|
||||
|
||||
# https://github.com/lnbits/lnbits/releases
|
||||
tag="v1.0.0"
|
||||
tag="v1.1.0"
|
||||
VERSION="${tag}"
|
||||
|
||||
# command info
|
||||
@@ -150,7 +150,7 @@ if [ "$1" = "menu" ]; then
|
||||
fundinginfo="on CLN "
|
||||
fi
|
||||
|
||||
text="https://${localIP}:${httpsPort}${authMethod}"
|
||||
text="https://${localIP}:${httpsPort}"
|
||||
|
||||
if [ ${#publicDomain} -gt 0 ]; then
|
||||
text="${text}
|
||||
@@ -169,23 +169,7 @@ TOR Browser Hidden Service address (QR see LCD):
|
||||
${toraddress}"
|
||||
fi
|
||||
|
||||
if [ ${#ip2torDomain} -gt 0 ]; then
|
||||
text="${text}\n
|
||||
IP2TOR+LetsEncrypt: https://${ip2torDomain}:${ip2torPort}
|
||||
SHA1 ${sslFingerprintTOR}\n
|
||||
https://${ip2torDomain}:${ip2torPort} ready for public use"
|
||||
elif [ ${#ip2torIP} -gt 0 ]; then
|
||||
text="${text}\n
|
||||
IP2TOR: https://${ip2torIP}:${ip2torPort}
|
||||
SHA1 ${sslFingerprintTOR}\n
|
||||
Consider adding a LetsEncrypt HTTPS Domain under OPTIONS."
|
||||
elif [ ${#publicDomain} -eq 0 ]; then
|
||||
text="${text}\n
|
||||
To enable easy reachability with normal browser from the outside
|
||||
Consider adding a IP2TOR Bridge under OPTIONS."
|
||||
fi
|
||||
|
||||
whiptail --title " LNbits ${fundinginfo}" --yes-button "OK" --no-button "OPTIONS" --yesno "${text}" 18 78
|
||||
whiptail --title " LNbits ${fundinginfo}" --yes-button "OK" --no-button "OPTIONS" --yesno "${text}" 15 78
|
||||
result=$?
|
||||
sudo /home/admin/config.scripts/blitz.display.sh hide
|
||||
echo "option (${result}) - please wait ..."
|
||||
@@ -439,10 +423,8 @@ if [ "$1" = "status" ]; then
|
||||
echo "httpsSelfsigned='1'" # TODO: change later if IP2Tor+LetsEncrypt is active
|
||||
echo "publicIP='${publicIP}'"
|
||||
|
||||
# auth method is to call with a certain useer id
|
||||
#admin_userid=$(sudo cat /home/lnbits/lnbits/.super_user)
|
||||
admin_userid=$(sudo cat /mnt/hdd/app-data/LNBits/data/.super_user)
|
||||
echo "authMethod='/wallet?usr=${admin_userid}'"
|
||||
# auth method is web login
|
||||
echo "authMethod='userdefined'"
|
||||
|
||||
# check funding source
|
||||
if [ "${LNBitsFunding}" == "" ]; then
|
||||
@@ -612,7 +594,6 @@ if [ "$1" = "prestart" ]; then
|
||||
fi
|
||||
|
||||
# protect the admin user id if exists
|
||||
# chmod 640 /home/lnbits/lnbits/.super_user 2>/dev/null
|
||||
chmod 640 /mnt/hdd/app-data/LNBits/data/.super_user 2>/dev/null
|
||||
|
||||
echo "# OK: prestart finished"
|
||||
|
||||
@@ -76,7 +76,7 @@ if [ "$1" == "prestart" ]; then
|
||||
echo "grpc-port=${portprefix}4772" | tee -a ${CLCONF}
|
||||
fi
|
||||
echo "# Make sure that the correct GRPC port is used for $NETWORK"
|
||||
sed -i "/^grpc-port=*/grpc-port=${portprefix}4772/g" ${CLCONF}
|
||||
sed -i "s/^grpc-port=.*/grpc-port=${portprefix}4772/g" ${CLCONF}
|
||||
else
|
||||
echo "# The cln-grpc plugin is not present but in config"
|
||||
sed -i "/^grpc-port/d" ${CLCONF}
|
||||
@@ -94,8 +94,8 @@ if [ "$1" == "prestart" ]; then
|
||||
echo "clnrest-host=0.0.0.0" | tee -a ${CLCONF}
|
||||
fi
|
||||
echo "# Make sure that the correct clnrest port is used for $NETWORK"
|
||||
sed -i "s/^clnrest-port=*/clnrest-port=${portprefix}7378/g" ${CLCONF}
|
||||
sed -i "s/^clnrest-host=*/clnrest-host=0.0.0.0/g" ${CLCONF}
|
||||
sed -i "s/^clnrest-port=.*/clnrest-port=${portprefix}7378/g" ${CLCONF}
|
||||
sed -i "s/^clnrest-host=.*/clnrest-host=0.0.0.0/g" ${CLCONF}
|
||||
else
|
||||
echo "# The clnrest plugin is not present but in config"
|
||||
sed -i "/^clnrest-port/d" ${CLCONF}
|
||||
|
||||
@@ -48,6 +48,7 @@ Do you want to set the fixed DNS 1.1.1.1 by Cloudflare (they claim they provide
|
||||
autoreboot=1
|
||||
else
|
||||
echo "# Ignoring DNS-Test fail"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user