kakoune: add colorSchemePackage option
This makes it easy to declaratively manage the color scheme for kakoune via a nix package in your ``~/.config/kak/colors`` folder. The color scheme can then be declaratively selected by name using the existing hm option ``programs.kakoune.config.colorScheme``
This commit is contained in:
parent
afd2021bed
commit
fba19d46c5
|
@ -658,12 +658,29 @@ in {
|
||||||
{command}`nix-env -f '<nixpkgs>' -qaP -A kakounePlugins`.
|
{command}`nix-env -f '<nixpkgs>' -qaP -A kakounePlugins`.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
colorSchemePackage = mkOption {
|
||||||
|
type = with types; nullOr package;
|
||||||
|
default = null;
|
||||||
|
example = literalExpression "pkgs.kakounePlugins.kakoune-catppuccin";
|
||||||
|
description = ''
|
||||||
|
A kakoune color schemes to add to your colors folder.
|
||||||
|
This works because kakoune recursively checks `$XDG_CONFIG_HOME/kak/colors/`.
|
||||||
|
To apply the color scheme use `programs.kakoune.config.colorScheme = "theme"`.
|
||||||
|
'';
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable (mkMerge [
|
||||||
home.packages = [ kakouneWithPlugins ];
|
{
|
||||||
home.sessionVariables = mkIf cfg.defaultEditor { EDITOR = "kak"; };
|
home.packages = [ kakouneWithPlugins ];
|
||||||
xdg.configFile."kak/kakrc".source = configFile;
|
home.sessionVariables = mkIf cfg.defaultEditor { EDITOR = "kak"; };
|
||||||
};
|
xdg.configFile."kak/kakrc".source = configFile;
|
||||||
|
}
|
||||||
|
(mkIf (cfg.colorSchemePackage != null) {
|
||||||
|
xdg.configFile."kak/colors/${cfg.colorSchemePackage.name}".source =
|
||||||
|
cfg.colorSchemePackage;
|
||||||
|
})
|
||||||
|
]);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue