args@{ inputs, lib, ... }: { xdg.configFile."hypr/plugins/split-monitor-workspaces".source = inputs.split-monitor-workspaces; wayland.windowManager.hyprland = { enable = true; # set the Hyprland and XDPH packages to null to use the ones from the NixOS module package = null; portalPackage = null; systemd.variables = ["--all"]; # extraLuaFiles = { # smw-setup = { # content = '' # local smw = require('plugins.split-monitor-workspaces') # smw.setup({ # workspace_count = 5 # }) # ''; # }; # }; settings = { smw = { _var = (lib.generators.mkLuaInline "require('plugins.split-monitor-workspaces')"); }; monitor = [ { output = "DP-1"; mode = "highres@highrr"; position = "0x0"; scale = 1; vrr = 1; } { output = "DP-2"; mode = "1680x1050@60"; position = "auto-center-right"; scale = 1; } { output = "HDMI-A-1"; mode = "highres@highrr"; position = "-1920x720"; scale = 1; vrr = 1; } { output = "DP-3"; disabled = true; } { output = ""; mode = "highres@highrr"; position = "auto"; scale = 1; } ]; bind = import ./binds.nix args; }; extraConfig = '' smw.setup({ workspace_count = 5 }) ''; }; }