Upgrading mirrorselect to 2.2.5 requires net-analyzer/netselect with USE=ipv6: The following USE changes are necessary to proceed: (see "package.use" in the portage(5) man page for more details) # required by app-portage/mirrorselect-2.2.5::gentoo # required by @selected # required by @world (argument) >=net-analyzer/netselect-0.4 ipv6 But on my system IPv6 is disabled both in kernel and in make.conf. So, it doesn't make sense to have just two packages with IPv6 support. Please make it possible to disable IPv6 support in mirrorselect.
According to bug 582508 comment #1, the plan is to enable IPv6 support in netselect unconditionally. In that case, it won't make sense for mirroselect to have USE=ipv6. Does net-analyzer/netselect build for you with USE=ipv6 enabled?
(In reply to Zac Medico from comment #1) > According to bug 582508 comment #1, the plan is to enable IPv6 support in > netselect unconditionally. In that case, it won't make sense for mirroselect > to have USE=ipv6. > > Does net-analyzer/netselect build for you with USE=ipv6 enabled? I have the same configs (ipv6 disabled in make.conf and kernel). I can successfully build net-analyzer/netselect[ipv6] but the resulting binary is unusable, even if specifying ipv4 only: # netselect -vvvv -4 debian.org netselect: socket: Address family not supported by protocol Needless to say mirrorselect therefore also does not work.
(In reply to Robin Bankhead from comment #2) > (In reply to Zac Medico from comment #1) > > According to bug 582508 comment #1, the plan is to enable IPv6 support in > > netselect unconditionally. In that case, it won't make sense for mirroselect > > to have USE=ipv6. > > > > Does net-analyzer/netselect build for you with USE=ipv6 enabled? > > I have the same configs (ipv6 disabled in make.conf and kernel). I can > successfully build net-analyzer/netselect[ipv6] but the resulting binary is > unusable, even if specifying ipv4 only: > > # netselect -vvvv -4 debian.org > netselect: socket: Address family not supported by protocol > > Needless to say mirrorselect therefore also does not work. Maybe we can consider that as a netselect bug.
Um, so if you make a very specific effort to go out of your way to disable IPv6, then IPv6 does not work?
(In reply to Jeroen Roovers from comment #4) > Um, so if you make a very specific effort to go out of your way to disable > IPv6, then IPv6 does not work? The problem is that IPv4 does not work either, as shown in comment #2: > # netselect -vvvv -4 debian.org > netselect: socket: Address family not supported by protocol
OK, so how can we analyse this so that we may know at what level it fails? Is it DNS or IP or does USE=ipv6 on net-analyzer/netselect disable all IPv4 support? That last one should be quite easy to check but I just wonder how we got here to begin with.
I'm happy to raise a bug against netselect that it should check for kernel* ipv6 support if you think that's the appropriate next step, but it is mirrorselect that is currently making kernel support mandatory by proxy. In my view, and it's only my view (plus the reporter's obv), it should be an optional flag in mirrorselect too. I would say that as mirrorselect is part of the recommended install process, the implications of it requiring ipv6 should be weighed carefully.
(In reply to Robin Bankhead from comment #2) > I have the same configs (ipv6 disabled in make.conf and kernel). I can > successfully build net-analyzer/netselect[ipv6] but the resulting binary is > unusable, even if specifying ipv4 only: > > # netselect -vvvv -4 debian.org > netselect: socket: Address family not supported by protocol The -4/-6 options are added by the Debian patch for version 0.4, so with USE=-ipv6 you should be seeing this instead: # netselect -vvvv -4 debian.org netselect: invalid option -- '4' Usage: netselect [-v|-vv|-vvv] [-I] [-m max_ttl] [-s servers] [-t min_tries] host ...
(In reply to Jeroen Roovers from comment #8) > (In reply to Robin Bankhead from comment #2) > > I have the same configs (ipv6 disabled in make.conf and kernel). I can > > successfully build net-analyzer/netselect[ipv6] but the resulting binary is > > unusable, even if specifying ipv4 only: > > > > # netselect -vvvv -4 debian.org > > netselect: socket: Address family not supported by protocol > > The -4/-6 options are added by the Debian patch for version 0.4, so with > USE=-ipv6 you should be seeing this instead: > > > # netselect -vvvv -4 debian.org > netselect: invalid option -- '4' > Usage: netselect [-v|-vv|-vvv] [-I] [-m max_ttl] [-s servers] [-t min_tries] > host ... If it had been built with -ipv6 (which it hasn't in the above case, in case that wasn't clear, because I'm no longer allowed to do that due to mirrorselect) then the option -4 would be implicit, surely.
Created attachment 582696 [details, diff] mirrorselect: make netselect ipv6 support optional Since netselect with ipv6 support does not work on a system where ipv6 is disabled, use a NETSELECT_SUPPORTS_IPV4_IPV6 variable to optionally enable the use of netselect -4/-6 options. The ebuild will use sed to set NETSELECT_SUPPORTS_IPV4_IPV6 = True when USE=ipv6 is enabled, and will have a dependency like RDEPEND=">=net-analyzer/netselect-0.4[ipv6(+)?]".
(In reply to Robin Bankhead from comment #9) > If it had been built with -ipv6 (which it hasn't in the above case, in case > that wasn't clear, because I'm no longer allowed to do that due to > mirrorselect) then the option -4 would be implicit, surely. Now I am still not sure whether it's a problem in upstream netselect-0.4 (and perhaps not 0.3?) or in the IPv6 patch.
In comment #8 I incorrectly referred to "Debian's" patch, but I meant the patch provided in https://github.com/apenwarr/netselect/pull/5 which does itself refer to a patch originating from Debian.
Hi, I am another user having no support for IPv6 in kernel and with USE=-ipv6 set globally in make.conf. I am also asking for IPv6 being optional in any of the packages discussed. Thank you.
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/proj/mirrorselect.git/commit/?id=95ba3ca5e8db2a6b360e4abdcee026076652551d commit 95ba3ca5e8db2a6b360e4abdcee026076652551d Author: Zac Medico <zmedico@gentoo.org> AuthorDate: 2019-07-13 05:00:33 +0000 Commit: Zac Medico <zmedico@gentoo.org> CommitDate: 2019-07-13 05:09:20 +0000 netselect: make netselect ipv6 support optional Since netselect with ipv6 support does not work on a system where ipv6 is disabled, use a NETSELECT_SUPPORTS_IPV4_IPV6 variable to optionally enable the use of netselect -4/-6 options. The ebuild will use sed to set NETSELECT_SUPPORTS_IPV4_IPV6 = True when USE=ipv6 is enabled, and will have a dependency like RDEPEND=">=net-analyzer/netselect-0.4[ipv6(+)?]". Bug: https://bugs.gentoo.org/688214 Signed-off-by: Zac Medico <zmedico@gentoo.org> mirrorselect/selectors.py | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-)
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7aecd01c953127eedcb83b0df45cf2e900fafef8 commit 7aecd01c953127eedcb83b0df45cf2e900fafef8 Author: Zac Medico <zmedico@gentoo.org> AuthorDate: 2019-07-17 05:19:03 +0000 Commit: Zac Medico <zmedico@gentoo.org> CommitDate: 2019-07-17 05:22:32 +0000 app-portage/mirrorselect: Bump to version 2.2.6 Make netselect ipv6 support conditional for bug 688214. Closes: https://bugs.gentoo.org/688214 Package-Manager: Portage-2.3.69, Repoman-2.3.16 Signed-off-by: Zac Medico <zmedico@gentoo.org> app-portage/mirrorselect/Manifest | 1 + app-portage/mirrorselect/mirrorselect-2.2.6.ebuild | 45 ++++++++++++++++++++++ 2 files changed, 46 insertions(+)