On Wed, Sep 16, 2009 at 09:32:06PM +0400, Денис Смирнов wrote: > >> Алгоритм следующий: > >> а) удалить все дупы по srpm; > >> б) удалить все бинарные пакеты, для которых были убиты srpm; > >> в) если после этого остались дупы по бинарным пакетам -- удалить > >> соответствующие srpm и повторить цикл > AT> Если удалять таким образом дупы в оверлее (после сборки каждого пакета), > AT> то нужно таким же образом удалять дупы в основном репозитарии (после > AT> сборки каждого пакета). Это можно выразить так: hsh каждый раз должен > AT> выполняться на репозитарии строго без дупов. > AT> Теперь представь себе что был один исходный пакет и апстрим его попилил > AT> на два исходных пакета. Пусть например был исходный пакет xorg из > AT> которого собиралась кучка пакетов типа libX11 а теперь ты залил пакет > AT> libX11 который собирается сам из себя. Теперь по пункту "б" надо делать > AT> строгое замещение: выкинуть все иксы, а добавить только libX11. Если мы > AT> так сделаем (между сборкой первого и второго пакета), то с промежуточным > AT> репозитарием произойдёт что-то очень нехорошее: в промежуточном > AT> репозитарии появится слишком много анметов. Но про это лучше не думать! > > Гм. Логично. То есть как только мы вводим понятие "удаление пакета внутри > таска, который мы собирали внутри этого же таска", или когда выполняется > замещение пакетов внутри таска -- в этот момент использование оверлея > порождает слишком много side effects и требуется отказаться от оверлея и > сформировать новый репозиторий. С одной стороны никто не может запретить нам плюхать что угодно куда угодно. (Но это как бы глупо.) С другой стороны мы должны думать, что от чего зависит, и в какой степени мы умеем это воспроизвести. Или же там значит какие-то тайны Божьи происходят, которые пробовать воспроизвести это грех. Я считаю что говорить в терминах воспроизводства результата это неплохая отправная точка для разговора о пакетах вообще. > Да, тогда моя идея не работает :(