From 95447f74861f4bb6a406632bd8ab07842db41f04 Mon Sep 17 00:00:00 2001 From: Thomas Stallinger Date: Mon, 31 Aug 2026 14:57:09 +0200 Subject: [PATCH] =?UTF-8?q?feat(boot-medium):=20Begr=C3=BC=C3=9Fungsbanner?= =?UTF-8?q?=20(Tuxflotte-Schriftzug=20+=20Flottengrafik)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 80-Spalten-ASCII-Banner (pics/tuxflotte-terminal-80.txt, lose Asset-Datei, nicht versioniert - pics/ ist kein Git-Repo) wird beim Boot vor installer.sh angezeigt, sowohl im Dev- als auch im Produktiv-Build. Schriftzug frisch per figlet (Font "big") erzeugt, passt sauber in 80 Spalten. Grafik-Teil aus der bestehenden 160-Spalten-Vorlage per Spalten-Verdichtung (2:1) abgeleitet, da die Original-SVG-Logo-Konturen (reine offene Pfade ohne Fill) bei 80 Spalten direkt aus dem Vektor konvertiert nur noch vereinzelte Punkte ergeben - live geprueft, siehe Konversation. boot-autostart.sh zeigt das Banner nur wenn lesbar (if statt &&, sonst wuerde ein fehlendes Banner das Skript unter set -e sofort beenden). Live verifiziert in der enterprise-QEMU-VM: Banner erscheint korrekt vor [1/12] Vorbereitung, passt vollstaendig in die 80-Spalten-Konsole. --- .../includes.chroot/opt/tuxflotte/banner.txt | 36 +++++++++++++++++++ .../opt/tuxflotte/scripts/boot-autostart.sh | 9 +++++ scripts/boot-autostart.sh | 9 +++++ 3 files changed, 54 insertions(+) create mode 100644 boot-medium/config/includes.chroot/opt/tuxflotte/banner.txt diff --git a/boot-medium/config/includes.chroot/opt/tuxflotte/banner.txt b/boot-medium/config/includes.chroot/opt/tuxflotte/banner.txt new file mode 100644 index 0000000..ec2ff4d --- /dev/null +++ b/boot-medium/config/includes.chroot/opt/tuxflotte/banner.txt @@ -0,0 +1,36 @@ + _______ _ ___ ________ _ ____ _______ _______ ______ +|__ __| | | \ \ / / ____| | / __ \__ __|__ __| ____| + | | | | | |\ V /| |__ | | | | | | | | | | | |__ + | | | | | | > < | __| | | | | | | | | | | | __| + | | | |__| |/ . \| | | |___| |__| | | | | | | |____ + |_| \____//_/ \_\_| |______\____/ |_| |_| |______| + + + + ########## + #### ### + ## ## + ## ### ## + ## ### ######## + ## # ###### + ## ### + # ## + # # + # ########## + ########### # ### + ### ### # ### + ## ### ## # + # ## ## ########### + ######### ## # ### ## + #### ## ## ## ## + ## ### #### + # ### ######### + ############### ## + ### ## + ## ############## + # #### + ## ## + ## ### + # # + # ## + ## # diff --git a/boot-medium/config/includes.chroot/opt/tuxflotte/scripts/boot-autostart.sh b/boot-medium/config/includes.chroot/opt/tuxflotte/scripts/boot-autostart.sh index 1661530..f30547a 100755 --- a/boot-medium/config/includes.chroot/opt/tuxflotte/scripts/boot-autostart.sh +++ b/boot-medium/config/includes.chroot/opt/tuxflotte/scripts/boot-autostart.sh @@ -13,6 +13,15 @@ set -Eeuo pipefail # im systemd-Unit) in eine Logdatei - per SSH/Konsole nachtraeglich # einsehbar, ohne journalctl zu brauchen. LOG_FILE="/var/log/tuxflotte-installer.log" +BANNER_FILE="/opt/tuxflotte/banner.txt" + +# Begruessungsbanner (Tuxflotte-Schriftzug + Flotten-Grafik, 80 Spalten) - +# reine Optik, ins Logfile mitschreiben schadet nicht, aber nicht fatal +# wenn die Datei mal fehlt (set -e: "if" statt "&&", sonst wuerde ein +# fehlendes Banner das ganze Skript beenden). +if [[ -r "${BANNER_FILE}" ]]; then + { cat "${BANNER_FILE}"; echo; } | tee -a "${LOG_FILE}" +fi /opt/tuxflotte/scripts/installer.sh 2>&1 | tee -a "${LOG_FILE}" STATUS="${PIPESTATUS[0]}" diff --git a/scripts/boot-autostart.sh b/scripts/boot-autostart.sh index 1661530..f30547a 100755 --- a/scripts/boot-autostart.sh +++ b/scripts/boot-autostart.sh @@ -13,6 +13,15 @@ set -Eeuo pipefail # im systemd-Unit) in eine Logdatei - per SSH/Konsole nachtraeglich # einsehbar, ohne journalctl zu brauchen. LOG_FILE="/var/log/tuxflotte-installer.log" +BANNER_FILE="/opt/tuxflotte/banner.txt" + +# Begruessungsbanner (Tuxflotte-Schriftzug + Flotten-Grafik, 80 Spalten) - +# reine Optik, ins Logfile mitschreiben schadet nicht, aber nicht fatal +# wenn die Datei mal fehlt (set -e: "if" statt "&&", sonst wuerde ein +# fehlendes Banner das ganze Skript beenden). +if [[ -r "${BANNER_FILE}" ]]; then + { cat "${BANNER_FILE}"; echo; } | tee -a "${LOG_FILE}" +fi /opt/tuxflotte/scripts/installer.sh 2>&1 | tee -a "${LOG_FILE}" STATUS="${PIPESTATUS[0]}"