From 98e6f4df21cd246ad8731231f5ee535e56c60a5f Mon Sep 17 00:00:00 2001 From: ulic-youthlic Date: Sun, 13 Jul 2025 06:04:55 +0800 Subject: [PATCH] module(kanshi): Add kanshi module to config monitors --- home/david/configurations/Tytonidae/niri.nix | 48 +---------------- home/david/modules/programs/kanshi.nix | 55 ++++++++++++++++++++ home/david/modules/programs/niri/default.nix | 1 + 3 files changed, 58 insertions(+), 46 deletions(-) create mode 100644 home/david/modules/programs/kanshi.nix diff --git a/home/david/configurations/Tytonidae/niri.nix b/home/david/configurations/Tytonidae/niri.nix index 2dd8be3..d95c717 100644 --- a/home/david/configurations/Tytonidae/niri.nix +++ b/home/david/configurations/Tytonidae/niri.nix @@ -1,10 +1,4 @@ -{ - config, - inputs, - ... -}: let - inherit (inputs.niri-flake.lib.kdl) node leaf flag; -in { +{config, ...}: { david.programs.niri = { waybar.settings = let cfg = config.david.programs.niri.waybar; @@ -34,44 +28,6 @@ in { } ]; }; - extraConfig = let - output = node "output"; - in [ - (output ["DP-3"] [ - (leaf "mode" ["2560x1440@169.900"]) - (leaf "scale" [1.0]) - (leaf "position" [ - { - x = 0; - y = 0; - } - ]) - (leaf "transform" ["normal"]) - (flag "focus-at-startup") - ]) - (output ["DP-1"] [ - (leaf "mode" ["2560x1440@169.900"]) - (leaf "scale" [1.0]) - (leaf "position" [ - { - x = 0; - y = 0; - } - ]) - (leaf "transform" ["normal"]) - (flag "focus-at-startup") - ]) - (output ["eDP-1"] [ - (leaf "mode" ["2560x1440@165.003"]) - (leaf "scale" [1.5]) - (leaf "position" [ - { - x = 2560; - y = 0; - } - ]) - (leaf "transform" ["normal"]) - ]) - ]; + extraConfig = []; }; } diff --git a/home/david/modules/programs/kanshi.nix b/home/david/modules/programs/kanshi.nix new file mode 100644 index 0000000..4c07955 --- /dev/null +++ b/home/david/modules/programs/kanshi.nix @@ -0,0 +1,55 @@ +{ + lib, + config, + ... +}: let + cfg = config.david.programs.kanshi; +in { + options = { + david.programs.kanshi = { + enable = lib.mkEnableOption "kanshi"; + }; + }; + config = lib.mkIf cfg.enable { + services.kanshi = { + enable = true; + settings = [ + { + output = { + criteria = "Chimei Innolux Corporation 0x1540 Unknown"; + mode = "2560x1440@165.003Hz"; + scale = 1.5; + adaptiveSync = true; + }; + } + { + output = { + criteria = "DP-1"; + mode = "2560x1440@169.900"; + scale = 1.0; + }; + } + { + profile.outputs = [ + { + criteria = "Chimei Innolux Corporation 0x1540 Unknown"; + position = "0,0"; + } + ]; + } + { + profile.outputs = [ + { + criteria = "Chimei Innolux Corporation 0x1540 Unknown"; + position = "2560,0"; + } + { + criteria = "DP-1"; + position = "0,0"; + } + ]; + } + ]; + }; + }; +} diff --git a/home/david/modules/programs/niri/default.nix b/home/david/modules/programs/niri/default.nix index bd1a8c1..8946b0c 100644 --- a/home/david/modules/programs/niri/default.nix +++ b/home/david/modules/programs/niri/default.nix @@ -91,6 +91,7 @@ in { swaync.enable = true; swaylock.enable = true; waypaper.enable = true; + kanshi.enable = true; }; programs.niri = { config =