Lua module wrapper around Haskell's System module.


Version on this page:
LTS Haskell 22.16:1.1.1
Stackage Nightly 2024-04-12:1.1.1
Latest on Hackage:1.1.1

See all snapshots hslua-module-system appears in

MIT licensed by Albert Krewinkel
Maintained by [email protected]
This version can be pinned in stack with:hslua-module-system-,2858

Module documentation for

Provides access to system information and functionality to Lua scripts via Haskell's System module.

Intended usage for this package is to preload it by adding the loader function to package.preload. Note that the Lua package library must have already been loaded before the loader can be added.


Revision history for hslua-module-system – 2020-10-16

  • Relaxed upper bound for hslua, allow hslua-1.3.*.

0.2.2 – 2020-08-15

  • Relaxed upper bound for hslua, allow hslua-1.2.*.
  • Improved documentation of internal types.
  • Use tasty-lua for unit tests.
  • Update CI to test with all GHC versions.

0.2.1 – 2019-05-04

  • Use module helpers made available with HsLua 1.0.3. This avoids code duplication when used with other hslua modules.

0.2.0 – 2019-05-01

All fields and functions are now exported from the Haskell module under the same name as that used in Lua.

New fields

  • arch: processor architecture.
  • compiler_name: Haskell compiler that was used to compile the module.
  • compiler_version: version of the compiler.
  • os: operating system.

New functions

  • mkdir: create a new directory.
  • rmdir: remove a directory.
  • with_env: perform action with custom environment.
  • with_wd: perform action in another directory.

Removed or renamed functions

  • currentdir was renamed to getwd.
  • chdir was renamed to setwd.
  • pwd was removed.


  • Fix typos and copy-paste errors in docs, tests.

0.1.0 – 2019-04-26

  • First version. Released on an unsuspecting world.