Flake inputs updated (home-manager → 7519f615, nixpkgs → d2339023, etc.),
now configType = "lua" is supported.
Changes to Hyprland settings:
- monitor: replaced legacy comma-string format with Lua table syntax
using _args + {output, mode, position, scale} for hl.monitor({...})
calls. Home Manager now generates correct hl.monitor() calls instead
of passing raw comma strings.
- workspace: kept simple "id, monitor:X, default:true" string format
for basic monitor bindings (compatible with hl.workspace(...)).
- workspace_rule: added separate workspace_rule entries using
_args + {workspace, monitor, no_border, no_rounding} for special
cases (e.g. WS 5 border:false,rounding:false → no_border=true,
no_rounding=true as per current Hyprland Lua docs).
- window_rule: updated workspace values from int to string ("1",
"2", etc.), updated fullscreen from "on" to boolean true, kept
opacity as string "1.0" per Hyprland docs, kept idle_inhibit as
string "focus".
- on hook: kept as-is (hyprland.start + tuxedo-backlight).
Validate: nix-instantiate --parse passes for both host files.
- Switch from hyprlang (hyprland.conf) to lua (hyprland.lua) config format
- Use configType = "lua" explicitly for clarity
- Replace exec-once with on = { _args = [...] } hook for startup commands
- Convert windowrule strings to window_rule attribute-set syntax with
mkLuaInline match objects and option sets per Home Manager module
- Change mkIf guard from config.desktop.wm.hyprland.enable to
config.wayland.windowManager.hyprland.enable (correct option path)
- Preserve all existing host-specific monitor layouts and window rules
- Both configs: m3-ares (eDP-1 + HDMI) and m3-kratos (DP-1 + DP-2)
- Run alejandra after changes; parse validation passes (exit 0)
Refs:
- https://github.com/nix-community/home-manager/blob/master/modules/services/window-managers/hyprland.nix
- https://wiki.hypr.land/Configuring/Start/
- Update opencode to v1.1.34
- Add new opencode agents (Prometheus, Metis, Momus, Atlas) and categories
- Switch m3ta-nixpkgs back to local path
- Add basecamp client credentials for m3-ares and m3-kratos
- Set NIXOS_OZONE_WL=1 for better Wayland app support in Hyprland
- Remove redundant wrl.enable from flatpak portal config