feat(yabai)!: add JankyBorders

This commit is contained in:
reo101 2024-06-03 19:06:22 +03:00
parent 65b3a48cf2
commit 0b71023f81
Signed by: reo101
GPG key ID: 675AA7EF13964ACB
2 changed files with 54 additions and 46 deletions

View file

@ -1,26 +1,23 @@
{ lib, fetchFromGitHub, darwin, ... }: { lib, fetchFromGitHub, darwin, ... }:
# TODO: fix clang issue (works with native `/usr/bin/clang`)
#
# > Undefined symbols for architecture arm64:
# > "_SLSWindowManagementBridgeSetDelegate", referenced from:
# > _main in main.o
# > ld: symbol(s) not found for architecture arm64
darwin.apple_sdk.stdenv.mkDerivation rec { darwin.apple_sdk.stdenv.mkDerivation rec {
pname = "JankyBorders"; pname = "JankyBorders";
version = "dev"; version = "dev";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "FelixKratz"; owner = "FelixKratz";
repo = "JankyBorders"; repo = pname;
rev = "6bc201813bc163c6f5a20d5fa744f7b0d1f31773"; rev = "e2af0248fa40ead3f17f1d16c6288b8ddfd9f505";
sha256 = "sha256-b4+aJkP1yqz8x5EUDDVQmqrmLus+Y69RViAeaLvfGXE="; hash = "sha256-rYA6b6d3c4pJVUIV77z/JMcgKbZ+4qZdxkI21LwZcG4=";
}; };
buildInputs = with darwin.apple_sdk.frameworks; [ buildInputs = with darwin.apple_sdk.frameworks; [
AppKit AppKit
SkyLight SkyLight
darwin.apple_sdk.Libsystem
]; ];
installPhase = ''
mkdir -p $out/bin
cp ./bin/borders $out/bin/
'';
} }

View file

@ -14,47 +14,58 @@ in
}; };
}; };
config = mkIf cfg.enable { config = mkIf cfg.enable (
environment.systemPackages = [ let
(pkgs.callPackage ./setbg { borders = pkgs.callPackage ./borders { };
setbg = pkgs.callPackage ./setbg {
yabai = config.services.yabai.package; yabai = config.services.yabai.package;
}) };
]; in
{
environment.systemPackages = [
borders
setbg
];
services = { services = {
yabai = { yabai = {
enable = true; enable = true;
package = pkgs.yabai; package = pkgs.yabai;
enableScriptingAddition = true; enableScriptingAddition = true;
extraConfig = (builtins.readFile ./yabairc); extraConfig = /* bash */ ''
${builtins.readFile ./yabairc}
# Load JankyBorders
${borders}/bin/borders active_color=0xffe1e3e4 inactive_color=0xff494d64 width=5.0 &
'';
};
skhd = {
enable = true;
package = pkgs.skhd;
skhdConfig = (builtins.readFile ./skhdrc);
};
sketchybar = {
enable = true;
package = pkgs.sketchybar;
extraPackages = with pkgs; [
jq
];
config = import ./sketchybar pkgs;
};
}; };
skhd = { # For sketchybar
enable = true; homebrew = {
package = pkgs.skhd; taps = [
skhdConfig = (builtins.readFile ./skhdrc); "shaunsingh/SFMono-Nerd-Font-Ligaturized"
}; ];
casks = [
sketchybar = { "font-sf-mono-nerd-font-ligaturized"
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 = { meta = {
maintainers = with lib.maintainers; [ reo101 ]; maintainers = with lib.maintainers; [ reo101 ];