Clone this repo:
  1. 6d9acbf Rename Magenta to Zircon by George Kulakowski · 5 weeks ago master
  2. e7132b6 Add package config for lua by James Robinson · 4 months ago
  3. 7abe0f5 Use Magenta's copy of linenoise instead of third_party/linenoise by Mark Seaborn · 8 months ago
  4. 73b6e72 Build liblua as a group, not as a static lib. by George Kulakowski · 1 year ago
  5. f3fa5e5 Port lua to work on Fuchsia by Arman Uguray · 1 year, 2 months ago

Lua 5.3.3

This is a fork of Lua 5.3.3, released on 30 May 2016. This project makes the smallest number of modifications to support running Lua as part of the Fuchsia repository.

For installation instructions, license details, and further information about Lua, see doc/readme.html.

Please refer to the Lua website for information about the Lua project.

Support status

The following is a list of builtin library functions that don't work due to missing features in Fuchsia (e.g. unimplemented libc functions):


  • io.popen: Returns not supported
  • io.tmpfile: Crashes with due to unsupported syscall (tmpfile)
  • Reading from stdin doesn't block. Reading from regular files is OK.


  • os.time: Returns the same thing as os.clock, which is incorrect
  • Unsupported syscall: localtime, gmtime, localtime_r, gmtime_r (#257)
  • os.execute: Unsupported syscall: sigaction (#13)
  • os.getenv: Unsupported syscall: sigaction (#13)
  • os.rename: Returns “nil Function not Implemented38”
  • os.tmpname: Unsupported syscall: tmpnam (#262)


  • package.cpath: Need to configure this away from the default cpath on Fuchsia?
  • package.loadlib: Returns “Dynamic libraries not enabled”, which is probably what we want right now.
  • package.path: Need to map this to something meaningful.