FS#64914 - `pkg-config x11-xcb` fails because of missing xproto and kbproto

Attached to Project: Arch Linux
Opened by Simon Ser (emersion) - Friday, 20 December 2019, 16:38 GMT
Last edited by Andreas Radke (AndyRTR) - Saturday, 21 December 2019, 20:44 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Andreas Radke (AndyRTR)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 2
Private No

Details

Steps to reproduce:

> pacman -S xcb-util-wm
> export PKG_CONFIG_DEBUG_SPEW=1
> pkg-config x11-xcb
Package xproto was not found in the pkg-config search path.
Perhaps you should add the directory containing `xproto.pc'
to the PKG_CONFIG_PATH environment variable
Package 'xproto', required by 'x11', not found
Package 'kbproto', required by 'x11', not found

Additional info:
* package version(s): libxcb-1.13.1-1 xcb-proto-1.13-4
* wlroots CI failure: https://builds.sr.ht/~emersion/job/125406 and https://github.com/swaywm/wlroots/pull/1956#issuecomment-567986395
This task depends upon

Closed by  Andreas Radke (AndyRTR)
Saturday, 21 December 2019, 20:44 GMT
Reason for closing:  Fixed
Additional comments about closing:  dependency has been readded
Comment by Chih-Hsuan Yen (yan12125) - Friday, 20 December 2019, 17:36 GMT
I believe installing xorgproto will fix it. That package used to be a dependency of libx11 (the one provides x11-xcb.pc), but things are changed during recent Xorg cleanup (https://bugs.archlinux.org/task/64892).

As a rule of thumb - xorgproto is needed if you want to build stuff using X11.
Comment by Andreas Radke (AndyRTR) - Friday, 20 December 2019, 17:43 GMT
Arch doesn't have splitted -devel packages. The proto packages are only needed at build time.
To allow to remove these xproto headers from the user system the libx11 runtime dependency on xorgproto has been removed.

This will force any packager to add xorgproto to the makedepends when a package look for some of its header files or checks the pkgconf status.
But we are currently discussing if there's a better way to deal this other than reverting to the old status.

Note: distribution handle this in various way. Some have a runtime dependency. Some don't. Upstream won't change that because Xorg is pretty
much dead and only in "maintenance mode".
Comment by Simon Ser (emersion) - Saturday, 21 December 2019, 10:25 GMT
How about just keeping the xorgproto headers installed on user systems? Arch doesn't have -devel packages, so these should be installed.

Loading...