Friday, June 05, 2026

Re: UPDATE: lang/go-1.26.4

On Fri, Jun 05, 2026 at 06:19:55PM -0400, Adriano Barbosa wrote: > Hi! > > Latest version of net/tailcale needs go>=1.26.3 and this diff updates > lang/go to v1.26.4. Thanks. Please Cc the maintainer (here jsing, now done) when sending an update for a port. I'm sure something like it will land soon enough. > -go/src/debug/elf/testdata/gcc-amd64-openbsd-debug-with-rela.obj > +go/src/debug/elf/testdata/gcc-${MACHINE_ARCH}-openbsd-debug-with-rela.obj This above will cause package failure on !amd64, for example: Error: /usr/ports/pobj/go-1.26.4/fake-aarch64/usr/local/go/src/debug/elf/testdata/gcc-aarch64-openbsd-debug-with-rela.obj does not exist So I left that out below. (Unfortunately, ReverseSubstitution.pm special cases MACHINE_ARCH, so this can't be disabled with UPDATE_PLIST_ARGs.) Index: Makefile =================================================================== RCS file: /cvs/ports/lang/go/Makefile,v diff -u -p -r1.178 Makefile --- Makefile 14 Apr 2026 14:20:31 -0000 1.178 +++ Makefile 5 Jun 2026 22:15:24 -0000 @@ -7,7 +7,7 @@ COMMENT = Go programming language # increment _MODGO_SYSTEM_VERSION in go.port.mk after updating to a new # version, to trigger updates of go-compiled ports -VERSION = 1.26.2 +VERSION = 1.26.4 DISTNAME = go${VERSION}.src PKGNAME = go-${VERSION} PKGSPEC = ${FULLPKGNAME:S/go-/go-=/} Index: distinfo =================================================================== RCS file: /cvs/ports/lang/go/distinfo,v diff -u -p -r1.118 distinfo --- distinfo 14 Apr 2026 14:20:31 -0000 1.118 +++ distinfo 5 Jun 2026 22:15:24 -0000 @@ -3,10 +3,10 @@ SHA256 (go-openbsd-amd64-bootstrap-1.25. SHA256 (go-openbsd-arm-bootstrap-1.25.7.tar.gz) = Zsa0mE24uGyL+yRerBwRW7ovlPLTbJcs6aSe8xtslKI= SHA256 (go-openbsd-arm64-bootstrap-1.25.7.tar.gz) = 2sH7SHUgL4lq8BAsp0J0vFnC+liQ4TUgf30SbG1fiW4= SHA256 (go-openbsd-riscv64-bootstrap-1.25.7.tar.gz) = we8O/lwQmYpr3ssnNGrtWQeSJl+g4mzoR9Htr0Jxrp8= -SHA256 (go1.26.2.src.tar.gz) = LpHrtpR6lulDb7KzkmqIAu/mOm03Xf/sT4Kqnb1v1Ds= +SHA256 (go1.26.4.src.tar.gz) = T2aKMvv8ETLmqIH7lowvHa2mMUkqM5IRc1+7JVpCYC0= SIZE (go-openbsd-386-bootstrap-1.25.7.tar.gz) = 58861554 SIZE (go-openbsd-amd64-bootstrap-1.25.7.tar.gz) = 69278430 SIZE (go-openbsd-arm-bootstrap-1.25.7.tar.gz) = 68137477 SIZE (go-openbsd-arm64-bootstrap-1.25.7.tar.gz) = 67510215 SIZE (go-openbsd-riscv64-bootstrap-1.25.7.tar.gz) = 68884008 -SIZE (go1.26.2.src.tar.gz) = 34120738 +SIZE (go1.26.4.src.tar.gz) = 34118246 Index: pkg/PLIST =================================================================== RCS file: /cvs/ports/lang/go/pkg/PLIST,v diff -u -p -r1.96 PLIST --- pkg/PLIST 14 Apr 2026 14:20:31 -0000 1.96 +++ pkg/PLIST 5 Jun 2026 22:15:26 -0000 @@ -64,6 +64,7 @@ go/lib/ go/lib/fips140/ go/lib/fips140/Makefile go/lib/fips140/README.md +go/lib/fips140/certified.txt go/lib/fips140/fips140.sum go/lib/fips140/inprocess.txt go/lib/fips140/v1.0.0-c2097c7c.zip @@ -1205,6 +1206,7 @@ go/src/cmd/compile/internal/loopvar/test go/src/cmd/compile/internal/loopvar/testdata/opt.go go/src/cmd/compile/internal/loopvar/testdata/range_esc_address.go go/src/cmd/compile/internal/loopvar/testdata/range_esc_closure.go +go/src/cmd/compile/internal/loopvar/testdata/range_esc_closure_linedir.go go/src/cmd/compile/internal/loopvar/testdata/range_esc_method.go go/src/cmd/compile/internal/loopvar/testdata/range_esc_minimal_closure.go go/src/cmd/compile/internal/mips/ @@ -2692,6 +2694,7 @@ go/src/cmd/go/testdata/script/cover_runs go/src/cmd/go/testdata/script/cover_single_vs_multiple.txt go/src/cmd/go/testdata/script/cover_statements.txt go/src/cmd/go/testdata/script/cover_swig.txt +go/src/cmd/go/testdata/script/cover_switch_toolchain.txt go/src/cmd/go/testdata/script/cover_sync_atomic_import.txt go/src/cmd/go/testdata/script/cover_test_localpkg_filepath.txt go/src/cmd/go/testdata/script/cover_test_pkgselect.txt @@ -2719,6 +2722,7 @@ go/src/cmd/go/testdata/script/env_write. go/src/cmd/go/testdata/script/fileline.txt go/src/cmd/go/testdata/script/fips.txt go/src/cmd/go/testdata/script/fipssnap.txt +go/src/cmd/go/testdata/script/fix_diff_exitcode.txt go/src/cmd/go/testdata/script/fix_suite.txt go/src/cmd/go/testdata/script/fix_vendor.txt go/src/cmd/go/testdata/script/fmt_load_errors.txt @@ -3132,6 +3136,7 @@ go/src/cmd/go/testdata/script/mod_skip_w go/src/cmd/go/testdata/script/mod_stale.txt go/src/cmd/go/testdata/script/mod_std_vendor.txt go/src/cmd/go/testdata/script/mod_string_alias.txt +go/src/cmd/go/testdata/script/mod_sum_absent.txt go/src/cmd/go/testdata/script/mod_sum_ambiguous.txt go/src/cmd/go/testdata/script/mod_sum_issue56222.txt go/src/cmd/go/testdata/script/mod_sum_lookup.txt @@ -3245,6 +3250,8 @@ go/src/cmd/go/testdata/script/test_build go/src/cmd/go/testdata/script/test_buildinfo.txt go/src/cmd/go/testdata/script/test_buildinfo_godebug_issue68053.txt go/src/cmd/go/testdata/script/test_buildvcs.txt +go/src/cmd/go/testdata/script/test_cache_coverpkg_bug.txt +go/src/cmd/go/testdata/script/test_cache_coverpkg_no_profile.txt go/src/cmd/go/testdata/script/test_cache_inputs.txt go/src/cmd/go/testdata/script/test_chatty_fail.txt go/src/cmd/go/testdata/script/test_chatty_parallel_fail.txt @@ -5708,6 +5715,8 @@ go/src/crypto/internal/fips140/check/che go/src/crypto/internal/fips140/drbg/ go/src/crypto/internal/fips140/drbg/cast.go go/src/crypto/internal/fips140/drbg/ctrdrbg.go +go/src/crypto/internal/fips140/drbg/entropy_fips140.go +go/src/crypto/internal/fips140/drbg/entropy_wasm.go go/src/crypto/internal/fips140/drbg/rand.go go/src/crypto/internal/fips140/drbg/rand_test.go go/src/crypto/internal/fips140/ecdh/ @@ -9477,6 +9486,7 @@ go/src/internal/types/testdata/fixedbugs go/src/internal/types/testdata/fixedbugs/issue76383.go go/src/internal/types/testdata/fixedbugs/issue76384.go go/src/internal/types/testdata/fixedbugs/issue76478.go +go/src/internal/types/testdata/fixedbugs/issue78163.go go/src/internal/types/testdata/spec/ go/src/internal/types/testdata/spec/assignability.go go/src/internal/types/testdata/spec/comparable.go @@ -15663,9 +15673,12 @@ go/test/fixedbugs/issue77779.go go/test/fixedbugs/issue77815.go go/test/fixedbugs/issue77919.go go/test/fixedbugs/issue7794.go +go/test/fixedbugs/issue78404.go go/test/fixedbugs/issue7863.go +go/test/fixedbugs/issue78641.go go/test/fixedbugs/issue7867.go go/test/fixedbugs/issue7884.go +go/test/fixedbugs/issue79182.go go/test/fixedbugs/issue7921.go go/test/fixedbugs/issue7944.go go/test/fixedbugs/issue7995.go

UPDATE: lang/go-1.26.4

Hi! Latest version of net/tailcale needs go>=1.26.3 and this diff updates lang/go to v1.26.4. Obrigado! -- Adriano Index: Makefile =================================================================== RCS file: /cvs/ports/lang/go/Makefile,v diff -u -p -r1.178 Makefile --- Makefile 14 Apr 2026 14:20:31 -0000 1.178 +++ Makefile 5 Jun 2026 22:15:24 -0000 @@ -7,7 +7,7 @@ COMMENT = Go programming language # increment _MODGO_SYSTEM_VERSION in go.port.mk after updating to a new # version, to trigger updates of go-compiled ports -VERSION = 1.26.2 +VERSION = 1.26.4 DISTNAME = go${VERSION}.src PKGNAME = go-${VERSION} PKGSPEC = ${FULLPKGNAME:S/go-/go-=/} Index: distinfo =================================================================== RCS file: /cvs/ports/lang/go/distinfo,v diff -u -p -r1.118 distinfo --- distinfo 14 Apr 2026 14:20:31 -0000 1.118 +++ distinfo 5 Jun 2026 22:15:24 -0000 @@ -3,10 +3,10 @@ SHA256 (go-openbsd-amd64-bootstrap-1.25. SHA256 (go-openbsd-arm-bootstrap-1.25.7.tar.gz) = Zsa0mE24uGyL+yRerBwRW7ovlPLTbJcs6aSe8xtslKI= SHA256 (go-openbsd-arm64-bootstrap-1.25.7.tar.gz) = 2sH7SHUgL4lq8BAsp0J0vFnC+liQ4TUgf30SbG1fiW4= SHA256 (go-openbsd-riscv64-bootstrap-1.25.7.tar.gz) = we8O/lwQmYpr3ssnNGrtWQeSJl+g4mzoR9Htr0Jxrp8= -SHA256 (go1.26.2.src.tar.gz) = LpHrtpR6lulDb7KzkmqIAu/mOm03Xf/sT4Kqnb1v1Ds= +SHA256 (go1.26.4.src.tar.gz) = T2aKMvv8ETLmqIH7lowvHa2mMUkqM5IRc1+7JVpCYC0= SIZE (go-openbsd-386-bootstrap-1.25.7.tar.gz) = 58861554 SIZE (go-openbsd-amd64-bootstrap-1.25.7.tar.gz) = 69278430 SIZE (go-openbsd-arm-bootstrap-1.25.7.tar.gz) = 68137477 SIZE (go-openbsd-arm64-bootstrap-1.25.7.tar.gz) = 67510215 SIZE (go-openbsd-riscv64-bootstrap-1.25.7.tar.gz) = 68884008 -SIZE (go1.26.2.src.tar.gz) = 34120738 +SIZE (go1.26.4.src.tar.gz) = 34118246 Index: pkg/PLIST =================================================================== RCS file: /cvs/ports/lang/go/pkg/PLIST,v diff -u -p -r1.96 PLIST --- pkg/PLIST 14 Apr 2026 14:20:31 -0000 1.96 +++ pkg/PLIST 5 Jun 2026 22:15:26 -0000 @@ -64,6 +64,7 @@ go/lib/ go/lib/fips140/ go/lib/fips140/Makefile go/lib/fips140/README.md +go/lib/fips140/certified.txt go/lib/fips140/fips140.sum go/lib/fips140/inprocess.txt go/lib/fips140/v1.0.0-c2097c7c.zip @@ -1205,6 +1206,7 @@ go/src/cmd/compile/internal/loopvar/test go/src/cmd/compile/internal/loopvar/testdata/opt.go go/src/cmd/compile/internal/loopvar/testdata/range_esc_address.go go/src/cmd/compile/internal/loopvar/testdata/range_esc_closure.go +go/src/cmd/compile/internal/loopvar/testdata/range_esc_closure_linedir.go go/src/cmd/compile/internal/loopvar/testdata/range_esc_method.go go/src/cmd/compile/internal/loopvar/testdata/range_esc_minimal_closure.go go/src/cmd/compile/internal/mips/ @@ -2692,6 +2694,7 @@ go/src/cmd/go/testdata/script/cover_runs go/src/cmd/go/testdata/script/cover_single_vs_multiple.txt go/src/cmd/go/testdata/script/cover_statements.txt go/src/cmd/go/testdata/script/cover_swig.txt +go/src/cmd/go/testdata/script/cover_switch_toolchain.txt go/src/cmd/go/testdata/script/cover_sync_atomic_import.txt go/src/cmd/go/testdata/script/cover_test_localpkg_filepath.txt go/src/cmd/go/testdata/script/cover_test_pkgselect.txt @@ -2719,6 +2722,7 @@ go/src/cmd/go/testdata/script/env_write. go/src/cmd/go/testdata/script/fileline.txt go/src/cmd/go/testdata/script/fips.txt go/src/cmd/go/testdata/script/fipssnap.txt +go/src/cmd/go/testdata/script/fix_diff_exitcode.txt go/src/cmd/go/testdata/script/fix_suite.txt go/src/cmd/go/testdata/script/fix_vendor.txt go/src/cmd/go/testdata/script/fmt_load_errors.txt @@ -3132,6 +3136,7 @@ go/src/cmd/go/testdata/script/mod_skip_w go/src/cmd/go/testdata/script/mod_stale.txt go/src/cmd/go/testdata/script/mod_std_vendor.txt go/src/cmd/go/testdata/script/mod_string_alias.txt +go/src/cmd/go/testdata/script/mod_sum_absent.txt go/src/cmd/go/testdata/script/mod_sum_ambiguous.txt go/src/cmd/go/testdata/script/mod_sum_issue56222.txt go/src/cmd/go/testdata/script/mod_sum_lookup.txt @@ -3245,6 +3250,8 @@ go/src/cmd/go/testdata/script/test_build go/src/cmd/go/testdata/script/test_buildinfo.txt go/src/cmd/go/testdata/script/test_buildinfo_godebug_issue68053.txt go/src/cmd/go/testdata/script/test_buildvcs.txt +go/src/cmd/go/testdata/script/test_cache_coverpkg_bug.txt +go/src/cmd/go/testdata/script/test_cache_coverpkg_no_profile.txt go/src/cmd/go/testdata/script/test_cache_inputs.txt go/src/cmd/go/testdata/script/test_chatty_fail.txt go/src/cmd/go/testdata/script/test_chatty_parallel_fail.txt @@ -5708,6 +5715,8 @@ go/src/crypto/internal/fips140/check/che go/src/crypto/internal/fips140/drbg/ go/src/crypto/internal/fips140/drbg/cast.go go/src/crypto/internal/fips140/drbg/ctrdrbg.go +go/src/crypto/internal/fips140/drbg/entropy_fips140.go +go/src/crypto/internal/fips140/drbg/entropy_wasm.go go/src/crypto/internal/fips140/drbg/rand.go go/src/crypto/internal/fips140/drbg/rand_test.go go/src/crypto/internal/fips140/ecdh/ @@ -6837,7 +6846,7 @@ go/src/debug/elf/testdata/compressed-32. go/src/debug/elf/testdata/compressed-64.obj go/src/debug/elf/testdata/gcc-386-freebsd-exec go/src/debug/elf/testdata/gcc-amd64-linux-exec -go/src/debug/elf/testdata/gcc-amd64-openbsd-debug-with-rela.obj +go/src/debug/elf/testdata/gcc-${MACHINE_ARCH}-openbsd-debug-with-rela.obj @comment beware update-plist incorrectly replacing above line go/src/debug/elf/testdata/gcc-riscv64-linux-exec go/src/debug/elf/testdata/go-relocation-test-clang-arm.obj @@ -9477,6 +9486,7 @@ go/src/internal/types/testdata/fixedbugs go/src/internal/types/testdata/fixedbugs/issue76383.go go/src/internal/types/testdata/fixedbugs/issue76384.go go/src/internal/types/testdata/fixedbugs/issue76478.go +go/src/internal/types/testdata/fixedbugs/issue78163.go go/src/internal/types/testdata/spec/ go/src/internal/types/testdata/spec/assignability.go go/src/internal/types/testdata/spec/comparable.go @@ -15663,9 +15673,12 @@ go/test/fixedbugs/issue77779.go go/test/fixedbugs/issue77815.go go/test/fixedbugs/issue77919.go go/test/fixedbugs/issue7794.go +go/test/fixedbugs/issue78404.go go/test/fixedbugs/issue7863.go +go/test/fixedbugs/issue78641.go go/test/fixedbugs/issue7867.go go/test/fixedbugs/issue7884.go +go/test/fixedbugs/issue79182.go go/test/fixedbugs/issue7921.go go/test/fixedbugs/issue7944.go go/test/fixedbugs/issue7995.go

