78 lines
2.2 KiB
Bash
78 lines
2.2 KiB
Bash
# Template file for 'dracut'
|
|
pkgname=dracut
|
|
version=051
|
|
revision=2
|
|
build_style=configure
|
|
configure_args="--prefix=/usr --sysconfdir=/etc"
|
|
conf_files="/etc/dracut.conf"
|
|
hostmakedepends="pkg-config"
|
|
makedepends="libkmod-devel"
|
|
depends="bash coreutils cpio eudev gzip kmod>=3.7 kpartx util-linux"
|
|
short_desc="Low-level tool for generating an initramfs/initrd image"
|
|
maintainer="q66 <daniel@octaforge.org>"
|
|
license="GPL-2.0-or-later, LGPL-2.0-or-later"
|
|
homepage="http://www.kernel.org/pub/linux/utils/boot/dracut/dracut.html"
|
|
distfiles="${KERNEL_SITE}/utils/boot/dracut/dracut-${version}.tar.xz"
|
|
checksum=95bc2586b771e3f4ab5c8637201732a137bb682395d25ab496374241091906e3
|
|
subpackages="dracut-network"
|
|
|
|
make_dirs="
|
|
/etc/dracut.conf.d 0755 root root
|
|
/usr/lib/dracut/dracut.conf.d 0755 root root"
|
|
|
|
case "$XBPS_TARGET_MACHINE" in
|
|
*-musl) # Add musl-fts implementation
|
|
makedepends+=" musl-fts-devel"
|
|
;;
|
|
esac
|
|
|
|
case "$XBPS_TARGET_MACHINE" in
|
|
i686*|x86_64*) # archs supported by dracut for EFI bundle
|
|
subpackages+=" dracut-uefi"
|
|
;;
|
|
esac
|
|
|
|
do_build() {
|
|
case "$XBPS_TARGET_MACHINE" in
|
|
*-musl) make ${makejobs} LDLIBS="-lfts" ;;
|
|
esac
|
|
}
|
|
|
|
do_check() {
|
|
# Requires the distfile to be a git repository
|
|
:
|
|
}
|
|
|
|
post_install() {
|
|
# kernel hooks.
|
|
vinstall ${FILESDIR}/kernel-hook-postinst 755 etc/kernel.d/post-install 20-dracut
|
|
vinstall ${FILESDIR}/kernel-hook-postrm 755 etc/kernel.d/post-remove 20-dracut
|
|
|
|
# We don't need the systemd stuff.
|
|
rm -rf ${DESTDIR}/usr/lib/dracut/modules.d/*systemd*
|
|
rm -f ${DESTDIR}/usr/share/man/man8/*.service.*
|
|
rm -rf ${DESTDIR}/usr/lib/kernel
|
|
}
|
|
|
|
dracut-network_package() {
|
|
depends="dhclient ${sourcepkg}-${version}_${revision}"
|
|
short_desc+=" - network modules"
|
|
pkg_install() {
|
|
for f in 40network 90livenet 95fcoe 95iscsi \
|
|
95nbd 95nfs 95zfcp 95znet; do
|
|
vmove usr/lib/dracut/modules.d/${f}
|
|
done
|
|
}
|
|
}
|
|
|
|
dracut-uefi_package() {
|
|
depends="binutils gummiboot ${sourcepkg}>=${version}_${revision}"
|
|
short_desc+=" - UEFI bundle hook"
|
|
conf_files="/etc/default/dracut-uefi-hook"
|
|
|
|
pkg_install() {
|
|
vinstall ${FILESDIR}/dracut-uefi-hook.confd 644 etc/default dracut-uefi-hook
|
|
vinstall ${FILESDIR}/kernel-uefi-hook-postinst 755 etc/kernel.d/post-install 20-dracut-uefi
|
|
vinstall ${FILESDIR}/kernel-uefi-hook-postrm 755 etc/kernel.d/post-remove 20-dracut-uefi
|
|
}
|
|
}
|