Wicd (Wireless interface connection daemon) is a network management software for managing Wifi and Ethernet network connections.
emerge --ask net-misc/wicd
In the kernel, be sure to enable both cfg80211 wireless configuration API support and the associated extensions cfg80211_wext:
[*] Networking support ---> -*- Wireless ---> <*> cfg80211 - wireless configuration API [*] cfg80211 wireless extensions compatibility
After installing add wicd to the default runlevel:
rc-update add wicd default
Be sure to remove any references to net.eth*. For net.eth0:
rc-update del net.eth0
It is possible to start the service right now by issuing:
rc-service wicd start
Add the initscripts which were removed to the /etc/rc.conf file, on the RC_PLUG_SERVICES line, by prepending exclamation points to them. For net.eth0:
Wicd service/client does not start with "Could not connect to wicd's D-Bus interface" on Xfce
After upgrading wicd, using Xfce and ConsoleKit, you may see this error persist even after restarting the dbus service. Try clearing your Xfce session by unchecking "Save session for future logins" and re-login. There may be a simpler workaround than this.
Wicd is not able to scan for Wireless Networks while using the new nl80211 Interface
As stated here there is a known bug in Wicd that prevents Wicd using the new nl80211 kernel interface Scanning for Wireless Networks, even if you change the Wicd config to use the new interface. There is currently no working workaround for this. Be sure to enable the cfg80211 - wireless configuration API in your kernel using the kernel option suggested above and select wext as the driver.