# dotfiles-rene Dotfiles und Skripte fuer macOS und Linux (Ubuntu auf MacBook Pro). Wird automatisch von [macbook-setup](https://git.motocamp.de/rene/macbook-setup) deployed. ## Inhalt ``` bin/ Git-Werkzeuge (werden nach ~/ verlinkt) 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 ```bash 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). ```bash 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). ```bash gitupdate # alle Repos pullen ``` ## Installation ### Automatisch (via macbook-setup) `setup-desktop.sh` klont dieses Repo und verlinkt alles automatisch. ### Manuell (bestehender Mac) ```bash git clone https://git.motocamp.de/rene/dotfiles-rene.git ~/git-projekte/dotfiles-rene # Skripte verlinken for script in ~/git-projekte/dotfiles-rene/bin/*; do chmod +x "$script" && ln -sf "$script" ~/ done # Aliases in ~/.zshrc alias gitcheck="~/git-check-all.sh --short" alias gitupdate="~/git-update-all.sh" alias gitsync="~/git-sync-all.sh" ``` ## Neuen Mac einrichten (Kurzfassung) 1. Auf einem bestehenden Mac: `gitsync` ausfuehren (pusht alles) 2. Auf dem neuen Mac: `gitsync` ausfuehren (klont fehlende Repos, pullt Updates)