{ lib
, stdenv
, fetchFromGitHub
, gtk-engine-murrine
, jdupes
}:

stdenv.mkDerivation rec {
  pname = "everforest-gtk";
  version = "unstable-2022-12-09";

  src = fetchFromGitHub {
    owner = "Fausto-Korpsvart";
    repo = "Everforest-GTK-Theme";
    rev = "af5920c8a16a53064cbcb7582bd7ef0ba8f44d83";
    sha256 = "lIAJN8ljmN4RyvyPpHoAheyQBX/qyGXZsGvoTl1vt50=";
  };

  sourceRoot = ".";

  nativeBuildInputs = [ jdupes ];

  propagatedUserEnvPkgs = [ gtk-engine-murrine ];

  installPhase = ''
    runHook preInstall

    mkdir -p $out/share/themes

    for f in `find source/themes -name "*.css"`; do
      grep -v '^  border: 1px ' $f > tmp
      mv tmp $f
    done

    mkdir -p $out/share/themes && cp -a source/themes/* $out/share/themes
    mkdir -p $out/share/icons && cp -a source/icons/* $out/share/icons

    jdupes -L -r $out/share

    runHook postInstall
  '';

  meta = with lib; {
    description = "Everforest colour palette for GTK";
    homepage = "https://github.com/Fausto-Korpsvart/Everforest-GTK-Theme";
    license = licenses.gpl3Only;
    platforms = platforms.all;
  };
}
