[devel] Как узнать, что пакет установлен из репозитория?

Danil Shein dshein на basealt.ru
Вт Май 2 08:31:43 MSK 2023


Мы сначала и использовали SHA1, но перешли на новую схему хэшей, т.к. 
пошли коллизии из-за того, что не всегда при пересборке пакетов меняется 
SHA1 хэш, а нам нужен уникальный признак каждого пакета.

В базе загружены все репозитории начиная с осени 2012 года

┌─pkgset_nodename──┬────min(pkgset_date)─┐
│ 4.0              │ 2012-08-09 00:00:00 │
│ 4.1              │ 2012-08-09 00:00:00 │
│ 5.0              │ 2012-08-09 00:00:00 │
│ 5.1              │ 2012-08-09 00:00:00 │
│ alt-education    │ 2016-09-05 16:10:25 │
│ alt-kworkstation │ 2016-11-22 16:11:19 │
│ alt-server       │ 2016-09-13 17:59:43 │
│ alt-server-v     │ 2019-12-13 17:03:27 │
│ alt-workstation  │ 2016-08-15 14:23:28 │
│ c6               │ 2013-06-28 00:00:00 │
│ c7               │ 2013-10-16 00:00:00 │
│ c7.1             │ 2018-01-25 00:00:00 │
│ c8               │ 2017-02-23 00:00:00 │
│ c8.1             │ 2018-01-26 00:00:00 │
│ c9f1             │ 2021-02-09 00:00:00 │
│ c9f2             │ 2021-04-12 00:00:00 │
│ c9m1             │ 2020-11-06 00:00:00 │
│ c9m2             │ 2021-04-07 00:00:00 │
│ cloud            │ 2021-08-13 01:54:11 │
│ p10              │ 2021-07-22 00:00:00 │
│ p10_e2k          │ 2021-12-14 00:00:00 │
│ p5               │ 2012-08-11 00:00:00 │
│ p6               │ 2012-08-09 00:00:00 │
│ p7               │ 2013-04-26 00:00:00 │
│ p8               │ 2016-04-14 00:00:00 │
│ p9               │ 2019-05-15 00:00:00 │
│ p9_e2k           │ 2021-11-19 00:00:00 │
│ p9_mipsel        │ 2021-11-16 00:00:00 │
│ sisyphus         │ 2012-08-09 00:00:00 │
│ sisyphus_e2k     │ 2021-11-22 00:00:00 │
│ sisyphus_mipsel  │ 2021-11-21 00:00:00 │
│ sisyphus_riscv64 │ 2021-11-21 00:00:00 │
│ slinux           │ 2017-07-07 18:12:01 │
│ t6               │ 2012-08-09 00:00:00 │
│ t7               │ 2013-10-16 00:00:00 │
└──────────────────┴─────────────────────┘


01.05.2023 15:38, Vitaly Lipatov пишет:
>
> Danil Shein писал(а) 28.4.23 9:03:
>
>> В проекте ALTRepoDB, часятми которого являются rdb.altlinux,org и 
>> packages.altlinux.org мы используем в качестве уникального 
>> идентификатора пакета хэш подсчитанный  на основе метаданных из 
>> хэдеров RPM пакета.
>>
>> При подсчёте хэша используется SHA1, MD5, GPG и buildtime - таким 
>> образом хэш меняется при любой пересборке пакета.
>>
> А почему недостаточно было просто SHA1 взять и не добавлять новый хэш?
>
>>
>> Подсчитать хэши легко можно и для установленных в системе пакетов 
>> используя данные из БД rpm.
>>
>> А получить информацию о пакете уже через АПИ rdb.altlinux.org.
>> При необходимости можно добавить специальный запрос для проверки 
>> списка хэшей пакетов на принадлежность дистрибутиву и конкретному бранчу.
>>
> Идея интересная и выглядит рабочей. Наверняка только она не признает 
> разные пакеты из старых репозиториев.
>
>
> -- 
> С уважением,
> Виталий Липатов,
> ALT Linux Team
>
> _______________________________________________
> Devel mailing list
> Devel на lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/devel
-- 

*Данил Шеин / Danil Shein*

dshein на altlinux.org
dshein на basealt.ru
----------- следующая часть -----------
Вложение в формате HTML было удалено...
URL: <http://lists.altlinux.org/pipermail/devel/attachments/20230502/4a65f36c/attachment-0001.html>


Подробная информация о списке рассылки Devel