[devel] Как узнать, что пакет установлен из репозитория?
Anton Farygin
rider на basealt.ru
Вт Май 2 11:09:02 MSK 2023
On 02.05.2023 11:04, Anton Farygin wrote:
> On 02.05.2023 11:01, Dmitry V. Levin wrote:
>> On Tue, May 02, 2023 at 10:47:57AM +0300, Anton Farygin wrote:
>>> On 02.05.2023 10:46, Dmitry V. Levin wrote:
>>>> On Tue, May 02, 2023 at 08:31:43AM +0300, Danil Shein wrote:
>>>>> Мы сначала и использовали SHA1, но перешли на новую схему хэшей, т.к.
>>>>> пошли коллизии из-за того, что не всегда при пересборке пакетов
>>>>> меняется
>>>>> SHA1 хэш, а нам нужен уникальный признак каждого пакета.
>>>> Интересно, а что тогда меняется в пакете, если SHA1 в нём не меняется?
>>> sha1header только от заголовка. Насколько я помню подпись пакета не
>>> входит
>> Подпись, конечно, не входит, но какой смысл различать пакеты, у которых
>> sha1header совпадает? Даже сборочница считает такие пакеты
>> эквивалентными.
>>
> Они не могут быть эквивалентными, т.к. у них не совпадают контрольные
> суммы (md5sum и sha512)
>
> Когда мы перестаём их считать эквивалентными, то у нас начинают
> появляться дубли из-за изменённой sha512 и md5, которые используются в
> аптовых хешах и репозитории.
>
Непонятно написал. Если мы будем считать что пакеты с одинаковой
sha1header и разными md5sum/sha512 мы начинаем считать одинаковыми, то у
нас исчезает информация в базе о контрольной сумме файла с пакетом. А
эта контрольная сумма нужна для того, что бы быстро (на лету) сгенерить
хеши.
В общем мы пробовали, так не работает ;(
Подробная информация о списке рассылки Devel