diff options
Diffstat (limited to 'x11-servers')
24 files changed, 647 insertions, 0 deletions
diff --git a/x11-servers/Makefile b/x11-servers/Makefile index 996f9657edd6..5062b1a90ec7 100644 --- a/x11-servers/Makefile +++ b/x11-servers/Makefile @@ -4,6 +4,10 @@ SUBDIR += x2vnc SUBDIR += x2x SUBDIR += xarcan + SUBDIR += xlibre-ephyr + SUBDIR += xlibre-nest + SUBDIR += xlibre-server + SUBDIR += xlibre-vfb SUBDIR += xorg-server SUBDIR += xwayland diff --git a/x11-servers/xlibre-ephyr/Makefile b/x11-servers/xlibre-ephyr/Makefile new file mode 100644 index 000000000000..949a278a6b74 --- /dev/null +++ b/x11-servers/xlibre-ephyr/Makefile @@ -0,0 +1,25 @@ +PORTNAME= xlibre-ephyr +PORTVERSION= ${XLIBRE_VER} +CATEGORIES= x11-servers + +MAINTAINER= b-aazbsd@proton.me +COMMENT= Xlibre Xephyr server +WWW= https://github.com/X11Libre/xserver/ + +LICENSE= MIT + +CONFLICTS_INSTALL= xephyr + +USES+= xlibre-cat:server +USE_XORG+=xcb + +MESON_ARGS+= -Dglamor=true +LIB_DEPENDS+= libepoxy.so:graphics/libepoxy + +LIB_DEPENDS+= libxcb-render-util.so:x11/xcb-util-renderutil \ + libxcb-image.so:x11/xcb-util-image \ + libxcb-icccm.so:x11/xcb-util-wm \ + libxcb-keysyms.so:x11/xcb-util-keysyms \ + libxcb-util.so:x11/xcb-util + +.include "../xlibre-server/Makefile.common" diff --git a/x11-servers/xlibre-ephyr/pkg-descr b/x11-servers/xlibre-ephyr/pkg-descr new file mode 100644 index 000000000000..29bfa7d93fb0 --- /dev/null +++ b/x11-servers/xlibre-ephyr/pkg-descr @@ -0,0 +1,3 @@ +Xephyr is a kdrive server that outputs to a window on a pre-existing +'host' X display. Think Xnest but with support for modern extensions +like composite, damage and randr. diff --git a/x11-servers/xlibre-nest/Makefile b/x11-servers/xlibre-nest/Makefile new file mode 100644 index 000000000000..0701580ed906 --- /dev/null +++ b/x11-servers/xlibre-nest/Makefile @@ -0,0 +1,19 @@ +PORTNAME= xlibre-nest +PORTVERSION= ${XLIBRE_VER} +CATEGORIES= x11-servers + +MAINTAINER= b-aazbsd@proton.me +COMMENT= Xlibre Xnest server +WWW= https://github.com/X11Libre/xserver/ + +LICENSE= MIT + +CONFLICTS_INSTALL= xorg-nestserver + +USES= xlibre-cat:server +USE_XORG+=xcb + +LIB_DEPENDS+= libxcb-util.so:x11/xcb-util \ + libxcb-icccm.so:x11/xcb-util-wm + +.include "../xlibre-server/Makefile.common" diff --git a/x11-servers/xlibre-nest/pkg-descr b/x11-servers/xlibre-nest/pkg-descr new file mode 100644 index 000000000000..5b039cfeaf1a --- /dev/null +++ b/x11-servers/xlibre-nest/pkg-descr @@ -0,0 +1 @@ +This package contains Xnest, a nesting X Server that displays on an X Server. diff --git a/x11-servers/xlibre-server/Makefile b/x11-servers/xlibre-server/Makefile new file mode 100644 index 000000000000..829d8dacc862 --- /dev/null +++ b/x11-servers/xlibre-server/Makefile @@ -0,0 +1,54 @@ +PORTNAME= xlibre-server +PORTVERSION= ${XLIBRE_VER} +CATEGORIES= x11-servers + +MAINTAINER= b-aazbsd@proton.me +COMMENT= Xlibre X server +WWW= https://github.com/X11Libre/xserver/ + +LICENSE= MIT + +CONFLICTS= xorg-server + +USES+= xlibre-cat:server + +OPTIONS_SUB= YES +OPTIONS_DEFINE= UDEV SUID +OPTIONS_DEFAULT=UDEV SUID + +UDEV_DESC= Enable udev (For libinput & autoconfiguration/hotplug). +UDEV_MESON_ON= -Dudev=true -Dudev_kms=true +UDEV_MESON_OFF= -Dudev=false -Dudev_kms=false +UDEV_LIB_DEPENDS= libudev.so:devel/libudev-devd + +SUID_DESC= Enable the setuid binary (For starting X as a normal user). +SUID_MESON_ON= -Dsuid_wrapper=true +SUID_MESON_OFF= -Dsuid_wrapper=false + +LIB_DEPENDS+= libxcvt.so:x11/libxcvt \ + libdrm.so:graphics/libdrm \ + libepoxy.so:graphics/libepoxy \ + libepoll-shim.so:devel/libepoll-shim + +MESON_ARGS+= -Dlog_dir=/var/log \ + -Ddrm=true + +PLIST_SUB+= FONTPATHD="${FONTPATHD:S,^${PREFIX}/,,}" + +USE_XORG+= pciaccess + +USE_GL+= gbm + +.include "../xlibre-server/Makefile.common" + +OLDMODULEDIR= /lib/xorg/modules +post-install: + @${MKDIR} ${STAGEDIR}${PREFIX}/etc/X11/xorg.conf.d + @${MKDIR} ${STAGEDIR}${PREFIX}${OLDMODULEDIR}/extensions + @${MKDIR} ${STAGEDIR}${PREFIX}${OLDMODULEDIR}/drivers + @${MKDIR} ${STAGEDIR}${PREFIX}${OLDMODULEDIR}/input + @${MKDIR} ${STAGEDIR}${FONTPATHD} + @${MKDIR} ${STAGEDIR}${PREFIX}/share/X11/xorg.conf.d + @${INSTALL_DATA} ${FILESDIR}/20-evdev-kbd.conf \ + ${STAGEDIR}${PREFIX}/share/X11/xorg.conf.d +.include <bsd.port.post.mk> diff --git a/x11-servers/xlibre-server/Makefile.common b/x11-servers/xlibre-server/Makefile.common new file mode 100644 index 000000000000..60f301137b51 --- /dev/null +++ b/x11-servers/xlibre-server/Makefile.common @@ -0,0 +1,90 @@ +_XMASTERDIR_REL=../xlibre-server/ +XMASTERDIR= ${_XMASTERDIR_REL:tA} +PATCHDIR?= ${XMASTERDIR}/files +DISTINFO_FILE?= ${XMASTERDIR}/distinfo + +.include "${XMASTERDIR}/Makefile.version" + + +USES+= gl compiler:c11 meson pkgconfig tar:xz xorg +USE_GL+= gl +USE_XORG+= pixman xau xdmcp xfont2 xkbfile xorgproto xshmfence xtrans + +OPTIONS_DEFINE+=LIBUNWIND +OPTIONS_DEFAULT+=LIBUNWIND +LIBUNWIND_DESC= Enable libunwind for better stack traces in case of an error. + +SERVERS= xorg xnest xephyr xvfb +SERVERNAME= ${PORTNAME:S/^xlibre-/x/:S/xserver/xorg/} + +BUILD_DEPENDS+= ${LOCALBASE}/libdata/pkgconfig/dri.pc:graphics/mesa-dri +RUN_DEPENDS+= xkeyboard-config>=2.5:x11/xkeyboard-config \ + xkbcomp:x11/xkbcomp \ + ${LOCALBASE}/libdata/pkgconfig/dri.pc:graphics/mesa-dri + +MESON_ARGS+= -Dxwin=false \ + -Dxquartz=false \ + -Ddtrace=false \ + -Dhal=false \ + -Dsystemd_logind=false \ + -Dxselinux=false \ + -Dfallback_input_driver=libinput \ + -Ddocs=false \ + -Dxcsecurity=true +MESON_ARGS+= -D${SERVERNAME}=true + +.for f in ${SERVERS:N${SERVERNAME}} +MESON_ARGS+= -D${f}=false +.endfor + +FONTPATH_ROOT?= ${LOCALBASE}/share/fonts +FONTPATHD?= ${PREFIX}/etc/X11/fontpath.d +DEFAULT_FONTPATH_LIST= \ + ${FONTPATH_ROOT}/misc/ \ + ${FONTPATH_ROOT}/TTF/ \ + ${FONTPATH_ROOT}/OTF/ \ + ${FONTPATH_ROOT}/Type1/ \ + ${FONTPATH_ROOT}/100dpi/ \ + ${FONTPATH_ROOT}/75dpi/ \ + catalogue:${FONTPATHD} +MESON_ARGS+= -Ddefault_font_path=${DEFAULT_FONTPATH_LIST:ts,} + + +# Non X server common flags +.if ${SERVERNAME} != xorg +MESON_ARGS+= -Dudev=false \ + -Dudev_kms=false +PLIST= +PKGMESSAGE= +BINARY_NAME= ${SERVERNAME:C/^(.).*/\1/:tu}${SERVERNAME:C/^.//} +PLIST_FILES= bin/${BINARY_NAME} \ + share/man/man1/${BINARY_NAME}.1.gz +.endif + +.include <bsd.port.pre.mk> +.if ${OPSYS}==FreeBSD +AMD64=amd64 +.else +AMD64=x86_64 +.endif + +.if ${PORT_OPTIONS:MLIBUNWIND} +. if ${ARCH} == aarch64 || ${ARCH} == ${AMD64} || ${ARCH} == armv7 || ${ARCH} == i386 || ${ARCH} == powerpc || ${ARCH} == powerpc64 || ${ARCH} == powerpc64le +LIB_DEPENDS+= libunwind.so:devel/libunwind +MESON_ARGS+= -Dlibunwind=true +. endif +.else +MESON_ARGS+= -Dlibunwind=false +.endif + +.if ${OPSYS} == FreeBSD +MESON_ARGS+= -Dsha1=libmd +.endif + +.if ${SERVERNAME} != xorg +post-install: + ${RM} -r ${STAGEDIR}${PREFIX}/lib/xorg/protocol.txt + ${RMDIR} ${STAGEDIR}${PREFIX}/lib/xorg + ${RM} ${STAGEDIR}${PREFIX}/share/man/man1/Xserver.1 +.include <bsd.port.post.mk> +.endif diff --git a/x11-servers/xlibre-server/Makefile.version b/x11-servers/xlibre-server/Makefile.version new file mode 100644 index 000000000000..762f9dcca745 --- /dev/null +++ b/x11-servers/xlibre-server/Makefile.version @@ -0,0 +1,4 @@ +XLIBRE_MJR_VER=25.0 +XLIBRE_MIN_VER=0.16 + +XLIBRE_VER=${XLIBRE_MJR_VER}.${XLIBRE_MIN_VER} diff --git a/x11-servers/xlibre-server/distinfo b/x11-servers/xlibre-server/distinfo new file mode 100644 index 000000000000..9e7aa077a41f --- /dev/null +++ b/x11-servers/xlibre-server/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1763716462 +SHA256 (xlibre/server/X11Libre-xserver-25.0.0.16-xlibre-xserver-25.0.0.16_GH0.tar.gz) = 0187e57331daefa75ddc33a4f878ef4c08526b83dc91dbc51a25375d2ff33b8c +SIZE (xlibre/server/X11Libre-xserver-25.0.0.16-xlibre-xserver-25.0.0.16_GH0.tar.gz) = 5415775 diff --git a/x11-servers/xlibre-server/files/20-evdev-kbd.conf b/x11-servers/xlibre-server/files/20-evdev-kbd.conf new file mode 100644 index 000000000000..7a73fb641c36 --- /dev/null +++ b/x11-servers/xlibre-server/files/20-evdev-kbd.conf @@ -0,0 +1,6 @@ +Section "InputClass" + Identifier "Evdev keyboard" + MatchDevicePath "/dev/input/event*" + MatchIsKeyboard "on" + Option "XkbRules" "evdev" +EndSection diff --git a/x11-servers/xlibre-server/files/patch-config_udev.c b/x11-servers/xlibre-server/files/patch-config_udev.c new file mode 100644 index 000000000000..38b3e84db5ad --- /dev/null +++ b/x11-servers/xlibre-server/files/patch-config_udev.c @@ -0,0 +1,56 @@ +* Don't pass the device parameter when using kbdmux to prevent conflict +* +* Specify a driver to use for basic devices (keyboard and mouse), otherwise none attaches +* +--- config/udev.c.orig 2017-03-15 18:05:25 UTC ++++ config/udev.c +@@ -29,6 +29,7 @@ + + #include <libudev.h> + #include <ctype.h> ++#include <fcntl.h> + #include <unistd.h> + + #include "input.h" +@@ -188,7 +189,21 @@ device_added(struct udev_device *udev_de + attrs.product = strdup(name); + input_options = input_option_new(input_options, "name", name); + input_options = input_option_new(input_options, "path", path); +- input_options = input_option_new(input_options, "device", path); ++ if(strstr(path, "kbdmux") != NULL) { ++ /* ++ * Don't pass "device" option if the keyboard is already attached ++ * to the console (ie. open() fails). This would activate a special ++ * logic in xf86-input-keyboard. Prevent any other attached to console ++ * keyboards being processed. There can be only one such device. ++ */ ++ int fd = open(path, O_RDONLY); ++ if (fd > -1) { ++ close(fd); ++ input_options = input_option_new(input_options, "device", path); ++ } ++ } ++ else ++ input_options = input_option_new(input_options, "device", path); + input_options = input_option_new(input_options, "major", itoa(major(devnum))); + input_options = input_option_new(input_options, "minor", itoa(minor(devnum))); + if (path) +@@ -272,6 +287,18 @@ device_added(struct udev_device *udev_de + } + } + ++ if (attrs.flags & (ATTR_KEY | ATTR_KEYBOARD)) { ++ if (!feature_present("evdev_support")) ++ input_options = input_option_new(input_options, "driver", "kbd"); ++ } else if (attrs.flags & ATTR_POINTER) { ++ if (strstr(path, "vbox")) ++ input_options = input_option_new(input_options, "driver", "vboxmouse"); ++ else { ++ if (!feature_present("evdev_support")) ++ input_options = input_option_new(input_options, "driver", "mouse"); ++ } ++ } ++ + input_options = input_option_new(input_options, "config_info", config_info); + + /* Default setting needed for non-seat0 seats */ diff --git a/x11-servers/xlibre-server/files/patch-hw_xfree86_compat_ones.c b/x11-servers/xlibre-server/files/patch-hw_xfree86_compat_ones.c new file mode 100644 index 000000000000..1a296ff48141 --- /dev/null +++ b/x11-servers/xlibre-server/files/patch-hw_xfree86_compat_ones.c @@ -0,0 +1,15 @@ +--- hw/xfree86/compat/ones.c.orig ++++ hw/xfree86/compat/ones.c +@@ -20,8 +20,12 @@ int + Ones(unsigned long mask) + { /* HACKMEM 169 */ + /* can't add a message here because this should be fast */ ++#if defined __has_builtin + #if __has_builtin(__builtin_popcountl) + return __builtin_popcountl (mask); ++#endif ++#elif defined __builtin_popcountl ++ return __builtin_popcountl (mask); + #else + unsigned long y; + diff --git a/x11-servers/xlibre-server/files/patch-hw_xfree86_meson.build b/x11-servers/xlibre-server/files/patch-hw_xfree86_meson.build new file mode 100644 index 000000000000..5b5e9e9bc038 --- /dev/null +++ b/x11-servers/xlibre-server/files/patch-hw_xfree86_meson.build @@ -0,0 +1,11 @@ +--- hw/xfree86/meson.build.orig 2022-06-29 14:37:28.042085000 +0000 ++++ hw/xfree86/meson.build 2022-06-29 14:37:36.259147000 +0000 +@@ -152,7 +152,7 @@ if get_option('suid_wrapper') + c_args: xorg_c_args, + install: true, + install_dir: get_option('libexecdir'), +- install_mode: ['r-sr-xr-x', 0, 0], ++ # install_mode: ['r-sr-xr-x', 0, 0], + ) + + # meson gets confused when there are two targets of the same name diff --git a/x11-servers/xlibre-server/files/patch-hw_xfree86_os-support_bsd_arm_video.c b/x11-servers/xlibre-server/files/patch-hw_xfree86_os-support_bsd_arm_video.c new file mode 100644 index 000000000000..6bb04dcb8a84 --- /dev/null +++ b/x11-servers/xlibre-server/files/patch-hw_xfree86_os-support_bsd_arm_video.c @@ -0,0 +1,11 @@ +--- hw/xfree86/os-support/bsd/arm_video.c 2025-12-12 16:55:30.888512000 -0800 ++++ hw/xfree86/os-support/bsd/arm_video.c 2025-12-12 16:55:40.571888000 -0800 +@@ -65,7 +65,7 @@ + #include <X11/X.h> + + #include "xf86.h" +-#include "xf86_os_support." ++#include "xf86_os_support.h" + #include "xf86Priv.h" + #include "xf86_OSlib.h" + #include "compiler.h" diff --git a/x11-servers/xlibre-server/files/patch-hw_xfree86_os-support_bsd_bsd__init.c b/x11-servers/xlibre-server/files/patch-hw_xfree86_os-support_bsd_bsd__init.c new file mode 100644 index 000000000000..54bedf2a4c75 --- /dev/null +++ b/x11-servers/xlibre-server/files/patch-hw_xfree86_os-support_bsd_bsd__init.c @@ -0,0 +1,55 @@ +--- hw/xfree86/os-support/bsd/bsd_init.c.orig 2023-10-25 01:40:28 UTC ++++ hw/xfree86/os-support/bsd/bsd_init.c +@@ -48,6 +48,8 @@ static int initialVT = -1; + #if defined (SYSCONS_SUPPORT) || defined (PCVT_SUPPORT) + static int VTnum = -1; + static int initialVT = -1; ++static struct termios tty_attr; /* tty state to restore */ ++static int tty_mode; /* kbd mode to restore */ + #endif + + #ifdef PCCONS_SUPPORT +@@ -253,6 +255,7 @@ xf86OpenConsole() + #endif + acquire_vt: + if (!xf86Info.ShareVTs) { ++ struct termios nTty; + /* + * now get the VT + */ +@@ -287,6 +290,26 @@ xf86OpenConsole() + if (ioctl(xf86Info.consoleFd, KDSETMODE, KD_GRAPHICS) < 0) { + FatalError("xf86OpenConsole: KDSETMODE KD_GRAPHICS failed"); + } ++ ++ tcgetattr(xf86Info.consoleFd, &tty_attr); ++ ioctl(xf86Info.consoleFd, KDGKBMODE, &tty_mode); ++ ++ /* disable special keys */ ++ if (ioctl(xf86Info.consoleFd, KDSKBMODE, K_RAW) < 0) { ++ FatalError("xf86OpenConsole: KDSKBMODE K_RAW failed (%s)", ++ strerror(errno)); ++ } ++ ++ nTty = tty_attr; ++ nTty.c_iflag = IGNPAR | IGNBRK; ++ nTty.c_oflag = 0; ++ nTty.c_cflag = CREAD | CS8; ++ nTty.c_lflag = 0; ++ nTty.c_cc[VTIME] = 0; ++ nTty.c_cc[VMIN] = 1; ++ cfsetispeed(&nTty, 9600); ++ cfsetospeed(&nTty, 9600); ++ tcsetattr(xf86Info.consoleFd, TCSANOW, &nTty); + } + else { /* xf86Info.ShareVTs */ + close(xf86Info.consoleFd); +@@ -594,6 +617,8 @@ xf86CloseConsole() + case SYSCONS: + case PCVT: + ioctl(xf86Info.consoleFd, KDSETMODE, KD_TEXT); /* Back to text mode */ ++ ioctl(xf86Info.consoleFd, KDSKBMODE, tty_mode); ++ tcsetattr(xf86Info.consoleFd, TCSANOW, &tty_attr); + if (ioctl(xf86Info.consoleFd, VT_GETMODE, &VT) != -1) { + VT.mode = VT_AUTO; + ioctl(xf86Info.consoleFd, VT_SETMODE, &VT); /* dflt vt handling */ diff --git a/x11-servers/xlibre-server/files/patch-hw_xfree86_os-support_meson.build b/x11-servers/xlibre-server/files/patch-hw_xfree86_os-support_meson.build new file mode 100644 index 000000000000..24b04eec83ec --- /dev/null +++ b/x11-servers/xlibre-server/files/patch-hw_xfree86_os-support_meson.build @@ -0,0 +1,10 @@ +--- hw/xfree86/os-support/meson.build.orig 2025-07-20 14:22:32 UTC ++++ hw/xfree86/os-support/meson.build +@@ -98,6 +98,7 @@ elif host_machine.system().endswith('bsd') + 'bsd/bsd_bell.c', + 'bsd/bsd_init.c', + 'shared/drm_platform.c', ++ 'misc/SlowBcopy.c', + 'shared/pm_noop.c' + ] + diff --git a/x11-servers/xlibre-server/files/patch-hw_xfree86_xorg-wrapper.c b/x11-servers/xlibre-server/files/patch-hw_xfree86_xorg-wrapper.c new file mode 100644 index 000000000000..9a4327eff91f --- /dev/null +++ b/x11-servers/xlibre-server/files/patch-hw_xfree86_xorg-wrapper.c @@ -0,0 +1,23 @@ +* Skip the detection of root rights requirement, the assumption that presence +* of KMS drivers removes the root requirement is only valid for Linux +* +--- hw/xfree86/xorg-wrapper.c.orig 2022-01-02 23:41:56.000000000 +0100 ++++ hw/xfree86/xorg-wrapper.c 2022-06-29 16:28:24.797008000 +0200 +@@ -191,7 +191,7 @@ int main(int argc, char *argv[]) + + int main(int argc, char *argv[]) + { +-#ifdef WITH_LIBDRM ++#if defined(WITH_LIBDRM) && defined(__linux__) + struct drm_mode_card_res res; + #endif + char buf[PATH_MAX]; +@@ -230,7 +230,7 @@ int main(int argc, char *argv[]) + } + } + +-#ifdef WITH_LIBDRM ++#if defined(WITH_LIBDRM) && defined(__linux__) + /* Detect if we need root rights, except when overridden by the config */ + if (needs_root_rights == -1) { + for (i = 0; i < 16; i++) { diff --git a/x11-servers/xlibre-server/files/patch-meson.build b/x11-servers/xlibre-server/files/patch-meson.build new file mode 100644 index 000000000000..f933599bfac2 --- /dev/null +++ b/x11-servers/xlibre-server/files/patch-meson.build @@ -0,0 +1,11 @@ +--- meson.build.orig 2025-09-16 15:49:48 UTC ++++ meson.build +@@ -456,7 +456,7 @@ else + build_dri2 = get_option('dri2') == 'true' + endif + +-if host_machine.system() in ['freebsd', 'openbsd'] ++if host_machine.system() in ['dragonfly', 'freebsd', 'openbsd'] + epoll_dep = dependency('epoll-shim') + else + epoll_dep = [] diff --git a/x11-servers/xlibre-server/files/patch-os-utils.c b/x11-servers/xlibre-server/files/patch-os-utils.c new file mode 100644 index 000000000000..8f9c4f1f137d --- /dev/null +++ b/x11-servers/xlibre-server/files/patch-os-utils.c @@ -0,0 +1,18 @@ +--- os/utils.c.orig 2014-04-15 01:01:57 UTC ++++ os/utils.c +@@ -443,11 +443,11 @@ GetTimeInMillis(void) + static clockid_t clockid; + + if (!clockid) { +-#ifdef CLOCK_MONOTONIC_COARSE +- if (clock_getres(CLOCK_MONOTONIC_COARSE, &tp) == 0 && ++#ifdef CLOCK_MONOTONIC_FAST ++ if (clock_getres(CLOCK_MONOTONIC_FAST, &tp) == 0 && + (tp.tv_nsec / 1000) <= 1000 && +- clock_gettime(CLOCK_MONOTONIC_COARSE, &tp) == 0) +- clockid = CLOCK_MONOTONIC_COARSE; ++ clock_gettime(CLOCK_MONOTONIC_FAST, &tp) == 0) ++ clockid = CLOCK_MONOTONIC_FAST; + else + #endif + if (clock_gettime(CLOCK_MONOTONIC, &tp) == 0) diff --git a/x11-servers/xlibre-server/files/pkg-message.in b/x11-servers/xlibre-server/files/pkg-message.in new file mode 100644 index 000000000000..07198f4e1924 --- /dev/null +++ b/x11-servers/xlibre-server/files/pkg-message.in @@ -0,0 +1,35 @@ +[ +{ type: install + message: <<EOM +XLibre-server has been installed. + +If your kernel is compiled with the EVDEV_SUPPORT option enabled +(default starting from FreeBSD 12.1) it is recommended to enable evdev mode in +pointer device drivers like ums(4) and psm(4). This will give improvements like +better tilt wheel support for mice and centralized gesture support via +xf86-input-synaptics or libinput drivers for touchpads. + +This is also needed for PS/2 devices to be properly detected by XLibre when +moused service is disabled in /etc/rc.conf and kernel is compiled with +EVDEV_SUPPORT. + +To enable evdev in such a device, run the following: + +# sysctl kern.evdev.rcpt_mask=6 + +To make it persistent across reboots, add the following to /etc/sysctl.conf: + +kern.evdev.rcpt_mask=6 + +In case you're using a serial mouse or any other mouse that *only* works over +sysmouse(4) and moused(8) on an evdev enabled kernel, please run this: + +# sysctl kern.evdev.rcpt_mask=3 + +To make it persistent across reboots, add to this /etc/sysctl.conf: + +kern.evdev.rcpt_mask=3 + +EOM +} +] diff --git a/x11-servers/xlibre-server/pkg-descr b/x11-servers/xlibre-server/pkg-descr new file mode 100644 index 000000000000..6165e40db316 --- /dev/null +++ b/x11-servers/xlibre-server/pkg-descr @@ -0,0 +1,3 @@ +This package contains the XLibre X server and some associated programs. + +See also: https://github.com/X11Libre/xserver diff --git a/x11-servers/xlibre-server/pkg-plist b/x11-servers/xlibre-server/pkg-plist new file mode 100644 index 000000000000..1dec48a8741b --- /dev/null +++ b/x11-servers/xlibre-server/pkg-plist @@ -0,0 +1,174 @@ +bin/X +bin/Xorg +bin/gtf +include/xorg/Xprintf.h +include/xorg/callback.h +include/xorg/client.h +include/xorg/closure.h +include/xorg/colormap.h +include/xorg/colormapst.h +include/xorg/compiler.h +include/xorg/compositeext.h +include/xorg/cursor.h +include/xorg/cursorstr.h +include/xorg/damage.h +include/xorg/damagestr.h +include/xorg/dgaproc.h +include/xorg/displaymode.h +include/xorg/dix.h +include/xorg/dixaccess.h +include/xorg/dixfont.h +include/xorg/dixfontstr.h +include/xorg/dixstruct.h +include/xorg/dri.h +include/xorg/dri2.h +include/xorg/dri3.h +include/xorg/dristruct.h +include/xorg/edid.h +include/xorg/events.h +include/xorg/exa.h +include/xorg/exevents.h +include/xorg/extension.h +include/xorg/extinit.h +include/xorg/extnsionst.h +include/xorg/fb.h +include/xorg/fbdevhw.h +include/xorg/fboverlay.h +include/xorg/fbpict.h +include/xorg/fbrop.h +include/xorg/fd_notify.h +include/xorg/fourcc.h +include/xorg/gc.h +include/xorg/gcstruct.h +include/xorg/glamor.h +include/xorg/globals.h +include/xorg/glxvndabi.h +include/xorg/glyphstr.h +include/xorg/hotplug.h +include/xorg/i2c_def.h +include/xorg/input.h +include/xorg/inputstr.h +include/xorg/list.h +include/xorg/mi.h +include/xorg/micmap.h +include/xorg/micoord.h +include/xorg/migc.h +include/xorg/miline.h +include/xorg/mioverlay.h +include/xorg/mipict.h +include/xorg/mipointer.h +include/xorg/mipointrst.h +include/xorg/misc.h +include/xorg/miscstruct.h +include/xorg/mistruct.h +include/xorg/misync.h +include/xorg/misyncfd.h +include/xorg/misyncshm.h +include/xorg/misyncstr.h +include/xorg/mizerarc.h +include/xorg/nonsdk_extinit.h +include/xorg/opaque.h +include/xorg/optionstr.h +include/xorg/os.h +include/xorg/picture.h +include/xorg/picturestr.h +include/xorg/pixmap.h +include/xorg/pixmapstr.h +include/xorg/present.h +include/xorg/privates.h +include/xorg/property.h +include/xorg/ptrveloc.h +include/xorg/randrstr.h +include/xorg/region.h +include/xorg/regionstr.h +include/xorg/resource.h +include/xorg/rgb.h +include/xorg/rrtransform.h +include/xorg/sarea.h +include/xorg/screenint.h +include/xorg/scrnintstr.h +include/xorg/servermd.h +include/xorg/shadow.h +include/xorg/shadowfb.h +include/xorg/shmint.h +include/xorg/syncsdk.h +include/xorg/validate.h +include/xorg/vbe.h +include/xorg/vbeModes.h +include/xorg/vgaHW.h +include/xorg/vndserver.h +include/xorg/wfbrename.h +include/xorg/window.h +include/xorg/windowstr.h +include/xorg/xaarop.h +include/xorg/xf86-input-inputtest-protocol.h +include/xorg/xf86.h +include/xorg/xf86Crtc.h +include/xorg/xf86Cursor.h +include/xorg/xf86DDC.h +include/xorg/xf86Modes.h +include/xorg/xf86Module.h +include/xorg/xf86Opt.h +include/xorg/xf86Optionstr.h +include/xorg/xf86Optrec.h +include/xorg/xf86Parser.h +include/xorg/xf86Pci.h +include/xorg/xf86PciInfo.h +include/xorg/xf86Priv.h +include/xorg/xf86Privstr.h +include/xorg/xf86RandR12.h +include/xorg/xf86Xinput.h +include/xorg/xf86_OSlib.h +include/xorg/xf86_OSproc.h +include/xorg/xf86cmap.h +include/xorg/xf86fbman.h +include/xorg/xf86i2c.h +include/xorg/xf86int10.h +include/xorg/xf86platformBus.h +include/xorg/xf86sbusBus.h +include/xorg/xf86str.h +include/xorg/xf86xv.h +include/xorg/xf86xvmc.h +include/xorg/xisb.h +include/xorg/xkbrules.h +include/xorg/xkbsrv.h +include/xorg/xkbstr.h +include/xorg/xorg-server.h +include/xorg/xorgVersion.h +include/xorg/xserver-properties.h +include/xorg/xvdix.h +include/xorg/xvmcext.h +lib/xorg/modules/xlibre-25.0/drivers/modesetting_drv.so +lib/xorg/modules/xlibre-25.0/extensions/libglx.so +lib/xorg/modules/xlibre-25.0/input/inputtest_drv.so +lib/xorg/modules/xlibre-25.0/libexa.so +lib/xorg/modules/xlibre-25.0/libfbdevhw.so +lib/xorg/modules/xlibre-25.0/libglamoregl.so +lib/xorg/modules/xlibre-25.0/libint10.so +lib/xorg/modules/xlibre-25.0/libshadow.so +lib/xorg/modules/xlibre-25.0/libshadowfb.so +lib/xorg/modules/xlibre-25.0/libvgahw.so +lib/xorg/modules/xlibre-25.0/libwfb.so +lib/xorg/protocol.txt +libdata/pkgconfig/xorg-server.pc +%%SUID%%libexec/Xorg +%%SUID%%@(,,4555) libexec/Xorg.wrap +%%UDEV%%share/X11/xorg.conf.d/10-quirks.conf +share/X11/xorg.conf.d/20-evdev-kbd.conf +share/aclocal/xorg-server.m4 +share/man/man1/Xorg.1.gz +%%SUID%%share/man/man1/Xorg.wrap.1.gz +share/man/man1/Xserver.1.gz +share/man/man1/gtf.1.gz +share/man/man4/exa.4.gz +share/man/man4/fbdevhw.4.gz +share/man/man4/inputtestdrv.4.gz +share/man/man4/modesetting.4.gz +%%SUID%%share/man/man5/Xwrapper.config.5.gz +share/man/man5/xorg.conf.5.gz +share/man/man5/xorg.conf.d.5.gz +@dir %%FONTPATHD%% +@dir etc/X11/xorg.conf.d +@dir lib/xorg/modules/drivers +@dir lib/xorg/modules/input +@dir lib/xorg/modules/extensions diff --git a/x11-servers/xlibre-vfb/Makefile b/x11-servers/xlibre-vfb/Makefile new file mode 100644 index 000000000000..f57d65bc78e3 --- /dev/null +++ b/x11-servers/xlibre-vfb/Makefile @@ -0,0 +1,15 @@ +PORTNAME= xlibre-vfb +PORTVERSION= ${XLIBRE_VER} +CATEGORIES= x11-servers + +MAINTAINER= b-aazbsd@proton.me +COMMENT= Xlibre Xvfb server +WWW= https://github.com/X11Libre/xserver/ + +LICENSE= MIT + +CONFLICTS_INSTALL= xorg-vfbserver + +USES= xlibre-cat:server + +.include "../xlibre-server/Makefile.common" diff --git a/x11-servers/xlibre-vfb/pkg-descr b/x11-servers/xlibre-vfb/pkg-descr new file mode 100644 index 000000000000..099ce2821ab5 --- /dev/null +++ b/x11-servers/xlibre-vfb/pkg-descr @@ -0,0 +1 @@ +This package contains Xvfb, a virtual framebuffer X server. |
