93 lines
3.2 KiB
Markdown
93 lines
3.2 KiB
Markdown
# 🚀 Dotfiles
|
|
Dieses Repo enthält mein persönliches Terminal-Setup, optimiert für macOS und den Rock 5B. Kernstück ist die Integration der Bitwarden CLI für sichere Git-Credentials.
|
|
|
|
## 1. Voraussetzungen (Pre-requisites)
|
|
|
|
Bevor das Installations-Skript ausgeführt wird, müssen die Basistools vorhanden sein.
|
|
Bitwarden CLI & Tools installieren
|
|
|
|
Auf dem Rock 5B (Debian/Ubuntu) führen wir folgende Befehle aus:
|
|
```bash
|
|
# System aktualisieren
|
|
sudo apt update && sudo apt upgrade -y
|
|
|
|
# Abhängigkeiten installieren (jq für das Token-Parsing)
|
|
sudo apt install -y jq curl git micro
|
|
|
|
# Bitwarden CLI installieren (via NPM oder direktes Binary)
|
|
# via NPM
|
|
sudo apt install -y nodejs npm
|
|
sudo npm install -g @bitwarden/cli
|
|
```
|
|
|
|
Bitwarden kann auch als bin direkt installiert werden. Lade das zip von [https://bitwarden.com/help/cli/] herunter und entpacke das enthaltene `bw` an einen Ort im `$PATH`, vorzugsweise `~/.local/bin`
|
|
|
|
## 2. Bitwarden Initialisierung
|
|
|
|
Damit der Git-Helper funktioniert, muss die CLI mit deinem Server verbunden sein.
|
|
```bash
|
|
# 1. Server-URL setzen (Beispiel Vaultwarden oder Bitwarden EU)
|
|
bw config server https://vault.bitwarden.eu
|
|
|
|
# 2. Einloggen
|
|
bw login
|
|
|
|
# 3. Tresor entsperren & Session setzen
|
|
# (Dafür nutzt du am besten den Alias aus dem Setup nach Schritt 3)
|
|
export BW_SESSION=$(bw unlock --raw)
|
|
```
|
|
|
|
## 3. Installation der Dotfiles
|
|
|
|
Jetzt clonen wir das Repo und verknüpfen alles. Da dies der erste Zugriff ist, nutzen wir das Gitea-Token direkt in der URL:
|
|
```bash
|
|
# Repo clonen
|
|
git clone https://<DEIN_TOKEN>@gitea.iten.pro/edi/dotfiles.git ~/dotfiles
|
|
|
|
# Installation starten
|
|
cd ~/dotfiles
|
|
bash install.sh
|
|
```
|
|
|
|
## Workflow: Täglicher Betrieb
|
|
|
|
Nach der Installation ist der Ablauf auf dem Rock 5B wie folgt:
|
|
|
|
1. Terminal öffnen.
|
|
2. ```unlock``` eingeben und Master-Passwort tippen.
|
|
* Das Schloss-Emoji 🔓 erscheint.
|
|
* Die Variable BW_SESSION ist nun aktiv.
|
|
3. Git nutzen: git push oder git pull holen sich das Passwort nun lautlos aus Bitwarden.
|
|
4. ```lock``` eingeben, um die Session zu beenden 🔒. Die Session wird auch beendet, wenn du das Terminal schliesst.
|
|
|
|
## Ein kleiner Tipp für dein install.sh
|
|
|
|
Damit das Skript auf dem Rock 5B nicht abbricht, kannst du am Anfang prüfen, ob die Tools da sind:
|
|
```bash
|
|
# Prüfen ob bw und jq vorhanden sind
|
|
command -v bw >/dev/null 2>&1 || echo "⚠️ Bitwarden CLI fehlt!"
|
|
command -v jq >/dev/null 2>&1 || echo "⚠️ jq fehlt!"
|
|
```
|
|
|
|
## 5. Zusatz-Tools (Optional, aber empfohlen)
|
|
|
|
### eza (Moderner ls-Ersatz)
|
|
Um die erweiterten Aliase mit Icons und Git-Status nutzen zu können, muss `eza` installiert sein.
|
|
|
|
#### macOS (via Homebrew)
|
|
```bash
|
|
brew install eza
|
|
```
|
|
|
|
#### Armbian/Debian/Ubuntu (via offiziellen Repos)
|
|
```bash
|
|
sudo mkdir -p /etc/apt/keyrings
|
|
wget -qO- [https://raw.githubusercontent.com/eza-community/eza/main/deb.asc](https://raw.githubusercontent.com/eza-community/eza/main/deb.asc) | sudo gpg --dearmor -o /etc/apt/keyrings/gza.gpg
|
|
echo "deb [signed-by=/etc/apt/keyrings/gza.gpg] [http://deb.gza.com/dev/](http://deb.gza.com/dev/) /" | sudo tee /etc/apt/sources.list.d/gza.list
|
|
sudo apt update
|
|
sudo apt install -y eza
|
|
```
|
|
|
|
#### Nerd Fonts (Für Icons im Terminal)
|
|
**Empfehlung:** ```FiraCode Nerd Font Mono``` von [nerdfonts.com] herunterladen und installieren.
|