depot/third_party/nixpkgs/pkgs/by-name/gr/gruvbox-gtk-theme/package.nix

64 lines
1.4 KiB
Nix
Raw Normal View History

{
lib,
stdenvNoCC,
fetchFromGitHub,
gnome,
sassc,
gnome-themes-extra,
gtk-engine-murrine,
colorVariants ? [] # default: install all icons
}:
let
pname = "gruvbox-gtk-theme";
colorVariantList = [
"dark"
"light"
];
in
lib.checkListOfEnum "${pname}: colorVariants" colorVariantList colorVariants
stdenvNoCC.mkDerivation {
inherit pname;
version = "0-unstable-2024-06-27";
src = fetchFromGitHub {
owner = "Fausto-Korpsvart";
repo = "Gruvbox-GTK-Theme";
rev = "f568ccd7bf7570d8a27feb62e318b07b88e24b94";
hash = "sha256-4vGwPggHdNjtQ03UFgN4OH5+ZEkdIlivCdYuZ0Dsd5Q=";
};
propagatedUserEnvPkgs = [ gtk-engine-murrine ];
nativeBuildInputs = [ gnome.gnome-shell sassc ];
buildInputs = [ gnome-themes-extra ];
dontBuild = true;
postPatch = ''
patchShebangs themes/install.sh
'';
installPhase = ''
runHook preInstall
mkdir -p $out/share/themes
cd themes
./install.sh -n Gruvbox -c ${lib.concatStringsSep " " (if colorVariants != [] then colorVariants else colorVariantList)} --tweaks macos -d "$out/share/themes"
runHook postInstall
'';
meta = {
description = "GTK theme based on the Gruvbox colour palette";
homepage = "https://github.com/Fausto-Korpsvart/Gruvbox-GTK-Theme";
license = lib.licenses.gpl3Plus;
platforms = lib.platforms.unix;
maintainers = with lib.maintainers; [
luftmensch-luftmensch
math-42
d3vil0p3r
];
};
}