summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libre/vhba-module-libre/60-vhba.rules13
-rw-r--r--libre/vhba-module-libre/PKGBUILD48
-rw-r--r--libre/vhba-module-libre/vhba-module.install21
3 files changed, 82 insertions, 0 deletions
diff --git a/libre/vhba-module-libre/60-vhba.rules b/libre/vhba-module-libre/60-vhba.rules
new file mode 100644
index 000000000..e4de1dca7
--- /dev/null
+++ b/libre/vhba-module-libre/60-vhba.rules
@@ -0,0 +1,13 @@
+ACTION=="remove", GOTO="vhba_end"
+KERNEL!="vhba_ctl", GOTO="vhba_end"
+
+NAME="vhba_ctl", MODE="0660", OWNER="root", GROUP="cdemu"
+
+TEST=="/sys/fs/cgroup/systemd", GOTO="vhba_uaccess"
+TAG+="udev-acl"
+GOTO="vhba_end"
+
+LABEL="vhba_uaccess"
+TAG+="uaccess"
+
+LABEL="vhba_end"
diff --git a/libre/vhba-module-libre/PKGBUILD b/libre/vhba-module-libre/PKGBUILD
new file mode 100644
index 000000000..2de64bc38
--- /dev/null
+++ b/libre/vhba-module-libre/PKGBUILD
@@ -0,0 +1,48 @@
+# $Id$
+# Maintainer: Ray Rashif <schiv@archlinux.org>
+# Contributor: Mateusz Herych <heniekk@gmail.com>
+# Contributor: Charles Lindsay <charles@chaoslizard.org>
+
+_pkgname=vhba-module
+pkgname=vhba-module-libre
+pkgver=20120422
+_extramodules=extramodules-3.5-LIBRE
+pkgrel=6
+pkgdesc="Kernel module that emulates SCSI devices"
+arch=('i686' 'x86_64')
+url="http://cdemu.sourceforge.net/"
+license=('GPL')
+depends=('linux-libre>=3.5' 'linux-libre<3.6')
+makedepends=('linux-libre-headers')
+options=(!makeflags)
+install=$_pkgname.install
+replaces=('vhba-module')
+conflicts=('vhba-module')
+provides=("vhba-module=$pkgver")
+source=("http://downloads.sourceforge.net/cdemu/$_pkgname-$pkgver.tar.bz2"
+ '60-vhba.rules')
+md5sums=('d97372da1d270d1605742b2995fb6678'
+ 'b5e82d0160e7a181219b67c1794d5c27')
+
+build() {
+ cd "$srcdir/$_pkgname-$pkgver"
+
+ _kernver="$(cat /usr/lib/modules/$_extramodules/version)"
+
+ make KDIR=/usr/lib/modules/$_kernver/build
+}
+
+package() {
+ cd "$srcdir/$_pkgname-$pkgver"
+
+ install -Dm644 vhba.ko \
+ "$pkgdir/usr/lib/modules/$_extramodules/vhba.ko"
+
+ sed -i -e "s/EXTRAMODULES='.*'/EXTRAMODULES='$_extramodules'/" \
+ "$startdir/vhba-module.install"
+
+ install -Dm644 "$srcdir/60-vhba.rules" \
+ "$pkgdir/usr/lib/udev/rules.d/60-vhba.rules"
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/libre/vhba-module-libre/vhba-module.install b/libre/vhba-module-libre/vhba-module.install
new file mode 100644
index 000000000..ac27991cc
--- /dev/null
+++ b/libre/vhba-module-libre/vhba-module.install
@@ -0,0 +1,21 @@
+_updatemod() {
+ echo " > Updating module dependencies..."
+ EXTRAMODULES='extramodules-3.5-LIBRE'
+ depmod $(cat /usr/lib/modules/$EXTRAMODULES/version)
+}
+
+post_install() {
+ post_upgrade
+}
+
+post_upgrade() {
+ getent group cdemu &>/dev/null || groupadd cdemu
+ _updatemod
+}
+
+post_remove() {
+ _updatemod
+ groupdel cdemu
+}
+
+# vim:set ts=2 sw=2 et: