# Maintainer: Jesus E. 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}" }