<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<p><font face="DejaVu Sans">Мы сначала и использовали SHA1, но
перешли на новую схему хэшей, т.к. пошли коллизии из-за того,
что не всегда при пересборке пакетов меняется SHA1 хэш, а нам
нужен уникальный признак каждого пакета.<br>
</font></p>
<p><font face="DejaVu Sans">В базе загружены все репозитории начиная
с осени 2012 года<br>
<br>
<font face="monospace">┌─pkgset_nodename──┬────min(pkgset_date)─┐<br>
│ 4.0 │ 2012-08-09 00:00:00 │<br>
│ 4.1 │ 2012-08-09 00:00:00 │<br>
│ 5.0 │ 2012-08-09 00:00:00 │<br>
│ 5.1 │ 2012-08-09 00:00:00 │<br>
│ alt-education │ 2016-09-05 16:10:25 │<br>
│ alt-kworkstation │ 2016-11-22 16:11:19 │<br>
│ alt-server │ 2016-09-13 17:59:43 │<br>
│ alt-server-v │ 2019-12-13 17:03:27 │<br>
│ alt-workstation │ 2016-08-15 14:23:28 │<br>
│ c6 │ 2013-06-28 00:00:00 │<br>
│ c7 │ 2013-10-16 00:00:00 │<br>
│ c7.1 │ 2018-01-25 00:00:00 │<br>
│ c8 │ 2017-02-23 00:00:00 │<br>
│ c8.1 │ 2018-01-26 00:00:00 │<br>
│ c9f1 │ 2021-02-09 00:00:00 │<br>
│ c9f2 │ 2021-04-12 00:00:00 │<br>
│ c9m1 │ 2020-11-06 00:00:00 │<br>
│ c9m2 │ 2021-04-07 00:00:00 │<br>
│ cloud │ 2021-08-13 01:54:11 │<br>
│ p10 │ 2021-07-22 00:00:00 │<br>
│ p10_e2k │ 2021-12-14 00:00:00 │<br>
│ p5 │ 2012-08-11 00:00:00 │<br>
│ p6 │ 2012-08-09 00:00:00 │<br>
│ p7 │ 2013-04-26 00:00:00 │<br>
│ p8 │ 2016-04-14 00:00:00 │<br>
│ p9 │ 2019-05-15 00:00:00 │<br>
│ p9_e2k │ 2021-11-19 00:00:00 │<br>
│ p9_mipsel │ 2021-11-16 00:00:00 │<br>
│ sisyphus │ 2012-08-09 00:00:00 │<br>
│ sisyphus_e2k │ 2021-11-22 00:00:00 │<br>
│ sisyphus_mipsel │ 2021-11-21 00:00:00 │<br>
│ sisyphus_riscv64 │ 2021-11-21 00:00:00 │<br>
│ slinux │ 2017-07-07 18:12:01 │<br>
│ t6 │ 2012-08-09 00:00:00 │<br>
│ t7 │ 2013-10-16 00:00:00 │<br>
└──────────────────┴─────────────────────┘</font><br>
<br>
</font></p>
<p><br>
</p>
<div class="moz-cite-prefix">01.05.2023 15:38, Vitaly Lipatov пишет:<br>
</div>
<blockquote type="cite"
cite="mid:dcefb6478765118849ae970a531681ce@altlinux.ru">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<p id="reply-intro">Danil Shein писал(а) 28.4.23 9:03:</p>
<blockquote type="cite" style="padding: 0 0.4em; border-left:
#1010ff 2px solid; margin: 0">
<div id="replybody1">
<div>
<p><span style="font-family: DejaVu Sans;">В проекте
ALTRepoDB, часятми которого являются rdb.altlinux,org и
packages.altlinux.org мы используем в качестве
уникального идентификатора пакета хэш подсчитанный на
основе метаданных из хэдеров RPM пакета.<br>
</span></p>
<p><span style="font-family: DejaVu Sans;">При подсчёте хэша
используется SHA1, MD5, GPG и buildtime - таким образом
хэш меняется при любой пересборке пакета.</span></p>
</div>
</div>
</blockquote>
<div id="replybody1">
<div>
<p><span style="font-family: DejaVu Sans;">А почему
недостаточно было просто SHA1 взять и не добавлять новый
хэш?</span></p>
</div>
</div>
<blockquote type="cite" style="padding: 0 0.4em; border-left:
#1010ff 2px solid; margin: 0">
<div id="replybody1">
<div>
<p><span style="font-family: DejaVu Sans;"><br>
Подсчитать хэши легко можно и для установленных в
системе пакетов используя данные из БД rpm.</span></p>
<p><span style="font-family: DejaVu Sans;">А получить
информацию о пакете уже через АПИ rdb.altlinux.org.<br>
При необходимости можно добавить специальный запрос для
проверки списка хэшей пакетов на принадлежность
дистрибутиву и конкретному бранчу.</span></p>
</div>
</div>
</blockquote>
<p>Идея интересная и выглядит рабочей. Наверняка только она не
признает разные пакеты из старых репозиториев.</p>
<p><br>
</p>
<div id="signature">-- <br>
<div class="pre" style="margin: 0; padding: 0; font-family:
monospace">С уважением,<br>
Виталий Липатов,<br>
ALT Linux Team</div>
</div>
<br>
<fieldset class="moz-mime-attachment-header"></fieldset>
<pre class="moz-quote-pre" wrap="">_______________________________________________
Devel mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Devel@lists.altlinux.org">Devel@lists.altlinux.org</a>
<a class="moz-txt-link-freetext" href="https://lists.altlinux.org/mailman/listinfo/devel">https://lists.altlinux.org/mailman/listinfo/devel</a></pre>
</blockquote>
<div class="moz-signature">-- <br>
<pre style="color:gray;"><b>Данил Шеин / Danil Shein</b>
<a class="moz-txt-link-abbreviated" href="mailto:dshein@altlinux.org">dshein@altlinux.org</a>
<a class="moz-txt-link-abbreviated" href="mailto:dshein@basealt.ru">dshein@basealt.ru</a>
</pre>
</div>
</body>
</html>