#!/bin/bash
# Created by Tobias Powalowski <tpowa@archlinux.org>

build ()
{
    apps="/usr/bin/grub-editenv /usr/bin/grub-fstest /usr/bin/grub-menulst2cfg /usr/bin/grub-mkfont \
          /usr/bin/grub-mkimage /usr/bin/grub-mklayout /usr/bin/grub-mkpasswd-pbkdf2 /usr/bin/grub-mkrelpath \
	  /usr/bin/grub-mount /usr/bin/grub-ntldr-img /usr/bin/grub-script-check /usr/sbin/grub-bios-setup \
	  /usr/sbin/grub-ofpathname /usr/sbin/grub-probe"
    for i in $apps; do
        add_binary "$i"
    done
    appfiles="/usr/bin/grub-kbdcomp /usr/bin/grub-mkrescue /usr/bin/grub-mkstandalone /usr/sbin/grub-install \
              /usr/sbin/grub-mkconfig /usr/sbin/grub-mknetdir /usr/sbin/grub-reboot /usr/sbin/grub-set-default"
    for i in $appfiles; do
        add_file "$i"
    done    
    ## add grub(2) config file
    add_file "/boot/grub/grub.cfg"
    
    ## add grub-mkconfig helper scripts
    add_file "/usr/share/grub/grub-mkconfig_lib"
    add_file "/etc/default/grub"
    
    for i in $(find /etc/grub.d/* ! -type d); do
        add_file "$i"
    done
    
    # add bios and x86_64-efi files
    # i386 efi is very rare. They are only used in old Macs, 
    # in which the kernel itself has issues booting in EFI mode
    add_full_dir /usr/lib/grub/i386-pc  
    add_full_dir /usr/lib/grub/x86_64-efi
    
    ## add grub(2) unicode font file
    add_file "/usr/share/grub/unicode.pf2"
    
    ## add grub(2) en.mo locale file
    add_file "/usr/share/locale/en@quot/LC_MESSAGES/grub.mo" "/boot/grub/locale/en.mo"
    
}

help ()
{
cat<<HELPEOF
  This hook includes grub(2) on an arch boot image.
HELPEOF
}

