summaryrefslogtreecommitdiff
path: root/testing/crda
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2011-10-31 23:14:48 +0000
committerroot <root@rshg054.dnsready.net>2011-10-31 23:14:48 +0000
commit560562e36a27da267f2f4f7989806790192888ef (patch)
treef2ce7f5442dd17943646b3844614c48750704018 /testing/crda
parentf935ebf41c626e4832f86c5f3f7ed1cc35128f6b (diff)
Mon Oct 31 23:14:48 UTC 2011
Diffstat (limited to 'testing/crda')
-rw-r--r--testing/crda/PKGBUILD39
-rw-r--r--testing/crda/crda.install18
-rwxr-xr-xtesting/crda/crda.rc26
3 files changed, 83 insertions, 0 deletions
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 <thomas@archlinux.org>
+
+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