summaryrefslogtreecommitdiff
path: root/testing
diff options
context:
space:
mode:
Diffstat (limited to 'testing')
-rw-r--r--testing/btrfs-progs/70-btrfs.rules1
-rw-r--r--testing/btrfs-progs/PKGBUILD46
-rw-r--r--testing/btrfs-progs/initcpio-hook-btrfs10
-rw-r--r--testing/btrfs-progs/initcpio-install-btrfs17
4 files changed, 74 insertions, 0 deletions
diff --git a/testing/btrfs-progs/70-btrfs.rules b/testing/btrfs-progs/70-btrfs.rules
new file mode 100644
index 000000000..c0e8c776c
--- /dev/null
+++ b/testing/btrfs-progs/70-btrfs.rules
@@ -0,0 +1 @@
+ACTION!="remove", SUBSYSTEM=="block", ENV{ID_FS_TYPE}=="btrfs", RUN+="/usr/bin/btrfs device scan /dev/%k"
diff --git a/testing/btrfs-progs/PKGBUILD b/testing/btrfs-progs/PKGBUILD
new file mode 100644
index 000000000..e7252b7ec
--- /dev/null
+++ b/testing/btrfs-progs/PKGBUILD
@@ -0,0 +1,46 @@
+# $Id: PKGBUILD 164015 2012-07-24 01:22:05Z dreisner $
+# Maintainer: Tom Gundersen <teg@jklm.no>
+# Contributor: Tobias Powalowski <tpowa@archlinux.org>
+pkgname=btrfs-progs
+pkgver=0.19.20120328
+pkgrel=4
+pkgdesc="btrfs filesystem utilities"
+arch=(i686 x86_64)
+depends=('glibc' 'e2fsprogs')
+url="http://btrfs.wiki.kernel.org/"
+replaces=('btrfs-progs-unstable')
+conflicts=('btrfs-progs-unstable')
+provides=('btrfs-progs-unstable')
+license=('GPL2')
+source=(ftp://ftp.archlinux.org/other/$pkgname/$pkgname-$pkgver.tar.xz
+ 70-btrfs.rules
+ initcpio-install-btrfs
+ initcpio-hook-btrfs)
+md5sums=('f4504e73cf9254779b78d5b2318ac570'
+ '345c62c8b267082361729ca5b647518f'
+ 'e5186ec3fe8a809b7473470128d1c4ab'
+ '9fb35142755b477a96cb7292f3d64839')
+
+build() {
+ cd $srcdir/$pkgname-$pkgver
+ make CFLAGS="$CFLAGS"
+}
+
+package() {
+ cd $srcdir/$pkgname-$pkgver
+ make prefix=$pkgdir/usr install
+ # fix manpage
+ mkdir -p $pkgdir/usr/share/
+ mv $pkgdir/usr/man $pkgdir/usr/share/man
+ mkdir -p ${pkgdir}/sbin
+ ln -sf /usr/bin/btrfs ${pkgdir}/sbin/btrfs
+
+ # add udev rule
+ install -Dm644 "$srcdir/70-btrfs.rules" "$pkgdir/usr/lib/udev/rules.d/70-btrfs.rules"
+
+ # install mkinitcpio hooks
+ install -Dm644 "$srcdir/initcpio-install-btrfs" \
+ "$pkgdir/usr/lib/initcpio/install/btrfs"
+ install -Dm644 "$srcdir/initcpio-hook-btrfs" \
+ "$pkgdir/usr/lib/initcpio/hooks/btrfs"
+}
diff --git a/testing/btrfs-progs/initcpio-hook-btrfs b/testing/btrfs-progs/initcpio-hook-btrfs
new file mode 100644
index 000000000..913cec528
--- /dev/null
+++ b/testing/btrfs-progs/initcpio-hook-btrfs
@@ -0,0 +1,10 @@
+#!/usr/bin/ash
+
+run_hook() {
+ # if udevd is running, this is done async by add/change events
+ if [ "$udevd_running" -ne 1 ]; then
+ btrfs device scan
+ fi
+}
+
+# vim: set ft=sh ts=4 sw=4 et:
diff --git a/testing/btrfs-progs/initcpio-install-btrfs b/testing/btrfs-progs/initcpio-install-btrfs
new file mode 100644
index 000000000..aad263378
--- /dev/null
+++ b/testing/btrfs-progs/initcpio-install-btrfs
@@ -0,0 +1,17 @@
+#!/bin/bash
+
+build() {
+ add_module btrfs
+ add_binary btrfs
+ add_runscript
+
+ add_file /usr/lib/udev/rules.d/70-btrfs.rules
+}
+
+help() {
+ cat <<HELPEOF
+This hook provides support for multi-device btrfs volumes.
+HELPEOF
+}
+
+# vim: set ft=sh ts=4 sw=4 et: