worf: Add yabai/skhd. Add sarek as builder
This commit is contained in:
parent
1e2ecf966d
commit
6a27bc076b
2
base.nix
2
base.nix
|
@ -79,7 +79,7 @@
|
|||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDKzPICGew7uN0cmvRmbwkwTCodTBUgEhkoftQnZuO4Q felixalbrigtsen@gmail.com"
|
||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBTXSL0w7OUcz1LzEt1T3I3K5RgyNV+MYz0x/1RbpDHQ felixalb@worf"
|
||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFiPHhj0YbklJnJNcxD0IlzPxLTGfv095H5zyS/1Wb64 felixalb@edison.home.feal.no"
|
||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIH5M7hYl3saBNMAo6sczgfUvASEJWFHuERB7xvf4gxst nix-builder-voyager-worf"
|
||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIH5M7hYl3saBNMAo6sczgfUvASEJWFHuERB7xvf4gxst nix-builder-worf"
|
||||
];
|
||||
shell = pkgs.zsh;
|
||||
};
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
# Many settings should be handled by home manager. System-wide settings are however managed here.
|
||||
imports = [
|
||||
./yabai.nix
|
||||
];
|
||||
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
|
@ -28,7 +31,18 @@
|
|||
mandatoryFeatures = [ ];
|
||||
|
||||
sshUser = "felixalb";
|
||||
sshKey = "/var/root/.ssh/nix-builder-voyager";
|
||||
sshKey = "/var/root/.ssh/nix-builder";
|
||||
}
|
||||
{
|
||||
hostName = "sarek.home.feal.no";
|
||||
system = "x86_64-linux";
|
||||
|
||||
maxJobs = 6;
|
||||
supportedFeatures = [ "big-parallel" "benchmark" "nixos-test" ];
|
||||
mandatoryFeatures = [ ];
|
||||
|
||||
sshUser = "felixalb";
|
||||
sshKey = "/var/root/.ssh/nix-builder";
|
||||
}
|
||||
];
|
||||
|
||||
|
|
|
@ -0,0 +1,69 @@
|
|||
|
||||
{ config, pkgs, lib, ... }:
|
||||
let
|
||||
cfg = config.services.yabai;
|
||||
in {
|
||||
services.yabai = {
|
||||
enable = true;
|
||||
enableScriptingAddition = true;
|
||||
config = {
|
||||
layout = "bsp";
|
||||
debug_output = "on";
|
||||
focus_follows_mouse = "autoraise";
|
||||
mouse_follows_focus = "off";
|
||||
window_placement = "second_child";
|
||||
window_opacity = "off";
|
||||
# top_padding = 10;
|
||||
# bottom_padding = 10;
|
||||
# left_padding = 10;
|
||||
# right_padding = 10;
|
||||
window_gap = 10;
|
||||
};
|
||||
};
|
||||
|
||||
services.skhd = {
|
||||
enable = true;
|
||||
skhdConfig = let
|
||||
mod = "alt";
|
||||
mod2 = "alt + ctrl";
|
||||
mod3 = "alt + shift";
|
||||
in ''
|
||||
# Move window focus
|
||||
${mod} - j : yabai -m window --focus south
|
||||
${mod} - k : yabai -m window --focus north
|
||||
${mod} - h : yabai -m window --focus west
|
||||
${mod} - l : yabai -m window --focus east
|
||||
|
||||
${mod} - down : yabai -m window --focus south
|
||||
${mod} - up : yabai -m window --focus north
|
||||
${mod} - left : yabai -m window --focus west
|
||||
${mod} - right : yabai -m window --focus east
|
||||
|
||||
# Move windows
|
||||
${mod3} - j : yabai -m window --warp south
|
||||
${mod3} - k : yabai -m window --warp north
|
||||
${mod3} - h : yabai -m window --warp west
|
||||
${mod3} - l : yabai -m window --warp east
|
||||
|
||||
${mod3} - down : yabai -m window --warp south
|
||||
${mod3} - up : yabai -m window --warp north
|
||||
${mod3} - left : yabai -m window --warp west
|
||||
${mod3} - right : yabai -m window --warp east
|
||||
|
||||
# Move windows to different spaces
|
||||
${mod2} - 1 : yabai -m window --space 1
|
||||
${mod2} - 2 : yabai -m window --space 2
|
||||
${mod2} - 3 : yabai -m window --space 3
|
||||
${mod2} - 4 : yabai -m window --space 4
|
||||
${mod2} - 5 : yabai -m window --space 5
|
||||
${mod2} - 6 : yabai -m window --space 6
|
||||
${mod2} - 7 : yabai -m window --space 7
|
||||
|
||||
# Misc
|
||||
|
||||
${mod2} - f : yabai -m window --toggle zoom-fullscreen
|
||||
${mod2} - b : yabai -m space --balance
|
||||
${mod3} - space : yabai -m window --toggle float --grid 4:4:1:1:2:2
|
||||
'';
|
||||
};
|
||||
}
|
Loading…
Reference in New Issue