raspiblitz/home.admin/config.scripts/blitz.preparerelease.sh

94 lines
3.1 KiB
Bash
Raw Normal View History

2019-01-15 02:37:14 +01:00
#!/bin/bash
# Just run this script once after a fresh sd card build
# to prepare the image for release as a downloadable sd card image
2024-04-08 11:48:12 +02:00
# determine correct raspberrypi boot drive path (that easy to access when sd card is insert into laptop)
raspi_bootdir=""
if [ -d /boot/firmware ]; then
raspi_bootdir="/boot/firmware"
elif [ -d /boot ]; then
raspi_bootdir="/boot"
fi
echo "# raspi_bootdir(${raspi_bootdir})"
# stop background services
sudo systemctl stop background.service
sudo systemctl stop background.scan.service
2024-03-21 13:50:32 +01:00
# remove stop flag (if exists)
echo "deleting stop flag .."
2024-04-08 11:48:12 +02:00
sudo rm ${raspi_bootdir}/stop 2>/dev/null
2024-03-21 13:50:32 +01:00
# cleaning logs
echo "deleting raspiblitz & system logs .."
sudo rm -rf /var/log/journal/* 2>/dev/null
sudo rm /var/log/redis/* 2>/dev/null
sudo rm /var/log/private/* 2>/dev/null
sudo rm /var/log/nginx/* 2>/dev/null
sudo rm /home/admin/*.log 2>/dev/null
logger -p info "****** RASPIBLITZ RELEASE ******"
echo "OK"
# clean raspiblitz.info toward the values set by sd card build script
echo "cleaning raspiblitz.info"
source /home/admin/raspiblitz.info
echo "baseimage=${baseimage}" > /home/admin/raspiblitz.info
echo "cpu=${cpu}" >> /home/admin/raspiblitz.info
echo "blitzapi=${blitzapi}" >> /home/admin/raspiblitz.info
echo "displayClass=${displayClass}" >> /home/admin/raspiblitz.info
2021-09-04 21:55:56 +02:00
2020-07-22 21:20:11 +02:00
# https://github.com/rootzoll/raspiblitz/issues/1371
echo
echo "deactivate local WIFI ..."
sudo nmcli radio wifi off
2020-07-22 21:20:11 +02:00
echo "OK"
# make sure that every install runs API with own secret
# https://github.com/raspiblitz/raspiblitz/issues/4469
echo
2024-07-22 10:43:57 +02:00
echo "deleting old API conf ..."
sudo rm /home/blitzapi/blitz_api/.env 2>/dev/null
2024-04-01 13:35:45 +02:00
REDIS_ENABLED=$(sudo systemctl is-enabled redis 2>/dev/null | grep -c enabled)
if [ ${REDIS_ENABLED} -gt 0 ]; then
echo "disable redis for initial start ..."
sudo systemctl stop redis 2>/dev/null
sudo systemctl disable redis 2>/dev/null
fi
echo "deleting redis data (if still there) ..."
sudo rm /var/lib/redis/dump.rdb 2>/dev/null
echo "OK"
# https://github.com/rootzoll/raspiblitz/issues/1068#issuecomment-599267503
echo
echo "reset DNS confs ..."
echo -e "nameserver 1.1.1.1\nnameserver 84.200.69.80" | sudo tee /etc/resolv.conf > /dev/null
echo "OK"
# make sure Tor respo signing keys are uptodate #4648
wget -qO- https://deb.torproject.org/torproject.org/A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89.asc | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/torproject.gpg >/dev/null
2024-07-22 13:22:15 +02:00
# update system (only security updates with minimal risk of breaking changes)
echo
2024-07-22 10:43:57 +02:00
echo "update OS ..."
sudo apt-get update -y
2024-07-22 13:22:15 +02:00
sudo apt-get upgrade -o Dir::Etc::SourceList=/etc/apt/sources.list.d/security.list -y
sudo apt-get upgrade openssh-server -y
sudo dpkg --configure -a
2024-07-22 10:43:57 +02:00
# SSH Pubkeys (make unique for every sd card image install)
echo
echo "deleting SSH Pub keys ..."
echo "keys will get recreated and sshd reactivated on fresh bootup, by _bootstrap.sh service"
sudo systemctl stop sshd
sudo systemctl disable sshd
sudo rm /etc/ssh/ssh_host_*
2024-04-08 11:48:12 +02:00
sudo touch ${raspi_bootdir}/ssh
echo "OK"
echo
2019-01-15 02:37:14 +01:00
echo "Will shutdown now."
2019-02-15 15:39:39 +01:00
echo "Wait until Raspberry LEDs show no activity anymore."
2019-01-15 02:37:14 +01:00
echo "Then remove SD card and make an release image from it."
sudo shutdown now