#!/bin/bash
# Created by Tobias Powalowski <tpowa@archlinux.org>

build ()
{
    apps="/usr/sbin/lvm /usr/sbin/lvmdump /usr/sbin/lvmconf /usr/sbin/vgimportclone /usr/sbin/fsadm /usr/sbin/lvmetad"
    for i in $apps; do
        add_binary "$i"
    done
    symlinks="/usr/sbin/vgcfgbackup /usr/sbin/vgcfgrestore /usr/sbin/vgchange \
              /usr/sbin/vgck /usr/sbin/vgconvert /usr/sbin/vgcreate /usr/sbin/vgdisplay /usr/sbin/vgexport /usr/sbin/vgextend /usr/sbin/vgimport \
	      /usr/sbin/vgmerge /usr/sbin/vgmknodes /usr/sbin/vgreduce /usr/sbin/vgremove /usr/sbin/vgrename /usr/sbin/vgs /usr/sbin/vgscan \
	      /usr/sbin/vgsplit /usr/sbin/pvchange /usr/sbin/pvck /usr/sbin/pvcreate /usr/sbin/pvdisplay /usr/sbin/pvmove /usr/sbin/pvremove \
	      /usr/sbin/pvresize /usr/sbin/pvs /usr/sbin/pvscan /usr/sbin/lvchange /usr/sbin/lvconvert /usr/sbin/lvcreate /usr/sbin/lvdisplay \
	      /usr/sbin/lvextend /usr/sbin/lvmchange /usr/sbin/lvmdiskscan /usr/sbin/lvmsadc /usr/sbin/lvmsar /usr/sbin/lvreduce /usr/sbin/lvremove \
	      /usr/sbin/lvrename /usr/sbin/lvresize /usr/sbin/lvs /usr/sbin/lvscan"
    for i in $symlinks; do
        add_binary "$(which $(basename $(readlink "$i")))"
        add_symlink "$i" "$(which $(basename $(readlink "$i")))"
    done
    add_dir "/etc/lvm/backup/"
    add_dir "/etc/lvm/archive/"
    add_file "/etc/lvm/lvm.conf"
    for i in /usr/lib/liblvm*; do
        add_file "$i"
    done
    add_runscript
}

help ()
{
cat<<HELPEOF
  This hook loads the necessary modules for an LVM2 root device 
  on an arch boot image.
  It depends on arch_devicemapper hook.
HELPEOF
}
