diff options
author | Sandro <sandro.jaeckel@gmail.com> | 2023-07-05 01:16:41 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-07-05 01:16:41 +0200 |
commit | 2995f57b67369b12c2fb35c0268f513a941896b1 (patch) | |
tree | 330cd881d355eb48a15ff4fceb1f7ab0adc16be4 | |
parent | 1ae1914f0c0ea2c3e98e404ba5125f0fddee381f (diff) | |
parent | ab01576cb1570db4b971f87bddb13d9c93f8b4bb (diff) |
Merge pull request #224352 from sents/chili-sddm-theme
Add Chili sddm theme
-rw-r--r-- | maintainers/maintainer-list.nix | 7 | ||||
-rw-r--r-- | pkgs/data/themes/chili-sddm/default.nix | 61 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 2 |
3 files changed, 70 insertions, 0 deletions
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index f2c604ebe5332..16d039e7d2fa9 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -14708,6 +14708,13 @@ githubId = 1286668; name = "Thilo Uttendorfer"; }; + sents = { + email = "finn@krein.moe"; + github = "sents"; + githubId = 26575793; + matrix = "@sents:matrix.org"; + name = "Finn Krein"; + }; sephalon = { email = "me@sephalon.net"; github = "sephalon"; diff --git a/pkgs/data/themes/chili-sddm/default.nix b/pkgs/data/themes/chili-sddm/default.nix new file mode 100644 index 0000000000000..a1b26248b8dba --- /dev/null +++ b/pkgs/data/themes/chili-sddm/default.nix @@ -0,0 +1,61 @@ +{ lib +, stdenv +, fetchFromGitHub +, qtgraphicaleffects +, themeConfig ? { } +}: +let + customToString = x: if builtins.isBool x then lib.boolToString x else toString x; + configLines = lib.mapAttrsToList (name: value: lib.nameValuePair name value) themeConfig; + configureTheme = "cp theme.conf theme.conf.orig \n" + + (lib.concatMapStringsSep "\n" + (configLine: + "grep -q '^${configLine.name}=' theme.conf || echo '${configLine.name}=' >> \"$1\"\n" + + "sed -i -e 's/^${configLine.name}=.*$/${configLine.name}=${ + lib.escape [ "/" "&" "\\"] (customToString configLine.value) + }/' theme.conf" + ) + configLines); +in +stdenv.mkDerivation { + pname = "sddm-chili-theme"; + version = "0.1.5"; + + src = fetchFromGitHub { + owner = "MarianArlt"; + repo = "sddm-chili"; + rev = "6516d50176c3b34df29003726ef9708813d06271"; + sha256 = "036fxsa7m8ymmp3p40z671z163y6fcsa9a641lrxdrw225ssq5f3"; + }; + + propagatedBuildInputs = [ + qtgraphicaleffects + ]; + + dontWrapQtApps = true; + + preInstall = configureTheme; + + postInstall = '' + mkdir -p $out/share/sddm/themes/chili + + mv * $out/share/sddm/themes/chili/ + ''; + + postFixup = '' + mkdir -p $out/nix-support + + echo ${qtgraphicaleffects} >> $out/nix-support/propagated-user-env-packages + ''; + meta = with lib; { + license = licenses.gpl3; + maintainers = with lib.maintainers; [ sents ]; + homepage = "https://github.com/MarianArlt/sddm-chili"; + description = "The chili login theme for SDDM"; + longDescription = '' + Chili is hot, just like a real chili! + Spice up the login experience for your users, your family and yourself. + Chili reduces all the clutter and leaves you with a clean, easy to use, login interface with a modern yet classy touch. + ''; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index dd6d65b36bf65..c15e408fa5f41 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -28068,6 +28068,8 @@ with pkgs; schedtool = callPackage ../os-specific/linux/schedtool { }; + sddm-chili-theme = libsForQt5.callPackage ../data/themes/chili-sddm { }; + sdparm = callPackage ../os-specific/linux/sdparm { }; sdrangel = libsForQt5.callPackage ../applications/radio/sdrangel { }; |