rix101/modules/nix-darwin/yabai/default.nix
reo101 c57ddea18b
feat(nix-darwin): add setbg script
Sets the background of all spaces on all displays/desktops to an image (passed as a command-line argument) preserving the focused spaces and window after running
Depends on `yabai` (>`System Integrity Protection must be partially disabled.`) and `jq`
Written in `applescript`
2024-01-21 22:14:04 +02:00

62 lines
1.1 KiB
Nix

{ lib, pkgs, config, ... }:
with lib;
let
cfg = config.reo101.yabai;
in
{
imports = [
];
options = {
reo101.yabai = {
enable = mkEnableOption "reo101 yabai config";
};
};
config = mkIf cfg.enable {
environment.systemPackages = [
(pkgs.callPackage ./setbg {
yabai = config.services.yabai.package;
})
];
services = {
yabai = {
enable = true;
package = pkgs.yabai;
enableScriptingAddition = true;
extraConfig = (builtins.readFile ./yabairc);
};
skhd = {
enable = true;
package = pkgs.skhd;
skhdConfig = (builtins.readFile ./skhdrc);
};
sketchybar = {
enable = true;
package = pkgs.sketchybar;
extraPackages = with pkgs; [
jq
];
config = import ./sketchybar pkgs;
};
};
# For sketchybar
homebrew = {
taps = [
"shaunsingh/SFMono-Nerd-Font-Ligaturized"
];
casks = [
"font-sf-mono-nerd-font-ligaturized"
];
};
};
meta = {
maintainers = with lib.maintainers; [ reo101 ];
};
}