On Linux, dhcpcd requires CONFIG_PACKET be enabled in the kernel. We should add a check for this Reproducible: Always Steps to Reproduce: 1. Disable CONFIG_PACKET 2. /etc/init.d/dhcpcd start Actual Results: dhcpcd fails to start, with errors in the log about: Address family not supported by protocol Expected Results: We should use linux-info and CONFIG_CHECK to ensure this option is set on Linux kernels.
Pull request submitted: https://github.com/gentoo/gentoo/pull/22417
Do we also need to check for CONFIG_INET? Where do we draw the line on checking for kernel config options?
I think CONFIG_PACKET is an acceptable line for a couple of reasons. 1. I don't think there's an expectation of DHCP working without CONFIG_INET. 2. Not everyone is aware that DHCP doesn't use TCP or UDP 3. This has happened enough times that CONFIG_PACKET has been mentioned in the wiki for years: https://wiki.gentoo.org/wiki/Dhcpcd
Also of note, if this is acceptable to the developers. I do intend to send a follow up bug/pull for net-wireless/wpa_supplicant with the same rationale. The installation handbook feels the need to have a warning about CONFIG_PACKET in it: https://wiki.gentoo.org/wiki/Handbook:Parts/Networking/Wireless#WPA_supplicant I think it's an improvement to get these kernel dependencies documented in the ebuild rather than the wiki.
I started a discussion on the mailing list. https://archives.gentoo.org/gentoo-dev/message/fc20b4c883510a2cacc13a72132a86a9
I'm going to close this issue and the corresponding pull request. There is still a lack of consensus that this is a good idea. "When in doubt, do nothing."