[devel] судьба одного пакета (rpm-build-lua)
Ildar Mulyukov
ildar.mulyukov на gmail.com
Вт Июл 29 18:28:35 MSK 2025
Немного мат.части.
Связанные с Lua пакеты у нас делятся на 2 категории: собирающиеся
традиционным способом (configure-make-make install) и из пакетов
LuaRocks. Сразу отмечу, что когда модулей становится много, то второй
подход уже сильно облегчает жизнь мэйнтейнеру *)
Напомню, что пространство имён пакетов LuaRocks — это отдельное,
независимое от пространства имён модулей Lua множество.
On Tue, Jul 29, 2025 at 5:05 PM Anton Farygin <rider на basealt.ru> wrote:
> On 7/28/25 22:53, Ildar Mulyukov wrote:
> > Правильно ли я понимаю, что разговор идёт не о той ссылке, которую вы
> > привели в письме (это как раз_успешная_ история пакета за вашим
> > авторством), а вот об этом:
> > https://git.altlinux.org/tasks/381946/gears/300/git?p=git;a=commitdiff;h=b862def6
>
> вообще конечно такое удобнее смотреть и комментировать в каком-то git а
> не в сборочном задании.
>
> Если я правильно понял commit то он в параллель к обычным и привычным
> нам provides добавляет provides luarocks с целью (наверное) в дальнейшем
> задействовать LuaRocks для построения межпакетных зависимостей rpm пакетов.
Дополнительная деталь: эти зависимости конечному пользователю не
нужны. Они нужны самим опакеченным LuaRocks-ам, чтобы соблюсти между
ними зависимости времени сборки (не исполнения). Эти зависимости
возникают внутри логики LuaRocks.
> Но предложенная реализация не добавляет использования этих Provides, а
> только добавляет их наличие.
Об этом я писал в позапрошлом письме про полуавтоматические зависимости.
> Сейчас действительно есть такие зависимости
> https://packages.altlinux.org/ru/sisyphus/deps/?q=luarocks5.1
> и прописываются они руками:
> https://packages.altlinux.org/ru/sisyphus/srpms/lua5.1-module-http/specfiles/2749524596270163604#line-27
>
> Честно не совсем понятно чем оно лучше/хуже, но пакет с модулем lua
> провайдит сразу три сущности:
> https://packages.altlinux.org/ru/sisyphus/binary/lua5.1-module-basexx/noarch/depends/2514392821593640663
>
> А именно:
> lua5-basexx = 0.4.1
Это legacy-зависимость для тех, кто ищет содержимое по этому имени
(если раньше пакет собирался configure-make-make install). Такая
зависимость есть/нужна далеко не у всех пакетов.
> lua5.1-module-basexx = 0.4.1-alt2:sisyphus+248806.100.1.1
> luarocks5.1(basexx) = 0.4.1-alt2
>
> зачем действительно дублировать сущности пока неясно, наверное есть план
> отказаться от чего-то одного в пользу чего-то другого.
Действительно, технически можно было бы отказаться от искусственной
зависимости (luarocks5.1(basexx)) в пользу стандартной пакетной
(lua5.1-module-basexx). Но тут сразу видно аккуратно разложенные
грабли: ошибка в имени пакета, пакет с нужным именем, но без
luarocks-содержимого и т.п.
Хорошо бы понять что мы экономим и зачем.
> И если посмотреть на спекфайл:
> ...
> То в нём видно что провайд на luarocks тоже идёт вручную (что собственно
> и чинит данное исправление).
>
> Но я бы тогда предложил убрать старые provides и заменить их полностью
> на luarocks. Это вообще возможно ?
Естественно, ручной Provides должен быть удалён, это пункт 6 в
https://www.altlinux.org/Lua_Policy#Правила_упаковки_модулей_Lua
> И мне кажется что этот диалог без ментейнера lua невозможен, а именно на
> нём висит ACL rpm-build-lua
:-\
*) https://altlinux.space/ildar/rocks
--
Ildar Mulyukov,
(ΙΧΘΥΣ) child of God
email: ildar.mulyukov на gmail.com
matrix: @ildar:matrix.org
blog: http://johan-notes.blogspot.com/
Подробная информация о списке рассылки Devel