1
0
mirror of https://github.com/gryf/wicd.git synced 2025-12-18 12:00:24 +01:00

Experimental: Apply changes involving setup.py

* Added setup.py from trunk
 * Updated various information files (AUTHORS, README, etc)
 * Update the Wicd icon
 * Move stuff around to match trunk's layout
This commit is contained in:
compwiz18
2008-08-23 20:14:43 +00:00
parent 2261b25101
commit 0844386017
91 changed files with 2945 additions and 1793 deletions

2
AUTHORS Normal file
View File

@@ -0,0 +1,2 @@
Adam Blackburn (compwiz18@users.sourceforge.net)
Dan O'Reilly (oreilldf@gmail.com)

35
CHANGES Normal file
View File

@@ -0,0 +1,35 @@
1.5.0
* Added support for pump and dhcpcd
* Added wep-hex, wep-passphrase, eap-tls, and wep-shared encryption templates
* Autoconnect falls back to wireless if wired connection fails for any reason
* Fixed a memory leak
* Added ability to put interfaces up/down via the GUI
* Reduced number of external program calls for improved memory usage
* Added support for using one set of settings for all networks with an ESSID
* Made debugging output less spammy and more helpful
* Made GUI more responsive
* Added README and INSTALL
* Added setup.py install script
* Improved automatic reconnection
* Added option to disable tray animations
* Added distro-specific init scripts when installed from source
* Added PID file that is created on daemon start and destroyed on SIGTERM
* Allow resizing of Preference window and main window
* Added support for getting interface names from /proc/net/wireless
* Added a Disconnect button
* Added MAC address to network information that is always visible
* Requires root permissions to edit pre/post/disconnection scripts
* Daemon process is now renamed "wicd" and GUI is renamed "wicd-client"
* Added support for kdesu and ktsuss as well as gksudo
* Added ability to restart and print usage to init file
* Renamed desktop file "wicd.desktop"
* Change directory structure to be FHS compliant and customizable
* Added desktop file for autostarting
* Rewrote init file for Debian from /etc/init.d/skeleton
* Added manpages for the configuration files and daemon
* Added INSTALL, LICENSE, AUTHORS, README, and CHANGELOG
* Created new SVG icon and updated PNG icons accordingly
* Added --no-poll option to daemon which prevents polling of data
* Fixed various permissions issues
* Added wired-default profile for automatic DHCP on ethernet by default
* Changed log file permissions to 0600

47
INSTALL
View File

@@ -1,14 +1,39 @@
To install, just run:
sudo python setup.py install
Installation of Wicd should be done using your distribution package if one
exists. If not, the installation is relatively straightforward.
For now almost all the files and directories are dumped to /opt/wicd, though
it's possible for the user to specify a different directory by editing two files;
setup.cfg, and wpath.py. Simply change all mentions of /opt/wicd in those files
to the directory of your choice.
If you are installing from a subversion pull or beta/rc tarball and you want
the native language translations, first run this:
python setup.py get_translations
You will not need to do this if you're installing from a release tarball.
It should also be noted that wicd also installs some files elsewhere, namely
init.d and suspend.d scripts, dbus configuration files, and pixmaps. Exactly
what gets put where can be viewed by opening up and reading setup.py.
Next, configure Wicd for installation. Wicd will, by default, follow the
FHS guidelines <http://www.pathname.com/fhs/> (or distribution standards
where applicable if we know about them and it's feasible to implement them).
You can specify exactly where every non-Python file (and some Python files)
in Wicd will be placed. Pass "--help" as an option to the following command
for more information, otherwise run it as is to configure Wicd for installation.
python setup.py configure
Finally, do the actual installation. This step will need to be done as
root or with sudo in most cases:
python setup.py install
If you are packaging Wicd, you will almost surely want to use the "--root"
option; for example:
python setup.py install --root=/package-dir
To uninstall, you can use (using root or sudo):
python setup.py uninstall
You *MUST* run "python setup.py configure" before "python setup.py install" -
the "configure" step generates wpath.py from wpath.py.in using the paths
specified from the arguments to "python setup.py configure".
As noted above in the configure step, "python setup.py configure" will use
acceptable defaults, so it is usually not necessary to specify any arguments
at all.
After installation, especially if Wicd has not been installed before, you
will probably need to restart the system message bus (dbus) or reload its
configuration. You will also need to make sure the Wicd init script is
started at boot. How to do those things is distribution-dependent, so if
you're not sure, ask in your distribution's support area(s).
In the (near) future, all the files will not all be put in one directory, and will
instead follow linux standards for directory structure.

340
LICENSE Normal file
View File

