{ mkKdeDerivation, pkg-config, qtquick3d, qtsensors, qttools, qtvirtualkeyboard, qtwayland, libinput, xorg, xwayland, libdisplay-info, libei, mesa, lcms2, libcap, pipewire, krunner, python3, }: mkKdeDerivation { pname = "kwin"; patches = [ # Follow symlinks when searching for aurorae configs # FIXME(later): upstream? ./0001-follow-symlinks.patch # The rest are NixOS-specific hacks ./0003-plugins-qpa-allow-using-nixos-wrapper.patch ./0001-NixOS-Unwrap-executable-name-for-.desktop-search.patch ./0001-Lower-CAP_SYS_NICE-from-the-ambient-set.patch ]; postPatch = '' patchShebangs src/plugins/strip-effect-metadata.py ''; # TZDIR may be unset when running through the kwin_wayland wrapper, # but we need it for the lockscreen clock to render qtWrapperArgs = [ "--set-default TZDIR /etc/zoneinfo" ]; extraNativeBuildInputs = [pkg-config python3]; extraBuildInputs = [ qtquick3d qtsensors qttools qtvirtualkeyboard qtwayland krunner mesa # libgbm lcms2 libcap libdisplay-info libei libinput pipewire xorg.libxcvt # we need to provide this so it knows our xwayland supports new features xwayland ]; }