Compare commits

...
8 Commits
14 changed files with 106 additions and 60 deletions
-1
View File
@@ -4,7 +4,6 @@ alias g="goto"
alias vim="nvim" alias vim="nvim"
alias code="open -a 'Visual Studio Code'" alias code="open -a 'Visual Studio Code'"
alias kubi="open -a 'Lens'" alias kubi="open -a 'Lens'"
alias update-system="brew update && brew upgrade && npm update -g"
alias do-st="docker compose" alias do-st="docker compose"
alias do-re="docker compose down && docker compose up -d" alias do-re="docker compose down && docker compose up -d"
+7
View File
@@ -0,0 +1,7 @@
# ~/.config/fish/conf.d/secrets.fish.example
# Kopiere diese Datei nach secrets.fish und trage deine echten Keys ein:
# cp secrets.fish.example secrets.fish
#
# set -gx GEMINI_API_KEY "dein-gemini-api-key"
# set -gx JULES_API_KEY "dein-jules-api-key"
# set -gx GCP_PROJECT_ID "dein-gcp-project-id"
+1 -5
View File
@@ -59,11 +59,7 @@ set --global fish_pager_color_prefix normal --bold --underline
set --global fish_pager_color_progress brwhite --background=cyan set --global fish_pager_color_progress brwhite --background=cyan
set --global fish_pager_color_selected_background -r set --global fish_pager_color_selected_background -r
# API-Keys # Secrets and private API keys are loaded automatically from ~/.config/fish/conf.d/secrets.fish (gitignored)
set -gx GEMINI_API_KEY "AIzaSyBu-u9JIHoPR_wIsjwjelo1lGUzzxKKofQ"
set -gx JULES_API_KEY "AQ.Ab8RN6LXe33UjfpBGpityANYBO-pHUwZEG7wKoM4V7yWTAezoQ"
set -gx GCP_PROJECT_ID "gen-lang-client-0990109275"
# set -gx SSH_AUTH_SOCK "$HOME/Library/Group Containers/2BU85C4SUE.com.1password/t/agent.sock"
# Added by Antigravity CLI installer # Added by Antigravity CLI installer
-1
View File
@@ -1 +0,0 @@
/home/baerspektivo/gits/dotfiles/.config/fish
+12 -12
View File
@@ -2,7 +2,7 @@
Moderne, minimale Neovim Config optimiert für **TypeScript/Playwright QA** und **Go Development**. Moderne, minimale Neovim Config optimiert für **TypeScript/Playwright QA** und **Go Development**.
## 🎯 Philosophie ## Philosophie
- **Scratch mit lazy.nvim**: Keine Distro, keine Abstraktionen - **Scratch mit lazy.nvim**: Keine Distro, keine Abstraktionen
- **TypeScript First**: Optimiert für Playwright Tests - **TypeScript First**: Optimiert für Playwright Tests
@@ -10,7 +10,7 @@ Moderne, minimale Neovim Config optimiert für **TypeScript/Playwright QA** und
- **Verständlich**: Jede Datei hat einen klaren Zweck - **Verständlich**: Jede Datei hat einen klaren Zweck
- **Wartbar**: Standard Neovim APIs, keine Magie - **Wartbar**: Standard Neovim APIs, keine Magie
## 📁 Struktur ## Struktur
``` ```
~/.config/nvim/ ~/.config/nvim/
@@ -33,7 +33,7 @@ Moderne, minimale Neovim Config optimiert für **TypeScript/Playwright QA** und
│ └── editor.lua # QoL Plugins │ └── editor.lua # QoL Plugins
``` ```
## 🚀 Installation ## Installation
### Prerequisites ### Prerequisites
@@ -72,7 +72,7 @@ Beim ersten Start:
**Warte bis alles fertig ist!** (~2-3 Minuten) **Warte bis alles fertig ist!** (~2-3 Minuten)
## ⌨️ Key Bindings ## Key Bindings
### Leader Key: `Space` ### Leader Key: `Space`
@@ -133,7 +133,7 @@ Beim ersten Start:
- `:FormatDisable` - Disable auto-format - `:FormatDisable` - Disable auto-format
- `:FormatEnable` - Enable auto-format - `:FormatEnable` - Enable auto-format
## 🛠️ LSP Servers ## LSP Servers
Automatisch installiert via Mason: Automatisch installiert via Mason:
- **ts_ls** - TypeScript/JavaScript (Playwright) - **ts_ls** - TypeScript/JavaScript (Playwright)
@@ -153,7 +153,7 @@ Automatisch installiert via Mason:
3. Füge Server Config hinzu (siehe Beispiele im File) 3. Füge Server Config hinzu (siehe Beispiele im File)
4. `:Mason` - Check ob installiert 4. `:Mason` - Check ob installiert
## 🔧 Customization ## Customization
### Options ändern ### Options ändern
Editiere `lua/core/options.lua`: Editiere `lua/core/options.lua`:
@@ -187,7 +187,7 @@ Datei löschen oder Plugin auskommentieren, dann:
:Lazy clean :Lazy clean
``` ```
## 🐛 Troubleshooting ## Troubleshooting
### LSP funktioniert nicht ### LSP funktioniert nicht
```vim ```vim
@@ -208,7 +208,7 @@ Datei löschen oder Plugin auskommentieren, dann:
:Lazy profile " Check startup time :Lazy profile " Check startup time
``` ```
## 📦 Updates ## Updates
```bash ```bash
# In Neovim: # In Neovim:
@@ -218,20 +218,20 @@ Datei löschen oder Plugin auskommentieren, dann:
:Mason # Then 'U' für update all :Mason # Then 'U' für update all
``` ```
## 🎓 Lernen ## Lernen
Wenn du was nicht verstehst: Wenn du was nicht verstehst:
1. Schau in die entsprechende Datei (gut kommentiert!) 1. Schau in die entsprechende Datei (gut kommentiert!)
2. `:help <command>` nutzen 2. `:help <command>` nutzen
3. Frag Claude 😊 3. Frag Claude
## 🚨 Wichtig ## Wichtig
- **Backup**: Alte Config ist in `~/.config/nvim.kickstart-backup` - **Backup**: Alte Config ist in `~/.config/nvim.kickstart-backup`
- **Dotfiles**: Diese Config sollte in Git sein! - **Dotfiles**: Diese Config sollte in Git sein!
- **Updates**: Regelmäßig `:Lazy sync` und `:Mason` checken - **Updates**: Regelmäßig `:Lazy sync` und `:Mason` checken
## 📝 Änderungslog ## Änderungslog
- **2024-10**: Initial Scratch Build - **2024-10**: Initial Scratch Build
- TypeScript/Playwright optimiert - TypeScript/Playwright optimiert
-1
View File
@@ -1 +0,0 @@
/home/baerspektivo/gits/dotfiles/.config/nvim
+2 -1
View File
@@ -15,6 +15,7 @@ $character"""
# Fast command execution # Fast command execution
command_timeout = 3000 command_timeout = 3000
scan_timeout = 100
[time] [time]
disabled = false disabled = false
@@ -25,7 +26,7 @@ style = "bold yellow"
[directory] [directory]
truncation_length = 3 truncation_length = 3
truncation_symbol = "…/" truncation_symbol = "…/"
read_only = " 🔒" read_only = " [ro]"
style = "bold cyan" style = "bold cyan"
[git_branch] [git_branch]
+1 -1
View File
@@ -1,5 +1,5 @@
# .gitea/ISSUE_TEMPLATE/bug_report.yaml # .gitea/ISSUE_TEMPLATE/bug_report.yaml
name: 🐛 Bug Report name: Bug Report
about: Create a report to help improve the dotfiles about: Create a report to help improve the dotfiles
labels: ["bug"] labels: ["bug"]
body: body:
+2 -2
View File
@@ -1,9 +1,9 @@
# .gitea/ISSUE_TEMPLATE/config.yaml # .gitea/ISSUE_TEMPLATE/config.yaml
blank_issues_enabled: true blank_issues_enabled: true
contact_links: contact_links:
- name: 💬 Discussions - name: Discussions
url: https://your-gitea-instance.com/your-username/dotfiles/discussions url: https://your-gitea-instance.com/your-username/dotfiles/discussions
about: For questions and general discussion about: For questions and general discussion
- name: 📚 Documentation - name: Documentation
url: https://your-gitea-instance.com/your-username/dotfiles/wiki url: https://your-gitea-instance.com/your-username/dotfiles/wiki
about: Check the wiki for detailed documentation about: Check the wiki for detailed documentation
+1 -1
View File
@@ -1,5 +1,5 @@
# .gitea/ISSUE_TEMPLATE/feature_request.yaml # .gitea/ISSUE_TEMPLATE/feature_request.yaml
name: 🚀 Feature Request name: Feature Request
about: Suggest an idea for the dotfiles about: Suggest an idea for the dotfiles
labels: ["enhancement"] labels: ["enhancement"]
body: body:
+5 -5
View File
@@ -5,11 +5,11 @@ Brief description of what this PR does.
## Type of Change ## Type of Change
- [ ] 🐛 Bug fix (non-breaking change which fixes an issue) - [ ] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality) - [ ] New feature (non-breaking change which adds functionality)
- [ ] 💥 Breaking change (fix or feature that would cause existing functionality to not work as expected) - [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
- [ ] 📚 Documentation update - [ ] Documentation update
- [ ] 🔧 Configuration change - [ ] Configuration change
## Testing ## Testing
+2
View File
@@ -4,3 +4,5 @@ Brewfile.lock.json
.config/nvim/lazy-lock.jsonr .config/nvim/lazy-lock.jsonr
.gnupg/private-keys-v1.d/* .gnupg/private-keys-v1.d/*
todo.md todo.md
.config/fish/conf.d/secrets.fish
secrets.fish
+36 -29
View File
@@ -1,4 +1,4 @@
# 🚀 Dotfiles - QA Engineer Dev Setup # Dotfiles - QA Engineer Dev Setup
Meine persönliche Development-Umgebung optimiert für: Meine persönliche Development-Umgebung optimiert für:
- **TypeScript/Playwright** Testing (QA) - **TypeScript/Playwright** Testing (QA)
@@ -9,13 +9,14 @@ Meine persönliche Development-Umgebung optimiert für:
--- ---
## 📦 Was ist enthalten? ## Was ist enthalten?
### Core Tools ### Core Tools
- **Neovim** - Scratch config mit lazy.nvim (TypeScript/Go optimiert) - **Neovim** - Scratch config mit lazy.nvim (TypeScript/Go optimiert)
- **Fish Shell** - Mit Fisher, NVM, FZF Integration - **Fish Shell** - Mit Fisher, Mise, FZF Integration
- **Ghostty** - Modernes Terminal mit Tokyo Night Theme - **Ghostty** - Modernes Terminal mit Tokyo Night Theme
- **Starship** - Cross-shell prompt - **Starship** - Cross-shell prompt
- **Zen Browser** - Moderner Gecko-basierter minimalistischer Browser
### Development ### Development
- **LSP Support**: TypeScript (ts_ls), Go (gopls), Lua, HTML, CSS, JSON, YAML - **LSP Support**: TypeScript (ts_ls), Go (gopls), Lua, HTML, CSS, JSON, YAML
@@ -34,7 +35,7 @@ Meine persönliche Development-Umgebung optimiert für:
--- ---
## 🔧 Installation ## Installation
### Schnellstart (macOS/Linux) ### Schnellstart (macOS/Linux)
@@ -60,7 +61,7 @@ brew tap koekeishiya/formulae
# Core & Development tools installieren # Core & Development tools installieren
brew install git neovim fish starship fzf ripgrep fd bat btop fastfetch direnv lazygit mise yabai tmux brew install git neovim fish starship fzf ripgrep fd bat btop fastfetch direnv lazygit mise yabai tmux
brew install --cask ghostty 1password-cli brew install --cask ghostty 1password-cli zen
# Symlinks erstellen # Symlinks erstellen
ln -sf ~/gits/dotfiles/.config/fish ~/.config/fish ln -sf ~/gits/dotfiles/.config/fish ~/.config/fish
@@ -68,6 +69,7 @@ ln -sf ~/gits/dotfiles/.config/nvim ~/.config/nvim
ln -sf ~/gits/dotfiles/.config/ghostty ~/.config/ghostty ln -sf ~/gits/dotfiles/.config/ghostty ~/.config/ghostty
ln -sf ~/gits/dotfiles/.config/starship.toml ~/.config/starship.toml ln -sf ~/gits/dotfiles/.config/starship.toml ~/.config/starship.toml
ln -sf ~/gits/dotfiles/.config/fastfetch ~/.config/fastfetch ln -sf ~/gits/dotfiles/.config/fastfetch ~/.config/fastfetch
ln -sf ~/gits/dotfiles/.config/mise ~/.config/mise
ln -sf ~/gits/dotfiles/.config/yabai ~/.config/yabai ln -sf ~/gits/dotfiles/.config/yabai ~/.config/yabai
ln -sf ~/gits/dotfiles/.config/hypr ~/.config/hypr ln -sf ~/gits/dotfiles/.config/hypr ~/.config/hypr
@@ -87,7 +89,7 @@ chsh -s $(which fish)
--- ---
## 📁 Struktur ## Struktur
``` ```
dotfiles/ dotfiles/
@@ -105,6 +107,8 @@ dotfiles/
│ ├── btop/ # System monitor config (primary) │ ├── btop/ # System monitor config (primary)
│ ├── htop/ # System monitor fallback │ ├── htop/ # System monitor fallback
│ ├── fastfetch/ # System info config (with custom Bug Hunter Whale ASCII art) │ ├── fastfetch/ # System info config (with custom Bug Hunter Whale ASCII art)
│ ├── mise/ # Runtime version manager (Node, etc.)
│ ├── tmux/ # Terminal multiplexer config
│ ├── yabai/ # Window manager (macOS) │ ├── yabai/ # Window manager (macOS)
│ ├── hypr/ # Window manager (Linux/Wayland) │ ├── hypr/ # Window manager (Linux/Wayland)
│ └── starship.toml # Prompt config │ └── starship.toml # Prompt config
@@ -114,7 +118,7 @@ dotfiles/
--- ---
## 🎯 Neovim Keybindings (Wichtigste) ## Neovim Keybindings (Wichtigste)
### General ### General
- `<Space>` - Leader key - `<Space>` - Leader key
@@ -147,9 +151,12 @@ dotfiles/
--- ---
## 🔄 Updates ## Updates
```bash ```bash
# Komplettes System & Tools aktualisieren (macOS / Linux OS-Updates + Homebrew/Pakete)
update-system
# Dotfiles updaten # Dotfiles updaten
cd ~/gits/dotfiles cd ~/gits/dotfiles
git pull git pull
@@ -164,7 +171,7 @@ fisher update
--- ---
## 🛠️ Anpassungen ## Anpassungen
### Neovim ### Neovim
- **Neue Sprache hinzufügen**: Editiere `~/.config/nvim/lua/plugins/lsp.lua` - **Neue Sprache hinzufügen**: Editiere `~/.config/nvim/lua/plugins/lsp.lua`
@@ -182,7 +189,7 @@ fisher update
--- ---
## 🐛 Troubleshooting ## Troubleshooting
### Neovim Plugins laden nicht ### Neovim Plugins laden nicht
```bash ```bash
@@ -209,13 +216,13 @@ nvim
--- ---
## 📝 System Requirements ## System Requirements
### Minimum ### Minimum
- **OS**: macOS 12+, Linux (Arch, Debian, Fedora) - **OS**: macOS 12+, Linux (Arch, Debian, Fedora)
- **Neovim**: 0.10+ - **Neovim**: 0.10+
- **Git**: 2.30+ - **Git**: 2.30+
- **Fish**: 3.5+ - **Fish**: 4.0+
### Recommended ### Recommended
- **Neovim**: 0.11+ (für moderne LSP APIs) - **Neovim**: 0.11+ (für moderne LSP APIs)
@@ -224,7 +231,7 @@ nvim
--- ---
## 🤖 KI / AI CLI Tools (Optional) ## KI / AI CLI Tools (Optional)
Das Installationsskript kann optional verschiedene KI-Kommandozeilentools für Sie einrichten: Das Installationsskript kann optional verschiedene KI-Kommandozeilentools für Sie einrichten:
@@ -243,26 +250,26 @@ Das Installationsskript kann optional verschiedene KI-Kommandozeilentools für S
--- ---
## 🎨 Features ## Features
### Neovim ### Neovim
**Scratch Build** - Kein Framework, volle Kontrolle - **Scratch Build** - Kein Framework, volle Kontrolle
**Modern APIs** - Neovim 0.11 ready - **Modern APIs** - Neovim 0.11 ready
**TypeScript/Playwright** - Optimiert für QA - **TypeScript/Playwright** - Optimiert für QA
**Go Support** - gopls mit gofumpt - **Go Support** - gopls mit gofumpt
**Modular** - Jedes Plugin in eigener Datei - **Modular** - Jedes Plugin in eigener Datei
**Lazy Loading** - Schneller Start - **Lazy Loading** - Schneller Start
### Fish Shell ### Fish Shell
**Mise Integration** - Modernes Tool- & Node-Version-Management - **Mise Integration** - Modernes Tool- & Node-Version-Management
**FZF Integration** - Fuzzy finding everywhere - **FZF Integration** - Fuzzy finding everywhere
**Git Shortcuts** - Aliases für häufige Commands - **Git Shortcuts** - Aliases für häufige Commands
**Kubernetes** - kubectl completion - **Kubernetes** - kubectl completion
**Auto-completion** - Für Docker, Git, etc. - **Auto-completion** - Für Docker, Git, etc.
--- ---
## 📚 Resources ## Resources
- [Neovim Docs](https://neovim.io/doc/) - [Neovim Docs](https://neovim.io/doc/)
- [Fish Shell Docs](https://fishshell.com/docs/current/) - [Fish Shell Docs](https://fishshell.com/docs/current/)
@@ -272,13 +279,13 @@ Das Installationsskript kann optional verschiedene KI-Kommandozeilentools für S
--- ---
## 📄 License ## License
MIT - Do whatever you want with it! MIT - Do whatever you want with it!
--- ---
## 🙏 Credits ## Credits
- **Neovim** Community - **Neovim** Community
- **ThePrimeagen** - Harpoon & Inspiration - **ThePrimeagen** - Harpoon & Inspiration
@@ -288,4 +295,4 @@ MIT - Do whatever you want with it!
--- ---
**Happy Coding!** 🚀 **Happy Coding!**
+37 -1
View File
@@ -205,6 +205,42 @@ install_1password_cli() {
esac esac
} }
install_zen_browser() {
log "Installing Zen Browser..."
case $OS in
"macos")
if [ -d "/Applications/Zen.app" ] || [ -d "$HOME/Applications/Zen.app" ]; then
log "Zen Browser is already installed."
return
fi
install_cask zen
;;
"arch")
if command -v zen-browser &> /dev/null; then
log "Zen Browser is already installed."
return
fi
if command -v yay &> /dev/null; then
yay -S --noconfirm zen-browser-bin
else
warn "yay not found, cannot install zen-browser-bin on Arch"
fi
;;
"debian"|"fedora")
if command -v zen-browser &> /dev/null; then
log "Zen Browser is already installed."
return
fi
if command -v flatpak &> /dev/null; then
flatpak install -y flathub io.github.zen_browser.zen || true
else
warn "Zen Browser needs Flatpak or manual installation on $OS (https://zen-browser.app)"
fi
;;
esac
}
install_core_tools() { install_core_tools() {
log "Installing core development tools..." log "Installing core development tools..."
@@ -291,6 +327,7 @@ install_core_tools() {
esac esac
install_1password_cli install_1password_cli
install_zen_browser
log "Core tools installed!" log "Core tools installed!"
} }
@@ -340,7 +377,6 @@ setup_fish() {
# Install Fish plugins # Install Fish plugins
log "Installing Fish plugins..." log "Installing Fish plugins..."
fish -c "fisher install jorgebucaran/nvm.fish" || true
fish -c "fisher install PatrickF1/fzf.fish" || true fish -c "fisher install PatrickF1/fzf.fish" || true
fish -c "fisher install franciscolourenco/done" || true fish -c "fisher install franciscolourenco/done" || true