107 lines
3.9 KiB
Bash
107 lines
3.9 KiB
Bash
# Maintainer: Jesus E. <heckyel@riseup.net>
|
|
|
|
pkgname=refind
|
|
pkgver=0.12.0
|
|
_debver=0.12.0
|
|
_debrel=1
|
|
pkgrel=6
|
|
pkgdesc="An EFI boot manager"
|
|
arch=('i686' 'x86_64')
|
|
url="https://www.rodsbooks.com/refind/"
|
|
license=('GPL-3')
|
|
depends=('bash' 'dosfstools' 'efibootmgr' 'which')
|
|
makedepends=('gnu-efi-libs' 'quilt')
|
|
optdepends=('gptfdisk: for finding non-vfat ESP with refind-install'
|
|
'graphicsmagick: for refind-mkfont'
|
|
'libressl: for generating local certificates with refind-install'
|
|
'python: for refind-mkdefault'
|
|
'doas: for privilege elevation in refind-install and refind-mkdefault'
|
|
'sbsigntools: for EFI binary signing with refind-install')
|
|
# the drivers don't build with many jobs
|
|
options=(!makeflags)
|
|
source=("https://sourceforge.net/projects/refind/files/${pkgver}/${pkgname}-src-${pkgver}.tar.gz"
|
|
"https://deb.debian.org/debian/pool/main/r/refind/refind_$_debver-$_debrel.debian.tar.xz")
|
|
sha512sums=('3ade9642d7acf31097daa5308acb96a9fa3371314073b5a09601a886fc30444752efa08ed9fb35e421efb0b4eb9efbccd7b5c9bd6b3b9ed4af74c58f22a74729'
|
|
'2792d35cb75b42b98e0629112745f4a7833f0d19df45a90ddad6eb12ba521097086b4b9e94fd7f92116576cb2917c4f2d208f4ed2aa6477652f6016772f3c6d9')
|
|
case "${CARCH}" in
|
|
i686) _arch='ia32';;
|
|
x86_64) _arch='x64';;
|
|
esac
|
|
|
|
prepare() {
|
|
cd "$pkgname-$pkgver"
|
|
if [[ ${pkgver%.*} = ${_debver%.*} ]]; then
|
|
# Debian patches
|
|
export QUILT_PATCHES=debian/patches
|
|
export QUILT_REFRESH_ARGS='-p ab --no-timestamps --no-index'
|
|
export QUILT_DIFF_ARGS='--no-timestamps'
|
|
|
|
mv "$srcdir"/debian/patches debian
|
|
|
|
quilt push -av
|
|
fi
|
|
# removing the path prefix from the css reference, so that the css can live
|
|
# in the same directory
|
|
sed -e 's|../Styles/||g' -i "docs/${pkgname}/"*.html
|
|
# hardcode RefindDir, so that refind-install can find refind_x64.efi
|
|
sed -e 's|RefindDir=\"\$ThisDir/refind\"|RefindDir="/usr/share/refind/"|g' \
|
|
-i refind-install
|
|
}
|
|
|
|
build() {
|
|
cd "$pkgname-$pkgver"
|
|
make
|
|
make gptsync
|
|
make fs
|
|
}
|
|
|
|
package() {
|
|
cd "$pkgname-$pkgver"
|
|
# the install target calls refind-install, therefore we install things
|
|
# manually
|
|
|
|
# efi binaries
|
|
install -vDm 644 refind/*.efi -t "${pkgdir}/usr/share/${pkgname}"
|
|
install -vDm 644 drivers_*/*.efi \
|
|
-t "${pkgdir}/usr/share/refind/drivers_${_arch}"
|
|
install -vDm 644 gptsync/*.efi \
|
|
-t "${pkgdir}/usr/share/${pkgname}/tools_${_arch}"
|
|
# sample config
|
|
install -vDm 644 "${pkgname}.conf-sample" -t "${pkgdir}/usr/share/${pkgname}"
|
|
# keys
|
|
install -vDm 644 keys/*{cer,crt} -t "${pkgdir}/usr/share/${pkgname}/keys"
|
|
# keysdir
|
|
install -vdm 700 "${pkgdir}/etc/refind.d/keys"
|
|
# fonts
|
|
install -vDm 644 fonts/*.png \
|
|
-t "${pkgdir}/usr/share/${pkgname}/fonts"
|
|
# icons
|
|
install -vDm 644 icons/*.png \
|
|
-t "${pkgdir}/usr/share/${pkgname}/icons"
|
|
install -vDm 644 icons/svg/*.svg \
|
|
-t "${pkgdir}/usr/share/${pkgname}/icons/svg"
|
|
# scripts
|
|
install -vDm 755 {refind-{install,mkdefault},mkrlconf,mvrefind} \
|
|
-t "${pkgdir}/usr/sbin"
|
|
install -vDm 755 fonts/mkfont.sh "${pkgdir}/usr/sbin/${pkgname}-mkfont"
|
|
# man pages
|
|
install -vDm 644 docs/man/*.8 -t "${pkgdir}/usr/share/man/man8"
|
|
# docs
|
|
install -vDm 644 {CREDITS,NEWS,README}.txt \
|
|
-t "${pkgdir}/usr/share/doc/${pkgname}"
|
|
install -vDm 644 fonts/README.txt \
|
|
"${pkgdir}/usr/share/doc/${pkgname}/README.${pkgname}-mkfont.txt"
|
|
install -vDm 644 icons/README \
|
|
"${pkgdir}/usr/share/doc/${pkgname}/README.icons.txt"
|
|
install -vDm 644 keys/README.txt \
|
|
"${pkgdir}/usr/share/doc/${pkgname}/README.keys.txt"
|
|
install -vDm 644 "docs/${pkgname}/"*.{html,png,svg,txt} \
|
|
-t "${pkgdir}/usr/share/doc/${pkgname}/html"
|
|
install -vDm 644 docs/Styles/*.css \
|
|
-t "${pkgdir}/usr/share/doc/${pkgname}/html"
|
|
install -vDm 644 images/${pkgname}-banner.{png,svg} \
|
|
-t "${pkgdir}/usr/share/doc/${pkgname}/html"
|
|
# license
|
|
install -vDm 644 LICENSE.txt -t "${pkgdir}/usr/share/licenses/${pkgname}"
|
|
}
|