18 pname = "tokyonight-gtk-theme";
54 lib.checkListOfEnum "${pname}: colorVariants" colorVariantList colorVariants lib.checkListOfEnum
55 "${pname}: sizeVariants"
59 "${pname}: themeVariants"
63 "${pname}: tweakVariants"
67 "${pname}: iconVariants"
71 stdenvNoCC.mkDerivation
74 version = "0-unstable-2024-11-06";
76 src = fetchFromGitHub {
77 owner = "Fausto-Korpsvart";
78 repo = "Tokyonight-GTK-Theme";
79 rev = "4dc45d60bf35f50ebd9ee41f16ab63783f80dd64";
80 hash = "sha256-AKZA+WCcfxDeNrNrq3XYw+SFoWd1VV2T9+CwK2y6+jA=";
83 propagatedUserEnvPkgs = [ gtk-engine-murrine ];
89 buildInputs = [ gnome-themes-extra ];
93 passthru.updateScript = unstableGitUpdater { };
96 patchShebangs themes/install.sh
101 mkdir -p $out/share/themes
103 ./install.sh -n Tokyonight \
104 ${lib.optionalString (colorVariants != [ ]) "-c " + toString colorVariants} \
105 ${lib.optionalString (sizeVariants != [ ]) "-s " + toString sizeVariants} \
106 ${lib.optionalString (themeVariants != [ ]) "-t " + toString themeVariants} \
107 ${lib.optionalString (tweakVariants != [ ]) "--tweaks " + toString tweakVariants} \
108 -d "$out/share/themes"
110 ${lib.optionalString (iconVariants != [ ]) ''
111 mkdir -p $out/share/icons
112 cp -a ${toString (map (v: "Tokyonight-${v}") iconVariants)} $out/share/icons/
118 description = "GTK theme based on the Tokyo Night colour palette";
119 homepage = "https://github.com/Fausto-Korpsvart/Tokyonight-GTK-Theme";
120 license = lib.licenses.gpl3Plus;
121 maintainers = with lib.maintainers; [
126 platforms = lib.platforms.unix;