1
0
Fork 1
mirror of https://github.com/NixOS/nixpkgs.git synced 2024-11-17 19:21:04 +00:00
nixpkgs/pkgs/data/themes/chili-sddm/default.nix
Alexis Hildebrandt f8c4a98e8e treewide: Remove the definite article from meta.description
nix run nixpkgs#silver-searcher -- -G '\.nix$' -0l 'description.*"([Tt]he)? ' pkgs \
  | xargs -0 nix run nixpkgs#gnused -- -i '' -Ee 's/(description.*")[Tt]he (.)/\1\U\2/'
2024-06-09 23:08:46 +02:00

62 lines
1.7 KiB
Nix

{ 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 = "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.
'';
};
}