Misterio77 / nix-colors

Modules and schemes to make theming with Nix awesome.
GNU General Public License v3.0
465 stars 38 forks source link

Is `schemeToYAML` deprecation really necessary? #56

Open jfvillablanca opened 2 months ago

jfvillablanca commented 2 months ago

I recently discovered that nix-colors comes with a schemeToYAML helper function. This is a helpful function to manage my wezterm colorscheme. Docs to Wezterm load_base16_scheme

For context: this is how I configured wezterm

{
  inputs,
  lib,
  config,
  ...
}: let
  cfg = config.myHomeModules.wezterm;
  # generate a YAML file for wezterm to generate the colorscheme
  pathToScheme = builtins.toFile "wezterm-base16.yaml" (inputs.nix-colors.lib.schemeToYAML config.colorScheme);
in {
  options.myHomeModules.wezterm = {
    enable =
      lib.mkEnableOption "enables wezterm"
      // {
        default = false;
      };
  };
  config = lib.mkIf cfg.enable {
    programs = {
      wezterm = {
        enable = true;
        extraConfig = ''
          -- load the base16 scheme from the path
          local colors, _ = wezterm.color.load_base16_scheme("${pathToScheme}")

          return {
            -- ## COLORSCHEME ##
            colors = colors,
            -- other config
          }
        '';
      };
    };
  };
}

My question is, can we keep the utils? If that's out of the question, can you suggest an alternative method? Thank you. Awesome tool btw :100: