[devel] rpm -qf horror
Alexey Tourbin
=?iso-8859-1?q?at_=CE=C1_altlinux=2Eru?=
Пт Фев 29 00:00:16 MSK 2008
On Mon, Feb 25, 2008 at 11:57:09PM +0600, Mikhail Gusarov wrote:
> В главных ролях:
> warning: file /usr/lib/perl5/i386-linux/auto/I18N is not owned by any package
> warning: file /usr/lib/X11 is not owned by any package
Семантика владения каталогами -- довольно тонкая тема.
Бесхозные каталоги пока предлагаю считать не очень грубой ошибкой.
Первую ошибку исправить просто (и я её исправлю), вторую -- сложнее.
Кому должен принадлежать каталог /usr/lib/X11?
Существуют ещё более неприятные случаи. Дело в том, что есть две разные
"иерархии": 1) иерархия файловой системы; 2) частичная упорядоченность
пакетов по зависимостям между ними. Я с ходу не могу дать
математического обоснования, но мне ясно, что эти две иерархии не всегда
хорошо "накладываются" друг на друга.
Я об этом ранее писал. В принципе, можно последовательно
(автоматически) проводить в жизнь максиму: каждый файл (и вообще, путь)
ТРЕБУЕТ родительский каталог, в котором он запакован. Так вот, если
бескомпромиссно проводить в жизнь эту максиму, то могут получиться
слишком жесткие и "неприятные" зависимости.
Пример: часть документации пакуется в каталог /usr/share/gtk-doc/.
Но этот каталог принадлежит пакету gtk-doc, который используется только
для СБОРКИ такого рода документации. Значит, если следовать максиме
иерархии фс, то мы ПОРТИМ топологию зависимостей, то есть у пакетов
с собранной документацией появится зависимость на СБОРОЧНЫЙ инструмент
(другими словами, у не-*-devel пакета появится зависимость на условно
*-devel пакет; а упорядоченность №2, в частности, состоит в том, что
любой *-devel пакет БОЛЬШЕ любого не-*-devel пакета).
Типичное решение проблемы с /usr/share/gtk-doc/ -- отпилить пакет
gtk-doc-base, который единственное что будет содержать -- это каталог
/usr/share/gtk-doc/. Но это слишком искусственное решение --
согласование иерархий №1 и №2 требует плодить дополнительные сущности
(пакеты-фантомы). Not fun.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип : application/pgp-signature
Размер : 197 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20080229/b6913b8b/attachment-0002.bin>
Подробная информация о списке рассылки Devel