lua-users home
lua-l archive

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

On Thu, Jun 16, 2016 at 1:26 AM, Milind Gupta <> wrote:
> Hello,
>        I am looking for a way to distribute a Lua script using LuaRocks. The
> script Lua file will get installed in the directory which is in the Lua
> package.path. Can LuaRocks install it in a path that is also accessible to
> Lua on the command line:
>> lua myscript.lua
> should work.
> I was looking at the "Creating a rock" document here:
> but it seems to assume that it is a module I think.
> What should I do different to install a script so Lua can run it directly?
> Thanks,
> Milind

Add the following to the "build" table of the rockspec:

build = {
    install = {
        bin = {

It installs shell wrapper called "myscript.lua" to the directory
<luarocks_root>/bin, e.g. to /usr/local/bin or to ~/.luarocks/bin (if
--local is in use). The wrapper calls lua with the arguments needed to
run your script as a program.

The directory <luarocks_root>/bin should be added to PATH. In
up-to-date luarocks you can do it with the following command:

$ eval $(luarocks path --bin)

Then you can call your script directly:

$ myscript.lua


Best regards,
Boris Nagaev