På lørdag 30. mai 2026 kl. 19:58, skrev Patrick Harper
<[email protected]>:

> For the record, the following compositors in ports depend on wlroots
> 0.20 now:
>
> labwc 0.20
> sway 1.12
>

Missing cage 0.3.0 here in being 0.20.x compatible.

I also attached some preliminary diffs for cage, labwc, and sway.

I did a fast test of labwc, was fine. Been using sway 1.12 out of tree
for a couple of days, works well including hot-plugging monitors.

Cage 0.3.0 built fine and I think greetd would need a bump if cage gets
updated.

River built fine in last tar submission to ports. Didn't fully test run
it though.

This is on current/amd64 with privsep.

> The following don't (yet)
>
> mango

which depends on scenefx. (Will be 0.19.x for a while, maybe? Not
sure.)

> wayback
> wayfire (allegedly coming in 0.11.0)

wayfire usually releases in late August almost September. Might make it
into 8.0 release before freeze. But it would be tight if avoiding
release candidates(rc-) or pulling upstream commits.

Including cagebreak, mango(scenefx), wayback and wayfire would need a

+MODWLROOTS_VERSION =   0.19

and a REVISION bump for now and some quirks magic to replace wlroots
with the 0.19 and 0.20 split versions, assuming ports goes ahead with
having both wlroots 0.19.x and 0.20.x in tree and all works well.

Otherwise, I'll add wip update for each of the 0.20.x based ports
separately. Though the attached diffs will work if one only updates
wlroots to 0.20.1, out of tree.

I have been waiting for the python, boost, qt6, qt5, gnome, lxqt(added
wayland), llvm 22, and other major updates to land before mixing up the
pot with wayland and wayland-protocols updates from April that were too
close to the 7.9 release to send patches for.

[Reminder] Xfce and lxqt can use all these window managers, so that
should be double checked too.

Arcan/durden 7.1 update sent in ports looks like it might land with the
llvm 22 updates, which while not wayland itself can use a shim to
display (x)wayland. Not sure if rootfull x11 and/or nested wayland atop
arcan works.

Assuming userspace does not break, this all seems reasonable. Saw some
people using mango on snac, so don't want regressions/breakage for them
or for the users of the rest of the 0.19 dependent packages.

Various linux distributions and freebsd/hardenedbsd carry two or more
wlroots versions. So it probably should be practicable for OpenBSD ports
to also do likewise.

Though remembering to have a quirks update for removing old libraries
once removed; like with php, llvm, maybe nextcloud?, and the like
already in ports.

>
> niri doesn't use wlroots
>
>
+1

Having 0.20 and associated updates would be nice, so thanks for this
Robert Lillack.

Hope this helps.
--
yaydn


PS:

I had issues with libraries when attempting 0.19.x builds off
this when updating while having both 0.19 and 0.20 libraries
installed:

TRUSTED_PKG_PATH=/usr/ports/packages/amd64/all/ pkg_add -Dsnap cage cagebreak 
labwc mango scenefx sway wayback wayfire greetd gtkgreet regreet

Can't install cagebreak-3.1.0p1 because of libraries
|library wlroots-0.19.0.0 not found
| not found anywhere
Direct dependencies for cagebreak-3.1.0p0->3.1.0p1 resolve to 
libevdev-openbsd-20231111p0 wlroots-0.20.1 pango-1.57.1
Full dependency tree is xwayland-24.1.11 cairo-1.18.4 desktop-file-utils-0.28p0 
sqlite3-3.53.1p0 graphite2-1.3.14 zstd-1.5.7p0 png-1.6.58 
libinput-openbsd-1.30.2p1 xcb-util-errors-1.0.1p2 harfbuzz-14.2.0 pango-1.57.1 
lcms2-2.18pl20260420 wlroots-0.20.1 pcre2-10.47 bzip2-1.0.8p0 
epoll-shim-0.0.20240608 libxkbcommon-1.13.1 vulkan-headers-1.4.341.0 
lzo2-2.10p2 libdisplay-info-0.3.0 glfw-3.4p2 libffi-3.5.2p0 python-3.14.4p1 
fribidi-1.0.16p0 libliftoff-0.5.0 xz-5.8.3 libxml-2.15.3 libiconv-1.19 
libudev-openbsd-20230921p0 jpeg-3.1.4.1v0 glew-2.3.1 gettext-runtime-1.0 
py3-packaging-26.2 lz4-1.10.0 libei-1.6.0 lerc-4.1.0 glib2-2.88.1 
vulkan-loader-1.4.341.0 libevdev-openbsd-20231111p0 seatd-0.9.3p0 tiff-4.7.1p2 
wayland-1.25.0

Can't install wayfire-0.10.1p0 because of libraries
|library wlroots-0.19.0.0 not found
| not found anywhere
Direct dependencies for wayfire-0.10.1p0 resolve to libinput-openbsd-1.30.2p1 
libxkbcommon-1.13.1 jpeg-3.1.4.1v0 libevdev-openbsd-20231111p0 pango-1.57.1 
wlroots-0.20.1 yyjson-0.11.1p0 wf-config-0.10.0p3 wayland-1.25.0 
libinotify-20240724 glm-1.0.2
Full dependency tree is pango-1.57.1 png-1.6.58 xz-5.8.3 pcre2-10.47 
py3-packaging-26.2 wayland-1.25.0 libinotify-20240724 glm-1.0.2 
libliftoff-0.5.0 bzip2-1.0.8p0 harfbuzz-14.2.0 libiconv-1.19 
libudev-openbsd-20230921p0 python-3.14.4p1 libxml-2.15.3 
desktop-file-utils-0.28p0 glib2-2.88.1 vulkan-loader-1.4.341.0 seatd-0.9.3p0 
xcb-util-errors-1.0.1p2 jpeg-3.1.4.1v0 graphite2-1.3.14 glfw-3.4p2 
xwayland-24.1.11 sqlite3-3.53.1p0 tiff-4.7.1p2 wlroots-0.20.1 
gettext-runtime-1.0 libdisplay-info-0.3.0 vulkan-headers-1.4.341.0 cairo-1.18.4 
epoll-shim-0.0.20240608 yyjson-0.11.1p0 wf-config-0.10.0p3 fribidi-1.0.16p0 
libffi-3.5.2p0 lzo2-2.10p2 libei-1.6.0 lerc-4.1.0 libxkbcommon-1.13.1 
lz4-1.10.0 libinput-openbsd-1.30.2p1 glew-2.3.1 zstd-1.5.7p0 
lcms2-2.18pl20260420 libevdev-openbsd-20231111p0

Which makes me think I did something wrong. Any one have better luck?

I was able to install after a

ls -lah /usr/local/lib/libwl*

strangely.

Attachment: labwc-0.20.0_wlroots_19_20_split.diff
Description: Binary data

Attachment: sway-1.12_wlroots_19_20_split.diff
Description: Binary data

Attachment: cage-0.3.0_wlroots_19_20_split.diff
Description: Binary data

Reply via email to