5.2 KiB
dotfiles-rene
Dotfiles und Skripte fuer macOS und Linux (Ubuntu auf MacBook Pro).
Wird automatisch von macbook-setup deployed.
Inhalt
bin/ Skripte (gitcheck, gitsync, gitupdate, toolbox)
zsh/ .zshrc mit Aliases, Cheatsheet, Tool-Integrationen
micro/ Micro-Editor Konfiguration
nvim/ Neovim Konfiguration
oh-my-zsh/custom/ Powerlevel10k, zsh-syntax-highlighting
heic-scripts/ HEIC-zu-JPEG Konverter (h2j)
pi/ Raspberry Pi spezifische Configs
Git-Werkzeuge (~/bin)
Alle Skripte in bin/ werden von setup-desktop.sh automatisch nach ~/ verlinkt.
gitsync - Repositories synchronisieren
Synchronisiert alle Git-Repositories in ~/git-projekte mit dem Gitea-Server:
- Fehlende Repos werden geklont
- Repos mit Remote-Aenderungen werden gepullt (fast-forward)
- Repos mit lokalen Commits werden gepusht
- Repos mit uncommitteten Aenderungen werden markiert
gitsync # alles synchronisieren
gitsync --dry-run # nur anzeigen, nichts aendern
gitsync --path /foo # anderes Basisverzeichnis
Die Repo-Liste ist im Skript hinterlegt. Bei neuen Repos dort einen Eintrag ergaenzen.
gitcheck - Repository-Status pruefen
Zeigt den Status aller Repositories (lokale Aenderungen, ungepushte/ungepullte Commits). Bietet am Ende an, ein dirty Repo direkt in lazygit zu öffnen.
gitcheck # nur Repos mit Aenderungen
gitcheck --all # alle Repos anzeigen
gitcheck --short # kompakte Ausgabe (Standard-Alias)
gitupdate - Repositories aktualisieren
Pullt alle Repositories (ueberspringt Repos mit lokalen Aenderungen).
gitupdate # alle Repos pullen
toolbox - interaktiver Tool-Launcher
Startet eine fzf-basierte Auswahl aller installierten Tools mit Kategorien und Kurzbeschreibungen. TUI-Tools (lazygit, btop, yazi…) öffnen in einem neuen Terminal-Tab, Output-Tools laufen direkt inline. Funktioniert auf macOS (iTerm2) und Linux (xfce4-terminal, gnome-terminal, kitty, alacritty).
tools # interaktiver Launcher
tools-ref # statisches Cheatsheet (Kurzform: tr)
Mac-only Tools (z.B. temps) werden auf Linux automatisch ausgeblendet.
Linux-Binaries (batcat, fdfind) werden automatisch aufgelöst.
cb - Clipboard bereinigen
Entfernt die 2 fuehrenden Leerzeichen pro Zeile aus der Zwischenablage, die Claude Code bei der Terminal-Ausgabe einfuegt. Nuetzlich beim Kopieren mehrzeiliger Befehle oder Codeblocks.
cb # Zwischenablage bereinigen, dann mit Cmd+V einfuegen
Verwendet pbpaste/pbcopy auf macOS und xclip auf Linux.
Terminal-Tools (installiert & konfiguriert)
| Tool | Zweck | Alias |
|---|---|---|
| lazygit | Git TUI: stagen, committen, rebasen | lg |
| delta | Schöne Git-Diffs (side-by-side, automatisch aktiv) | — |
| atuin | Fuzzy History-Suche mit Zeitstempel | Ctrl+R |
| mise | Tool-Versionen pro Projekt verwalten | mise use |
| btop | Systemmonitor (CPU/RAM/Netz/Prozesse) | btop |
| yazi | Terminal-Dateimanager | yazi |
| bat | cat mit Syntax-Highlighting | bat |
| eza | Modernes ls | eza -la, eza -T |
| fzf | Fuzzy-Finder | Ctrl+T, Ctrl+R |
| zoxide | Smart cd (lernt häufige Pfade) | z |
| nmap | Netzwerk-Scanner | nmap |
| units | Einheitenumrechnung | units |
| cmatrix | Matrix-Screensaver | cmatrix |
| asciiquarium | Aquarium-Screensaver | asciiquarium |
| pipes.sh | Rohre-Screensaver | pipes.sh |
| cbonsai | Bonsai-Screensaver | cbonsai |
| nms | Sneakers-Entschlüsselungseffekt | ls | nms |
Screensaver rotieren automatisch nach 5 Minuten Idle.
Installation
Automatisch (via macbook-setup)
setup-desktop.sh klont dieses Repo und verlinkt alles automatisch.
Manuell (bestehender Mac/Linux)
git clone https://git.motocamp.de/rene/dotfiles-rene.git ~/git-projekte/dotfiles-rene
# zshrc installieren
cd ~/git-projekte/dotfiles-rene/zsh && bash install-zsh-dotfiles.sh
# toolbox in den PATH legen
ln -sf ~/git-projekte/dotfiles-rene/bin/toolbox ~/bin/toolbox
Offline-KI einrichten (neuer Mac)
Lokale KI (LM Studio auf M1 Max) ueber VPN nutzen:
mac-sync # zshrc mit KI-Aliases holen
git clone https://git.motocamp.de/rene/offline-ki.git ~/git-projekte/offline-ki
cd ~/git-projekte/offline-ki && pip install -e .
Danach (VPN muss verbunden sein):
| Alias | Funktion |
|---|---|
ki-chat |
Interaktiver Chat (lokal) |
ki-agent |
Agent mit Dateizugriff (lokal) |
ki-rchat |
Chat ueber ki.motocamp.de (VPN) |
ki-ragent |
Agent ueber ki.motocamp.de (VPN) |
Voraussetzung: M1 Max zuhause laeuft mit LM Studio (Server aktiv).
Neuen Mac einrichten (Kurzfassung)
- Auf einem bestehenden Mac:
gitsyncausfuehren (pusht alles) - Auf dem neuen Mac (noch ohne .zshrc) einmalig:
curl -fsSL https://git.motocamp.de/rene/dotfiles-rene/raw/branch/main/bin/git-sync-all.sh | bash - Danach reicht:
gitsync(lokal) odermac-sync(frisch vom Server)