120 lines
2.0 KiB
Nix
120 lines
2.0 KiB
Nix
{ 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";
|
|
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;
|
|
};
|
|
})
|