flash_instructions() {
  echo "# dd if=/boot/MLO of=/dev/mmcblk0 count=1 seek=1 conv=notrunc bs=128k"
  echo "# dd if=/boot/u-boot.img of=/dev/mmcblk0 count=2 seek=1 conv=notrunc bs=384k"
  echo "# grub-install /dev/mmcblk0"
  echo "# grub-mkconfig -o /boot/grub/grub.cfg"
}

flash_uboot() {
  root=$(mount | awk '/ on \/ / { print $1; }')
  if [[ $root =~ ^/dev/mmcblk.*$ ]]; then
    root=${root:0:12}
    echo "A new U-Boot version needs to be flashed onto $root."
    echo "Do this now? [y|N]"
    read -r shouldwe
    if [[ $shouldwe =~ ^([yY][eE][sS]|[yY])$ ]]; then
      dd if=/boot/MLO of=$root count=1 seek=1 conv=notrunc bs=128k
      dd if=/boot/u-boot.img of=$root count=2 seek=1 conv=notrunc bs=384k
      grub-install /dev/mmcblk0
      grub-mkconfig -o /boot/grub/grub.cfg
    else
      echo "You can do this later by running:"
      flash_instructions
    fi
  else
    echo "Flash the new U-Boot version onto your boot device. For example:"
    flash_instructions
  fi
}

post_install() {
  flash_uboot
}

post_upgrade() {
  flash_uboot
}