{ lib , stdenv , fetchFromGitHub , fetchpatch , arcan , audit , dbus , libepoxy , fontutil , libGL , libX11 , libXau , libXdmcp , libXfont2 , libdrm , libgcrypt , libmd , libselinux , libtirpc , libxcb , libxkbfile , libxshmfence , mesa , meson , nettle , ninja , openssl , pixman , pkg-config , systemd , xcbutil , xcbutilwm , xkbcomp , xkeyboard_config , xorgproto , xtrans }: stdenv.mkDerivation (finalPackages: { pname = "xarcan"; version = "unstable-2023-11-03"; src = fetchFromGitHub { owner = "letoram"; repo = "xarcan"; rev = "380ea856307f593535dfc8b23799938db69e31b0"; hash = "sha256-RdizezCbJylQDkOmUdqL0lBTNLsjyvo+lKAjfZXTXf4="; }; nativeBuildInputs = [ meson ninja pkg-config ]; buildInputs = [ arcan audit dbus libepoxy fontutil libGL libX11 libXau libXdmcp libXfont2 libdrm libgcrypt libmd libselinux libtirpc libxcb libxkbfile libxshmfence mesa nettle openssl pixman systemd xcbutil xcbutilwm xkbcomp xkeyboard_config xorgproto xtrans ]; configureFlags = [ "--disable-int10-module" "--disable-static" "--disable-xnest" "--disable-xorg" "--disable-xvfb" "--disable-xwayland" "--enable-glamor" "--enable-glx" "--enable-ipv6" "--enable-kdrive" "--enable-record" "--enable-xarcan" "--enable-xcsecurity" "--with-xkb-bin-directory=${xkbcomp}/bin" "--with-xkb-output=/tmp" "--with-xkb-path=${xkeyboard_config}/share/X11/xkb" ]; meta = { homepage = "https://github.com/letoram/letoram"; description = "Patched Xserver that bridges connections to Arcan"; mainProgram = "Xarcan"; longDescription = '' xarcan is a patched X server with a KDrive backend that uses the arcan-shmif to map Xlib/Xcb/X clients to a running arcan instance. It allows running an X session as a window under Arcan. ''; license = with lib.licenses; [ mit ]; maintainers = with lib.maintainers; [ AndersonTorres ]; platforms = lib.platforms.unix; }; })