diff --git a/pkgs/desktops/plasma-5/kwin/default.nix b/pkgs/desktops/plasma-5/kwin/default.nix index 87b435c2f37f..105fcd38a7b4 100644 --- a/pkgs/desktops/plasma-5/kwin/default.nix +++ b/pkgs/desktops/plasma-5/kwin/default.nix @@ -1,6 +1,6 @@ { mkDerivation, lib, - extra-cmake-modules, kdoctools, + extra-cmake-modules, kdoctools, fetchpatch, epoxy, lcms2, libICE, libSM, libcap, libdrm, libinput, libxkbcommon, mesa, pipewire, udev, wayland, xcb-util-cursor, xwayland, @@ -40,6 +40,15 @@ mkDerivation { ./0002-xwayland.patch ./0003-plugins-qpa-allow-using-nixos-wrapper.patch ./0001-NixOS-Unwrap-executable-name-for-.desktop-search.patch + # Pass special environments through arguemnts to `kwin_wayland`, bypassing + # ld.so(8) environment stripping due to `kwin_wayland`'s capabilities. + # We need this to have `TZDIR` correctly set for `plasmashell`, or + # everything related to timezone, like clock widgets, will be broken. + # https://invent.kde.org/plasma/kwin/-/merge_requests/1590 + (fetchpatch { + url = "https://invent.kde.org/plasma/kwin/-/commit/9a008b223ad696db3bf5692750f2b74e578e08b8.diff"; + sha256 = "sha256-f35G+g2MVABLDbAkCed3ZmtDWrzYn1rdD08mEx35j4k="; + }) ]; CXXFLAGS = [ ''-DNIXPKGS_XWAYLAND=\"${lib.getBin xwayland}/bin/Xwayland\"''