|
|
|
# Copyright 1999-2021 Gentoo Authors
|
|
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
|
|
|
|
|
|
EAPI=7
|
|
|
|
inherit readme.gentoo-r1 toolchain-funcs
|
|
|
|
|
|
|
|
DESCRIPTION="Utility to detect other OSs on a set of drives"
|
|
|
|
HOMEPAGE="https://packages.debian.org/source/sid/os-prober"
|
|
|
|
SRC_URI="mirror://debian/pool/main/${PN::1}/${PN}/${PN}_${PV}.tar.xz"
|
|
|
|
|
|
|
|
LICENSE="GPL-3"
|
|
|
|
SLOT="0"
|
|
|
|
KEYWORDS="amd64 x86"
|
|
|
|
|
|
|
|
# grub-mount needed per bug #607518
|
|
|
|
RDEPEND="sys-boot/grub:2[mount]"
|
|
|
|
|
|
|
|
# bug 594250
|
|
|
|
QA_MULTILIB_PATHS="usr/lib/os-prober/.*"
|
|
|
|
|
|
|
|
PATCHES=(
|
|
|
|
"${FILESDIR}"/${PN}-1.76-exherbo.patch
|
|
|
|
"${FILESDIR}"/${PN}-1.78-btrfsfix.patch
|
|
|
|
)
|
|
|
|
|
|
|
|
DOC_CONTENTS="
|
|
|
|
If you intend for os-prober to detect versions of Windows installed on
|
|
|
|
NTFS-formatted partitions, your system must be capable of reading the
|
|
|
|
NTFS filesystem. One way to do this is by installing sys-fs/ntfs3g.
|
|
|
|
Also, in a chroot environment, it is necessary to bind mount /run/udev
|
|
|
|
(see https://wiki.gentoo.org/wiki/GRUB2#os-prober_and_UEFI_in_chroot).
|
|
|
|
|
|
|
|
NOTE: Since sys-boot/grub-2.06-rc1, grub-mkconfig disables os-prober by default.
|
|
|
|
To enable it, add GRUB_DISABLE_OS_PROBER=false to /etc/default/grub.
|
|
|
|
"
|
|
|
|
|
|
|
|
src_prepare() {
|
|
|
|
default
|
|
|
|
# use default GNU rules
|
|
|
|
rm Makefile || die 'rm Makefile failed'
|
|
|
|
}
|
|
|
|
|
|
|
|
src_compile() {
|
|
|
|
tc-export CC
|
|
|
|
emake newns
|
|
|
|
}
|
|
|
|
|
|
|
|
src_install() {
|
|
|
|
dobin os-prober linux-boot-prober
|
|
|
|
|
|
|
|
# Note: as no shared libraries are installed, /usr/lib is correct
|
|
|
|
exeinto /usr/lib/os-prober
|
|
|
|
doexe newns
|
|
|
|
|
|
|
|
insinto /usr/share/os-prober
|
|
|
|
doins common.sh
|
|
|
|
|
|
|
|
keepdir /var/lib/os-prober
|
|
|
|
|
|
|
|
local debarch=${ARCH%-*} dir
|
|
|
|
|
|
|
|
case ${debarch} in
|
|
|
|
amd64) debarch=x86 ;;
|
|
|
|
ppc|ppc64) debarch=powerpc ;;
|
|
|
|
esac
|
|
|
|
|
|
|
|
for dir in os-probes{,/mounted,/init} linux-boot-probes{,/mounted}; do
|
|
|
|
exeinto /usr/lib/${dir}
|
|
|
|
doexe ${dir}/common/*
|
|
|
|
if [[ -d ${dir}/${debarch} ]]; then
|
|
|
|
for exe in ${dir}/${debarch}/*; do
|
|
|
|
[[ ! -d "${exe}" ]] && doexe "${exe}"
|
|
|
|
done
|
|
|
|
fi
|
|
|
|
if [[ -d ${dir}/${debarch}/efi ]]; then
|
|
|
|
exeinto /usr/lib/${dir}/efi
|
|
|
|
doexe ${dir}/${debarch}/efi/*
|
|
|
|
fi
|
|
|
|
done
|
|
|
|
|
|
|
|
if use amd64 || use x86; then
|
|
|
|
exeinto /usr/lib/os-probes/mounted
|
|
|
|
doexe os-probes/mounted/powerpc/20macosx
|
|
|
|
fi
|
|
|
|
|
|
|
|
einstalldocs
|
|
|
|
dodoc debian/changelog
|
|
|
|
|
|
|
|
readme.gentoo_create_doc
|
|
|
|
}
|
|
|
|
|
|
|
|
pkg_postinst() {
|
|
|
|
readme.gentoo_print_elog
|
|
|
|
}
|