lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


On 25 September 2013 06:48, Rob Kendrick <rjek@rjek.com> wrote:
> LuaRocks makes it more difficult to create distribution packages.

As opoposed to? LuaRocks does not preclude source tarballs; in fact it
documents where to get the source package you were asking for:

http://luarocks.org/repositories/rocks/#zile
See the "latest sources" link, available for every rock.

LuaRocks does not make it difficult to create distribution packages.
(I'm a distro packager myself and I wouldn't make something that made
_my_ life harder!) In fact, it can be used by distro packagers in at
least two ways:

1) The rockspec can be used as a specification of the build procedure.
In the case of Zile, GNU Autoconf, as I mentioned in another message
in this thread. Think of it as an agnostic spec file kindly provided
by the upstream developer which can then be translated by the distro
packager to the format of their liking (RPM .spec, Gentoo ebuild,
etc.)

2) LuaRocks can be used as a build-time tool itself, just like make or
other build-time-only dependencies. One can run
`luarocks --pack-binary-rock --nodeps build foo`
This command does not affect the host system in any way. It generates
a "binary rock" file (which contains compiled C modules and Lua
modules, properly distributed in deployment subdirectories) which can
then be extracted (it's just a zip file) and have its contents
packaged or deployed appropriately. Most importantly, this procedure
is general to any rock (no matter what build style they use
internally), which is an improvement over hunting down things to edit
in custom Makefiles, or having to track which modules from the source
tarball should go where, figuring out dependencies, etc, which are
things that a distro developer often ends up having to do.

-- Hisham