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.