#!/bin/sh -ef
export LC_ALL=C

# entry ::= package dependency
# package ::= name#version
dump()
{
	cd "${workdir:?}"
	[ -f apt.conf ] || cat >apt.conf <<'__EOF__'
Dir::Etc::main "/dev/null";
Dir::Etc::parts "/var/empty";
__EOF__
#	apt-cache -c apt.conf unmet >apt-cache.unmet
	rm -rf aptbox
	mkaptbox -q --without-stuff --apt-config=apt.conf "."
	./aptbox/apt-cache unmet >apt-cache.unmet
	awk -f - apt-cache.unmet <<'__EOF__'
	/^Package/ {
		if (index($2, "#" $4) == 0)
			package = $2 "#" $4
		else
			package = $2
	}
	/Depends:/ {
		$1 = package
		sub(" ", "\t")
		print
	}
__EOF__
	cd -
}

# TODO?
opt_aptbox=1 opt_aptconf=
dump ${1+"$@"}

noun="unmet dependency"

fmt_total()
{
	n=`sort -u -k1,1 |wc -l`
	subj="$subj ($1/$n)"
	echo "Total $n $(count "$n" package) have $1 $2."
}
