summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO39
-rw-r--r--.gitignore5
-rw-r--r--PKGBUILD64
-rw-r--r--zfs.install22
4 files changed, 130 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..aa4ec9b93e04
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,39 @@
+# Generated by mksrcinfo v8
+# Wed Dec 13 20:31:44 UTC 2017
+pkgbase = zfs-linux-vfio-git
+ pkgver = 2017.12.08.r3208.4e9b15696.4.13.12.2
+ pkgrel = 1
+ url = http://zfsonlinux.org/
+ arch = x86_64
+ license = CDDL
+ makedepends = linux-vfio-headers=4.13.12-2
+ makedepends = git
+ makedepends = spl-linux-vfio-git-headers
+ depends = kmod
+ depends = spl-linux-vfio-git
+ depends = zfs-utils-common-git>=2017.12.08.r3208.4e9b15696
+ depends = linux-vfio=4.13.12-2
+ source = git+https://github.com/zfsonlinux/zfs.git
+ sha256sums = SKIP
+
+pkgname = zfs-linux-vfio-git
+ pkgdesc = Kernel modules for the Zettabyte File System.
+ install = zfs.install
+ groups = archzfs-linux-vfio-git
+ provides = zfs
+ conflicts = zfs-linux-vfio
+ replaces = zfs-git
+
+pkgname = zfs-linux-vfio-git-headers
+ pkgdesc = Kernel headers for the Zettabyte File System.
+ conflicts = zfs-archiso-linux-headers
+ conflicts = zfs-linux-hardened-headers
+ conflicts = zfs-linux-hardened-git-headers
+ conflicts = zfs-linux-lts-headers
+ conflicts = zfs-linux-lts-git-headers
+ conflicts = zfs-linux-headers
+ conflicts = zfs-linux-git-headers
+ conflicts = zfs-linux-vfio-headers
+ conflicts = zfs-linux-zen-headers
+ conflicts = zfs-linux-zen-git-headers
+
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000000000000..57af7674dc61
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,5 @@
+*.tar.gz
+*.tar.xz
+*.sig
+*.log
+zfs/
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..ffef4a4be5da
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,64 @@
+# Maintainer: Jesus Alvarez <jeezusjr at gmail dot com>
+#
+# This PKGBUILD was generated by the archzfs build scripts located at
+#
+# http://github.com/archzfs/archzfs
+#
+# ! WARNING !
+#
+# The archzfs packages are kernel modules, so these PKGBUILDS will only work with the kernel package they target. In this
+# case, the archzfs-linux-vfio packages will only work with the default linux-vfio package! To have a single PKGBUILD target many
+# kernels would make for a cluttered PKGBUILD!
+#
+# If you have a custom kernel, you will need to change things in the PKGBUILDS. If you would like to have AUR or archzfs repo
+# packages for your favorite kernel package built using the archzfs build tools, submit a request in the Issue tracker on the
+# archzfs github page.
+#
+pkgbase="zfs-linux-vfio-git"
+pkgname=("zfs-linux-vfio-git" "zfs-linux-vfio-git-headers")
+
+pkgver=2017.12.08.r3208.4e9b15696.4.13.12.2
+pkgrel=1
+makedepends=("linux-vfio-headers=4.13.12-2" "git" "spl-linux-vfio-git-headers")
+arch=("x86_64")
+url="http://zfsonlinux.org/"
+source=("git+https://github.com/zfsonlinux/zfs.git")
+sha256sums=("SKIP")
+license=("CDDL")
+depends=("kmod" "spl-linux-vfio-git" "zfs-utils-common-git>=2017.12.08.r3208.4e9b15696" "linux-vfio=4.13.12-2")
+
+build() {
+ cd "${srcdir}/zfs"
+ ./autogen.sh
+ ./configure --prefix=/usr --sysconfdir=/etc --sbindir=/usr/bin --libdir=/usr/lib \
+ --datadir=/usr/share --includedir=/usr/include --with-udevdir=/lib/udev \
+ --libexecdir=/usr/lib/zfs-0.7.4 --with-config=kernel \
+ --with-linux=/usr/lib/modules/4.13.12-2-vfio/build \
+ --with-linux-obj=/usr/lib/modules/4.13.12-2-vfio/build
+ make
+}
+
+package_zfs-linux-vfio-git() {
+ pkgdesc="Kernel modules for the Zettabyte File System."
+ install=zfs.install
+ provides=("zfs")
+ groups=("archzfs-linux-vfio-git")
+ conflicts=('zfs-linux-vfio')
+ replaces=("zfs-git")
+ cd "${srcdir}/zfs"
+ make DESTDIR="${pkgdir}" install
+ cp -r "${pkgdir}"/{lib,usr}
+ rm -r "${pkgdir}"/lib
+ # Remove src dir
+ rm -r "${pkgdir}"/usr/src
+}
+
+package_zfs-linux-vfio-git-headers() {
+ pkgdesc="Kernel headers for the Zettabyte File System."
+ conflicts=('zfs-archiso-linux-headers' 'zfs-linux-hardened-headers' 'zfs-linux-hardened-git-headers' 'zfs-linux-lts-headers' 'zfs-linux-lts-git-headers' 'zfs-linux-headers' 'zfs-linux-git-headers' 'zfs-linux-vfio-headers' 'zfs-linux-zen-headers' 'zfs-linux-zen-git-headers' )
+ cd "${srcdir}/zfs"
+ make DESTDIR="${pkgdir}" install
+ rm -r "${pkgdir}/lib"
+ # Remove reference to ${srcdir}
+ sed -i "s+${srcdir}++" ${pkgdir}/usr/src/zfs-*/4.13.12-2-vfio/Module.symvers
+}
diff --git a/zfs.install b/zfs.install
new file mode 100644
index 000000000000..fc2f153a96de
--- /dev/null
+++ b/zfs.install
@@ -0,0 +1,22 @@
+post_install() {
+ check_initramfs
+}
+
+post_remove() {
+ check_initramfs 'remove'
+}
+
+post_upgrade() {
+ check_initramfs
+}
+
+check_initramfs() {
+ echo ">>> Updating ZFS module dependencies"
+ depmod -a 4.13.12-2-vfio
+ MK_CONF=$(grep -v '#' /etc/mkinitcpio.conf | grep zfs >/dev/null; echo $?);
+ if [[ ${MK_CONF} == '0' && $1 == 'remove' ]]; then
+ echo '>>> The ZFS packages have been removed, but "zfs" remains in the "hooks"'
+ echo '>>> list in mkinitcpio.conf! You will need to remove "zfs" from the '
+ echo '>>> "hooks" list and then regenerate the initial ramdisk.'
+ fi
+}