LUACTL(8)

LUACTL(8) | System Manager's Manual | LUACTL(8)

# NAME

luactl — control kernel Lua states

# SYNOPSIS

luactl | [-cq]

luactl | [-cq] create name [desc]

luactl | [-cq] destroy name

luactl | [-cq] load name path

luactl | [-cq] require name module

# DESCRIPTION

The luactl program allows the manipulation of Lua states in the kernel. Lua states are created using the “create” command (see below), Lua bindings are provided as modules. To make a Lua binding available to a state, it must be “required”. Once a module has been “required” by a state, it can not be unloaded from memory using the modunload(8) command until the state using it has been destroyed.

Lua code can be loaded from the file system into a state at anytime, please note that code loaded into a state is immediately executed.

When executed without a command, luactl reads information about the Lua states and displays it.

The options are as follows:

-c
  Create a Lua state before executing the command. This flag is used for the require and load commands only, it is ignored for all other commands.
-q
  Operate quietly i.e. nothing is printed to stdout.

# COMMANDS

create name [desc]
  Create a Lua state with name name and optional description desc.
destroy name
  Destroy the Lua state name.
load name path
  Load Lua code in file path into the Lua state name. Note that the path name must contain at least one path separation character (‘/’).
require name module
  Let the Lua state name use the bindings provided in module module. This is the equivalent of userland Lua code calling the ‘require’ function.

# FILES

/dev/lua
  Lua device file.

# SEE ALSO

lua(4), module(7), modload(8), modunload(8), lua(9)

# HISTORY

The luactl command first appeared in NetBSD 7.0.

# AUTHORS

The luactl program was written by Marc Balmer <marc@msys.ch>.

October 17, 2013 | NetBSD 7.0