Skip to content
luxulingPublic

About

My personal dotfiles for configuring my development environment

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

My Personal Dotfiles

My Arch Linux + Hyprland setup: a monochrome GrokNight look, one quickshell notch instead of a bar, and coding agents wired into it.

Screenshot

Screenshot

What I use

Package Tool
hypr Hyprland (Lua config), hyprpaper, hyprlock, wallpaper
quickshell Quickshell notch: bar, notifications, app launcher (ALT+SPACE), project picker (ALT+T), reminders, media, coding agents
ghostty Ghostty terminal with blur and shaders
zshrc, starship Zsh with Starship prompt
tmux Tmux (no plugins)
nvim NeoVim
scripts coding (tmux session per project) and mf-recording.sh (screen recording)
gtk GTK Orchis-Grey theme, retrosmart cursor
helium Helium browser flags
git Git config and global ignore
fastfetch fastfetch
pi pi coding agent (~/.pi/agent)

Font: Maple Mono NF CN. Coding agents: Claude Code and Grok Build, both shown in the notch.

How to use

Each top-level folder is a GNU Stow package.

git clone --recurse-submodules git@github.com:luxuling/dotfiles.git ~/dotfiles
cd ~/dotfiles
stow fastfetch ghostty git gtk helium hypr nvim pi quickshell scripts starship tmux zshrc

Not in the repo, install them yourself:

  • zsh plugins cloned to ~/.zsh/zsh-autosuggestions and ~/.zsh/zsh-syntax-highlighting
  • Orchis-Grey GTK theme and the retrosmart cursor (~/.local/share/icons)
  • notch runtime tools: mpg123, pw-play, cava, hyprpicker, hyprshot, curl
  • secrets go in ~/.secrets.zsh, which is git-ignored
  • the wallpaper. hyprpaper and hyprlock both read ~/.config/hypr/wallpaper.jpg, and that file is git-ignored

The notch starts from Hyprland as qs -c notch. Reload it with ALT+SHIFT+R.

Coding agents in the notch

The notch shows Claude Code and Grok Build sessions. It handles permission prompts, questions and plan approval, and plays a chime when an agent finishes. Agents reach it through ~/.config/quickshell/notch/agent-hook, wired into ~/.claude/settings.json (Grok reads the same file):

"hooks": {
  "SessionStart": [{ "hooks": [{ "type": "command", "command": "~/.config/quickshell/notch/agent-hook", "timeout": 5 }] }],
  "UserPromptSubmit": [{ "hooks": [{ "type": "command", "command": "~/.config/quickshell/notch/agent-hook", "timeout": 5 }] }],
  "Stop": [{ "hooks": [{ "type": "command", "command": "~/.config/quickshell/notch/agent-hook", "timeout": 5 }] }],
  "Notification": [{ "hooks": [{ "type": "command", "command": "~/.config/quickshell/notch/agent-hook", "timeout": 5 }] }],
  "SessionEnd": [{ "hooks": [{ "type": "command", "command": "~/.config/quickshell/notch/agent-hook", "timeout": 5 }] }],
  "PostToolUse": [{ "matcher": "*", "hooks": [{ "type": "command", "command": "~/.config/quickshell/notch/agent-hook", "timeout": 5 }] }],
  "PostToolUseFailure": [{ "matcher": "*", "hooks": [{ "type": "command", "command": "~/.config/quickshell/notch/agent-hook", "timeout": 5 }] }],
  "PermissionRequest": [{ "matcher": "*", "hooks": [{ "type": "command", "command": "~/.config/quickshell/notch/agent-hook", "timeout": 3600 }] }],
  "PreToolUse": [{ "matcher": "AskUserQuestion|ask_user_question|ExitPlanMode", "hooks": [{ "type": "command", "command": "~/.config/quickshell/notch/agent-hook", "timeout": 3600 }] }]
}

Grok reports cancelled and failed turns with its own events, so ~/.grok/hooks/notch.json adds them:

{
  "hooks": {
    "StopCancelled": [{ "hooks": [{ "type": "command", "command": "~/.config/quickshell/notch/agent-hook", "timeout": 5 }] }],
    "StopFailure": [{ "hooks": [{ "type": "command", "command": "~/.config/quickshell/notch/agent-hook", "timeout": 5 }] }]
  }
}

The agent list also shows usage limits:

  • Claude: the claude-hud statusline mirrors its rate limits to a file once ~/.claude/plugins/claude-hud/config.json has { "display": { "externalUsageWritePath": "~/.cache/claude-usage.json" } } (use the absolute path).
  • Grok: weekly credit use is read from the last billing line in ~/.grok/logs/unified.jsonl.

License

This repository is licensed under the MIT License. See the LICENSE file for more details.

About

My personal dotfiles for configuring my development environment

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages