# Template file for 'dracut'
pkgname=dracut
version=023
revision=2
build_style=gnu-makefile
make_build_args="sysconfdir=/etc systemdsystemunitdir=/usr/lib/systemd/system"
make_install_args="sysconfdir=/etc systemdsystemunitdir=/usr/lib/systemd/system"
depends="psmisc>=22.14_2 cpio xz"
makedepends="libxslt docbook-xsl asciidoc"
conf_files="/etc/dracut.conf"
make_dirs="/etc/dracut.conf.d 0755 root root"
subpackages="dracut-network"
homepage="http://www.kernel.org/pub/linux/utils/boot/dracut/dracut.html"
short_desc="A new initramfs infrastructure"
maintainer="Juan RP <xtraeme@gmail.com>"
license="GPL-2"
distfiles="${KERNEL_SITE}/utils/boot/$pkgname/$pkgname-$version.tar.xz"
checksum=727cd8d0a54d7844174ab9e928ce770547577f971bbbb49a252f7c9b007cd5be
long_desc="
 Unlike existing initramfs, this is an attempt at having as little as possible
 hard-coded into the initramfs as possible. The initramfs has (basically) one
 purpose in life -- getting the rootfs mounted so that we can transition to the
 real rootfs. This is all driven off of device availability. Therefore, instead
 of scripts hard-coded to do various things, we depend on udev to create device
 nodes for us and then when we have the rootfs's device node, we mount and
 carry on. Having the root on MD, LVM2, LUKS is supported as well as NFS,
 iSCSI, NBD and FCOE with dracut-network."

pre_build() {
	# Remove the nonsense syncheck target.
	sed -i -e "s|all: syncheck|all:|g" Makefile
}

pre_install() {
	# fix path to busybox.
	sed -i "s|/sbin/busybox|/bin/busybox|g" modules.d/05busybox/module-setup.sh
}

post_install() {
	# kernel hooks.
	vinstall ${FILESDIR}/kernel-hook-postinst \
		755 etc/kernel.d/post-install 10-dracut
	vinstall ${FILESDIR}/kernel-hook-postrm \
		755 etc/kernel.d/post-remove 10-dracut
	# logrotate file.
	vinstall dracut.logrotate 644 etc/logrotate.d dracut
}
