yabai + skhd services

master
Elias Almqvist 4 months ago
parent e07320c9fb
commit 60b2c05de7
No known key found for this signature in database
GPG Key ID: E31A99CE3E75A158
  1. 33
      nix-darwin/home.nix
  2. 35
      nix-darwin/modules/skhd.nix
  3. 35
      nix-darwin/modules/yabai.nix

@ -37,6 +37,11 @@
}; };
}; };
imports = [
./modules/yabai.nix
./modules/skhd.nix
];
# The home.packages option allows you to install Nix packages into your # The home.packages option allows you to install Nix packages into your
# environment. # environment.
home.packages = with pkgs; [ home.packages = with pkgs; [
@ -158,32 +163,4 @@
vimAlias = true; vimAlias = true;
defaultEditor = true; defaultEditor = true;
}; };
# Services
# yabai (wm)
services.yabai = {
enable = true;
package = pkgs.yabai;
config = {
layout = "bsp";
auto_balance = "on";
split_ratio = 0.50;
window_placement = "second_child";
};
# extraConfig = ''
# '';
};
# skhd (keybinds etc.)
services.skhd = {
enable = true;
package = pkgs.skhd;
skhdConfig = ''
# Add your skhd keybindings here
# For example:
# alt - return : open -n /Applications/iTerm.app
# shift + alt - r : yabai -m space --rotate 90
'';
};
} }

@ -0,0 +1,35 @@
{ config, pkgs, ... }:
{
# config
# service
home.file."Library/LaunchAgents/org.nixos.skhd.plist" = {
text = ''
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>org.nixos.skhd</string>
<key>ProgramArguments</key>
<array>
<string>${pkgs.skhd}/bin/skhd</string>
</array>
<key>EnvironmentVariables</key>
<dict>
<key>PATH</key>
<string>${pkgs.skhd}/bin:${pkgs.bash}/bin:/usr/bin:/bin:/usr/sbin:/sbin</string>
</dict>
<key>RunAtLoad</key>
<true/>
<key>KeepAlive</key>
<true/>
<key>StandardOutPath</key>
<string>${config.home.homeDirectory}/.skhd.out.log</string>
<key>StandardErrorPath</key>
<string>${config.home.homeDirectory}/.skhd.err.log</string>
</dict>
</plist>
'';
};
}

@ -0,0 +1,35 @@
{ config, pkgs, ... }:
{
# config
# service
home.file."Library/LaunchAgents/org.nixos.yabai.plist" = {
text = ''
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>org.nixos.yabai</string>
<key>ProgramArguments</key>
<array>
<string>${pkgs.yabai}/bin/yabai</string>
</array>
<key>EnvironmentVariables</key>
<dict>
<key>PATH</key>
<string>${pkgs.yabai}/bin:${pkgs.bash}/bin:/usr/bin:/bin:/usr/sbin:/sbin</string>
</dict>
<key>RunAtLoad</key>
<true/>
<key>KeepAlive</key>
<true/>
<key>StandardOutPath</key>
<string>${config.home.homeDirectory}/.yabai.out.log</string>
<key>StandardErrorPath</key>
<string>${config.home.homeDirectory}/.yabai.err.log</string>
</dict>
</plist>
'';
};
}
Loading…
Cancel
Save