Introduction to Wicd

Wicd is a network manager written in Python. It simplifies network setup by automatically detecting and connecting to wireless and wired networks. Wicd includes support for WPA authentication and DHCP configuration. It provides Curses- and GTK-based graphical frontends for user-friendly control. An excellent KDE-based frontend is also available http://projects.kde.org/projects/extragear/network/wicd-kde.

This package is known to build and work properly using an LFS-8.2 platform.

Package Information

Wicd Dependencies


Python-2.7.14, D-Bus Python-1.2.6, Wireless Tools-29, and Net-tools-CVS_20101030 (Wicd needs mii-tool from this package)



pm-utils-1.4.1 (for suspend/resume integration), Urwid (for the Curses-based frontend), and Babel (for internationalization)

User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/wicd

Installation of Wicd

Install Wicd by running the following commands:

sed -e "/wpath.logrotate\|wpath.systemd/d" \
    -e "/detection failed/ a\                self.init='init/default/wicd'" \
    -i.orig setup.py &&

rm po/*.po           &&

python setup.py configure --no-install-kde     \
                          --no-install-acpi    \
                          --no-install-pmutils \
                          --no-install-init    \
                          --no-install-gnome-shell-extensions \

This package does not come with a test suite.

Now, as the root user, install the package:

python setup.py install

Command Explanations

sed -e ... -i setup.py: The first expression in this sed command prevents installation of logrotate and systemd configuration files. You may omit it if you use these utilities. The second one fixes building with BLFS.

rm po/*.po: This command removes the international messages associated with this package. The command is required unless Babel is installed. If it is installed, po/ast.po still needs to be removed in order for the build to complete.

--no-install-kde: Prevent installation of an autostart desktop file for KDE. If you use KDE, you should instead install the Wicd KDE Client.

--no-install-acpi: Prevent installation of suspend and resume scripts for acpid. Omit this option if you use acpid.

--no-install-pmutils: Prevent installation of hooks for pm-utils. Omit this option if you use pm-utils.

--no-install-init: Prevent installation of any init scripts, as a bootscript is installed later in the instructions.

--no-install-gnome-shell-extensions: Prevent installation of the respective extensions. Remove this switch, if you are using Gnome Shell.

--wicdgroup=<group>: The group that will have permission to use the Wicd client (default is the users group).

Configuring Wicd

Config Files

/etc/wicd/manager-settings.conf, /etc/wicd/wired-settings.conf and /etc/wicd/wireless-settings.conf

Configuration Information

To automatically start Wicd at boot time, you need to first install the Wicd bootscript, /etc/rc.d/init.d/wicd included in the blfs-bootscripts-20180105 package (as user root):

make install-wicd

Since Wicd will now handle all configuration of network devices, the network bootscript installed by LFS should be disabled. This can be achieved by either removing any S*network and K*network symlinks in the /etc/rc*.d directories or by setting ONBOOT=no in any /etc/sysconfig/ifconfig.* files.

No manual configuration of Wicd is needed if you use the graphical frontends. If you are only going to use Wicd from command-line, you can configure it using the configuration files in /etc/wicd. For a list of available options, look at the man-pages for: wicd-manager-settings.conf, wicd-wired-settings.conf and wicd-wireless-settings.conf.

Be sure to add all users who are to have rights to open and close network connections with Wicd to the users group (or the group specified with the --wicdgroup configuration option).


Installed Programs: wicd, wicd-cli, wicd-client, wicd-curses (not functional if Urwid is not installed), and wicd-gtk
Installed Libraries: None
Installed Directories: /{etc,usr/share,var/lib,var/log,var/run}/wicd, /usr/lib/python2.7/site-packages/wicd and /usr/share/doc/wicd-1.7.4

Short Descriptions


is the wicd daemon.


is a command line interface for configuring the wicd daemon.


is the wicd client. This script attempts to automatically choose the relevant configuration interface.


is a curses interface for configuring the wicd daemon.


is a GTK interface for configuring the wicd daemon

Last updated on 2018-03-01 09:32:07 -0800