anchor.diff: -{ lib, fetchurl, callPackage, substituteAll, python3, pkg-config, writeText
  -, xorg, gtk3, glib, pango, cairo, gdk-pixbuf, atk
  +{ lib, fetchurl, substituteAll, python3, pkg-config, writeText
  +, xorg, gtk3, glib, pango, cairo, gdk-pixbuf, atk, pandoc
   , wrapGAppsHook, xorgserver, getopt, xauth, util-linux, which
   , ffmpeg, x264, libvpx, libwebp, x265
   , libfakeXinerama
  
positive.code: 
    xf86videodummy = xorg.xf86videodummy.overrideDerivation (p: {
      patches = [
        ./0002-Constant-DPI.patch
        ./0003-fix-pointer-limits.patch
        ./0005-support-for-30-bit-depth-in-dummy-driver.patch
      ];
    });
  
negative.code: 
  in buildPythonApplication rec {
    pname = "xpra";
    version = "4.1.3";
  
    src = fetchurl {
      url = "https://xpra.org/src/${pname}-${version}.tar.gz";
      sha256 = "TesmPRmfWy+IqqxoNFd04oX/b2ryGreZPeh2r4sL8JQ=";
    };
  
    patches = [
      (substituteAll {  # correct hardcoded paths
        src = ./fix-paths.patch;
        inherit (xorg) xkeyboardconfig;
        inherit libfakeXinerama;
      })
      ./fix-41106.patch  # https://github.com/NixOS/nixpkgs/issues/41106
    ];
  
    postPatch = ''
      substituteInPlace setup.py --replace '/usr/include/security' '${pam}/include/security'
    '';
  
    nativeBuildInputs = [ pkg-config wrapGAppsHook pandoc ];
    buildInputs = with xorg; [
      libX11 xorgproto libXrender libXi
      libXtst libXfixes libXcomposite libXdamage
  