[devel] судьба одного пакета (rpm-build-lua)

Anton Farygin rider на basealt.ru
Вт Июл 29 15:05:37 MSK 2025


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 пакетов.

Но предложенная реализация не добавляет использования этих 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
     lua5.1-module-basexx = 0.4.1-alt2:sisyphus+248806.100.1.1
     luarocks5.1(basexx) = 0.4.1-alt2

зачем действительно дублировать сущности пока неясно, наверное есть план 
отказаться от чего-то одного в пользу чего-то другого.

И если посмотреть на спекфайл:

# Original package name basexx
%define oname basexx
%define oversion 0.4.1-1
%define rockspec basexx-0.4.1-1.rockspec
Name: lua%target_lua_version-module-%oname
Version: 0.4.1
Release: alt2
Summary: A base2, base16, base32, base64 and base85 library for Lua
License: MIT
Group: Development/Other
Url: https://github.com/aiq/basexx
BuildArch: noarch
Provides: luarocks%target_lua_version(%oname) = %EVR

%if "%target_lua_version" == "5.3"
Obsoletes: lua-module-%oname < %EVR
Provides: lua-module-%oname = %version
%else
Obsoletes: lua5-%oname < %EVR
Provides: lua5-%oname = %version
%endif

Source: https://github.com/aiq/basexx/archive/v0.4.1.tar.gz
Source1: https://luarocks.org/manifests/luarocks/basexx-0.4.1-1.rockspec

BuildRequires(pre): rpm-macros-lua >= 1.4
# Automatically added by buildreq on ...
BuildRequires: liblua%target_lua_version-devel 
lua%target_lua_version-luarocks

То в нём видно что провайд на luarocks тоже идёт вручную (что собственно 
и чинит данное исправление).

Но я бы тогда предложил убрать старые provides и заменить их полностью 
на luarocks. Это вообще возможно ?

И мне кажется что этот диалог без ментейнера lua невозможен, а именно на 
нём висит ACL rpm-build-lua

https://packages.altlinux.org/ru/sisyphus/srpms/lua5.4/




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