Welcome to my dotfiles repository! This repository is managed using chezmoi and Nix Home Manager.
- Stack Overview π¦
- Sketchybar Themes π¨
- Package Management π οΈ
- CLI Tools π»
- GUI Applications π₯οΈ
- Aliases & Functions π§
- Window Manager (AeroSpace) πͺ
- Shortcuts & Keybindings β¨οΈ
- Zed Configuration β‘
- Installation π₯
- Acknowledgments π
- License π
| Layer | Tool | Purpose |
|---|---|---|
| Package Manager | Nix + Home Manager 24.11 | Declarative CLI tools (63 packages) |
| GUI Apps | Homebrew Casks | GUI applications and system tools |
| Dotfiles | Chezmoi | Configuration file management |
| Shell | Zsh + Oh-My-Zsh | Interactive shell with plugins |
| Theme | Powerlevel10k | Shell prompt theme |
| Window Manager | AeroSpace | Tiling window manager (no SIP required) |
| Menu Bar | Sketchybar | Custom menu bar with 6 themes |
| Theme | Style | Accent Color | Description |
|---|---|---|---|
| Claude Dark β | Dark | #D4825D (copper) |
Warm, elegant theme (default) |
| Claude Light | Light | #C15F3C (copper) |
Light version for bright environments |
| Blueberry Dark | Dark | #27E8A7 (mint) |
Fresh blue/violet palette |
| Catppuccin | Dark | Pastel | Modern pastel theme |
| Tokyo Night | Dark | Blue | Popular VS Code theme port |
| Nord | Dark | Cyan | Arctic, bluish color palette |
| Command | Description |
|---|---|
~/.config/sketchybar/change_theme.sh <theme> |
Change to specified theme |
~/.config/sketchybar/preview_theme.sh |
Preview all available themes |
| Tool | Version | Purpose | Packages |
|---|---|---|---|
| Nix | Multi-user daemon | Declarative package manager | System foundation |
| Home Manager | 24.11 | User environment management | 63 CLI tools |
| Homebrew | Latest | GUI apps & system tools | Complementary to Nix |
| Chezmoi | Latest | Dotfile management | Config sync |
| Alias | Command | Description |
|---|---|---|
reload-nix |
nix run home-manager/release-24.11 -- switch --flake ~/nix-config |
Apply Nix configuration changes |
edit-nix |
$EDITOR ~/nix-config/home.nix |
Edit Nix configuration file |
| Tool | Version | Managed By | Notes |
|---|---|---|---|
| Node.js | 24.11.0 | Nix | JavaScript runtime |
| Python | 3.13.8 | Nix | Python interpreter |
| uv | 0.8.23 | Nix | Fast Python package manager |
| PHP | 8.4.14 | Nix | With pcov, redis extensions |
| Go | 1.25.2 | Nix | Golang compiler |
| Rust | 1.89.0 | Nix | Rust toolchain |
| Bun | 1.3.1 | Nix | Fast JavaScript runtime |
| Deno | 2.5.6 | Nix | Secure TypeScript runtime |
| pnpm | 10.20.0 | Nix | Fast package manager |
| Symfony CLI | 5.15.1 | Nix | Symfony tooling |
| Composer | Latest | Homebrew | PHP dependency manager |
| Tool | Version | Managed By | Purpose |
|---|---|---|---|
| kubectl | 1.34.1 | Nix | Kubernetes CLI |
| Helm | Latest | Nix | Kubernetes package manager |
| Minikube | 1.37.0 | Nix | Local Kubernetes |
| ArgoCD | Latest | Nix | GitOps CD tool |
| k9s | Latest | Nix | Kubernetes TUI |
| kubectx | 0.9.5 | Nix | Context switcher |
| stern | 1.33.0 | Nix | Multi-pod logs |
| kustomize | 5.7.1 | Nix | Kubernetes config |
| kubecolor | 0.5.2 | Nix | Colorized kubectl |
| dive | 0.13.1 | Nix | Docker image explorer |
| popeye | 0.22.1 | Nix | Kubernetes scanner |
| Lazykube | Latest | Homebrew | Kubernetes TUI |
| Tool | Version | Managed By | Purpose |
|---|---|---|---|
| Git | Latest | Nix | Version control |
| GitHub CLI | Latest | Nix | GitHub integration |
| Lazygit | Latest | Nix | Git TUI |
| Lazydocker | Latest | Nix | Docker TUI |
| Redis | 8.2.2 | Nix | In-memory database |
| Pandoc | 3.7.0.2 | Nix | Document converter |
| Neovim | 0.11.5 | Nix | Text editor |
| Tool | Version | Managed By | Purpose |
|---|---|---|---|
| Zsh | Latest | System | Interactive shell |
| Oh My Zsh | Latest | Manual | Zsh framework |
| Powerlevel10k | Latest | Homebrew | Zsh theme |
| Bat | Latest | Nix | Enhanced cat |
| Eza | Latest | Nix | Modern ls |
| Yazi | Latest | Nix | File manager |
| Tmux | Latest | Nix | Terminal multiplexer |
| Fzf | Latest | Nix | Fuzzy finder |
| Zoxide | Latest | Nix | Smarter cd |
| Thefuck | Latest | Nix | Command corrector |
| Neofetch | Latest | Nix | System info |
| Tool | Version | Managed By | Purpose |
|---|---|---|---|
| AWS CLI | v2 | Nix | Amazon Web Services |
| Stripe CLI | Latest | Nix | Stripe API testing |
| Tool | Version | Managed By | Purpose |
|---|---|---|---|
| mas | 2.2.2 | Nix | Mac App Store CLI (install App Store apps from terminal) |
| Application | Purpose | Managed By | Cask |
|---|---|---|---|
| Zed | Modern code editor | Homebrew | zed@preview |
| Ghostty | GPU-accelerated terminal | Homebrew | ghostty |
| Warp | Rust-based terminal | Homebrew | warp |
| OrbStack | Docker alternative | Homebrew | orbstack |
| Postman | API platform | Homebrew | postman |
| TablePlus | Database management | SetApp | - |
| Application | Purpose | Managed By | Cask |
|---|---|---|---|
| Arc | Modern browser | Homebrew | arc |
| Slack | Team communication | Homebrew | slack |
| Discord | Community platform | Homebrew | discord |
| Messaging | Homebrew | whatsapp |
|
| Telegram | Messaging | Homebrew | telegram |
| Mattermost | Team collaboration | Homebrew | mattermost |
| Application | Purpose | Managed By | Cask |
|---|---|---|---|
| Raycast | Launcher & productivity | Homebrew | raycast |
| Obsidian | Knowledge base | Homebrew | obsidian |
| Claude | AI assistant | Homebrew | claude |
| Dashlane | Password manager | App Store | - |
| Figma | Design tool | Homebrew | figma |
| Anki | Spaced repetition | Homebrew | anki |
| CleanShot X | Screenshot tool | SetApp | - |
| PixelSnap | Measurement tool | SetApp | - |
| Sip | Color picker | SetApp | - |
| Yoink | Drag & drop helper | SetApp | - |
| Application | Purpose | Managed By | Cask |
|---|---|---|---|
| AeroSpace | Window manager | Homebrew | nikitabobko/tap/aerospace |
| Sketchybar | Menu bar | Homebrew | felixkratz/formulae/sketchybar |
| Borders | Window borders | Homebrew | felixkratz/formulae/borders |
| SF Symbols | System icons | Homebrew | sf-symbols |
| Logi Options+ | Logitech device manager | Homebrew | logi-options+ |
| Rectangle | Window management | Homebrew | rectangle |
| CleanMyMac X | System cleaner | SetApp | - |
| NotchNook | Notch utility | SetApp | - |
| Canary Mail | Email client | SetApp | - |
| Clop | Media optimizer | SetApp | - |
| Application | Purpose | Managed By | Cask |
|---|---|---|---|
| Steam | Gaming platform | Homebrew | steam |
| Alias | Command | Description |
|---|---|---|
x |
exit |
Exit terminal |
config |
cd $XDG_CONFIG_HOME |
Navigate to config directory |
edit-config |
$EDITOR $XDG_CONFIG_HOME |
Edit config directory |
reload-zsh |
source ~/.zshrc |
Reload ZSH configuration |
edit-zsh |
$EDITOR ~/.zshrc |
Edit ZSH configuration |
| Alias | Command | Description |
|---|---|---|
py, python |
/usr/bin/python3 |
Python 3 |
pa |
php artisan |
PHP Artisan CLI |
a, adonis |
node ace |
Adonis Ace CLI |
ls |
eza --color=always --long --git --no-filesize --icons=always --no-time --no-user --no-permissions --group-directories-first |
Enhanced listing |
cd |
zoxide |
Enhanced directory navigation |
lg |
lazygit |
Terminal UI for Git |
lzd |
lazydocker |
Terminal UI for Docker |
f |
fzf --tmux top,50% |
Fuzzy finder in Tmux fixed on top with 50% height |
| Alias | Command | Description |
|---|---|---|
gcs |
gh copilot suggest |
Get command suggestions |
gce |
gh copilot explain |
Explain commands |
gcc |
gh copilot config |
Configure Copilot |
gca |
gh copilot alias |
Manage Copilot aliases |
| Alias | Command | Description |
|---|---|---|
reload-sketchybar |
brew services restart sketchybar |
Restart Sketchybar menu bar |
edit-sketchybar |
$EDITOR $XDG_CONFIG_HOME/sketchybar |
Edit Sketchybar configuration |
reload-borders |
brew services restart borders |
Restart window borders |
edit-borders |
$EDITOR $XDG_CONFIG_HOME/borders |
Edit borders configuration |
| Alias | Command | Description |
|---|---|---|
t |
tmux -2 |
Launch Tmux with 256 colors |
reload-tmux |
tmux source-file ~/.tmux.conf |
Reload Tmux configuration |
edit-tmux |
$EDITOR ~/.tmux.conf |
Edit Tmux configuration |
| Function | Usage | Description |
|---|---|---|
y() |
y [path] |
Launch Yazi file manager with directory change on exit |
brew() |
brew [args] |
Homebrew wrapper that triggers Sketchybar updates |
zen() |
zen [mode] |
Toggle Sketchybar zen mode |
Modern tiling window manager (no SIP required) - See MIGRATION-YABAI-TO-AEROSPACE.md
| Shortcut | Action | Workspace |
|---|---|---|
| β₯ + 1 | Focus workspace 1 | Mail/Calendar |
| β₯ + 2 | Focus workspace 2 | Postman |
| β₯ + 3 | Focus workspace 3 | Code Editors |
| β₯ + Q | Focus workspace 4 | Arc Browser |
| β₯ + W | Focus workspace 5 | Communication/Web |
| β₯ + E | Focus workspace 6 | Database/Docker |
| β₯ + Tab | Back and forth | Previous workspace |
| Shortcut | Action |
|---|---|
| β₯ + h/j/k/l | Focus window (left/down/up/right) |
| β₯ + β/β/β/β | Focus window (arrows) |
| Shortcut | Action |
|---|---|
| β§ + β₯ + h/j/k/l | Move window (left/down/up/right) |
| β§ + β₯ + β/β/β/β | Move window (arrows) |
| β§ + β₯ + 1/2/3 | Move to workspace 1/2/3 |
| β§ + β₯ + Q/W/E | Move to workspace 4/5/6 |
| β + β§ + β₯ + 1-6 | Move to workspace and follow |
| Shortcut | Action |
|---|---|
| β₯ + / | Toggle tiles layout (horizontal/vertical) |
| β₯ + , | Toggle accordion layout (cascade) |
| β§ + β₯ + Space | Toggle floating/tiling |
| β₯ + F | Toggle fullscreen |
| β₯ + -/= | Resize window (smart -50/+50) |
| β₯ + R | Enter resize mode |
| Shortcut | Action |
|---|---|
| β₯ + Enter | Open Ghostty terminal |
| β§ + β₯ + X | Close window |
| β§ + β₯ + = | Balance window sizes |
| β§ + β₯ + R | Reload AeroSpace config |
| β§ + β₯ + ; | Enter service mode |
Prefix: β + A (replaces default β + B) Theme: Claude Dark with copper accent (
#D4825D)
| Shortcut | Action | Description |
|---|---|---|
| prefix + R | source-file ~/.tmux.conf |
Reload configuration |
| prefix + O | Sessionx | Open session manager plugin |
| prefix + Space | Which-key | Show available keybindings |
| Shortcut | Action |
|---|---|
| prefix + C | Create new window (in current path) |
| prefix + B | Previous window |
| prefix + N | Next window |
| prefix + X | Close window |
| Shortcut | Action |
|---|---|
| prefix + H | Focus left pane |
| prefix + J | Focus down pane |
| prefix + K | Focus up pane |
| prefix + L | Focus right pane |
| prefix + X | Close pane |
| prefix + V | Split horizontally (in current path) |
| prefix + S | Split vertically (in current path) |
| Plugin | Trigger | Purpose |
|---|---|---|
| tmux-sessionx | prefix + O | Session manager |
| tmux-which-key | prefix + Space | Keybinding helper |
| vim-tmux-navigator | β + h/j/k/l | Seamless vim/tmux navigation |
| catppuccin/tmux | - | Claude Dark theme (custom colors) |
| tmux-cpu | - | CPU usage in status bar |
| tmux-battery | - | Battery status (laptops) |
My Zed editor configuration with custom keybindings and tasks.
| Shortcut | Context | Action | Description |
|---|---|---|---|
| β + h | Editor | workspace::ActivatePaneLeft |
Focus left pane |
| β + j | Editor | workspace::ActivatePaneDown |
Focus down pane |
| β + k | Editor | workspace::ActivatePaneUp |
Focus up pane |
| β + l | Editor | workspace::ActivatePaneRight |
Focus right pane |
| β + @ | Editor | editor::RestartLanguageServer |
Restart language server |
| β + ΓΉ | Editor | git_panel::ToggleFocus |
Toggle Git panel |
| β + < | Editor | editor::ToggleInlayHints |
Toggle inlay hints |
| β + β§ + k | Editor | editor::DeleteLine |
Delete current line |
| β + g | Editor | editor::SelectLargerSyntaxNode |
Select larger syntax node |
| β + β§ + g | Editor | editor::SelectSmallerSyntaxNode |
Select smaller syntax node |
| β + i | Editor | assistant::InlineAssist |
Inline AI assist |
| β + ; | Editor | go_to_line::Toggle |
Toggle go to line |
| β + β§ + r | Editor | editor::Rename |
Rename symbol |
| Shortcut | Context | Action | Description |
|---|---|---|---|
| β₯ + β§ + f | Editor | editor::Format |
Format current file |
| β₯ + k | Editor | editor::MoveLineUp |
Move line up |
| β₯ + j | Editor | editor::MoveLineDown |
Move line down |
| β₯ + β | Editor | editor::MoveLineUp |
Move line up |
| β₯ + β | Editor | editor::MoveLineDown |
Move line down |
| β₯ + β§ + p | Editor | markdown::OpenPreview |
Open markdown preview |
| Shortcut | Context | Action | Description |
|---|---|---|---|
| β + β§ + t | Workspace | task::Spawn |
Open task launcher |
| β₯ + f | Workspace | task::Spawn "Files: FZF" |
Open FZF file finder |
| β₯ + y | Workspace | task::Spawn "Files: Yazi" |
Open Yazi file manager |
| β₯ + g | Workspace | task::Spawn "Git: Lazygit" |
Open Lazygit |
| β₯ + r | Workspace | task::Spawn "Files: Rename Files (Script)" |
Run file rename script |
| β₯ + d | Workspace | task::Spawn "Database: Redis CLI" |
Open Redis CLI |
| β₯ + β§ + d | Workspace | task::Spawn "Docker: Lazydocker" |
Open Lazydocker |
| β₯ + β§ + k | Workspace | task::Spawn "Kubernetes: Lazykube" |
Open Lazykube |
| β₯ + t | Workspace | task::Spawn "Laravel: Test" |
Run Laravel tests |
| β₯ + β§ + t | Workspace | task::Spawn "Laravel: Test (coverage)" |
Run Laravel tests with coverage |
| β₯ + β§ + m | Workspace | task::Spawn "Laravel: Migrate (fresh and seed)" |
Run Laravel migration fresh with seed |
| β₯ + p | Workspace | task::Spawn "Files: Generate Project Structure file" |
Generate project structure file |
| Shortcut | Context | Action | Description |
|---|---|---|---|
| β + β₯ + i | Workspace | assistant::ToggleFocus |
Toggle AI assistant |
| β + Esc | Terminal | terminal::ToggleViMode |
Toggle Vi mode in terminal |
Note
See the Zed Keybindings Documentation for more information.
| Shortcut | Action | Description |
|---|---|---|
| z + a | editor::ToggleFold |
Toggle fold at cursor |
| z + l | editor::Fold |
Fold at cursor |
| z + L | editor::FoldAll |
Fold all regions |
| z + h | editor::UnfoldLines |
Unfold at cursor |
| z + H | editor::UnfoldAll |
Unfold all regions |
| β + n | pane::ActivateNextItem |
Next tab/buffer |
| β + b | pane::ActivatePreviousItem |
Previous tab/buffer |
| β + x | pane::CloseActiveItem |
Close active tab/buffer |
| β + - | pane::SplitRight |
Split pane right |
| β + = | pane::SplitDown |
Split pane down |
| Shortcut | Action | Description |
|---|---|---|
| Space + ; | go_to_line::Toggle |
Toggle go to line |
| Space + R | editor::Rename |
Rename symbol |
| Space + @ | editor::RestartLanguageServer |
Restart language server |
| Space + g | editor::SelectLargerSyntaxNode |
Select larger syntax node |
| Space + G | editor::SelectSmallerSyntaxNode |
Select smaller syntax node |
| Space + j | terminal_panel::ToggleFocus |
Toggle terminal panel |
| Space + ΓΉ | git_panel::ToggleFocus |
Toggle Git panel |
| Space + 0 | vim::StartOfDocument |
Go to start of document |
| Space + o | editor::Hover |
Show hover information |
| Space + Tab | pane::ActivateNextItem |
Next tab/buffer |
| Space + β§ + Tab | pane::ActivatePreviousItem |
Previous tab/buffer |
| Space + β§ + s | project_symbols::Toggle |
Toggle project symbols |
| Space + . | editor::ToggleCodeActions |
Toggle code actions |
| Space + β§ + a | editor::FindAllReferences |
Find all references |
| Space + w + d | pane::CloseActiveItem |
Close active item |
| Space + * | vim::MoveToNext (partial_word) |
Move to next occurrence of word |
| Space + Β¨ | vim::MoveToPrevious (partial_word) |
Move to previous occurrence of word |
| Shortcut | Action | Description |
|---|---|---|
| Space + t + r | task::Spawn "Files: Rename Files (Script)" |
Run file rename script |
| Space + t + f | task::Spawn "Files: FZF" |
Open FZF file finder |
| Space + t + y | task::Spawn "Files: Yazi" |
Open Yazi file manager |
| Space + t + d | task::Spawn "Docker: Lazydocker" |
Open Lazydocker |
| Space + t + k | task::Spawn "Kubernetes: Lazykube" |
Open Lazykube |
| Space + t + p | task::Spawn "Files: Generate Project Structure file" |
Generate project structure file |
| Space + t + l | task::Spawn "Git: Generate Git Logs file" |
Generate Git logs file |
| Space + t + L | task::Spawn "Git: Generate Git Logs file (All)" |
Generate all Git logs file |
| Space + g + g | task::Spawn "Git: Lazygit" |
Open Lazygit |
| Space + t + t | task::Spawn "Laravel: Test" |
Run Laravel tests |
| Space + t + T | task::Spawn "Laravel: Test (coverage)" |
Run Laravel tests with coverage |
| Space + M | task::Spawn "Laravel: Migrate (fresh and seed)" |
Run Laravel migration fresh with seed |
| Shortcut | Action | Description |
|---|---|---|
| Space + f + f | file_finder::Toggle |
Toggle file finder |
| Space + f + p | projects::OpenRecent |
Open recent project |
| Space + f + b | vim::Search |
Search in current file |
| Space + f + s | outline::Toggle |
Toggle outline view |
| Space + f + r | search::ToggleReplace |
Toggle search & replace |
| Space + f + l | go_to_line::Toggle |
Toggle go to line |
| Space + d | editor::SelectAllMatches |
Select all matches |
| Space + e | project_panel::ToggleFocus |
Toggle project panel |
| Space + b + f | editor::Format |
Format current file |
| Shortcut | Action | Description |
|---|---|---|
| Space + i | assistant::InlineAssist |
Inline AI assist |
| Space + c + c + o | assistant::ToggleFocus |
Toggle AI assistant |
| Space + c + c + p | assistant::QuoteSelection |
Quote selected text to assistant |
| Shortcut | Action | Description |
|---|---|---|
| Space + s + k | zed::OpenKeymap |
Open keymap settings |
| Space + s + s | zed::OpenSettings |
Open settings |
| Space + s + t | zed::OpenTasks |
Open tasks |
| Space + s + T | theme_selector::Toggle |
Toggle theme selector |
| Space + s + d | diagnostics::Deploy |
Deploy diagnostics |
Note
You can use the default Vim keybindings in Zed by enabling Vim mode in the settings. See the Zed Vim Documentation for more information.
| Task Name | Command | Description |
|---|---|---|
| Git: Generate Git Logs file | ~/.config/zed/tasks/generate_git_log.sh $(git rev-parse --abbrev-ref HEAD) 400 |
Generate Git logs for current branch (limited entries) |
| Git: Generate Git Logs file (All) | ~/.config/zed/tasks/generate_git_log.sh $(git rev-parse --abbrev-ref HEAD) 999999 |
Generate Git logs for current branch (all entries) |
| Git: Lazygit | lazygit -p $ZED_WORKTREE_ROOT |
Open Lazygit in project root |
| Files: Rename Files (Script) | ~/.config/zed/tasks/rename_files.sh "${1:Path}" "${2:Pattern}" "${3:Find}" "${4:Replace}" |
Interactive batch file renaming with parameters |
| Files: FZF | fzf with preview and custom bindings |
Advanced file finder with preview and syntax highlighting |
| Files: Yazi | yazi |
Terminal file manager in project root |
| Files: Generate Project Structure | eza --tree --level=5 --git-ignore |
Generate project structure avoiding vendor/node_modules |
| Laravel: Test | php artisan test |
Run Laravel tests |
| Laravel: Test (coverage) | php artisan test --coverage |
Run Laravel tests with coverage |
| Laravel: Migrate (fresh and seed) | php artisan migrate:fresh --seed |
Fresh database migration with seed |
| Laravel: Migrate (fresh) | php artisan migrate:fresh |
Fresh database migration without seed |
| Docker: Lazydocker | lazydocker |
Terminal UI for Docker |
| Kubernetes: Lazykube | lazykube |
Terminal UI for Kubernetes |
| Database: Redis CLI | redis-cli |
Redis command line interface |
Note
The tasks are executed in the context of the current workspace. The ZED_WORKTREE_ROOT environment variable is set to the root directory of the current workspace.
See the Zed Tasks Documentation for more information.
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/kbrdn1/dotfiles/main/install.sh)"This script performs a complete installation:
- Install Xcode Command Line Tools
- Install Nix package manager (multi-user daemon)
- Install Homebrew (for GUI apps)
- Clone nix-config repository
- Install Oh My Zsh
- Apply dotfiles with Chezmoi
- Install Home Manager and apply Nix configuration
- Configure macOS system settings
- Start services (Sketchybar, Borders)
| Step | Command | Description |
|---|---|---|
| 1. Xcode CLI | xcode-select --install |
Install Apple command line tools |
| 2. Nix | sh <(curl -L https://nixos.org/nix/install) --daemon |
Install Nix (multi-user) |
| 3. Homebrew | /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" |
Install Homebrew |
| 4. Nix Config | git clone https://github.com/kbrdn1/nix-config.git ~/nix-config |
Clone Nix configuration |
| 5. Oh My Zsh | sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" |
Install Zsh framework |
| 6. Dotfiles | sh -c "$(curl -fsLS get.chezmoi.io)" -- init --apply https://github.com/kbrdn1/dotfiles.git |
Apply dotfiles |
| 7. Home Manager | nix run home-manager/release-24.11 -- switch --flake ~/nix-config |
Install CLI tools (62 packages) |
# Keyboard - Fast key repeat
defaults write NSGlobalDomain KeyRepeat -int 1
# Screenshots - Custom location and format
mkdir -p ~/Screenshots
defaults write com.apple.screencapture location ~/Screenshots
defaults write com.apple.screencapture type png
defaults write com.apple.screencapture disable-shadow -bool true
# Menu Bar - Auto-hide
defaults write NSGlobalDomain _HIHideMenuBar -bool true
# Dock - Auto-hide with fast animation
defaults write com.apple.dock autohide -bool true
defaults write com.apple.dock autohide-time-modifier -float 0.15
# Apply changes
killall SystemUIServer Dock| Step | Action | Command |
|---|---|---|
| 1. Restart Terminal | Apply shell changes | exec zsh |
| 2. Verify Nix | Check installed packages | nix profile list |
| 3. Configure AeroSpace | Reload window manager | aerospace --reload |
| 4. Install SetApp | Manual installation | Install from SetApp website |
| 5. Restart Computer | Complete setup | Full system restart |
| Issue | Solution |
|---|---|
| Nix not found | Restart terminal or run . /nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh |
| Home Manager fails | Ensure Nix daemon is running: sudo launchctl load /Library/LaunchDaemons/org.nixos.nix-daemon.plist |
| Sketchybar not visible | Run brew services restart sketchybar |
| AeroSpace not working | Check permissions in System Settings β Privacy & Security |
- Nix Migration: See MIGRATION_NIX.md for complete ASDF β Nix migration details
- Homebrew Cleanup: See MIGRATION_HOMEBREW.md for removed packages
- AeroSpace Setup: See MIGRATION-YABAI-TO-AEROSPACE.md for window manager setup
| Project | Author | Contribution |
|---|---|---|
| AeroSpace | @nikitabobko | Modern tiling window manager |
| Sketchybar | @FelixKratz | Custom menu bar and setup inspiration |
| JankyBorders | @FelixKratz | Window border visualization |
| Chezmoi | @twpayne | Dotfiles management tool |
| Home Manager | Nix Community | Declarative user environment |
| Nix | NixOS Foundation | Reproducible package management |
This project is licensed under the MIT License - see the LICENSE file for details.
