diff --git a/flake.lock b/flake.lock index 4f96b71..6b9b647 100644 --- a/flake.lock +++ b/flake.lock @@ -79,11 +79,11 @@ "agents_3": { "flake": false, "locked": { - "lastModified": 1777399938, - "narHash": "sha256-xXPqUQezDdDtF8MbpZnwD1HkybOYwF92evx8rJ6OXCU=", + "lastModified": 1778518220, + "narHash": "sha256-6AQs9VZ0/DuD4njPbYHRE4v+SgJc6SBrGwemTWxikVc=", "ref": "refs/heads/master", - "rev": "9a91f1ee0cf011a7eaf1f16a9e17610b0457e055", - "revCount": 85, + "rev": "b6e1aaa6261c5056d024d8d4785659eaa4e675e6", + "revCount": 87, "type": "git", "url": "https://code.m3ta.dev/m3tam3re/AGENTS" }, @@ -214,11 +214,11 @@ ] }, "locked": { - "lastModified": 1777369708, - "narHash": "sha256-1xW7cRZNsFNPQD+cE0fwnLVStnDth0HSoASEIFeT7uI=", + "lastModified": 1778445566, + "narHash": "sha256-oQvcadh2BCkrog+SGrG6YffKJrveYpjj3TdQJWaKhaM=", "owner": "nix-community", "repo": "bun2nix", - "rev": "e659e1cc4b8e1b21d0aa85f1c481f9db61ecfa98", + "rev": "2499dedd70744dba1815875b854818a3019e9e4c", "type": "github" }, "original": { @@ -280,11 +280,11 @@ ] }, "locked": { - "lastModified": 1777713215, - "narHash": "sha256-8GzXDOXckDWwST8TY5DbwYFjdvQLlP7K9CLSVx6iTTo=", + "lastModified": 1778958912, + "narHash": "sha256-6pvS9rIF9mZRj1ENwu9fDLHeG1JFDTCpRyy6vJhXkTA=", "owner": "nix-community", "repo": "disko", - "rev": "63b4e7e6cf75307c1d26ac3762b886b5b0247267", + "rev": "6e8dc7aa0e65fce67c76e18227a13a7d529f2cdf", "type": "github" }, "original": { @@ -322,11 +322,11 @@ ] }, "locked": { - "lastModified": 1777988971, - "narHash": "sha256-qIoWPDs+0/8JecyYgE3gpKQxW/4bLW/gp45vow9ioCQ=", + "lastModified": 1778716662, + "narHash": "sha256-m1Yf0wZ8j1OHjTc2UwHwyQRSnNeSgLJOd7q5Y45hzi4=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "0678d8986be1661af6bb555f3489f2fdfc31f6ff", + "rev": "f7c1a2d347e4c52d5fb8d10cb4d94b5884e546fb", "type": "github" }, "original": { @@ -448,11 +448,11 @@ ] }, "locked": { - "lastModified": 1778248595, - "narHash": "sha256-dhFgEjoeJMYN/7OY6xfxS799YB4IjbbYXTjyGIJyLpc=", + "lastModified": 1779118529, + "narHash": "sha256-+N//FFtb7YMg25HAhCejgQIkiqF5otLQtyrDrouRxlM=", "owner": "nix-community", "repo": "home-manager", - "rev": "fdb2ccba9d5e1238d32e0c4a3ec1a277efa80c1d", + "rev": "7519f615df36804ef40bcb03d4114f5ec9216d40", "type": "github" }, "original": { @@ -577,11 +577,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1778304612, - "narHash": "sha256-7FkBnR56KZ8RwY5kPd3ans8f68IYjF1J66gOUlLsiLA=", + "lastModified": 1779082717, + "narHash": "sha256-TE2ynGDxq6ahXlzxCDfatOYcnvvsOIi/QTMIZS0gWq0=", "owner": "numtide", "repo": "llm-agents.nix", - "rev": "c741913095c4815f6651aa0a2c24b3ce15e414e4", + "rev": "1f1ede7969673edd1d35764f5c930ecf96487156", "type": "github" }, "original": { @@ -602,11 +602,11 @@ "nur": "nur" }, "locked": { - "lastModified": 1778520138, - "narHash": "sha256-X58c8BUIshyUnp6XEKumFUYXqMFnrDTj+aGuGIbKwxg=", + "lastModified": 1778831458, + "narHash": "sha256-LYkFQCThaP6eZoBxmlte40Djr5GSliczNBPOh7cSKW0=", "ref": "refs/heads/master", - "rev": "a87d9510bd84f51bf93970730b8688ab7221bbdd", - "revCount": 30, + "rev": "4af565c76c34ac0b69240664a8af1582ea29b55b", + "revCount": 31, "type": "git", "url": "ssh://gitea@code.m3ta.dev/m3tam3re/m3ta-home" }, @@ -649,11 +649,11 @@ "openspec": "openspec_2" }, "locked": { - "lastModified": 1778518789, - "narHash": "sha256-9WZvO2BBofC2Wp4dvP4/aQ6Jhmcxh9lEGTYj09hLXrI=", + "lastModified": 1779112891, + "narHash": "sha256-UtRPNT1Pn2H42h2zc0GuyWi08wH6g00Mkth/bnuXu/Y=", "ref": "refs/heads/master", - "rev": "d64c581516c02702ec28e5d2304330d7b035235d", - "revCount": 295, + "rev": "f265aaff108496e835fcd318d5c850d8b49cbb73", + "revCount": 309, "type": "git", "url": "ssh://gitea@code.m3ta.dev/m3tam3re/nixpkgs" }, @@ -846,11 +846,11 @@ }, "nixpkgs-master_2": { "locked": { - "lastModified": 1778507606, - "narHash": "sha256-6Yc2dIhijc8G+dbMNocyclxF19dUrjaT+EeXGrXmXlg=", + "lastModified": 1779112318, + "narHash": "sha256-nuEcdfdbqAymI+Fgbw5YruK/vv1vbLo899I3rx+k5fw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "39a7b8d815fcc8b689d56fc4a3fa8de4ef93d169", + "rev": "caf7b95c65a9f0a94cad75dbf2ee2650286111fc", "type": "github" }, "original": { @@ -862,11 +862,11 @@ }, "nixpkgs-master_3": { "locked": { - "lastModified": 1778307931, - "narHash": "sha256-GkUOqeH6tb2/K1tv3t0F/xROIAh5/zEGutzEUIrQ+u8=", + "lastModified": 1779122413, + "narHash": "sha256-xMyCD6NytZ0yw5stzsARy6QUrIhD79bQwaXjk+u0DIM=", "owner": "nixos", "repo": "nixpkgs", - "rev": "8f689324e32c31a3d2c24490a19e266c3fb6508b", + "rev": "f391d520cf7d42da8e2099d634e0a1b5d8565bec", "type": "github" }, "original": { @@ -878,11 +878,11 @@ }, "nixpkgs-stable": { "locked": { - "lastModified": 1778003029, - "narHash": "sha256-q/nkKLDtHIyLjZpKhWk3cSK5IYsFqtMd6UtXF3ddjgA=", + "lastModified": 1778737229, + "narHash": "sha256-6xWoytx8jFW4PF1GjRm/i/53trbpKGfz6zjzQGBr4cI=", "owner": "nixos", "repo": "nixpkgs", - "rev": "0c88e1f2bdb93d5999019e99cb0e61e1fe2af4c5", + "rev": "d7a713c0b7e47c908258e71cba7a2d77cc8d71d5", "type": "github" }, "original": { @@ -894,11 +894,11 @@ }, "nixpkgs_10": { "locked": { - "lastModified": 1777954456, - "narHash": "sha256-hGdgeU2Nk87RAuZyYjyDjFL6LK7dAZN5RE9+hrDTkDU=", + "lastModified": 1778869304, + "narHash": "sha256-30sZNZoA1cqF5JNO9fVX+wgiQYjB7HJqqJ4ztCDeBZE=", "owner": "nixos", "repo": "nixpkgs", - "rev": "549bd84d6279f9852cae6225e372cc67fb91a4c1", + "rev": "d233902339c02a9c334e7e593de68855ad26c4cb", "type": "github" }, "original": { @@ -974,11 +974,11 @@ }, "nixpkgs_5": { "locked": { - "lastModified": 1778124196, - "narHash": "sha256-pYEytCNic/czazbV9r3tbQ6BZzqRBg/41x2dIC5ymOo=", + "lastModified": 1778869304, + "narHash": "sha256-30sZNZoA1cqF5JNO9fVX+wgiQYjB7HJqqJ4ztCDeBZE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "68a8af93ff4297686cb68880845e61e5e2e41d92", + "rev": "d233902339c02a9c334e7e593de68855ad26c4cb", "type": "github" }, "original": { @@ -1022,11 +1022,11 @@ }, "nixpkgs_8": { "locked": { - "lastModified": 1777954456, - "narHash": "sha256-hGdgeU2Nk87RAuZyYjyDjFL6LK7dAZN5RE9+hrDTkDU=", + "lastModified": 1778869304, + "narHash": "sha256-30sZNZoA1cqF5JNO9fVX+wgiQYjB7HJqqJ4ztCDeBZE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "549bd84d6279f9852cae6225e372cc67fb91a4c1", + "rev": "d233902339c02a9c334e7e593de68855ad26c4cb", "type": "github" }, "original": { @@ -1100,11 +1100,11 @@ ] }, "locked": { - "lastModified": 1778308643, - "narHash": "sha256-MpJyLyJWAwOy7rVs7pWqRwH2b8/rj+B524VzdonvXBs=", + "lastModified": 1779120149, + "narHash": "sha256-sd+58T+CK1i2wwnisIfGW42BOS3xzJcUbz4LtYwpF+w=", "owner": "nix-community", "repo": "NUR", - "rev": "98d908741ed91101cd0649961f12d2427bdba7d3", + "rev": "eec7c9af21e4617cca01d09d3b76329830bd6dee", "type": "github" }, "original": { @@ -1143,11 +1143,11 @@ ] }, "locked": { - "lastModified": 1778120451, - "narHash": "sha256-MUSPD16+hoFBfQWYahtNLN2BIFEAlFFo2KNofrc947g=", + "lastModified": 1778774456, + "narHash": "sha256-4V35mdLWax+GfuUK6hv2Vgri6N/vAJApjuCB3ROOY6w=", "owner": "Fission-AI", "repo": "OpenSpec", - "rev": "053d8a59d587f3c027a06ad80503a6b43d4f2a92", + "rev": "8498042fe8a738e8ad6facd94a5fc7f5025bf81d", "type": "github" }, "original": { @@ -1316,11 +1316,11 @@ "skills-anthropic": { "flake": false, "locked": { - "lastModified": 1778286877, - "narHash": "sha256-jKNYFom6R+Qw7LQ8vFPBe51JpqIP0tTSY8LM4aPlnT4=", + "lastModified": 1779058037, + "narHash": "sha256-GytrPFxw1PC2B0MILR6eNa83qAmxcjvLPkJzHQXT93g=", "owner": "anthropics", "repo": "skills", - "rev": "f458cee31a7577a47ba0c9a101976fa599385174", + "rev": "6a5bb06904ab164a345e41c381fc9097954b83da", "type": "github" }, "original": { @@ -1332,11 +1332,11 @@ "skills-basecamp": { "flake": false, "locked": { - "lastModified": 1777902228, - "narHash": "sha256-XDsWpUhFb/gxatRFla07nwoc2y3WwaBLsiDdtCnqx38=", + "lastModified": 1778520277, + "narHash": "sha256-gaV9eIIzOTBlL+9+e8HIgCs4pa1J8lAizRykkJVoVUM=", "owner": "basecamp", "repo": "basecamp-cli", - "rev": "b56ada1b3d42b42a9422ba39b30a223f9f960231", + "rev": "f948edca1dbce53640056743bf49f05cf39e736b", "type": "github" }, "original": { @@ -1348,11 +1348,11 @@ "skills-kestra": { "flake": false, "locked": { - "lastModified": 1773046826, - "narHash": "sha256-w1zFqfCAcu9FsaGf8uAyaaYVbSwwtUzotfDJ1jSt+q0=", + "lastModified": 1778585472, + "narHash": "sha256-jtK4wwLE4y4vsnonSmIhlAIJ/g0zqPDt3TO+Frb6LEU=", "owner": "kestra-io", "repo": "agent-skills", - "rev": "b536825bf5b9213d7a7fb5ab7c47823f1044490b", + "rev": "cc9cd71fbada02f8ac22a1f3ae7ad5e7242bda45", "type": "github" }, "original": { @@ -1380,11 +1380,11 @@ "skills-vercel": { "flake": false, "locked": { - "lastModified": 1778275952, - "narHash": "sha256-RYwgUf173N4lGalTta4HkBR7sdZwuzRoAY6M8JsT+RY=", + "lastModified": 1778774027, + "narHash": "sha256-Dzp0Gx+EcO7daxLTZ0QpMu4EEYdDWWEE8b5RF4Fv9QM=", "owner": "vercel-labs", "repo": "skills", - "rev": "c99a72b371b5b4da865f5afa87c5a686f3a46766", + "rev": "c5ad3a85b4d16666974b161131413d08bfef3f7e", "type": "github" }, "original": { diff --git a/hosts/m3-ares/home.nix b/hosts/m3-ares/home.nix index ace5f69..c82ba1c 100644 --- a/hosts/m3-ares/home.nix +++ b/hosts/m3-ares/home.nix @@ -43,7 +43,7 @@ with lib; { configType = "lua"; settings = { - # Startup commands + # Startup commands (using on hook for Lua config) on = { _args = [ "hyprland.start" @@ -55,48 +55,83 @@ with lib; { ]; }; - # Monitor configuration + # Monitor configuration — use Lua table syntax hl.monitor({...}) + # Each list entry generates one hl.monitor(...) call. monitor = [ - "eDP-1,preferred,0x0,1.25" - "HDMI-A-1,1920x1080@120,2560x0,1" + { + _args = [ + { + output = "eDP-1"; + mode = "preferred"; + position = "0x0"; + scale = 1.25; + } + ]; + } + { + _args = [ + { + output = "HDMI-A-1"; + mode = "1920x1080@120"; + position = "2560x0"; + scale = 1; + } + ]; + } ]; - # Workspace assignment + # Simple workspace→monitor bindings (legacy string format OK for hl.workspace) workspace = [ "1, monitor:eDP-1, default:true" "2, monitor:eDP-1" "3, monitor:eDP-1" "4, monitor:HDMI-A-1" - "5, monitor:HDMI-A-1,border:false,rounding:false" "6, monitor:HDMI-A-1" ]; - # Window rules using attribute-set syntax (match + options) + # Workspace rules with special properties → use workspace_rule + Lua table + workspace_rule = [ + { + _args = [ + { + workspace = "5"; + monitor = "HDMI-A-1"; + no_border = true; + no_rounding = true; + } + ]; + } + ]; + + # Window rules — match + effect fields as Lua table + # Per Hyprland Lua docs: match fields (class, title, etc.) and + # effect fields (workspace, fullscreen, opacity, etc.) together + # in one table passed to hl.window_rule({...}). window_rule = [ { _args = [ (lib.generators.mkLuaInline ''hl.dsp.window.match({ class = "dev.zed.Zed" })'') - {workspace = 1;} + {workspace = "1";} ]; } { _args = [ (lib.generators.mkLuaInline ''hl.dsp.window.match({ class = "Msty" })'') - {workspace = 1;} + {workspace = "1";} ]; } { _args = [ (lib.generators.mkLuaInline ''hl.dsp.window.match({ class = "com\\.obsproject\\.Studio" })'') - {workspace = 2;} + {workspace = "2";} ]; } { _args = [ (lib.generators.mkLuaInline ''hl.dsp.window.match({ class = "brave-browser" })'') { - workspace = 4; - opacity = 1.0; + workspace = "4"; + opacity = "1.0"; } ]; } @@ -104,21 +139,21 @@ with lib; { _args = [ (lib.generators.mkLuaInline ''hl.dsp.window.match({ class = "vivaldi-stable" })'') { - workspace = 4; - opacity = 1.0; + workspace = "4"; + opacity = "1.0"; } ]; } { _args = [ (lib.generators.mkLuaInline ''hl.dsp.window.match({ class = "steam_app_\\d+" })'') - {fullscreen = "on";} + {fullscreen = true;} ]; } { _args = [ (lib.generators.mkLuaInline ''hl.dsp.window.match({ class = "steam_app_\\d+" })'') - {workspace = 5;} + {workspace = "5";} ]; } { diff --git a/hosts/m3-kratos/home.nix b/hosts/m3-kratos/home.nix index 66e8368..06109b9 100644 --- a/hosts/m3-kratos/home.nix +++ b/hosts/m3-kratos/home.nix @@ -43,13 +43,32 @@ with lib; { configType = "lua"; settings = { - # Monitor configuration (dual 2560x1440@144 via DisplayPort) + # Monitor configuration — use Lua table syntax hl.monitor({...}) + # Each list entry generates one hl.monitor(...) call. monitor = [ - "DP-1,2560x1440@144,0x0,1" - "DP-2,2560x1440@144,2560x0,1" + { + _args = [ + { + output = "DP-1"; + mode = "2560x1440@144"; + position = "0x0"; + scale = 1; + } + ]; + } + { + _args = [ + { + output = "DP-2"; + mode = "2560x1440@144"; + position = "2560x0"; + scale = 1; + } + ]; + } ]; - # Workspace assignment + # Simple workspace→monitor bindings (legacy string format OK for hl.workspace) workspace = [ "1, monitor:DP-1, default:true" "2, monitor:DP-1" @@ -60,32 +79,35 @@ with lib; { "7, monitor:DP-2" ]; - # Window rules using attribute-set syntax (match + options) + # Window rules — match + effect fields as Lua table + # Per Hyprland Lua docs: match fields (class, title, etc.) and + # effect fields (workspace, fullscreen, opacity, etc.) together + # in one table passed to hl.window_rule({...}). window_rule = [ { _args = [ (lib.generators.mkLuaInline ''hl.dsp.window.match({ class = "dev.zed.Zed" })'') - {workspace = 1;} + {workspace = "1";} ]; } { _args = [ (lib.generators.mkLuaInline ''hl.dsp.window.match({ class = "Msty" })'') - {workspace = 1;} + {workspace = "1";} ]; } { _args = [ (lib.generators.mkLuaInline ''hl.dsp.window.match({ class = "com\\.obsproject\\.Studio" })'') - {workspace = 2;} + {workspace = "2";} ]; } { _args = [ (lib.generators.mkLuaInline ''hl.dsp.window.match({ class = "brave-browser" })'') { - workspace = 4; - opacity = 1.0; + workspace = "4"; + opacity = "1.0"; } ]; } @@ -93,8 +115,8 @@ with lib; { _args = [ (lib.generators.mkLuaInline ''hl.dsp.window.match({ class = "vivaldi-stable" })'') { - workspace = 4; - opacity = 1.0; + workspace = "4"; + opacity = "1.0"; } ]; }