Imported from alepez/dotfiles (
AGENTS.md). Install upstream withnpx skills add alepez/dotfiles. Copyright stays with the author.
Agent instructions
This repository holds personal Arch Linux Hyprland / Wayland dotfiles.
Model
- Clone path is
~/.dotfiles. - Files under
home/are meant to be manually symlinked into~(seetrackedand./check). - Do not introduce stow, chezmoi, or other managers unless the user asks.
- Shared env is
env.sh. Private secrets and env go in~/.dotfiles-private(never invent secrets here).
Scripts: bin/ vs home/.local/bin/
bin/— every script lives here as a real file. Hyprland, greetd, keybinds, and other session plumbing call~/.dotfiles/bin/.... Not onPATHby itself.home/.local/bin/— symlinks only to../../../bin/<name>. This is the PATH export list (env.shprepends~/.local/bin). Symlink into~, then run by name. Add new entries totracked.
| Put it in… | When |
|---|---|
bin/ only |
Desktop/session helpers invoked by absolute path (start-hyprland, wlockscreen, browser-default, screenshots, dmenu plugins) |
bin/ + symlink in home/.local/bin/ |
Same script, also wanted as cmd on PATH |
Rule of thumb: source of truth → bin/; expose on PATH → symlink in home/.local/bin/.
Session source of truth
- Window manager:
home/.config/hypr/hyprland.lua - Bar:
home/.config/waybar/(monitor-profile,profiles/*.jsonc, gitignoredconfig.jsoncsymlink) - Lock / idle:
hyprlock.conf,hypridle.conf - Wallpaper:
home/.config/wpaperd/(not hyprpaper)
Wayland-only policy
Do not reintroduce X11 / i3 tooling, including:
xclip, xrandr, xset, xmodmap, setxkbmap, xcape, xbindkeys, picom, polybar, autorandr, feh, flameshot, betterlockscreen, xss-lock, i3-msg, gpaste (X-era clipboard manager)
Prefer:
| Role | Tools |
|---|---|
| Clipboard | wl-copy / wl-paste, cliphist |
| Screenshots | grim, slurp, swappy |
| Lock | hyprlock + hypridle + bin/wlockscreen |
| Wallpaper | wpaperd |
| Status bar | waybar + home/.config/waybar/profiles/ (config.jsonc symlink; waybar-from-monitors to snapshot outputs) |
| Monitors | monitor-profile + home/.config/hypr/monitors/profiles/ (current.lua symlink; also selects the matching waybar profile) |
Editing conventions
- Keep changes small and focused on the request.
- When adding or removing something under
home/, updatetracked. - Known migration work is listed in
TODO.md. Prefer fixing those over inventing parallel stacks. - When completing a migration, remove the matching
TODOcomments in the file and the entry inTODO.md.