[llvm22] graphics/tgif build fixes

OK? ----------------------------------------------- commit 99db7d4da4b0b42543b3aa057b72485ebd0b7281 (mystuff) from: Christian Weisgerber <naddy@mips.inka.de> date: Fri Jun 5 21:00:57 2026 UTC graphics/tgif: make C types coherent to appease llvm22 diff 345620ec5e74e234494767ff007c819e9ecb66ce 99db7d4da4b0b42543b3aa057b72485ebd0b7281 commit - 345620ec5e74e234494767ff007c819e9ecb66ce commit + 99db7d4da4b0b42543b3aa057b72485ebd0b7281 blob - 828bbcffba534021b362a37602e73b56a7ef0130 blob + 426751374b96e5d586a7e9919a507960afe76798 --- graphics/tgif/Makefile +++ graphics/tgif/Makefile @@ -3,7 +3,7 @@ COMMENT = two-dimensional drawing tool and hyper-objec VERSION = 4.2.5 DISTNAME = tgif-QPL-${VERSION} PKGNAME = tgif-${VERSION} -REVISION = 0 +REVISION = 1 CATEGORIES = graphics HOMEPAGE = http://bourbon.usc.edu/tgif/ blob - /dev/null blob + afbe82b31c608d799fc17abec9cfcc8eda1c5cab (mode 644) --- /dev/null +++ graphics/tgif/patches/patch-tangram2_c @@ -0,0 +1,21 @@ +Index: tangram2.c +--- tangram2.c.orig ++++ tangram2.c +@@ -1796,7 +1796,7 @@ char *args; /* semi-colon separated list (arg1;arg2;ar + char arg[3][1024]; + + /* Extracts parameters from args */ +- if( !parseArgs( args, arg, 3, 1024 ) ) ++ if( !parseArgs( args, &arg[0][0], 3, 1024 ) ) + { + fprintf( stderr, "TGIF: Usage Tangram2GenerateChain( \"arg1;arg2;arg3\" )\n" ); + return; +@@ -1844,7 +1844,7 @@ char *args; + + + /* Extracts parameters from args */ +- if( !parseArgs( args, arg, 12, 1024 ) ) ++ if( !parseArgs( args, &arg[0][0], 12, 1024 ) ) + { + return; + } blob - /dev/null blob + c801d468e2caf3536671e430958a86ef5491ea9d (mode 644) --- /dev/null +++ graphics/tgif/patches/patch-tgcwdl_c @@ -0,0 +1,12 @@ +Index: tgcwdl.c +--- tgcwdl.c.orig ++++ tgcwdl.c +@@ -152,7 +152,7 @@ static + void PixeltoRGB(pcwdi, pixel, pn_r, pn_g, pn_b) + ColorWheelDlgInfo *pcwdi; + int pixel; +- unsigned int *pn_r, *pn_g, *pn_b; ++ unsigned char *pn_r, *pn_g, *pn_b; + /* 0 <= r,g,b <= 255 */ + { + uint32_t pix=(uint32_t)(unsigned int)pixel; -- Christian "naddy" Weisgerber naddy@mips.inka.de

Re: pkg_add: show -n updates without a progress meter

