Lua module package dependencies

Kaarle Ritvanen
Message ID
DKIM signature
Download raw message
Hi Jakub,

A few weeks ago there was a discussion on packaging Lua modules on 
#alpine-devel, which was triggered by commit 
59e37c7f6d3da19f5a14aa07e02f06e23f29f40e. Before making any further 
changes, we decided to ask your opinion because you are the maintainer of 
a significant number of such packages.

We identified three issues in the current way of packaging:

1. Most of the packages (or Lua version-specific subpackages) depend on 
   lua<version>. This has the effect of pulling the command line 
   interpreter in as a dependency, which is not always necessary.

2. The conditional install rule (install_if) of version-specific 
   subpackages is tied to lua<version> instead of lua<version>-libs. 
   Hence, subpackage installation is not triggered when the interpreter 
   library is installed without the command line tool. For example, 
   running "apk add lua-posix uwsgi-lua" will not result in installation 
   of lua5.3-posix, even though uwsgi-lua uses the Lua 5.3 interpreter.

3. Installing a package that a) contains only pure Lua modules, b) does 
   not have version-specific subpackages by itself, and c) depends on 
   module packages that have version-specific subpackages sometimes 
   results in installation of unnecessary subpackages.

We thought the issues could be solved as follows:

1. Either remove the dependencies to lua<version> or switch them to 

2. Use lua<version>-libs instead of lua<version> in the install_if 

3. For packages containing only pure Lua modules, create empty 
   version-specific subpackages which depend on a) the main package and b)  
   version-specific subpackages containing the required modules. The main 
   package would contain the module files but have no dependencies.

Please let us know what you think of this, and feel free to suggest 
alternative solutions.