Небольшая программулина, не столько полезная, сколько забавная, представляет графически все установленные в системе пакеты в виде «облака» со связями между ними (по зависимостям). Лучше один раз увидеть:
Предполагается, что это можно использовать для отслеживания, какие пакеты занимают слишком много места в системе и решения, не пора бы что-нибудь удалить. Но, честно говоря, слабо себе представляю, как реально с этим можно работать.
Потому что это просто рисунок, а не динамичная интерактивная схема, на которой можно было бы что-то разглядеть и повертеть. Рисунок, правда, довольно интересный, но всё же программка, по-моему, больше для забавы.
Работает программа из командной строки. Варианты использования следующие:
- Сразу после установки можно просто написать там packgraph и получить в домашней директории графический файл со схемой из всех установленных в системе пакетов.
Если установлен imagemagick либо Inkscape, то помимо файла svg, рядом создастся файл png. Чтобы получить цветовое решение, отличное от дефолтного, нужно использовать опции — об этом попозже. - Если выполнить pacgraph-tk, запустится простая графическая программка, состоящая просто из окна, где построится такая же схема, но постепенно прорисовываясь. А затем её можно будет тягать мышкой и приближать/удалять колёсиком, а если навести курсор на какой-либо пакет, то его зависимости будут выделены.
Да, небольшая интерактивность, но удобства она почти не добавляет, и, к сожалению, не предполагает возможности поменять оформление или использовать какие-нибудь ещё опции. - Можно получить схему, состоящую только из зависимостей конкретного пакета из репозиториев, даже неустановленного. Для этого нужно использовать опцию -m (—mode) со значением arch-repo. Например, для libreoffice:
- Ну и есть ещё возможность, просто вывести в консоль отсортированный по размеру список установленных пакетов (с указанием размера) посредством команды pacgraph -c.
Теперь об опциях:
- Можно принудительно запретить создавать файл png, выполнив pacgraph -s.
- Чтобы сохранить файл с именем, отличным от дефолтного (pacgraph), нужно использовать опцию -f с желаемым именем после неё.
- Программа может работать не только с арчевскими пакетами, но в системах debian и red hat и основанных на них — для этого используется опция -m (—mode) и значения соответственно debian и redhat.
- Опция -n (—no-compression) покажет все зависимости полностью. Дело в том, что по-умолчанию, если пакет A зависит от пакета B, а тот зависит от пакета C и никаких промежуточных ветвлений нет, то на графике эта цепочка будет сокращена и покажет только что пакет A зависит от пакета C.
Отдельно опишу опции, позволяющие раскрасить картинку в свои цвета. Выше есть скриншот дефолтных расцветок, каждый цвет, который хочется сделать отличным от заданного по-умолчания, задаётся отдельной опцией в строке запуска:
- -b Цвет фона
- -l Цвет связей между пакетами
- -t Цвет освновных пакетов (не зависимостей)
- -d Цвет пакетов, которые являются зависимостями
- -i Три цвета — для выбранного пакета, его зависимостей и пакетов, для которых он является зависимостью
- -p Задаёт используемые размеры шрифта от самого маленького до самого большого (по-умолчанию от 10 до 100)
Цвета можно задавать как названиями, так и шестнадцатеричными значениями. Чтобы сразу было всё понятно, пример для самого первого скриншота:
pacgraph -b "#203D5E" -l "#5CC037" -t "#FFE64A" -d "#4ACCFF" -i "red" "#9E00FF" "#0031FF" wine -p 15 98 -f pacgraph_wine |
Основные пакеты жёлтые, зависимости голубые, выделен пакет wine (красный цвет), его зависимости фиолетовые, пакеты, для который он необходим синие (можно разглядеть wine_gecko и winetricks).
Кстати, очертания рисунка каждый раз разные. Ну и в дополнение:
сайт — http://www.kmkeen.com/pacgraph/
и обсуждение на форуме Archlinux (с участием автора): тык (на английском, конечно).
Ага, отличная штука. Использовал, когда освобождал место на eee pc с маленьким диском.
Что-то faenza жирная на рисунке.