From b2157e5f9931a476930ed668eb8fb9d9339efec6 Mon Sep 17 00:00:00 2001 From: Tobias Ostner Date: Thu, 14 Sep 2023 22:09:29 +0200 Subject: [PATCH] Configure yabai and starship --- .config/nix/flake.nix | 75 ++++++++++++++++++++++++++++++++++++++----- 1 file changed, 67 insertions(+), 8 deletions(-) diff --git a/.config/nix/flake.nix b/.config/nix/flake.nix index c4fa3a8..fd98649 100644 --- a/.config/nix/flake.nix +++ b/.config/nix/flake.nix @@ -10,22 +10,73 @@ outputs = inputs: { darwinConfigurations.TobAir = inputs.darwin.lib.darwinSystem { system = "aarch64-darwin"; - pkgs = import inputs.nixpkgs { system = "aarch64-darwin"; }; + pkgs = import inputs.nixpkgs { + system = "aarch64-darwin"; + config.allowUnfree = true; + }; modules = [ ({ pkgs, ... }: { programs.zsh.enable = true; - programs.fish.enable = true; environment.shells = [ pkgs.bash pkgs.zsh pkgs.fish ]; - environment.loginShell = pkgs.fish; + environment.loginShell = pkgs.zsh; + environment.systemPath = [ "/opt/homebrew/bin" ]; + fonts.fonts = [ + (pkgs.nerdfonts.override { + fonts = [ + "FiraCode" + "Iosevka" + "IosevkaTerm" + "JetBrainsMono" + "SourceCodePro" + ]; + }) + ]; nix.extraOptions = '' experimental-features = nix-command flakes ''; services.nix-daemon.enable = true; - system.defaults.finder.AppleShowAllExtensions = true; + services.yabai = { + enable = true; + config = { + layout = "bsp"; + window_placement = "second_child"; + top_padding = 8; + bottom_padding = 8; + left_padding = 8; + right_padding = 8; + window_gap = 8; + mouse_follows_focus = "on"; + mouse_modifier = "alt"; + mouse_action1 = "move"; + mouse_action2 = "resize"; + mouse_drop_action = "swap"; + }; + extraConfig = '' + yabai -m rule --add app="^System Settings$" manage=off + ''; + }; + services.skhd = { + enable = true; + skhdConfig = '' + alt - right : yabai -m window --focus east + alt - left : yabai -m window --focus west + ''; + }; system.defaults.dock.autohide = true; + system.defaults.dock.mru-spaces = false; + system.defaults.dock.orientation = "right"; system.defaults.NSGlobalDomain.InitialKeyRepeat = 14; system.defaults.NSGlobalDomain.KeyRepeat = 1; + system.defaults.finder.AppleShowAllExtensions = true; + system.defaults.finder.AppleShowAllFiles = true; users.users.tobi.home = "/Users/tobi"; + homebrew = { + enable = true; + brews = [ + "imagemagick" + "trippy" + ]; + }; }) inputs.home-manager.darwinModules.home-manager { @@ -36,6 +87,7 @@ ({ pkgs, ... }: { home.stateVersion = "23.11"; home.packages = [ + pkgs.raycast pkgs.ripgrep pkgs.fd pkgs.curl @@ -45,16 +97,23 @@ PAGER = "less"; CLICOLOR = 1; EDITOR = "emacs"; + NIXPKGS_ALLOW_UNFREE = 1; }; programs.bat.enable = true; programs.git.enable = true; - programs.fish.enable = true; - programs.fish.shellAliases = { ls = "ls --color=auto -F"; }; - programs.starship.enable = true; + programs.starship = { + enable = true; + enableZshIntegration = true; + settings.gcloud.disabled = true; + settings.aws.disabled = true; + settings.hostname.style = "bold green"; + }; programs.alacritty = { enable = true; - settings.font.size = 16; + settings.font.size = 14; + settings.font.normal.family = "Iosevka Comfy"; }; + programs.kitty.enable = true; }) ]; };