nixpkgs/pkgs/kde/plasma/plasma-desktop/default.nix
K900 ce77225e21 pkgs/kde: init at 6.0.0 / 24.02.0, the Nix bits
This is the thing you want to look at.
2024-02-28 18:49:23 +03:00

67 lines
1.5 KiB
Nix

{
lib,
mkKdeDerivation,
runCommandLocal,
makeWrapper,
glib,
gsettings-desktop-schemas,
substituteAll,
util-linux,
pkg-config,
qtsvg,
qtwayland,
kaccounts-integration,
SDL2,
xkeyboard_config,
xorg,
libcanberra,
libxkbfile,
ibus,
}: let
# run gsettings with desktop schemas for using in "kcm_access" kcm
# and in kaccess
gsettings-wrapper = runCommandLocal "gsettings-wrapper" {nativeBuildInputs = [makeWrapper];} ''
mkdir -p $out/bin
makeWrapper ${glib}/bin/gsettings $out/bin/gsettings --prefix XDG_DATA_DIRS : ${gsettings-desktop-schemas.out}/share/gsettings-schemas/${gsettings-desktop-schemas.name}
'';
in
mkKdeDerivation {
pname = "plasma-desktop";
patches = [
(substituteAll {
src = ./hwclock-path.patch;
hwclock = "${lib.getBin util-linux}/bin/hwclock";
})
(substituteAll {
src = ./kcm-access.patch;
gsettings = "${gsettings-wrapper}/bin/gsettings";
})
./tzdir.patch
./no-discover-shortcut.patch
];
extraNativeBuildInputs = [pkg-config];
extraBuildInputs = [
qtsvg
qtwayland
kaccounts-integration
SDL2
libcanberra
libxkbfile
xkeyboard_config
xorg.libXcursor
xorg.libXft
xorg.xf86inputlibinput
xorg.xf86inputevdev
xorg.xorgserver
ibus
];
# wrap kaccess with wrapped gsettings so it can access accessibility schemas
qtWrapperArgs = ["--prefix PATH : ${lib.makeBinPath [gsettings-wrapper]}"];
}