#!/bin/sh

profiledir="/var/lib/install3/"
datadir="/usr/share/alterator-pkg/"

groupsdir="$profiledir/groups"
listsdir="$profiledir/lists"
testsdir="$profiledir/tests"

. alterator-sh-functions

directory_awk()
{
    awk -f "$datadir/directory.awk" \
	-v lang="$in_language" \
	"$@"
}

print_required()
{
    if [ "$1" = "yes" ];then
	echo "#t"
    else
	echo "#f"
    fi
}

print_notfound()
{
    if [ "$1" = "notfound" ];then
	echo ""
    else
	echo "$1"
    fi
}

print_directory()
{
    local IFS='	'
    while read id required lists conflicts name; do
	printf '("%s" required %s lists "%s" conflicts "%s" label "%s")\n' \
	    "$id" \
	    "$(print_required "$required")" \
	    "$(print_notfound $lists)" \
	    "$(print_notfound $conflicts)" \
	    "$name"
    done
}

list_groups()
{
    directory_awk $groupsdir/*.directory |
	sort -r -g -k1,1 |
	print_directory
}

on_message()
{
	case "$in_action" in
	    list)
		echo '('
		list_groups
		echo ')'
		;;
	    *)
		echo '#f'
		;;
	esac
}

message_loop
