@ -57,7 +57,7 @@ let
buildLuaApplication = args : buildLuarocksPackage ( { namePrefix = " " ; } // args ) ;
buildLuarocksPackage = with pkgs . lib ; makeOverridable ( callPackage ../development/interpreters/lua-5/build-lua-package.nix {
buildLuarocksPackage = with pkgs . lib ; makeOverridable ( callPackage ../development/interpreters/lua-5/build-lua-package.nix {
inherit toLuaModule ;
inherit lua ;
} ) ;
@ -99,327 +99,6 @@ with self; {
luarocks-nix = callPackage ../development/tools/misc/luarocks/luarocks-nix.nix { } ;
bit32 = buildLuaPackage rec {
version = " 5 . 3 . 0 " ;
name = " b i t 3 2 - ${ version } " ;
src = fetchFromGitHub {
owner = " k e p l e r p r o j e c t " ;
repo = " l u a - c o m p a t - 5 . 2 " ;
rev = " b i t l i b - ${ version } " ;
sha256 = " 1 i p q l b v b 5 w 3 9 4 q w h m 2 f 3 w 6 p d r g y 8 v 4 q 8 s p s 5 h h 3 p q z 1 4 d c q w a k h j " ;
} ;
buildPhase = ''
cc $ { if stdenv . isDarwin then " - b u n d l e - u n d e f i n e d d y n a m i c _ l o o k u p - a l l _ l o a d " else " - s h a r e d " } - Ic-api lbitlib . c - o bit32 . so
'' ;
installPhase = ''
mkdir - p $ out/lib/lua / $ { lua . luaversion }
install - p bit32 . so $ out/lib/lua / $ { lua . luaversion }
'' ;
meta = with stdenv . lib ; {
description = " L u a 5 . 2 b i t m a n i p u l a t i o n l i b r a r y " ;
homepage = " h t t p : / / w w w . l u a . o r g / m a n u a l / 5 . 2 / m a n u a l . h t m l # 6 . 7 " ;
license = licenses . mit ;
maintainers = with maintainers ; [ lblasc ] ;
platforms = platforms . unix ;
} ;
} ;
compat53 = buildLuaPackage rec {
version = " 0 . 7 " ;
name = " c o m p a t 5 3 - ${ version } " ;
src = fetchFromGitHub {
owner = " k e p l e r p r o j e c t " ;
repo = " l u a - c o m p a t - 5 . 3 " ;
rev = " v ${ version } " ;
sha256 = " 0 2 a 1 4 n v n 7 a g g g 1 y i k j 9 h 3 d c f 8 a q j b x l w s 1 b f v q b p f x v 9 d 5 p h n r p z " ;
} ;
nativeBuildInputs = [ pkgconfig ] ;
postConfigure = ''
CFLAGS + = " - s h a r e d $ ( p k g - c o n f i g - - l i b s ${ if isLuaJIT then " l u a j i t " else " l u a " } ) "
'' ;
buildPhase = ''
cc lstrlib . c $ CFLAGS - o string . so
cc ltablib . c $ CFLAGS - o table . so
cc lutf8lib . c $ CFLAGS - o utf8 . so
'' ;
# The hook in ../development/lua-modules/generic/default.nix
# is strict about share vs. lib for _PATH and _CPATH.
installPhase = ''
install - Dt " $ o u t / s h a r e / l u a / ${ lua . luaversion } / c o m p a t 5 3 " compat53 /* . l u a
install - Dt " $ o u t / l i b / l u a / ${ lua . luaversion } / c o m p a t 5 3 " * . so
'' ;
meta = with stdenv . lib ; {
description = " C o m p a t i b i l i t y m o d u l e p r o v i d i n g L u a - 5 . 3 - s t y l e A P I s f o r L u a 5 . 2 a n d 5 . 1 " ;
homepage = " h t t p s : / / g i t h u b . c o m / k e p l e r p r o j e c t / l u a - c o m p a t - 5 . 3 " ;
license = licenses . mit ;
maintainers = with maintainers ; [ vcunat ] ;
platforms = platforms . all ;
} ;
} ;
cqueues = buildLuaPackage rec {
name = " c q u e u e s - ${ version } " ;
version = " 2 0 1 7 1 0 1 4 " ;
src = fetchurl {
url = " h t t p s : / / w w w . 2 5 t h a n d c l e m e n t . c o m / ~ w i l l i a m / p r o j e c t s / r e l e a s e s / ${ name } . t g z " ;
sha256 = " 1 d a b h p n 6 r 0 h l l n 8 v x 9 h x m 3 4 p f c m 4 6 q z g p b 2 a p m z i w g 5 z 5 1 f i 4 k s b " ;
} ;
preConfigure = '' e x p o r t p r e f i x = $o u t '' ;
# https://github.com/wahern/cqueues/issues/216
NIX_CFLAGS_COMPILE = [ " - D C Q U E U E S _ V E R S I O N = ${ version } " ] ;
nativeBuildInputs = [ gnum4 ] ;
buildInputs = [ openssl ] ;
meta = with stdenv . lib ; {
description = " A t y p e o f e v e n t l o o p f o r L u a " ;
homepage = " h t t p s : / / w w w . 2 5 t h a n d c l e m e n t . c o m / ~ w i l l i a m / p r o j e c t s / c q u e u e s . h t m l " ;
license = licenses . mit ;
maintainers = with maintainers ; [ vcunat ] ;
platforms = platforms . unix ;
} ;
} ;
luacyrussasl = buildLuaPackage rec {
version = " 1 . 1 . 0 " ;
name = " l u a - c y r u s s a s l - ${ version } " ;
src = fetchFromGitHub {
owner = " J o r j B a u e r " ;
repo = " l u a - c y r u s s a s l " ;
rev = " v ${ version } " ;
sha256 = " 1 4 k z m 3 v k 9 6 k 2 i 1 m 9 f 5 z v p v q 4 p n z a f 7 s 9 1 h 5 g 4 h 4 x 2 b q 1 m y n z w 2 s 1 " ;
} ;
preBuild = ''
makeFlagsArray = (
CFLAGS = " - O 2 - f P I C "
LDFLAGS = " - O - s h a r e d - f p i c - l s a s l 2 "
LUAPATH = " $ o u t / s h a r e / l u a / ${ lua . luaversion } "
CPATH = " $ o u t / l i b / l u a / ${ lua . luaversion } "
) ;
mkdir - p $ out / { share , lib } /lua / $ { lua . luaversion }
'' ;
buildInputs = [ cyrus_sasl ] ;
meta = with stdenv . lib ; {
homepage = " h t t p s : / / g i t h u b . c o m / J o r j B a u e r / l u a - c y r u s s a s l " ;
description = " C y r u s S A S L l i b r a r y f o r L u a 5 . 1 + " ;
license = licenses . bsd3 ;
} ;
} ;
luaexpat = buildLuaPackage rec {
version = " 1 . 3 . 0 " ;
name = " e x p a t - ${ version } " ;
src = fetchurl {
url = " h t t p s : / / m a t t h e w w i l d . c o . u k / p r o j e c t s / l u a e x p a t / l u a e x p a t - ${ version } . t a r . g z " ;
sha256 = " 1 h v x q n g n 0 w f 5 6 4 2 i 5 p 3 v c y h g 3 p m p 1 0 2 k 6 3 s 9 r y 4 j q y y q c 1 w k j q 6 h " ;
} ;
buildInputs = [ expat ] ;
preConfigure = stdenv . lib . optionalString stdenv . isDarwin ''
substituteInPlace Makefile \
- - replace ' - shared' ' - bundle - undefined dynamic_lookup - all_load'
'' ;
preBuild = ''
makeFlagsArray = (
LUA_LDIR = " $ o u t / s h a r e / l u a / ${ lua . luaversion } "
LUA_INC = " - I ${ lua } / i n c l u d e " LUA_CDIR = " $ o u t / l i b / l u a / ${ lua . luaversion } "
EXPAT_INC = " - I ${ expat . dev } / i n c l u d e " ) ;
'' ;
disabled = isLua53 || isLuaJIT ;
meta = with stdenv . lib ; {
description = " S A X X M L p a r s e r b a s e d o n t h e E x p a t l i b r a r y " ;
homepage = " h t t p : / / m a t t h e w w i l d . c o . u k / p r o j e c t s / l u a e x p a t " ;
license = licenses . mit ;
maintainers = with maintainers ; [ flosse ] ;
platforms = platforms . unix ;
} ;
} ;
luadbi = buildLuaPackage rec {
name = " l u a d b i - ${ version } " ;
version = " 0 . 7 . 2 " ;
src = fetchFromGitHub {
owner = " m w i l d 1 " ;
repo = " l u a d b i " ;
rev = " v ${ version } " ;
sha256 = " 1 6 7 i v w m c z h p 9 8 b x z p z 3 w d x c f j 6 v i 0 a 1 0 g p i 7 r d f j s 2 r b f w k z q v j h " ;
} ;
MYSQL_INC = [ " - I ${ mysql . connector-c } / i n c l u d e / m y s q l " ] ;
MYSQL_LDFLAGS = [
" - l m y s q l c l i e n t "
" - L ${ mysql . connector-c } / l i b / m y s q l "
] ;
nativeBuildInputs = [ mysql . client ] ;
buildInputs = [ mysql . connector-c postgresql sqlite ] ;
preConfigure = stdenv . lib . optionalString stdenv . isDarwin ''
substituteInPlace Makefile \
- - replace ' - shared' ' - bundle - undefined dynamic_lookup - all_load'
'' ;
installFlags = [
" L U A _ C D I R = $ ( o u t ) / l i b / l u a / ${ lua . luaversion } "
" L U A _ L D I R = $ ( o u t ) / s h a r e / l u a / ${ lua . luaversion } "
] ;
installTargets = [
" i n s t a l l _ l u a " " i n s t a l l _ m y s q l " " i n s t a l l _ p s q l " " i n s t a l l _ s q l i t e 3 "
] ;
meta = with stdenv . lib ; {
homepage = https://github.com/mwild1/luadbi ;
license = licenses . mit ;
platforms = stdenv . lib . platforms . unix ;
} ;
} ;
luafilesystem = buildLuaPackage rec {
version = " 1 . 7 . 0 " ;
name = " f i l e s y s t e m - ${ version } " ;
src = fetchFromGitHub {
owner = " k e p l e r p r o j e c t " ;
repo = " l u a f i l e s y s t e m " ;
rev = " v ${ stdenv . lib . replaceChars [ " . " ] [ " _ " ] version } " ;
sha256 = " 0 f i b r a s s h l g p a 7 1 m 9 w k p j x w m y l n x p c f 0 6 r p q b a a 0 q w v q h 9 4 n h w b y " ;
} ;
preConfigure = ''
substituteInPlace config - - replace " C C = g c c " " " ;
''
+ stdenv . lib . optionalString stdenv . isDarwin ''
substituteInPlace config \
- - replace ' LIB_OPTION = - shared' ' ###' \
- - replace ' #LIB_OPTION= -bundle' 'LIB_OPTION= -bundle'
substituteInPlace Makefile - - replace ' 10 . 3 ' ' 10 . 5 '
'' ;
meta = with stdenv . lib ; {
description = " L u a l i b r a r y c o m p l e m e n t i n g f i l e s y s t e m - r e l a t e d f u n c t i o n s " ;
homepage = " h t t p s : / / g i t h u b . c o m / k e p l e r p r o j e c t / l u a f i l e s y s t e m " ;
license = licenses . mit ;
maintainers = with maintainers ; [ flosse ] ;
platforms = platforms . unix ;
} ;
} ;
luaossl = buildLuaPackage rec {
name = " l u a o s s l - ${ version } " ;
version = " 2 0 1 8 1 2 0 7 " ;
src = fetchurl {
url = " h t t p s : / / g i t h u b . c o m / w a h e r n / l u a o s s l / r e l e a s e s / d o w n l o a d / r e l - ${ version } / l u a o s s l - r e l - ${ version } . z i p " ;
sha256 = " 1 9 4 r 6 d b 8 0 k s h 4 z h 8 d 2 k 3 5 q 6 v c i 9 z b r f v k a n j l 2 8 0 y 6 i j 2 x y h k v j 7 " ;
} ;
preConfigure = '' e x p o r t p r e f i x = $o u t '' ;
nativeBuildInputs = [ unzip ] ;
buildInputs = [ openssl ] ;
meta = with stdenv . lib ; {
description = " C o m p r e h e n s i v e b i n d i n g t o O p e n S S L f o r L u a 5 . 1 + " ;
homepage = " h t t p s : / / w w w . 2 5 t h a n d c l e m e n t . c o m / ~ w i l l i a m / p r o j e c t s / l u a o s s l . h t m l " ;
license = licenses . mit ;
maintainers = with maintainers ; [ vcunat ] ;
platforms = platforms . unix ;
} ;
} ;
luasec = buildLuaPackage rec {
name = " s e c - 0 . 8 " ;
src = fetchFromGitHub {
owner = " b r u n o o s " ;
repo = " l u a s e c " ;
rev = " l u a ${ name } " ;
sha256 = " 1 c g b 7 i h n r r f r 5 9 a 2 d a 4 d 3 c h r 7 l q p i d 9 8 x p g l m z h v 3 h r p g 4 x 5 s k s z " ;
} ;
propagatedBuildInputs = [ luasocket ] ;
buildInputs = [ openssl ] ;
preBuild = ''
makeFlagsArray = (
$ { platformString }
LUAPATH = " $ o u t / s h a r e / l u a / ${ lua . luaversion } "
LUACPATH = " $ o u t / l i b / l u a / ${ lua . luaversion } "
INC_PATH = " - I ${ lua } / i n c l u d e "
LIB_PATH = " - L $ o u t / l i b " ) ;
'' ;
meta = with stdenv . lib ; {
description = " L u a b i n d i n g f o r O p e n S S L l i b r a r y t o p r o v i d e T L S / S S L c o m m u n i c a t i o n " ;
homepage = " h t t p s : / / g i t h u b . c o m / b r u n o o s / l u a s e c " ;
license = licenses . mit ;
maintainers = with maintainers ; [ flosse ] ;
platforms = platforms . unix ;
} ;
} ;
luasocket = buildLuaPackage rec {
name = " s o c k e t - ${ version } " ;
version = " 3 . 0 - r c 1 " ;
src = fetchFromGitHub {
owner = " d i e g o n e h a b " ;
repo = " l u a s o c k e t " ;
rev = " v ${ version } " ;
sha256 = " 1 c h s 7 z 7 a 3 i 3 l c k 4 x 7 r z 6 0 z i w b f 7 9 3 g w 1 6 9 h p j d f c a 8 y 4 y f 1 h z s x k " ;
} ;
patchPhase = stdenv . lib . optionalString stdenv . isDarwin ''
substituteInPlace src/makefile \
- - replace 10 .3 10 .5
'' ;
preBuild = ''
makeFlagsArray = (
LUAV = $ { lua . luaversion }
PLAT = $ { platformString }
CC = '' ${ CC }
LD = '' ${ CC }
prefix = $ out
) ;
'' ;
doCheck = false ; # fails to find itself
installTargets = [ " i n s t a l l " " i n s t a l l - u n i x " ] ;
meta = with stdenv . lib ; {
description = " N e t w o r k s u p p o r t f o r L u a " ;
homepage = " h t t p : / / w 3 . i m p a . b r / ~ d i e g o / s o f t w a r e / l u a s o c k e t / " ;
license = licenses . mit ;
maintainers = with maintainers ; [ ] ;
platforms = with platforms ; darwin ++ linux ++ freebsd ++ illumos ;
} ;
} ;
luxio = buildLuaPackage rec {
name = " l u x i o - ${ version } " ;
version = " 1 3 " ;
@ -453,115 +132,6 @@ with self; {
} ;
} ;
luastdlib = buildLuaPackage rec {
name = " s t d l i b - ${ version } " ;
version = " 4 1 . 2 . 1 " ;
src = fetchFromGitHub {
owner = " l u a - s t d l i b " ;
repo = " l u a - s t d l i b " ;
rev = " r e l e a s e - v ${ version } " ;
sha256 = " 0 3 w d 1 q v k r j 5 0 f j s z b 2 a p z d k c 8 d 5 b p f b b i 9 p a j l 0 v b r l z z m m i 3 j l q " ;
} ;
nativeBuildInputs = [ autoreconfHook unzip ] ;
meta = with stdenv . lib ; {
description = " G e n e r a l L u a l i b r a r i e s " ;
homepage = " h t t p s : / / g i t h u b . c o m / l u a - s t d l i b / l u a - s t d l i b " ;
license = licenses . mit ;
maintainers = with maintainers ; [ vyp ] ;
platforms = platforms . linux ;
} ;
} ;
lrexlib = buildLuaPackage rec {
name = " l r e x l i b - ${ version } " ;
version = " 2 . 8 . 0 " ;
src = fetchFromGitHub {
owner = " r r t h o m a s " ;
repo = " l r e x l i b " ;
rev = " r e l - 2 - 8 - 0 " ;
sha256 = " 1 c 6 2 n y 4 1 b 1 i h 6 i d d w 5 q n 8 1 g r 6 d q w f f f z d p 7 q 6 m 8 x 0 9 z z c d z 7 8 z h r " ;
} ;
buildInputs = [ luastdlib pcre luarocks oniguruma gnulib tre glibc ] ;
buildPhase = let
luaVariable = '' L U A _ P A T H = " ${ luastdlib } / s h a r e / l u a / ${ lua . luaversion } / ? / i n i t . l u a ; ${ luastdlib } / s h a r e / l u a / ${ lua . luaversion } / ? . l u a " '' ;
pcreVariable = " P C R E _ D I R = ${ pcre . out } P C R E _ I N C D I R = ${ pcre . dev } / i n c l u d e " ;
onigVariable = " O N I G _ D I R = ${ oniguruma } " ;
gnuVariable = " G N U _ I N C D I R = ${ gnulib } / l i b " ;
treVariable = " T R E _ D I R = ${ tre } " ;
posixVariable = " P O S I X _ D I R = ${ glibc . dev } " ;
in ''
sed - e ' s @ $ ( LUAROCKS ) $ ( LUAROCKS_COMMAND ) $ $ i ; @ $ ( LUAROCKS ) $ ( LUAROCKS_COMMAND ) $ $ i $ { pcreVariable } $ { onigVariable } $ { gnuVariable } $ { treVariable } $ { posixVariable } ; @ ' - i Makefile
$ { luaVariable } make
'' ;
installPhase = ''
mkdir - pv $ out ;
cp - r luarocks/lib $ out ;
'' ;
meta = with stdenv . lib ; {
description = " L u a b i n d i n g s o f v a r i o u s r e g e x l i b r a r y A P I s " ;
homepage = " h t t p s : / / g i t h u b . c o m / r r t h o m a s / l r e x l i b " ;
license = licenses . mit ;
maintainers = with maintainers ; [ vyp ] ;
platforms = platforms . linux ;
} ;
} ;
luasqlite3 = buildLuaPackage rec {
name = " s q l i t e 3 - ${ version } " ;
version = " 2 . 3 . 0 " ;
src = fetchFromGitHub {
owner = " L u a D i s t " ;
repo = " l u a s q l - s q l i t e 3 " ;
rev = version ;
sha256 = " 0 5 k 8 z s 8 n s d m l w j a 3 h d h c k w k n f 7 w w 5 c v b p 3 s x h k 2 x d 1 i 3 i j 6 a a 1 0 b " ;
} ;
disabled = isLua53 ;
buildInputs = [ sqlite ] ;
patches = [ ../development/lua-modules/luasql.patch ] ;
meta = with stdenv . lib ; {
description = " D a t a b a s e c o n n e c t i v i t y f o r L u a " ;
homepage = " h t t p s : / / g i t h u b . c o m / L u a D i s t / l u a s q l - s q l i t e 3 " ;
license = licenses . mit ;
maintainers = with maintainers ; [ vyp ] ;
platforms = platforms . linux ;
} ;
} ;
lfs = buildLuaPackage rec {
name = " l f s - ${ version } " ;
version = " 1 . 7 . 0 . 2 " ;
src = fetchFromGitHub {
owner = " k e p l e r p r o j e c t " ;
repo = " l u a f i l e s y s t e m " ;
rev = " v " + stdenv . lib . replaceStrings [ " . " ] [ " _ " ] version ;
sha256 = " 0 z m p r g k m 9 z a w d f 9 w n w 0 v 3 w 6 i b a j 4 4 2 w l c 6 a l p 3 9 h m w 6 1 0 f l 4 v g h i " ;
} ;
meta = with stdenv . lib ; {
description = " P o r t a b l e l i b r a r y f o r f i l e s y s t e m o p e r a t i o n s " ;
homepage = https://keplerproject.github.com/luafilesystem ;
license = licenses . mit ;
maintainers = with maintainers ; [ vcunat ] ;
platforms = platforms . all ;
} ;
} ;
vicious = toLuaModule ( stdenv . mkDerivation rec {
name = " v i c i o u s - ${ version } " ;
version = " 2 . 3 . 1 " ;