From 297a042ac9a7bbd2b18a9551f5fa4fe43faf53b2 Mon Sep 17 00:00:00 2001 From: root Date: Wed, 22 Aug 2012 00:02:51 +0000 Subject: Wed Aug 22 00:02:51 UTC 2012 --- core/rfkill/PKGBUILD | 54 +++++++++++++++++++++++++++------------------------- core/rfkill/conf.d | 20 +++++++++++++++++++ core/rfkill/rc.d | 38 ++++++++++++++++++++++++++++++++++++ core/rfkill/rules.d | 1 + core/rfkill/service | 11 +++++++++++ 5 files changed, 98 insertions(+), 26 deletions(-) create mode 100644 core/rfkill/conf.d create mode 100755 core/rfkill/rc.d create mode 100644 core/rfkill/rules.d create mode 100644 core/rfkill/service (limited to 'core/rfkill') diff --git a/core/rfkill/PKGBUILD b/core/rfkill/PKGBUILD index 64c76c5f7..bf87f9627 100644 --- a/core/rfkill/PKGBUILD +++ b/core/rfkill/PKGBUILD @@ -1,37 +1,39 @@ -# $Id: PKGBUILD 156346 2012-04-17 15:19:00Z bisson $ -# Maintainer: Thomas Bächler +# $Id: PKGBUILD 165479 2012-08-20 14:46:54Z bisson $ +# Maintainer: Gaetan Bisson +# Contributor: Thomas Bächler # Contributor: Giovanni Scafora pkgname=rfkill pkgver=0.4 -pkgrel=4 -pkgdesc="A tool for enabling and disabling wireless devices" -arch=('i686' 'x86_64') -url="http://linuxwireless.org/en/users/Documentation/rfkill" +pkgrel=5 +pkgdesc='Tool for enabling and disabling wireless devices' +url='http://linuxwireless.org/en/users/Documentation/rfkill' license=('custom') -source=(http://wireless.kernel.org/download/${pkgname}/${pkgname}-${pkgver}.tar.bz2 - 60-rfkill.rules - rfkill.conf.d - rfkill.rc.d) -backup=(etc/conf.d/rfkill) -md5sums=('727892c0fb35c80ee3849fbe89b45350' - '63f9bf9264911242e430867a41e8918c' - '398e7cadf023e05e3e0c323aa33575b9' - '793f0510e26547eb2632efce7d16e50e') +arch=('i686' 'x86_64') +source=("http://wireless.kernel.org/download/${pkgname}/${pkgname}-${pkgver}.tar.bz2" + 'rules.d' + 'service' + 'conf.d' + 'rc.d') +sha1sums=('fccabf5a272ac2891f24dc35449dc6f4c45ff44b' + '6390eaa793b473098aaa11b13c5254d611a4c13a' + 'cadc563f967c5ac680e7cdfd764718b412201f8a' + 'd969fe927a9fb2926af43a311a7c1fa126fe59a9' + '380af0b002f51543557306ed68a27f0059fd5a6f') + +backup=('etc/conf.d/rfkill') build() { - cd "${srcdir}/${pkgname}-${pkgver}" - make + cd "${srcdir}/${pkgname}-${pkgver}" + make } package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install - # License - install -Dm644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" - # Udev rule - install -Dm644 "${srcdir}/60-rfkill.rules" "${pkgdir}/usr/lib/udev/rules.d/60-rfkill.rules" - # Init script - install -Dm644 "${srcdir}/rfkill.conf.d" "${pkgdir}/etc/conf.d/rfkill" - install -Dm755 "${srcdir}/rfkill.rc.d" "${pkgdir}/etc/rc.d/rfkill" + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + install -Dm644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" + install -Dm644 ../rules.d "${pkgdir}/usr/lib/udev/rules.d/60-rfkill.rules" + install -Dm644 ../service "${pkgdir}/usr/lib/systemd/system/rfkill.service" + install -Dm644 ../conf.d "${pkgdir}/etc/conf.d/rfkill" + install -Dm755 ../rc.d "${pkgdir}/etc/rc.d/rfkill" } diff --git a/core/rfkill/conf.d b/core/rfkill/conf.d new file mode 100644 index 000000000..4483da26c --- /dev/null +++ b/core/rfkill/conf.d @@ -0,0 +1,20 @@ +# +# /etc/conf.d/rfkill +# Configuration for the rfkill startup script +# + +# List of devices to block on startup (space-separated) +RFKILL_BLOCK="" + +# List of devices to unblock on startup (space-separated) +RFKILL_UNBLOCK="all" + +# Supported device names are: all, wifi, bluetooth, umb, wimax, wwan, gps and specific device names like phy0, hci0, ... +# See "rfkill list" for available devices +# Examples: +# +# Block all bluetooth devices: +# RFKILL_BLOCK="bluetooth" +# +# Unblock the phy0 wifi device and all wwan devices: +# RFKILL_UNBLOCK="phy0 wwan" diff --git a/core/rfkill/rc.d b/core/rfkill/rc.d new file mode 100755 index 000000000..ce90ee150 --- /dev/null +++ b/core/rfkill/rc.d @@ -0,0 +1,38 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/rfkill + +case "$1" in + start) + for device in ${RFKILL_BLOCK}; do + stat_busy "Blocking rfkill device: ${device}" + /usr/sbin/rfkill block ${device} + if [ $? -eq 0 ]; then + stat_done + else + stat_fail + fi + done + for device in ${RFKILL_UNBLOCK}; do + stat_busy "Unblocking rfkill device: ${device}" + /usr/sbin/rfkill unblock ${device} + if [ $? -eq 0 ]; then + stat_done + else + stat_fail + fi + done + ;; + stop) + ;; + restart) + $0 start + ;; + *) + echo "usage: $0 {start}" + exit 1 + ;; +esac +exit 0 diff --git a/core/rfkill/rules.d b/core/rfkill/rules.d new file mode 100644 index 000000000..bc98a3bef --- /dev/null +++ b/core/rfkill/rules.d @@ -0,0 +1 @@ +KERNEL=="rfkill", GROUP="rfkill", MODE="0664" diff --git a/core/rfkill/service b/core/rfkill/service new file mode 100644 index 000000000..decd5b6fc --- /dev/null +++ b/core/rfkill/service @@ -0,0 +1,11 @@ +[Unit] +Description=RFKill-Block Selected Devices + +[Service] +Type=oneshot +ExecStart=/usr/sbin/rfkill block 9999 +ExecStop=/usr/sbin/rfkill unblock all +RemainAfterExit=yes + +[Install] +WantedBy=multi-user.target -- cgit v1.2.3-54-g00ecf