Compare commits

...
14 Commits
Author SHA1 Message Date
Baerspektivo 587e9919ca feat(desktop): systemctl waybar, ultrawide wallpaper and update nvim plugins 2026-09-17 11:10:56 +02:00
Baerspektivo ea0582bedc feat(fish): add dist-upgrade and autoremove for Debian, Fedora, and Arch in update-system 2026-09-16 09:48:21 +02:00
Baerspektivo bd19df41f3 fix(security): remove qaserv alias with hardcoded IP from aliases.fish 2026-09-09 08:25:20 +02:00
Baerspektivo ccb8f84ab6 fix(fish): sanitize aliases by removing work-specific kubeconfig reference 2026-09-09 08:24:31 +02:00
Baerspektivo cf80afb389 Revert "feat(cleanup): remove all Kubernetes and kubectl references, aliases, and completions"
This reverts commit 5d2a23db88.
2026-09-09 08:24:14 +02:00
Baerspektivo 5d2a23db88 feat(cleanup): remove all Kubernetes and kubectl references, aliases, and completions 2026-09-09 08:20:40 +02:00
Baerspektivo 062c7307df fix(security): move plaintext API keys to gitignored secrets.fish 2026-09-09 08:15:57 +02:00
Baerspektivo bae30b13ec feat(browser): integrate Zen Browser into install script and documentation 2026-09-09 08:05:35 +02:00
Baerspektivo 3d07731ec0 style: remove all emojis and decorative icons across documentation, templates, and configs 2026-09-09 08:01:43 +02:00
Baerspektivo 83e9820e07 Revert "refactor(install): remove all unicode symbols and box-drawing characters for clean terminal compatibility"
This reverts commit 98179f5c37.
2026-09-09 07:58:13 +02:00
Baerspektivo 98179f5c37 refactor(install): remove all unicode symbols and box-drawing characters for clean terminal compatibility 2026-09-09 07:52:54 +02:00
Baerspektivo a22dd720c8 docs: update README with mise, update-system, and structure; remove legacy nvm from install.sh 2026-09-09 07:51:12 +02:00
Baerspektivo b21b47a983 fix(fish): remove update-system alias to allow smart update-system function to run 2026-09-09 07:47:51 +02:00
Baerspektivo bc09ad7109 fix(config): remove dead symlinks and add scan_timeout to starship 2026-09-09 07:47:37 +02:00
18 changed files with 144 additions and 79 deletions
-3
View File
@@ -4,13 +4,10 @@ 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"
alias qaserv="TERM=xterm-256color ssh root@195.201.17.47"
alias kc1="set -gx KUBECONFIG ~/.kube/config" alias kc1="set -gx KUBECONFIG ~/.kube/config"
alias kc2="set -gx KUBECONFIG ~/.kube/work"
alias ram="vm_stat" alias ram="vm_stat"
# DevOps Core Tools # DevOps Core Tools
+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
+27 -6
View File
@@ -31,21 +31,42 @@ function update-system --description "Update system packages depending on OS"
npm update -g npm update -g
end end
else if test -f /etc/arch-release else if test -f /etc/arch-release
echo (set_color blue)"[Update-System] Arch Linux erkannt. Starte System-Update..."(set_color normal) echo (set_color blue)"[Update-System] Arch Linux erkannt. Starte vollständiges System-Update..."(set_color normal)
if type -q yay if type -q yay
# yay handles password prompts and elevation internally, so we run it directly
yay -Syu yay -Syu
set -l orphans (pacman -Qtdq 2>/dev/null)
if test -n "$orphans"
echo (set_color blue)"[Update-System] Entferne ungenutzte Abhängigkeiten (autoremove)..."(set_color normal)
yay -Rns --noconfirm $orphans
end
else else
run_with_sudo pacman -Syu run_with_sudo pacman -Syu
set -l orphans (pacman -Qtdq 2>/dev/null)
if test -n "$orphans"
echo (set_color blue)"[Update-System] Entferne ungenutzte Abhängigkeiten (autoremove)..."(set_color normal)
run_with_sudo pacman -Rns --noconfirm $orphans
end
end end
else if test -f /etc/debian_version else if test -f /etc/debian_version
echo (set_color blue)"[Update-System] Debian/Ubuntu-basiertes System erkannt. Starte System-Update..."(set_color normal) echo (set_color blue)"[Update-System] Debian/Ubuntu-basiertes System erkannt. Starte vollständiges System-Update..."(set_color normal)
run_with_sudo apt update; and run_with_sudo apt upgrade -y run_with_sudo apt update
and run_with_sudo apt upgrade -y
and run_with_sudo apt dist-upgrade -y
and run_with_sudo apt autoremove -y
and run_with_sudo apt autoclean
else if test -f /etc/fedora-release else if test -f /etc/fedora-release
echo (set_color blue)"[Update-System] Fedora erkannt. Starte System-Update..."(set_color normal) echo (set_color blue)"[Update-System] Fedora erkannt. Starte vollständiges System-Update..."(set_color normal)
run_with_sudo dnf upgrade -y run_with_sudo dnf upgrade --refresh -y
and run_with_sudo dnf autoremove -y
else else
echo (set_color red)"[Update-System] Unbekanntes Betriebssystem. Keine automatische Aktualisierung möglich."(set_color normal) echo (set_color red)"[Update-System] Unbekanntes Betriebssystem. Keine automatische Aktualisierung möglich."(set_color normal)
return 1 return 1
end end
# Optional: Flatpak-Pakete aktualisieren und ungenutzte Runtimes entfernen
if test "$os" != "Darwin"; and type -q flatpak
echo (set_color blue)"[Update-System] Aktualisiere Flatpaks..."(set_color normal)
flatpak update -y
flatpak uninstall --unused -y
end
end end
+1 -1
View File
@@ -30,7 +30,7 @@ local menu = "rofi -show drun"
-- See https://wiki.hypr.land/Configuring/Basics/Autostart/ -- See https://wiki.hypr.land/Configuring/Basics/Autostart/
hl.on("hyprland.start", function () hl.on("hyprland.start", function ()
hl.exec_cmd("hyprpaper") hl.exec_cmd("hyprpaper")
hl.exec_cmd("waybar") hl.exec_cmd("systemctl --user start waybar.service")
hl.exec_cmd("wl-paste --type text --watch cliphist store") hl.exec_cmd("wl-paste --type text --watch cliphist store")
hl.exec_cmd("wl-paste --type image --watch cliphist store") hl.exec_cmd("wl-paste --type image --watch cliphist store")
hl.exec_cmd("uwsm app -- steam -silent") hl.exec_cmd("uwsm app -- steam -silent")
+2 -2
View File
@@ -3,6 +3,6 @@ ipc = on
wallpaper { wallpaper {
monitor = DP-1 monitor = DP-1
path = ~/Bilder/wallpaper/zen.jpg path = /home/baerspektivo/Bilder/wallpaper_5120x1440/00000_cyberpunk_5120x1440.jpg
fit_mode = covor fit_mode = cover
} }
+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
+7 -7
View File
@@ -7,28 +7,28 @@
"cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" }, "cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" },
"conform.nvim": { "branch": "master", "commit": "016802de402556da54c36bd7359b441266b01cdd" }, "conform.nvim": { "branch": "master", "commit": "016802de402556da54c36bd7359b441266b01cdd" },
"dressing.nvim": { "branch": "master", "commit": "2d7c2db2507fa3c4956142ee607431ddb2828639" }, "dressing.nvim": { "branch": "master", "commit": "2d7c2db2507fa3c4956142ee607431ddb2828639" },
"fidget.nvim": { "branch": "main", "commit": "6f793b2bcd2d35e201c09520f698bb763220908a" }, "fidget.nvim": { "branch": "main", "commit": "9e0201673e08e997e7cf52afca5565c70bd117f3" },
"friendly-snippets": { "branch": "main", "commit": "6cd7280adead7f586db6fccbd15d2cac7e2188b9" }, "friendly-snippets": { "branch": "main", "commit": "6cd7280adead7f586db6fccbd15d2cac7e2188b9" },
"gitsigns.nvim": { "branch": "main", "commit": "5be654f2232c10ddcad19c1607a67b6b4b78fc29" }, "gitsigns.nvim": { "branch": "main", "commit": "5be654f2232c10ddcad19c1607a67b6b4b78fc29" },
"harpoon": { "branch": "harpoon2", "commit": "87b1a3506211538f460786c23f98ec63ad9af4e5" }, "harpoon": { "branch": "harpoon2", "commit": "87b1a3506211538f460786c23f98ec63ad9af4e5" },
"indent-blankline.nvim": { "branch": "master", "commit": "d28a3f70721c79e3c5f6693057ae929f3d9c0a03" }, "indent-blankline.nvim": { "branch": "master", "commit": "f1e186e44d3b7f9ae918008e2c28ce37c6023d2d" },
"lazy.nvim": { "branch": "main", "commit": "306a05526ada86a7b30af95c5cc81ffba93fef97" }, "lazy.nvim": { "branch": "main", "commit": "306a05526ada86a7b30af95c5cc81ffba93fef97" },
"lualine.nvim": { "branch": "master", "commit": "221ce6b2d999187044529f49da6554a92f740a96" }, "lualine.nvim": { "branch": "master", "commit": "221ce6b2d999187044529f49da6554a92f740a96" },
"mason-lspconfig.nvim": { "branch": "main", "commit": "40276c4df7e6bdce6801d6c035c6227f9115a855" }, "mason-lspconfig.nvim": { "branch": "main", "commit": "40276c4df7e6bdce6801d6c035c6227f9115a855" },
"mason.nvim": { "branch": "main", "commit": "2a6940af80375532e5e9e7c1f2fc6319a1b7a69d" }, "mason.nvim": { "branch": "main", "commit": "2a6940af80375532e5e9e7c1f2fc6319a1b7a69d" },
"neo-tree.nvim": { "branch": "main", "commit": "83e7a2982fd12b9c3d35bc39dd5877cd91a02a61" }, "neo-tree.nvim": { "branch": "main", "commit": "f3f3bf73414e400cf9fc13fda50f00404a8f8ab1" },
"neodev.nvim": { "branch": "main", "commit": "46aa467dca16cf3dfe27098042402066d2ae242d" }, "neodev.nvim": { "branch": "main", "commit": "46aa467dca16cf3dfe27098042402066d2ae242d" },
"nui.nvim": { "branch": "main", "commit": "10fc361835c856ba4233ef5ea135b919bf3dce97" }, "nui.nvim": { "branch": "main", "commit": "10fc361835c856ba4233ef5ea135b919bf3dce97" },
"nvim-autopairs": { "branch": "master", "commit": "430522f95fe4fb7c511ec64f8c1a90cc6a66c05c" }, "nvim-autopairs": { "branch": "master", "commit": "430522f95fe4fb7c511ec64f8c1a90cc6a66c05c" },
"nvim-cmp": { "branch": "main", "commit": "2ffe79f1f021def8dd1fcd81deb16f1bb0d989f3" }, "nvim-cmp": { "branch": "main", "commit": "2ffe79f1f021def8dd1fcd81deb16f1bb0d989f3" },
"nvim-lspconfig": { "branch": "master", "commit": "16286347bdba1333c7d124d9de9fe6630731b2b2" }, "nvim-lspconfig": { "branch": "master", "commit": "84252f9832fb5b9024fe9f7258e7c2aff915e6fb" },
"nvim-surround": { "branch": "main", "commit": "2e93e154de9ff326def6480a4358bfc149d5da2c" }, "nvim-surround": { "branch": "main", "commit": "2e93e154de9ff326def6480a4358bfc149d5da2c" },
"nvim-treesitter": { "branch": "master", "commit": "cf12346a3414fa1b06af75c79faebe7f76df080a" }, "nvim-treesitter": { "branch": "main", "commit": "41416e81a6c7f4af4984395bfe0cd8d174e70976" },
"nvim-treesitter-textobjects": { "branch": "master", "commit": "5ca4aaa6efdcc59be46b95a3e876300cfead05ef" }, "nvim-treesitter-textobjects": { "branch": "main", "commit": "5c7b0263797dfd1bd6202f2b219f3b53a80b2187" },
"nvim-web-devicons": { "branch": "master", "commit": "5f032a85be210cd1c6ac98861eb3b187ff3bd5eb" }, "nvim-web-devicons": { "branch": "master", "commit": "5f032a85be210cd1c6ac98861eb3b187ff3bd5eb" },
"oil.nvim": { "branch": "master", "commit": "b73018b75affd13fa38e2fc94ef753b465f770d7" }, "oil.nvim": { "branch": "master", "commit": "b73018b75affd13fa38e2fc94ef753b465f770d7" },
"plenary.nvim": { "branch": "master", "commit": "74b06c6c75e4eeb3108ec01852001636d85a932b" }, "plenary.nvim": { "branch": "master", "commit": "74b06c6c75e4eeb3108ec01852001636d85a932b" },
"schemastore.nvim": { "branch": "main", "commit": "2940d5e12f8797620cd47dca984d46119e1fa4b8" }, "schemastore.nvim": { "branch": "main", "commit": "4a0e1b74096937d366031bc1e2b244546af39f8e" },
"telescope-fzf-native.nvim": { "branch": "main", "commit": "b25b749b9db64d375d782094e2b9dce53ad53a40" }, "telescope-fzf-native.nvim": { "branch": "main", "commit": "b25b749b9db64d375d782094e2b9dce53ad53a40" },
"telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" }, "telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" },
"telescope.nvim": { "branch": "0.1.x", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" }, "telescope.nvim": { "branch": "0.1.x", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" },
-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