gensrclist не может пропатчить srclist, если поменялся последний пакет. Пример из Сизифа: https://git.altlinux.org/tasks/328091/logs/events.1.1.log gensrclist: unexpected header zzuf-0.15-alt1_10.src.rpm in package from stdin genbasedir: Error executing gensrclist. gensrclist: unexpected header zzuf-0.15-alt1_10.src.rpm in package from stdin genbasedir: Error executing gensrclist. gensrclist: unexpected header zzuf-0.15-alt1_10.src.rpm in package from stdin genbasedir: Error executing gensrclist. gensrclist: unexpected header zzuf-0.15-alt1_10.src.rpm in package from stdin genbasedir: Error executing gensrclist. gensrclist: unexpected header zzuf-0.15-alt1_10.src.rpm in package from stdin genbasedir: Error executing gensrclist.
На первый взгляд, происходит следующее: если исходный srclist закончился, то h будет NULL, и old_srpm останется с предыдущей итерации. https://git.altlinux.org/gears/a/apt-repo-tools.git?p=apt-repo-tools.git;a=blob;f=src/gensrclist.cc;h=d959f645cdc4d9fbac007de3c516f51e2226c05e;hb=3e38840b7626c42da5dd6a67bf1ba2352825284a#l383 Вот в этом условии нужно 'else old_srpm = NULL', например. Проверять это я, конечно, не буду.
Кстати, выявлено при попытке пересобрать zziplib под loongarch64. Кстати #2, там ещё fgrep'ы в genbasedir замечены, замените пожалуйста на grep -F пока будете мимо пробегать.
(In reply to Ivan A. Melnikov from comment #1) > Проверять это я, конечно, не буду. А нет, всё-таки буду. Собранный так же, как и в задаче 328416, apt-repo-tools успешно собрал zziplib (который по прежнему там последний) на loongarch64. Please review and approve task 328416.
Что-то пошло не так с changelog в плане автозакрытием бага, а так ОК.
(In reply to Gleb F-Malinovskiy from comment #4) > Что-то пошло не так с changelog в плане автозакрытием бага, а так ОК. Поправил, задача 328434.
apt-repo-tools-0.8.1-alt1 -> sisyphus: Thu Aug 31 2023 Ivan A. Melnikov <iv@altlinux> 0.8.1-alt1 - gensrclist: fix patching the last record (closes: #47368) - genbasedir: replace deprecated fgrep with grep -F