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