@@ -0,0 +1,340 @@
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by
the GNU Lesser General Public License instead.) You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have. You must make sure that they, too, receive or can get the
source code. And you must show them these terms so they know their
rights.
We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software. If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.
Finally, any free program is threatened constantly by software
patents. We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary. To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and
modification follow.
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License. The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language. (Hereinafter, translation is included without limitation in
the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.
1. You may copy and distribute verbatim copies of the Program's
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.
You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.
2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices
stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any
part thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License.
c) If the modified program normally reads commands interactively
when run, you must cause it, when started running for such
interactive use in the most ordinary way, to print or display an
announcement including an appropriate copyright notice and a
notice that there is no warranty (or else, saying that you provide
a warranty) and that users may redistribute the program under
these conditions, and telling the user how to view a copy of this
License. (Exception: if the Program itself is interactive but
does not normally print such an announcement, your work based on
the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.
In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable
source code, which must be distributed under the terms of Sections
1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three
years, to give any third party, for a charge no more than your
cost of physically performing source distribution, a complete
machine-readable copy of the corresponding source code, to be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for
making modifications to it. For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable. However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.
If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.
4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this License.
However, parties who have received copies, or rights, from you under
this License will not have their licenses terminated so long as such
parties remain in full compliance.
5. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Program or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.
6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.
7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all. For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply and the section as a whole is intended to apply in other
circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system, which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded. In such case, this License incorporates
the limitation as if written in the body of this License.
9. The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the Program
specifies a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation. If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.
10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission. For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.
NO WARRANTY
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) year name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, the commands you use may
be called something other than `show w' and `show c'; they could even be
mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the program, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
`Gnomovision' (which makes passes at compilers) written by James Hacker.
<signature of Ty Coon>, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into
proprietary programs. If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License.

View File

@@ -1,7 +0,0 @@
include data/wicd.glade
include data/wicd.png
recursive-include other *
recursive-include encryption *
recursive-include images *
recursive-include translations *
include launchdaemon.sh

88
README
View File

@@ -1,59 +1,63 @@
THEORY OF OPERATION:
Wicd is designed to give the user as much control over the behavior of network connections
as possible. Every network, both wired and wireless, has its own profile, with its own
configuration options and connection behavior. Wicd will try to automatically connect
only to the networks the user specifies it should try, with a preference first to a wired
network, then to wireless.
Wicd is designed to give the user as much control over behavior of network
connections as possible. Every network, both wired and wireless, has its
own profile with its own configuration options and connection behavior.
Wicd will try to automatically connect only to networks the user specifies
it should try, with a preference first to a wired network, then to wireless.
For wired connections, users have several options for determining what network settings to
use. Wicd allows creation of an unlimited amount of wired profiles, which each have
their own unique settings. The user can choose to automatically connect to a selected
default profile, choose a profile from a pop-up window every time wicd connects, or
have wicd automatically choose the last profile used to manually connect.
For wired connections, users have many options for determining what network
settings to use. Wicd allows creation of an unlimited number of wired
profiles, each of which has its own unique settings. The user can choose to
automatically connect to a selected default profile, choose a profile from a
pop-up window every time wicd connects, or have wicd automatically choose the
last profile used to manually connect.
For wireless networks, users can select any number of wireless networks to automatically
connect to, from which wicd will choose the one with the highest signal strength to try
to connect.
For wireless connections, users can select any number of wireless networks
to automatically connect; wicd will choose the one with the highest signal
strength to try to connect.
If the user chooses, wicd will try to automatically reconnect when wicd detects a
connection is lost. If the last known connection state is wired, wicd will try
to first reconnect to the wired network, and if it is not available, will try
any available wireless networks with automatic connection enabled. If the last
known connection state is wireless, wicd will first try to reconnect to the
last network it was connected to (even if it not set to automatically connect
to that network normally), and should that fail will try both a wired connection
and any available wireless networks set to automatically connect.
If the user chooses, wicd will try to automatically reconnect when it detects
that a connection is lost. If the last known connection state is wired, wicd
will first try to reconnect to the wired network, and if it is not available,
wicd will try any available wireless networks which have automatic connection
enabled. If the last known connection state is wireless, wicd will first try
to reconnect to the previously connected network (even if that network does
not have automatic connection enabled), and should that fail, it will try both
a wired connection and any available wireless networks which have automatic
connection enabled.
Wicd uses built-in linux wireless-tools, such as ifconfig and iwconfig, to
get and configure network info. There is some flexibility in its use of DHCP,
providing support for dhclient, dhcpcd, and pump. Wicd uses wpa_supplicant
to handle all wireless encryption settings, and uses a template-based system
to create the configuration files wpa_supplicant uses. These templates can
be editted and new templates can be created and imported into wicd by the user,
allowing connection to networks with uncommon encryption settings.
to create the configuration files used by wpa_supplicant. These templates
can be edited, and new templates can be created by the user and imported into
wicd, allowing connection to networks with uncommon encryption settings.
STRUCTURE:
There are two major parts to wicd; the daemon, which runs at the root level, and the
user-interface, which runs at the user level. The two parts run as separate processes,
and make use of D-Bus to communicate.
Wicd has two major parts: the daemon, which runs with root privileges; and the
user interface, which runs with normal user privileges. The two parts run as
separate processes and make use of D-Bus to communicate.
The daemon is responsible for making and configuring connections, reading/writing
configuration files and logs, and monitoring the connection status. The daemon's job
is split between two processes, daemon.py and monitor.py. All the connection status
monitoring, as well as the auto-reconnection logic, takes place in monitor.py.
Everthing else is done by daemon.py.
The daemon is responsible for making and configuring connections, reading and
writing configuration files and logs, and monitoring the connection status.
The daemon's job is split between two processes: daemon.py and monitor.py.
All the connection status monitoring, as well as the auto-reconnection logic,
takes place in monitor.py. Everthing else is done by wicd-daemon.py.
The user-interface (stored in wicd.py), made up of a tray icon, main GUI window, and its child dialogs,
gets configuration and network information from the daemon by either querying it, using
the methods in the daemon's dbus interface, or by receiving signals emitted from the daemon
over D-Bus. Any configuration changes made in the UI are passed back to the daemon, which
actually applies the changes and writes them to configuration files.
The user interface (stored in wicd-client.py), which is made up of a tray
icon, a main GUI window, and its child dialogs, gets configuration and network
info from the daemon either by querying it using the methods in the daemon's
dbus interface or by receiving signals emitted from the daemon over D-Bus.
Any configuration changes made in the user interface are passed back to the
daemon, which actually applies the changes and writes them to configuration
files.
Since the user interface just queries for connection and configuration info
from the daemon, it is possible to run wicd without the GUI at all. Also,
the daemon is started by wicd's init script during system startup (before any
user logs in), making it possible to use wicd with "headless" machines.
Since the GUI just queries for connection and configuration information from the daemon
it is possible to run wicd without the GUI at all. Additionally, the daemon is started by
wicd's init script as soon as Linux loads, and before any user logs in, making it possible to
use with "headless" machines.

View File

@@ -1,49 +0,0 @@
#!/usr/bin/env python
""" The wicd DBus Manager.
A module for storing wicd's dbus interfaces.
"""
#
# Copyright (C) 2007 Adam Blackburn
# Copyright (C) 2007 Dan O'Reilly
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License Version 2 as
# published by the Free Software Foundation.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
import dbus
class DBusManager(object):
def __init__(self):
self._bus = dbus.SystemBus()
self._dbus_ifaces = {}
def get_dbus_ifaces(self):
""" Returns a dict of dbus interfaces. """
return self._dbus_ifaces
def get_bus(self):
""" Returns the loaded SystemBus. """
return self._bus
def connect_to_dbus(self):
""" Connects to wicd's dbus interfaces and loads them into a dict. """
proxy_obj = self._bus.get_object("org.wicd.daemon", '/org/wicd/daemon')
daemon = dbus.Interface(proxy_obj, 'org.wicd.daemon')
wireless = dbus.Interface(proxy_obj, 'org.wicd.daemon.wireless')
wired = dbus.Interface(proxy_obj, 'org.wicd.daemon.wired')
config = dbus.Interface(proxy_obj, 'org.wicd.daemon.config')
self._dbus_ifaces = {"daemon" : daemon, "wireless" : wireless,
"wired" : wired, "config" : config}

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

View File

0
images/wicd-client.png Normal file
View File

View File

@@ -1 +0,0 @@
link wicd-purple.png

33
in/init=arch=wicd.in Executable file
View File

@@ -0,0 +1,33 @@
#!/bin/bash
# borrowed from
# http://repos.archlinux.org/viewvc.cgi/wicd/repos/extra-i686/wicd-daemon?revision=1&view=markup
# and modified for 1.5.0
. /etc/rc.conf
. /etc/rc.d/functions
case "$1" in
start)
stat_busy "Starting wicd Daemon"
killall wicd &> /dev/null
%SBIN%wicd-daemon &> /dev/null
add_daemon wicd
stat_done
;;
stop)
stat_busy "Stopping wicd Daemon"
killall wicd &> /dev/null
rm_daemon wicd
stat_done
;;
restart)
$0 stop
sleep 1
$0 start
;;
*)
echo "usage: $0 {start|stop|restart}"
esac
exit 0

159
in/init=debian=wicd.in Executable file
View File

@@ -0,0 +1,159 @@
#! /bin/sh
### BEGIN INIT INFO
# Provides: wicd
# Required-Start: dbus
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Starts and stops Wicd
# Description: Starts and stops Wicd, a network manager
### END INIT INFO
# Author: Adam Blackburn <compwiz18@users.sourceforge.net>
#
# Do NOT "set -e"
# PATH should only include /usr/* if it runs after the mountnfs.sh script
PATH=/usr/sbin:/usr/bin:/sbin:/bin
DESC="Network connection manager"
NAME=wicd
DAEMON=%SBIN%$NAME
DAEMON_ARGS=""
PIDFILE=%PIDFILE%
SCRIPTNAME=%INIT%%INITFILENAME%
# Exit if the package is not installed
[ -x "$DAEMON" ] || exit 0
# Read configuration variable file if it is present
[ -r /etc/default/$NAME ] && . /etc/default/$NAME
# Load the VERBOSE setting and other rcS variables
[ -f /etc/default/rcS ] && . /etc/default/rcS
# Define LSB log_* functions.
# Depend on lsb-base (>= 3.0-6) to ensure that this file is present.
. /lib/lsb/init-functions
# Perhaps not the best idea
# but a confirmation is nice
# when starting/stopping the daemon
VERBOSE=yes
#
# Function that starts the daemon/service
#
do_start()
{
# Return
# 0 if daemon has been started
# 1 if daemon was already running
# 2 if daemon could not be started
# vvvv -- don't do this -- vvvv
# [ -e $PIDFILE ] && return 1
start-stop-daemon --start --quiet --pidfile $PIDFILE --startas $DAEMON --test > /dev/null \
|| return 1
start-stop-daemon --start --quiet --pidfile $PIDFILE --startas $DAEMON -- \
$DAEMON_ARGS > /dev/null 2> /dev/null\
|| return 2
# Add code here, if necessary, that waits for the process to be ready
# to handle requests from services started subsequently which depend
# on this one. As a last resort, sleep for some time.
}
#
# Function that stops the daemon/service
#
do_stop()
{
# Return
# 0 if daemon has been stopped
# 1 if daemon was already stopped
# 2 if daemon could not be stopped
# other if a failure occurred
start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --name $NAME
RETVAL="$?"
[ "$RETVAL" = 2 ] && return 2
# Wait for children to finish too if this is a daemon that forks
# and if the daemon is only ever run from this initscript.
# If the above conditions are not satisfied then add some other code
# that waits for the process to drop all resources that could be
# needed by services started subsequently. A last resort is to
# sleep for some time.
start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON
[ "$?" = 2 ] && return 2
# Many daemons don't delete their pidfiles when they exit.
rm -f $PIDFILE
return "$RETVAL"
}
#
# Function that sends a SIGHUP to the daemon/service
#
do_reload() {
#
# If the daemon can reload its configuration without
# restarting (for example, when it is sent a SIGHUP),
# then implement that here.
#
start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --name $NAME
return 0
}
case "$1" in
start)
[ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME"
do_start
case "$?" in
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
esac
;;
stop)
[ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
do_stop
case "$?" in
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
esac
;;
#reload|force-reload)
#
# If do_reload() is not implemented then leave this commented out
# and leave 'force-reload' as an alias for 'restart'.
#
#log_daemon_msg "Reloading $DESC" "$NAME"
#do_reload
#log_end_msg $?
#;;
restart|force-reload)
#
# If the "reload" option is implemented then remove the
# 'force-reload' alias
#
log_daemon_msg "Restarting $DESC" "$NAME"
do_stop
case "$?" in
0|1)
do_start
case "$?" in
0) log_end_msg 0 ;;
1) log_end_msg 1 ;; # Old process is still running
*) log_end_msg 1 ;; # Failed to start
esac
;;
*)
# Failed to stop
log_end_msg 1
;;
esac
;;
*)
#echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2
echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
exit 3
;;
esac
:

53
in/init=default=wicd.in Normal file
View File

@@ -0,0 +1,53 @@
#!/bin/sh
# /etc/init.d/wicd
# Start/stop/restart the Wicd daemon
# Modified the Slackware default init script for use
# where the distro is not detected.
# This is defined in /usr/lib/python2.5/site-packages/wicd/wpath.py
PIDFILE="%PIDFILE%"
# Define start and stop functions
wicd_start() {
if [ -e $PIDFILE ]; then
echo "Wicd appears to already be running."
echo "If this is not the case, then remove "
echo "$PIDFILE and try again..."
exit 1
else
echo "Starting wicd daemon..."
%SBIN%wicd 2>/dev/null 1>&2
fi
}
wicd_stop() {
echo "Stopping wicd daemon..."
if [ -e $PIDFILE ]; then
kill $(cat $PIDFILE) 2>/dev/null
rm -f $PIDFILE 2>/dev/null
else
killall wicd-client 2>/dev/null
fi
}
# See how we were called and take appropriate action
case $1 in
start)
wicd_start
;;
stop)
wicd_stop
;;
restart)
wicd_stop
wicd_start
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
;;
esac

24
in/init=gentoo=wicd.in Executable file
View File

@@ -0,0 +1,24 @@
#!/sbin/runscript
# Copyright 1999-2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
opts="start stop restart"
WICD_DAEMON=%SBIN%wicd
WICD_PIDFILE=%PIDFILE%
depend() {
need dbus
}
start() {
ebegin "Starting wicd daemon"
$WICD_DAEMON &>/dev/null
eend $?
}
stop() {
ebegin "Stopping wicd daemon"
start-stop-daemon --stop --pidfile "$WICD_PIDFILE"
eend $?
}

88
in/init=pld=wicd.in Executable file
View File

@@ -0,0 +1,88 @@
#!/bin/sh
#
# wicd wicd wireless connection daemon
#
# chkconfig: 345 99 01
#
# description: wicd wireless connection daemon
#
# processname: wicd
# config:
# pidfile: /var/run/wicd.pid
#
# $Id: template.init 9689 2008-03-27 16:15:39Z patrys $
# Source function library
. /etc/rc.d/init.d/functions
# Get service config - may override defaults
# [ -f /etc/sysconfig/wicd ] && . /etc/sysconfig/wicd
WICD_BIN=%SBIN%wicd
start() {
# Check if the service is already running?
if [ ! -f /var/lock/subsys/wicd ]; then
msg_starting wicd
daemon $WICD_BIN
RETVAL=$?
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/wicd
else
msg_already_running wicd
fi
}
stop() {
if [ -f /var/lock/subsys/wicd ]; then
# Stop daemons.
msg_stopping wicd
# killproc wicd
killproc --pidfile /var/run/wicd.pid wicd -TERM
rm -f /var/lock/subsys/wicd
else
msg_not_running wicd
fi
}
condrestart() {
if [ -f /var/lock/subsys/wicd ]; then
stop
start
else
msg_not_running wicd
RETVAL=$1
fi
}
RETVAL=0
# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
try-restart)
condrestart 0
;;
# use this one if program doesn't support reloading without restart
force-reload)
condrestart 7
;;
status)
status wicd
RETVAL=$?
;;
*)
msg_usage "$0 {start|stop|restart|try-restart|reload|force-reload|status}"
exit 3
esac
exit $RETVAL

43
in/init=redhat=wicd.in Executable file
View File

@@ -0,0 +1,43 @@
#! /bin/sh
#
# /etc/init.d/wicd
#
# chkconfig: - 98 02
# description: Wicd is a wireless and wired network manager for Linux.
# Source function library.
. /etc/rc.d/init.d/functions
# This script was borrowed from the Wicd wiki page on building for Fedora
# http://wicd.net/wiki/doku.php?id=fedora
WICD_BIN=%SBIN%wicd
case "$1" in
start)
echo -n "Starting wicd services: "
daemon $WICD_BIN 2> /dev/null
touch /var/lock/subsys/wicd
;;
stop)
echo -n "Shutting down wicd services: "
killall wicd 2> /dev/null
rm -f /var/lock/subsys/wicd
;;
status)
if pidofproc wicd > /dev/null ; then
echo "wicd is running."
else
status wicd
fi
;;
restart | reload)
$0 stop
$0 start
;;
*)
echo "Usage: wicd {start|stop|status|reload|restart}"
exit 1
;;
esac

51
in/init=slackware=rc.wicd.in Executable file
View File

@@ -0,0 +1,51 @@
#!/bin/sh
# /etc/rc.d/rc.wicd
# Start/stop/restart the Wicd daemon
# This is defined in /usr/lib/python2.5/site-packages/wicd/wpath.py
PIDFILE="%PIDFILE%"
# Define start and stop functions
wicd_start() {
if [ -e $PIDFILE ]; then
echo "Wicd appears to already be running."
echo "If this is not the case, then remove "
echo "$PIDFILE and try again..."
exit 1
else
echo "Starting wicd daemon..."
wicd 2>/dev/null 1>&2
fi
}
wicd_stop() {
echo "Stopping wicd daemon..."
if [ -e $PIDFILE ]; then
kill $(cat $PIDFILE) 2>/dev/null
rm -f $PIDFILE 2>/dev/null
else
pkill -f python.*wicd-daemon.py 2>/dev/null
fi
}
# See how we were called and take appropriate action
case $1 in
start)
wicd_start
;;
stop)
wicd_stop
;;
restart)
wicd_stop
wicd_start
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
;;
esac

50
in/init=suse=wicd.in Executable file
View File

@@ -0,0 +1,50 @@
#! /bin/sh
### BEGIN INIT INFO
# Provides: wicd-daemon
# Required-Start: dbus
# Default-Start: 3 4 5
# Default-Stop:
# Description: wicd, a wired and wireless connection manager.
### END INIT INFO
WICD_BIN=%SBIN%wicd
test -x $WICD_BIN || exit 5
. /etc/rc.status
rc_reset
case "$1" in
start)
checkproc $WICD_BIN
if [ $? = 0 ]; then
echo -n "wicd already running"
rc_status -v
rc_exit
fi
echo -n "Starting wicd"
startproc $WICD_BIN
rc_status -v
;;
stop)
echo -n "Shutting down wicd"
killproc -TERM $WICD_BIN
rc_status -v
;;
restart)
$0 stop
$0 start
rc_status
;;
status)
echo -n "Checking for wicd: "
checkproc $WICD_BIN
rc_status -v
;;
*)
echo "Usage: $0 {start|stop|status|restart}"
exit 1
;;
esac

View File

@@ -0,0 +1,91 @@
.\" Written by Robby Workman <rworkman@slackware.com>
.TH WICD-MANAGER-SETTINGS.CONF 5 "June 2008" "wicd-1.5.0"
.SH NAME
wicd-manager-settings.conf \- contains settings that control Wicd's behavior
.SH DESCRIPTION
This file contains general configuration information for Wicd.
.br
This file is located at %ETC%manager-settings.conf
.SH SETTINGS
.TP
.BI "link_detect_tool = " <0|1|2>
0 = autodetect
.br
1 = ethtool
.br
2 = mii-tool
.TP
.BI "flush_tool = " <0|1|2>
0 = autodetect
.br
1 = ip
.br
2 = route
.TP
.BI "signal_display_type = " <0|1>
0 = Show signal strength as a percentage
.br
1 = Show signal strength in dBm
.TP
.BI "dhcp_client = " <0|1|2|3>
0 = autodetect
.br
1 = dhclient
.br
2 = dhcpcd
3 = pump
.TP
.BI "wired_interface = " <interface_name>
.TP
.BI "always_show_wired_interface = " <True|False>
.TP
.BI "wired_connect_mode = " <0|1>
0 = connect to wired interface automatically
.br
1 = do not connect to wired interface automatically
.TP
.BI "wireless_interface = " <name_of_wireless_interface>
.TP
.BI "wpa_driver = " <wext|madwifi|ndiswrapper|hostap|hermes|atmel|broadcom|ipw|ralink legacy>
The default (and best supported) is wext. It should work properly in most cases.
.TP
.BI "auto_reconnect = " <True|False>
This settings determines whether Wicd will attempt to reconnect on connection loss.
.TP
.BI "use_global_dns = " <True|False>
If set to "True" and values are specified in the global DNS settings below,
this will cause Wicd to use these DNS settings.
.TP
.BI "global_dns_1 = " <ip_address>
.TP
.BI "global_dns_2 = " <ip_address>
.TP
.BI "global_dns_3 = " <ip_address>
.TP
.BI "debug_mode = " <integer_value>
0 = disabled
.br
1 = enabled
.TP
.BI "window_height = " <integer_value> " (in pixels)"
This determines the height of the client window.
.TP
.BI "window_width = " <integer_value> " (in pixels)"
This determines the width of the client window.
.TP
.BI "pref_height = " <integer_value> " (in pixels)"
This determines the height of the "Preferences" window when launched from the client.
.TP
.BI "pref_width = " <integer_value> " (in pixels)"
This determines the width of the "Preferences" window when launched from the client.
.SH "SEE ALSO"
.BR wicd (8),
.BR wicd-wired-settings.conf (5),
.BR wicd-wireless-settings.conf (5).

View File

@@ -0,0 +1,75 @@
.\" Written by Robby Workman <rworkman@slackware.com>
.TH WICD-WIRED-SETTINGS.CONF 5 "June 2008" "wicd-1.5.0"
.SH NAME
wicd-wired-settings.conf \- controls Wicd's wired network settings
.SH DESCRIPTION
This file contains configuration information for wired interfaces in Wicd.
.br
This file is located at %ETC%wired-settings.conf
.SH SETTINGS
.TP
.BI "default = " <0|1>
This option decides whether to use this profile as the default.
0 = do not use this profile as default.
.br
1 = use this profile as default.
.TP
.BI "beforescript = " <None|arbitrary_script>
This defines a script to run before Wicd brings up the connection.
The script should be a Bourne-compatible script and should be executable.
.br
IMPORTANT - scripts should ONLY be writable by root and located in a
directory that is only writable by root.
.TP
.BI "afterscript = " <None|arbitrary_script>
This defines a script to run after Wicd brings up the connection.
The script should be a Bourne-compatible script and should be executable.
.br
IMPORTANT - scripts should ONLY be writable by root and located in a
directory that is only writable by root.
.TP
.BI "disconnectscript = " <None|arbitrary_script>
This defines a script to run when Wicd disconnects the interface.
The script should be a Bourne-compatible script and should be executable.
.br
IMPORTANT - scripts should ONLY be writable by root and located in a
directory that is only writable by root.
.TP
.BI "ip = " <None|ip_address>
Use this option if you have a static ip address for your system.
.TP
.BI "netmask = " <None|network mask>
This setting is only appropriate if a static ip address is configured above.
.TP
.BI "broadcast = " <None|broadcast_address>
This setting is only appropriate if a static ip address is configured above.
.TP
.BI "gateway = " <None|gateway_address>
This setting is only appropriate if a static ip address is configured above.
.TP
.BI "use_static_dns = " <True|False>
True = use static DNS servers instead of accepting what the dhcp server supplies.
.TP
.BI "use_global_dns = " <True|False>
True = use the global DNS servers provided in wicd-manager-settings.conf(5).
This option is only appropriate if "use_static_dns = True"
.TP
.BI "dns1 = " <None|ip_address>
Static DNS address if "use_static_dns = True" and "use_global_dns = False"
.TP
.BI "dns2 = " <None|ip_address>
Static DNS address if "use_static_dns = True" and "use_global_dns = False"
.TP
.BI "dns3 = " <None|ip_address>
Static DNS address if "use_static_dns = True" and "use_global_dns = False"
.SH "SEE ALSO"
.BR wicd (8),
.BR wicd-manager-settings.conf (5),
.BR wicd-wireless-settings.conf (5).

View File

@@ -0,0 +1,127 @@
.\" Written by Robby Workman <rworkman@slackware.com>
.TH WICD-WIRELESS-SETTINGS.CONF 5 "June 2008" "wicd-1.5.0"
.SH NAME
wicd-wired-settings.conf \- controls Wicd's wireless network settings
.SH DESCRIPTION
This file contains configuration information for wireless interfaces in Wicd.
.br
This file is located at %ETC%wireless-settings.conf
.SH SETTINGS
.TP
.BI "bssid = " <BSSID_of_network>
This value can be found using iwconfig(8).
.TP
.BI "essid = " <ESSID_of_network>
This value can be found using iwconfig(8).
.TP
.BI "hidden = " <True|False>
This option notes whether the network's ESSID is broadcast or not.
.TP
.BI "channel = " <integer_value>
Valid channels are dependent upon country.
.br
This value can be found using iwconfig(8).
.TP
.BI "mode = " <Master|Ad-hoc>
.br
This value can be found using iwconfig(8).
.TP
.BI "enctype = " <encryption_template>
This can take the value of any encryption template shown in %ENCRYPTION%.
.TP
.BI "encryption_method = "WEP|WPA|WPA2>
This value can be found using iwconfig(8).
.TP
.BI "key = " <plain_text_key>
Be sure this file is readable only by root.
.TP
.BI "automatic = " <True|False>
This option determines whether Wicd should automatically connect to this
network.
.TP
.BI "ip = " <None|ip_address>
Use this option if you have a static ip address for your system.
.TP
.BI "netmask = " <None|network mask>
This setting is only appropriate if a static ip address is configured above.
.TP
.BI "broadcast = " <None|broadcast_address>
This setting is only appropriate if a static ip address is configured above.
.TP
.BI "gateway = " <None|gateway_address>
This setting is only appropriate if a static ip address is configured above.
.TP
.BI "use_static_dns = " <True|False>
True = use static DNS servers instead of accepting what the dhcp server supplies.
.TP
.BI "use_global_dns = " <True|False>
True = use the global DNS servers provided in wicd-manager-settings.conf(5).
.br
This option is only appropriate if "use_static_dns = True"
.TP
.BI "dns1 = " <None|ip_address>
Static DNS address if "use_static_dns = True" and "use_global_dns = False"
.TP
.BI "dns2 = " <None|ip_address>
Static DNS address if "use_static_dns = True" and "use_global_dns = False"
.TP
.BI "dns3 = " <None|ip_address>
Static DNS address if "use_static_dns = True" and "use_global_dns = False"
.TP
.BI "use_settings_globally = " <0|1>
Wicd keeps track of whether to autoconnect to networks based on bssid.
This ensures that you don't accidentally connect to another network that is
not yours but happens to have the same essid - for example, there are a lot
of commercial routers in use with "linksys" as the essid.
.br
0 = Do not use settings globally
.br
1 = Use settings globally
.TP
.BI "has_profile = " <True|False>
This parameter is used internally by Wicd and has no effect as far as the
user is concerned.
.TP
.BI "beforescript = " <None|arbitrary_script>
This defines a script to run before Wicd brings up the connection.
.br
IMPORTANT - scripts should ONLY be writable by root and should be located
in a directory that is writable by only root.
.TP
.BI "afterscript = " <None|arbitrary_script>
This defines a script to run after Wicd brings up the connection.
.br
IMPORTANT - scripts should ONLY be writable by root and located
in a directory that is writable by only root.
.TP
.BI "disconnectscript = " <None|arbitrary_script>
This defines a script to run when Wicd disconnects the interface.
.br
IMPORTANT - scripts should ONLY be writable by root and located
in a directory that is writable by only root.
.SH OTHER
The "use_settings_globally" option determines how an individual network's
configuration stanza starts. If the option is "0" (do not use settings
globally), then the stanza's top line will be the bssid of the access
point (in this format):
.br
[00:15:3E:87:D3:68]
.br
If the "option is set to "1" (use settings globally), then the first line
of the stanza will be in this format:
.br
[essid:UA Public Wireless Network]
.SH "SEE ALSO"
.BR wicd (8),
.BR wicd-manager-settings.conf (5),
.BR wicd-wired-settings.conf (5).

161
in/man=wicd.8.in Normal file
View File

@@ -0,0 +1,161 @@
.\" Written by Robby Workman <rworkman@slackware.com>
.TH WICD 8 "June 2008" "wicd-1.5.0"
.SH NAME
.B Wicd
\- Wired and Wireless Network Connection Manager
.SH THEORY OF OPERATION
Wicd is designed to give the user as much control over behavior of network
connections as possible. Every network, both wired and wireless, has its
own profile with its own configuration options and connection behavior.
Wicd will try to automatically connect only to networks the user specifies
it should try, with a preference first to a wired network, then to wireless.
For wired connections, users have many options for determining what network
settings to use. Wicd allows creation of an unlimited number of wired
profiles, each of which has its own unique settings. The user can choose to
automatically connect to a selected default profile, choose a profile from a
pop-up window every time wicd connects, or have wicd automatically choose the
last profile used to manually connect.
For wireless connections, users can select any number of wireless networks
to automatically connect; wicd will choose the one with the highest signal
strength to try to connect.
If the user chooses, wicd will try to automatically reconnect when it detects
that a connection is lost. If the last known connection state is wired, wicd
will first try to reconnect to the wired network, and if it is not available,
wicd will try any available wireless networks which have automatic connection
enabled. If the last known connection state is wireless, wicd will first try
to reconnect to the previously connected network (even if that network does
not have automatic connection enabled), and should that fail, it will try both
a wired connection and any available wireless networks which have automatic
connection enabled.
Wicd uses built-in linux wireless-tools, such as ifconfig and iwconfig, to
get and configure network info. There is some flexibility in its use of DHCP,
providing support for dhclient, dhcpcd, and pump. Wicd uses wpa_supplicant
to handle all wireless encryption settings, and uses a template-based system
to create the configuration files used by wpa_supplicant. These templates
can be edited, and new templates can be created by the user and imported into
wicd, allowing connection to networks with uncommon encryption settings.
.SH STRUCTURE
Wicd has two major parts: the daemon, which runs with root privileges; and the
user interface, which runs with normal user privileges. The two parts run as
separate processes and make use of D-Bus to communicate.
The daemon is responsible for making and configuring connections, reading and
writing configuration files and logs, and monitoring the connection status.
The daemon's job is split between two processes: wicd-daemon.py and monitor.py.
All the connection status monitoring, as well as the auto-reconnection logic,
takes place in monitor.py. Everthing else is done by wicd-daemon.py.
The user interface (stored in wicd-client), which is made up of a tray
icon, a main GUI window, and its child dialogs, gets configuration and network
info from the daemon either by querying it using the methods in the daemon's
dbus interface or by receiving signals emitted from the daemon over D-Bus.
Any configuration changes made in the user interface are passed back to the
daemon, which actually applies the changes and writes them to configuration
files.
Since the user interface just queries for connection and configuration info
from the daemon, it is possible to run wicd without the GUI at all. Also,
the daemon is started by wicd's init script during system startup (before any
user logs in), making it possible to use wicd with "headless" machines.
.SH USAGE HINTS
.B Choosing Alternate Tools
.br
Wicd supports several alternatives regarding the networking tools on linux.
In the "External Programs" tab of the Preferences menu, you can choose your
preferred DHCP client, link detection tool, and routing tool if the defaults
aren't suitable for your particular distribution or system.
.B Custom Scripts
.br
If you need to run any custom commands before or after connecting to or
disconnecting from a network, Wicd supports this; however, you will need to
have a graphical sudo helper installed (currently supported are kdesu, gksu,
and ktsuss).
.br
If you do not have a graphical sudo helper installed, you still have the
ability to use custom scripts, but you will have to set them up manually.
See wicd-wired-settings.conf(5) and/or wicd-wireless-settings.conf(5) for
more information on how to do so.
.B Automatically Connecting to Networks
.br
Wicd uses the BSSID to recognize a particular network (and thus to decide
whether it should automatically connect to it). If you are on a network
that has many different access points which all have the same ESSID
(many universities have such networks), there is an option in the "Advanced
Settings" to "Use these settings for all networks sharing this essid."
With this option enabled, Wicd will autoconnect to that network, regardless
of which node it sees.
.SH FILES
.B %ETC%manager-settings.conf
.br
This file contains global settings for Wicd.
.br
See this file's own man page for more information about it.
.B %ETC%wired-settings.conf
.br
This file contains settings related to the wired interface.
.br
See this file's own man page for more information about it.
.B %ETC%wireless-settings.conf
.br
This file contains settings related to the wireless interface.
.br
See this file's own man page for more information about it.
.B %ENCRYPTION%
.br
This directory contains various templates for encrypted (WEP, WPA, etcetera)
connections. If none of them fit your needs, you may create your own and
add it to this directory. If you do this, please contact the authors
(see below) of Wicd.
.B %NETWORKS%
.br
This directory contains individual configuration files for each encrypted
network you set up in Wicd.
.B %LOG%
.br
This directory contains logfiles of Wicd's activity. Please refer to the
log if you are having connection or other problems.
.SH "SEE ALSO"
.BR wicd-manager-settings.conf (5),
.BR wicd-wired-settings.conf (5),
.BR wicd-wireless-settings.conf (5),
.BR ifconfig (8),
.BR iwconfig (8),
.BR wpa_supplicant (8),
.BR route (8),
.BR ip (8),
.BR mii-tool (8),
.BR ethtool (8),
.BR dhclient (8),
.BR dhcpcd (8),
.BR pump (8).
.SH WICD AUTHORS
Adam Blackburn <compwiz18@gmail.com>
.br
Dan O'Reilly <oreilldf@gmail.com>
.SH MANPAGE AUTHOR
Robby Workman <rworkman@slackware.com>

3
in/other=50-wicd-suspend.sh.in Executable file
View File

@@ -0,0 +1,3 @@
#!/bin/sh
# Put wifi interface down
%LIB%suspend.py

4
in/other=80-wicd-connect.sh.in Executable file
View File

@@ -0,0 +1,4 @@
#!/bin/sh
# Bring wifi network interface back up.
%LIB%autoconnect.py

26
in/other=postinst.in Executable file
View File

@@ -0,0 +1,26 @@
#!/bin/sh
# Stop daemon
if [ -f %INIT%%INITFILENAME% ]; then
%INIT%%INITFILENAME% stop
fi
# Remove Wicd from the boot sequence
if which update-rc.d &>/dev/null ; then
update-rc.d -f wicd remove
fi
# Remove pyc files
# They may exist if you are upgrading Wicd
rm -f /opt/wicd/*.pyc
# Add Wicd to the startup sequence
# 80 to make sure that dbus is running when Wicd starts
if which update-rc.d &>/dev/null ; then
update-rc.d wicd start 80 2 3 4 5 . stop 20 0 1 6 .
fi
# Start the daemon
if [ -f %INIT%%INITFILENAME% ]; then
%INIT%%INITFILENAME% start
fi

2
in/scripts=wicd-client.in Executable file
View File

@@ -0,0 +1,2 @@
#!/bin/bash
%LIB%wicd-client.py $@

3
in/scripts=wicd.in Executable file
View File

@@ -0,0 +1,3 @@
#!/bin/bash
%LIB%wicd-daemon.py $@

71
in/wicd=wpath.py.in Executable file
View File

@@ -0,0 +1,71 @@
""" Path configuration and functions for the wicd daemon and gui clients.
chdir() -- Change directory to the location of the current file.
"""
import os
# The path containing the wpath.py file.
current = os.path.dirname(os.path.realpath(__file__)) + '/'
# These paths can easily be modified to handle system wide installs, or
# they can be left as is if all files remain with the source directory
# layout.
# These paths are replaced when setup.py configure is run
# All directory paths *MUST* end in a /
# DIRECTORIES
lib = '%LIB%'
share = '%SHARE%'
etc = '%ETC%'
images = '%IMAGES%'
encryption = '%ENCRYPTION%'
bin = '%BIN%'
networks = '%NETWORKS%'
log = '%LOG%'
resume = '%RESUME%'
suspend = '%SUSPEND%'
sbin = '%SBIN%'
dbus = '%DBUS%'
desktop = '%DESKTOP%'
translations = '%TRANSLATIONS%'
icons = '%ICONS%'
autostart = '%AUTOSTART%'
init = '%INIT%'
docdir = '%DOCDIR%'
mandir = '%MANDIR%'
kdedir = '%KDEDIR%'
# FILES
# python begins the file section
python = '%PYTHON%'
pidfile = '%PIDFILE%'
# stores something like other/wicd
# really only used in the install
initfile = '%INITFILE%'
# stores only the file name, i.e. wicd
initfilename = '%INITFILENAME%'
# BOOLEANS
no_install_init = %NO_INSTALL_INIT%
no_install_man = %NO_INSTALL_MAN%
no_install_kde = %NO_INSTALL_KDE%
no_install_acpi = %NO_INSTALL_ACPI%
no_install_install = %NO_INSTALL_INSTALL%
no_install_license = %NO_INSTALL_LICENSE%
def chdir(file):
"""Change directory to the location of the specified file.
Keyword arguments:
file -- the file to switch to (usually __file__)
"""
os.chdir(os.path.dirname(os.path.realpath(file)))

1
in/wpath.py.in Normal file
View File

@@ -0,0 +1 @@
link wicd=wpath.py.in

33
init/arch/wicd Executable file
View File

@@ -0,0 +1,33 @@
#!/bin/bash
# borrowed from
# http://repos.archlinux.org/viewvc.cgi/wicd/repos/extra-i686/wicd-daemon?revision=1&view=markup
# and modified for 1.5.0
. /etc/rc.conf
. /etc/rc.d/functions
case "$1" in
start)
stat_busy "Starting wicd Daemon"
killall wicd &> /dev/null
/usr/sbin/wicd-daemon &> /dev/null
add_daemon wicd
stat_done
;;
stop)
stat_busy "Stopping wicd Daemon"
killall wicd &> /dev/null
rm_daemon wicd
stat_done
;;
restart)
$0 stop
sleep 1
$0 start
;;
*)
echo "usage: $0 {start|stop|restart}"
esac
exit 0

159
init/debian/wicd Executable file
View File

@@ -0,0 +1,159 @@
#! /bin/sh
### BEGIN INIT INFO
# Provides: wicd
# Required-Start: dbus
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Starts and stops Wicd
# Description: Starts and stops Wicd, a network manager
### END INIT INFO
# Author: Adam Blackburn <compwiz18@users.sourceforge.net>
#
# Do NOT "set -e"
# PATH should only include /usr/* if it runs after the mountnfs.sh script
PATH=/usr/sbin:/usr/bin:/sbin:/bin
DESC="Network connection manager"
NAME=wicd
DAEMON=/usr/sbin/$NAME
DAEMON_ARGS=""
PIDFILE=/var/run/wicd/wicd.pid
SCRIPTNAME=/etc/init.d/wicd
# Exit if the package is not installed
[ -x "$DAEMON" ] || exit 0
# Read configuration variable file if it is present
[ -r /etc/default/$NAME ] && . /etc/default/$NAME
# Load the VERBOSE setting and other rcS variables
[ -f /etc/default/rcS ] && . /etc/default/rcS
# Define LSB log_* functions.
# Depend on lsb-base (>= 3.0-6) to ensure that this file is present.
. /lib/lsb/init-functions
# Perhaps not the best idea
# but a confirmation is nice
# when starting/stopping the daemon
VERBOSE=yes
#
# Function that starts the daemon/service
#
do_start()
{
# Return
# 0 if daemon has been started
# 1 if daemon was already running
# 2 if daemon could not be started
# vvvv -- don't do this -- vvvv
# [ -e $PIDFILE ] && return 1
start-stop-daemon --start --quiet --pidfile $PIDFILE --startas $DAEMON --test > /dev/null \
|| return 1
start-stop-daemon --start --quiet --pidfile $PIDFILE --startas $DAEMON -- \
$DAEMON_ARGS > /dev/null 2> /dev/null\
|| return 2
# Add code here, if necessary, that waits for the process to be ready
# to handle requests from services started subsequently which depend
# on this one. As a last resort, sleep for some time.
}
#
# Function that stops the daemon/service
#
do_stop()
{
# Return
# 0 if daemon has been stopped
# 1 if daemon was already stopped
# 2 if daemon could not be stopped
# other if a failure occurred
start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --name $NAME
RETVAL="$?"
[ "$RETVAL" = 2 ] && return 2
# Wait for children to finish too if this is a daemon that forks
# and if the daemon is only ever run from this initscript.
# If the above conditions are not satisfied then add some other code
# that waits for the process to drop all resources that could be
# needed by services started subsequently. A last resort is to
# sleep for some time.
start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON
[ "$?" = 2 ] && return 2
# Many daemons don't delete their pidfiles when they exit.
rm -f $PIDFILE
return "$RETVAL"
}
#
# Function that sends a SIGHUP to the daemon/service
#
do_reload() {
#
# If the daemon can reload its configuration without
# restarting (for example, when it is sent a SIGHUP),
# then implement that here.
#
start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --name $NAME
return 0
}
case "$1" in
start)
[ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME"
do_start
case "$?" in
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
esac
;;
stop)
[ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
do_stop
case "$?" in
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
esac
;;
#reload|force-reload)
#
# If do_reload() is not implemented then leave this commented out
# and leave 'force-reload' as an alias for 'restart'.
#
#log_daemon_msg "Reloading $DESC" "$NAME"
#do_reload
#log_end_msg $?
#;;
restart|force-reload)
#
# If the "reload" option is implemented then remove the
# 'force-reload' alias
#
log_daemon_msg "Restarting $DESC" "$NAME"
do_stop
case "$?" in
0|1)
do_start
case "$?" in
0) log_end_msg 0 ;;
1) log_end_msg 1 ;; # Old process is still running
*) log_end_msg 1 ;; # Failed to start
esac
;;
*)
# Failed to stop
log_end_msg 1
;;
esac
;;
*)
#echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2
echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
exit 3
;;
esac
:

53
init/default/wicd Normal file
View File

@@ -0,0 +1,53 @@
#!/bin/sh
# /etc/init.d/wicd
# Start/stop/restart the Wicd daemon
# Modified the Slackware default init script for use
# where the distro is not detected.
# This is defined in /usr/lib/python2.5/site-packages/wicd/wpath.py
PIDFILE="/var/run/wicd/wicd.pid"
# Define start and stop functions
wicd_start() {
if [ -e $PIDFILE ]; then
echo "Wicd appears to already be running."
echo "If this is not the case, then remove "
echo "$PIDFILE and try again..."
exit 1
else
echo "Starting wicd daemon..."
/usr/sbin/wicd 2>/dev/null 1>&2
fi
}
wicd_stop() {
echo "Stopping wicd daemon..."
if [ -e $PIDFILE ]; then
kill $(cat $PIDFILE) 2>/dev/null
rm -f $PIDFILE 2>/dev/null
else
killall wicd-client 2>/dev/null
fi
}
# See how we were called and take appropriate action
case $1 in
start)
wicd_start
;;
stop)
wicd_stop
;;
restart)
wicd_stop
wicd_start
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
;;
esac

24
init/gentoo/wicd Executable file
View File

@@ -0,0 +1,24 @@
#!/sbin/runscript
# Copyright 1999-2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
opts="start stop restart"
WICD_DAEMON=/usr/sbin/wicd
WICD_PIDFILE=/var/run/wicd/wicd.pid
depend() {
need dbus
}
start() {
ebegin "Starting wicd daemon"
$WICD_DAEMON &>/dev/null
eend $?
}
stop() {
ebegin "Stopping wicd daemon"
start-stop-daemon --stop --pidfile "$WICD_PIDFILE"
eend $?
}

88
init/pld/wicd Executable file
View File

@@ -0,0 +1,88 @@
#!/bin/sh
#
# wicd wicd wireless connection daemon
#
# chkconfig: 345 99 01
#
# description: wicd wireless connection daemon
#
# processname: wicd
# config:
# pidfile: /var/run/wicd.pid
#
# $Id: template.init 9689 2008-03-27 16:15:39Z patrys $
# Source function library
. /etc/rc.d/init.d/functions
# Get service config - may override defaults
# [ -f /etc/sysconfig/wicd ] && . /etc/sysconfig/wicd
WICD_BIN=/usr/sbin/wicd
start() {
# Check if the service is already running?
if [ ! -f /var/lock/subsys/wicd ]; then
msg_starting wicd
daemon $WICD_BIN
RETVAL=$?
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/wicd
else
msg_already_running wicd
fi
}
stop() {
if [ -f /var/lock/subsys/wicd ]; then
# Stop daemons.
msg_stopping wicd
# killproc wicd
killproc --pidfile /var/run/wicd.pid wicd -TERM
rm -f /var/lock/subsys/wicd
else
msg_not_running wicd
fi
}
condrestart() {
if [ -f /var/lock/subsys/wicd ]; then
stop
start
else
msg_not_running wicd
RETVAL=$1
fi
}
RETVAL=0
# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
try-restart)
condrestart 0
;;
# use this one if program doesn't support reloading without restart
force-reload)
condrestart 7
;;
status)
status wicd
RETVAL=$?
;;
*)
msg_usage "$0 {start|stop|restart|try-restart|reload|force-reload|status}"
exit 3
esac
exit $RETVAL

43
init/redhat/wicd Executable file
View File

@@ -0,0 +1,43 @@
#! /bin/sh
#
# /etc/init.d/wicd
#
# chkconfig: - 98 02
# description: Wicd is a wireless and wired network manager for Linux.
# Source function library.
. /etc/rc.d/init.d/functions
# This script was borrowed from the Wicd wiki page on building for Fedora
# http://wicd.net/wiki/doku.php?id=fedora
WICD_BIN=/usr/sbin/wicd
case "$1" in
start)
echo -n "Starting wicd services: "
daemon $WICD_BIN 2> /dev/null
touch /var/lock/subsys/wicd
;;
stop)
echo -n "Shutting down wicd services: "
killall wicd 2> /dev/null
rm -f /var/lock/subsys/wicd
;;
status)
if pidofproc wicd > /dev/null ; then
echo "wicd is running."
else
status wicd
fi
;;
restart | reload)
$0 stop
$0 start
;;
*)
echo "Usage: wicd {start|stop|status|reload|restart}"
exit 1
;;
esac

51
init/slackware/rc.wicd Executable file
View File

@@ -0,0 +1,51 @@
#!/bin/sh
# /etc/rc.d/rc.wicd
# Start/stop/restart the Wicd daemon
# This is defined in /usr/lib/python2.5/site-packages/wicd/wpath.py
PIDFILE="/var/run/wicd/wicd.pid"
# Define start and stop functions
wicd_start() {
if [ -e $PIDFILE ]; then
echo "Wicd appears to already be running."
echo "If this is not the case, then remove "
echo "$PIDFILE and try again..."
exit 1
else
echo "Starting wicd daemon..."
wicd 2>/dev/null 1>&2
fi
}
wicd_stop() {
echo "Stopping wicd daemon..."
if [ -e $PIDFILE ]; then
kill $(cat $PIDFILE) 2>/dev/null
rm -f $PIDFILE 2>/dev/null
else
pkill -f python.*wicd-daemon.py 2>/dev/null
fi
}
# See how we were called and take appropriate action
case $1 in
start)
wicd_start
;;
stop)
wicd_stop
;;
restart)
wicd_stop
wicd_start
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
;;
esac

50
init/suse/wicd Executable file
View File

@@ -0,0 +1,50 @@
#! /bin/sh
### BEGIN INIT INFO
# Provides: wicd-daemon
# Required-Start: dbus
# Default-Start: 3 4 5
# Default-Stop:
# Description: wicd, a wired and wireless connection manager.
### END INIT INFO
WICD_BIN=/usr/sbin/wicd
test -x $WICD_BIN || exit 5
. /etc/rc.status
rc_reset
case "$1" in
start)
checkproc $WICD_BIN
if [ $? = 0 ]; then
echo -n "wicd already running"
rc_status -v
rc_exit
fi
echo -n "Starting wicd"
startproc $WICD_BIN
rc_status -v
;;
stop)
echo -n "Shutting down wicd"
killproc -TERM $WICD_BIN
rc_status -v
;;
restart)
$0 stop
$0 start
rc_status
;;
status)
echo -n "Checking for wicd: "
checkproc $WICD_BIN
rc_status -v
;;
*)
echo "Usage: $0 {start|stop|status|restart}"
exit 1
;;
esac

View File

@@ -1,4 +0,0 @@
#!/bin/bash
echo "Starting wicd daemon..."
/opt/wicd/daemon.py 2> /dev/null

View File

@@ -0,0 +1,91 @@
.\" Written by Robby Workman <rworkman@slackware.com>
.TH WICD-MANAGER-SETTINGS.CONF 5 "June 2008" "wicd-1.5.0"
.SH NAME
wicd-manager-settings.conf \- contains settings that control Wicd's behavior
.SH DESCRIPTION
This file contains general configuration information for Wicd.
.br
This file is located at /etc/wicd/manager-settings.conf
.SH SETTINGS
.TP
.BI "link_detect_tool = " <0|1|2>
0 = autodetect
.br
1 = ethtool
.br
2 = mii-tool
.TP
.BI "flush_tool = " <0|1|2>
0 = autodetect
.br
1 = ip
.br
2 = route
.TP
.BI "signal_display_type = " <0|1>
0 = Show signal strength as a percentage
.br
1 = Show signal strength in dBm
.TP
.BI "dhcp_client = " <0|1|2|3>
0 = autodetect
.br
1 = dhclient
.br
2 = dhcpcd
3 = pump
.TP
.BI "wired_interface = " <interface_name>
.TP
.BI "always_show_wired_interface = " <True|False>
.TP
.BI "wired_connect_mode = " <0|1>
0 = connect to wired interface automatically
.br
1 = do not connect to wired interface automatically
.TP
.BI "wireless_interface = " <name_of_wireless_interface>
.TP
.BI "wpa_driver = " <wext|madwifi|ndiswrapper|hostap|hermes|atmel|broadcom|ipw|ralink legacy>
The default (and best supported) is wext. It should work properly in most cases.
.TP
.BI "auto_reconnect = " <True|False>
This settings determines whether Wicd will attempt to reconnect on connection loss.
.TP
.BI "use_global_dns = " <True|False>
If set to "True" and values are specified in the global DNS settings below,
this will cause Wicd to use these DNS settings.
.TP
.BI "global_dns_1 = " <ip_address>
.TP
.BI "global_dns_2 = " <ip_address>
.TP
.BI "global_dns_3 = " <ip_address>
.TP
.BI "debug_mode = " <integer_value>
0 = disabled
.br
1 = enabled
.TP
.BI "window_height = " <integer_value> " (in pixels)"
This determines the height of the client window.
.TP
.BI "window_width = " <integer_value> " (in pixels)"
This determines the width of the client window.
.TP
.BI "pref_height = " <integer_value> " (in pixels)"
This determines the height of the "Preferences" window when launched from the client.
.TP
.BI "pref_width = " <integer_value> " (in pixels)"
This determines the width of the "Preferences" window when launched from the client.
.SH "SEE ALSO"
.BR wicd (8),
.BR wicd-wired-settings.conf (5),
.BR wicd-wireless-settings.conf (5).

View File

@@ -0,0 +1,75 @@
.\" Written by Robby Workman <rworkman@slackware.com>
.TH WICD-WIRED-SETTINGS.CONF 5 "June 2008" "wicd-1.5.0"
.SH NAME
wicd-wired-settings.conf \- controls Wicd's wired network settings
.SH DESCRIPTION
This file contains configuration information for wired interfaces in Wicd.
.br
This file is located at /etc/wicd/wired-settings.conf
.SH SETTINGS
.TP
.BI "default = " <0|1>
This option decides whether to use this profile as the default.
0 = do not use this profile as default.
.br
1 = use this profile as default.
.TP
.BI "beforescript = " <None|arbitrary_script>
This defines a script to run before Wicd brings up the connection.
The script should be a Bourne-compatible script and should be executable.
.br
IMPORTANT - scripts should ONLY be writable by root and located in a
directory that is only writable by root.
.TP
.BI "afterscript = " <None|arbitrary_script>
This defines a script to run after Wicd brings up the connection.
The script should be a Bourne-compatible script and should be executable.
.br
IMPORTANT - scripts should ONLY be writable by root and located in a
directory that is only writable by root.
.TP
.BI "disconnectscript = " <None|arbitrary_script>
This defines a script to run when Wicd disconnects the interface.
The script should be a Bourne-compatible script and should be executable.
.br
IMPORTANT - scripts should ONLY be writable by root and located in a
directory that is only writable by root.
.TP
.BI "ip = " <None|ip_address>
Use this option if you have a static ip address for your system.
.TP
.BI "netmask = " <None|network mask>
This setting is only appropriate if a static ip address is configured above.
.TP
.BI "broadcast = " <None|broadcast_address>
This setting is only appropriate if a static ip address is configured above.
.TP
.BI "gateway = " <None|gateway_address>
This setting is only appropriate if a static ip address is configured above.
.TP
.BI "use_static_dns = " <True|False>
True = use static DNS servers instead of accepting what the dhcp server supplies.
.TP
.BI "use_global_dns = " <True|False>
True = use the global DNS servers provided in wicd-manager-settings.conf(5).
This option is only appropriate if "use_static_dns = True"
.TP
.BI "dns1 = " <None|ip_address>
Static DNS address if "use_static_dns = True" and "use_global_dns = False"
.TP
.BI "dns2 = " <None|ip_address>
Static DNS address if "use_static_dns = True" and "use_global_dns = False"
.TP
.BI "dns3 = " <None|ip_address>
Static DNS address if "use_static_dns = True" and "use_global_dns = False"
.SH "SEE ALSO"
.BR wicd (8),
.BR wicd-manager-settings.conf (5),
.BR wicd-wireless-settings.conf (5).

View File

@@ -0,0 +1,127 @@
.\" Written by Robby Workman <rworkman@slackware.com>
.TH WICD-WIRELESS-SETTINGS.CONF 5 "June 2008" "wicd-1.5.0"
.SH NAME
wicd-wired-settings.conf \- controls Wicd's wireless network settings
.SH DESCRIPTION
This file contains configuration information for wireless interfaces in Wicd.
.br
This file is located at /etc/wicd/wireless-settings.conf
.SH SETTINGS
.TP
.BI "bssid = " <BSSID_of_network>
This value can be found using iwconfig(8).
.TP
.BI "essid = " <ESSID_of_network>
This value can be found using iwconfig(8).
.TP
.BI "hidden = " <True|False>
This option notes whether the network's ESSID is broadcast or not.
.TP
.BI "channel = " <integer_value>
Valid channels are dependent upon country.
.br
This value can be found using iwconfig(8).
.TP
.BI "mode = " <Master|Ad-hoc>
.br
This value can be found using iwconfig(8).
.TP
.BI "enctype = " <encryption_template>
This can take the value of any encryption template shown in /etc/wicd/encryption/templates/.
.TP
.BI "encryption_method = "WEP|WPA|WPA2>
This value can be found using iwconfig(8).
.TP
.BI "key = " <plain_text_key>
Be sure this file is readable only by root.
.TP
.BI "automatic = " <True|False>
This option determines whether Wicd should automatically connect to this
network.
.TP
.BI "ip = " <None|ip_address>
Use this option if you have a static ip address for your system.
.TP
.BI "netmask = " <None|network mask>
This setting is only appropriate if a static ip address is configured above.
.TP
.BI "broadcast = " <None|broadcast_address>
This setting is only appropriate if a static ip address is configured above.
.TP
.BI "gateway = " <None|gateway_address>
This setting is only appropriate if a static ip address is configured above.
.TP
.BI "use_static_dns = " <True|False>
True = use static DNS servers instead of accepting what the dhcp server supplies.
.TP
.BI "use_global_dns = " <True|False>
True = use the global DNS servers provided in wicd-manager-settings.conf(5).
.br
This option is only appropriate if "use_static_dns = True"
.TP
.BI "dns1 = " <None|ip_address>
Static DNS address if "use_static_dns = True" and "use_global_dns = False"
.TP
.BI "dns2 = " <None|ip_address>
Static DNS address if "use_static_dns = True" and "use_global_dns = False"
.TP
.BI "dns3 = " <None|ip_address>
Static DNS address if "use_static_dns = True" and "use_global_dns = False"
.TP
.BI "use_settings_globally = " <0|1>
Wicd keeps track of whether to autoconnect to networks based on bssid.
This ensures that you don't accidentally connect to another network that is
not yours but happens to have the same essid - for example, there are a lot
of commercial routers in use with "linksys" as the essid.
.br
0 = Do not use settings globally
.br
1 = Use settings globally
.TP
.BI "has_profile = " <True|False>
This parameter is used internally by Wicd and has no effect as far as the
user is concerned.
.TP
.BI "beforescript = " <None|arbitrary_script>
This defines a script to run before Wicd brings up the connection.
.br
IMPORTANT - scripts should ONLY be writable by root and should be located
in a directory that is writable by only root.
.TP
.BI "afterscript = " <None|arbitrary_script>
This defines a script to run after Wicd brings up the connection.
.br
IMPORTANT - scripts should ONLY be writable by root and located
in a directory that is writable by only root.
.TP
.BI "disconnectscript = " <None|arbitrary_script>
This defines a script to run when Wicd disconnects the interface.
.br
IMPORTANT - scripts should ONLY be writable by root and located
in a directory that is writable by only root.
.SH OTHER
The "use_settings_globally" option determines how an individual network's
configuration stanza starts. If the option is "0" (do not use settings
globally), then the stanza's top line will be the bssid of the access
point (in this format):
.br
[00:15:3E:87:D3:68]
.br
If the "option is set to "1" (use settings globally), then the first line
of the stanza will be in this format:
.br
[essid:UA Public Wireless Network]
.SH "SEE ALSO"
.BR wicd (8),
.BR wicd-manager-settings.conf (5),
.BR wicd-wired-settings.conf (5).

161
man/wicd.8 Normal file
View File

@@ -0,0 +1,161 @@
.\" Written by Robby Workman <rworkman@slackware.com>
.TH WICD 8 "June 2008" "wicd-1.5.0"
.SH NAME
.B Wicd
\- Wired and Wireless Network Connection Manager
.SH THEORY OF OPERATION
Wicd is designed to give the user as much control over behavior of network
connections as possible. Every network, both wired and wireless, has its
own profile with its own configuration options and connection behavior.
Wicd will try to automatically connect only to networks the user specifies
it should try, with a preference first to a wired network, then to wireless.
For wired connections, users have many options for determining what network
settings to use. Wicd allows creation of an unlimited number of wired
profiles, each of which has its own unique settings. The user can choose to
automatically connect to a selected default profile, choose a profile from a
pop-up window every time wicd connects, or have wicd automatically choose the
last profile used to manually connect.
For wireless connections, users can select any number of wireless networks
to automatically connect; wicd will choose the one with the highest signal
strength to try to connect.
If the user chooses, wicd will try to automatically reconnect when it detects
that a connection is lost. If the last known connection state is wired, wicd
will first try to reconnect to the wired network, and if it is not available,
wicd will try any available wireless networks which have automatic connection
enabled. If the last known connection state is wireless, wicd will first try
to reconnect to the previously connected network (even if that network does
not have automatic connection enabled), and should that fail, it will try both
a wired connection and any available wireless networks which have automatic
connection enabled.
Wicd uses built-in linux wireless-tools, such as ifconfig and iwconfig, to
get and configure network info. There is some flexibility in its use of DHCP,
providing support for dhclient, dhcpcd, and pump. Wicd uses wpa_supplicant
to handle all wireless encryption settings, and uses a template-based system
to create the configuration files used by wpa_supplicant. These templates
can be edited, and new templates can be created by the user and imported into
wicd, allowing connection to networks with uncommon encryption settings.
.SH STRUCTURE
Wicd has two major parts: the daemon, which runs with root privileges; and the
user interface, which runs with normal user privileges. The two parts run as
separate processes and make use of D-Bus to communicate.
The daemon is responsible for making and configuring connections, reading and
writing configuration files and logs, and monitoring the connection status.
The daemon's job is split between two processes: wicd-daemon.py and monitor.py.
All the connection status monitoring, as well as the auto-reconnection logic,
takes place in monitor.py. Everthing else is done by wicd-daemon.py.
The user interface (stored in wicd-client), which is made up of a tray
icon, a main GUI window, and its child dialogs, gets configuration and network
info from the daemon either by querying it using the methods in the daemon's
dbus interface or by receiving signals emitted from the daemon over D-Bus.
Any configuration changes made in the user interface are passed back to the
daemon, which actually applies the changes and writes them to configuration
files.
Since the user interface just queries for connection and configuration info
from the daemon, it is possible to run wicd without the GUI at all. Also,
the daemon is started by wicd's init script during system startup (before any
user logs in), making it possible to use wicd with "headless" machines.
.SH USAGE HINTS
.B Choosing Alternate Tools
.br
Wicd supports several alternatives regarding the networking tools on linux.
In the "External Programs" tab of the Preferences menu, you can choose your
preferred DHCP client, link detection tool, and routing tool if the defaults
aren't suitable for your particular distribution or system.
.B Custom Scripts
.br
If you need to run any custom commands before or after connecting to or
disconnecting from a network, Wicd supports this; however, you will need to
have a graphical sudo helper installed (currently supported are kdesu, gksu,
and ktsuss).
.br
If you do not have a graphical sudo helper installed, you still have the
ability to use custom scripts, but you will have to set them up manually.
See wicd-wired-settings.conf(5) and/or wicd-wireless-settings.conf(5) for
more information on how to do so.
.B Automatically Connecting to Networks
.br
Wicd uses the BSSID to recognize a particular network (and thus to decide
whether it should automatically connect to it). If you are on a network
that has many different access points which all have the same ESSID
(many universities have such networks), there is an option in the "Advanced
Settings" to "Use these settings for all networks sharing this essid."
With this option enabled, Wicd will autoconnect to that network, regardless
of which node it sees.
.SH FILES
.B /etc/wicd/manager-settings.conf
.br
This file contains global settings for Wicd.
.br
See this file's own man page for more information about it.
.B /etc/wicd/wired-settings.conf
.br
This file contains settings related to the wired interface.
.br
See this file's own man page for more information about it.
.B /etc/wicd/wireless-settings.conf
.br
This file contains settings related to the wireless interface.
.br
See this file's own man page for more information about it.
.B /etc/wicd/encryption/templates/
.br
This directory contains various templates for encrypted (WEP, WPA, etcetera)
connections. If none of them fit your needs, you may create your own and
add it to this directory. If you do this, please contact the authors
(see below) of Wicd.
.B /var/lib/wicd/configurations/
.br
This directory contains individual configuration files for each encrypted
network you set up in Wicd.
.B /var/log/wicd/
.br
This directory contains logfiles of Wicd's activity. Please refer to the
log if you are having connection or other problems.
.SH "SEE ALSO"
.BR wicd-manager-settings.conf (5),
.BR wicd-wired-settings.conf (5),
.BR wicd-wireless-settings.conf (5),
.BR ifconfig (8),
.BR iwconfig (8),
.BR wpa_supplicant (8),
.BR route (8),
.BR ip (8),
.BR mii-tool (8),
.BR ethtool (8),
.BR dhclient (8),
.BR dhcpcd (8),
.BR pump (8).
.SH WICD AUTHORS
Adam Blackburn <compwiz18@gmail.com>
.br
Dan O'Reilly <oreilldf@gmail.com>
.SH MANPAGE AUTHOR
Robby Workman <rworkman@slackware.com>

16
other/wicd-tray.desktop Normal file
View File

@@ -0,0 +1,16 @@
[Desktop Entry]
Categories=Application;Network;
Encoding=UTF-8
Exec=wicd-client
GenericName=Network Manager
Icon=wicd-client
Icon[en_US]=wicd-client
Name=Wicd Network Manager Tray
Name[en_US]=Wicd Network Manager Tray
Comment=Display network connection status in the system tray
Comment[en_US]=Display network connection status in the system tray
Terminal=false
Type=Application
Version=1.0
X-GNOME-Autostart-enabled=true
X-KDE-autostart-after=panel

3
scripts/wicd Executable file
View File

@@ -0,0 +1,3 @@
#!/bin/bash
/usr/lib/wicd/wicd-daemon.py $@

2
scripts/wicd-client Executable file
View File

@@ -0,0 +1,2 @@
#!/bin/bash
/usr/lib/wicd/wicd-client.py $@

View File

@@ -1,4 +1,2 @@
[install]
install_lib=/opt/wicd
install_scripts=/opt/wicd
install_data=/opt/wicd
record = install.log

382
setup.py
View File

@@ -1,6 +1,6 @@
#
# Copyright (C) 2007 Adam Blackburn
# Copyright (C) 2007 Dan O'Reilly
# Copyright (C) 2007 - 2008 Adam Blackburn
# Copyright (C) 2007 - 2008 Dan O'Reilly
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License Version 2 as
@@ -15,58 +15,333 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
from distutils.core import setup
from distutils.core import setup, Command
import os
import shutil
import sys
data=[
('/etc/dbus-1/system.d', ['other/wicd.conf']),
('/usr/share/applications', ['other/hammer-00186ddbac.desktop']),
('', ['launchdaemon.sh']),
('/usr/share/pixmaps', ['other/wicd.png']),
('images', [('images/' + b) for b in os.listdir('images') if not b.startswith('.')]),
('encryption/templates', [('encryption/templates/' + b) for b in os.listdir('encryption/templates') if not b.startswith('.')]),
('encryption/configurations', []),
('data', ['data/wicd.png', 'data/wicd.glade']),
('translations', ['translations/wicd.pot', 'translations/ids']),
('translations/de_DE/LC_MESSAGES', ['translations/de_DE/LC_MESSAGES/wicd.mo']),
('translations/zh_HK/LC_MESSAGES', ['translations/zh_HK/LC_MESSAGES/wicd.mo']),
('translations/fr_FR/LC_MESSAGES', ['translations/fr_FR/LC_MESSAGES/wicd.mo']),
('translations/ca_ES/LC_MESSAGES', ['translations/ca_ES/LC_MESSAGES/wicd.mo']),
('translations/gl_GL/LC_MESSAGES', ['translations/gl_GL/LC_MESSAGES/wicd.mo']),
('translations/po', [('translations/po/' + b) for b in os.listdir('translations/po') if not b.startswith('.')]),
('translations/sl_SI/LC_MESSAGES', ['translations/sl_SI/LC_MESSAGES/wicd.mo']),
('translations/ja_JA/LC_MESSAGES', ['translations/ja_JA/LC_MESSAGES/wicd.mo']),
('translations/it_IT/LC_MESSAGES', ['translations/it_IT/LC_MESSAGES/wicd.mo']),
('translations/es_ES/LC_MESSAGES', ['translations/es_ES/LC_MESSAGES/wicd.mo']),
('translations/sv_SE/LC_MESSAGES', ['translations/sv_SE/LC_MESSAGES/wicd.mo']),
('translations/en_US/LC_MESSAGES', ['translations/en_US/LC_MESSAGES/wicd.mo']),
('translations/fi_FI/LC_MESSAGES', ['translations/fi_FI/LC_MESSAGES/wicd.mo']),
('translations/pl_PL/LC_MESSAGES', ['translations/pl_PL/LC_MESSAGES/wicd.mo']),
('translations/nl_NL/LC_MESSAGES', ['translations/nl_NL/LC_MESSAGES/wicd.mo'])]
if os.access('/etc/redhat-release', os.F_OK):
data.append(('/etc/rc.d/init.d', ['other/initscripts/redhat/wicd']))
elif os.access('/etc/SuSE-release', os.F_OK):
data.append(('/etc/init.d', ['other/initscripts/debian/wicd']))
elif os.access('/etc/fedora-release', os.F_OK):
data.append(('/etc/rc.d/init.d', ['other/initscripts/redhat/wicd']))
elif os.access('/etc/gentoo-release', os.F_OK):
data.append(('/etc/init.d', ['other/initscripts/gentoo/wicd']))
elif os.access('/etc/debian_version', os.F_OK):
data.append(('/etc/init.d', ['other/initscripts/debian/wicd']))
elif os.access('/etc/arch-release', os.F_OK):
data.append(('/etc/rc.d', ['other/initscripts/arch/wicd']))
elif os.access('/etc/slackware-version', os.F_OK):
data.append(('/etc/rc.d', ['other/initscripts/slackware/wicd']))
# Be sure to keep this updated!
VERSION_NUM = '1.6.0'
class configure(Command):
description = "configure the paths that Wicd will be installed to"
# pm-utils and acpi stuff
if os.access('/etc/acpi/', os.F_OK):
data.append(('/etc/acpi/resume.d', ['other/80-wicd-connect.sh']))
data.append(('/etc/acpi/suspend.d', ['other/50-wicd-suspend.sh']))
# lib = '/usr/share/wicd/'
# etc = '/etc/wicd/'
# images = '/usr/share/pixmaps/wicd/'
# encryption = etc + 'encryption/templates/'
# bin = current
# networks = '/var/lib/wicd/configurations/'
# log = '/var/log/wicd/'
#
# python = '/usr/bin/python'
user_options = [
# these first bunch are DIRECTORIES.
# they need to end a slash ("/")
# which will automatically be tacked on
# in the finalize_options method
('lib=', None, 'set the lib directory'),
('share=', None, 'set the share directory'),
('etc=', None, 'set the etc directory'),
('images=', None, 'set the image directory'),
('encryption=', None, 'set the encryption template directory'),
('bin=', None, 'set the bin directory'),
('sbin=', None, 'set the sbin directory'),
('networks=', None, 'set the encryption configuration directory'),
('log=', None, 'set the log directory'),
('resume=', None, 'set the directory the resume from suspend script is stored in'),
('suspend=', None, 'set the directory the suspend script is stored in'),
('dbus=', None, 'set the directory the dbus config file is stored in'),
('desktop=', None, 'set the directory the .desktop file is stored in'),
('icons=', None, "set the base directory for the .desktop file's icons"),
# ('pixmaps=', None, 'directory for images'),
('translations=', None, 'set the directory translations are stored in'),
('autostart=', None, 'set the directory that will be autostarted on desktop login'),
('init=', None, 'set the directory for the init file'),
('docdir=', None, 'set the directory for the documentation'),
('mandir=', None, 'set the directory for the man pages'),
('kdedir=', None, 'set the kde autostart directory'),
# anything after here is a FILE.
# in other words, a slash ("/") will not automatically
# be added to the end of the path.
# do NOT remove the python= entry as it signals the beginning
# of the file section.
('python=', None, 'set the path to the Python executable'),
('pidfile=', None, 'set the pid file'),
('initfile=', None, 'set the init file to use'),
('initfilename=', None, "set the name of the init file (don't use)"),
# switches
('no-install-init', None, "do not install the init file"),
('no-install-man', None, 'do not install the man file'),
('no-install-kde', None, 'do not install the kde autostart file'),
('no-install-acpi', None, 'do not install the suspend.d and resume.d acpi scripts'),
('no-install-install', None, 'do not install the INSTALL file'),
('no-install-license', None, 'do not install the LICENSE file')
]
def initialize_options(self):
self.lib = '/usr/lib/wicd/'
self.share = '/usr/share/wicd/'
self.etc = '/etc/wicd/'
self.icons = '/usr/share/icons/hicolor/'
self.images = '/usr/share/pixmaps/wicd/'
self.encryption = self.etc + 'encryption/templates/'
self.bin = '/usr/bin/'
self.sbin = '/usr/sbin/'
self.networks = '/var/lib/wicd/configurations/'
self.log = '/var/log/wicd/'
self.resume = '/etc/acpi/resume.d/'
self.suspend = '/etc/acpi/suspend.d/'
self.dbus = '/etc/dbus-1/system.d/'
self.desktop = '/usr/share/applications/'
self.translations = '/usr/share/locale/'
self.autostart = '/etc/xdg/autostart/'
self.docdir = '/usr/share/doc/wicd/'
self.mandir = '/usr/share/man/'
self.kdedir = '/usr/share/autostart/'
self.no_install_init = False
self.no_install_man = False
self.no_install_kde = False
self.no_install_acpi = False
self.no_install_install = False
self.no_install_license = False
# figure out what the default init file
# location should be on several different distros
self.distro_detect_failed = False
self.initfile = 'init/default/wicd'
if os.access('/etc/redhat-release', os.F_OK):
self.init = '/etc/rc.d/init.d/'
self.initfile = 'init/redhat/wicd'
elif os.access('/etc/SuSE-release', os.F_OK):
self.init = '/etc/init.d/'
self.initfile = 'init/suse/wicd'
elif os.access('/etc/fedora-release', os.F_OK):
self.init = '/etc/rc.d/init.d/'
self.initfile = 'init/redhat/wicd'
elif os.access('/etc/gentoo-release', os.F_OK):
self.init = '/etc/init.d/'
self.initfile = 'init/gentoo/wicd'
elif os.access('/etc/debian_version', os.F_OK):
self.init = '/etc/init.d/'
self.initfile = 'init/debian/wicd'
elif os.access('/etc/arch-release', os.F_OK):
self.init = '/etc/rc.d/'
self.init = 'init/arch/wicd'
elif os.access('/etc/slackware-version', os.F_OK) or \
os.access('/etc/slamd64-version', os.F_OK):
self.init = '/etc/rc.d/'
self.initfile = 'init/slackware/rc.wicd'
self.docdir = '/usr/doc/wicd-%s' % VERSION_NUM
self.mandir = '/usr/man/'
self.no_install_acpi = True
elif os.access('/etc/pld-release', os.F_OK):
self.init = '/etc/rc.d/init.d/'
self.initfile = 'init/pld/wicd'
else:
self.init = 'FAIL'
self.initfile = 'FAIL'
self.no_install_init = True
self.distro_detect_failed = True
print 'WARNING: Unable to detect the distribution in use. ' + \
'If you have specified --init and --initfile, configure will continue. ' + \
'Please report this warning, along with the name of your ' + \
'distribution, to the wicd developers.'
self.python = '/usr/bin/python'
self.pidfile = '/var/run/wicd/wicd.pid'
self.initfilename = os.path.basename(self.initfile)
def finalize_options(self):
if self.distro_detect_failed == True:
if not self.no_install_init:
if self.init == 'FAIL' or self.initfile == 'FAIL':
print 'ERROR: Failed to detect distro. Configure cannot continue. ' + \
'Please specify --init and --initfile to continue with configuration.'
# loop through the argument definitions in user_options
for argument in self.user_options:
# argument name is the first item in the user_options list
# sans the = sign at the end
argument_name = argument[0][:-1]
# select the first one, which is the name of the option
value = getattr(self, argument_name)
# if the option is not python (which is not a directory)
if not argument[0][:-1] == "python":
# see if it ends with a /
if not value.endswith("/"):
# if it doesn't, slap one on
setattr(self, argument_name, value + "/")
else:
# as stated above, the python entry defines the beginning
# of the files section
return
def run(self):
values = list()
for argument in self.user_options:
if argument[0].endswith('='):
print argument[0][:-1],'is',
print getattr(self, argument[0][:-1])
values.append((argument[0][:-1], getattr(self, argument[0][:-1].replace('-','_'))))
else:
print "Found switch",argument,getattr(self, argument[0].replace('-','_'))
values.append((argument[0], bool(getattr(self, argument[0].replace('-','_')))))
print 'Replacing values in template files...'
for item in os.listdir('in'):
if item.endswith('.in'):
print 'Replacing values in',item,
original_name = os.path.join('in',item)
item_in = open(original_name, 'r')
final_name = item[:-3].replace('=','/')
print final_name
item_out = open(final_name, 'w')
for line in item_in.readlines():
for item, value in values:
line = line.replace('%' + str(item.upper().replace('-','_')) + '%', str(value))
item_out.write(line)
item_out.close()
item_in.close()
shutil.copymode(original_name, final_name)
class get_translations(Command):
description = "download the translations from the online translator"
user_options = []
def initialize_options(self):
pass
def finalize_options(self):
pass
def run(self):
import urllib, shutil
shutil.rmtree('translations/')
os.makedirs('translations')
filename, headers = urllib.urlretrieve('http://wicd.net/translator/get_id_list.php')
id_file = open(filename, 'r')
lines = id_file.readlines()
# remove the \n from the end of lines, and remove blank entries
lines = [ x.strip() for x in lines if not x.strip() is '' ]
for id in lines:
# http://wicd.net/translator/download_po.php?language=11
pofile, poheaders = urllib.urlretrieve('http://wicd.net/translator/download_po.php?language='+str(id))
#for i in `cat ids`; do
#wget "http://wicd.sourceforge.net/translator/download_po.php?language=$i&version=$1" -O "language_$i"
#iden=`python -c "import sys; print open('language_$i','r').readlines()[1].strip()[2:]"`
#mv "language_$i" po/$iden.po
#mkdir -p $iden/LC_MESSAGES/
#msgfmt --output-file=$iden/LC_MESSAGES/wicd.mo po/$iden.po
lang_identifier = open(pofile,'r').readlines()[1].strip()[2:]
shutil.move(pofile, lang_identifier+'.po')
print 'Got',lang_identifier
os.makedirs('translations/'+lang_identifier+'/LC_MESSAGES')
os.system('msgfmt --output-file=translations/'+lang_identifier+'/LC_MESSAGES/wicd.mo '+lang_identifier+'.po')
os.remove(lang_identifier+'.po')
class uninstall(Command):
description = "remove Wicd using uninstall.sh and install.log"
user_options = []
setup(name="Wicd",
version="1.5.0",
def initialize_options(self):
pass
def finalize_options(self):
pass
def run(self):
os.system("./uninstall.sh")
try:
import wpath
except:
print '''Error importing wpath.py. You can safely ignore this
message. It is probably because you haven't run python setup.py
configure yet or you are running it for the first time.'''
data = []
try:
print "Using init file",(wpath.init, wpath.initfile)
data = [
(wpath.dbus, ['other/wicd.conf']),
(wpath.desktop, ['other/wicd.desktop']),
(wpath.log, []),
(wpath.icons + 'scalable/apps/', ['icons/scalable/wicd-client.svg']),
(wpath.icons + '192x192/apps/', ['icons/192px/wicd-client.png']),
(wpath.icons + '128x128/apps/', ['icons/128px/wicd-client.png']),
(wpath.icons + '96x96/apps/', ['icons/96px/wicd-client.png']),
(wpath.icons + '72x72/apps/', ['icons/72px/wicd-client.png']),
(wpath.icons + '64x64/apps/', ['icons/64px/wicd-client.png']),
(wpath.icons + '48x48/apps/', ['icons/48px/wicd-client.png']),
(wpath.icons + '36x36/apps/', ['icons/36px/wicd-client.png']),
(wpath.icons + '32x32/apps/', ['icons/32px/wicd-client.png']),
(wpath.icons + '24x24/apps/', ['icons/24px/wicd-client.png']),
(wpath.icons + '22x22/apps/', ['icons/22px/wicd-client.png']),
(wpath.icons + '16x16/apps/', ['icons/16px/wicd-client.png']),
(wpath.images, [('images/' + b) for b in os.listdir('images') if not b.startswith('.')]),
(wpath.encryption, [('encryption/templates/' + b) for b in os.listdir('encryption/templates') if not b.startswith('.')]),
(wpath.networks, []),
(wpath.bin, ['scripts/wicd-client', ]),
(wpath.sbin, ['scripts/wicd', ]),
(wpath.share, ['data/wicd.glade', ]),
(wpath.lib, ['wicd/wicd-client.py', 'wicd/monitor.py', 'wicd/wicd-daemon.py', 'wicd/configscript.py', 'wicd/suspend.py', 'wicd/autoconnect.py']), #'wicd/wicd-gui.py',
(wpath.autostart, ['other/wicd-tray.desktop', ]),
( wpath.docdir, [ 'AUTHORS', 'README' ]),
]
piddir = os.path.dirname(wpath.pidfile)
if not piddir.endswith('/'):
piddir += '/'
data.append (( piddir, [] ))
if not wpath.no_install_install:
data.append(( wpath.docdir, [ 'INSTALL' ] ))
if not wpath.no_install_license:
data.append(( wpath.docdir, [ 'LICENSE' ] ))
if not wpath.no_install_kde:
data.append(( wpath.kdedir, [ 'other/wicd-tray.desktop' ]))
if not wpath.no_install_init:
data.append(( wpath.init, [ wpath.initfile ]))
if not wpath.no_install_man:
data.append(( wpath.mandir + 'man8/', [ 'man/wicd.8' ]))
data.append(( wpath.mandir + 'man5/', [ 'man/wicd-manager-settings.conf.5' ]))
data.append(( wpath.mandir + 'man5/', [ 'man/wicd-wired-settings.conf.5' ]))
data.append(( wpath.mandir + 'man5/', [ 'man/wicd-wireless-settings.conf.5' ]))
if not wpath.no_install_acpi:
data.append(( wpath.resume, ['other/80-wicd-connect.sh' ]))
data.append(( wpath.suspend, ['other/50-wicd-suspend.sh' ]))
print 'Creating pid path', os.path.basename(wpath.pidfile)
print 'Language support for',
for language in os.listdir('translations/'):
if not language.startswith('.'):
codes = language.split('_')
short_language = language
if codes[0].lower() == codes[1].lower():
short_language = codes[0].lower()
print short_language,
data.append((wpath.translations + short_language + '/LC_MESSAGES/', ['translations/' + language + '/LC_MESSAGES/wicd.mo']))
print
except:
print '''Error setting up data array. This is normal if
python setup.py configure has not yet been run.'''
setup(cmdclass={'configure' : configure, 'get_translations' : get_translations, 'uninstall' : uninstall},
name="Wicd",
version=VERSION_NUM,
description="A wireless and wired network manager",
long_description="""A complete network connection manager
Wicd supports wired and wireless networks, and capable of
@@ -80,11 +355,10 @@ connect at startup to any preferred network within range.
author_email="compwiz18@users.sourceforge.net, imdano@users.sourceforge.net",
url="http://wicd.net",
license="http://www.gnu.org/licenses/old-licenses/gpl-2.0.html",
scripts=['configscript.py', 'autoconnect.py', 'gui.py', 'wicd.py', 'daemon.py', 'suspend.py', 'monitor.py'],
py_modules=['networking', 'misc', 'wnettools', 'wpath'],
## scripts=['configscript.py', 'autoconnect.py', 'gui.py', 'wicd.py', 'daemon.py', 'suspend.py', 'monitor.py'],
py_modules=['wicd.networking', 'wicd.misc', 'wicd.gui', 'wicd.wnettools', 'wicd.wpath', 'wicd.encryption', 'wicd.netentry', 'wicd.dbusmanager', 'wicd.logfile'],
data_files=data
)
print "Running post-install configuration..."
#os.system("other/postinst")
print 'Done.'
##print "Running post-install configuration..."
##os.system("other/postinst")
##print 'Done.'

View File

@@ -1,252 +0,0 @@
# English translations for PACKAGE package.
# Copyright (C) 2007 THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# root <compwiz18@gmail.com>, 2007.
#
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2007-04-13 20:40+0900\n"
"PO-Revision-Date: 2007-04-13 20:41+0900\n"
"Last-Translator: Adam Blackburn <compwiz18@gmail.com>\n"
"Language-Team: English <en@translate.freefriends.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=ASCII\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: gui.py:36
msgid "Connect"
msgstr "Connect"
#: gui.py:37
msgid "IP"
msgstr "IP"
#: gui.py:38
msgid "Netmask"
msgstr "Netmask"
#: gui.py:39
msgid "Gateway"
msgstr "Gateway"
#: gui.py:40
msgid "DNS"
msgstr "DNS"
#: gui.py:41
msgid "Use Static IPs"
msgstr "Use Static IPs"
#: gui.py:42
msgid "Use Static DNS"
msgstr "Use Static DNS"
#: gui.py:43
msgid "Use Encryption"
msgstr "Use Encryption"
#: gui.py:44
msgid "Advanced Settings"
msgstr "Advanced Settings"
#: gui.py:45
msgid "Wired Network"
msgstr "Wired Network"
#: gui.py:46
msgid ""
"To connect to a wired network, you must create a network profile. To create "
"a network profile, type a name that describes this network, and press Add"
msgstr ""
"To connect to a wired network, you must create a network profile. To create "
"a network profile, type a name that describes this network, and press Add"
#: gui.py:47
msgid "Automatically connect to this network"
msgstr "Automatically connect to this network"
#: gui.py:48
msgid "Secured"
msgstr "Secured"
#: gui.py:49
msgid "Unsecured"
msgstr "Unsecured"
#: gui.py:50
msgid "Channel"
msgstr "Channel"
#: gui.py:51
msgid "Preferences"
msgstr "Preferences"
#: gui.py:52
msgid "WPA Supplicant Driver"
msgstr "WPA Supplicant Driver"
#: gui.py:53
msgid "Wireless Interface"
msgstr "Wireless Interface"
#: gui.py:54
msgid "Wired Interface"
msgstr "Wired Interface"
#: gui.py:55
msgid "Hidden Network"
msgstr "Hidden Network"
#: gui.py:56
msgid "Hidden Network ESSID"
msgstr "Hidden Network ESSID"
#: gui.py:57
msgid "Connected to $A at $B% (IP: $C)"
msgstr "Connected to $A at $B% (IP: $C)"
#: gui.py:58
msgid "Connected to wired network (IP: $A)"
msgstr "Connected to wired network (IP: $A)"
#: gui.py:59
msgid "Not connected"
msgstr "Not connected"
#: gui.py:60
msgid "No wireless networks found."
msgstr "No wireless networks found."
#: gui.py:61
msgid "Key"
msgstr "Key"
#: gui.py:62
msgid "Username"
msgstr "Username"
#: gui.py:63
msgid "Password"
msgstr "Password"
#: gui.py:64
msgid "Anonymous Identity"
msgstr "Anonymous Identity"
#: gui.py:65
msgid "Identity"
msgstr "Identity"
#: gui.py:66
msgid "Authentication"
msgstr "Authentication"
#: gui.py:67
msgid "Path to PAC File"
msgstr "Path to PAC File"
#: gui.py:68
msgid "Choose from the networks below:"
msgstr "Choose from the networks below:"
#: gui.py:69
msgid "Connecting..."
msgstr "Connecting..."
#: gui.py:71
msgid "0"
msgstr "0"
#: gui.py:72
msgid "1"
msgstr "1"
#: gui.py:73
msgid "2"
msgstr "2"
#: gui.py:74
msgid "3"
msgstr "3"
#: gui.py:75
msgid "4"
msgstr "4"
#: gui.py:76
msgid "5"
msgstr "5"
#: gui.py:77
msgid "6"
msgstr "6"
#: gui.py:78
msgid "7"
msgstr "7"
#: gui.py:79
msgid "8"
msgstr "8"
#: gui.py:80
msgid "9"
msgstr "9"
#: gui.py:82
msgid "Putting interface down..."
msgstr "Putting interface down..."
#: gui.py:83
msgid "Resetting IP address..."
msgstr "Resetting IP address..."
#: gui.py:84
msgid "Putting interface up..."
msgstr "Putting interface up..."
#: gui.py:85
msgid "Removing old connection..."
msgstr "Removing old connection..."
#: gui.py:86
msgid "Generating PSK..."
msgstr "Generating PSK..."
#: gui.py:87
msgid "Generating WPA configuration file..."
msgstr "Generating WPA configuration file..."
#: gui.py:88
msgid "Flushing the routing table..."
msgstr "Flushing the routing table..."
#: gui.py:89
msgid "Configuring wireless interface..."
msgstr "Configuring wireless interface..."
#: gui.py:90
msgid "Setting broadcast address..."
msgstr "Setting broadcast address..."
#: gui.py:91
msgid "Setting static DNS servers..."
msgstr "Setting static DNS servers..."
#: gui.py:92
msgid "Setting static IP addresses..."
msgstr "Setting static IP addresses..."
#: gui.py:93
msgid "Obtaining IP address..."
msgstr "Obtaining IP address..."
#: gui.py:95
msgid "Done connecting..."
msgstr "Done connecting..."
msgid "To connect to a wired network, you must create a network profile. To create a network profile, type a name that describes this network, and press Add."
msgstr "To connect to a wired network, you must create a network profile. To create a network profile, type a name that describes this network, and press Add."

View File

@@ -1,191 +0,0 @@
# Spanish translations for PACKAGE package.
# Copyright (C) 2007 THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# Adam Blackburn <compwiz18@gmail.com>, 2007.
#
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2007-04-13 20:40+0900\n"
"PO-Revision-Date: 2007-04-26 20:58+0900\n"
"Last-Translator: Adam Blackburn <compwiz18@gmail.com>\n"
"Language-Team: Spanish <es@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
msgid "English"
msgstr "Español"
msgid "Connect"
msgstr "Conectar"
msgid "IP"
msgstr "IP"
msgid "Netmask"
msgstr "Máscara de subred"
msgid "Gateway"
msgstr "Puerta de enlace"
msgid "DNS"
msgstr "DNS"
msgid "Use Static IPs"
msgstr "Utilizar IP estática"
msgid "Use Static DNS"
msgstr "Utilizar DNS estática"
msgid "Use Encryption"
msgstr "Utilizar cifrado"
msgid "Advanced Settings"
msgstr "Opciones Avanzadas"
msgid "Wired Network"
msgstr "Red cableada"
msgid "Automatically connect to this network"
msgstr "Conectarse automáticamente a esta red"
msgid "Secured"
msgstr "Segura"
msgid "Unsecured"
msgstr "No segura"
msgid "Channel"
msgstr "Canal"
msgid "Preferences"
msgstr "Preferencias"
msgid "WPA Supplicant Driver"
msgstr "Driver WPA supplicant"
msgid "Wireless Interface"
msgstr "Interfaz inalámbrica"
msgid "Wired Interface"
msgstr "Interfaz cableada"
msgid "Hidden Network"
msgstr "Red oculta"
msgid "Hidden Network ESSID"
msgstr "ESSID de red oculta"
msgid "Connected to $A at $B% (IP: $C)"
msgstr "Conectado a $A a $B% (IP: $C)"
msgid "Connected to wired network (IP: $A)"
msgstr "Conectado a red cableada (IP: $A)"
msgid "Not connected"
msgstr "No conectado"
msgid "No wireless networks found."
msgstr "No se encontraron redes inalámbricas."
msgid "Key"
msgstr "Clave"
msgid "Username"
msgstr "Nombre de usuario"
msgid "Password"
msgstr "Contraseña"
msgid "Anonymous Identity"
msgstr "Identidad anónima"
msgid "Identity"
msgstr "Identidad"
msgid "Authentication"
msgstr "Autentificación"
msgid "Path to PAC File"
msgstr "Ruta al archivo PAC"
msgid "Choose from the networks below:"
msgstr "Seleccione una de las siguientes redes:"
msgid "Connecting..."
msgstr "Conectando..."
msgid "0"
msgstr "0"
msgid "1"
msgstr "1"
msgid "2"
msgstr "2"
msgid "3"
msgstr "3"
msgid "4"
msgstr "4"
msgid "5"
msgstr "5"
msgid "6"
msgstr "6"
msgid "7"
msgstr "7"
msgid "8"
msgstr "8"
msgid "9"
msgstr "9"
msgid "Putting interface down..."
msgstr "Desconectando interfaz..."
msgid "Resetting IP address..."
msgstr "Reseteando dirección IP..."
msgid "Putting interface up..."
msgstr "Levantando interfaz..."
msgid "Removing old connection..."
msgstr "Eliminando conexión antigua..."
msgid "Generating PSK..."
msgstr "Generando PSK..."
msgid "Generating WPA configuration file..."
msgstr "Generando archivo de configuración WPA..."
msgid "Flushing the routing table..."
msgstr "Liberando tabla de rutas..."
msgid "Configuring wireless interface..."
msgstr "Configurando red inalámbrica..."
msgid "Setting broadcast address..."
msgstr "Especificando dirección broadcast..."
msgid "Setting static DNS servers..."
msgstr "Especificando direcciones DNS estáticas..."
msgid "Setting static IP addresses..."
msgstr "Especificando direcciones IP estáticas..."
msgid "Obtaining IP address..."
msgstr "Obteniendo dirección IP..."
msgid "Done connecting..."
msgstr "Conexión realizada..."
msgid "To connect to a wired network, you must create a network profile. To create a network profile, type a name that describes this network, and press Add"
msgstr "Para conectarse a una red cableada, debe crear un perfil de red. Para hacerlo, escriba un nombre que describa la red y pulse añadir"

View File

@@ -1,186 +0,0 @@
# Finnish translations for Wicd package.
# Copyright (C) 2007 Adam Blackburn
# This file is distributed under the same license as the PACKAGE package.
# Adam Blackburn <compwiz18@gmail.com>, 2007.
#
msgid ""
msgstr ""
"Project-Id-Version: Wicd 1.2.6\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2007-04-13 20:40+0900\n"
"PO-Revision-Date: 2007-04-22 00:09+0300\n"
"Last-Translator: Jari Rahkonen <jari.rahkonen@pp1.inet.fi>\n"
"Language-Team: Finnish\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Connect"
msgstr "Yhdistä"
msgid "IP"
msgstr "IP"
msgid "Netmask"
msgstr "Verkon peite"
msgid "Gateway"
msgstr "Yhdyskäytävä"
msgid "DNS"
msgstr "DNS"
msgid "Use Static IPs"
msgstr "Kiinteä IP"
msgid "Use Static DNS"
msgstr "Kiinteä DNS"
msgid "Use Encryption"
msgstr "Käytä salausta"
msgid "Advanced Settings"
msgstr "Lisäasetukset"
msgid "Wired Network"
msgstr "Lähiverkko"
msgid "Automatically connect to this network"
msgstr "Yhdistä tähän verkkoon automaattisesti"
msgid "Secured"
msgstr "Salattu"
msgid "Unsecured"
msgstr "Salaamaton"
msgid "Channel"
msgstr "Kanava"
msgid "Preferences"
msgstr "Asetukset"
msgid "WPA Supplicant Driver"
msgstr "WPA Supplicant -ajuri"
msgid "Wireless Interface"
msgstr "Langaton verkkolaite"
msgid "Wired Interface"
msgstr "Lähiverkkolaite"
msgid "Hidden Network"
msgstr "Piilotettu verkko"
msgid "Hidden Network ESSID"
msgstr "Piilotetun verkon ESSID"
msgid "Connected to $A at $B% (IP: $C)"
msgstr "Yhdistetty verkkoon $A vahvuudella $B% (IP: $C)"
msgid "Connected to wired network (IP: $A)"
msgstr "Yhdistetty lähiverkkoon (IP: $A)"
msgid "Not connected"
msgstr "Ei yhdistetty"
msgid "No wireless networks found."
msgstr "Langattomia verkkoja ei löydy."
msgid "Key"
msgstr "Avain"
msgid "Username"
msgstr "Käyttäjä"
msgid "Password"
msgstr "Salasana"
msgid "Anonymous Identity"
msgstr "Anonyymi identiteetti"
msgid "Identity"
msgstr "Identiteetti"
msgid "Authentication"
msgstr "Autentikointi"
msgid "Path to PAC File"
msgstr "PAC-tiedoston polku"
msgid "Choose from the networks below:"
msgstr "Valitse verkko:"
msgid "Connecting..."
msgstr "Yhdistetään..."
msgid "0"
msgstr "0"
msgid "1"
msgstr "1"
msgid "2"
msgstr "2"
msgid "3"
msgstr "3"
msgid "4"
msgstr "4"
msgid "5"
msgstr "5"
msgid "6"
msgstr "6"
msgid "7"
msgstr "7"
msgid "8"
msgstr "8"
msgid "9"
msgstr "9"
msgid "Putting interface down..."
msgstr "Suljetaan verkkolaite..."
msgid "Resetting IP address..."
msgstr "Palautetaan IP-osoite..."
msgid "Putting interface up..."
msgstr "Käynnistetään verkkolaite..."
msgid "Removing old connection..."
msgstr "Poistetaan vanha yhteys..."
msgid "Generating PSK..."
msgstr "Luodaan PSK..."
msgid "Generating WPA configuration file..."
msgstr "Luodaan WPA-asetustiedosto..."
msgid "Flushing the routing table..."
msgstr "Tyhjennetään reititystaulu..."
msgid "Configuring wireless interface..."
msgstr "Asetetaan langaton verkkolaite..."
msgid "Setting broadcast address..."
msgstr "Asetetaan lähetysosoite..."
msgid "Setting static DNS servers..."
msgstr "Asetetaan kiinteä DNS-palvelin..."
msgid "Setting static IP addresses..."
msgstr "Asetetaan kiinteä IP-osoite..."
msgid "Obtaining IP address..."
msgstr "Haetaan IP-osoite..."
msgid "Done connecting..."
msgstr "Yhdistetty..."
msgid "To connect to a wired network, you must create a network profile. To create a network profile, type a name that describes this network, and press Add."
msgstr "Yhdistääksesi langalliseen lähiverkkoon sinun täytyy luoda verkkoprofiili. Tee se kirjoittamalla verkkoa kuvaava nimi ja napsauttamalla Lisää-painiketta."

View File

@@ -1,28 +0,0 @@
11
12
13
14
15
16
17
18
20
21
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
47
48

View File

@@ -1,191 +0,0 @@
# Italian translations for PACKAGE package.
# Copyright (C) 2007 THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# Adam Blackburn <compwiz18@gmail.com>, 2007.
#
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2007-04-13 20:40+0900\n"
"PO-Revision-Date: 2007-04-26 20:59+0900\n"
"Last-Translator: Adam Blackburn <compwiz18@gmail.com>\n"
"Language-Team: Italian <tp@lists.linux.it>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
msgid "English"
msgstr "Italiano"
msgid "Connect"
msgstr "Connetti"
msgid "IP"
msgstr "IP"
msgid "Netmask"
msgstr "Netmask"
msgid "Gateway"
msgstr "Gateway"
msgid "DNS"
msgstr "DNS"
msgid "Use Static IPs"
msgstr "Usa IP statici"
msgid "Use Static DNS"
msgstr "Usa DNS statici"
msgid "Use Encryption"
msgstr "Usa cifratura"
msgid "Advanced Settings"
msgstr "Opzioni Avanzate"
msgid "Wired Network"
msgstr "Rete cablata"
msgid "Automatically connect to this network"
msgstr "Connetti automaticamente a questa rete"
msgid "Secured"
msgstr "Sicura"
msgid "Unsecured"
msgstr "Insicura"
msgid "Channel"
msgstr "Canale"
msgid "Preferences"
msgstr "Opzioni"
msgid "WPA Supplicant Driver"
msgstr "Driver WPA Supplicant"
msgid "Wireless Interface"
msgstr "Interfaccia Wireless"
msgid "Wired Interface"
msgstr "Interfaccia Cablata"
msgid "Hidden Network"
msgstr "Rete Nascosta"
msgid "Hidden Network ESSID"
msgstr "ESSID Rete Nascosta"
msgid "Connected to $A at $B% (IP: $C)"
msgstr "Connesso a $A a $B% (IP: $C)"
msgid "Connected to wired network (IP: $A)"
msgstr "Connesso a rete cablata"
msgid "Not connected"
msgstr "Non connesso"
msgid "No wireless networks found."
msgstr "Nessuna rete wireless trovata"
msgid "Key"
msgstr "Chiave"
msgid "Username"
msgstr "Username"
msgid "Password"
msgstr "Password"
msgid "Anonymous Identity"
msgstr "Identità Anonima"
msgid "Identity"
msgstr "Identità"
msgid "Authentication"
msgstr "Autenticazione"
msgid "Path to PAC File"
msgstr "Indirizzo del file PAC"
msgid "Choose from the networks below:"
msgstr "Scegliere dalle seguenti reti:"
msgid "Connecting..."
msgstr "Connessione in corso..."
msgid "0"
msgstr "0"
msgid "1"
msgstr "1"
msgid "2"
msgstr "2"
msgid "3"
msgstr "3"
msgid "4"
msgstr "4"
msgid "5"
msgstr "5"
msgid "6"
msgstr "6"
msgid "7"
msgstr "7"
msgid "8"
msgstr "8"
msgid "9"
msgstr "9"
msgid "Putting interface down..."
msgstr "Disabilitazione interfaccia in corso..."
msgid "Resetting IP address..."
msgstr "Reimpostazione indirizzo IP in corso..."
msgid "Putting interface up..."
msgstr "Abilitazione interfaccia in corso..."
msgid "Removing old connection..."
msgstr "Eliminazione vecchia connessione in corso..."
msgid "Generating PSK..."
msgstr "Creazione PSK in corso..."
msgid "Generating WPA configuration file..."
msgstr "Creazione file di configurazione WPA in corso..."
msgid "Flushing the routing table..."
msgstr "Pulizia tabelle di routing in corso..."
msgid "Configuring wireless interface..."
msgstr "Configurazione interfaccia wireless in corso..."
msgid "Setting broadcast address..."
msgstr "Impostazione indirizzo di broadcast in corso..."
msgid "Setting static DNS servers..."
msgstr "Impostazione server DNS statici in corso..."
msgid "Setting static IP addresses..."
msgstr "Impostazione indirizzi IP statici in corso..."
msgid "Obtaining IP address..."
msgstr "Attesa indirizzo IP..."
msgid "Done connecting..."
msgstr "Connessione completata..."
msgid "To connect to a wired network, you must create a network profile. To create a network profile, type a name that describes this network, and press Add."
msgstr "Per connettersi ad una rete cablata è necessario creare un profilo di rete. Per creare un profilo di rete, inserire un nome descrittivo della rete e premere aggiungi"

View File

@@ -1,186 +0,0 @@
# Dutch translations for PACKAGE package.
# Copyright (C) 2007 THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# Adam Blackburn <compwiz18@gmail.com>, 2007.
#
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2007-04-18 20:40+0900\n"
"PO-Revision-Date: 2007-04-19 07:57+0900\n"
"Last-Translator: Ravan <ravanhagen@gmail.com>\n"
"Language-Team: Dutch\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Connect"
msgstr "Verbinden"
msgid "IP"
msgstr "IP"
msgid "Netmask"
msgstr "Netmasker"
msgid "Gateway"
msgstr "Gateway"
msgid "DNS"
msgstr "DNS"
msgid "Use Static IPs"
msgstr "Gebruik Statisch IP"
msgid "Use Static DNS"
msgstr "Gebruik Statische DNS"
msgid "Use Encryption"
msgstr "Gebruik Encryptie"
msgid "Advanced Settings"
msgstr "Geavanceerde Instellingen"
msgid "Wired Network"
msgstr "Locaal Netwerk"
msgid "Automatically connect to this network"
msgstr "Automatisch verbinden met dit netwerk"
msgid "Secured"
msgstr "Beveiligd"
msgid "Unsecured"
msgstr "Onbeveiligd"
msgid "Channel"
msgstr "Kanaal"
msgid "Preferences"
msgstr "Voorkeuren"
msgid "WPA Supplicant Driver"
msgstr "WPA Supplicant Stuurprogramma"
msgid "Wireless Interface"
msgstr "Draadloze Aansluiting"
msgid "Wired Interface"
msgstr "Draad Aansluiting"
msgid "Hidden Network"
msgstr "Verborgen Netwerk"
msgid "Hidden Network ESSID"
msgstr "Verborgen Netwerk ESSID"
msgid "Connected to $A at $B% (IP: $C)"
msgstr "Verbonden met $A op $B% (IP: $C)"
msgid "Connected to wired network (IP: $A)"
msgstr "Verbonden met LAN (IP: $A)"
msgid "Not connected"
msgstr "Niet verbonden"
msgid "No wireless networks found."
msgstr "Geen draadloze netwerken gevonden."
msgid "Key"
msgstr "Sleutel"
msgid "Username"
msgstr "Gebruikersnaam"
msgid "Password"
msgstr "Wachtwoord"
msgid "Anonymous Identity"
msgstr "Anonieme Identiteit"
msgid "Identity"
msgstr "Identiteit"
msgid "Authentication"
msgstr "Verificatie"
msgid "Path to PAC File"
msgstr "Pad naar PAC bestand"
msgid "Choose from the networks below:"
msgstr "Kies uit de volgende netwerken:"
msgid "Connecting..."
msgstr "Verbinden..."
msgid "0"
msgstr "0"
msgid "1"
msgstr "1"
msgid "2"
msgstr "2"
msgid "3"
msgstr "3"
msgid "4"
msgstr "4"
msgid "5"
msgstr "5"
msgid "6"
msgstr "6"
msgid "7"
msgstr "7"
msgid "8"
msgstr "8"
msgid "9"
msgstr "9"
msgid "Putting interface down..."
msgstr "Aansluiting verbreken..."
msgid "Resetting IP address..."
msgstr "Herstellen IP adress..."
msgid "Putting interface up..."
msgstr "Aansluiting verbinden..."
msgid "Removing old connection..."
msgstr "Verwijderen oude verbinding..."
msgid "Generating PSK..."
msgstr "Genereren PSK..."
msgid "Generating WPA configuration file..."
msgstr "Genereren WPA configuratiebestand..."
msgid "Flushing the routing table..."
msgstr "Opschonen routing tabellen..."
msgid "Configuring wireless interface..."
msgstr "Configureren draadloze aansluiting..."
msgid "Setting broadcast address..."
msgstr "Instellen broadcast adres..."
msgid "Setting static DNS servers..."
msgstr "Instellen statische DNS server..."
msgid "Setting static IP addresses..."
msgstr "Instellen statisch IP adress..."
msgid "Obtaining IP address..."
msgstr "Verkrijgen IP adres..."
msgid "Done connecting..."
msgstr "Aansluiten gereed..."
msgid "To connect to a wired network, you must create a network profile. To create a network profile, type a name that describes this network, and press Add."
msgstr "Om met een bedraad netwerk te verbinding moet een netwerkprofiel worden aangemaakt. Type hiervoor een naam om het netwerk te beschrijven en klik Toevoegen."

View File

@@ -1,189 +0,0 @@
# Polish translations for PACKAGE package.
# Copyright (C) 2007 THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# <compwiz18@gmail.com>, 2007.
#
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2007-04-13 20:40+0900\n"
"PO-Revision-Date: 2007-05-27 16:52+0900\n"
"Last-Translator: <compwiz18@gmail.com>\n"
"Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
"|| n%100>=20) ? 1 : 2);\n"
msgid "Connect"
msgstr "Połącz"
msgid "IP"
msgstr "IP"
msgid "Netmask"
msgstr "Maska podsieci"
msgid "Gateway"
msgstr "Brama"
msgid "DNS"
msgstr "DNS"
msgid "Use Static IPs"
msgstr "Użyj Statycznych IP"
msgid "Use Static DNS"
msgstr "Użyj Statycznych DNS"
msgid "Use Encryption"
msgstr "Użyj Szyfrowania"
msgid "Advanced Settings"
msgstr "Ustawienia Zaawansowane"
msgid "Wired Network"
msgstr "Sieć Przewodowa"
msgid "Automatically connect to this network"
msgstr "Automatycznie połącz z tą siecią"
msgid "Secured"
msgstr "Zabezpieczona"
msgid "Unsecured"
msgstr "Niezabezpieczona"
msgid "Channel"
msgstr "Kanał"
msgid "Preferences"
msgstr "Preferencje"
msgid "WPA Supplicant Driver"
msgstr "Sterownik WPA Supplicant"
msgid "Wireless Interface"
msgstr "Interfejs Bezprzewodowy"
msgid "Wired Interface"
msgstr "Interfejs Przewodowy"
msgid "Hidden Network"
msgstr "Ukryta Sieć"
msgid "Hidden Network ESSID"
msgstr "ESSID Ukrytej Sieci"
msgid "Connected to $A at $B% (IP: $C)"
msgstr "Połączony z $A sygnał $B% (IP: $C)"
msgid "Connected to wired network (IP: $A)"
msgstr "Połączony z siecią przewodową (IP: $A)"
msgid "Not connected"
msgstr "Brak połączenia"
msgid "No wireless networks found."
msgstr "Nie znaleziono sieci bezprzewodowych."
msgid "Key"
msgstr "Klucz"
msgid "Username"
msgstr "Nazwa Użytkownika"
msgid "Password"
msgstr "Hasło"
msgid "Anonymous Identity"
msgstr "Anonimowa Tożsamość"
msgid "Identity"
msgstr "Tożsamość"
msgid "Authentication"
msgstr "Autentykacja"
msgid "Path to PAC File"
msgstr "Ścieżka do pliku PAC"
msgid "Choose from the networks below:"
msgstr "Wybierz sieci:"
msgid "Connecting..."
msgstr "Łączenie..."
msgid "0"
msgstr "0"
msgid "1"
msgstr "1"
msgid "2"
msgstr "2"
msgid "3"
msgstr "3"
msgid "4"
msgstr "4"
msgid "5"
msgstr "5"
msgid "6"
msgstr "6"
msgid "7"
msgstr "7"
msgid "8"
msgstr "8"
msgid "9"
msgstr "9"
msgid "Putting interface down..."
msgstr "Wyłączanie interfejsu..."
msgid "Resetting IP address..."
msgstr "Resetowanie adresu IP..."
msgid "Putting interface up..."
msgstr "Włączanie interfejsu..."
msgid "Removing old connection..."
msgstr "Usuwanie starego połączenia..."
msgid "Generating PSK..."
msgstr "Generowanie PSK..."
msgid "Generating WPA configuration file..."
msgstr "Generowanie pliku konfiguracyjnego WPA..."
msgid "Flushing the routing table..."
msgstr "Czyszczenie tablicy tras..."
msgid "Configuring wireless interface..."
msgstr "Konfigurowanie interfejsu bezprzewodowego..."
msgid "Setting broadcast address..."
msgstr "Ustawianie adresu rozgłaszania..."
msgid "Setting static DNS servers..."
msgstr "Ustawianie statycznych DNS..."
msgid "Setting static IP addresses..."
msgstr "Ustawianie statycznych adresów IP..."
msgid "Obtaining IP address..."
msgstr "Ustalanie adresu IP..."
msgid "Done connecting..."
msgstr "Połączono..."
msgid "To connect to a wired network, you must create a network profile. To create a network profile, type a name that describes this network, and press Add."
msgstr "Aby połączyć się z siecią przewodową musisz stworzyć profil sieciowy. Aby stworzyć profil sieciowy wpisz nazwę opisującą sieć i naciśnij Dodaj."

View File

@@ -1,186 +0,0 @@
# Northern Sami translations for PACKAGE package.
# Copyright (C) 2007 THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# Adam Blackburn <compwiz18@gmail.com>, 2007.
#
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2007-04-13 20:40+0900\n"
"PO-Revision-Date: 2007-04-14 07:57+0900\n"
"Last-Translator: Adam Blackburn <compwiz18@gmail.com>\n"
"Language-Team: Northern Sami\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "Connect"
msgstr "Anslut"
msgid "IP"
msgstr "IP"
msgid "Netmask"
msgstr "Subnät"
msgid "Gateway"
msgstr "Gateway"
msgid "DNS"
msgstr "DNS"
msgid "Use Static IPs"
msgstr "Använd Fast IP"
msgid "Use Static DNS"
msgstr "Använd Statisk DNS"
msgid "Use Encryption"
msgstr "Använd Kryptering"
msgid "Advanced Settings"
msgstr "Avancerade Inställningar"
msgid "Wired Network"
msgstr "Lokalt Nätverk"
msgid "Automatically connect to this network"
msgstr "Anslut automatiskt till detta nätverk "
msgid "Secured"
msgstr "Krypterat"
msgid "Unsecured"
msgstr "Okrypterat"
msgid "Channel"
msgstr "Kanal"
msgid "Preferences"
msgstr "Egenskaper"
msgid "WPA Supplicant Driver"
msgstr "WPA Supplicant Drivrutin"
msgid "Wireless Interface"
msgstr "Trådlöst Nätverk"
msgid "Wired Interface"
msgstr "Ethernet"
msgid "Hidden Network"
msgstr "Dold Nätverk"
msgid "Hidden Network ESSID"
msgstr "Dold Nätverks ESSID"
msgid "Connected to $A at $B% (IP: $C)"
msgstr "Anslut till $A Signal $B% (IP: $C)"
msgid "Connected to wired network (IP: $A)"
msgstr "Anslut till lokalt nätverk(IP: $A)"
msgid "Not connected"
msgstr "Ej ansluten"
msgid "No wireless networks found."
msgstr "Inga trådlösa nätverk funna."
msgid "Key"
msgstr "Nyckel"
msgid "Username"
msgstr "Användar namn"
msgid "Password"
msgstr "Lösenord"
msgid "Anonymous Identity"
msgstr "Anonym Identitet"
msgid "Identity"
msgstr "Identitet"
msgid "Authentication"
msgstr "Verifiering"
msgid "Path to PAC File"
msgstr "Sökväg till PAC fil"
msgid "Choose from the networks below:"
msgstr "Välj från nätverken nedan:"
msgid "Connecting..."
msgstr "Ansluter..."
msgid "0"
msgstr "0"
msgid "1"
msgstr "1"
msgid "2"
msgstr "2"
msgid "3"
msgstr "3"
msgid "4"
msgstr "4"
msgid "5"
msgstr "5"
msgid "6"
msgstr "6"
msgid "7"
msgstr "7"
msgid "8"
msgstr "8"
msgid "9"
msgstr "9"
msgid "Putting interface down..."
msgstr "Kopplar ner ansluting..."
msgid "Resetting IP address..."
msgstr "Återställer IP adress..."
msgid "Putting interface up..."
msgstr "Kopplar upp anslutning..."
msgid "Removing old connection..."
msgstr "Tar bort gamla anslutningen..."
msgid "Generating PSK..."
msgstr "Genererar PSK..."
msgid "Generating WPA configuration file..."
msgstr "Genererar WPA Konfigurations fil..."
msgid "Flushing the routing table..."
msgstr "Tömmer routing tabellen..."
msgid "Configuring wireless interface..."
msgstr "Konfigurerar trådlös anslutning..."
msgid "Setting broadcast address..."
msgstr "Sätter broadcast adress..."
msgid "Setting static DNS servers..."
msgstr "Sätter statisk DNS server..."
msgid "Setting static IP addresses..."
msgstr "Sätter statisk IP adress..."
msgid "Obtaining IP address..."
msgstr "Väntar på IP adress..."
msgid "Done connecting..."
msgstr "Ansluting klar..."
msgid "To connect to a wired network, you must create a network profile. To create a network profile, type a name that describes this network, and press Add."
msgstr "För att ansluta till ett lokalt nätverk, måste du skapa en profile. För att skapa en profile, ange ett namn / beskrivning för detta nätverk, sedan tryck på lägg till."

View File

@@ -1,183 +0,0 @@
msgid "Connect"
msgstr ""
msgid "IP"
msgstr ""
msgid "Netmask"
msgstr ""
msgid "Gateway"
msgstr ""
msgid "DNS"
msgstr ""
msgid "Use Static IPs"
msgstr ""
msgid "Use Static DNS"
msgstr ""
msgid "Use Encryption"
msgstr ""
msgid "Advanced Settings"
msgstr ""
msgid "Wired Network"
msgstr ""
msgid "Automatically connect to this network"
msgstr ""
msgid "Secured"
msgstr ""
msgid "Unsecured"
msgstr ""
msgid "Channel"
msgstr ""
msgid "Preferences"
msgstr ""
msgid "WPA Supplicant Driver"
msgstr ""
msgid "Wireless Interface"
msgstr ""
msgid "Wired Interface"
msgstr ""
msgid "Always show wired interface"
msgstr ""
msgid "Hidden Network"
msgstr ""
msgid "Hidden Network ESSID"
msgstr ""
msgid "Connected to $A at $B% (IP: $C)"
msgstr ""
msgid "Connected to wired network (IP: $A)"
msgstr ""
msgid "Not connected"
msgstr ""
msgid "No wireless networks found."
msgstr ""
msgid "Key"
msgstr ""
msgid "Username"
msgstr ""
msgid "Password"
msgstr ""
msgid "Anonymous Identity"
msgstr ""
msgid "Identity"
msgstr ""
msgid "Authentication"
msgstr ""
msgid "Path to PAC File"
msgstr ""
msgid "Choose from the networks below:"
msgstr ""
msgid "Connecting..."
msgstr ""
msgid "0"
msgstr ""
msgid "1"
msgstr ""
msgid "2"
msgstr ""
msgid "3"
msgstr ""
msgid "4"
msgstr ""
msgid "5"
msgstr ""
msgid "6"
msgstr ""
msgid "7"
msgstr ""
msgid "8"
msgstr ""
msgid "9"
msgstr ""
msgid "Putting interface down..."
msgstr ""
msgid "Resetting IP address..."
msgstr ""
msgid "Putting interface up..."
msgstr ""
msgid "Removing old connection..."
msgstr ""
msgid "Generating PSK..."
msgstr ""
msgid "Generating WPA configuration file..."
msgstr ""
msgid "Flushing the routing table..."
msgstr ""
msgid "Configuring wireless interface..."
msgstr ""
msgid "Setting broadcast address..."
msgstr ""
msgid "Setting static DNS servers..."
msgstr ""
msgid "Setting static IP addresses..."
msgstr ""
msgid "Obtaining IP address..."
msgstr ""
msgid "Done connecting..."
msgstr ""
msgid "To connect to a wired network, you must create a network profile. To create a network profile, type a name that describes this network, and press Add."
msgstr ""
msgid "Always show wired interface"
msgstr ""
msgid "Wicd needs to access your computer's network cards."
msgstr ""
msgid "Create Ad-Hoc network"
msgstr ""

84
uninstall.sh Executable file
View File

@@ -0,0 +1,84 @@
#!/bin/bash
# Copyright 2008 Robby Workman <rworkman@slackware.com>, Northport, AL, USA
# Copyright 2008 Alan Hicks <alan@slackware.com>, Lizella, GA, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
#
# 1. Redistributions of this script must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
CWD=$(pwd)
INSTALL_LOG=${INSTALL_LOG:-"$CWD/install.log"}
UNINSTALL_LOG=${UNINSTALL_LOG:-"$CWD/uninstall.log"}
DIR_LIST=$(mktemp)
FILE_LIST=$(mktemp)
trap "do_cleanup ; exit 0" EXIT;
trap "do_cleanup ; exit 1" SIGINT SIGTERM;
error_nolog() {
echo "There does not appear to be an installation log present, most"
echo "likely because you did not install Wicd from this directory."
do_cleanup
exit 1
}
do_success() {
echo "You have successfully uninstalled Wicd."
echo "Configuration files added after installation were NOT removed."
exit 0
}
get_contents() {
while read LINE ; do
if [ -d "$LINE" ]; then
# $LINE is a directory
echo "$LINE" >> "$DIR_LIST"
else
# $LINE is a file or symlink or the like
echo "$LINE" >> "$FILE_LIST"
fi
# Now handle parent directories
RECURSE=true
while [ "$RECURSE" = "true" ]; do
LINE="$(dirname $LINE)"
if [ ! "$LINE" = "/" ]; then
echo "$LINE" >> "$DIR_LIST"
else
RECURSE=false
fi
done
done < $INSTALL_LOG
}
do_uninstall() {
cat $FILE_LIST | xargs rm -f &> $UNINSTALL_LOG
cat $DIR_LIST | sort -ur | xargs rmdir &> $UNINSTALL_LOG
}
do_cleanup() {
rm -f $FILE_LIST $DIR_LIST 2>/dev/null
}
[ -e $INSTALL_LOG ] || error_nolog
get_contents
do_uninstall
do_cleanup
do_success

View File

@@ -33,8 +33,8 @@ import ConfigParser
import dbus
import gtk.glade
import wpath
import misc
import wicd.wpath as wpath
import wicd.misc as misc
_ = misc.get_gettext()

View File

@@ -52,10 +52,10 @@ else:
DBusGMainLoop(set_as_default=True)
# wicd specific libraries
import wpath
import networking
import misc
from logfile import ManagedStdio
import wicd.wpath as wpath
import wicd.networking as networking
import wicd.misc as misc
from wicd.logfile import ManagedStdio
if __name__ == '__main__':
wpath.chdir(__file__)

0
wicd/dbusmanager.py Normal file
View File

View File

@@ -34,12 +34,12 @@ import gtk.glade
from dbus import DBusException
from dbus import version as dbus_version
import misc
import wpath
from misc import noneToString, noneToBlankString, stringToBoolean, checkboxTextboxToggle
from netentry import WiredNetworkEntry, WirelessNetworkEntry
from prefs import PreferencesDialog
from dbusmanager import DBusManager
import wicd.misc
import wicd.wpath
from wicd.misc import noneToString, noneToBlankString, stringToBoolean, checkboxTextboxToggle
from wicd.netentry import WiredNetworkEntry, WirelessNetworkEntry
from wicd.prefs import PreferencesDialog
from wicd.dbusmanager import DBusManager
if __name__ == '__main__':
wpath.chdir(__file__)

View File

@@ -18,7 +18,6 @@
#
import os
import wpath
import locale
import gettext
import sys
@@ -26,6 +25,8 @@ from subprocess import Popen, STDOUT, PIPE
import subprocess
import commands
import wicd.wpath as wpath
if __name__ == '__main__':
wpath.chdir(__file__)

View File

@@ -33,8 +33,8 @@ else:
from dbus.mainloop.glib import DBusGMainLoop
DBusGMainLoop(set_as_default=True)
import wpath
import misc
import wicd.wpath as wpath
import wicd.misc as misc
misc.RenameProcess("wicd-monitor")

View File

@@ -17,9 +17,9 @@
import gtk
import misc
from misc import noneToString, stringToNone, noneToBlankString, stringToBoolean
import wpath
import wicd.misc as misc
from wicd.misc import noneToString, stringToNone, noneToBlankString, stringToBoolean
import wicd.wpath as wpath
language = misc.get_language_list_gui()

View File

@@ -44,11 +44,12 @@ class WiredConnectThread() -- Connection thread for wired
import re
import threading
import thread
import misc
import wnettools
import wpath
import time
import wicd.misc as misc
import wicd.wnettools as wnettools
import wicd.wpath as wpath
if __name__ == '__main__':
wpath.chdir(__file__)

View File

@@ -27,8 +27,8 @@ import gtk
import gobject
import pango
import misc
from misc import checkboxTextboxToggle, noneToBlankString
import wicd.misc
from wicd.misc import checkboxTextboxToggle, noneToBlankString
daemon = None
wireless = None
@@ -265,4 +265,4 @@ class PreferencesDialog(object):
self.set_label("pref_dns3_label", language['dns'] + ' ' + language['3'])
self.set_label("pref_wifi_label", language['wireless_interface'] + ':')
self.set_label("pref_wired_label", language['wired_interface'] + ':')
self.set_label("pref_driver_label", language['wpa_supplicant_driver'] + ':')
self.set_label("pref_driver_label", language['wpa_supplicant_driver'] + ':')

View File

@@ -46,10 +46,10 @@ from dbus import DBusException
from dbus import version as dbus_version
# Wicd specific imports
import wpath
import misc
import gui
from dbusmanager import DBusManager
import wicd.wpath as wpath
import wicd.misc as misc
import wicd.gui as gui
from wicd.dbusmanager import DBusManager
# Import egg.trayicon if we're using an older gtk version
if not (gtk.gtk_version[0] >= 2 and gtk.gtk_version[1] >= 10):

View File

@@ -39,8 +39,8 @@ import fcntl
import struct
import array
import wpath
import misc
import wicd.wpath as wpath
import wicd.misc as misc
# Compile the regex patterns that will be used to search the output of iwlist
# scan for info these are well tested, should work on most cards