summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--abs/core/dmraid/PKGBUILD44
-rw-r--r--abs/core/dmraid/dmraid.install14
-rw-r--r--abs/core/dmraid/dmraid.service16
-rw-r--r--abs/core/dmraid/dmraid_hook14
-rw-r--r--abs/core/dmraid/dmraid_install22
-rw-r--r--abs/core/dmraid/dmraid_tmpfiles1
6 files changed, 111 insertions, 0 deletions
diff --git a/abs/core/dmraid/PKGBUILD b/abs/core/dmraid/PKGBUILD
new file mode 100644
index 0000000..39f3672
--- /dev/null
+++ b/abs/core/dmraid/PKGBUILD
@@ -0,0 +1,44 @@
+# $Id: PKGBUILD 162150 2012-06-22 12:53:50Z dreisner $
+# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
+#Contributor: Urs Wolfer <uwolfer @ fwo.ch>
+
+pkgname=dmraid
+pkgver=1.0.0.rc16.3
+pkgrel=7
+pkgdesc="Device mapper RAID interface"
+url="http://people.redhat.com/~heinzm/sw/dmraid/"
+conflicts=('mkinitcpio<0.7')
+depends=('device-mapper>=2.0.54')
+arch=('i686' 'x86_64')
+license=('GPL')
+source=(#ftp://ftp.archlinux.org/other/dmraid/$pkgname-$pkgver.tar.bz2
+ http://people.redhat.com/~heinzm/sw/dmraid/src/$pkgname-1.0.0.rc16-3.tar.bz2
+ dmraid_install
+ dmraid_hook
+ dmraid_tmpfiles
+ dmraid.service)
+install=dmraid.install
+md5sums=('819338fcef98e8e25819f0516722beeb'
+ '2297d23cee1aef23ec6ad8d6d1870356'
+ 'faec669dc85f87187b45b5d3968efe2c'
+ '56a8bb0ece8d206cd8efb504ee072ddd'
+ 'de0af1fdb9ed4c109b8119160167d2e9')
+
+build() {
+ cd "$pkgname/1.0.0.rc16-3/$pkgname"
+ ./configure --enable-led --enable-intel_led
+ make
+}
+
+package() {
+ cd "$pkgname/1.0.0.rc16-3/$pkgname"
+ make DESTDIR="$pkgdir" prefix=/usr libdir=/usr/lib mandir=/usr/share/man includedir=/usr/include install
+ install -D -m644 "$srcdir"/dmraid_install "$pkgdir"/usr/lib/initcpio/install/dmraid
+ install -D -m644 "$srcdir"/dmraid_hook "$pkgdir"/usr/lib/initcpio/hooks/dmraid
+ install -D -m644 "$srcdir"/dmraid_tmpfiles "$pkgdir"/usr/lib/tmpfiles.d/dmraid.conf
+
+ # fix permissions
+ chmod 644 "$pkgdir"/usr/include/dmraid/* "$pkgdir"/usr/lib/libdmraid.a
+
+ install -Dm644 "$srcdir/dmraid.service" "$pkgdir/usr/lib/systemd/system/dmraid.service"
+}
diff --git a/abs/core/dmraid/dmraid.install b/abs/core/dmraid/dmraid.install
new file mode 100644
index 0000000..64899e7
--- /dev/null
+++ b/abs/core/dmraid/dmraid.install
@@ -0,0 +1,14 @@
+post_upgrade() {
+ if [ "$(vercmp $2 1.0.0.rc15)" -lt 0 ]; then
+ # important upgrade notice
+ echo ">>>"
+ echo ">>> IMPORTANT DMRAID UPGRADE NOTICE"
+ echo ">>> -------------------------------"
+ echo ">>> Version 1.0.0.rc15 and greater introduce a new name scheme:"
+ echo ">>> You need to add an additional 'p' in front of your number."
+ echo ">>> e.g. <yourname><number> --> <yourname>p<number>"
+ echo ">>> firsthd1 --> firsthdp1"
+ echo ">>> Please change your bootloader and fstab accordingly."
+ echo ">>>"
+ fi
+}
diff --git a/abs/core/dmraid/dmraid.service b/abs/core/dmraid/dmraid.service
new file mode 100644
index 0000000..1fd142f
--- /dev/null
+++ b/abs/core/dmraid/dmraid.service
@@ -0,0 +1,16 @@
+[Unit]
+Description=Assemble FakeRAID arrays
+DefaultDependencies=no
+Requires=systemd-udev-settle.service
+After=systemd-udev-settle.service
+Before=basic.target shutdown.target
+Conflicts=shutdown.target
+
+[Service]
+ExecStart=/sbin/dmraid --ignorelocking --activate y -Z
+Type=oneshot
+TimeoutSec=0
+RemainAfterExit=true
+
+[Install]
+WantedBy=basic.target
diff --git a/abs/core/dmraid/dmraid_hook b/abs/core/dmraid/dmraid_hook
new file mode 100644
index 0000000..37283e8
--- /dev/null
+++ b/abs/core/dmraid/dmraid_hook
@@ -0,0 +1,14 @@
+#!/usr/bin/ash
+
+run_hook() {
+ modprobe -a -q dm-mod dm-mirror >/dev/null 2>&1
+ msg ":: Activating dmraid arrays..."
+ # prevent any event monitoring calls with -I
+ if [ "$quiet" = "y" ]; then
+ dmraid -ay -I -Z >/dev/null
+ else
+ dmraid -ay -I -Z
+ fi
+}
+
+# vim: set ft=sh ts=4 sw=4 et:
diff --git a/abs/core/dmraid/dmraid_install b/abs/core/dmraid/dmraid_install
new file mode 100644
index 0000000..d3238c1
--- /dev/null
+++ b/abs/core/dmraid/dmraid_install
@@ -0,0 +1,22 @@
+#!/bin/bash
+
+build() {
+ add_module 'dm-mod'
+ add_module 'dm-mirror'
+
+ add_binary 'dmraid'
+ add_binary 'dmsetup'
+ add_file "/usr/lib/udev/rules.d/10-dm.rules"
+ add_file "/usr/lib/udev/rules.d/13-dm-disk.rules"
+ add_file "/usr/lib/udev/rules.d/95-dm-notify.rules"
+
+ add_runscript
+}
+
+help() {
+ cat <<HELPEOF
+This hook loads the necessary modules for a dmraid root device.
+HELPEOF
+}
+
+# vim: set ft=sh ts=4 sw=4 et:
diff --git a/abs/core/dmraid/dmraid_tmpfiles b/abs/core/dmraid/dmraid_tmpfiles
new file mode 100644
index 0000000..4f21ac1
--- /dev/null
+++ b/abs/core/dmraid/dmraid_tmpfiles
@@ -0,0 +1 @@
+d /run/lock/dmraid 1777 root root