{
  inputs,
  config,
  lib,
  pkgs,
  ...
}:
let
  spicePkgs = inputs.spicetify-nix.legacyPackages.${pkgs.stdenv.hostPlatform.system};
  cfg = config.modules.spicetify;
in
{
  options.modules.spicetify = {
    enable = lib.mkEnableOption "spicetify configuration module";
  };
  imports = [
    inputs.spicetify-nix.homeManagerModules.default
  ];
  config.programs.spicetify = lib.mkIf cfg.enable {
    enable = true;

    enabledExtensions = with spicePkgs.extensions; [
      adblock
      hidePodcasts
      shuffle # shuffle+ (special characters are sanitized out of extension names)
    ];
    enabledCustomApps = with spicePkgs.apps; [
      newReleases
      # ncsVisualizer
    ];
    enabledSnippets = with spicePkgs.snippets; [
      # rotatingCoverart
      pointer
    ];

    theme = spicePkgs.themes.catppuccin;
    colorScheme = "mocha";
  };
}
