summaryrefslogtreecommitdiffstats
path: root/pkgs/kde/plasma/kwin/default.nix
blob: 55538a99fba5e0617189e03303878ffff6e86fcc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
{
  mkKdeDerivation,
  pkg-config,
  qtquick3d,
  qtsensors,
  qttools,
  qtvirtualkeyboard,
  qtwayland,
  libinput,
  libxcvt,
  xwayland,
  libcanberra,
  libdisplay-info,
  libei,
  libevdev,
  libgbm,
  lcms2,
  pipewire,
  python3,
}:
mkKdeDerivation {
  pname = "kwin";

  patches = [
    ./0003-plugins-qpa-allow-using-nixos-wrapper.patch
    ./0001-NixOS-Unwrap-executable-name-for-.desktop-search.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

    libgbm
    lcms2
    libcanberra
    libdisplay-info
    libei
    libevdev
    libinput
    pipewire

    libxcvt
    # we need to provide this so it knows our xwayland supports new features
    xwayland
  ];

  # plugin QML relies on non-global imports
  dontQmlLint = true;
}