summarylogtreecommitdiffstats
path: root/zfs.initcpio.install
diff options
context:
space:
mode:
authorEli Schwartz2020-03-18 15:48:04 -0400
committerEli Schwartz2020-04-02 12:14:55 -0400
commitafd1d3e734eda168996aca8752f51b1416023e45 (patch)
tree660228a0f93491c5b1c357ac295857b7f654ef31 /zfs.initcpio.install
parentd8a199382b16c6455d35389dc6547301f817ca8c (diff)
downloadaur-afd1d3e734eda168996aca8752f51b1416023e45.tar.gz
upgpkg: zfs-utils-git 0.8.0.r709.g5a42ef04f-1
This package is atrocious and completely unacceptable as-is. It claims to be a git package, but uses pinned sources, and the packager has simply ignored this for 15 months now. The version number is honestly bonkers, it distributes tons of garbage, and it's full of pseudocode from archzfs's questionable maintenance scripts. Nuke it all and replace it with parallel code from zfs-dkms.
Diffstat (limited to 'zfs.initcpio.install')
-rw-r--r--zfs.initcpio.install102
1 files changed, 102 insertions, 0 deletions
diff --git a/zfs.initcpio.install b/zfs.initcpio.install
new file mode 100644
index 000000000000..589b46bee544
--- /dev/null
+++ b/zfs.initcpio.install
@@ -0,0 +1,102 @@
+#!/bin/bash
+
+build() {
+ map add_module \
+ zavl \
+ znvpair \
+ zunicode \
+ zcommon \
+ zfs \
+ spl
+
+ map add_binary \
+ fsck.zfs \
+ mount.zfs \
+ seq \
+ zdb \
+ zed \
+ zfs \
+ zhack \
+ zinject \
+ zpool \
+ zstreamdump \
+ /lib/udev/vdev_id \
+ /lib/udev/zvol_id \
+ findmnt
+
+ map add_file \
+ /lib/udev/rules.d/60-zvol.rules \
+ /lib/udev/rules.d/69-vdev.rules \
+ /lib/udev/rules.d/90-zfs.rules \
+ /lib/libgcc_s.so.1
+
+ map add_dir \
+ /etc/zfs/zed.d
+
+ add_runscript
+
+ # allow mount(8) to "autodetect" ZFS
+ echo 'zfs' >>"${BUILDROOT}/etc/filesystems"
+
+ [[ -f /etc/zfs/zpool.cache ]] && add_file "/etc/zfs/zpool.cache"
+ [[ -f /etc/modprobe.d/zfs.conf ]] && add_file "/etc/modprobe.d/zfs.conf"
+ [[ -f /etc/hostid ]] && add_file "/etc/hostid"
+}
+
+help() {
+ cat<<HELPEOF
+This hook allows you to use ZFS as your root filesystem.
+
+Command Line Setup:
+
+ You can append the following arguments to your kernel parameters list. See
+ https://wiki.archlinux.org/index.php/Kernel_parameters for more information.
+
+ To use ZFS as your boot filesystem:
+
+ zfs=bootfs or zfs=auto or root=zfs
+
+ To use a pool or dataset:
+
+ zfs=<pool/dataset>
+
+ To force importing of a ZFS pool:
+
+ zfs_force=1
+
+ If set to 1, this will use "zpool import -f" when attempting to import
+ pools.
+
+ To change the seconds of time to wait for ZFS devices to show up at boot:
+
+ zfs_wait=30
+
+ To search for devices in a directory other than "/dev":
+
+ zfs_import_dir=/dev/disk/by-uuid
+ or
+ zfs_import_dir=/dev/disk/by-partuuid
+ or
+ zfs_import_dir=/dev/disk/by-path
+ etc.
+
+ Following initcpio convention, the 'rw' option must be specified to load the
+ pool as read/write. Pools are loaded as read only by default.
+
+Examples:
+
+ To use bootfs on your pool, use
+
+ zfs=bootfs rw
+
+ This will setup your root using tank/root zfs pool.
+
+ zfs=tank/root rw
+
+If you want to set properties for zfs-on-linux module, you should add them to
+/etc/modprobe.d/zfs.conf and then rebuild initcpio.
+
+HELPEOF
+}
+
+# vim: set ts=4 sw=4 ft=sh et: