306 current 1970-01-01 01:00:00 23.11.20240514.9ddcaff 6.1.90 *
This commit is contained in:
144
modules/home/sway/kanshi.nix
Normal file
144
modules/home/sway/kanshi.nix
Normal file
@ -0,0 +1,144 @@
|
||||
{
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
cfg = config.kanshi;
|
||||
in {
|
||||
options = {
|
||||
kanshi.enable = lib.mkEnableOption "kanshi, a dynamic display recognizer";
|
||||
kanshi.laptop = lib.mkEnableOption "laptop workspaces";
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
services.kanshi = {
|
||||
enable = true;
|
||||
profiles = lib.mkIf cfg.laptop {
|
||||
laptop.outputs = [
|
||||
{
|
||||
criteria = "eDP-1";
|
||||
position = "0,0";
|
||||
}
|
||||
];
|
||||
dock_luhbots = {
|
||||
outputs = [
|
||||
{
|
||||
criteria = "eDP-1";
|
||||
position = "0,1080";
|
||||
}
|
||||
{
|
||||
criteria = "Dell Inc. DELL U2422HE GRCPH83";
|
||||
position = "0,0";
|
||||
}
|
||||
{
|
||||
criteria = "NEC Corporation E243WMi 7X313185NB";
|
||||
transform = "90";
|
||||
position = "1920,0";
|
||||
}
|
||||
];
|
||||
exec = [
|
||||
"${pkgs.sway}/bin/swaymsg workspace 1, move workspace to DP-4"
|
||||
"${pkgs.sway}/bin/swaymsg workspace 2, move workspace to DP-5"
|
||||
"${pkgs.sway}/bin/swaymsg workspace 3, move workspace to eDP-1"
|
||||
"${pkgs.sway}/bin/swaymsg workspace 4, move workspace to eDP-1"
|
||||
"${pkgs.sway}/bin/swaymsg workspace 5, move workspace to DP-4"
|
||||
];
|
||||
};
|
||||
dock_luhbots2 = {
|
||||
outputs = [
|
||||
{
|
||||
criteria = "eDP-1";
|
||||
position = "1080,1080";
|
||||
}
|
||||
{
|
||||
criteria = "Dell Inc. DELL U2422HE 8YCPH83";
|
||||
position = "1080,0";
|
||||
}
|
||||
{
|
||||
criteria = "NEC Corporation E243WMi 59118576NB";
|
||||
transform = "90";
|
||||
position = "0,0";
|
||||
}
|
||||
];
|
||||
exec = [
|
||||
"${pkgs.sway}/bin/swaymsg workspace 1, move workspace to DP-4"
|
||||
"${pkgs.sway}/bin/swaymsg workspace 2, move workspace to DP-5"
|
||||
"${pkgs.sway}/bin/swaymsg workspace 3, move workspace to eDP-1"
|
||||
"${pkgs.sway}/bin/swaymsg workspace 4, move workspace to eDP-1"
|
||||
"${pkgs.sway}/bin/swaymsg workspace 5, move workspace to DP-4"
|
||||
];
|
||||
};
|
||||
dock_luhbots3 = {
|
||||
outputs = [
|
||||
{
|
||||
criteria = "eDP-1";
|
||||
position = "0,1080";
|
||||
}
|
||||
{
|
||||
criteria = "Dell Inc. DELL U2422HE 53DCH83";
|
||||
position = "0,0";
|
||||
}
|
||||
{
|
||||
criteria = "Dell Inc. DELL U2412M 0FFXD46I4U5S";
|
||||
transform = "90";
|
||||
position = "1920,0";
|
||||
}
|
||||
];
|
||||
exec = [
|
||||
"${pkgs.sway}/bin/swaymsg workspace 1, move workspace to DP-6"
|
||||
"${pkgs.sway}/bin/swaymsg workspace 2, move workspace to DP-7"
|
||||
"${pkgs.sway}/bin/swaymsg workspace 3, move workspace to eDP-1"
|
||||
"${pkgs.sway}/bin/swaymsg workspace 4, move workspace to eDP-1"
|
||||
"${pkgs.sway}/bin/swaymsg workspace 5, move workspace to DP-6"
|
||||
];
|
||||
};
|
||||
dock_luhbots4 = {
|
||||
outputs = [
|
||||
{
|
||||
criteria = "eDP-1";
|
||||
position = "1080,1080";
|
||||
}
|
||||
{
|
||||
criteria = "Dell Inc. DELL P2422HE 4BXL9M3";
|
||||
position = "1080,0";
|
||||
}
|
||||
{
|
||||
criteria = "NEC Corporation E243WMi 75309334NB";
|
||||
transform = "90";
|
||||
position = "0,0";
|
||||
}
|
||||
];
|
||||
exec = [
|
||||
"${pkgs.sway}/bin/swaymsg workspace 1, move workspace to DP-3"
|
||||
"${pkgs.sway}/bin/swaymsg workspace 2, move workspace to DP-4"
|
||||
"${pkgs.sway}/bin/swaymsg workspace 3, move workspace to eDP-1"
|
||||
"${pkgs.sway}/bin/swaymsg workspace 4, move workspace to eDP-1"
|
||||
"${pkgs.sway}/bin/swaymsg workspace 5, move workspace to DP-3"
|
||||
];
|
||||
};
|
||||
laptop_hannspree = {
|
||||
outputs = [
|
||||
{
|
||||
criteria = "eDP-1";
|
||||
position = "320,1440";
|
||||
}
|
||||
{
|
||||
criteria = "HannStar Display Corp HC281UPB ";
|
||||
position = "0,0";
|
||||
mode = "3840x2160@60";
|
||||
scale = 1.5;
|
||||
}
|
||||
];
|
||||
exec = [
|
||||
"${pkgs.sway}/bin/swaymsg workspace 1, move workspace to HDMI-A-1"
|
||||
"${pkgs.sway}/bin/swaymsg workspace 2, move workspace to eDP-1"
|
||||
"${pkgs.sway}/bin/swaymsg workspace 3, move workspace to eDP-1"
|
||||
"${pkgs.sway}/bin/swaymsg workspace 4, move workspace to eDP-1"
|
||||
"${pkgs.sway}/bin/swaymsg workspace 5, move workspace to HDMI-A-1"
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
Reference in New Issue
Block a user