Un-ignore mako/config and bring it under dotfiles so the gamemode
do-not-disturb mode syncs across machines. [mode=do-not-disturb]
invisible=1 suppresses popups while retaining notification history.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Theme centralization:
- theme/colors.json is now the single source of truth for the palette.
- New theme/generate-theme.py renders, at install time, the three derived
artifacts into ~/.config: colors.css (waybar/wofi @import), mako config,
and hyprlock-colors.conf (hyprlang $tn_* variables).
- theme/colors.css removed from the repo (now generated); install.sh calls
the generator instead of the old inline mako snippet.
- hyprlock.conf sources the generated color file and uses $tn_* variables
instead of hardcoded rgba() values.
- Generator covered by theme/test_generate_theme.py.
Bluetooth:
- Added waybar built-in bluetooth module (config.jsonc + style.css), with
bluez/bluez-utils in packages.txt.
Includes design spec and implementation plan under docs/superpowers/.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- mako/config: generate from theme/colors.json in install.sh instead of
symlinking a static file — mako is the only tool that can't use CSS
variables, so colors.json is now the single source of truth for it
- gtklock/config.ini: remove hardcoded /home/alex absolute path for style;
gtklock falls back to $XDG_CONFIG_HOME/gtklock/style.css by default
- niri: replace inline grim spawn-sh with `spawn "screenshot"` to use the
existing script (which also copies to clipboard via wl-copy)
- install.sh: add screenshot symlink; mako generation step
- packages.txt: add snixembed (used in niri spawn-at-startup, was missing)
- swaylock/config: delete (replaced by gtklock in previous commit)
- .gitignore: add mako/config (now generated, not tracked)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>