diff --git a/gnu/packages/lua.scm b/gnu/packages/lua.scm index f95da3587d..65c335d373 100644 --- a/gnu/packages/lua.scm +++ b/gnu/packages/lua.scm @@ -7,6 +7,7 @@ ;;; Copyright © 2016 Ricardo Wurmus ;;; Copyright © 2016 doncatnip ;;; Copyright © 2016 Clément Lassieur +;;; Copyright © 2016 José Miguel Sánchez García ;;; ;;; This file is part of GNU Guix. ;;; @@ -27,6 +28,7 @@ #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix utils) #:use-module (guix build-system gnu) #:use-module (gnu packages) #:use-module (gnu packages readline) @@ -365,3 +367,37 @@ secure session between the peers.") based libraries. It allows using GObject-based libraries directly from Lua. Notable examples are GTK+, GStreamer and Webkit.") (license license:expat))) + +(define-public lua-lpeg + (package + (name "lua-lpeg") + (version "1.0.0") + (source (origin + (method url-fetch) + (uri (string-append "http://www.inf.puc-rio.br/~roberto/lpeg/lpeg-" + version ".tar.gz")) + (sha256 + (base32 "13mz18s359wlkwm9d9iqlyyrrwjc6iqfpa99ai0icam2b3khl68h")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (delete 'configure) + ;; `make install` isn't available, so we have to do it manually + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (lua-version ,(version-major+minor (package-version lua)))) + (install-file "lpeg.so" + (string-append out "/lib/lua/" lua-version)) + (install-file "re.lua" + (string-append out "/share/lua/" lua-version)) + #t)))) + #:test-target "test")) + (inputs `(("lua", lua))) + (synopsis "Pattern-matching library for Lua") + (description + "LPeg is a pattern-matching library for Lua, based on Parsing Expression +Grammars (PEGs).") + (home-page "http://www.inf.puc-rio.br/~roberto/lpeg") + (license license:expat)))