TUXPLAYER Branding Automatisierung 2026

Autor: Heiko Schäfer (TUXPLAYER)  | 
Datum: 22. Februar 2026  | 20:44:22
Version: TUX-RENDER.sh v3.0.0

Was habe ich heute gebaut?

Warum soll mein LinkedIn-Banner ein statisches Bild sein, das ich manuell hochlade? Das kann Linux besser. Also habe ich ein vollautomatisches Branding-System gebaut, das meinen Banner alle 10 Minuten mit aktuellem Datum und Uhrzeit aktualisiert – vollständig auf Basis von Open Source Tools.

Das Ergebnis seht ihr hier – der Zeitstempel unten rechts zeigt wann das Script zuletzt gelaufen ist:

TUXPLAYER Branding Banner – Senior Linux Architect | Heiko Schäfer

⏱ Dieser Banner aktualisiert sich automatisch alle 10 Minuten via Cron

„Kein statisches Bild – ein System. Das ist der Unterschied.“

Die Tools

Tool Wozu?
Inkscape SVG-Design erstellen und Platzhalter einbauen
Bash Das Herzstück – das Automatisierungs-Script
sed Platzhalter in der SVG-Datei ersetzen
cron Zeitgesteuerte Ausführung alle 10 Minuten
lftp Automatischer FTP-Upload auf den Webserver
CachyOS Linux Mein Betriebssystem – worauf sonst?

Wie funktioniert das System?

Inkscape SVG-Vorlage mit Platzhaltern

Bash-Script ersetzt $(DAY) $(MONTH) $(YEAR) $(HOUR) $(MINUTE)

Inkscape exportiert PNG (1584×396px)

lftp lädt Banner automatisch auf tuxhs.de hoch

Cron wiederholt das alle 10 Minuten 🔄

Die Projektstruktur

~/scripts/tools/branding/
├── TUX-RENDER.sh ← Das Herzstück: Bash-Script v3.0.0
└── TUXPLAYER_LOGO_LINKIN.svg ← SVG-Vorlage mit Platzhaltern

~/Schreibtisch/
└── TUX_LINKEDIN_AKTUELL.png ← Fertiges Banner (auto-aktualisiert)

~/logs/
└── tux-render.log ← Vollständiges Protokoll

~/.credentials/
└── tuxhs-ftp.conf ← FTP-Zugangsdaten (chmod 600)

Schritt 1 – SVG-Template in Inkscape

In Inkscape habe ich das Banner-Design erstellt und spezielle Platzhalter eingefügt:

<!– Datum und Uhrzeit Platzhalter im SVG –>
$(DAY).$(MONTH).$(YEAR) – $(HOUR):$(MINUTE)

<!– Copyright –>
© $(YEAR) Heiko Schäfer

Die LinkedIn-Banner-Maße sind 1584 × 396 Pixel. Wichtig: Links genug Platz für das Profilbild lassen!

Schritt 2 – Das Bash-Script TUX-RENDER.sh

#!/bin/bash
# TUX-RENDER.sh v3.0.0 – TUXPLAYER Branding Automatisierung

SVG_IN=“/home/heiko/scripts/tools/branding/TUXPLAYER_LOGO_LINKIN.svg“
PNG_OUT=“$(xdg-user-dir DESKTOP)/TUX_LINKEDIN_AKTUELL.png“
CREDENTIALS=“/home/heiko/.credentials/tuxhs-ftp.conf“

# Zeitdaten holen
DAY=$(date +%d); MON=$(date +%m); YEAR=$(date +%Y)
HOUR=$(date +%H); MINUTE=$(date +%M)

# Platzhalter ersetzen via sed
sed „s/\$(DAY)/$DAY/g;s/\$(MONTH)/$MON/g;s/\$(YEAR)/$YEAR/g;
s/\$(HOUR)/$HOUR/g;s/\$(MINUTE)/$MINUTE/g“ „$SVG_IN“ > /tmp/temp.svg

# PNG exportieren (LinkedIn: 1584x396px)
inkscape –export-type=“png“ –export-filename=“$PNG_OUT“ \
–export-width=1584 –export-height=396 /tmp/temp.svg

# Auf Server hochladen
source „$CREDENTIALS“
lftp -u „$FTP_USER“,“$FTP_PASSWORD“ „$FTP_HOST“ <<EOF
put „$PNG_OUT“ -o www/assets/branding/TUX_BANNER.png
bye
EOF

Schritt 3 – Cron-Automatisierung

# Crontab öffnen:
EDITOR=nano crontab -e

# Diese Zeile einfügen:
*/10 * * * * /home/heiko/scripts/tools/branding/TUX-RENDER.sh

# Cron-Daemon aktivieren (CachyOS/Arch):
sudo systemctl enable –now cronie

Häufige Fehler und Lösungen

⚠ Backslash-Bug in Bash

Leerzeichen nach einem \ bricht die Zeile und produziert seltsame Fehler. Lösung: Alles in eine Zeile schreiben.

⚠ Cronie nicht aktiv

Der Cron-Daemon war nach der Installation nicht automatisch gestartet. sudo systemctl enable --now cronie löst das Problem.

⚠ Fish Shell vs Bash

Fish versteht keine Bash-Syntax. Scripts immer mit #!/bin/bash im Header und Alias auf bash /pfad/script.sh setzen.

Ergebnis – live unter

Der aktuelle Banner ist immer abrufbar unter:

https://tuxhs.de/assets/branding/TUX_BANNER.png

Einfach neu laden – der Zeitstempel unten rechts zeigt ob der Cron läuft. 😄

Fazit

KI ist ein Werkzeug – wie Inkscape, wie Bash. Der Unterschied zwischen jemandem der es drauf hat und jemandem der es nicht drauf hat, ist nicht ob er Tools benutzt – sondern ob er versteht was er tut.

Dieses System wurde Schritt für Schritt debuggt, verstanden und selbst eingerichtet. Mit freundlicher Unterstützung von Claude AI als Sparringspartner – aber die Idee, der Ehrgeiz und die Umsetzung: das war ich. Das ist echte Linux-Automatisierung. 🐧🤘