rose-pine-nix/modules/home-manager/bat.nix

27 lines
889 B
Nix

{ config, pkgs, lib, ... }:
let cfg = config.programs.bat.catppuccin; in
{
options.programs.bat.catppuccin = {
enable = lib.mkEnableOption "Catppuccin theme";
flavour = lib.mkOption {
type = lib.types.enum [ "latte" "frappe" "macchiato" "mocha" ];
default = config.catppuccin.flavour;
description = "Catppuccin flavour for bat";
};
};
config = {
home.activation.batCache = "${pkgs.bat}/bin/bat cache --build";
programs.bat = lib.mkIf cfg.enable {
config.theme = "Catppuccin-${cfg.flavour}";
themes."Catppuccin-${cfg.flavour}" = builtins.readFile (pkgs.fetchFromGitHub
{
owner = "catppuccin";
repo = "bat";
rev = "ba4d16880d63e656acced2b7d4e034e4a93f74b1";
sha256 = "sha256-6WVKQErGdaqb++oaXnY3i6/GuH2FhTgK0v4TN4Y0Wbw=";
} + /Catppuccin-${cfg.flavour}.tmTheme);
};
};
}