66 lines
2.3 KiB
Nix
66 lines
2.3 KiB
Nix
{ pkgs, ... }:
|
|
let
|
|
swaymsg = "${pkgs.sway}/bin/swaymsg";
|
|
acer_left = "Acer Technologies Acer PE270K 0x0027A130";
|
|
acer_right = "Acer Technologies Acer PE270K 0x0027A150";
|
|
in
|
|
{
|
|
services.kanshi = {
|
|
enable = true;
|
|
|
|
settings = [
|
|
{
|
|
profile = {
|
|
name = "undocked";
|
|
outputs = [
|
|
{
|
|
criteria = "eDP-1";
|
|
scale = 1.3;
|
|
status = "enable";
|
|
}
|
|
];
|
|
};
|
|
}
|
|
{
|
|
profile = {
|
|
name = "home_office";
|
|
outputs = [
|
|
{
|
|
criteria = acer_left;
|
|
mode = "3840x2160";
|
|
scale = 1.75;
|
|
status = "enable";
|
|
position = "0,0";
|
|
transform = "normal";
|
|
}
|
|
{
|
|
criteria = acer_right;
|
|
mode = "3840x2160";
|
|
scale = 1.75;
|
|
status = "enable";
|
|
position = "2194,0";
|
|
transform = "normal";
|
|
}
|
|
{
|
|
criteria = "eDP-1";
|
|
status = "disable";
|
|
}
|
|
];
|
|
exec = ''
|
|
exec ${swaymsg} workspace 10 output '"${acer_left}"', workspace 10, move workspace to output '"${acer_left}"'
|
|
exec ${swaymsg} workspace 8 output '"${acer_left}"', workspace 8, move workspace to output '"${acer_left}"'
|
|
exec ${swaymsg} workspace 6 output '"${acer_left}"', workspace 6, move workspace to output '"${acer_left}"'
|
|
exec ${swaymsg} workspace 4 output '"${acer_left}"', workspace 4, move workspace to output '"${acer_left}"'
|
|
exec ${swaymsg} workspace 2 output '"${acer_left}"', workspace 2, move workspace to output '"${acer_left}"'
|
|
|
|
exec ${swaymsg} workspace 9 output '"${acer_right}"', workspace 9, move workspace to output '"${acer_right}"'
|
|
exec ${swaymsg} workspace 7 output '"${acer_right}"', workspace 7, move workspace to output '"${acer_right}"'
|
|
exec ${swaymsg} workspace 5 output '"${acer_right}"', workspace 5, move workspace to output '"${acer_right}"'
|
|
exec ${swaymsg} workspace 3 output '"${acer_right}"', workspace 3, move workspace to output '"${acer_right}"'
|
|
exec ${swaymsg} workspace 1 output '"${acer_right}"', workspace 1, move workspace to output '"${acer_right}"'
|
|
'';
|
|
};
|
|
}
|
|
];
|
|
};
|
|
}
|