commit d993a6270cb46428a66d54386f642084b0b89145 Author: tmk241 Date: Thu Aug 6 10:08:28 2026 +0000 Add README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..c0b45eb --- /dev/null +++ b/README.md @@ -0,0 +1,89 @@ +# Hackathon-Server + +## 1. Temporären SSH-Key holen + +Öffne den separat geteilten, ablaufenden Proton-Pass-Link zum Eintrag +`Hackathon 24h team SSH`. Speichere den **Private Key** lokal, teile ihn nicht +weiter und lösche ihn nach dem Hackathon. + +```sh +mkdir -p ~/.ssh +chmod 700 ~/.ssh +mv ~/Downloads/ ~/.ssh/hackathon-pi-team +chmod 600 ~/.ssh/hackathon-pi-team +``` + +Erwarteter Key-Fingerprint: `SHA256:DtI3AaMTlQt8NzDMjmn+Gch/X4JG7MqKXoxbfnm/gUk` + +## 2. SSH konfigurieren + +In `~/.ssh/config` eintragen: + +```sshconfig +Host hackathon-pi + HostName 168.119.180.99 + User tmk241 + IdentityFile ~/.ssh/hackathon-pi-team + IdentitiesOnly yes + ServerAliveInterval 30 + SetEnv HACKATHON_PERSON= +``` + +Beim ersten Connect muss der Server-Fingerprint exakt +`SHA256:ItRfASHytjrky06PM0oUlygSzELmMBhcxwRmdUWoi6Q` sein. + +```sh +ssh hackathon-pi +``` + +## 3. Mit Herdr arbeiten + +Herdr lokal installieren und direkt mit dem Remote-Workspace verbinden: + +```sh +curl -fsSL https://herdr.dev/install.sh | sh +herdr --remote hackathon-pi +``` + +Neue Shells starten automatisch in `~/hackathon`; dort einfach `pi` ausführen. +Herdr-Prefix ist `Ctrl+B`, danach z. B. `n` für einen neuen Workspace oder `c` +für einen neuen Tab. + +## 4. Lokalen `hwt`-Helper einrichten + +Diesen Helper auf dem **eigenen Rechner** in `~/.zshrc` eintragen: + +```zsh +hwt() { + local task="${1:-}" + local name_re='^[a-z0-9][a-z0-9._-]*$' + if [[ -z "$task" || ! "$task" =~ $name_re ]]; then + print -u2 'usage: hwt # lowercase, digits, dot, underscore, hyphen' + return 2 + fi + ssh hackathon-pi "HWT_TASK=$task zsh -lic 'hwt \"\$HWT_TASK\"'" +} +``` + +Danach lokal neu laden: + +```sh +source ~/.zshrc +type hwt +``` + +Nun wird der Befehl auf dem lokalen Rechner ausgeführt: + +```sh +hwt frontend-rework +``` + +Der lokale Helper ruft per SSH den vorbereiteten Remote-Helper auf. +`HACKATHON_PERSON` aus der SSH-Konfiguration wird als Branch-Präfix verwendet. +Das erzeugt und öffnet automatisch: + +- Branch: `/frontend-rework` +- Pfad: `~/hackathon-worktrees/-frontend-rework` +- Herdr-Label: `-frontend-rework` + +Erlaubt sind Kleinbuchstaben, Zahlen, `.`, `_` und `-`.