Clone this repo:
  1. c010908 Update path to package template by P.Y. Laligand · 26 hours ago master
  2. fdec918 [build] Add system_image property to package() by Adam Barth · 3 weeks ago
  3. 6d9acbf Rename Magenta to Zircon by George Kulakowski · 2 months ago
  4. e7132b6 Add package config for lua by James Robinson · 6 months ago
  5. 7abe0f5 Use Magenta's copy of linenoise instead of third_party/linenoise by Mark Seaborn · 9 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.