# dotfiles — tekki Hyprland-Setup mit wechselbaren Profilen und Farbthemen. **Farben:** Grün + Pink auf schwarz **Programme:** Hyprland · Waybar · Kitty · Wofi · Dunst **Themes:** tekki (grün/pink) · blue · red --- ## Erstes Setup auf einem neuen PC ```bash # 1. Repo klonen git clone https:///tekki/dotfiles ~/profiles/tekki # 2. Installieren (Symlinks setzen + Theme laden) bash ~/profiles/tekki/install.sh # 3. Pakete installieren sudo pacman -S $(grep -v '^#' ~/profiles/tekki/packages.txt | grep -v '^\s*$' | tr '\n' ' ') # AUR-Pakete (mit yay oder paru): yay -S awww ttf-meslo-nerd-font otf-font-awesome hyprpolkitagent # 4. ~/.local/bin in PATH eintragen (falls noch nicht vorhanden) echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc source ~/.zshrc # 5. Neu einloggen oder Hyprland starten ``` --- ## Theme wechseln ```bash # Nächstes Theme (auch per F3-Taste in Hyprland) next-theme # Bestimmtes Theme direkt switch-theme blue switch-theme red switch-theme tekki ``` --- ## Profil wechseln (geteilter PC) ```bash # Kumpels Profil einmalig einrichten git clone https:///kumpel/dotfiles ~/profiles/kumpel bash ~/profiles/kumpel/install.sh # Zwischen Profilen wechseln (~0.5s, keine neue Session, keine Fenster zu) switch-profile tekki switch-profile kumpel ``` Was beim Profilwechsel passiert: alle Config-Symlinks werden getauscht (Hyprland, Waybar, Shortcuts, alles), dann `hyprctl reload`. --- ## Updates holen ```bash update-profiles ``` Macht `git pull` für jedes Profil unter `~/profiles/`. Wenn das aktive Profil Änderungen hat, werden Symlinks und Hyprland automatisch neu geladen. --- ## Neues Theme erstellen ```bash cp -r ~/profiles/tekki/themes/tekki ~/profiles/tekki/themes/meinTheme # colors.json anpassen: # - special.background: Hintergrundfarbe (Hex) # - special.foreground: Hauptfarbe / Akzent 1 # - colors.color1: Akzent 2 (z.B. für Borders) # - colors.color2: Akzent 1 (Foreground) # - colors.color8: Gedämpfte Farbe (inaktive Elemente) # - wallpaper: Pfad zum Wallpaper (~ wird expandiert) switch-theme meinTheme ``` --- ## Eigenes Profil erstellen (für andere Personen) Das einfachste ist, dieses Repo als Ausgangspunkt zu forken: 1. Dieses Repo auf Gitea forken → eigenes Repo anlegen (z.B. `kumpel/dotfiles`) 2. Klonen: ```bash git clone https:///kumpel/dotfiles ~/profiles/kumpel ``` 3. Eigene Configs anpassen — alles in `config/` entspricht 1:1 einem `~/.config/`-Unterordner: - `config/hypr/hyprland.conf` — eigene Keybindings, Monitor-Setup, etc. - `config/waybar/config.jsonc` — eigene Leistenseinteilung - `config/wal/reload.sh` — falls ein anderer Wallpaper-Daemon genutzt wird (z.B. `swww` statt `awww`) 4. Eigene Themes anlegen (oder die vorhandenen anpassen) 5. `packages.txt` auf die eigenen Programme anpassen 6. Installieren: ```bash bash ~/profiles/kumpel/install.sh ``` **Hinweis zu den Scripts:** `install.sh` kopiert `switch-profile`, `switch-theme` und `update-profiles` nach `~/.local/bin/`. Diese Scripts sind global — sie gelten für alle Profile auf dem PC, egal welches Profil gerade aktiv ist. Jedes Profil liefert sie mit, damit sie auch auf einem frischen PC ohne zweites Profil verfügbar sind. --- ## Struktur ``` dotfiles/ ├── config/ │ ├── hypr/ Hyprland (shortcuts, monitor, blur, gaps, ...) │ ├── waybar/ Statusleiste (oben + unten) │ ├── dunst/ Benachrichtigungen │ ├── kitty/ Terminal │ ├── wofi/ App-Launcher │ ├── gtk-3.0/ GTK-Theme (Adwaita-dark) │ ├── gtk-4.0/ GTK4-Theme │ └── wal/ Theme-Scripts (generate.py, reload.sh, ...) ├── themes/ │ ├── tekki/ colors.json (grün + pink) │ ├── blue/ colors.json (blau) │ └── red/ colors.json + wallpapers/red.jpg ├── scripts/ Globale Scripts → werden von install.sh nach ~/.local/bin/ kopiert │ ├── switch-theme Wechselt Farben/Wallpaper im aktiven Profil │ ├── switch-profile Wechselt das komplette Profil (alle Configs + hyprctl reload) │ └── update-profiles git pull für alle Profile + ggf. automatischer Reload ├── packages.txt Benötigte Pakete ├── install.sh Einmalig ausführen um alles einzurichten └── README.md Diese Datei ``` --- ## Wiederherstellung Falls etwas schiefläuft: ```bash cp -r ~/config-backup/* ~/.config/ ``` (Backup wird von `install.sh` automatisch angelegt bei `.bak`-Umbenennung)