-
Notifications
You must be signed in to change notification settings - Fork 2.1k
/
template
95 lines (83 loc) · 3.09 KB
/
template
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
# Template file for 'mkinitcpio'
pkgname=mkinitcpio
version=39.2
revision=1
build_style=gnu-makefile
hostmakedepends="asciidoc"
depends="busybox-static bsdtar bash zstd"
checkdepends="busybox-static bats-assert lz4 xz zstd lzop parallel ukify"
short_desc="Next generation of initramfs creation"
maintainer="classabbyamp <void@placeviolette.net>"
license="GPL-2.0-only"
homepage="https://gitlab.archlinux.org/archlinux/mkinitcpio/mkinitcpio"
changelog="https://gitlab.archlinux.org/archlinux/mkinitcpio/mkinitcpio/-/raw/master/CHANGELOG"
distfiles="https://sources.archlinux.org/other/mkinitcpio/mkinitcpio-${version}.tar.xz"
checksum=bc37195fab724c42e154a93e6ab797410161c07f223302898673c0e17afd8e0a
conf_files="/etc/mkinitcpio.conf"
alternatives="
initramfs:/etc/kernel.d/post-install/20-initramfs:/usr/libexec/mkinitcpio/kernel-hook-postinst
initramfs:/etc/kernel.d/post-remove/20-initramfs:/usr/libexec/mkinitcpio/kernel-hook-postrm
"
replaces="mkinitcpio-udev>=0"
make_dirs="/etc/mkinitcpio.conf.d 0755 root root"
pre_check() {
export BATS_ARGS="--filter-tags '!no_root'"
}
post_install() {
# Install udev rule used by both lvm2 and encrypt hook
vinstall ${FILESDIR}/11-dm-initramfs.rules 644 usr/lib/initcpio/udev
# Remove unneeded systemd bits
rm -r ${DESTDIR}/usr/lib/kernel
rm -r ${DESTDIR}/usr/lib/systemd
rm -r ${DESTDIR}/usr/lib/initcpio/install/sd*
rm -r ${DESTDIR}/usr/lib/initcpio/install/systemd
rm -r ${DESTDIR}/usr/lib/tmpfiles.d
# Remove patch remnants
rm "${DESTDIR}"/usr/lib/initcpio/{hooks,install}/*.orig
# Remove unneeded pacman hooks
rm -rf ${DESTDIR}/usr/share/libalpm
ln -s /usr/bin/busybox.static $DESTDIR/usr/lib/initcpio/busybox
vinstall ${FILESDIR}/kernel-hook-postinst 755 usr/libexec/mkinitcpio
vinstall ${FILESDIR}/kernel-hook-postrm 755 usr/libexec/mkinitcpio
}
mkinitcpio-lvm2_package() {
depends="${sourcepkg}>=${version}_${revision} lvm2 thin-provisioning-tools"
short_desc+=" - lvm2 support"
pkg_install() {
vinstall ${FILESDIR}/lvm2_hook 644 usr/lib/initcpio/hooks lvm2
vinstall ${FILESDIR}/69-dm-lvm-metad.rules 644 usr/lib/initcpio/udev
vmove usr/lib/initcpio/install/lvm2
}
}
mkinitcpio-encrypt_package() {
depends="${sourcepkg}>=${version}_${revision} cryptsetup"
short_desc+=" - encrypt support"
pkg_install() {
vmove usr/lib/initcpio/hooks/encrypt
vmove usr/lib/initcpio/install/encrypt
}
}
mkinitcpio-mdadm_package() {
depends="${sourcepkg}>=${version}_${revision} mdadm"
short_desc+=" - mdadm support"
pkg_install() {
vinstall ${FILESDIR}/mdadm_hook 644 usr/lib/initcpio/hooks mdadm
vinstall ${FILESDIR}/mdadm_install 644 usr/lib/initcpio/install mdadm
vmove usr/lib/initcpio/install/mdadm_udev
}
}
mkinitcpio-xbps_package() {
depends="${sourcepkg}>=${version}_${revision} xbps"
short_desc+=" - xbps support"
pkg_install() {
vinstall ${FILESDIR}/xbps_install 644 usr/lib/initcpio/install xbps
}
}
mkinitcpio-zfs_package() {
depends="${sourcepkg}>=${version}_${revision} zfs"
short_desc+=" - ZFS support"
pkg_install() {
vinstall ${FILESDIR}/zfs_hook 644 usr/lib/initcpio/hooks zfs
vinstall ${FILESDIR}/zfs_install 644 usr/lib/initcpio/install zfs
}
}