#!/bin/sh

## Copyright (C) 2006-2014 Daniel Baumann <mail@daniel-baumann.ch>
##
## This program comes with ABSOLUTELY NO WARRANTY; for details see COPYING.
## This is free software, and you are welcome to redistribute it
## under certain conditions; see COPYING for details.


set -e

. /usr/share/extlinux/extlinux-update.sh

# Checking extlinux directory
echo -n "P: Checking for EXTLINUX directory..."

# Creating extlinux directory
if [ ! -e "${_EXTLINUX_DIRECTORY}" ]
then
	echo " not found."

	echo -n "P: Creating EXTLINUX directory..."
	mkdir -p "${_EXTLINUX_DIRECTORY}"
	echo " done: ${_EXTLINUX_DIRECTORY}"
else
	echo " found."
fi

# Setting defaults
EXTLINUX_ALTERNATIVES="${EXTLINUX_ALTERNATIVES:-default recovery}"
EXTLINUX_DEFAULT="${EXTLINUX_DEFAULT:-l0}"
EXTLINUX_ENTRIES="${EXTLINUX_ENTRIES:-all}"
EXTLINUX_MEMDISK="${EXTLINUX_MEMDISK:-true}"
EXTLINUX_MEMDISK_DIRECTORY="${EXTLINXU_MEMDISK_DIRECTORY:-/boot}"

if [ -z "${EXTLINUX_MENU_LABEL}" ]
then
	if [ -x "$(which lsb_release 2>/dev/null)" ]
	then
		EXTLINUX_MENU_LABEL="$(lsb_release -i -s) GNU/Linux, kernel"
	else
		EXTLINUX_MENU_LABEL="Debian GNU/Linux, kernel"
	fi
fi

EXTLINUX_OS_PROBER="${EXTLINUX_OS_PROBER:-true}"
EXTLINUX_PARAMETERS="${EXTLINUX_PARAMETERS:-ro quiet}"

if [ -z "${EXTLINUX_ROOT}" ]
then
	# Find root partition
	while read _LINE
	do

read _FS_SPEC _FS_FILE _FS_VFSTYPE _FS_MNTOPS _FS_FREQ _FS_PASSNO << EOF
${_LINE}
EOF

		if [ "${_FS_SPEC}" != "#" ] && [ "${_FS_FILE}" = "/" ]
		then
			EXTLINUX_ROOT="root=${_FS_SPEC}"
			break
		fi
	done < /etc/fstab
fi

if [ -z "${EXTLINUX_THEME}" ]
then
	# Using default menu if available
	if [ -e /usr/share/EXTLINUX/themes/default ]
	then
		EXTLINUX_THEME="default"
	else
		EXTLINUX_THEME="none"
	fi
fi

EXTLINUX_TIMEOUT="${EXTLINUX_TIMEOUT:-50}"

# Writing new default file
cat > "/etc/default/extlinux" << EOF
## /etc/default/extlinux - configuration file for extlinux-update(8)

EXTLINUX_UPDATE="${EXTLINUX_UPDATE}"

EXTLINUX_ALTERNATIVES="${EXTLINUX_ALTERNATIVES}"
EXTLINUX_DEFAULT="${EXTLINUX_DEFAULT}"
EXTLINUX_ENTRIES="${EXTLINUX_ENTRIES}"
EXTLINUX_MEMDISK="${EXTLINUX_MEMDISK}"
EXTLINUX_MEMDISK_DIRECTORY="${EXTLINUX_MEMDISK_DIRECTORY}"
EXTLINUX_MENU_LABEL="${EXTLINUX_MENU_LABEL}"
EXTLINUX_OS_PROBER="${EXTLINUX_OS_PROBER}"
EXTLINUX_PARAMETERS="$(echo -n ${EXTLINUX_PARAMETERS} | sed -e 's|\"|\\\"|g')"
EXTLINUX_ROOT="${EXTLINUX_ROOT}"
EXTLINUX_THEME="${EXTLINUX_THEME}"
EXTLINUX_TIMEOUT="${EXTLINUX_TIMEOUT}"
EOF
