8886a68eda
* fix(home-manager/lazygit): support darwin without XDG Lazygit would fail to load becase the wrong path was being generated to the configuration file on darwin systems when XDG wasn't enabled. * Refactored * fix(home-manager/lazygit): actually use xdg directory when it's enabled --------- Co-authored-by: seth <getchoo@tuta.io>
34 lines
979 B
Nix
34 lines
979 B
Nix
{
|
|
config,
|
|
lib,
|
|
pkgs,
|
|
...
|
|
}:
|
|
let
|
|
inherit (lib) ctp;
|
|
inherit (config.catppuccin) sources;
|
|
|
|
cfg = config.programs.lazygit.catppuccin;
|
|
enable = cfg.enable && config.programs.lazygit.enable;
|
|
|
|
# NOTE: On MacOS specifically, k9s expects its configuration to be in
|
|
# `~/Library/Application Support` when not using XDG
|
|
enableXdgConfig = !pkgs.stdenv.hostPlatform.isDarwin || config.xdg.enable;
|
|
|
|
configDirectory =
|
|
if enableXdgConfig then
|
|
config.xdg.configHome
|
|
else
|
|
"${config.home.homeDirectory}/Library/Application Support";
|
|
configFile = "${configDirectory}/lazygit/config.yml";
|
|
in
|
|
{
|
|
options.programs.lazygit.catppuccin = lib.ctp.mkCatppuccinOpt { name = "lazygit"; } // {
|
|
accent = ctp.mkAccentOpt "lazygit";
|
|
};
|
|
|
|
config.home.sessionVariables = lib.mkIf enable {
|
|
# Ensure that the default config file is still sourced
|
|
LG_CONFIG_FILE = "${sources.lazygit}/themes-mergable/${cfg.flavor}/${cfg.accent}.yml,${configFile}";
|
|
};
|
|
}
|