diff --git a/install.sh b/install.sh index b9fedc0..5beeb11 100644 --- a/install.sh +++ b/install.sh @@ -6,22 +6,24 @@ NC='\033[0m' # No Color clear +# Function to print status with a checkmark +print_status() { + echo -e "${GREEN}✔${NC} ${1} completed." +} + echo -e "${RED}→${NC} Starting System Update..." -sudo apt update >>/var/log/install 2>&1 -sudo apt upgrade -y >>/var/log/install 2>&1 -sudo apt dist-upgrade -y >>/var/log/install 2>&1 -sudo apt autoremove -y >>/var/log/install 2>&1 -sudo apt clean >>/var/log/install 2>&1 -echo -e "${GREEN}✔${NC} System Update Completed..." +sudo apt update >>/var/log/install 2>&1 && print_status "System Update" +sudo apt upgrade -y >>/var/log/install 2>&1 && print_status "System Upgrade" +sudo apt dist-upgrade -y >>/var/log/install 2>&1 && print_status "System Dist-Upgrade" +sudo apt autoremove -y >>/var/log/install 2>&1 && print_status "Autoremove" +sudo apt clean >>/var/log/install 2>&1 && print_status "Clean" echo -e "${RED}→${NC} Installing required packages..." -sudo apt install --no-install-recommends xserver-xorg x11-xserver-utils xinit chromium-browser fonts-noto-color-emoji nfs-common watchdog xdotool rsync -y >>/var/log/install 2>&1 -sudo apt install realvnc-vnc-server overlayroot -y >>/var/log/install 2>&1 -echo -e "${GREEN}✔${NC} Required packages installed..." +sudo apt install --no-install-recommends xserver-xorg x11-xserver-utils xinit chromium-browser fonts-noto-color-emoji nfs-common watchdog xdotool rsync -y >>/var/log/install 2>&1 && print_status "Required packages installed" +sudo apt install realvnc-vnc-server overlayroot -y >>/var/log/install 2>&1 && print_status "VNC and Overlayroot installed" echo -e "${RED}→${NC} Creating user 'loginuser'..." -sudo adduser --disabled-password --gecos "" loginuser >>/var/log/install 2>&1 -echo -e "${GREEN}✔${NC} User 'loginuser' created..." +sudo adduser --disabled-password --gecos "" loginuser >>/var/log/install 2>&1 && print_status "User 'loginuser' created" echo -e "${RED}→${NC} Setting permissions for 'loginuser'..." sudo tee /etc/sudoers.d/loginuser >/dev/null << 'EOF' @@ -30,15 +32,13 @@ loginuser ALL=(ALL) NOPASSWD: /usr/bin/echo, /usr/bin/cp, /usr/bin/sed loginuser ALL=(ALL) NOPASSWD: /usr/sbin/reboot, /usr/sbin/dhclient eth0, /usr/bin/fbset loginuser ALL=(ALL) NOPASSWD: /usr/bin/cat /var/lib/dhcp/* EOF -sudo usermod -aG video loginuser >>/var/log/install 2>&1 -echo -e "${GREEN}✔${NC} Permissions for 'loginuser' set..." +sudo usermod -aG video loginuser >>/var/log/install 2>&1 && print_status "Permissions for 'loginuser' set" echo -e "${RED}→${NC} Disabling root login..." sudo tee /etc/ssh/sshd_config >/dev/null << 'EOF' PermitRootLogin no EOF -sudo passwd -l root >>/var/log/install 2>&1 -echo -e "${GREEN}✔${NC} Root login disabled..." +sudo passwd -l root >>/var/log/install 2>&1 && print_status "Root login disabled" echo -e "${RED}→${NC} Copying required files..." sudo rsync -a --numeric-ids --info=progress2 --no-owner --no-group \ @@ -55,27 +55,21 @@ sudo rsync -a --numeric-ids --info=progress2 --no-owner --no-group \ ./rps-client/root/remove_unused_kernel.sh /root/remove_unused_kernel.sh \ ./rps-client/root/.vnc/config.d/vncserver-x11 /root/.vnc/config.d/vncserver-x11 \ ./rps-client/usr/bin/chromium-monitor /usr/bin/chromium-monitor \ - ./rps-client/usr/bin/watchdog /usr/bin/watchdog >>/var/log/install 2>&1 -echo -e "${GREEN}✔${NC} Required files copied..." + ./rps-client/usr/bin/watchdog /usr/bin/watchdog >>/var/log/install 2>&1 && print_status "Required files copied" echo -e "${RED}→${NC} Setting file permissions..." -sudo chown loginuser:loginuser -R /home/loginuser >>/var/log/install 2>&1 -sudo chmod +x /root/remove_unused_kernel.sh /usr/bin/watchdog /usr/bin/chromium-monitor >>/var/log/install 2>&1 -echo -e "${GREEN}✔${NC} File permissions set..." +sudo chown loginuser:loginuser -R /home/loginuser >>/var/log/install 2>&1 && print_status "File permissions set" echo -e "${RED}→${NC} Enabling services..." -sudo systemctl daemon-reload >>/var/log/install 2>&1 -sudo systemctl enable watchdog chromium-monitor vncserver-x11-serviced.service >>/var/log/install 2>&1 -sudo systemctl restart getty@tty1 >>/var/log/install 2>&1 -echo -e "${GREEN}✔${NC} Services enabled..." +sudo systemctl daemon-reload >>/var/log/install 2>&1 && print_status "Daemon reloaded" +sudo systemctl enable watchdog chromium-monitor vncserver-x11-serviced.service >>/var/log/install 2>&1 && print_status "Services enabled" +sudo systemctl restart getty@tty1 >>/var/log/install 2>&1 && print_status "getty service restarted" echo -e "${RED}→${NC} Cleaning up old kernels..." -sudo bash /root/remove_unused_kernel.sh -u -e >>/var/log/install 2>&1 -echo -e "${GREEN}✔${NC} Old kernels cleaned up..." +sudo bash /root/remove_unused_kernel.sh -u -e >>/var/log/install 2>&1 && print_status "Old kernels cleaned up" echo -e "${RED}→${NC} Cleaning up installer..." -sudo rm -rf ./rps-client >>/var/log/install 2>&1 -echo -e "${GREEN}✔${NC} Installer cleaned up..." +sudo rm -rf ./rps-client >>/var/log/install 2>&1 && print_status "Installer cleaned up" echo -e "${GREEN}✔${NC} Installation complete. Press any key to reboot..." read -n 1 -s