1{
2 lib,
3 stdenvNoCC,
4 fetchFromGitHub,
5 gitUpdater,
6}:
7
8# NOTE:
9#
10# In order to use the whitesur sddm themes, the packages
11# kdePackages.plasma-desktop and kdePackages.qtsvg should be added to
12# the option services.displayManager.sddm.extraPackages of the sddm
13# module:
14#
15# environment.systemPackages = with pkgs; [
16# whitesur-kde
17# ];
18#
19# services.displayManager.sddm = {
20# enable = true;
21# package = pkgs.kdePackages.sddm;
22# theme = "WhiteSur-dark";
23# extraPackages = with pkgs; [
24# kdePackages.plasma-desktop
25# kdePackages.qtsvg
26# ];
27# };
28
29stdenvNoCC.mkDerivation rec {
30 pname = "whitesur-kde";
31 version = "2024-11-18";
32
33 src = fetchFromGitHub {
34 owner = "vinceliuice";
35 repo = "whitesur-kde";
36 rev = version;
37 hash = "sha256-052mKpf8e5pSecMzaWB3McOZ/uAqp/XGJjcVWnlKPLE=";
38 };
39
40 postPatch = ''
41 patchShebangs install.sh sddm/install.sh
42
43 substituteInPlace install.sh \
44 --replace-fail '[ "$UID" -eq "$ROOT_UID" ]' true \
45 --replace-fail /usr $out \
46 --replace-fail '"$HOME"/.Xresources' $out/doc/.Xresources
47
48 substituteInPlace sddm/install.sh \
49 --replace-fail '[ "$UID" -eq "$ROOT_UID" ]' true \
50 --replace-fail /usr $out \
51 --replace-fail 'REO_DIR="$(cd $(dirname $0) && pwd)"' 'REO_DIR=sddm'
52
53 substituteInPlace sddm/*/Main.qml \
54 --replace-fail /usr $out
55 '';
56
57 installPhase = ''
58 runHook preInstall
59
60 mkdir -p $out/doc
61 name= ./install.sh
62
63 mkdir -p $out/share/sddm/themes
64 sddm/install.sh
65
66 runHook postInstall
67 '';
68
69 passthru.updateScript = gitUpdater { };
70
71 meta = {
72 description = "MacOS big sur like theme for KDE Plasma desktop";
73 homepage = "https://github.com/vinceliuice/WhiteSur-kde";
74 license = lib.licenses.gpl3Only;
75 platforms = lib.platforms.all;
76 maintainers = [ lib.maintainers.romildo ];
77 };
78}