From ArchWiki
Revision as of 22:48, 15 January 2010 by Sandstorm (talk | contribs) (Trouble-shooting)
Jump to: navigation, search

Template:I18n links start Template:I18n entry Template:I18n entry Template:I18n entry Template:I18n entry Template:I18n links end

Wicd is a network connection manager that can manage wireless and wired interfaces, similar and an alternative to NetworkManager. Wicd is written in Python and GTK+, requiring fewer dependencies than other network managers. Wicd can also run from the terminal in a curses interface, requiering no X server session or task panel to be used efficently (see running wicd).


If you are not using gnome (or its notification-daemon), you might want to install xfce4-notifyd from extra before you install wicd, or you will most likely end up with the standard notification-daemon pulling a lot of unnecessary packages.

# pacman -S xfce4-notifyd

Wicd also is available from the standard repositories:

# pacman -S wicd

This will install Wicd and all the necessary dependencies, including dbus, python and gtk2.


The wicd-bzr buildscript is available from AUR, which should build the latest development branch.

If you need an alternative version or you just want to roll your own package, you can easily build it using ABS.

Getting Started

Initial Setup

Wicd provides a daemon that must be started.

Warning: Running multiple network managers will cause problems, so it is important to disable all other network management daemons.

First, stop all previously running network daemons:

# /etc/rc.d/network stop
# /etc/rc.d/dhcdbd stop
# /etc/rc.d/networkmanager stop

Now, edit /etc/rc.conf as root:

# nano /etc/rc.conf

Disable (!) any devices in the INTERFACES array that you wish to manage with Wicd. For example:

INTERFACES=(!eth0 !wlan0)

Disable (!) any existing network management daemons in the DAEMONS array, including network, dhcdbd, and networkmanager.

Now, add dbus (if not already present) and wicd to the DAEMONS array, in that order. The DAEMONS array should now look something like this:

DAEMONS=(syslog-ng dbus !network !dhcdbd !networkmanager wicd ...)
Note: If you use hal, replace dbus with hal in DAEMONS array, because the Hal daemon will automatically start dbus for you.

Save and close.

Add your account to network group:

# gpasswd -a USERNAME network
Note: The Unix group that dbus allows to access wicd is subject to change, and may be different than network. Check which policy group is specified in /etc/dbus-1/system.d/wicd.conf, and add your user to that group.

Lastly, reboot your computer or start the daemons:

# /etc/rc.d/dbus start 


# /etc/rc.d/hal start

If you added your user to a new group, logout and then login.

Running Wicd

To load Wicd, run:

$ wicd-client

Or if your desktop environment does not have a notification area, run:

$ wicd-client -n

You can add wicd-client to your DE/WM startup to have the application start when you log in.

You can also run wicd as a curses application from the terminal so it won't need the X server, like so:

$ wicd-curses
Note: Wicd doesn't prompt you for a passkey. To use encrypted connections (WPA/WEP), expand the network you want to connect to, click Advanced and enter the needed info.


Importing pynotify failed, notifications disabled

In case the package did not get installed automatically -- the package's name is "python-notify":

# pacman -S python-notify

Dbus connection error message

Make sure to use the following command for your .xinitrc:

exec ck-launch-session [your environment here]

As an example, mine reads:

exec ck-launch-session openbox-session

Otherwise you will get dbus error messages and not be able to connect to networks.

  • NOTE: If wicd suddenly stopped working and it complains about dbus, it is quite like that your solution is as simple and to remove wicd fully, including and all its configuration files, and re-install it from scratch:
pacman -R wicd
rm -rf /etc/wicd /var/log/wicd /etc/dbus-1/system.d/wicd*
pacman -S wicd

Please, check this link for more details: http://bbs.archlinux.org/viewtopic.php?pid=577141#p577141

Wicd-client also throws a dbus connection error message ("Could not connect to wicd's D-Bus interface.") when wicd is not running due to a problem with a config file. It seems that sometimes an empty account gets added to /etc/wicd/wired-settings.conf in which case you simply have to remove the


and restart wicd.

Problems after package update

Sometimes wicd client doesn't load after a package update due to dbus errors or the Preferences buttons are not working. A solution is to remove the config files in the /etc/wicd/ directory.

sudo /etc/rc.d/wicd stop
sudo rm /etc/wicd/*.conf
sudo /etc/rc.d/wicd start

Note about graphical sudo programs

If you are receiving an error about wicd failing to find a graphical sudo program, run one of the following commands:

$ ktsuss wicd-client -n
$ gksudo wicd-client -n
$ kdesu wicd-client -n

These programs require the ktsuss (found in the AUR), gksu, and kdesu packages, respectively.

External links