#!/usr/bin/bash

if [[ ! -d /sys/firmware/efi/ ]]; then
    exit 0
fi

if [[ $# < 2 ]]; then
    exit 0
fi

. /etc/os-release
DISTRO=$(echo ${ID} | sed -e 's/rhel/redhat/' -e 's/\"//')

FROM_DIR=${1}
EFI_DIR=${2}

if [[ -f /usr/lib/bootloader/bl.cfg ]]; then
    . /usr/lib/bootloader/bl.cfg
fi

if [[ -d ${EFI_DIR} ]]; then
    efibootmgr | grep BootNext
    status=$(echo $?)
    if [[ $status -eq 1 ]]; then
        NEW_BOOT_ENTRY=$(efibootmgr | grep "${NAME}_new" | cut -d'*' -f1)
        if [[ -z ${NEW_BOOT_ENTRY} ]]; then
            create_boot_path
            NEW_BOOT_ENTRY=$(efibootmgr | grep "${NAME}_new" | cut -d'*' -f1)
        fi 
        NEW_BOOT_ENTRY=$(echo $NEW_BOOT_ENTRY | sed 's/Boot//')
        efibootmgr -n $NEW_BOOT_ENTRY
    fi
fi

cp -R -f -Z ${FROM_DIR}/* ${EFI_DIR}/. || :
