From 560562e36a27da267f2f4f7989806790192888ef Mon Sep 17 00:00:00 2001 From: root Date: Mon, 31 Oct 2011 23:14:48 +0000 Subject: Mon Oct 31 23:14:48 UTC 2011 --- testing/crda/PKGBUILD | 39 +++++++++++++++++++++++++++++++++++++++ testing/crda/crda.install | 18 ++++++++++++++++++ testing/crda/crda.rc | 26 ++++++++++++++++++++++++++ 3 files changed, 83 insertions(+) create mode 100644 testing/crda/PKGBUILD create mode 100644 testing/crda/crda.install create mode 100755 testing/crda/crda.rc (limited to 'testing/crda') diff --git a/testing/crda/PKGBUILD b/testing/crda/PKGBUILD new file mode 100644 index 000000000..51e90cd17 --- /dev/null +++ b/testing/crda/PKGBUILD @@ -0,0 +1,39 @@ +# $Id: PKGBUILD 141491 2011-10-30 23:13:54Z thomas $ +# Maintainer: Thomas Bächler + +pkgname=crda +pkgver=1.1.2 +pkgrel=1 +pkgdesc="Central Regulatory Domain Agent for wireless networks" +arch=(i686 x86_64) +url="http://wireless.kernel.org/en/developers/Regulatory/CRDA" +license=('custom') +depends=('wireless-regdb' 'libnl' 'libgcrypt' 'udev' 'iw') +makedepends=('python-m2crypto') +install=crda.install +source=(http://wireless.kernel.org/download/crda/${pkgname}-${pkgver}.tar.bz2 + crda.rc) +md5sums=('5226f65aebacf94baaf820f8b4e06df4' + '014eef3f8655e9a130064ec6891317fc') + +build() { + msg "Compiling crda ..." + cd "${srcdir}"/${pkgname}-${pkgver} + sed 's|^#!/usr/bin/env python|#!/usr/bin/python2|' -i utils/key2pub.py + make crda regdbdump +} + +package() { + # Install crda, regdbdump and udev rules + msg "Installing crda ..." + cd "${srcdir}"/${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install + # This rule automatically sets the regulatory domain when cfg80211 is loaded + echo 'ACTION=="add" SUBSYSTEM=="module", DEVPATH=="/module/cfg80211", RUN+="/etc/rc.d/wireless-regdom start >/dev/null"' >> "${pkgdir}"/lib/udev/rules.d/85-regulatory.rules + + msg "Installing license ..." + install -D -m644 "${srcdir}"/${pkgname}-${pkgver}/LICENSE "${pkgdir}"/usr/share/licenses/crda/LICENSE + + msg "Installing boot script ..." + install -D -m755 "${srcdir}"/crda.rc "${pkgdir}"/etc/rc.d/wireless-regdom +} diff --git a/testing/crda/crda.install b/testing/crda/crda.install new file mode 100644 index 000000000..c18e15f71 --- /dev/null +++ b/testing/crda/crda.install @@ -0,0 +1,18 @@ +## arg 1: the new package version +post_install() { + echo "Uncomment the right regulatory domain in /etc/conf.d/wireless-regdom." + echo "It will automatically be set when necessary." +} + +## arg 1: the new package version +## arg 2: the old package version +post_upgrade() { + # In an upgrade from 1.0.1-1 or older, the wireless-regdom file moves from the crda package + # to the new wireless-regdb package. If the user changed the file, it is save to overwrite the one + # from wireless-regdb by the user-defined one + if [ $(vercmp $2 1.0.1-2) -lt 0 ]; then + if [ -f /etc/conf.d/wireless-regdom.pacorig -a -n "$(grep -v ^# /etc/conf.d/wireless-regdom.pacorig 2>/dev/null | grep -v ^$)" ]; then + mv /etc/conf.d/wireless-regdom.pacorig /etc/conf.d/wireless-regdom + fi + fi +} diff --git a/testing/crda/crda.rc b/testing/crda/crda.rc new file mode 100755 index 000000000..13dbd870e --- /dev/null +++ b/testing/crda/crda.rc @@ -0,0 +1,26 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/wireless-regdom + +case "$1" in + start) + if [ -n "${WIRELESS_REGDOM}" ]; then + stat_busy "Setting wireless regulatory domain: ${WIRELESS_REGDOM}" + if iw reg set ${WIRELESS_REGDOM}; then + stat_done + else + stat_fail + fi + fi + ;; + stop) + ;; + restart) + $0 start + ;; + *) + echo "usage: $0 start" +esac +exit 0 -- cgit v1.2.3-54-g00ecf