From 0f4d19b856480f56bfebc83cb94571c8e2992ec0 Mon Sep 17 00:00:00 2001 From: Robby Workman Date: Tue, 11 May 2010 20:01:46 +0200 Subject: network/wicd: Added to 12.0 repository --- network/wicd/README | 25 +++++++++++ network/wicd/dhcpcd_daemon.py.diff | 11 +++++ network/wicd/dhcpcd_networking.py.diff | 67 ++++++++++++++++++++++++++++ network/wicd/doinst.sh | 27 ++++++++++++ network/wicd/gpl-2.0.txt.gz | Bin 0 -> 6843 bytes network/wicd/slack-desc | 19 ++++++++ network/wicd/wicd.SlackBuild | 77 +++++++++++++++++++++++++++++++++ network/wicd/wicd.info | 8 ++++ 8 files changed, 234 insertions(+) create mode 100644 network/wicd/README create mode 100644 network/wicd/dhcpcd_daemon.py.diff create mode 100644 network/wicd/dhcpcd_networking.py.diff create mode 100644 network/wicd/doinst.sh create mode 100644 network/wicd/gpl-2.0.txt.gz create mode 100644 network/wicd/slack-desc create mode 100644 network/wicd/wicd.SlackBuild create mode 100644 network/wicd/wicd.info (limited to 'network/wicd') diff --git a/network/wicd/README b/network/wicd/README new file mode 100644 index 0000000000..6e7b434550 --- /dev/null +++ b/network/wicd/README @@ -0,0 +1,25 @@ +wicd is a wired and wireless network manager for Linux. + +Some features include: +- Ability to connect to wired and wireless networks +- Profiles for each wireless network and wired network +- Many encryption schemes, some of which include WEP/WPA/WPA2 +- Compatible with wireless-tools + +You will need to start the wicd service at boot by adding the +following to your /etc/rc.d/rc.local: + if [ -x /etc/rc.d/rc.wicd ]; then + /etc/rc.d/rc.wicd start + fi + +You'll also need to prevent the standard Slackware networking scripts from +starting the network. The easiest way to do this is to remove any interface +definitions from /etc/rc.d/rc.inet1.conf +Alternatively, there are two optional patches (not applied by default) +included in the script tarball and commented out in the build script. +With those patches applied, wicd should work "out of the box" with +unmodified Slackware networking scripts, but the only promise I can make is +"WFM - YMMV" (Works For Me - Your Mileage May Vary). :) + +This requires dbus-python and pygtk; also, you will need to restart or +reload the messagebus service after installing wicd. diff --git a/network/wicd/dhcpcd_daemon.py.diff b/network/wicd/dhcpcd_daemon.py.diff new file mode 100644 index 0000000000..f804956c7f --- /dev/null +++ b/network/wicd/dhcpcd_daemon.py.diff @@ -0,0 +1,11 @@ +--- orig/opt/wicd/daemon.py 2008-01-03 11:48:40.000000000 -0600 ++++ new/opt/wicd/daemon.py 2008-03-02 01:50:59.406343101 -0600 +@@ -624,7 +624,7 @@ + print 'canceling connection attempt' + if not self.wifi.ConnectingThread == None: + self.wifi.ConnectingThread.ShouldDie = True +- misc.Run("killall dhclient dhclient3 wpa_supplicant") ++ misc.Run("killall dhcpcd dhclient3 wpa_supplicant") + #end function CancelConnect + + ########## WIRED FUNCTIONS diff --git a/network/wicd/dhcpcd_networking.py.diff b/network/wicd/dhcpcd_networking.py.diff new file mode 100644 index 0000000000..7447a84278 --- /dev/null +++ b/network/wicd/dhcpcd_networking.py.diff @@ -0,0 +1,67 @@ +--- orig/opt/wicd/networking.py 2008-02-11 19:18:48.000000000 -0600 ++++ new/opt/wicd/networking.py 2008-03-13 22:05:58.562747876 -0500 +@@ -379,7 +379,7 @@ + self.ConnectingMessage = 'removing_old_connection' + self.lock.release() + +- misc.Run("killall dhclient dhclient3 wpa_supplicant") ++ misc.Run("killall dhcpcd dhclient3 wpa_supplicant") + + # Check to see if we need to generate a PSK + if self.wpa_driver != "ralink legacy": +@@ -407,8 +407,8 @@ + self.ConnectingMessage = 'flushing_routing_table' + self.lock.release() + +- misc.Run("ip route flush dev " + self.wireless_interface) +- misc.Run("ip route flush dev " + self.wired_interface) ++ misc.Run("route del dev " + self.wireless_interface) ++ misc.Run("route del dev " + self.wired_interface) + + print "configuring the wireless interface..." + self.lock.acquire() +@@ -517,7 +517,7 @@ + + print "running dhcp..." + if not self.ShouldDie: +- misc.Run("dhclient " + self.wireless_interface) ++ misc.Run("dhcpcd " + self.wireless_interface) + + # Code repetition --- bad. + # However, I think this is the best way. +@@ -618,7 +618,7 @@ + def CreateAdHocNetwork(self,essid,channel,ip,enctype,key,encused,ics): + # Remove wpa_supplicant, as it can cause the connection to revert to + # previous networks... +- misc.Run("killall dhclient dhclient3 wpa_supplicant") ++ misc.Run("killall dhcpcd dhclient3 wpa_supplicant") + misc.Run('ifconfig ' + self.wireless_interface + ' down') + misc.Run('iwconfig ' + self.wireless_interface + ' mode ad-hoc') + misc.Run('iwconfig ' + self.wireless_interface + ' channel ' + channel) +@@ -776,14 +776,14 @@ + self.lock.acquire() + self.ConnectingMessage = 'removing_old_connection' + self.lock.release() +- misc.Run("killall dhclient dhclient3 wpa_supplicant") ++ misc.Run("killall dhcpcd dhclient3 wpa_supplicant") + + print "flushing the routing table..." + self.lock.acquire() + self.ConnectingMessage = 'flushing_routing_table' + self.lock.release() +- misc.Run("ip route flush dev " + self.wireless_interface) +- misc.Run("ip route flush dev " + self.wired_interface) ++ misc.Run("route del dev " + self.wireless_interface) ++ misc.Run("route del dev " + self.wired_interface) + + if not network.get("broadcast") is None: + self.lock.acquire() +@@ -810,7 +810,7 @@ + + print "running dhcp..." + if not self.ShouldDie: +- misc.Run("dhclient " + self.wired_interface) ++ misc.Run("dhcpcd " + self.wired_interface) + + # Code repetition --- bad. + # However, I think this is the best way. diff --git a/network/wicd/doinst.sh b/network/wicd/doinst.sh new file mode 100644 index 0000000000..a818fc605d --- /dev/null +++ b/network/wicd/doinst.sh @@ -0,0 +1,27 @@ +config() { + NEW="$1" + OLD="$(dirname $NEW)/$(basename $NEW .new)" + # If there's no config file by that name, mv it over: + if [ ! -r $OLD ]; then + mv $NEW $OLD + elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then + # toss the redundant copy + rm $NEW + fi + # Otherwise, we leave the .new copy for the admin to consider... +} + +# Keep same perms on rc.wicd.new: +if [ -e etc/rc.d/rc.wicd ]; then + cp -a etc/rc.d/rc.wicd etc/rc.d/rc.wicd.new.incoming + cat etc/rc.d/rc.wicd.new > etc/rc.d/rc.wicd.new.incoming + mv etc/rc.d/rc.wicd.new.incoming etc/rc.d/rc.wicd.new +fi + +if [ -x usr/bin/update-desktop-database ]; then + usr/bin/update-desktop-database usr/share/applications >/dev/null 2>&1 +fi + +config etc/rc.d/rc.wicd.new +config etc/dbus-1/system.d/wicd.conf.new + diff --git a/network/wicd/gpl-2.0.txt.gz b/network/wicd/gpl-2.0.txt.gz new file mode 100644 index 0000000000..7b599bad0d Binary files /dev/null and b/network/wicd/gpl-2.0.txt.gz differ diff --git a/network/wicd/slack-desc b/network/wicd/slack-desc new file mode 100644 index 0000000000..774ea3c91e --- /dev/null +++ b/network/wicd/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +wicd: wicd (network manager for linux) +wicd: +wicd: wicd is a wired and wireless network manager for Linux. +wicd: Some features include: +wicd: - Ability to connect to wired and wireless networks +wicd: - Profiles for each wireless network and wired network +wicd: - Many encryption schemes, some of which include WEP/WPA/WPA2 +wicd: - Compatible with wireless-tools +wicd: +wicd: Homepage: http://wicd.sourceforge.net +wicd: diff --git a/network/wicd/wicd.SlackBuild b/network/wicd/wicd.SlackBuild new file mode 100644 index 0000000000..e1aa892b28 --- /dev/null +++ b/network/wicd/wicd.SlackBuild @@ -0,0 +1,77 @@ +#!/bin/sh + +# Copyright 2008 Robby Workman Northport, AL, 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. + +PRGNAM=wicd +VERSION=${VERSION:-1.4.2} +ARCH=noarch +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} + +CWD=$(pwd) +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +set -e + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $PKG # Yes, we'll do this all inside $PKG :) +rm -rf $PRGNAM-$VERSION +tar xvf $CWD/${PRGNAM}_${VERSION}-src.tar.bz2 +chown -R root:root . +find . -type f -exec chmod 0644 {} \; +find . -type f -name "*.py" -exec chmod 0755 {} \; + +# Unapplied patches - use them at your own risk. +# Thanks to nawcom for the ideas on this +#patch -p1 < $CWD/dhcpcd_daemon.py.diff +#patch -p1 < $CWD/dhcpcd_networking.py.diff + +# Move the init script to Slackware's place and name it accordingly +# Also, let's not clobber it on upgrades +mkdir -p etc/rc.d +mv etc/init.d/wicd etc/rc.d/rc.wicd.new +chmod 0755 etc/rc.d/rc.wicd.new +rmdir etc/init.d + +# Don't clobber the config file either +mv etc/dbus-1/system.d/wicd.conf etc/dbus-1/system.d/wicd.conf.new + +# Give the menu entry desktop file a sane name (really doesn't matter though) +mv usr/share/applications/hammer-00186ddbac.desktop \ + usr/share/applications/wicd.desktop + +# We don't have pm-utils on Slackware, so this can go +rm -rf etc/acpi + +mkdir -p usr/doc/$PRGNAM-$VERSION +cat $CWD/README > usr/doc/$PRGNAM-$VERSION/README +# The source code does not include a copy of the the gpl-2.0 +# license so lets add it for them. +zcat $CWD/gpl-2.0.txt.gz > usr/doc/$PRGNAM-$VERSION/LICENSE + +mkdir -p install +cat $CWD/slack-desc > install/slack-desc +cat $CWD/doinst.sh > install/doinst.sh + +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.tgz diff --git a/network/wicd/wicd.info b/network/wicd/wicd.info new file mode 100644 index 0000000000..f4eaafeb7e --- /dev/null +++ b/network/wicd/wicd.info @@ -0,0 +1,8 @@ +PRGNAM="wicd" +VERSION="1.4.2" +HOMEPAGE="http://wicd.sourceforge.net/" +DOWNLOAD="http://downloads.sourceforge.net/wicd/wicd_1.4.2-src.tar.bz2" +MD5SUM="86c15015df1b994202073bf467e79591" +MAINTAINER="Robby Workman" +EMAIL="rw@rlworkman.net" +APPROVED="David Somero" -- cgit v1.2.3