2026-05-17 11:59:21 +02:00
2026-05-17 11:59:21 +02:00
2026-04-10 01:06:07 +02:00
2026-04-10 01:12:03 +02:00

🐧 Jakob's Dotfiles

Dieses Repository verwaltet meine System-Konfigurationen unter CachyOS (Arch Linux) mit Hyprland und der Fish-Shell.

🛠 Setup-Struktur

Ich verwende ein Bare Repository, um mein Home-Verzeichnis sauber zu halten. Die Git-Datenbank liegt in ~/.dotfiles, aber die Dateien bleiben an ihrem Platz.

1. Initialisierung (auf einem neuen System)

git init --bare $HOME/.dotfiles
alias config='/usr/bin/git --git-dir=$HOME/.dotfiles/ --work-tree=$HOME'
config config --local status.showUntrackedFiles no

🔐 Authentifizierung (Browser-Login / FIDO)

Um den "Windows-Style" Login über den Browser (Gitea + WebAuthn/FIDO) zu ermöglichen, wird der Git Credential Manager (GCM) in Kombination mit GPG und pass genutzt.

Installation der Tools

# GCM über AUR (paru)
paru -S git-credential-manager-bin

# Pass und GPG über pacman
sudo pacman -S pass gnupg

Konfiguration des Passwort-Speichers

  1. GPG-Key erstellen: gpg --generate-key
  2. ID kopieren (z.B. 90D469EF...)
  3. Pass initialisieren: pass init <DEINE_GPG_ID>
  4. Git-Helper setzen:
    config config --local credential.helper manager
    config config --local credential.credentialStore gpg
    

<EFBFBD> VS Code & Electron Keyring (Hyprland)

Da unter Hyprland kein Standard-Keyring läuft, VS Code diesen aber zwingend benötigt (z. B. für GitHub Copilot, Settings-Sync oder Git), nutzen wir eine Brücke. Diese stellt die D-Bus Secret Service API bereit und speichert die Geheimnisse direkt in unserer bestehenden pass-Datenbank.

1. Installation der Brücke

# Installiert den pass-secret-service über das AUR
paru -S pass-secret-service-bin

2. Dienst aktivieren

Damit die Brücke im Hintergrund läuft, aktivieren wir den zugehörigen Systemd-User-Service:

systemctl --user enable --now pass-secret-service

3. VS Code konfigurieren

VS Code muss angewiesen werden, die D-Bus Schnittstelle zu nutzen. In VS Code die Command Palette öffnen (Strg + Shift + P), nach Preferences: Configure Runtime Arguments suchen und den folgenden Eintrag in der argv.json setzen:

"password-store": "gnome-libsecret"

(Hinweis: gnome-libsecret ist hier lediglich das Electron-Schlagwort für die D-Bus-Schnittstelle, die wir mit pass gekapert haben).

4. GPG-Agent Cache konfigurieren (Empfohlen)

Damit VS Code nicht bei jedem Sync-Vorgang im Hintergrund ein Passwort-Popup triggert, sollte der GPG-Cache erhöht werden. Dazu die Datei ~/.gnupg/gpg-agent.conf anpassen:

default-cache-ttl 3600
max-cache-ttl 28800

Anschließend den Agenten neu laden:

gpg-connect-agent reloadagent /bye

<EFBFBD>📂 Wichtige Dateien im Repo

  • Hyprland: ~/.config/hypr/hyprland.conf (Keybinds & Window-Rules)
  • Hyprpaper: ~/.config/hypr/hyprpaper.conf (Neue Block-Syntax!)
  • Waybar/Wofi: Styles und Configs für Topbar und Launcher.
  • Fish: ~/.config/fish/config.fish (Inklusive config Alias und deaktiviertem Fastfetch).
  • Kitty: ~/.config/kitty/kitty.conf (Transparenz & Blur).

⌨️ Täglicher Workflow

Zum Hinzufügen oder Ändern von Dateien wird der config-Alias genutzt:

config status
config add <pfad_zur_datei>
config commit -m "Nachricht"
config push

Hinweis: Beim Push öffnet sich automatisch der Browser für den Gitea-Login.

Description
No description provided
Readme 7.1 MiB
Languages
Lua 69.8%
CSS 15.1%
Shell 15.1%