Как APT выбирает конкретный пакет для установки, чтобы предоставить виртуальный пакет, необходимый в качестве зависимости?

Например, awk – это виртуальный пакет, предоставляемый original-awk , mawk и gawk .

Попытка установить его напрямую дает:

 Reading package lists... Done Building dependency tree Reading state information... Done Package awk is a virtual package provided by: original-awk:i386 2012-12-20-4 mawk:i386 1.3.3-17ubuntu2 gawk:i386 1:4.1.1+dfsg-1 original-awk 2012-12-20-4 mawk 1.3.3-17ubuntu2 gawk 1:4.1.1+dfsg-1 You should explicitly select one to install. E: Package 'awk' has no installation candidate 

Однако многие виртуальные пакеты необходимы в качестве зависимостей по установленным по умолчанию пакетам, например, самому awk нужны base-files , которые проверяют журналы APT, а также набор других пакетов через apt-get --yes ; каким-то образом APT заканчивает выбор одного из трех автоматически (я уверен, что это mawk , но это не вопрос).

Как APT выбирает конкретный пакет для установки в этом случае?