stylix/modules/spicetify/spicetify.nix

46 lines
1.6 KiB
Nix
Raw Normal View History

2024-12-24 16:04:27 +01:00
{ config, options, lib, pkgs, ... }:
{
options.stylix.targets.spicetify.enable =
config.lib.stylix.mkEnableTarget "Spicetify" true;
config = lib.mkIf (config.stylix.enable && config.stylix.targets.spicetify.enable && (config.programs?spicetify)) (
lib.optionalAttrs (builtins.hasAttr "spicetify" options.programs) {
programs.spicetify = {
theme = {
name = "stylix";
src = pkgs.writeTextFile {
name = "color.ini";
destination = "/color.ini";
text = with config.lib.stylix.colors; ''
[base]
text = ${base05}
subtext = ${base05}
main = ${base00}
main-elevated = ${base02}
highlight = ${base02}
highlight-elevated = ${base03}
sidebar = ${base01}
player = ${base05}
card = ${base04}
shadow = ${base00}
selected-row = ${base05}
button = ${base05}
button-active = ${base05}
button-disabled = ${base04}
tab-active = ${base02}
notification = ${base02}
notification-error = ${base08}
equalizer = ${base0B}
misc = ${base02}
'';
};
# Sidebar configuration is incompatible with the default navigation bar
sidebarConfig = false;
};
colorScheme = "base";
};
}
);
}