Added luaPackages, moved lua sockets and lua filesystem to luaPackages, fixed mudlet deps
This commit is contained in:
parent
0bc83f656a
commit
e6eb51496b
4 changed files with 101 additions and 10 deletions
23
pkgs/development/lua-modules/generic/default.nix
Normal file
23
pkgs/development/lua-modules/generic/default.nix
Normal file
|
@ -0,0 +1,23 @@
|
|||
lua:
|
||||
|
||||
{ buildInputs ? [], disabled ? false, ... } @ attrs:
|
||||
|
||||
assert !disabled;
|
||||
|
||||
lua.stdenv.mkDerivation ({
|
||||
|
||||
preBuild = ''
|
||||
makeFlagsArray=(
|
||||
PREFIX=$out
|
||||
LUA_LIBDIR="$out/lib/lua/${lua.luaversion}"
|
||||
LUA_INC="-I${lua}/include");
|
||||
'';
|
||||
}
|
||||
//
|
||||
attrs
|
||||
//
|
||||
{
|
||||
name = "lua${lua.luaversion}-" + attrs.name;
|
||||
buildInputs = buildInputs ++ [ lua ];
|
||||
}
|
||||
)
|
|
@ -1,4 +1,4 @@
|
|||
{ fetchurl, pkgs, stdenv, makeWrapper, qt5, yajl, libzip, hunspell, lua5_1, boost, lua51_filesystem }:
|
||||
{ fetchurl, pkgs, stdenv, makeWrapper, qt5, yajl, libzip, hunspell, lua5_1, boost, fileSystem }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "mudlet-${version}";
|
||||
|
@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "c7b9a383d2cf393da730ce07ac8f06478eaec1fdf730054e837e58c598222d38";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgs.unzip qt5 lua5_1 hunspell libzip yajl boost makeWrapper lua51_filesystem ];
|
||||
buildInputs = [ pkgs.unzip qt5 lua5_1 hunspell libzip yajl boost makeWrapper fileSystem ];
|
||||
|
||||
configurePhase = "cd src && qmake";
|
||||
|
||||
|
@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
# ln -s $out/mudlet $out/bin/mudlet
|
||||
makeWrapper $out/mudlet $out/bin/mudlet \
|
||||
--set LUA_CPATH "${lua51_filesystem}/lib/lua/5.1/?.so"
|
||||
--set LUA_CPATH "${fileSystem}/lib/lua/5.1/?.so"
|
||||
'';
|
||||
|
||||
patches = [ ./libs.patch ];
|
||||
|
|
|
@ -3743,6 +3743,8 @@ let
|
|||
love_luajit = callPackage ../development/interpreters/love {lua=luajit;};
|
||||
love_0_9 = callPackage ../development/interpreters/love/0.9.nix { };
|
||||
|
||||
### LUA MODULES
|
||||
|
||||
lua4 = callPackage ../development/interpreters/lua-4 { };
|
||||
lua5_0 = callPackage ../development/interpreters/lua-5/5.0.3.nix { };
|
||||
lua5_1 = callPackage ../development/interpreters/lua-5/5.1.nix { };
|
||||
|
@ -3753,12 +3755,23 @@ let
|
|||
lua5 = lua5_2_compat;
|
||||
lua = lua5;
|
||||
|
||||
lua5_1_sockets = callPackage ../development/interpreters/lua-5/sockets.nix {
|
||||
lua5 = lua5_1; # version 2.* only works with 5.1
|
||||
};
|
||||
lua51Packages = recurseIntoAttrs (import ./lua-packages.nix {
|
||||
pkgs = pkgs // {
|
||||
lua = lua5_1;
|
||||
};
|
||||
});
|
||||
|
||||
lua52Packages = recurseIntoAttrs (import ./lua-packages.nix {
|
||||
pkgs = pkgs // {
|
||||
lua = lua5_2;
|
||||
};
|
||||
});
|
||||
|
||||
luaPackages = lua52Packages;
|
||||
|
||||
lua5_1_sockets = lua51Packages.sockets;
|
||||
|
||||
lua5_expat = callPackage ../development/interpreters/lua-5/expat.nix {};
|
||||
lua5_filesystem = callPackage ../development/interpreters/lua-5/filesystem.nix {};
|
||||
lua51_filesystem = lua5_filesystem.override { lua5=lua5_1; };
|
||||
lua51_zip = callPackage ../development/interpreters/lua-5/zip.nix { };
|
||||
lua5_sec = callPackage ../development/interpreters/lua-5/sec.nix { };
|
||||
|
||||
|
@ -3768,6 +3781,8 @@ let
|
|||
|
||||
luajit = callPackage ../development/interpreters/luajit {};
|
||||
|
||||
### END OF LUA
|
||||
|
||||
lush2 = callPackage ../development/interpreters/lush {};
|
||||
|
||||
maude = callPackage ../development/interpreters/maude {
|
||||
|
@ -6898,7 +6913,6 @@ let
|
|||
|
||||
planetary_annihilation = callPackage ../games/planetaryannihilation { };
|
||||
|
||||
|
||||
### DEVELOPMENT / PYTHON MODULES
|
||||
|
||||
# python function with default python interpreter
|
||||
|
@ -9686,7 +9700,9 @@ let
|
|||
|
||||
mrxvt = callPackage ../applications/misc/mrxvt { };
|
||||
|
||||
mudlet = callPackage ../games/mudlet { };
|
||||
mudlet = callPackage ../games/mudlet {
|
||||
inherit (lua51Packages) fileSystem;
|
||||
};
|
||||
|
||||
multisync = callPackage ../applications/misc/multisync {
|
||||
inherit (gnome) ORBit2 libbonobo libgnomeui GConf;
|
||||
|
|
52
pkgs/top-level/lua-packages.nix
Normal file
52
pkgs/top-level/lua-packages.nix
Normal file
|
@ -0,0 +1,52 @@
|
|||
/* This file defines the composition for Lua packages. It has
|
||||
been factored out of all-packages.nix because there are many of
|
||||
them. Also, because most Nix expressions for Lua packages are
|
||||
trivial, most are actually defined here. I.e. there's no function
|
||||
for each package in a separate file: the call to the function would
|
||||
be almost as must code as the function itself. */
|
||||
|
||||
{pkgs}:
|
||||
|
||||
let self = _self; _self = with self; {
|
||||
|
||||
inherit (pkgs) fetchurl stdenv lua;
|
||||
|
||||
inherit (stdenv.lib) maintainers;
|
||||
|
||||
#define build lua package function
|
||||
buildLuaPackage = import ../development/lua-modules/generic lua;
|
||||
|
||||
fileSystem = buildLuaPackage {
|
||||
name = "filesystem-1.6.2";
|
||||
src = fetchurl {
|
||||
url = "https://github.com/keplerproject/luafilesystem/archive/v1_6_2.tar.gz";
|
||||
sha256 = "1n8qdwa20ypbrny99vhkmx8q04zd2jjycdb5196xdhgvqzk10abz";
|
||||
};
|
||||
meta = {
|
||||
homepage = "https://github.com/keplerproject/luafilesystem";
|
||||
hydraPlatforms = stdenv.lib.platforms.linux;
|
||||
maintainers = with maintainers; [ flosse ];
|
||||
};
|
||||
};
|
||||
|
||||
sockets = buildLuaPackage rec {
|
||||
name = "sockets-${version}";
|
||||
version = "2.0.2";
|
||||
src = fetchurl {
|
||||
url = "http://files.luaforge.net/releases/luasocket/luasocket/luasocket-${version}/luasocket-${version}.tar.gz";
|
||||
sha256 = "19ichkbc4rxv00ggz8gyf29jibvc2wq9pqjik0ll326rrxswgnag";
|
||||
};
|
||||
disabled = lua.luaversion != "5.1";
|
||||
patchPhase = ''
|
||||
sed -e "s,^INSTALL_TOP_SHARE.*,INSTALL_TOP_SHARE=$out/share/lua/${lua.luaversion}," \
|
||||
-e "s,^INSTALL_TOP_LIB.*,INSTALL_TOP_LIB=$out/lib/lua/${lua.luaversion}," \
|
||||
-i config
|
||||
'';
|
||||
meta = {
|
||||
homepage = "http://w3.impa.br/~diego/software/luasocket/";
|
||||
hydraPlatforms = stdenv.lib.platforms.linux;
|
||||
maintainers = with maintainers; [ mornfall ];
|
||||
};
|
||||
};
|
||||
|
||||
}; in self
|
Loading…
Reference in a new issue