anchor.diff:      # (This default is written by `vncserver` to `~/.vnc/xstartup.turbovnc`,
       # see https://github.com/TurboVNC/turbovnc/blob/ffdb57d9/unix/vncserver.in#L201.)
       # It checks for it using `which twm`.
  +    # vncserver needs also needs `xauth` and we add in `xterm` for convenience
       wrapProgram $out/bin/vncserver \
  -      --prefix PATH : ${lib.makeBinPath [ which xorg.twm ]}
  +      --prefix PATH : ${lib.makeBinPath [ which xorg.twm xorg.xauth xterm ]}
   
       # Patch /usr/bin/perl
       patchShebangs $out/bin/vncserver
  -
  -    # vncserver needs `xauth`
  -    wrapProgram $out/bin/vncserver \
  -      --prefix PATH : ${lib.makeBinPath (with xorg; [ xauth ])}
   
       # The viewer is in Java and requires `JAVA_HOME` (which is a single
       # path, cannot be multiple separated paths).
  
positive.code: , nixosTests
  
  # Dependencies
  , cmake
  , libjpeg_turbo
  , makeWrapper
  , mesa # for built-in 3D software rendering using swrast
  
negative.code:     "-DTJPEG_JNILIBRARY=${libjpeg_turbo.out}/lib/libturbojpeg.so"
      "-DXKB_BASE_DIRECTORY=${xkeyboard_config}/share/X11/xkb"
      "-DXKB_BIN_DIRECTORY=${xkbcomp}/bin"
      # use system libs
      "-DTVNC_SYSTEMLIBS=1"
      "-DTVNC_SYSTEMX11=1"
      "-DTVNC_DLOPENSSL=0"
    ];
  
    postInstall = ''
  