nixpkgs/pkgs/by-name/ca/catppuccin-sddm/package.nix
2024-05-11 08:20:51 +02:00

81 lines
1.8 KiB
Nix

{
lib,
stdenvNoCC,
fetchFromGitHub,
just,
kdePackages,
flavor ? "mocha",
font ? "Noto Sans",
fontSize ? "9",
background ? null,
loginBackground ? false,
}:
stdenvNoCC.mkDerivation rec {
pname = "catppuccin-sddm";
version = "1.0.0";
src = fetchFromGitHub {
owner = "catppuccin";
repo = "sddm";
rev = "v${version}";
hash = "sha256-SdpkuonPLgCgajW99AzJaR8uvdCPi4MdIxS5eB+Q9WQ=";
};
dontWrapQtApps = true;
nativeBuildInputs = [
just
];
propagatedBuildInputs = [
kdePackages.qtsvg
];
buildPhase = ''
runHook preBuild
just build
runHook postBuild
'';
installPhase = ''
runHook preInstall
mkdir -p "$out/share/sddm/themes/"
cp -r dist/catppuccin-${flavor} "$out/share/sddm/themes/catppuccin-${flavor}"
configFile=$out/share/sddm/themes/catppuccin-${flavor}/theme.conf
substituteInPlace $configFile \
--replace-fail 'Font="Noto Sans"' 'Font="${font}"' \
--replace-fail 'FontSize=9' 'FontSize=${fontSize}'
${lib.optionalString (background != null) ''
substituteInPlace $configFile \
--replace-fail 'Background="backgrounds/wall.jpg"' 'Background="${background}"' \
--replace-fail 'CustomBackground="false"' 'CustomBackground="true"'
''}
${lib.optionalString loginBackground ''
substituteInPlace $configFile \
--replace-fail 'LoginBackground="false"' 'LoginBackground="true"'
''}
runHook postInstall
'';
postFixup = ''
mkdir -p $out/nix-support
echo ${kdePackages.qtsvg} >> $out/nix-support/propagated-user-env-packages
'';
meta = {
description = "Soothing pastel theme for SDDM";
homepage = "https://github.com/catppuccin/sddm";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [elysasrc];
platforms = lib.platforms.linux;
};
}