3rdparty/os_probe: First 83haiku with Package Manager support.

Change-Id: I9c660b1569b5439f2cd9088fde4e96512e7817d8
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4496
Reviewed-by: Alexander G. M. Smith <agmsmith@ncf.ca>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
This commit is contained in:
Alexander G. M. Smith 2021-09-27 16:51:21 -04:00 committed by Adrien Destugues
parent 0235470472
commit 3958b5545b

View File

@ -13,17 +13,33 @@ case "$type" in
*) debug "$partition is not a BeFS partition: exiting"; exit 1 ;;
esac
if head -c 512 "$partition" | grep -aqs "system.haiku_loader"; then
if head -c 512 "$partition" | grep -qs 'system.*haiku_loader'; then
debug "Stage 1 bootloader found"
else
debug "Stage 1 bootloader not found: exiting"
exit 1
fi
if system="$(item_in_dir "system" "$mpoint")" &&
system="$(item_in_dir "system" "$mpoint")"
packages="$(item_in_dir "packages" "$mpoint/$system")"
found=
if [ "$system" != "" ] &&
item_in_dir -q "haiku_loader" "$mpoint/$system" &&
(item_in_dir -q "kernel_x86" "$mpoint/$system" ||
item_in_dir -q "kernel_x86_64" "$mpoint/$system")
then
found=1
fi
if [ "$found" = "" ] && [ "$packages" != "" ] &&
item_in_dir -q "haiku_loader\-.*" "$mpoint/$system/$packages" &&
(item_in_dir -q "haiku_x86\-.*" "$mpoint/$system/$packages" ||
item_in_dir -q "haiku_x86_64\-.*" "$mpoint/$system/$packages")
then
found=1
fi
if [ "$found" != "" ]
then
debug "Stage 2 bootloader and kernel found"
label="$(count_next_label Haiku)"