iproute2 and net-tools provide the same functionality and so users should be able to choose which to use and not have the other installed.
net-tools is currently in the system profile, which prevents users from unmerging it even if iproute2 is installed although it is the default for baselayout.
I think a better approach would be to create a virtual package that would be satisfied with either iproute2 or net-tools, and that should be in system.
Eh? Could you explain how exactly does the below stuff provide "the same functionality"? It's not about ip vs ifconfig.
/bin/dnsdomainname -> hostname
/bin/domainname -> hostname
/bin/nisdomainname -> hostname
/bin/ypdomainname -> hostname
The reason net-tools is in system is that baselayout needs ifconfig for networking, and iproute2 satisfies that. Moreover, baselayout prefers iproute2 over ifconfig if it is installed.
The binaries are not all a package provides. the ip command in iproute2 replaces almost everything in net-tools.
ip addr = ifconfig
ip route = route
ip neigh = arp
Besides, even if iproute2 does not replace EVERYTHING in net-tools, it can still completely replace it as far as gentoo is concerned and so users should be able to remove net-tools and this bug still applies.
BTW, I just found out that /etc/init.d/hostname uses hostname from net-tools to set the machine hostname.
However, hostname also exists in coreutils but is removed in the ebuild for some reason.
I suppose a use flag could be introduced that will allow the user to choose whether he wants hostname from coreutils or from net-tools.
I really don't see what kind of virtual are you requesting here; iproute2 provides routing/traffic control stuff, not any of the diagnostics and other utils. Stick it in package.provided if you can't live with the package. Requesting to have iproute2 installed by default and deprecating ifconfig usage makes then, the suggested virtual makes none.
(In reply to comment #3)
> I suppose a use flag could be introduced that will allow the user to choose
> whether he wants hostname from coreutils or from net-tools.
Was already discussed in Bug 128538.
Ok, you are right. The virtual thingie was just an idea and as you pointed out, probably not a very sensible one.
Deprecating net-tools and replacing it with iproute2 makes much more sense.
Initially I thought that this could be done in 2 stages to ease the transition - first give people the option to choose for themselves, and then the change to the default install would be much easier. If the first step can be avoided this is even better :)
except coreutils + iproute2 still doesnt provide the critical binaries related to setting/querying hostnames/domainnames
that said, i think removing `ifconfig` from the default install is stupid ... forcing iproute2 by default for everyone sounds like a not too bad idea, but this needs to go through gentoo-dev mailing list, not bugzilla
*** Bug 522000 has been marked as a duplicate of this bug. ***
I've reopened this bug as the issue of net-tools vs iproute2 is better suited to this bug than to a releng bug about having iproute2 in stages.
I, for one, do use iproute2 so wouldn't mind having it in system.
It doesn't look like iproute2 is a full replacement for net-tools, though. I only did a cursory check, but /bin/netstat provides partially-broken sctp support via the -S flag (undocumented), while iproute2's "ss" utility only lists TCP (-t), UDP (-u), DCCP (-d), raw (-w), and Unix sockets (-x) as supported transports.
The fix for netstat's SCTP problems is in Fedora's copy of net-tools, but I haven't had the chance to figure out the specific bits we'd need for a patch.
netstat also handles UDPlite (-U), and supports the elder/esoteric protocols like --ax25, --x25, --ipx, --ddp, and others. But, it appears netstat doesn't support DCCP.
Instead of replacing, why not just include both in @system? It seems, at least for ss and netstat, that the two compliment each other right now. Both offer functionality that the other doesn't.
I didn't mean to imply that we should drop net-tools or that iproute2 is a complete replacement.
I reopened the bug because I think we should track this issue here - even if, as Mike suggested, we discuss this issue in the dev ml.
I don't see anything wrong with adding iproute2 to @system.
Should I just do it (tm) or should we have a discussion on -dev first?
(In reply to William Hubbs from comment #12)
> I don't see anything wrong with adding iproute2 to @system.
> Should I just do it (tm) or should we have a discussion on -dev first?
Discussing that is not necessary. Please just add iproute to *any* install ISO, including the admin cd of course.
(In reply to Christian Ruppert (idl0r) from comment #13)
> (In reply to William Hubbs from comment #12)
> > I don't see anything wrong with adding iproute2 to @system.
> > Should I just do it (tm) or should we have a discussion on -dev first?
> Discussing that is not necessary. Please just add iproute to *any* install
> ISO, including the admin cd of course.
$ /home/repositories/gentoo/releng $ grep iproute2 releases/weekly/specs/amd64/*stage*
$ /home/repositories/gentoo/releng $ grep iproute2 releases/weekly/specs/amd64/hardened/*stage*
$ /home/repositories/gentoo/releng $ grep iproute2 releases/weekly/specs/x86/*stage*
$ /home/repositories/gentoo/releng $ grep iproute2 releases/weekly/specs/x86/hardened/*stage*
The installcd/admincd have included iproute2 for a very long time.
Some have been using the bug to get net-tools replaced by iproute2 in the system profile. Others, like me, have been arguing about adding iproute2 to the system profile.
(In reply to Jorge Manuel B. S. Vicetto from comment #9)
add it to @system and let's be done
This has been added to @system.
(In reply to William Hubbs from comment #16)
> This has been added to @system.
Please take away is from there, it should be optional, not for all by default!
(In reply to miklosh from comment #17)
we require a set of tools to configure the network, hence requiring iproute2 in @system makes sense. if you want a system that doesn't support networking, that's extremely uncommon, and you can create your own profile.