On Fri Jun 05, 2026 at 12:24:01PM +0200, Kirill A. Korinsky wrote: > ports@, > > it is changes in base, but I think pkg_add is more related to ports@, so > I've used that mail list. > > I'd like to let pkg_add -Iunx report which packages would be updated, so > scripted dry run checks no longer need progress meter output. > > I have in /etc/daily.local pkg_add -un like check to catch outdated > packages. > > Current pkg_add needs -Iunm and some "magic" to strip progress bar and ESC > codes from output to be useful. > > Suggested version needs only pkg_add -Iunx | grep -v ^quirks- > > Also, while here, clarify in pkg_add(1) that -I only disables prompts and > that -n reports package additions or updates because that required to read > the code to understand. > > Thoughts? Ok? +1! > > Index: usr.sbin/pkg_add/pkg_add.1 > =================================================================== > RCS file: /home/cvs/src/usr.sbin/pkg_add/pkg_add.1,v > diff -u -p -r1.170 pkg_add.1 > --- usr.sbin/pkg_add/pkg_add.1 22 May 2025 01:40:21 -0000 1.170 > +++ usr.sbin/pkg_add/pkg_add.1 4 Jun 2026 20:53:16 -0000 > @@ -374,7 +374,10 @@ which is more discriminating. > Force update even if dependencies no longer match. > .El > .It Fl I > -Force non-interactive mode. > +Force non-interactive mode, disabling prompts. > +This does not affect progress meter output; use > +.Fl x > +to disable it. > Default is to be interactive when run from a tty. > .It Fl i > Force interactive mode, even if not run from a tty. > @@ -416,8 +419,8 @@ Causes > .Nm > to always display the progress meter in cases it would not do so by default. > .It Fl n > -Don't actually install a package, just report the steps that > -would be taken if it was. > +Don't actually install a package, just report package additions or updates > +that would be performed. > Will still copy packages to > .Ev PKG_CACHE > if applicable. > Index: usr.sbin/pkg_add/OpenBSD/PkgAdd.pm > =================================================================== > RCS file: /home/cvs/src/usr.sbin/pkg_add/OpenBSD/PkgAdd.pm,v > diff -u -p -r1.152 PkgAdd.pm > --- usr.sbin/pkg_add/OpenBSD/PkgAdd.pm 6 May 2025 18:36:20 -0000 1.152 > +++ usr.sbin/pkg_add/OpenBSD/PkgAdd.pm 4 Jun 2026 20:45:49 -0000 > @@ -831,8 +831,12 @@ sub really_add($set, $state) > $set, $state)); > } > }); > - $set->setup_header($state); > - $state->progress->next($state->ntogo(-1)); > + my $shown = $set->setup_header($state); > + my $todo = $state->ntogo(-1); > + $state->progress->next($todo); > + if ($state->{not} && !$shown) { > + $state->say("#1: #2", $state->{setheader}, $todo); > + } > for my $handle ($set->newer) { > my $pkgname = $handle->pkgname; > my $plist = $handle->plist; > > -- > wbr, Kirill >

Re: [update] misc/ietf-cli

5 июня 2026 г. 16:24:48 GMT+03:00, Peter Hessler <phessler@theapt.org> пишет: >On 2026 Jun 05 (Fri) at 13:15:38 +0000 (+0000), Klemens Nanni wrote: >:4 июня 2026 г. 23:36:18 GMT+03:00, Peter Hessler <phessler@theapt.org> пишет: >:>github commit message: Stopped looking for titles in STDs because they went away 2026-05-21 >:> >:>OK? >:> >:>Index: misc/ietf-cli/Makefile >:>=================================================================== >:>RCS file: /cvs/openbsd/ports/misc/ietf-cli/Makefile,v >:>diff -u -p -u -p -r1.21 Makefile >:>--- misc/ietf-cli/Makefile 16 Apr 2026 16:50:52 -0000 1.21 >:>+++ misc/ietf-cli/Makefile 4 Jun 2026 20:32:11 -0000 >:>@@ -3,8 +3,8 @@ COMMENT= command-line tools to work with >:> GH_ACCOUNT= paulehoffman >:> GH_PROJECT= ietf-cli >:> #GH_TAGNAME= 1.31 >:>-GH_COMMIT= 363ca1d7e813f584865d1cecda695000475266e9 >:>-DISTNAME= ietf-cli-1.31pre0 >:>+GH_COMMIT= a4a84d0df3c573da4f5e4ad50ff1c9d0446886f9 >:>+DISTNAME= ietf-cli-1.32pre0 >: >:Why not bump pre or revision? >: >:If upstream tags 1.31 in the future, we'd have to "downgrade". >: > >Upstream marks it as 1.32 in the verison number, but didn't do any of >the tagging or releasing. > >I've updated the #GH_TAGNAME comment locally. Thanks, OK kn > > >:> >:> CATEGORIES= misc net books >:> >:>Index: misc/ietf-cli/distinfo >:>=================================================================== >:>RCS file: /cvs/openbsd/ports/misc/ietf-cli/distinfo,v >:>diff -u -p -u -p -r1.8 distinfo >:>--- misc/ietf-cli/distinfo 16 Apr 2026 16:50:52 -0000 1.8 >:>+++ misc/ietf-cli/distinfo 4 Jun 2026 20:32:22 -0000 >:>@@ -1,2 +1,2 @@ >:>-SHA256 (ietf-cli-1.31pre0-363ca1d7.tar.gz) = dLnpRkTW8xxmmT/4EnNsc2mJtAELLK07E7NHcfX7XBk= >:>-SIZE (ietf-cli-1.31pre0-363ca1d7.tar.gz) = 19331 >:>+SHA256 (ietf-cli-1.32pre0-a4a84d0d.tar.gz) = VvDqxJEiO/j2uW0qQNiZhmPQMMozUp7etphj2kbYDyQ= >:>+SIZE (ietf-cli-1.32pre0-a4a84d0d.tar.gz) = 19368 >:>Index: misc/ietf-cli/patches/patch-ietf >:>=================================================================== >:>RCS file: /cvs/openbsd/ports/misc/ietf-cli/patches/patch-ietf,v >:>diff -u -p -u -p -r1.9 patch-ietf >:>--- misc/ietf-cli/patches/patch-ietf 16 Apr 2026 16:50:52 -0000 1.9 >:>+++ misc/ietf-cli/patches/patch-ietf 4 Jun 2026 20:32:31 -0000 >:>@@ -3,7 +3,7 @@ Adjust ConfigPlaces. >:> Index: ietf >:> --- ietf.orig >:> +++ ietf >:>-@@ -119,7 +119,7 @@ __license__ = "https://en.wikipedia.org/wiki/WTFPL" >:>+@@ -121,7 +121,7 @@ __license__ = "https://en.wikipedia.org/wiki/WTFPL" >:> KnownCmds = ("auth48", "author", "bcp", "bcponly", "charter", "conflict", "diff", "draft", "draftreport", \ >:> "iesg", "mirror", "rfc", "rfcextra", "rfchtml", "rfchtmlized", "rfcinfo", "rg", "std", "stdonly", "tools", \ >:> "tracker") >:> >:> >: >

a few more i386 llvm22 issues (mostly MMX, one incompat pointer)

any takers for these? (there are probably more, I'll review the list again when my current build is done). devel/liboil: /usr/bin/libtool --tag=CC --mode=compile cc -DHAVE_CONFIG_H -I. -I../.. -mmmx -Wall -D_BSD_SOURCE -D_GNU_SOURCE -I../.. -DOIL_ENABLE_UNSTABLE_API -O2 -pipe -MT libmmx_la-composite_mmx.lo -MD -MP -MF .deps/libmmx_la-composite_mmx.Tpo -c -o libmmx_la-composite_mmx.lo `test -f 'composite_mmx.c' || echo './'`composite_mmx.c cc -DHAVE_CONFIG_H -I. -I../.. -mmmx -Wall -D_BSD_SOURCE -D_GNU_SOURCE -I../.. -DOIL_ENABLE_UNSTABLE_API -O2 -pipe -MT libmmx_la-composite_mmx.lo -MD -MP -MF .deps/libmmx_la-composite_mmx.Tpo -c composite_mmx.c -fPIC -DPIC -o .libs/libmmx_la-composite_mmx.o composite_mmx.c:40:10: error: always_inline function '_mm_set1_pi8' requires target feature 'sse2', but would be inlined into function 'composite_add_u8_const_src_mmx' that is compiled without support for 'sse2' 40 | xmm0 = _mm_set1_pi8(add); | ^ composite_mmx.c:42:22: error: always_inline function '_mm_adds_pu8' requires target feature 'sse2', but would be inlined into function 'composite_add_u8_const_src_mmx' that is compiled without support for 'sse2' 42 | *(__m64 *)dest = _mm_adds_pu8(xmm0, *(__m64 *)dest); | ^ 2 errors generated. math/py-cvxopt: cc -O2 -pipe -fPIC -I/usr/local/include/python3.14 -c src/C/lapack.c -o build/temp.openbsd-7.9-i386-cpython-314/src/C/lapack.o src/C/lapack.c:395:10: error: incompatible pointer types initializing 'int *' with an expression of type 'Py_ssize_t * ' (aka 'long *') [-Wincompatible-pointer-types] 395 | int *ipiv_ptr = MAT_BUFI(ipiv); x11/qt6/qtmultimedia /pobj/qt6-qtmultimedia-6.11.1/qtmultimedia-everywhere-src-6.11.1/src/3rdparty/resonance-audio/resonance_audio/base/simd_utils.cc:869:28: error: always_inline function '_mm_cvtps_pi16' requires target feature 'sse2', but would be inlined into function 'Int16FromFloat' that is compiled without support for 'sse2' 869 | output_vector[i] = _mm_cvtps_pi16(temporary_float_vector); | ^ /pobj/qt6-qtmultimedia-6.11.1/qtmultimedia-everywhere-src-6.11.1/src/3rdparty/resonance-audio/resonance_audio/base/simd_utils.cc:878:28: error: always_inline function '_mm_cvtps_pi16' requires target feature 'sse2', but would be inlined into function 'Int16FromFloat' that is compiled without support for 'sse2' 878 | output_vector[i] = _mm_cvtps_pi16(temporary_float_vector); | ^ /pobj/qt6-qtmultimedia-6.11.1/qtmultimedia-everywhere-src-6.11.1/src/3rdparty/resonance-audio/resonance_audio/base/simd_utils.cc:910:28: error: always_inline function '_mm_cvtpi16_ps' requires target feature 'sse2', but would be inlined into function 'FloatFromInt16' that is compiled without support for 'sse2' 910 | output_vector[i] = _mm_cvtpi16_ps(input_vector[i]); | ^ /pobj/qt6-qtmultimedia-6.11.1/qtmultimedia-everywhere-src-6.11.1/src/3rdparty/resonance-audio/resonance_audio/base/simd_utils.cc:916:34: error: always_inline function '_mm_cvtpi16_ps' requires target feature 'sse2', but would be inlined into function 'FloatFromInt16' that is compiled without support for 'sse2' 916 | temporary_float_vector = _mm_cvtpi16_ps(input_vector[i]); | ^ 4 errors generated.

Re: new port: devel/duras-2.0.0

Thank you for the review. Changes applied: Category changed to textproc LICENSE variable removed WANTLIB += c m pthread added Sending as tar.gz make port-lib-depends-check passes cleanly. пт, 5 черв. 2026 р. о 11:08 Stuart Henderson <stu@spacehopper.org> пише: > > On 2026/06/05 08:19, Duras, Sergiy wrote: > > diff -rNup -x CVS /tmp/empty2/Makefile devel/duras/Makefile > > --- /tmp/empty2/Makefile Thu Jan 1 03:00:00 1970 > > +++ devel/duras/Makefile Fri Jun 5 08:07:26 2026 > > please send new ports as a tar.gz > > > @@ -0,0 +1,29 @@ > > +COMMENT = daily notes as plain text files > > + > > +GH_ACCOUNT = sduras > > +GH_PROJECT = duras > > +GH_TAGNAME = v2.0.0 > > + > > +CATEGORIES = devel > > devel is a bit of a dumping ground so if there's some other category > that fits, it's almost always a better choice. I'd go with textproc. > > > +HOMEPAGE = https://codeberg.org/duras/duras > > + > > +MAINTAINER = Sergiy Duras <sergiy@duras.org> > > + > > +LICENSE = ISC > > we don't use the LICENSE variable, just a comment > > > +PERMIT_PACKAGE = Yes > > + > > missing WANTLIB. (the normal ordering in the Makefile is after > PERMIT_* lines). > > $ make port-lib-depends-check > ===> Faking installation for duras-2.0.0 > /usr/obj/ports/duras-2.0.0/bin/install -c -s -m 755 /usr/obj/ports/duras-2.0.0/duras-2.0.0/_build/default/bin/duras.exe /usr/obj/ports/duras-2.0.0/fake-amd64/usr/local/bin/duras > /usr/obj/ports/duras-2.0.0/bin/install -c -m 644 /usr/obj/ports/duras-2.0.0/duras-2.0.0/man/duras.1 /usr/obj/ports/duras-2.0.0/fake-amd64/usr/local/man/man1/duras.1 > > duras-2.0.0(textproc/duras): > Missing: c.103 (/usr/local/bin/duras) (system lib) > Missing: m.10 (/usr/local/bin/duras) (system lib) > Missing: pthread.28 (/usr/local/bin/duras) (system lib) > WANTLIB += c m pthread > > > +MODULES = lang/ocaml > > + > > +BUILD_DEPENDS = devel/dune > > + > > +do-build: > > + cd ${WRKSRC} && dune build > > + > > +do-install: > > + ${INSTALL_PROGRAM} ${WRKSRC}/_build/default/bin/duras.exe \ > > + ${PREFIX}/bin/duras > > + ${INSTALL_MAN} ${WRKSRC}/man/duras.1 \ > > + ${PREFIX}/man/man1/duras.1 > > + > > +.include <bsd.port.mk> > > diff -rNup -x CVS /tmp/empty2/distinfo devel/duras/distinfo > > --- /tmp/empty2/distinfo Thu Jan 1 03:00:00 1970 > > +++ devel/duras/distinfo Fri Jun 5 08:07:57 2026 > > @@ -0,0 +1,2 @@ > > +SHA256 (duras-2.0.0.tar.gz) = kgfIczdVXXTJVFggqgHeG0FhgHtrVfV/rnavRP461o0= > > +SIZE (duras-2.0.0.tar.gz) = 51131 > > diff -rNup -x CVS /tmp/empty2/pkg/DESCR devel/duras/pkg/DESCR > > --- /tmp/empty2/pkg/DESCR Thu Jan 1 03:00:00 1970 > > +++ devel/duras/pkg/DESCR Fri Jun 5 05:34:54 2026 > > @@ -0,0 +1,7 @@ > > +duras stores daily notes as plain text files, one file per day. > > + > > +Each note is a plain UTF-8 file in YYYY/MM/YYYY-MM-DD.dn format. > > +No database, no daemon, no background services. Writes are atomic. > > +Optional GPG encryption per note. > > + > > +Features: append, search, tags, stats, export, audit, encryption. > > diff -rNup -x CVS /tmp/empty2/pkg/PLIST devel/duras/pkg/PLIST > > --- /tmp/empty2/pkg/PLIST Thu Jan 1 03:00:00 1970 > > +++ devel/duras/pkg/PLIST Fri Jun 5 05:35:07 2026 > > @@ -0,0 +1,2 @@ > > +bin/duras > > +man/man1/duras.1 >

Thursday, June 04, 2026

Re: [llvm22] modlogan - He is dead, Jim

On Thu, 04 Jun 2026 21:13:21 +0200, Theo Buehler <tb@theobuehler.org> wrote: > > The dumb diff below makes sysutils/modlogan build. With plenty of > remaining warnings. The errors come from a systematic mistake pervading > the code base: gzopen returns gzFile, not gzFile *. So we get to change > ~30 files with a trivial *-removal patch. > > This could be avoided with a dirty preprocessor trick in config.h.in: > > typedef struct gzFile_s mlgzFile; > #define gzFile mlgzFile > > Then we need to #undef gzFile twice where they accidentally got it > right. 10% patches, 1000% yuck factor. > > ModLogAn was declared dead in 2006: > > https://web.archive.org/web/20061005153345/http://jan.kneschke.de/projects/modlogan/ > > I think it's time for the boatswain's call. Maybe retire it? Only we and FreeBSD actually has it, at least from Repology point of view: https://repology.org/project/modlogan/versions > > Index: Makefile > =================================================================== > RCS file: /cvs/ports/sysutils/modlogan/Makefile,v > diff -u -p -r1.38 Makefile > --- Makefile 25 Jul 2025 14:33:56 -0000 1.38 > +++ Makefile 4 Jun 2026 18:38:39 -0000 > @@ -1,10 +1,10 @@ > COMMENT= modular log analyzer > > DISTNAME= modlogan-0.8.13 > -REVISION= 13 > +REVISION= 14 > CATEGORIES= sysutils www > > -HOMEPAGE= http://jan.kneschke.de/projects/modlogan/ > +HOMEPAGE= https://jan.kneschke.de/projects/modlogan/ > > SITES= ${HOMEPAGE}/download/ > > Index: patches/patch-configure > =================================================================== > RCS file: /cvs/ports/sysutils/modlogan/patches/patch-configure,v > diff -u -p -r1.3 patch-configure > --- patches/patch-configure 11 Mar 2022 19:57:42 -0000 1.3 > +++ patches/patch-configure 4 Jun 2026 18:32:40 -0000 > @@ -1,6 +1,7 @@ > ---- configure.orig Mon Apr 21 23:13:06 2003 > -+++ configure Mon Apr 21 23:13:31 2003 > -@@ -16778,7 +16778,7 @@ echo $ECHO_N "checking gd and its deps.. > +Index: configure > +--- configure.orig > ++++ configure > +@@ -26622,7 +26622,7 @@ echo $ECHO_N "checking gd and its deps... $ECHO_C" >&6 > HAVE_LIBGD=false > > # gd + png support > Index: patches/patch-src_datatypes_brokenlink_datatype_c > =================================================================== > RCS file: patches/patch-src_datatypes_brokenlink_datatype_c > diff -N patches/patch-src_datatypes_brokenlink_datatype_c > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ patches/patch-src_datatypes_brokenlink_datatype_c 4 Jun 2026 18:32:40 -0000 > @@ -0,0 +1,12 @@ > +Index: src/datatypes/brokenlink/datatype.c > +--- src/datatypes/brokenlink/datatype.c.orig > ++++ src/datatypes/brokenlink/datatype.c > +@@ -39,7 +39,7 @@ > + > + extern size_t mem_mdata_type_count[M_DATA_TYPE_IPPLWATCH]; > + > +-int mdata_BrokenLink_to_xml(gzFile *fd, mdata *data) { > ++int mdata_BrokenLink_to_xml(gzFile fd, mdata *data) { > + #define WR(x,f) \ > + gzprintf(fd, "<%s>%"#f"</%s>\n", #x, data->data.brokenlink.x, #x); > + #define WRS(x,f) \ > Index: patches/patch-src_datatypes_brokenlink_datatype_h > =================================================================== > RCS file: patches/patch-src_datatypes_brokenlink_datatype_h > diff -N patches/patch-src_datatypes_brokenlink_datatype_h > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ patches/patch-src_datatypes_brokenlink_datatype_h 4 Jun 2026 18:32:40 -0000 > @@ -0,0 +1,12 @@ > +Index: src/datatypes/brokenlink/datatype.h > +--- src/datatypes/brokenlink/datatype.h.orig > ++++ src/datatypes/brokenlink/datatype.h > +@@ -30,7 +30,7 @@ > + > + #include "mdatatypes.h" > + > +-int mdata_BrokenLink_to_xml(gzFile *fd, mdata *data); > ++int mdata_BrokenLink_to_xml(gzFile fd, mdata *data); > + int mdata_BrokenLink_from_xml(void *user_data, m_tag tagtype, const xmlChar *value, const xmlChar **attrs); > + > + mdata *mdata_BrokenLink_create(const char *key, > Index: patches/patch-src_datatypes_count_datatype_c > =================================================================== > RCS file: patches/patch-src_datatypes_count_datatype_c > diff -N patches/patch-src_datatypes_count_datatype_c > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ patches/patch-src_datatypes_count_datatype_c 4 Jun 2026 18:32:40 -0000 > @@ -0,0 +1,12 @@ > +Index: src/datatypes/count/datatype.c > +--- src/datatypes/count/datatype.c.orig > ++++ src/datatypes/count/datatype.c > +@@ -38,7 +38,7 @@ > + /* begin of Count */ > + extern size_t mem_mdata_type_count[M_DATA_TYPE_IPPLWATCH]; > + > +-int mdata_Count_to_xml(gzFile *fd, mdata *data) { > ++int mdata_Count_to_xml(gzFile fd, mdata *data) { > + #define WR(x,f) \ > + gzprintf(fd, "<%s>%"#f"</%s>\n", #x, data->data.count.x, #x); > + > Index: patches/patch-src_datatypes_count_datatype_h > =================================================================== > RCS file: patches/patch-src_datatypes_count_datatype_h > diff -N patches/patch-src_datatypes_count_datatype_h > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ patches/patch-src_datatypes_count_datatype_h 4 Jun 2026 18:32:40 -0000 > @@ -0,0 +1,12 @@ > +Index: src/datatypes/count/datatype.h > +--- src/datatypes/count/datatype.h.orig > ++++ src/datatypes/count/datatype.h > +@@ -30,7 +30,7 @@ > + > + #include "mdatatypes.h" > + > +-int mdata_Count_to_xml(gzFile *fd, mdata *data); > ++int mdata_Count_to_xml(gzFile fd, mdata *data); > + int mdata_Count_from_xml(void *user_data, int tagtype, const xmlChar *value, const xmlChar **attrs); > + > + mdata *mdata_Count_init(); > Index: patches/patch-src_datatypes_ipplwatch_datatype_c > =================================================================== > RCS file: patches/patch-src_datatypes_ipplwatch_datatype_c > diff -N patches/patch-src_datatypes_ipplwatch_datatype_c > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ patches/patch-src_datatypes_ipplwatch_datatype_c 4 Jun 2026 18:32:40 -0000 > @@ -0,0 +1,12 @@ > +Index: src/datatypes/ipplwatch/datatype.c > +--- src/datatypes/ipplwatch/datatype.c.orig > ++++ src/datatypes/ipplwatch/datatype.c > +@@ -44,7 +44,7 @@ > + #define DEBUG_SETDATA > +

Re: [llvm22] modlogan - He is dead, Jim

On 6/4/26 3:13 PM, Theo Buehler wrote: > ModLogAn was declared dead in 2006: > > https://web.archive.org/web/20061005153345/http://jan.kneschke.de/projects/modlogan/ > > I think it's time for the boatswain's call. "You hear the wailing of the banshee.--More-- You die." So yeah, time to pull the plug.

Re: [llvm22] modlogan - He is dead, Jim

OK job@ to place modlogan safely in the hands of the angels

[llvm22] modlogan - He is dead, Jim

The dumb diff below makes sysutils/modlogan build. With plenty of remaining warnings. The errors come from a systematic mistake pervading the code base: gzopen returns gzFile, not gzFile *. So we get to change ~30 files with a trivial *-removal patch. This could be avoided with a dirty preprocessor trick in config.h.in: typedef struct gzFile_s mlgzFile; #define gzFile mlgzFile Then we need to #undef gzFile twice where they accidentally got it right. 10% patches, 1000% yuck factor. ModLogAn was declared dead in 2006: https://web.archive.org/web/20061005153345/http://jan.kneschke.de/projects/modlogan/ I think it's time for the boatswain's call. Index: Makefile =================================================================== RCS file: /cvs/ports/sysutils/modlogan/Makefile,v diff -u -p -r1.38 Makefile --- Makefile 25 Jul 2025 14:33:56 -0000 1.38 +++ Makefile 4 Jun 2026 18:38:39 -0000 @@ -1,10 +1,10 @@ COMMENT= modular log analyzer DISTNAME= modlogan-0.8.13 -REVISION= 13 +REVISION= 14 CATEGORIES= sysutils www -HOMEPAGE= http://jan.kneschke.de/projects/modlogan/ +HOMEPAGE= https://jan.kneschke.de/projects/modlogan/ SITES= ${HOMEPAGE}/download/ Index: patches/patch-configure =================================================================== RCS file: /cvs/ports/sysutils/modlogan/patches/patch-configure,v diff -u -p -r1.3 patch-configure --- patches/patch-configure 11 Mar 2022 19:57:42 -0000 1.3 +++ patches/patch-configure 4 Jun 2026 18:32:40 -0000 @@ -1,6 +1,7 @@ ---- configure.orig Mon Apr 21 23:13:06 2003 -+++ configure Mon Apr 21 23:13:31 2003 -@@ -16778,7 +16778,7 @@ echo $ECHO_N "checking gd and its deps.. +Index: configure +--- configure.orig ++++ configure +@@ -26622,7 +26622,7 @@ echo $ECHO_N "checking gd and its deps... $ECHO_C" >&6 HAVE_LIBGD=false # gd + png support Index: patches/patch-src_datatypes_brokenlink_datatype_c =================================================================== RCS file: patches/patch-src_datatypes_brokenlink_datatype_c diff -N patches/patch-src_datatypes_brokenlink_datatype_c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-src_datatypes_brokenlink_datatype_c 4 Jun 2026 18:32:40 -0000 @@ -0,0 +1,12 @@ +Index: src/datatypes/brokenlink/datatype.c +--- src/datatypes/brokenlink/datatype.c.orig ++++ src/datatypes/brokenlink/datatype.c +@@ -39,7 +39,7 @@ + + extern size_t mem_mdata_type_count[M_DATA_TYPE_IPPLWATCH]; + +-int mdata_BrokenLink_to_xml(gzFile *fd, mdata *data) { ++int mdata_BrokenLink_to_xml(gzFile fd, mdata *data) { + #define WR(x,f) \ + gzprintf(fd, "<%s>%"#f"</%s>\n", #x, data->data.brokenlink.x, #x); + #define WRS(x,f) \ Index: patches/patch-src_datatypes_brokenlink_datatype_h =================================================================== RCS file: patches/patch-src_datatypes_brokenlink_datatype_h diff -N patches/patch-src_datatypes_brokenlink_datatype_h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-src_datatypes_brokenlink_datatype_h 4 Jun 2026 18:32:40 -0000 @@ -0,0 +1,12 @@ +Index: src/datatypes/brokenlink/datatype.h +--- src/datatypes/brokenlink/datatype.h.orig ++++ src/datatypes/brokenlink/datatype.h +@@ -30,7 +30,7 @@ + + #include "mdatatypes.h" + +-int mdata_BrokenLink_to_xml(gzFile *fd, mdata *data); ++int mdata_BrokenLink_to_xml(gzFile fd, mdata *data); + int mdata_BrokenLink_from_xml(void *user_data, m_tag tagtype, const xmlChar *value, const xmlChar **attrs); + + mdata *mdata_BrokenLink_create(const char *key, Index: patches/patch-src_datatypes_count_datatype_c =================================================================== RCS file: patches/patch-src_datatypes_count_datatype_c diff -N patches/patch-src_datatypes_count_datatype_c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-src_datatypes_count_datatype_c 4 Jun 2026 18:32:40 -0000 @@ -0,0 +1,12 @@ +Index: src/datatypes/count/datatype.c +--- src/datatypes/count/datatype.c.orig ++++ src/datatypes/count/datatype.c +@@ -38,7 +38,7 @@ + /* begin of Count */ + extern size_t mem_mdata_type_count[M_DATA_TYPE_IPPLWATCH]; + +-int mdata_Count_to_xml(gzFile *fd, mdata *data) { ++int mdata_Count_to_xml(gzFile fd, mdata *data) { + #define WR(x,f) \ + gzprintf(fd, "<%s>%"#f"</%s>\n", #x, data->data.count.x, #x); + Index: patches/patch-src_datatypes_count_datatype_h =================================================================== RCS file: patches/patch-src_datatypes_count_datatype_h diff -N patches/patch-src_datatypes_count_datatype_h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-src_datatypes_count_datatype_h 4 Jun 2026 18:32:40 -0000 @@ -0,0 +1,12 @@ +Index: src/datatypes/count/datatype.h +--- src/datatypes/count/datatype.h.orig ++++ src/datatypes/count/datatype.h +@@ -30,7 +30,7 @@ + + #include "mdatatypes.h" + +-int mdata_Count_to_xml(gzFile *fd, mdata *data); ++int mdata_Count_to_xml(gzFile fd, mdata *data); + int mdata_Count_from_xml(void *user_data, int tagtype, const xmlChar *value, const xmlChar **attrs); + + mdata *mdata_Count_init(); Index: patches/patch-src_datatypes_ipplwatch_datatype_c =================================================================== RCS file: patches/patch-src_datatypes_ipplwatch_datatype_c diff -N patches/patch-src_datatypes_ipplwatch_datatype_c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-src_datatypes_ipplwatch_datatype_c 4 Jun 2026 18:32:40 -0000 @@ -0,0 +1,12 @@ +Index: src/datatypes/ipplwatch/datatype.c +--- src/datatypes/ipplwatch/datatype.c.orig ++++ src/datatypes/ipplwatch/datatype.c +@@ -44,7 +44,7 @@ + #define DEBUG_SETDATA +

amd64 build failures 2026-06-03

http://build-failures.rhaalovely.net/amd64/2026-06-03/ awk '/not built/ { a[$NF]++ } END { for(i in a) printf "%2d %s\n", a[i], i }' \ summary.log | sort -nr 3 x11/gnustep/gworkspace 3 japanese/canna 3 japanese/Wnn 1 x11/xbae 1 x11/rep-gtk 1 print/lilypond,-main 1 math/spread-sheet-widget 1 inputmethods/libskk 1 cad/magic audio/ario ports@ audio/xcdplayer ports@ cad/fritzing ports@ cad/graywolf just22@atlantide.mooo.com cad/magic just22@atlantide.mooo.com databases/pgpool pea@ databases/pgtcl stwo@users.sourceforge.net devel/afl++ jasper@ emulators/citra ports@ emulators/xcopilot ports@ emulators/xnp2 ports@ emulators/xnp21kai ports@ games/cataclysm-dda,no_x11 kirby@ games/clonekeen edd@ games/corewars ports@ games/gnushogi ports@ games/lincity-ng ports@ games/oolite ports@ games/openarena ports@ games/spatial ports@ games/tome4 ports@ games/wanderer ports@ games/wrath ports@ geo/foxtrotgps kirby@ graphics/arcan ports@ graphics/fyre ports@ graphics/geomview ports@ graphics/mtpaint ports@ graphics/quesoglc brad@comstyle.com graphics/tgif benoit@ graphics/xanim espie@ inputmethods/libskk ports@ japanese/Wnn espie@ japanese/canna espie@ japanese/kterm ports@ lang/cim ports@ lang/gpc ports@ lang/scm espie@ lang/v jasper@ math/spread-sheet-widget ports@ misc/brltty ports@ net/ipsvd ports@ net/jnettop ports@ net/owamp ports@ net/pmacct,postgresql ports@ net/snort markus.lude@gmx.de net/trickle ports@ plan9/rc,editline ports@ print/bibview ports@ print/lilypond kili@ productivity/glabels ports@ productivity/rubrica2 ports@ productivity/siag ports@ security/gringotts pea@ security/strobe ports@ sysutils/gkrellm/plugins/itime ports@ sysutils/gkrellm/plugins/mailwatch ports@ sysutils/gkrellm/plugins/reminder ports@ sysutils/modlogan ports@ sysutils/socklog cr+openbsd@rueger-net.de sysutils/syslog-ng steven@ sysutils/tray-app ports@ textproc/ruby-commonmarker,ruby34 ports@ x11/Xdialog ports@ x11/bclock ports@ x11/gnome-mplayer ports@ x11/gnustep/gworkspace sebastia@ x11/mlterm ports@ x11/notion sh+ports@codevoid.de x11/rep-gtk ports@ x11/tkhtml ports@ x11/xbae ports@ x11/xdtm ports@ x11/xpostit ports@ x11/yad ports@ -- Christian "naddy" Weisgerber naddy@mips.inka.de

Re: UPDATE: mlt-7.38.0

On Thu, Jun 04, 2026 at 02:54:35PM +0200, Rafael Sadowski wrote: > Simple update mlt-7.38.0. Tested on amd64, consumers are happy. OK? Working here, also on amd64.

Re: UPDATE: shotcut-26.4.30

On Thu, Jun 04, 2026 at 07:06:47AM -0700, Thomas Frohwein wrote: > On Thu, 4 Jun 2026 14:52:43 +0200 > Rafael Sadowski <rafael@sizeofvoid.org> wrote: > > > Simple update shotcut-26.4.30. Tested on amd64. OK? > > > > Cheers Rafael > > Josh (maintainer) had just posted almost the exact same diff. This one > builds and I can launch shotcut. ok thfr@ for the update. Thanks, all. The only difference between our diffs -- pardon the alliteration -- is Rafael added qt6websockets to the LDEP list, and I'd missed that. OK maintainer, for what little that may be worth.

Wednesday, June 03, 2026

Re: NEW: www/ruby-ferrum new dependency for security/wpscan update

On 06/02 09:33, Sebastian Reitenbach wrote: > hi, > > this is a new dependency needed to update security/wpscan to 4.0.0. > > cat pkg/DESCR > Ferrum allows you to control headless Chrome browser. > > feedback, or even OK welcome. Looks fine, builds fine with all Ruby versions. OK jeremy@ > to make room for it, devel/ruby-opt_parse_validator, > and security/ruby-cms_scanner can bite the dust, as they were only used by > former wpscan versions < 4. > > see attached quirks patch. > To update security/wpscan, a number of former cms_scanner dependencies that > are now directly required by wpscan have to be updated in concert as well. I recommend against the quirks patch. It only handles the default Ruby version and not other versions. We add a general quirk for Ruby ports when we drop support for that Ruby version, and I think that will take care of things. Best, Jeremy

powerpc64 bulk build report

Bulk build on powerpc64-1.ports.openbsd.org Started : Sat May 30 12:55:13 MDT 2026 Finished: Wed Jun 3 14:34:38 MDT 2026 Duration: 4 Days 1 hours 39 minutes Built using OpenBSD 7.9-current (GENERIC.MP) #195: Fri May 29 23:53:34 MDT 2026 Built 9366 packages Number of packages built each day: May 30: 1765 May 31: 2239 Jun 1: 1986 Jun 2: 3373 Jun 3: 3 Critical path missing pkgs: http://build-failures.rhaalovely.net/powerpc64/2026-05-30/summary.log Build failures: 137 http://build-failures.rhaalovely.net/powerpc64/2026-05-30/astro/py-erfa.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/audio/ario.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/audio/gmpc-plugins.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/audio/gogglesmm.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/audio/libgpod.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/audio/libworkman.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/audio/musepack.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/audio/vgmstream.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/audio/xcdplayer.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/biology/hmmer.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/cad/graywolf.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/cad/magic.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/databases/pgpool.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/databases/pgtcl.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/devel/autogen.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/devel/boost.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/devel/bullet.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/devel/csmith.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/devel/cvsplot.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/devel/fpm.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/devel/objfw.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/devel/p5-Locale-Hebrew.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/devel/py-pybind11.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/devel/py-thrift.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/devel/remake.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/emulators/desmume.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/emulators/gambatte.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/emulators/xcopilot.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/emulators/xnp2.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/emulators/xnp21kai.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/games/angrydd.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/games/blockrage.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/games/bugdom2.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/games/cataclysm-dda,no_x11.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/games/clonekeen.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/games/corewars.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/games/falconseye.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/games/gnukem.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/games/gnushogi.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/games/lincity-ng.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/games/micropolis.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/games/nanosaur2.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/games/nblood.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/games/oolite.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/games/openjk.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/games/slash-em.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/games/slash.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/games/spatial.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/games/wanderer.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/games/wargus.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/games/wrath.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/geo/foxtrotgps.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/geo/py-shapely.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/graphics/geomview.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/graphics/mtpaint.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/graphics/quesoglc.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/graphics/stable-diffusion.cpp,vulkan.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/graphics/tgif.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/graphics/xanim.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/graphics/xsane.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/inputmethods/libskk.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/japanese/Wnn.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/japanese/canna.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/japanese/kterm.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/lang/cim.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/lang/gambit.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/lang/scm.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/mail/dcc.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/math/arpack.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/math/grpn.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/math/lean.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/math/py-PyWavelets.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/math/py-bottleneck.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/math/py-cftime.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/math/py-ecos.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/math/py-h5py.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/math/py-lap.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/math/py-netcdf4.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/math/py-numexpr.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/math/py-pandas.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/math/py-scikit-image.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/math/py-scs.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/math/py-tables.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/math/spread-sheet-widget.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/math/suitesparse.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/misc/brltty.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/multimedia/x264.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/net/bro.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/net/ipsvd.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/net/jnettop.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/net/netpipes.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/net/owamp.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/net/pmacct.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/net/snort.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/net/tcpreplay.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/net/trickle.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/net/ytalk.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/plan9/rc,editline.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/print/bibview.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/productivity/calcurse.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/productivity/rubrica2.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/productivity/siag.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/security/botan2.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/security/distorm3.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/security/gringotts.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/security/strobe.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/sysutils/clusterit.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/sysutils/firmware/apple-boot.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/sysutils/flashrom.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/sysutils/gkrellm/plugins/itime.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/sysutils/gkrellm/plugins/mailwatch.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/sysutils/gkrellm/plugins/reminder.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/sysutils/modlogan.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/sysutils/runit.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/sysutils/socklog.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/sysutils/syslog-ng.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/sysutils/whowatch.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/textproc/py-fpdf2.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/textproc/simdutf.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/www/sope.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/www/webkitgtk4.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/x11/Xdialog.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/x11/bclock.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/x11/byzi.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/x11/cde.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/x11/gnustep/netclasses.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/x11/gnustep/pantomime.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/x11/gtksourceview.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/x11/mlterm.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/x11/notion.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/x11/rep-gtk.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/x11/rox-filer.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/x11/tkhtml.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/x11/xbae.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/x11/xdtm.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/x11/xpostit.log http://build-failures.rhaalovely.net/powerpc64/2026-05-30/x11/yad.log Recurrent failures: failures/astro/py-erfa.log failures/audio/gogglesmm.log failures/biology/hmmer.log failures/devel/boost.log failures/devel/bullet.log failures/devel/cvsplot.log failures/devel/fpm.log failures/devel/objfw.log failures/devel/py-pybind11.log failures/devel/py-thrift.log failures/emulators/desmume.log failures/games/angrydd.log failures/games/bugdom2.log failures/games/gnukem.log failures/games/nanosaur2.log failures/games/nblood.log failures/games/openjk.log failures/games/wargus.log failures/geo/py-shapely.log failures/graphics/stable-diffusion.cpp,vulkan.log failures/lang/gambit.log failures/math/arpack.log failures/math/lean.log failures/math/py-PyWavelets.log failures/math/py-bottleneck.log failures/math/py-scikit-image.log failures/math/py-scs.log failures/math/py-tables.log failures/math/suitesparse.log failures/multimedia/x264.log failures/net/bro.log failures/security/botan2.log failures/security/distorm3.log failures/sysutils/firmware/apple-boot.log failures/sysutils/flashrom.log failures/textproc/py-fpdf2.log failures/textproc/simdutf.log failures/www/webkitgtk4.log New failures: +failures/audio/ario.log +failures/audio/gmpc-plugins.log +failures/audio/libgpod.log +failures/audio/libworkman.log +failures/audio/musepack.log +failures/audio/vgmstream.log +failures/audio/xcdplayer.log +failures/cad/graywolf.log +failures/cad/magic.log +failures/databases/pgpool.log +failures/databases/pgtcl.log +failures/devel/autogen.log +failures/devel/csmith.log +failures/devel/p5-Locale-Hebrew.log +failures/devel/remake.log +failures/emulators/gambatte.log +failures/emulators/xcopilot.log +failures/emulators/xnp2.log +failures/emulators/xnp21kai.log +failures/games/blockrage.log +failures/games/cataclysm-dda,no_x11.log +failures/games/clonekeen.log +failures/games/corewars.log +failures/games/falconseye.log +failures/games/gnushogi.log +failures/games/lincity-ng.log +failures/games/micropolis.log +failures/games/oolite.log +failures/games/slash-em.log +failures/games/slash.log +failures/games/spatial.log +failures/games/wanderer.log +failures/games/wrath.log +failures/geo/foxtrotgps.log +failures/graphics/geomview.log +failures/graphics/mtpaint.log +failures/graphics/quesoglc.log +failures/graphics/tgif.log +failures/graphics/xanim.log +failures/graphics/xsane.log +failures/inputmethods/libskk.log +failures/japanese/Wnn.log +failures/japanese/canna.log +failures/japanese/kterm.log +failures/lang/cim.log +failures/lang/scm.log +failures/mail/dcc.log +failures/math/grpn.log +failures/math/spread-sheet-widget.log +failures/misc/brltty.log +failures/net/ipsvd.log +failures/net/jnettop.log +failures/net/netpipes.log +failures/net/owamp.log +failures/net/pmacct.log +failures/net/snort.log +failures/net/tcpreplay.log +failures/net/trickle.log +failures/net/ytalk.log +failures/plan9/rc,editline.log +failures/print/bibview.log +failures/productivity/calcurse.log +failures/productivity/rubrica2.log +failures/productivity/siag.log +failures/security/gringotts.log +failures/security/strobe.log +failures/sysutils/clusterit.log +failures/sysutils/gkrellm/plugins/itime.log +failures/sysutils/gkrellm/plugins/mailwatch.log +failures/sysutils/gkrellm/plugins/reminder.log +failures/sysutils/modlogan.log +failures/sysutils/runit.log +failures/sysutils/socklog.log +failures/sysutils/syslog-ng.log +failures/sysutils/whowatch.log +failures/www/sope.log +failures/x11/Xdialog.log +failures/x11/bclock.log +failures/x11/byzi.log +failures/x11/cde.log +failures/x11/gnustep/netclasses.log +failures/x11/gnustep/pantomime.log +failures/x11/gtksourceview.log +failures/x11/mlterm.log +failures/x11/notion.log +failures/x11/rep-gtk.log +failures/x11/rox-filer.log +failures/x11/tkhtml.log +failures/x11/xbae.log +failures/x11/xdtm.log +failures/x11/xpostit.log +failures/x11/yad.log Resolved failures: -failures/databases/recoll,-main.log -failures/games/astromenace.log -failures/games/classicube.log -failures/multimedia/x265.log Packages newly built: +comms/liquid-dsp +databases/luadbi,-duckdb +databases/luadbi,lua52,-duckdb +databases/luadbi,lua53,-duckdb +databases/luadbi,lua54,-duckdb +databases/py-borgstore +devel/gcem +devel/py-jsonargparse +devel/scnlib +devel/xsimd +fonts/marelle +fonts/marelle,-main +fonts/marelle,-web +misc/fyi +misc/gammastep +multimedia/x265 +net/accounts-qml-module +net/fzssh +net/whsniff +security/nettle +security/py-dfvfs +sysutils/borgbackup/2.0 +sysutils/nut,-upower +sysutils/py-tsk +wayland/fnott +x11/lxqt/archiver +x11/lxqt/wayland-session +x11/qt6/pyside6/shiboken_generator Packages not built this time: -archivers/pecl-lzf,php82 -archivers/py-backports-zstd -audio/ario -audio/ascd -audio/freealut -audio/gmpc-plugins -audio/libgpod -audio/libworkman -audio/musepack -audio/openal -audio/sdl2-audiolib -audio/vgmstream -audio/xcdplayer -cad/graywolf -cad/magic -databases/pecl-redis,php82 -databases/pgpool -databases/pgtcl -databases/py-redis -devel/autogen -devel/csmith -devel/kf5/kcalendarcore -devel/kf5/prison -devel/kf6/kcalendarcore -devel/ocaml-graph -devel/p5-Locale-Hebrew -devel/pecl-xdebug,php82 -devel/py-aiocache -devel/remake -devel/ti-msp430gcc -editors/axe -emulators/fs-uae -emulators/gambatte -emulators/sameboy -emulators/sameboy,-libretro -emulators/sameboy,-main -emulators/xcopilot -emulators/xnp2 -emulators/xnp21kai -games/blockrage -games/cataclysm-dda -games/cataclysm-dda,no_x11 -games/choria -games/chromium-bsu -games/clonekeen -games/corewars -games/devilutionx -games/dustrac -games/emptyclip -games/endless-sky -games/extremetuxracer -games/falconseye -games/gnushogi -games/hlsteam -games/irrlamb -games/keeperrl -games/lincity-ng -games/love/0.10 -games/lugaru -games/mars -games/micropolis -games/oolite -games/orthorobot -games/slash -games/slash,no_x11 -games/slash-em -games/slash-em,no_x11 -games/spacezero -games/spatial -games/wanderer -games/wrath -games/xasteroids -games/xpilot -games/yquake2 -geo/foxtrotgps -geo/gpxsee -graphics/drawpile -graphics/geomview -graphics/gocr,-gui -graphics/mtpaint -graphics/ocaml-cairo -graphics/quesoglc -graphics/tgif -graphics/xanim -graphics/xsane -inputmethods/ibus-skk -inputmethods/libskk -japanese/Wnn -japanese/Wnn,-data -japanese/Wnn,-dict -japanese/Wnn,-ko -japanese/Wnn,-kodict -japanese/Wnn,-main -japanese/Wnn,-xwnmo -japanese/Wnn,-zh -japanese/Wnn,-zhdict -japanese/canna -japanese/canna,-dict -japanese/canna,-main -japanese/canna,-server -japanese/kinput2,canna -japanese/kinput2,canna,wnn -japanese/kinput2,wnn -japanese/kterm -japanese/kterm,xaw3d -japanese/onew,canna -japanese/onew,canna,wnn4 -japanese/onew,wnn4 -lang/cim -lang/hashlink -lang/php/8.2 -lang/php/8.2,-apache -lang/php/8.2,-bz2 -lang/php/8.2,-cgi -lang/php/8.2,-curl -lang/php/8.2,-dba -lang/php/8.2,-dbg -lang/php/8.2,-enchant -lang/php/8.2,-gd -lang/php/8.2,-gmp -lang/php/8.2,-imap -lang/php/8.2,-intl -lang/php/8.2,-ldap -lang/php/8.2,-main -lang/php/8.2,-mysqli -lang/php/8.2,-odbc -lang/php/8.2,-pcntl -lang/php/8.2,-pdo_dblib -lang/php/8.2,-pdo_mysql -lang/php/8.2,-pdo_odbc -lang/php/8.2,-pdo_pgsql -lang/php/8.2,-pdo_sqlite -lang/php/8.2,-pgsql -lang/php/8.2,-pspell -lang/php/8.2,-shmop -lang/php/8.2,-snmp -lang/php/8.2,-soap -lang/php/8.2,-sqlite3 -lang/php/8.2,-tidy -lang/php/8.2,-xsl -lang/php/8.2,-zip -lang/php/8.2,embed,-embed -lang/scm -lang/scm,no_x11 -lang/vala,,-main -lang/wasi-libc -lang/wasi-sdk/compiler-rt -lang/wasi-sdk/libcxx -mail/dcc -mail/pecl-mailparse,php82 -math/grpn -math/jacal -math/spread-sheet-widget -misc/brltty -multimedia/sfml -net/ipsvd -net/jnettop -net/kristall -net/librenms -net/librenms,-main -net/netpipes -net/noVNC/bmc-support -net/noVNC/main -net/ntopng -net/owamp -net/pmacct -net/pmacct,mysql -net/pmacct,postgresql -net/snort -net/tcpreplay -net/toxic -net/toxic,no_x11 -net/trickle -net/unison -net/unison,-gui -net/unison,-main -net/websockify -net/ytalk -net/ytalk,no_x11 -plan9/rc,editline -print/bibview -productivity/calcurse -productivity/rubrica2 -productivity/siag -productivity/xquote -security/gringotts -security/pecl-mcrypt,php82 -security/py-google-auth -security/strobe -sysutils/clusterit -sysutils/clusterit,no_x11 -sysutils/gkrellm/plugins/itime -sysutils/gkrellm/plugins/mailwatch -sysutils/gkrellm/plugins/reminder -sysutils/modlogan -sysutils/runit -sysutils/socklog -sysutils/syslog-ng -sysutils/whowatch -telephony/linphone/bctoolbox -telephony/linphone/bcunit -telephony/linphone/belcard -telephony/linphone/belle-sip -telephony/linphone/belr -telephony/linphone/bzrtp -telephony/linphone/ortp -textproc/hotdoc -textproc/pecl-yaml,php82 -textproc/syrics -www/pecl-apcu,php82 -www/pecl-memcached,php82 -www/pecl-pledge,php82 -www/pecl-raphf,php82 -www/pecl-ssh2,php82 -www/py-spotipy -www/qobuz-dl -www/sogo -www/sope -www/sope,-main -www/sope,-mysql -www/sope,-postgres -www/unit/unit-php,php82 -x11/XawMu -x11/Xdialog -x11/bclock -x11/byzi -x11/cde -x11/contour -x11/gnome/orca -x11/gnustep/netclasses -x11/gnustep/pantomime -x11/gtksourceview -x11/kde-applications/kf6-libkcompactdisc -x11/kde-applications/minuet -x11/lablgtk2 -x11/lablgtk3 -x11/mlterm -x11/notion -x11/qt5/qtdeclarative, -x11/qt5/qtdeclarative,,-examples -x11/qt5/qtmultimedia -x11/qt5/qtmultimedia, -x11/qt5/qtmultimedia,,-examples -x11/qt5/qtmultimedia,,-main -x11/qt5/qtmultimedia,-main -x11/rep-gtk -x11/rox-filer -x11/sawfish -x11/tkhtml -x11/xbae -x11/xdtm -x11/xpostit -x11/yad

Adding wlroots 0.20

Hi, picking up the thread started by Robert Lillack, here is the diff I have been testing and which so far works fine here. Any thoughts? cheers, Volker

Index: Makefile
===================================================================
RCS file: Makefile
diff -N Makefile
--- Makefile	20 Feb 2026 21:35:37 -0000	1.18
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,60 +0,0 @@
-COMMENT =	modular Wayland compositor library
-
-V =		${MODWLROOTS_VERSION}.2
-REVISION =	1
-EPOCH =		0
-DISTNAME =	wlroots-${V}
-CATEGORIES =	wayland
-
-SITES =		${HOMEPAGE}/wlroots/-/releases/${V}/downloads/
-
-HOMEPAGE =	https://gitlab.freedesktop.org/wlroots
-
-# MIT
-PERMIT_PACKAGE = Yes
-
-SHARED_LIBS +=  wlroots-0.19 0.0 # 0.0
-
-COMPILER =	base-clang ports-gcc
-COMPILER_LANGS=	c
-MODULES =	devel/meson wayland/wlroots
-
-MODWLROOTS_LIBDEP =	No
-
-WANTLIB +=	EGL GLESv2 drm gbm m pixman-1
-WANTLIB +=	display-info lcms2 liftoff udev
-WANTLIB +=	input seat
-WANTLIB +=	vulkan wayland-client wayland-server
-WANTLIB +=	xcb xcb-composite xcb-dri3 xcb-errors xcb-ewmh
-WANTLIB +=	xcb-icccm xcb-present xcb-render xcb-render-util
-WANTLIB +=	xcb-res xcb-shm xcb-xfixes xcb-xinput
-WANTLIB +=	xkbcommon
-
-BUILD_DEPENDS = \
-		graphics/glslang \
-		graphics/vulkan-headers \
-		misc/hwdata \
-		wayland/wayland-protocols \
-		wayland/xwayland
-
-LIB_DEPENDS = \
-		graphics/lcms2 \
-		graphics/libliftoff \
-		graphics/vulkan-loader \
-		sysutils/libdisplay-info \
-		sysutils/libudev-openbsd \
-		sysutils/seatd \
-		wayland/libinput-openbsd \
-		wayland/wayland \
-		x11/xcb-util-errors \
-		x11/xkbcommon
-
-RUN_DEPENDS =	wayland/xwayland
-
-CONFIGURE_ARGS = \
-		-Dexamples=false \
-		-Dallocators=gbm
-
-DEBUG_PACKAGES = ${BUILD_PACKAGES}
-
-.include <bsd.port.mk>
Index: Makefile.inc
===================================================================
RCS file: Makefile.inc
diff -N Makefile.inc
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ Makefile.inc	3 Jun 2026 17:21:39 -0000
@@ -0,0 +1,55 @@
+COMMENT ?=	modular Wayland compositor library (${MODWLROOTS_VERSION})
+
+DISTNAME =	wlroots-${V}
+PKGSTEM ?=	wlroots-${MODWLROOTS_VERSION}
+CATEGORIES =	wayland
+EPOCH =		0
+
+SITES =		${HOMEPAGE}/wlroots/-/releases/${V}/downloads/
+
+HOMEPAGE =	https://gitlab.freedesktop.org/wlroots
+
+# MIT
+PERMIT_PACKAGE = Yes
+
+COMPILER =	base-clang ports-gcc
+COMPILER_LANGS=	c
+MODULES =	devel/meson wayland/wlroots
+
+MODWLROOTS_LIBDEP =	No
+
+WANTLIB +=	EGL GLESv2 drm gbm m pixman-1
+WANTLIB +=	display-info lcms2 liftoff udev
+WANTLIB +=	input seat
+WANTLIB +=	vulkan wayland-client wayland-server
+WANTLIB +=	xcb xcb-composite xcb-dri3 xcb-errors xcb-ewmh
+WANTLIB +=	xcb-icccm xcb-present xcb-render xcb-render-util
+WANTLIB +=	xcb-res xcb-shm xcb-xfixes xcb-xinput
+WANTLIB +=	xkbcommon
+
+BUILD_DEPENDS = \
+		graphics/glslang \
+		graphics/vulkan-headers \
+		misc/hwdata \
+		wayland/wayland-protocols \
+		wayland/xwayland
+
+LIB_DEPENDS = \
+		graphics/lcms2 \
+		graphics/libliftoff \
+		graphics/vulkan-loader \
+		sysutils/libdisplay-info \
+		sysutils/libudev-openbsd \
+		sysutils/seatd \
+		wayland/libinput-openbsd \
+		wayland/wayland \
+		x11/xcb-util-errors \
+		x11/xkbcommon
+
+RUN_DEPENDS =	wayland/xwayland
+
+CONFIGURE_ARGS = \
+		-Dexamples=false \
+		-Dallocators=gbm
+
+DEBUG_PACKAGES = ${BUILD_PACKAGES}
Index: distinfo
===================================================================
RCS file: distinfo
diff -N distinfo
--- distinfo	19 Nov 2025 08:58:58 -0000	1.10
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,2 +0,0 @@
-SHA256 (wlroots-0.19.2.tar.gz) = CaCo1gEEyLB3L+5PYLp2qJrtflnf92WdAJYPuga98mc=
-SIZE (wlroots-0.19.2.tar.gz) = 670983
Index: wlroots.port.mk
===================================================================
RCS file: /cvs/ports/wayland/wlroots/wlroots.port.mk,v
retrieving revision 1.2
diff -u -p -r1.2 wlroots.port.mk
--- wlroots.port.mk	28 Aug 2025 21:01:27 -0000	1.2
+++ wlroots.port.mk	3 Jun 2026 17:21:39 -0000
@@ -1,13 +1,13 @@
-MODWLROOTS_VERSION =		0.19
+MODWLROOTS_VERSION ?=		0.19
 
 MODWLROOTS_WANTLIB =		wlroots-${MODWLROOTS_VERSION}
-MODWLROOTS_LIB_DEPENDS =    	wayland/wlroots
+MODWLROOTS_LIB_DEPENDS =	wayland/wlroots/${MODWLROOTS_VERSION}
 
 MODWLROOTS_LIBDEP?=		Yes
 
 .if ${MODWLROOTS_LIBDEP:L} == "yes"
 LIB_DEPENDS +=			${MODWLROOTS_LIB_DEPENDS}
-WANTLIB +=              	${MODWLROOTS_WANTLIB}
+WANTLIB +=			${MODWLROOTS_WANTLIB}
 .endif
 
 SUBST_VARS += 			MODWLROOTS_VERSION
Index: 0.19/Makefile
===================================================================
RCS file: 0.19/Makefile
diff -N 0.19/Makefile
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ 0.19/Makefile	3 Jun 2026 17:21:39 -0000
@@ -0,0 +1,9 @@
+MODWLROOTS_VERSION =	0.19
+
+V =		${MODWLROOTS_VERSION}.3
+
+SHARED_LIBS +=	wlroots-0.19 0.0 # 0.0
+
+PKGSPEC =	wlroots->=0.19v0,<0.20v0
+
+.include <bsd.port.mk>
Index: 0.19/distinfo
===================================================================
RCS file: 0.19/distinfo
diff -N 0.19/distinfo
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ 0.19/distinfo	3 Jun 2026 17:21:39 -0000
@@ -0,0 +1,2 @@
+SHA256 (wlroots-0.19.3.tar.gz) = XQJpMXXlr9mvXxDj5JdtbpJJ3DmpDrF9I/pfVLElzMU=
+SIZE (wlroots-0.19.3.tar.gz) = 671529
Index: 0.19/patches/patch-backend_drm_backend_c
===================================================================
RCS file: 0.19/patches/patch-backend_drm_backend_c
diff -N 0.19/patches/patch-backend_drm_backend_c
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ 0.19/patches/patch-backend_drm_backend_c	3 Jun 2026 17:21:39 -0000
@@ -0,0 +1,55 @@
+Index: backend/drm/backend.c
+--- backend/drm/backend.c.orig
++++ backend/drm/backend.c
+@@ -3,11 +3,13 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
++#include <unistd.h>
+ #include <wayland-server-core.h>
+ #include <wlr/backend/interface.h>
+ #include <wlr/backend/session.h>
+ #include <wlr/interfaces/wlr_output.h>
+ #include <wlr/util/log.h>
++#include <sys/event.h>
+ #include <xf86drm.h>
+ #include "backend/drm/drm.h"
+ #include "backend/drm/fb.h"
+@@ -207,6 +209,8 @@ static bool init_mgpu_renderer(struct wlr_drm_backend 
+ 
+ struct wlr_backend *wlr_drm_backend_create(struct wlr_session *session,
+ 		struct wlr_device *dev, struct wlr_backend *parent) {
++	int kq;
++	struct kevent kev;
+ 	assert(session && dev);
+ 	assert(!parent || wlr_backend_is_drm(parent));
+ 
+@@ -283,6 +287,28 @@ struct wlr_backend *wlr_drm_backend_create(struct wlr_
+ 	drm->session_destroy.notify = handle_session_destroy;
+ 	wl_signal_add(&session->events.destroy, &drm->session_destroy);
+ 
++	if ((kq = kqueue()) <= 0)
++		goto continue_without_kqueue;
++
++	EV_SET(&kev, dev->fd, EVFILT_DEVICE, EV_ADD | EV_ENABLE | EV_CLEAR,
++	       NOTE_CHANGE, 0, NULL);
++
++	if (kevent(kq, &kev, 1, NULL, 0, NULL) < 0) {
++		close(kq);
++		goto continue_without_kqueue;
++	}
++
++	drm->drm_kevent = wl_event_loop_add_fd(session->event_loop, kq,
++		WL_EVENT_READABLE, handle_drm_kevent, drm);
++	if (!drm->drm_kevent) {
++		wlr_log(WLR_ERROR, "Failed to create DRM kevent source");
++		close(kq);
++		goto continue_without_kqueue;
++	}
++	drm->kq = kq;
++	wlr_log(WLR_INFO, "DRM kevent source added");
++
++continue_without_kqueue:
+ 	return &drm->backend;
+ 
+ error_mgpu_renderer:
Index: 0.19/patches/patch-backend_drm_drm_c
===================================================================
RCS file: 0.19/patches/patch-backend_drm_drm_c
diff -N 0.19/patches/patch-backend_drm_drm_c
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ 0.19/patches/patch-backend_drm_drm_c	3 Jun 2026 17:21:39 -0000
@@ -0,0 +1,40 @@
+Index: backend/drm/drm.c
+--- backend/drm/drm.c.orig
++++ backend/drm/drm.c
+@@ -8,6 +8,7 @@
+ #include <stdlib.h>
+ #include <string.h>
+ #include <strings.h>
++#include <sys/event.h>
+ #include <time.h>
+ #include <wayland-server-core.h>
+ #include <wayland-util.h>
+@@ -375,6 +376,9 @@ void finish_drm_resources(struct wlr_drm_backend *drm)
+ 		return;
+ 	}
+ 
++	if (drm->kq)
++		close(drm->kq);
++
+ 	if (drm->iface->finish != NULL) {
+ 		drm->iface->finish(drm);
+ 	}
+@@ -2050,6 +2054,18 @@ int handle_drm_event(int fd, uint32_t mask, void *data
+ 		wlr_log(WLR_ERROR, "drmHandleEvent failed");
+ 		wlr_backend_destroy(&drm->backend);
+ 	}
++	return 1;
++}
++
++int handle_drm_kevent(int fd, uint32_t mask, void *data) {
++	struct kevent kev;
++	struct wlr_drm_backend *drm = data;
++
++	if ((kevent(fd, NULL, 0, &kev, 1, NULL)) && kev.fflags & NOTE_CHANGE) {
++		wlr_log(WLR_INFO, "DRM hotplug detected");
++		scan_drm_connectors(drm, NULL);
++	}
++
+ 	return 1;
+ }
+ 
Index: 0.19/patches/patch-include_backend_drm_drm_h
===================================================================
RCS file: 0.19/patches/patch-include_backend_drm_drm_h
diff -N 0.19/patches/patch-include_backend_drm_drm_h
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ 0.19/patches/patch-include_backend_drm_drm_h	3 Jun 2026 17:21:39 -0000
@@ -0,0 +1,27 @@
+Index: include/backend/drm/drm.h
+--- include/backend/drm/drm.h.orig
++++ include/backend/drm/drm.h
+@@ -92,6 +92,7 @@ struct wlr_drm_backend {
+ 	bool addfb2_modifiers;
+ 
+ 	int fd;
++	int kq;
+ 	char *name;
+ 	struct wlr_device *dev;
+ 	struct liftoff_device *liftoff;
+@@ -103,6 +104,7 @@ struct wlr_drm_backend {
+ 	struct wlr_drm_plane *planes;
+ 
+ 	struct wl_event_source *drm_event;
++	struct wl_event_source *drm_kevent;
+ 
+ 	struct wl_listener session_destroy;
+ 	struct wl_listener session_active;
+@@ -226,6 +228,7 @@ void scan_drm_leases(struct wlr_drm_backend *drm);
+ bool commit_drm_device(struct wlr_drm_backend *drm,
+ 	const struct wlr_backend_output_state *states, size_t states_len, bool test_only);
+ int handle_drm_event(int fd, uint32_t mask, void *data);
++int handle_drm_kevent(int fd, uint32_t mask, void *data);
+ void destroy_drm_connector(struct wlr_drm_connector *conn);
+ bool drm_connector_is_cursor_visible(struct wlr_drm_connector *conn);
+ size_t drm_crtc_get_gamma_lut_size(struct wlr_drm_backend *drm,
Index: 0.19/patches/patch-meson_build
===================================================================
RCS file: 0.19/patches/patch-meson_build
diff -N 0.19/patches/patch-meson_build
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ 0.19/patches/patch-meson_build	3 Jun 2026 17:21:39 -0000
@@ -0,0 +1,21 @@
+No librt on OpenBSD
+
+Index: meson.build
+--- meson.build.orig
++++ meson.build
+@@ -121,7 +121,6 @@ pixman = dependency('pixman-1',
+ 	default_options: ['werror=false'],
+ )
+ math = cc.find_library('m')
+-rt = cc.find_library('rt')
+ 
+ wlr_files = []
+ wlr_deps = [
+@@ -130,7 +129,6 @@ wlr_deps = [
+ 	xkbcommon,
+ 	pixman,
+ 	math,
+-	rt,
+ ]
+ 
+ subdir('protocol')
Index: 0.19/patches/patch-render_drm_syncobj_c
===================================================================
RCS file: 0.19/patches/patch-render_drm_syncobj_c
diff -N 0.19/patches/patch-render_drm_syncobj_c
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ 0.19/patches/patch-render_drm_syncobj_c	3 Jun 2026 17:21:39 -0000
@@ -0,0 +1,14 @@
+ETIMEDOUT on OpenBSD, not ETIME
+
+Index: render/drm_syncobj.c
+--- render/drm_syncobj.c.orig
++++ render/drm_syncobj.c
+@@ -161,7 +161,7 @@ out:
+ bool wlr_drm_syncobj_timeline_check(struct wlr_drm_syncobj_timeline *timeline,
+ 		uint64_t point, uint32_t flags, bool *result) {
+ 	int etime;
+-#if defined(__FreeBSD__)
++#if defined(__FreeBSD__) || defined(__OpenBSD__)
+ 	etime = ETIMEDOUT;
+ #else
+ 	etime = ETIME;
Index: 0.19/patches/patch-render_vulkan_vulkan_c
===================================================================
RCS file: 0.19/patches/patch-render_vulkan_vulkan_c
diff -N 0.19/patches/patch-render_vulkan_vulkan_c
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ 0.19/patches/patch-render_vulkan_vulkan_c	3 Jun 2026 17:21:39 -0000
@@ -0,0 +1,11 @@
+otherwise makedev() function isnt found
+
+Index: render/vulkan/vulkan.c
+--- render/vulkan/vulkan.c.orig
++++ render/vulkan/vulkan.c
+@@ -1,4 +1,4 @@
+-#if defined(__FreeBSD__)
++#if defined(__FreeBSD__) || defined(__OpenBSD__)
+ #undef _POSIX_C_SOURCE
+ #endif
+ #include <assert.h>
Index: 0.19/patches/patch-xcursor_xcursor_c
===================================================================
RCS file: 0.19/patches/patch-xcursor_xcursor_c
diff -N 0.19/patches/patch-xcursor_xcursor_c
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ 0.19/patches/patch-xcursor_xcursor_c	3 Jun 2026 17:21:39 -0000
@@ -0,0 +1,12 @@
+Index: xcursor/xcursor.c
+--- xcursor/xcursor.c.orig
++++ xcursor/xcursor.c
+@@ -490,7 +490,7 @@ xcursor_xc_file_load_images(FILE *file, int size)
+ #endif
+ 
+ #ifndef XCURSORPATH
+-#define XCURSORPATH "~/.icons:/usr/share/icons:/usr/share/pixmaps:~/.cursors:/usr/share/cursors/xorg-x11:"ICONDIR
++#define XCURSORPATH "~/.icons:/usr/X11R6/include/pixmaps:/usr/local/share/icons:/usr/local/lib/X11/icons:/usr/share/icons:/usr/share/pixmaps:~/.cursors:/usr/share/cursors/xorg-x11:"ICONDIR
+ #endif
+ 
+ #define XDG_DATA_HOME_FALLBACK "~/.local/share"
Index: 0.19/pkg/DESCR
===================================================================
RCS file: 0.19/pkg/DESCR
diff -N 0.19/pkg/DESCR
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ 0.19/pkg/DESCR	3 Jun 2026 17:21:39 -0000
@@ -0,0 +1,38 @@
+Pluggable, composable, unopinionated modules for building a Wayland
+compositor; or about 60,000 lines of code you were going to write
+anyway.
+
+ * wlroots provides backends that abstract the underlying display and
+   input hardware, including KMS/DRM, libinput, Wayland, X11, and
+   headless backends, plus any custom backends you choose to write,
+   which can all be created or destroyed at runtime and used in
+   concert with each other.
+
+ * wlroots provides unopinionated, mostly standalone implementations
+   of many Wayland interfaces, both from wayland.xml and various
+   protocol extensions. We also promote the standardization of
+   portable extensions across many compositors.
+
+ * wlroots provides several powerful, standalone, and optional tools
+   that implement components common to many compositors, such as the
+   arrangement of outputs in physical space.
+
+ * wlroots provides an Xwayland abstraction that allows you to have
+   excellent Xwayland support without worrying about writing your own
+   X11 window manager on top of writing your compositor.
+
+ * wlroots provides a renderer abstraction that simple compositors can
+   use to avoid writing GL code directly, but which steps out of the
+   way when your needs demand custom rendering code.
+
+wlroots implements a huge variety of Wayland compositor features and
+implements them right, so you can focus on the features that make your
+compositor unique. By using wlroots, you get high performance,
+excellent hardware compatibility, broad support for many wayland
+interfaces, and comfortable development tools - or any subset of these
+features you like, because all of them work independently of one
+another and freely compose with anything you want to implement
+yourself.
+
+A variety of wrapper libraries are available for using it with your
+favorite programming language.
Index: 0.19/pkg/PLIST
===================================================================
RCS file: 0.19/pkg/PLIST
diff -N 0.19/pkg/PLIST
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ 0.19/pkg/PLIST	3 Jun 2026 17:21:39 -0000
@@ -0,0 +1,134 @@
+@option no-default-conflict
+@option is-branch
+@conflict wlroots->=0.19,<0.20
+@conflict wlroots->=0.19v0,<0.20v0
+@pkgpath wayland/wlroots
+include/wlroots-${MODWLROOTS_VERSION}/
+include/wlroots-${MODWLROOTS_VERSION}/wlr/
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/drm.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/headless.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/interface.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/libinput.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/multi.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/session.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/wayland.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/x11.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/config.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/
+include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_buffer.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_ext_image_capture_source_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_keyboard.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_output.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_pointer.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_switch.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_tablet_pad.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_tablet_tool.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_touch.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/allocator.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/color.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/dmabuf.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/drm_format_set.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/drm_syncobj.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/egl.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/gles2.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/interface.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/pass.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/pixman.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/swapchain.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/vulkan.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/wlr_renderer.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/wlr_texture.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_alpha_modifier_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_buffer.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_color_management_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_compositor.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_content_type_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_cursor.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_cursor_shape_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_damage_ring.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_data_control_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_data_device.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_drm.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_drm_lease_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_export_dmabuf_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_ext_data_control_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_ext_foreign_toplevel_list_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_ext_image_capture_source_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_ext_image_copy_capture_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_foreign_toplevel_management_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_fractional_scale_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_gamma_control_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_idle_inhibit_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_idle_notify_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_input_device.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_input_method_v2.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_keyboard.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_keyboard_group.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_keyboard_shortcuts_inhibit_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_layer_shell_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_linux_dmabuf_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_linux_drm_syncobj_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_output.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_output_layer.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_output_layout.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_output_management_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_output_power_management_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_output_swapchain_manager.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_pointer.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_pointer_constraints_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_pointer_gestures_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_presentation_time.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_primary_selection.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_primary_selection_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_relative_pointer_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_scene.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_screencopy_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_seat.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_security_context_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_server_decoration.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_session_lock_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_shm.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_single_pixel_buffer_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_subcompositor.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_switch.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_tablet_pad.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_tablet_tool.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_tablet_v2.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_tearing_control_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_text_input_v3.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_touch.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_transient_seat_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_viewporter.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_virtual_keyboard_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_virtual_pointer_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xcursor_manager.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_activation_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_decoration_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_dialog_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_foreign_registry.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_foreign_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_foreign_v2.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_output_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_shell.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_system_bell_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_toplevel_icon_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/util/
+include/wlroots-${MODWLROOTS_VERSION}/wlr/util/addon.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/util/box.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/util/edges.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/util/log.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/util/region.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/util/transform.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/version.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/xcursor.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/xwayland/
+include/wlroots-${MODWLROOTS_VERSION}/wlr/xwayland.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/xwayland/server.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/xwayland/shell.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/xwayland/xwayland.h
+@lib lib/libwlroots-${MODWLROOTS_VERSION}.so.${LIBwlroots-${MODWLROOTS_VERSION}_VERSION}
+lib/pkgconfig/wlroots-${MODWLROOTS_VERSION}.pc
Index: 0.20/Makefile
===================================================================
RCS file: 0.20/Makefile
diff -N 0.20/Makefile
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ 0.20/Makefile	3 Jun 2026 17:21:39 -0000
@@ -0,0 +1,9 @@
+MODWLROOTS_VERSION =	0.20
+
+V =		${MODWLROOTS_VERSION}.1
+
+SHARED_LIBS +=	wlroots-0.20 0.0 # 0.0
+
+PKGSPEC =	wlroots->=0.20v0,<0.21v0
+
+.include <bsd.port.mk>
Index: 0.20/distinfo
===================================================================
RCS file: 0.20/distinfo
diff -N 0.20/distinfo
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ 0.20/distinfo	3 Jun 2026 17:21:39 -0000
@@ -0,0 +1,2 @@
+SHA256 (wlroots-0.20.1.tar.gz) = qFQRh7rsqiYgk4r6zeiCZst++lkoywnVedjvsHvEkBs=
+SIZE (wlroots-0.20.1.tar.gz) = 700814
Index: 0.20/patches/patch-backend_drm_backend_c
===================================================================
RCS file: 0.20/patches/patch-backend_drm_backend_c
diff -N 0.20/patches/patch-backend_drm_backend_c
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ 0.20/patches/patch-backend_drm_backend_c	3 Jun 2026 17:21:39 -0000
@@ -0,0 +1,55 @@
+Index: backend/drm/backend.c
+--- backend/drm/backend.c.orig
++++ backend/drm/backend.c
+@@ -3,11 +3,13 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
++#include <unistd.h>
+ #include <wayland-server-core.h>
+ #include <wlr/backend/interface.h>
+ #include <wlr/backend/session.h>
+ #include <wlr/interfaces/wlr_output.h>
+ #include <wlr/util/log.h>
++#include <sys/event.h>
+ #include <xf86drm.h>
+ #include "backend/drm/drm.h"
+ #include "backend/drm/fb.h"
+@@ -207,6 +209,8 @@ static bool init_mgpu_renderer(struct wlr_drm_backend 
+ 
+ struct wlr_backend *wlr_drm_backend_create(struct wlr_session *session,
+ 		struct wlr_device *dev, struct wlr_backend *parent) {
++	int kq;
++	struct kevent kev;
+ 	assert(session && dev);
+ 	assert(!parent || wlr_backend_is_drm(parent));
+ 
+@@ -283,6 +287,28 @@ struct wlr_backend *wlr_drm_backend_create(struct wlr_
+ 	drm->session_destroy.notify = handle_session_destroy;
+ 	wl_signal_add(&session->events.destroy, &drm->session_destroy);
+ 
++	if ((kq = kqueue()) <= 0)
++		goto continue_without_kqueue;
++
++	EV_SET(&kev, dev->fd, EVFILT_DEVICE, EV_ADD | EV_ENABLE | EV_CLEAR,
++	       NOTE_CHANGE, 0, NULL);
++
++	if (kevent(kq, &kev, 1, NULL, 0, NULL) < 0) {
++		close(kq);
++		goto continue_without_kqueue;
++	}
++
++	drm->drm_kevent = wl_event_loop_add_fd(session->event_loop, kq,
++		WL_EVENT_READABLE, handle_drm_kevent, drm);
++	if (!drm->drm_kevent) {
++		wlr_log(WLR_ERROR, "Failed to create DRM kevent source");
++		close(kq);
++		goto continue_without_kqueue;
++	}
++	drm->kq = kq;
++	wlr_log(WLR_INFO, "DRM kevent source added");
++
++continue_without_kqueue:
+ 	return &drm->backend;
+ 
+ error_mgpu_renderer:
Index: 0.20/patches/patch-backend_drm_drm_c
===================================================================
RCS file: 0.20/patches/patch-backend_drm_drm_c
diff -N 0.20/patches/patch-backend_drm_drm_c
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ 0.20/patches/patch-backend_drm_drm_c	3 Jun 2026 17:21:39 -0000
@@ -0,0 +1,40 @@
+Index: backend/drm/drm.c
+--- backend/drm/drm.c.orig
++++ backend/drm/drm.c
+@@ -8,6 +8,7 @@
+ #include <stdlib.h>
+ #include <string.h>
+ #include <strings.h>
++#include <sys/event.h>
+ #include <time.h>
+ #include <wayland-server-core.h>
+ #include <wayland-util.h>
+@@ -387,6 +388,9 @@ void finish_drm_resources(struct wlr_drm_backend *drm)
+ 		return;
+ 	}
+ 
++	if (drm->kq)
++		close(drm->kq);
++
+ 	if (drm->iface->finish != NULL) {
+ 		drm->iface->finish(drm);
+ 	}
+@@ -2098,6 +2102,18 @@ int handle_drm_event(int fd, uint32_t mask, void *data
+ 		wlr_log(WLR_ERROR, "drmHandleEvent failed");
+ 		wlr_backend_destroy(&drm->backend);
+ 	}
++	return 1;
++}
++
++int handle_drm_kevent(int fd, uint32_t mask, void *data) {
++	struct kevent kev;
++	struct wlr_drm_backend *drm = data;
++
++	if ((kevent(fd, NULL, 0, &kev, 1, NULL)) && kev.fflags & NOTE_CHANGE) {
++		wlr_log(WLR_INFO, "DRM hotplug detected");
++		scan_drm_connectors(drm, NULL);
++	}
++
+ 	return 1;
+ }
+ 
Index: 0.20/patches/patch-include_backend_drm_drm_h
===================================================================
RCS file: 0.20/patches/patch-include_backend_drm_drm_h
diff -N 0.20/patches/patch-include_backend_drm_drm_h
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ 0.20/patches/patch-include_backend_drm_drm_h	3 Jun 2026 17:21:39 -0000
@@ -0,0 +1,27 @@
+Index: include/backend/drm/drm.h
+--- include/backend/drm/drm.h.orig
++++ include/backend/drm/drm.h
+@@ -96,6 +96,7 @@ struct wlr_drm_backend {
+ 	bool addfb2_modifiers;
+ 
+ 	int fd;
++	int kq;
+ 	char *name;
+ 	struct wlr_device *dev;
+ 	struct liftoff_device *liftoff;
+@@ -107,6 +108,7 @@ struct wlr_drm_backend {
+ 	struct wlr_drm_plane *planes;
+ 
+ 	struct wl_event_source *drm_event;
++	struct wl_event_source *drm_kevent;
+ 
+ 	struct wl_listener session_destroy;
+ 	struct wl_listener session_active;
+@@ -236,6 +238,7 @@ void scan_drm_leases(struct wlr_drm_backend *drm);
+ bool commit_drm_device(struct wlr_drm_backend *drm,
+ 	const struct wlr_backend_output_state *states, size_t states_len, bool test_only);
+ int handle_drm_event(int fd, uint32_t mask, void *data);
++int handle_drm_kevent(int fd, uint32_t mask, void *data);
+ void destroy_drm_connector(struct wlr_drm_connector *conn);
+ bool drm_connector_is_cursor_visible(struct wlr_drm_connector *conn);
+ size_t drm_crtc_get_gamma_lut_size(struct wlr_drm_backend *drm,
Index: 0.20/patches/patch-meson_build
===================================================================
RCS file: 0.20/patches/patch-meson_build
diff -N 0.20/patches/patch-meson_build
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ 0.20/patches/patch-meson_build	3 Jun 2026 17:21:39 -0000
@@ -0,0 +1,21 @@
+No librt on OpenBSD
+
+Index: meson.build
+--- meson.build.orig
++++ meson.build
+@@ -121,7 +121,6 @@ pixman = dependency('pixman-1',
+ 	default_options: ['werror=false'],
+ )
+ math = cc.find_library('m')
+-rt = cc.find_library('rt')
+ 
+ wlr_files = []
+ wlr_deps = [
+@@ -130,7 +129,6 @@ wlr_deps = [
+ 	xkbcommon,
+ 	pixman,
+ 	math,
+-	rt,
+ ]
+ 
+ subdir('protocol')
Index: 0.20/patches/patch-render_drm_syncobj_c
===================================================================
RCS file: 0.20/patches/patch-render_drm_syncobj_c
diff -N 0.20/patches/patch-render_drm_syncobj_c
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ 0.20/patches/patch-render_drm_syncobj_c	3 Jun 2026 17:21:39 -0000
@@ -0,0 +1,14 @@
+ETIMEDOUT on OpenBSD, not ETIME
+
+Index: render/drm_syncobj.c
+--- render/drm_syncobj.c.orig
++++ render/drm_syncobj.c
+@@ -161,7 +161,7 @@ out:
+ bool wlr_drm_syncobj_timeline_check(struct wlr_drm_syncobj_timeline *timeline,
+ 		uint64_t point, uint32_t flags, bool *result) {
+ 	int etime;
+-#if defined(__FreeBSD__)
++#if defined(__FreeBSD__) || defined(__OpenBSD__)
+ 	etime = ETIMEDOUT;
+ #else
+ 	etime = ETIME;
Index: 0.20/patches/patch-render_vulkan_vulkan_c
===================================================================
RCS file: 0.20/patches/patch-render_vulkan_vulkan_c
diff -N 0.20/patches/patch-render_vulkan_vulkan_c
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ 0.20/patches/patch-render_vulkan_vulkan_c	3 Jun 2026 17:21:39 -0000
@@ -0,0 +1,11 @@
+otherwise makedev() function isnt found
+
+Index: render/vulkan/vulkan.c
+--- render/vulkan/vulkan.c.orig
++++ render/vulkan/vulkan.c
+@@ -1,4 +1,4 @@
+-#if defined(__FreeBSD__)
++#if defined(__FreeBSD__) || defined(__OpenBSD__)
+ #undef _POSIX_C_SOURCE
+ #endif
+ #include <assert.h>
Index: 0.20/patches/patch-xcursor_xcursor_c
===================================================================
RCS file: 0.20/patches/patch-xcursor_xcursor_c
diff -N 0.20/patches/patch-xcursor_xcursor_c
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ 0.20/patches/patch-xcursor_xcursor_c	3 Jun 2026 17:21:39 -0000
@@ -0,0 +1,12 @@
+Index: xcursor/xcursor.c
+--- xcursor/xcursor.c.orig
++++ xcursor/xcursor.c
+@@ -490,7 +490,7 @@ xcursor_xc_file_load_images(FILE *file, int size)
+ #endif
+ 
+ #ifndef XCURSORPATH
+-#define XCURSORPATH "~/.icons:/usr/share/icons:/usr/share/pixmaps:~/.cursors:/usr/share/cursors/xorg-x11:"ICONDIR
++#define XCURSORPATH "~/.icons:/usr/X11R6/include/pixmaps:/usr/local/share/icons:/usr/local/lib/X11/icons:/usr/share/icons:/usr/share/pixmaps:~/.cursors:/usr/share/cursors/xorg-x11:"ICONDIR
+ #endif
+ 
+ #define XDG_DATA_HOME_FALLBACK "~/.local/share"
Index: 0.20/pkg/DESCR
===================================================================
RCS file: 0.20/pkg/DESCR
diff -N 0.20/pkg/DESCR
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ 0.20/pkg/DESCR	3 Jun 2026 17:21:39 -0000
@@ -0,0 +1,38 @@
+Pluggable, composable, unopinionated modules for building a Wayland
+compositor; or about 60,000 lines of code you were going to write
+anyway.
+
+ * wlroots provides backends that abstract the underlying display and
+   input hardware, including KMS/DRM, libinput, Wayland, X11, and
+   headless backends, plus any custom backends you choose to write,
+   which can all be created or destroyed at runtime and used in
+   concert with each other.
+
+ * wlroots provides unopinionated, mostly standalone implementations
+   of many Wayland interfaces, both from wayland.xml and various
+   protocol extensions. We also promote the standardization of
+   portable extensions across many compositors.
+
+ * wlroots provides several powerful, standalone, and optional tools
+   that implement components common to many compositors, such as the
+   arrangement of outputs in physical space.
+
+ * wlroots provides an Xwayland abstraction that allows you to have
+   excellent Xwayland support without worrying about writing your own
+   X11 window manager on top of writing your compositor.
+
+ * wlroots provides a renderer abstraction that simple compositors can
+   use to avoid writing GL code directly, but which steps out of the
+   way when your needs demand custom rendering code.
+
+wlroots implements a huge variety of Wayland compositor features and
+implements them right, so you can focus on the features that make your
+compositor unique. By using wlroots, you get high performance,
+excellent hardware compatibility, broad support for many wayland
+interfaces, and comfortable development tools - or any subset of these
+features you like, because all of them work independently of one
+another and freely compose with anything you want to implement
+yourself.
+
+A variety of wrapper libraries are available for using it with your
+favorite programming language.
Index: 0.20/pkg/PLIST
===================================================================
RCS file: 0.20/pkg/PLIST
diff -N 0.20/pkg/PLIST
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ 0.20/pkg/PLIST	3 Jun 2026 17:21:39 -0000
@@ -0,0 +1,134 @@
+@option no-default-conflict
+@option is-branch
+@conflict wlroots->=0.20,<0.21
+@conflict wlroots->=0.20v0,<0.21v0
+@pkgpath wayland/wlroots
+include/wlroots-${MODWLROOTS_VERSION}/
+include/wlroots-${MODWLROOTS_VERSION}/wlr/
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/drm.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/headless.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/interface.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/libinput.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/multi.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/session.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/wayland.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/x11.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/config.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/
+include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_buffer.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_ext_image_capture_source_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_keyboard.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_output.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_pointer.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_switch.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_tablet_pad.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_tablet_tool.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_touch.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/allocator.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/color.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/dmabuf.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/drm_format_set.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/drm_syncobj.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/egl.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/gles2.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/interface.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/pass.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/pixman.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/swapchain.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/vulkan.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/wlr_renderer.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/render/wlr_texture.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_alpha_modifier_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_buffer.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_color_management_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_compositor.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_content_type_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_cursor.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_cursor_shape_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_damage_ring.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_data_control_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_data_device.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_drm.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_drm_lease_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_export_dmabuf_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_ext_data_control_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_ext_foreign_toplevel_list_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_ext_image_capture_source_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_ext_image_copy_capture_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_foreign_toplevel_management_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_fractional_scale_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_gamma_control_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_idle_inhibit_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_idle_notify_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_input_device.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_input_method_v2.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_keyboard.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_keyboard_group.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_keyboard_shortcuts_inhibit_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_layer_shell_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_linux_dmabuf_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_linux_drm_syncobj_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_output.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_output_layer.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_output_layout.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_output_management_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_output_power_management_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_output_swapchain_manager.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_pointer.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_pointer_constraints_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_pointer_gestures_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_presentation_time.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_primary_selection.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_primary_selection_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_relative_pointer_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_scene.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_screencopy_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_seat.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_security_context_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_server_decoration.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_session_lock_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_shm.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_single_pixel_buffer_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_subcompositor.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_switch.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_tablet_pad.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_tablet_tool.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_tablet_v2.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_tearing_control_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_text_input_v3.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_touch.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_transient_seat_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_viewporter.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_virtual_keyboard_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_virtual_pointer_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xcursor_manager.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_activation_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_decoration_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_dialog_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_foreign_registry.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_foreign_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_foreign_v2.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_output_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_shell.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_system_bell_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_toplevel_icon_v1.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/util/
+include/wlroots-${MODWLROOTS_VERSION}/wlr/util/addon.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/util/box.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/util/edges.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/util/log.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/util/region.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/util/transform.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/version.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/xcursor.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/xwayland/
+include/wlroots-${MODWLROOTS_VERSION}/wlr/xwayland.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/xwayland/server.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/xwayland/shell.h
+include/wlroots-${MODWLROOTS_VERSION}/wlr/xwayland/xwayland.h
+@lib lib/libwlroots-${MODWLROOTS_VERSION}.so.${LIBwlroots-${MODWLROOTS_VERSION}_VERSION}
+lib/pkgconfig/wlroots-${MODWLROOTS_VERSION}.pc
Index: patches/patch-backend_drm_backend_c
===================================================================
RCS file: patches/patch-backend_drm_backend_c
diff -N patches/patch-backend_drm_backend_c
--- patches/patch-backend_drm_backend_c	28 Aug 2025 21:01:27 -0000	1.2
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,55 +0,0 @@
-Index: backend/drm/backend.c
---- backend/drm/backend.c.orig
-+++ backend/drm/backend.c
-@@ -3,11 +3,13 @@
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
-+#include <unistd.h>
- #include <wayland-server-core.h>
- #include <wlr/backend/interface.h>
- #include <wlr/backend/session.h>
- #include <wlr/interfaces/wlr_output.h>
- #include <wlr/util/log.h>
-+#include <sys/event.h>
- #include <xf86drm.h>
- #include "backend/drm/drm.h"
- #include "backend/drm/fb.h"
-@@ -207,6 +209,8 @@ static bool init_mgpu_renderer(struct wlr_drm_backend 
- 
- struct wlr_backend *wlr_drm_backend_create(struct wlr_session *session,
- 		struct wlr_device *dev, struct wlr_backend *parent) {
-+	int kq;
-+	struct kevent kev;
- 	assert(session && dev);
- 	assert(!parent || wlr_backend_is_drm(parent));
- 
-@@ -283,6 +287,28 @@ struct wlr_backend *wlr_drm_backend_create(struct wlr_
- 	drm->session_destroy.notify = handle_session_destroy;
- 	wl_signal_add(&session->events.destroy, &drm->session_destroy);
- 
-+	if ((kq = kqueue()) <= 0)
-+		goto continue_without_kqueue;
-+
-+	EV_SET(&kev, dev->fd, EVFILT_DEVICE, EV_ADD | EV_ENABLE | EV_CLEAR,
-+	       NOTE_CHANGE, 0, NULL);
-+
-+	if (kevent(kq, &kev, 1, NULL, 0, NULL) < 0) {
-+		close(kq);
-+		goto continue_without_kqueue;
-+	}
-+
-+	drm->drm_kevent = wl_event_loop_add_fd(session->event_loop, kq,
-+		WL_EVENT_READABLE, handle_drm_kevent, drm);
-+	if (!drm->drm_kevent) {
-+		wlr_log(WLR_ERROR, "Failed to create DRM kevent source");
-+		close(kq);
-+		goto continue_without_kqueue;
-+	}
-+	drm->kq = kq;
-+	wlr_log(WLR_INFO, "DRM kevent source added");
-+
-+continue_without_kqueue:
- 	return &drm->backend;
- 
- error_mgpu_renderer:
Index: patches/patch-backend_drm_drm_c
===================================================================
RCS file: patches/patch-backend_drm_drm_c
diff -N patches/patch-backend_drm_drm_c
--- patches/patch-backend_drm_drm_c	28 Aug 2025 21:01:27 -0000	1.2
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,40 +0,0 @@
-Index: backend/drm/drm.c
---- backend/drm/drm.c.orig
-+++ backend/drm/drm.c
-@@ -8,6 +8,7 @@
- #include <stdlib.h>
- #include <string.h>
- #include <strings.h>
-+#include <sys/event.h>
- #include <time.h>
- #include <wayland-server-core.h>
- #include <wayland-util.h>
-@@ -375,6 +376,9 @@ void finish_drm_resources(struct wlr_drm_backend *drm)
- 		return;
- 	}
- 
-+	if (drm->kq)
-+		close(drm->kq);
-+
- 	if (drm->iface->finish != NULL) {
- 		drm->iface->finish(drm);
- 	}
-@@ -2050,6 +2054,18 @@ int handle_drm_event(int fd, uint32_t mask, void *data
- 		wlr_log(WLR_ERROR, "drmHandleEvent failed");
- 		wlr_backend_destroy(&drm->backend);
- 	}
-+	return 1;
-+}
-+
-+int handle_drm_kevent(int fd, uint32_t mask, void *data) {
-+	struct kevent kev;
-+	struct wlr_drm_backend *drm = data;
-+
-+	if ((kevent(fd, NULL, 0, &kev, 1, NULL)) && kev.fflags & NOTE_CHANGE) {
-+		wlr_log(WLR_INFO, "DRM hotplug detected");
-+		scan_drm_connectors(drm, NULL);
-+	}
-+
- 	return 1;
- }
- 
Index: patches/patch-include_backend_drm_drm_h
===================================================================
RCS file: patches/patch-include_backend_drm_drm_h
diff -N patches/patch-include_backend_drm_drm_h
--- patches/patch-include_backend_drm_drm_h	28 Aug 2025 21:01:27 -0000	1.2
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,27 +0,0 @@
-Index: include/backend/drm/drm.h
---- include/backend/drm/drm.h.orig
-+++ include/backend/drm/drm.h
-@@ -92,6 +92,7 @@ struct wlr_drm_backend {
- 	bool addfb2_modifiers;
- 
- 	int fd;
-+	int kq;
- 	char *name;
- 	struct wlr_device *dev;
- 	struct liftoff_device *liftoff;
-@@ -103,6 +104,7 @@ struct wlr_drm_backend {
- 	struct wlr_drm_plane *planes;
- 
- 	struct wl_event_source *drm_event;
-+	struct wl_event_source *drm_kevent;
- 
- 	struct wl_listener session_destroy;
- 	struct wl_listener session_active;
-@@ -226,6 +228,7 @@ void scan_drm_leases(struct wlr_drm_backend *drm);
- bool commit_drm_device(struct wlr_drm_backend *drm,
- 	const struct wlr_backend_output_state *states, size_t states_len, bool test_only);
- int handle_drm_event(int fd, uint32_t mask, void *data);
-+int handle_drm_kevent(int fd, uint32_t mask, void *data);
- void destroy_drm_connector(struct wlr_drm_connector *conn);
- bool drm_connector_is_cursor_visible(struct wlr_drm_connector *conn);
- size_t drm_crtc_get_gamma_lut_size(struct wlr_drm_backend *drm,
Index: patches/patch-meson_build
===================================================================
RCS file: patches/patch-meson_build
diff -N patches/patch-meson_build
--- patches/patch-meson_build	28 Aug 2025 21:01:27 -0000	1.3
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,21 +0,0 @@
-No librt on OpenBSD
-
-Index: meson.build
---- meson.build.orig
-+++ meson.build
-@@ -121,7 +121,6 @@ pixman = dependency('pixman-1',
- 	default_options: ['werror=false'],
- )
- math = cc.find_library('m')
--rt = cc.find_library('rt')
- 
- wlr_files = []
- wlr_deps = [
-@@ -130,7 +129,6 @@ wlr_deps = [
- 	xkbcommon,
- 	pixman,
- 	math,
--	rt,
- ]
- 
- subdir('protocol')
Index: patches/patch-render_drm_syncobj_c
===================================================================
RCS file: patches/patch-render_drm_syncobj_c
diff -N patches/patch-render_drm_syncobj_c
--- patches/patch-render_drm_syncobj_c	28 Aug 2025 21:01:27 -0000	1.2
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,14 +0,0 @@
-ETIMEDOUT on OpenBSD, not ETIME
-
-Index: render/drm_syncobj.c
---- render/drm_syncobj.c.orig
-+++ render/drm_syncobj.c
-@@ -161,7 +161,7 @@ out:
- bool wlr_drm_syncobj_timeline_check(struct wlr_drm_syncobj_timeline *timeline,
- 		uint64_t point, uint32_t flags, bool *result) {
- 	int etime;
--#if defined(__FreeBSD__)
-+#if defined(__FreeBSD__) || defined(__OpenBSD__)
- 	etime = ETIMEDOUT;
- #else
- 	etime = ETIME;
Index: patches/patch-render_vulkan_vulkan_c
===================================================================
RCS file: patches/patch-render_vulkan_vulkan_c
diff -N patches/patch-render_vulkan_vulkan_c
--- patches/patch-render_vulkan_vulkan_c	7 Nov 2024 09:44:27 -0000	1.2
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,11 +0,0 @@
-otherwise makedev() function isnt found
-
-Index: render/vulkan/vulkan.c
---- render/vulkan/vulkan.c.orig
-+++ render/vulkan/vulkan.c
-@@ -1,4 +1,4 @@
--#if defined(__FreeBSD__)
-+#if defined(__FreeBSD__) || defined(__OpenBSD__)
- #undef _POSIX_C_SOURCE
- #endif
- #include <assert.h>
Index: patches/patch-xcursor_xcursor_c
===================================================================
RCS file: patches/patch-xcursor_xcursor_c
diff -N patches/patch-xcursor_xcursor_c
--- patches/patch-xcursor_xcursor_c	7 Nov 2024 09:44:27 -0000	1.2
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,12 +0,0 @@
-Index: xcursor/xcursor.c
---- xcursor/xcursor.c.orig
-+++ xcursor/xcursor.c
-@@ -490,7 +490,7 @@ xcursor_xc_file_load_images(FILE *file, int size)
- #endif
- 
- #ifndef XCURSORPATH
--#define XCURSORPATH "~/.icons:/usr/share/icons:/usr/share/pixmaps:~/.cursors:/usr/share/cursors/xorg-x11:"ICONDIR
-+#define XCURSORPATH "~/.icons:/usr/X11R6/include/pixmaps:/usr/local/share/icons:/usr/local/lib/X11/icons:/usr/share/icons:/usr/share/pixmaps:~/.cursors:/usr/share/cursors/xorg-x11:"ICONDIR
- #endif
- 
- #define XDG_DATA_HOME_FALLBACK "~/.local/share"
Index: pkg/DESCR
===================================================================
RCS file: pkg/DESCR
diff -N pkg/DESCR
--- pkg/DESCR	5 Jan 2026 07:31:07 -0000	1.2
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,41 +0,0 @@
-Pluggable, composable, unopinionated modules for building a Wayland
-compositor; or about 60,000 lines of code you were going to write
-anyway.
-
- * wlroots provides backends that abstract the underlying display and
-   input hardware, including KMS/DRM, libinput, Wayland, X11, and
-   headless backends, plus any custom backends you choose to write,
-   which can all be created or destroyed at runtime and used in
-   concert with each other.
-
- * wlroots provides unopinionated, mostly standalone implementations
-   of many Wayland interfaces, both from wayland.xml and various
-   protocol extensions. We also promote the standardization of
-   portable extensions across many compositors.
-
- * wlroots provides several powerful, standalone, and optional tools
-   that implement components common to many compositors, such as the
-   arrangement of outputs in physical space.
-
- * wlroots provides an Xwayland abstraction that allows you to have
-   excellent Xwayland support without worrying about writing your own
-   X11 window manager on top of writing your compositor.
-
- * wlroots provides a renderer abstraction that simple compositors can
-   use to avoid writing GL code directly, but which steps out of the
-   way when your needs demand custom rendering code.
-
-wlroots implements a huge variety of Wayland compositor features and
-implements them right, so you can focus on the features that make your
-compositor unique. By using wlroots, you get high performance,
-excellent hardware compatibility, broad support for many wayland
-interfaces, and comfortable development tools - or any subset of these
-features you like, because all of them work independently of one
-another and freely compose with anything you want to implement
-yourself.
-
-Check out our wiki to get started with wlroots. Join our IRC channel:
-#wlroots on Libera Chat.
-
-A variety of wrapper libraries are available for using it with your
-favorite programming language.
Index: pkg/PLIST
===================================================================
RCS file: pkg/PLIST
diff -N pkg/PLIST
--- pkg/PLIST	28 Aug 2025 21:01:27 -0000	1.6
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,129 +0,0 @@
-include/wlroots-${MODWLROOTS_VERSION}/
-include/wlroots-${MODWLROOTS_VERSION}/wlr/
-include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/
-include/wlroots-${MODWLROOTS_VERSION}/wlr/backend.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/drm.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/headless.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/interface.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/libinput.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/multi.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/session.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/wayland.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/backend/x11.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/config.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/
-include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_buffer.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_ext_image_capture_source_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_keyboard.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_output.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_pointer.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_switch.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_tablet_pad.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_tablet_tool.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/interfaces/wlr_touch.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/render/
-include/wlroots-${MODWLROOTS_VERSION}/wlr/render/allocator.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/render/color.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/render/dmabuf.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/render/drm_format_set.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/render/drm_syncobj.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/render/egl.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/render/gles2.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/render/interface.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/render/pass.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/render/pixman.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/render/swapchain.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/render/vulkan.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/render/wlr_renderer.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/render/wlr_texture.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_alpha_modifier_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_buffer.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_color_management_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_compositor.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_content_type_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_cursor.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_cursor_shape_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_damage_ring.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_data_control_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_data_device.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_drm.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_drm_lease_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_export_dmabuf_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_ext_data_control_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_ext_foreign_toplevel_list_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_ext_image_capture_source_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_ext_image_copy_capture_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_foreign_toplevel_management_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_fractional_scale_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_gamma_control_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_idle_inhibit_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_idle_notify_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_input_device.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_input_method_v2.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_keyboard.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_keyboard_group.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_keyboard_shortcuts_inhibit_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_layer_shell_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_linux_dmabuf_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_linux_drm_syncobj_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_output.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_output_layer.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_output_layout.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_output_management_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_output_power_management_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_output_swapchain_manager.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_pointer.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_pointer_constraints_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_pointer_gestures_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_presentation_time.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_primary_selection.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_primary_selection_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_relative_pointer_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_scene.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_screencopy_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_seat.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_security_context_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_server_decoration.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_session_lock_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_shm.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_single_pixel_buffer_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_subcompositor.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_switch.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_tablet_pad.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_tablet_tool.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_tablet_v2.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_tearing_control_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_text_input_v3.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_touch.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_transient_seat_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_viewporter.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_virtual_keyboard_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_virtual_pointer_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xcursor_manager.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_activation_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_decoration_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_dialog_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_foreign_registry.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_foreign_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_foreign_v2.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_output_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_shell.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_system_bell_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/types/wlr_xdg_toplevel_icon_v1.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/util/
-include/wlroots-${MODWLROOTS_VERSION}/wlr/util/addon.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/util/box.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/util/edges.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/util/log.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/util/region.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/util/transform.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/version.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/xcursor.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/xwayland/
-include/wlroots-${MODWLROOTS_VERSION}/wlr/xwayland.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/xwayland/server.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/xwayland/shell.h
-include/wlroots-${MODWLROOTS_VERSION}/wlr/xwayland/xwayland.h
-@lib lib/libwlroots-${MODWLROOTS_VERSION}.so.${LIBwlroots-${MODWLROOTS_VERSION}_VERSION}
-lib/pkgconfig/wlroots-${MODWLROOTS_VERSION}.pc