При выполнении # apt-get install emacs24-X11 получаю Следующие пакеты имеют неудовлетворенные зависимости: emacs24-X11: Для установки требует: emacs24-common (= 24.5-alt16) E: Извините, `битые' пакеты Если emacs24-common установить "вручную", emacs24-X11 (и *-gtk3, который мне и был нужен) устанавливается. PS. Графический интерфейс установки пакетов вообще зависает из-за такой ситуации.
Очень похоже на проблему с новыми жёсткими зависимостями, конечно, но дело может быть и в другом. (Требуется проверить. Вероятно, у этого пакета ещё нет новых жёстких зависимостей...)
(In reply to comment #1) > Очень похоже на проблему с новыми жёсткими зависимостями, конечно, но дело > может быть и в другом. (Требуется проверить. Вероятно, у этого пакета ещё нет > новых жёстких зависимостей...) У этого пакета нет новых жёстких зависимостей.
Ну примерно понятно, как это происходит, и что бы я исправил в пакетах emacs??-*. Хотя это можно считать ошибкой apt, но можно облегчить apt-у жизнь, поправив пакеты emacs??-* Как это происходит: $ hsh --ini --apt-config=/home/imz/.hasher/p8/apt.conf --without-stuff ~/hasher/ $ ~/hasher/aptbox/apt-get install emacs24-X11 ... MI2c: mark emacs24-X11 MI2c: target emacs-X11-program MI2c: mark emacs25-X11-motif MI2c: target emacs25-X11 MI2c: mark emacs25-X11 MI2c: target emacs25-common MI2c: mark emacs25-common MI2c: target emacs-speedbar AMB MI2c: target emacs-tramp AMB MI2c: target emacs25-gnus MI2c: mark emacs25-gnus MI2c: delete emacs24-gnus MI2c: delete emacs24-common MI2c: delete emacs24-X11 ... Во-первых, я бы уж поставил Requires и Provides на emacs24-X11-program (с номером версии!). Во-вторых, я бы убрал никому не нужные и вредные Provides (с не тем номером версии) из всех пакетов emacs??-*. Для чего это кто-то ставил?.. Наверное, по образцу Obsoletes: XXX Provides: XXX , чтобы новая версия заменяла у людей старую. Оставьте лучше только Obsoletes, если хотите. Provides такой не нужен для работы apt-а AFAIU, а в таком случае только вреден. (Наверное, этот образец хорош, когда не хочется нарушать зависимые пакеты на старое имя, которым не важно, какой это пакет, но у нас таких не ожидается для emacs24-common: им либо именно эта версия нужна, либо у них напсано другое в Requires.) Например: > Обновлено Владимир Селезнев около 6 часа назад > $ rpm -qR emacs24-X11 > emacs24-common = 24.5-alt16 > emacs-X11-program ^^^^^^^^^^^^^^^^ Уточнить! > rpmlib(PayloadIsLzma) > $ rpm -q --provides emacs24-common > /usr/lib/emacs > emacs-common = 24.5-alt16 > emacs21-common = 24.5-alt16 Убрать! > emacs22-common = 24.5-alt16 Убрать! > emacs23-common = 24.5-alt16 Убрать! > emacs-ses = 24.5-alt16 > emacs-url = 24.5-alt16 > emacs24-common = 24.5-alt16 И убрать такие Provides из всех возможных emacs??-* во всех бранчах.
В чём рабость obsoletes я тоже не понимаю, кстати, если вся эта схема с номером версии в имени пакета была задумана именно для того, чтобы люди могли одновременно иметь несколько версий Emacs и пользоваться привычной им. Obsoletes, получается, тоже надо ото всюду убрать.
Данная проблема решена в p9, в p8 обновление такого ключего пакета как apt практически невозможно.