aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-05-07 19:03:46 -0500
committerCraig Jennings <c@cjennings.net>2026-05-07 19:03:46 -0500
commit64257ff711145b22812ae54df31d8b631c01e18e (patch)
tree6ba98481320f1762525eff292dcaaa8b25b8bb3b
parente7035d6ad0ea8e652559418dbdf036d4c6fe9a6f (diff)
downloadarchsetup-64257ff711145b22812ae54df31d8b631c01e18e.tar.gz
archsetup-64257ff711145b22812ae54df31d8b631c01e18e.zip
fix(hyprland): source conf.d at end so machine-local overrides win
The `source = $HOME/.config/hypr/conf.d/*.conf` line was at the top of `hyprland.conf` (line 9), before the `general`, `input`, `monitor`, and other blocks. Hyprland reads top to bottom, so anything later in the main file silently overrode whatever `conf.d/local.conf` set. `local.conf` exists so one machine can override the shared defaults, for instance a HiDPI laptop bumping its monitor scale or shrinking gaps. None of that worked. I moved the source line to the end of the file behind a labeled section comment. Now per-machine overrides take effect. To verify, I dropped a `general { gaps_in = 99 }` into a temporary file in `conf.d/` and reloaded. `hyprctl getoption general:gaps_in` came back as 99 instead of the main file's 25. I removed the test file and the value went back to 25.
-rw-r--r--dotfiles/hyprland/.config/hypr/hyprland.conf8
1 files changed, 7 insertions, 1 deletions
diff --git a/dotfiles/hyprland/.config/hypr/hyprland.conf b/dotfiles/hyprland/.config/hypr/hyprland.conf
index a585cb5..3e02029 100644
--- a/dotfiles/hyprland/.config/hypr/hyprland.conf
+++ b/dotfiles/hyprland/.config/hypr/hyprland.conf
@@ -6,7 +6,6 @@
# Monitor Configuration
# ============================================================================
monitor=,preferred,auto,auto
-source = $HOME/.config/hypr/conf.d/*.conf
# ============================================================================
# Startup Applications
@@ -325,3 +324,10 @@ bind = CTRL ALT $mod, K, exec, hyprctl kill
bindm = $mod, mouse:272, movewindow
bindm = $mod, mouse:273, resizewindow
bindm = $mod SHIFT, mouse:272, resizewindow
+
+# ============================================================================
+# Machine-local overrides
+# ============================================================================
+# Sourced last so machine-specific settings (monitor scale, gaps, keybinds)
+# override the defaults above. See conf.d/local.conf.
+source = $HOME/.config/hypr/conf.d/*.conf