Re: pkg-oss - каков статус этого проекта?

Alex Kubyshkin i.am.glint на gmail.com
Вт Янв 24 20:31:59 UTC 2023


Добрый день, Константин!

Спасибо за оперативный ответ!

>> Вопрос возник в связи с тем, что при попытке использовать его для многих docker images, которые по идее должны поддерживаться, возникают различные ошибки при работе скрипта build_module.sh.
>> 
>> Пробовал images:
>> almalinux:8
>> almalinux:9
>> centos:8
>> registry.access.redhat.com/ubi8/ubi:8.7
>> rockylinux:8
>> rockylinux:9
>> 
>> Воспроизвести можно так:
>> docker run --rm rockylinux:9 bash -c 'yum install -y wget && wget https://hg.nginx.org/pkg-oss/raw-file/default/build_module.sh && bash build_module.sh -y -r 20 https://github.com/arut/nginx-rtmp-module.git'
> 
> Работоспособность build_module.sh из tip проверяем на современных релизах, для NGINX Plus R20 система сборки была немного иная. Рекомендую чекаутить версию из бранча target-plus-r20 для настолько старого релиза - ну или обновиться на современный, для R27-R28 build_module.sh из tip default'а работать будет.

Да, действительно, на r23 модуль собирается. Но r22 вышел 2.5 года назад всего, что по меркам сурового энтерпрайза фактически "вчера". Хотелось бы конечно, обратной совместимости, тем более в данном случае там совсем немного - путь в rpmbuild передается неверный.

> Патчи приветствуются.

А патчи как отсылать? Может у вас github/gitlab/bitbucket какой есть для простоты процесса?

> В целом правильный путь - не использовать build_module.sh, а написать Makefile для нужного модуля и использовать его для своих сборок. Это позволит кастомизировать свои сборки, например добавлять свои патчи поверх исходников модуля.  См. например https://hg.nginx.org/pkg-oss/file/tip/rpm/SPECS/Makefile.module-rtmp, но работать это будет только для современных релизов.

А поподробней где можно почитать про "Makefile для нужного модуля"? Я собираю кастомный модуль для узкого потребления суровым энтерпрайзом, который как раз на Nginx Plus сидит. Если есть какой-то не велосипедный путь, рад буду его использовать.



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