1
0
Fork 0

Add sway/wofi/foot Wayland desktop stack with per-host toggle

New opt-in feature for x86_64 desktops: sway + wofi + foot + swaybg +
swaylock + swayidle + grim + slurp + waybar + wl-clipboard. mako on
arch, dunst on debian (mako isn't packaged for debian).

Files:
- .chezmoi.yaml.tmpl: added data.sway flag (true on miche/byte/kaiser,
  false on Pis). Override per host with ~/.config/chezmoi/features/sway
  or ~/.config/chezmoi/features/no-sway marker files.
- run_once_40-install-sway.sh.tmpl: installs packages if .sway=true,
  exits 0 otherwise. Sets up the marker file.
- dot_config/{sway,foot,wofi,waybar,mako}/: existing configs from miche.

Per-host toggle workflow:
  # On any box, enable sway:
  touch ~/.config/chezmoi/features/sway
  chezmoi apply

  # On a sway-enabled box, disable it:
  touch ~/.config/chezmoi/features/no-sway
  rm ~/.config/chezmoi/features/sway
  chezmoi apply

Currently sway packages are already installed on miche (existed before
this commit). Byte will get them via the new run_once_40 script.
Pis (rye, crouton) are unaffected — install script early-returns.
This commit is contained in:
Rain 2026-06-22 14:23:56 -04:00
parent fe73bbecba
commit 6bbaa8f2f5
21 changed files with 965 additions and 1 deletions

View file

@ -0,0 +1,17 @@
# ~/.config/sway/config.d/50-launchers.conf
# Launcher keybinds. The base $menu var in config is the drun launcher.
# These add run mode, window switcher, and the powermenu.
# $mod+grave already used by foot dropdown — don't clobber.
# $mod+Tab already used by workspace back_and_forth — don't clobber.
# $mod+slash is the cheatsheet — keep it.
# Exec ad-hoc command (not in $PATH discovery)
bindsym $mod+F12 exec wofi --show run --prompt "exec"
# Sway window switcher (replaces `swayr`-style overview)
bindsym $mod+F11 exec wofi --show window
# Power menu — dmenu mode driven by wofi-powermenu script.
# wofi has no custom-mode feature; the script does the dispatch.
bindsym $mod+Escape exec $HOME/.local/bin/wofi-powermenu