Xorg with evdev input devices

Vasily Postnicov shamaz.mazum at gmail.com
Sun Sep 22 17:21:34 UTC 2019


Thanks for help. But there is much bigger problem. Turns out, I cannot
launch any application. I mean, an application is launched (I can see
process with ps), but nothing is drawn on the screen. So all I can do in
sway is exit sway with Alt+Shift+e. The same thing happens with
x11-wm/cage. This time I cannot provide any information, as there is no
error messages.

вс, 22 сент. 2019 г. в 19:31, <greg at unrelenting.technology>:

> September 22, 2019 7:12 PM, "Vasily Postnicov" <shamaz.mazum at gmail.com>
> wrote:
>
> > Thanks, it works. The purpose of my evdev kernel support testing is
> eventually switch to wayland.
> > For this time I have all related ports recompiled with WAYLAND option
> and also have x11-wm/sway
> > installed. Then I run following commands in terminal (I mean, without
> xorg server running):
> >
> >> setenv XDG_RUNTIME_DIR /tmp
> >
> >> sway -d
> >
> > Sway fails to start with the following log:
> https://pastebin.com/M3eExb0C
> >
> >> 2019-09-22 18:53:04 - [backend/libinput/backend.c:55] Initializing
> libinput
> >> 2019-09-22 18:53:04 - [backend/libinput/backend.c:84] libinput
> initialization failed, no input
> > devices
> >> 2019-09-22 18:53:04 - [backend/libinput/backend.c:85] Set
> WLR_LIBINPUT_NO_DEVICES=1 to suppress
> > this check
> >> 2019-09-22 18:53:04 - [backend/multi/backend.c:32] Failed to initialize
> backend.
> >> 2019-09-22 18:53:04 - [sway/server.c:195] Failed to start backend
> >
> > I've tried to run "setenv WLR_LIBINPUT_NO_DEVICES 1" as suggested and
> got sway started (but without
> > input devices, I suppose). What's wrong with my libinput? It seems it
> works OK with Xorg
>
> Your sway process doesn't have permission to access /dev/input/*.
>
> [re: the little follow-up email: setuid does not help, because input
> devices are attached after dropping root, because input devices need to be
> hotpluggable anyway. setuid is bad, use consolekit2 as described below]
>
> The good (but a bit involved for now) fix:
>
> - run 'sysctl kern.evdev.input' to make sure you have a recent enough
> kernel -- my patch for this is not in 12.0-RELEASE, but should be in
> 12.1-BETA I'm pretty sure
> - build libudev-devd with
> https://github.com/myfreeweb/freebsd-ports-dank/blob/lite/devel/libudev-devd/Makefile
> (i.e. update to the latest git commit)
> - build consolekit2 with https://reviews.freebsd.org/D18754
> - build wlroots with CONSOLEKIT option
> - enable automatic CK2 session creation on login: add 'session
>  optional        pam_ck_connector.so' to the '# session' section of
> /etc/pam.d/login
> - log out, log in, just run sway
> - (you can launch sway under ck-launch-session if the automatic session
> gets screwed up somehow, but it works for me pretty well)
>
> The bad (but quick) fix:
>
> - chmod/chown /dev/input/* to be accessible to your account
> - (there's some devfs config thing that can do this automatically)
> - (this exposes input devices to any program running as your account,
> which defeats the "no keyloggers allowed" advantage of wayland)
>


More information about the freebsd-x11 mailing list