
Я видел это:Удалить ненужные зависимости из Cygwin... но, похоже, этот скрипт предлагает только идентифицировать пакеты, от которых не зависит никакой другой пакет: что делает его очень умным скриптом, но, возможно, не всем, что вам нужно... и (как мне кажется) он затем будет включать ручное удаление пакетов, возможно, в несколько этапов (потому что каждое удаление может выявить дополнительные пакеты, требующие удаления). Также я просто хотел бы узнать, нет ли случайно более элегантного решения в Cygwin.
Я совершил ошибку, не скопировав сначала каталог Cygwin перед установкой make
. Я установил его только из-за небольшого конкретного эксперимента, который мне хотелось провести.
make
конечно же, это привело к установке всего языка C... увеличив размер моей установки Cygwin на 1,5 ГБ!
Удаление make
(сюрприз!) только удалило вишенку на вершине горы взбитых сливок ниже. Я понимаю, что удаление каждой зависимости, которая мне нужна, make
несомненно сломает все, что мне нужно... но есть ли шанс, что Cygwin ведет какой-то "журнал" того, что было установлено, когда и даже, возможно, почему... ? И затем, есть ли какой-то механизм для отмены недавнего действия установки?
позже
После полезного открытия Дэвида Постхилла о существовании журнала, к сожалению, обнаружились дополнительные сложности с зависимостями: как точно определить, что именно нужно удалить.
На самом деле нужна утилита для создания DAG установленных зависимостей, предположительно, объединенная с хронологией того, что было установлено, когда и почему... и утилита для выполнения всей работы по проверке и удалению!
Это меня немного удивляет, потому что, поправьте меня, если я ошибаюсь, менеджеры пакетов Linux действительно способны на такие вещи: вы устанавливаете пакет высокого уровня... и когда вы его удаляете, он также удаляет все зависимости, которых не было раньше и которые не нужны ни одному из последующих установленных пакетов... Похоже, что для Cygwin такого механизма не существует.