evcc: 0.131.4 -> 0.131.5
[NixPkgs.git] / pkgs / by-name / ca / catppuccin-kde / package.nix
blobb4ce9ed5d39f0a1479ff8c16398b183541353c20
1 { lib
2 , stdenvNoCC
3 , fetchFromGitHub
4 , fetchpatch
5 , flavour ? [ "frappe" ]
6 , accents ? [ "blue" ]
7 , winDecStyles ? [ "modern" ]
8 }:
10 let
11   validFlavours = [ "mocha" "macchiato" "frappe" "latte" ];
12   validAccents = [ "rosewater" "flamingo" "pink" "mauve" "red" "maroon" "peach" "yellow" "green" "teal" "sky" "sapphire" "blue" "lavender" ];
13   validWinDecStyles = [ "modern" "classic" ];
15   colorScript = ./color.sh;
18   lib.checkListOfEnum "Invalid accent, valid accents are ${toString validAccents}" validAccents accents
19   lib.checkListOfEnum "Invalid flavour, valid flavours are ${toString validFlavours}" validFlavours flavour
20   lib.checkListOfEnum "Invalid window decoration style, valid styles are ${toString validWinDecStyles}" validWinDecStyles winDecStyles
22 stdenvNoCC.mkDerivation rec {
23   pname = "kde";
24   version = "0.2.6";
26   src = fetchFromGitHub {
27     owner = "catppuccin";
28     repo = pname;
29     rev = "v${version}";
30     hash = "sha256-pfG0L4eSXLYLZM8Mhla4yalpEro74S9kc0sOmQtnG3w=";
31   };
33   patches = [
34     (fetchpatch {
35       url = "https://github.com/GiggleSquid/catppuccin-kde/commit/f0291c17d2e4711b0d0aac00e3dbb94ee89b4a82.patch";
36       hash = "sha256-iD+mEX2LRFmrCwLr3VAs6kzcTuZ231TKDn+U188iOss=";
37     })
38   ];
40   installPhase = ''
41     runHook preInstall
42     patchShebangs .
44     for WINDECSTYLE in ${toString winDecStyles}; do
45       for FLAVOUR in ${toString flavour}; do
46         for ACCENT in ${toString accents}; do
47           source ${colorScript}
48           ./install.sh $FLAVOUR $ACCENT $WINDECSTYLE
49         done;
50       done;
51     done;
53     runHook postInstall
54   '';
56   meta = with lib; {
57     description = "Soothing pastel theme for KDE";
58     homepage = "https://github.com/catppuccin/kde";
59     license = licenses.mit;
60     maintainers = with maintainers; [ michaelBelsanti gigglesquid ];
61   };