[devel] hasher: пакеты, установленные по зависимостям

Антон Мидюков midyukov-anton на ya.ru
Пт Окт 25 16:13:01 MSK 2024


25.10.2024 15:33, Alexey Gladkov пишет:
> On Fri, Oct 25, 2024 at 02:44:55PM +0300, Антон Мидюков wrote:
>> 25.10.2024 14:31, Alexey Gladkov пишет:
>>> On Fri, Oct 25, 2024 at 01:06:08PM +0300, Антон Мидюков wrote:
>>>>> Да как раз можем. В mki-image-install мы вычисляем список пакетов, который
>>>>> потом передаётся hsh-install.
>>>>>
>>>>
>>>> Есть проблема. На вход подаются виртуальные пакеты и пакеты вида "^kernel-(image|modules-())-(std-def)$",
>>>> поэтому простое вычитание пакетов для установки из установленных не даёт нужный результат.
>>>> Так что я не знаю как с этим быть.
>>>
>>> В mki-image-install есть вот такой код:
>>>
>>> mki_list_pkgs "$@" |
>>> 	xargs -r env -i PATH="$PATH" hsh-install $hasher_args -- "$dir"
>>>
>>> Функция mki_list_pkgs() разворачивает паттерны (если они есть) в список.
>>> Вывод этой утилиты нужно сохранить во временный файл и после hsh-install
>>> скопировать список в образ и выполнить apt-mark в image.
>>>
>>
>> Я использовал mki_list_pkgs "$@" для получения входного списка.
>> Но не развернулись записи вида "^kernel-(image|modules-())-(std-def)$".
> 
> Чтобы такое развернуть можно попробовать использовать tools/mki-expand-pkgs.
> 

Спасибо. Помог mki-expand-pkgs regexp

>> И всё равно остаётся проблема виртуальных пакетов, которых нет в репозитории в виде rpm.
>> Пакета, который устанавливается по этому провайдсу, не будет во входном списке.
> 
> Можно попробовать сделать аналог mki-expand-pkgs и проверять по
> "$aptbox/var/cache/pkgnames" все имена из списка. Это должно отфильтровать
> виртуальные пакеты.
> 

Виртуальные пакеты нужно не отфильтровать, а заменить на те, что будут выбраны при установке.
Чтобы их не пометило как auto.

-- 
С уважением, Антон Мидюков <antohami на altlinux.org>


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