network/NetworkManager: Added (Networking that Just Works)

Signed-off-by: Erik Hanson <erik@slackbuilds.org>
This commit is contained in:
Robby Workman 2010-06-12 17:05:57 -05:00 committed by Robby Workman
parent 5afd501af7
commit 131a214adf
7 changed files with 197 additions and 0 deletions

View file

@ -0,0 +1,127 @@
#!/bin/sh
# Slackware build script for NetworkManager
# Copyright 2010 Robby Workman, Northport, Alabama, 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=NetworkManager
VERSION=${VERSION:-0.8}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i486 ;;
arm*) ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) ARCH=$( uname -m ) ;;
esac
fi
CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i486" ]; then
SLKCFLAGS="-O2 -march=i486 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
fi
set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
cd $PRGNAM-$VERSION
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
-exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--with-pppd-plugin-dir=/usr/lib${LIBDIRSUFFIX}/pppd/2.4.5 \
--with-dhcp-client=dhcpcd \
--without-resolvconf \
--with-crypto=gnutls \
--build=$ARCH-slackware-linux
# For next version
# --with-dhcpcd=/sbin/dhcpcd \
# --with-dhclient=yes \
make
make install DESTDIR=$PKG
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
find $PKG/usr/man -type f -exec gzip -9 {} \;
for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
# Don't clobber existing rc.networkmanager
mv $PKG/etc/rc.d/rc.networkmanager $PKG/etc/rc.d/rc.networkmanager.new
# Add a 'starter' nm-system-settings.conf file
mkdir -p $PKG/etc/NetworkManager
cat $CWD/nm-system-settings.conf.new > \
$PKG/etc/NetworkManager/nm-system-settings.conf.new
# This file should actually be shipped with Slackware's wpa_supplicant
# package, but since we missed it there (oops), we'll do it here:
mkdir -p $PKG/usr/share/dbus-1/system-services
cat $CWD/fi.epitest.hostap.WPASupplicant.service > \
$PKG/usr/share/dbus-1/system-services/fi.epitest.hostap.WPASupplicant.service
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
AUTHORS CONTRIBUTING COPYING ChangeLog INSTALL NEWS README TODO \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}

View file

@ -0,0 +1,10 @@
PRGNAM="NetworkManager"
VERSION="0.8"
HOMEPAGE="http://projects.gnome.org/NetworkManager/"
DOWNLOAD="ftp://ftp.gnome.org/pub/GNOME/sources/NetworkManager/0.8/NetworkManager-0.8.tar.bz2"
MD5SUM="d343e22f132754696654511acde354c2"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
MAINTAINER="Robby Workman"
EMAIL="rw@rlworkman.net"
APPROVED="Erik Hanson"

View file

@ -0,0 +1,8 @@
NetworkManager attempts to keep an active network connection available at all
times. The point of NetworkManager is to make networking configuration and
setup as painless and automatic as possible. NetworkManager is intended to
replace default route, replace other routes, set IP addresses, and in general
configure networking as NM sees fit (with the possibility of manual override as
necessary). In effect, the goal of NetworkManager is to make networking Just
Work with a minimum of user hassle, but still allow customization and a high
level of manual network control.

View file

@ -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...
}
preserve_perms() {
NEW="$1"
OLD="$(dirname ${NEW})/$(basename ${NEW} .new)"
if [ -e ${OLD} ]; then
cp -a ${OLD} ${NEW}.incoming
cat ${NEW} > ${NEW}.incoming
mv ${NEW}.incoming ${NEW}
fi
config ${NEW}
}
preserve_perms etc/rc.d/rc.networkmanager.new
config etc/NetworkManager/nm-system-settings.conf.new

View file

@ -0,0 +1,4 @@
[D-BUS Service]
Name=fi.epitest.hostap.WPASupplicant
Exec=/sbin/wpa_supplicant -u
User=root

View file

@ -0,0 +1,2 @@
[main]
plugins=keyfile,vpn,pppd

View file

@ -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------------------------------------------------------|
NetworkManager: NetworkManager (Networking that Just Works)
NetworkManager:
NetworkManager: NetworkManager attempts to keep an active network connection
NetworkManager: available at all times. The point of NetworkManager is to make
NetworkManager: networking configuration and setup as painless and automatic as
NetworkManager: possible. NetworkManager is intended to replace default route,
NetworkManager: replace other routes, set IP addresses, and in general configure
NetworkManager: networking as NM sees fit (with the possibility of manual override
NetworkManager: as necessary).
NetworkManager:
NetworkManager: