VS> Во-вторых и главных, просили дерево зависимостей, а не линейный список VS> зависимостей данного порта. Т.е. хотелось выяснить, какая непрямая зависимость VS> данного пакета вдруг требует пакета X в качестве своей зависимости. Часто ведь VS> есть скромный список из нескольких прямых зависимостей, а на поверку их VS> оказывается огромная гора непрямых.
Искать глазками в огромном дереве зависимостей - плохой способ, поэтому рисовать дерево зависимостей и избыточно, и не поможет.
Правильная формулировка задачи - половина решения.
Если на самом деле нужен путь по дереву зависимостей, начинающийся с одного заданного порта и заканчивающийся на другом заданном, то это вовсе не рисование дерева, а как раз таки линейный список и он делается довольно несложно: