djpohly / dwl

dwm for Wayland - ARCHIVE: development has moved to Codeberg
https://codeberg.org/dwl/dwl
Other
1.93k stars 285 forks source link

OpenBSD support discussion #504

Open fbushstone opened 9 months ago

fbushstone commented 9 months ago

Recently, there has been talk of the wlroots library (https://github.com/openbsd/ports/blob/master/wayland/TODO-Wayland.md) coming to OpenBSD. Even though it's still in the experimental stages, I thought it would be a good idea to open a discussion on support for OpenBSD in dwl when support is finalized, even if it is years off. Philosophically, this would make dwl a successor to dwm in the Wayland space because dwm has a strong focus on OpenBSD as well as Linux.

dwl may need to do a few things to support OpenBSD:

fauxmight commented 9 months ago

Depending on how the #497 SLOC discussion turns out, the only option here may be a user-maintained patch with a lot of #ifdef wrapping.

EDIT: That is not a dismissal, and isn't meant with a dismissive tone. The patch would be welcome, though I am not sure that you are not our only OpenBSD user.

sevz17 commented 9 months ago

dwl only uses posix, so it's highly possible the only things that would be needed are the the port of the libs

* Evaluate input options- it could be that nothing needs to be done if a successful libinput port is achieved

dwl only uses libinput to configure input devices, wlroots is what heavily depends on it to process input (iirc wlroots does not allow autocreate the backend w/o libinput) If the new alternative introduces a lot of lines we could just skip configuring the devices

* Evaluate alternatives to evdev such as wscons

dwl doesn't use evdev directly

* Possibly make udev optional- this should be possible given recent changes in wlroots.

Yeah, we could guard the session thing with #ifdef

Depending on how the #497 SLOC discussion turns out, the only option here may be a user-maintained patch with a lot of #ifdef wrapping.

Hm, I'm want to add OpenBSD support, but also I'm reluctant because I don't really want to add code I can't test.