From e77a7c7928e4db7c7f7c26fdc58c87ffdd6e19a7 Mon Sep 17 00:00:00 2001 From: Matthieu Coudron Date: Sun, 28 Jan 2018 09:04:43 +0900 Subject: [PATCH] gerenate correct dependencies of neovim maintainers/scripts/update-luarocks-packages.sh > temp.nix mv temp.nix pkgs/top-level/lua-generated-packages.nix In order to run neovim tests, I switched on globally the compat flag of lua5.2. I tried just overriding luaPackages.lua instead but it wouldn't work. running nix-shell -A neovim-local ~/nixpkgs --show-trace and make functionaltest (you might need to run `export LUA_PATH="./?.lua;$LUA_PATH"` beforehand ) Results [==========] 2734 tests from 278 test files ran. (273650.51 ms total) [ PASSED ] 2697 tests. 11 SKIPPED TESTS 6 FAILED TESTS 26 ERRORS Some of the errors might be due to lua incompatibilities but also the tests might need some patching for nixos: rovider/pythonx: Could not load Python 3: python3 not found in search path or not executable. python3.7 not found in search path or not executable. python3.6 not found in search path or not executable. python3.5 not found in search path or not executable. python3.4 not found in search path or not executable. python3.3 not found in search path or not executable. python not found in search path or not executable. --- .../scripts/update-luarocks-packages.sh | 28 +- pkgs/applications/editors/neovim/default.nix | 38 +- pkgs/development/interpreters/lua-5/5.2.nix | 4 +- .../interpreters/lua-5/build-lua-package.nix | 3 +- pkgs/top-level/all-packages.nix | 12 +- pkgs/top-level/lua-generated-packages.nix | 570 ++++++++++-------- pkgs/top-level/lua-packages.nix | 22 +- 7 files changed, 402 insertions(+), 275 deletions(-) diff --git a/maintainers/scripts/update-luarocks-packages.sh b/maintainers/scripts/update-luarocks-packages.sh index 17157bd8d54f2..6c90c46dc74bc 100755 --- a/maintainers/scripts/update-luarocks-packages.sh +++ b/maintainers/scripts/update-luarocks-packages.sh @@ -3,7 +3,7 @@ # You'll likely want to use # `` -# nixpkgs $ maintainers/scripts/update-luarocks-packages.sh pkgs/top-level/lua-generated-packages.nix +# nixpkgs $ maintainers/scripts/update-luarocks-packages.sh > pkgs/top-level/lua-generated-packages.nix # `` # to update all libraries in that folder. @@ -16,11 +16,11 @@ # set -eu -o pipefail -if [ $# -lt 1 ]; then +# if [ $# -lt 1 ]; then - echo "Usage: $0 GENERATED_FILENAME" - exit 1 -fi +# echo "Usage: $0 GENERATED_FILENAME" +# exit 1 +# fi GENERATED_NIXFILE="$1" @@ -85,14 +85,13 @@ function convert_pkgs () { declare -a pkg_list_main -declare -a pkg_list_extra +declare -a pkg_list_teto +declare -a pkg_list_hisham pkg_list_main=( ansicolors # -1.0.2-3 -busted # -2.0.rc9-0 # OK dkjson # -2.5-2 # looks ok lua-cmsgpack # -0.4.0-0 # looks OK lua_cliargs # -1.1-1 # OK -luassert # -1.7.9-0 # OK lua-term # -0.7-1 # luasocket # -2.0.2-6 ltermbox # -0.2-1 # ok @@ -100,17 +99,26 @@ ltermbox # -0.2-1 # ok luafilesystem # required by penlight penlight say # -1.3-1 # builtin type, check how luarocks handles modules +luv +luasystem ) # ~/busted-2.0.rc12-1.rockspec # basically don't have a src.pack version in -pkg_list_extra=( +pkg_list_teto=( mediator_lua mpack +nvim-client +busted # rc-3 won't work +luassert # cos wed need -1.7.10 ) +pkg_list_hisham=( +coxpcall +) echo "$HEADER" convert_pkgs pkg_list_main -convert_pkgs pkg_list_extra "http://luarocks.org/manifests/teto" +convert_pkgs pkg_list_teto "http://luarocks.org/manifests/teto" +convert_pkgs pkg_list_hisham "https://luarocks.org/manifests/hisham" echo "$FOOTER" # close the set diff --git a/pkgs/applications/editors/neovim/default.nix b/pkgs/applications/editors/neovim/default.nix index dd27c3a9ecfed..d4e402db0cd0b 100644 --- a/pkgs/applications/editors/neovim/default.nix +++ b/pkgs/applications/editors/neovim/default.nix @@ -1,7 +1,8 @@ { stdenv, fetchFromGitHub, cmake, gettext, libmsgpack, libtermkey -, libtool, libuv, luaPackages, ncurses, perl, pkgconfig +, libtool, libuv, ncurses, perl, pkgconfig , unibilium, vimUtils, xsel, gperf, callPackage , withJemalloc ? true, jemalloc +, luaPackages }: with stdenv.lib; @@ -37,10 +38,25 @@ let }; }; - neovim = stdenv.mkDerivation rec { - name = "neovim-unwrapped-${version}"; + + # neovim doesn't take into account lua5.2 move of `unpack` to `table.unpack` + # so we need to compile lua5.2 with the compatibility flags + # doesn't work + # neovimLua = luaPackages.lua.override( { compat = true; }); + neovimLua = luaPackages.lua; + # neovimLuaEnv = enableTests: + neovimLuaEnv = + neovimLua.withPackages(ps: + (with ps; + [ mpack lpeg luabitop ] + ++ optionals true [ nvim-client luv lpeg coxpcall busted luafilesystem penlight ])); +in + stdenv.mkDerivation rec { + name = "${pname}-${version}"; + pname = "neovim-unwrapped"; version = "0.2.2"; + src = fetchFromGitHub { owner = "neovim"; repo = "neovim"; @@ -57,11 +73,12 @@ let ncurses neovimLibvterm unibilium - luaPackages.lua + neovimLua gperf ] ++ optional withJemalloc jemalloc - ++ (with luaPackages; [ mpack lpeg luabitop ]) - ++ optionals doCheck (with luaPackages;[ nvim-client luv lpeg coxpcall busted luafilesystem penlight ]); + # todo creer un environnement + ++ [ (neovimLuaEnv) ] + ; doCheck = true; @@ -74,10 +91,10 @@ let # current luajit interpret was not updated in nixos cmakeFlags = [ "-DPREFER_LUA=ON" - "-DLUA_PRG=${luaPackages.lua}/bin/lua" + "-DLUA_PRG=${neovimLuaEnv}/bin/lua" ] ++ optionals doCheck (with luaPackages;[ - "-DBUSTED_PRG=${luaPackages.busted}/bin/busted" + "-DBUSTED_PRG=${neovimLuaEnv}/bin/busted" ]); # triggers on buffer overflow bug while running tests @@ -116,7 +133,4 @@ let maintainers = with maintainers; [ manveru garbas rvolosatovs ]; platforms = platforms.unix; }; - }; - -in - neovim + } diff --git a/pkgs/development/interpreters/lua-5/5.2.nix b/pkgs/development/interpreters/lua-5/5.2.nix index cb203281fb0e1..3b0a0df80166b 100644 --- a/pkgs/development/interpreters/lua-5/5.2.nix +++ b/pkgs/development/interpreters/lua-5/5.2.nix @@ -2,7 +2,9 @@ # look at setup hooks too { stdenv, fetchurl, readline # compiles compatibility layer with lua5.1 -, compat ? false +# fix the override problem then set it back to false +# set to true because of neovim +, compat ? true , hostPlatform, makeWrapper , lua-setup-hook, callPackage , self diff --git a/pkgs/development/interpreters/lua-5/build-lua-package.nix b/pkgs/development/interpreters/lua-5/build-lua-package.nix index 0546249547798..12ce8b0f70a6c 100644 --- a/pkgs/development/interpreters/lua-5/build-lua-package.nix +++ b/pkgs/development/interpreters/lua-5/build-lua-package.nix @@ -135,7 +135,8 @@ builtins.removeAttrs attrs ["disabled" "checkInputs"] // { # to prevent collisions when creating environments # also added -f as it doesn't always exist - rm -rf $out/lib/luarocks + # don't remove the whole directory as + rm -rf $out/lib/luarocks/rocks/manifest runHook postInstall ''; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 0cb7e7fbfc4b1..196cccfc655fd 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -17485,9 +17485,17 @@ with pkgs; wrapNeovim = callPackage ../applications/editors/neovim/wrapper.nix { }; - neovim-unwrapped = callPackage ../applications/editors/neovim { + neovim-unwrapped = + let + neovimLuaPackages = lua52Packages; + # does not work :/ + # neovimLuaPackages = recurseIntoAttrs (callPackage ./lua-packages.nix { lua = lua5_2.override({ compat = true;}) ; }); + in + callPackage ../applications/editors/neovim { # only lua52 was modified thus we need to test against it - luaPackages = lua52Packages; + # we need compat = true else we have + # attempt to call global 'unpack' (a nil value) + luaPackages = neovimLuaPackages; }; neovim = wrapNeovim neovim-unwrapped { }; diff --git a/pkgs/top-level/lua-generated-packages.nix b/pkgs/top-level/lua-generated-packages.nix index 7d716a6b31a00..2aa80eb0abe58 100644 --- a/pkgs/top-level/lua-generated-packages.nix +++ b/pkgs/top-level/lua-generated-packages.nix @@ -1,279 +1,353 @@ -/* ${GENERATED_NIXFILE} is an auto-generated file -- DO NOT EDIT! */ -{ self, stdenv +/* is an auto-generated file -- DO NOT EDIT! +Regenerate it with: +nixpkgs$ maintainers/scripts/update-luarocks-packages.sh +*/ +{ +# self has buildLuaPackage +self +, stdenv , fetchurl +, fetchgit , toLuaModule , requiredLuaModules }: with self; rec { -mediator_lua = buildLuaPackage rec { -meta={ -homepage="http://olivinelabs.com/mediator_lua/"; -license=stdenv.lib.licenses.mit; -description="Event handling through channels"; } -; -src= fetchurl { -url="http://luarocks.org/manifests/teto/mediator_lua-1.1.2-0.src.rock"; -sha256="18j49vvs94yfk4fw0xsq4v3j4difr6c99gfba0kxairmcqamd1if"; } -; -propagatedBuildInputs=[ lua]; -version="1.1.2-0"; -name="mediator_lua"; } -; +ansicolors = buildLuaPackage rec { + pname = "ansicolors"; + version = "1.0.2-3"; + src = fetchurl { + url = https://luarocks.org/ansicolors-1.0.2-3.src.rock; + sha256 = "1mhmr090y5394x1j8p44ws17sdwixn5a0r4i052bkfgk3982cqfz"; + }; -luasystem = buildLuaPackage rec { -src= fetchurl { -url=https://luarocks.org/luasystem-0.2.1-0.src.rock; -sha256="091xmp8cijgj0yzfsjrn7vljwznjnjn278ay7z9pjwpwiva0diyi"; } -; -pname="luasystem"; -version="0.2.1-0"; -meta={ -description="Platform independent system calls for Lua."; -license=stdenv.lib.licenses.mit; -homepage=http://olivinelabs.com/luasystem/; } -; -propagatedBuildInputs=[ lua]; } -; + propagatedBuildInputs = [lua ]; -mpack = buildLuaPackage rec { -pname="mpack"; -meta={ -license=stdenv.lib.licenses.mit; -description="Lua binding to libmpack"; -homepage="https://github.com/libmpack/libmpack-lua/releases/download/1.0.6/libmpack-lua-1.0.6.tar.gz"; } -; -propagatedBuildInputs=[]; -src= fetchurl { -url="https://luarocks.org/mpack-1.0.6-0.src.rock"; -sha256="0pydlhgdfbchslizm69h5w5ddalhzaq71hlbl5z2miq7yk9xjs4h"; } -; -version="1.0.6-0"; } -; + meta = { + homepage = https://github.com/kikito/ansicolors.lua; + description="Library for color Manipulation."; + license = { + fullName = "MIT "; + }; + buildType="builtin"; + }; +}; -ansicolors = buildLuaPackage rec { -propagatedBuildInputs=[ lua]; -pname="ansicolors"; -src= fetchurl { -sha256="1mhmr090y5394x1j8p44ws17sdwixn5a0r4i052bkfgk3982cqfz"; -url="https://luarocks.org/ansicolors-1.0.2-3.src.rock"; } -; -meta={ -homepage="https://github.com/kikito/ansicolors.lua"; -license=stdenv.lib.licenses.mit; -description="Library for color Manipulation."; } -; -version="1.0.2-3"; } -; +dkjson = buildLuaPackage rec { + pname = "dkjson"; + version = "2.5-2"; + src = fetchurl { + url = https://luarocks.org/dkjson-2.5-2.src.rock; + sha256 = "1qy9bzqnb9pf9d48hik4iq8h68aw3270kmax7mmpvvpw7kkyp483"; + }; -busted = buildLuaPackage rec { -pname="busted"; -src= fetchurl { -url="http://luarocks.org/manifests/teto/busted-2.0.rc12-1.src.rock"; -sha256="18fzdc7ww4nxwinnw9ah5hi329ghrf0h8xrwcy26lk9qcs9n079z"; } -; -# lacks luasystem -propagatedBuildInputs=[ lua luasystem lua_cliargs luafilesystem dkjson say lua-term luassert ansicolors penlight mediator_lua]; -version="2.0.rc12-1"; -meta={ -homepage="http://olivinelabs.com/busted/"; -description="Elegant Lua unit testing."; -license=stdenv.lib.licenses.mit; } -; } -; + propagatedBuildInputs = [lua ]; + + meta = { + homepage = http://dkolf.de/src/dkjson-lua.fsl/; + description="David Kolf's JSON module for Lua"; + license = { + fullName = "MIT/X11"; + }; + buildType="builtin"; + }; +}; -dkjson = buildLuaPackage rec { -meta={ -license=stdenv.lib.licenses.mit; -description="David Kolf's JSON module for Lua"; -homepage="http://dkolf.de/src/dkjson-lua.fsl/"; } -; -src= fetchurl { -sha256="1qy9bzqnb9pf9d48hik4iq8h68aw3270kmax7mmpvvpw7kkyp483"; -url="https://luarocks.org/dkjson-2.5-2.src.rock"; } -; -pname="dkjson"; -propagatedBuildInputs=[ lua]; -version="2.5-2"; } -; lua-cmsgpack = buildLuaPackage rec { -pname="lua-cmsgpack"; -meta={ -homepage="http://github.com/antirez/lua-cmsgpack"; -description="MessagePack C implementation and bindings for Lua 5.1"; -license=stdenv.lib.licenses.mit; } -; -propagatedBuildInputs=[ lua]; -version="0.3-2"; -src= fetchurl { -url="https://luarocks.org/lua-cmsgpack-0.3-2.src.rock"; -sha256="062nk6y99d24qhahwp9ss4q2xhrx40djpl4vgbpmjs8wv0ds84di"; } -; } -; + pname = "lua-cmsgpack"; + version = "0.3-2"; + src = fetchurl { + url = https://luarocks.org/lua-cmsgpack-0.3-2.src.rock; + sha256 = "062nk6y99d24qhahwp9ss4q2xhrx40djpl4vgbpmjs8wv0ds84di"; + }; + + propagatedBuildInputs = [lua ]; + + meta = { + homepage = http://github.com/antirez/lua-cmsgpack; + description="MessagePack C implementation and bindings for Lua 5.1"; + license = { + fullName = "Two-clause BSD"; + }; + buildType="builtin"; + }; +}; + lua_cliargs = buildLuaPackage rec { -propagatedBuildInputs=[ lua]; -version="3.0-1"; -src= fetchurl { -sha256="1m17pxirngpm5b1k71rqs8zlwwav1rv52z8d4w8kmj0xn4kvcrfi"; -url="https://luarocks.org/lua_cliargs-3.0-1.src.rock"; } -; -pname="lua_cliargs"; -meta={ -license=stdenv.lib.licenses.mit; -description="A command-line argument parser."; -homepage="https://github.com/amireh/lua_cliargs"; } -; } -; + pname = "lua_cliargs"; + version = "3.0-1"; + src = fetchurl { + url = https://luarocks.org/lua_cliargs-3.0-1.src.rock; + sha256 = "1m17pxirngpm5b1k71rqs8zlwwav1rv52z8d4w8kmj0xn4kvcrfi"; + }; -luassert = buildLuaPackage rec { -version="1.7.10-0"; -pname="luassert"; -propagatedBuildInputs=[ lua say]; -meta={ -homepage=http://olivinelabs.com/busted/; -description="Lua Assertions Extension"; -license=stdenv.lib.licenses.mit; } -; -src= fetchurl { -url=http://luarocks.org/manifests/teto/luassert-1.7.10-0.src.rock; -sha256="03kd0zhpl2ir0r45z12bayvwahy8pbbcwk1vfphf0zx11ik84rss"; } -; } -; + propagatedBuildInputs = [lua ]; + + meta = { + homepage = https://github.com/amireh/lua_cliargs; + description="A command-line argument parser."; + license = { + fullName = "MIT "; + }; + buildType="builtin"; + }; +}; + + +lua-term = buildLuaPackage rec { + pname = "lua-term"; + version = "0.3-1"; + src = fetchurl { + url = https://luarocks.org/lua-term-0.3-1.src.rock; + sha256 = "1bxfaskb30hpcaz8jmv5mshp56dgxlc2bm6fgf02z556cdy3kapm"; + }; + + propagatedBuildInputs = []; + + meta = { + homepage = https://github.com/hoelzro/lua-term; + description="Terminal functions for Lua"; + license = { + fullName = "MIT/X11"; + }; + buildType="builtin"; + }; +}; + +luasocket = buildLuaPackage rec { + pname = "luasocket"; + version = "3.0rc1-2"; + src = fetchurl { + url = https://luarocks.org/luasocket-3.0rc1-2.src.rock; + sha256 = "1isin9m40ixpqng6ds47skwa4zxrc6w8blza8gmmq566w6hz50iq"; + }; + + propagatedBuildInputs = [lua ]; + + meta = { + homepage = http://luaforge.net/projects/luasocket/; + description="Network support for the Lua language"; + license = { + fullName = "MIT"; + }; + buildType="builtin"; + }; +}; + +ltermbox = buildLuaPackage rec { + pname = "ltermbox"; + version = "0.2-1"; + src = fetchurl { + url = https://luarocks.org/ltermbox-0.2-1.src.rock; + sha256 = "08jqlmmskbi1ml1i34dlmg6hxcs60nlm32dahpxhcrgjnfihmyn8"; + }; + + propagatedBuildInputs = [lua ]; + + meta = { + homepage = http://code.google.com/p/termbox; + description="A termbox library package"; + license = { + fullName = "New BSD License"; + }; + buildType="builtin"; + }; +}; + +luafilesystem = buildLuaPackage rec { + pname = "luafilesystem"; + version = "1.7.0-2"; + src = fetchurl { + url = https://luarocks.org/luafilesystem-1.7.0-2.src.rock; + sha256 = "0xhmd08zklsgpnpjr9rjipah35fbs8jd4v4va36xd8bpwlvx9rk5"; + }; + + propagatedBuildInputs = [lua ]; + + meta = { + homepage = git://github.com/keplerproject/luafilesystem; + description="File System Library for the Lua Programming Language"; + license = { + fullName = "MIT/X11"; + }; + buildType="builtin"; + }; +}; + +penlight = buildLuaPackage rec { + pname = "penlight"; + version = "1.3.1-1"; + src = fetchurl { + url = https://luarocks.org/penlight-1.3.1-1.src.rock; + sha256 = "10w7yf1n3nrr5ima9aggs9zd7mwiynb29df4vl2qb6ca0p2zrihk"; + }; + + propagatedBuildInputs = [luafilesystem ]; + + meta = { + homepage = http://stevedonovan.github.com/Penlight; + description="Lua utility libraries loosely based on the Python standard libraries"; + license = { + fullName = "MIT/X11"; + }; + buildType="builtin"; + }; +}; + +say = buildLuaPackage rec { + pname = "say"; + version = "1.2-1"; + src = fetchurl { + url = https://luarocks.org/say-1.2-1.src.rock; + sha256 = "0x367gyfzdv853ag2bbg5a2hsis4i9ryhb5brxp9gh136in5wjcw"; + }; + + propagatedBuildInputs = [lua ]; + + meta = { + homepage = http://olivinelabs.com/busted/; + description="Lua String Hashing/Indexing Library"; + license = { + fullName = "MIT "; + }; + buildType="builtin"; + }; +}; luv = buildLuaPackage rec { -version="1.9.1-1"; -src= fetchurl { -url=https://luarocks.org/luv-1.9.1-1.src.rock; -sha256="1b2gjzk7zixm98ah1xi02k1x2rhl109nqkn1w4jyjfwb3lrbhbfp"; } -; -meta={ -homepage=https://github.com/luvit/luv; -license=stdenv.lib.licenses.mit; -description="Bare libuv bindings for lua"; } -; -pname="luv"; -propagatedBuildInputs=[ lua]; } -; + pname = "luv"; + version = "1.9.1-1"; + src = fetchurl { + url = https://luarocks.org/luv-1.9.1-1.src.rock; + sha256 = "1b2gjzk7zixm98ah1xi02k1x2rhl109nqkn1w4jyjfwb3lrbhbfp"; + }; + + propagatedBuildInputs = [lua ]; + + meta = { + homepage = https://github.com/luvit/luv; + description="Bare libuv bindings for lua"; + license = { + fullName = "Apache 2.0"; + }; + buildType="cmake"; + }; +}; + +luasystem = buildLuaPackage rec { + pname = "luasystem"; + version = "0.2.1-0"; + src = fetchurl { + url = https://luarocks.org/luasystem-0.2.1-0.src.rock; + sha256 = "091xmp8cijgj0yzfsjrn7vljwznjnjn278ay7z9pjwpwiva0diyi"; + }; + + propagatedBuildInputs = [lua ]; + + meta = { + homepage = http://olivinelabs.com/luasystem/; + description="Platform independent system calls for Lua."; + license = { + fullName = "MIT "; + }; + buildType="builtin"; + }; +}; + +mediator_lua = buildLuaPackage rec { + pname = "mediator_lua"; + version = "1.1.2-0"; + src = fetchurl { + url = http://luarocks.org/manifests/teto/mediator_lua-1.1.2-0.src.rock; + sha256 = "18j49vvs94yfk4fw0xsq4v3j4difr6c99gfba0kxairmcqamd1if"; + }; + + propagatedBuildInputs = [lua ]; + + meta = { + homepage = http://olivinelabs.com/mediator_lua/; + description="Event handling through channels"; + license = { + fullName = "MIT "; + }; + buildType="builtin"; + }; +}; + +mpack = buildLuaPackage rec { + pname = "mpack"; + version = "1.0.6-0"; + src = fetchurl { + url = https://luarocks.org/mpack-1.0.6-0.src.rock; + sha256 = "0pydlhgdfbchslizm69h5w5ddalhzaq71hlbl5z2miq7yk9xjs4h"; + }; + + propagatedBuildInputs = []; + + meta = { + homepage = https://github.com/libmpack/libmpack-lua/releases/download/1.0.6/libmpack-lua-1.0.6.tar.gz; + description="Lua binding to libmpack"; + license = { + fullName = "MIT"; + }; + buildType="builtin"; + }; +}; nvim-client = buildLuaPackage rec { -meta={ -description="Lua client to Nvim"; -homepage=https://github.com/neovim/lua-client/archive/0.0.1-26.tar.gz; -license=stdenv.lib.licenses.mit; } -; -pname="nvim-client"; -version="0.0.1-26"; -src= fetchurl { -sha256="1k3rrii6w2zjmwaanldsbm8fb2d5xzzfwzwjipikxsabivhrm9hs"; -url=https://luarocks.org/nvim-client-0.0.1-26.src.rock; } -; -propagatedBuildInputs=[ lua mpack luv coxpcall]; } -; + pname = "nvim-client"; + version = "0.0.1-26"; + src = fetchurl { + url = http://luarocks.org/manifests/teto/nvim-client-0.0.1-26.src.rock; + sha256 = "1k3rrii6w2zjmwaanldsbm8fb2d5xzzfwzwjipikxsabivhrm9hs"; + }; + propagatedBuildInputs = [lua mpack luv coxpcall ]; -coxpcall = buildLuaPackage rec { -src= fetchurl { + meta = { + homepage = https://github.com/neovim/lua-client/archive/0.0.1-26.tar.gz; + description="Lua client to Nvim"; + license = { + fullName = "Apache"; + }; + buildType="builtin"; + }; +}; -# url=http://luarocks.org/manifests/teto/coxpcall-scm-1.src.rock; -# sha256="0cz1m32kxi5zx6s69vxdldaafmzqj5wwr69i93abmlz15nx2bqpf"; +busted = buildLuaPackage rec { + pname = "busted"; + version = "2.0.rc12-1"; + src = fetchurl { + url = http://luarocks.org/manifests/teto/busted-2.0.rc12-1.src.rock; + sha256 = "18fzdc7ww4nxwinnw9ah5hi329ghrf0h8xrwcy26lk9qcs9n079z"; + }; -url=https://luarocks.org/manifests/hisham/coxpcall-1.15.0-1.src.rock; -sha256="0x8hzly5vjmj8xbhg6l2hxhj57ysgrz7afb7wss4pmkc187d74zz"; -} -; -version="1.15.0-1"; -pname="coxpcall"; -propagatedBuildInputs=[]; -meta={ -license=stdenv.lib.licenses.mit; -description="Coroutine safe xpcall and pcall"; -homepage=http://keplerproject.github.io/coxpcall; } -; } -; + propagatedBuildInputs = [lua lua_cliargs luafilesystem luasystem dkjson say luassert lua-term penlight mediator_lua ]; -say = buildLuaPackage rec { -meta={ -description="Lua String Hashing/Indexing Library"; -homepage=http://olivinelabs.com/busted/; -license=stdenv.lib.licenses.mit; } -; -src= fetchurl { -sha256="00vvd5yg5f4r1xa0yasb54k452a58sjflbh681cmvr7p0m289ldl"; -url=http://luarocks.org/manifests/teto/say-1.3-1.src.rock; } -; -version="1.3-1"; -pname="say"; -propagatedBuildInputs=[ lua]; } -; + meta = { + homepage = http://olivinelabs.com/busted/; + description="Elegant Lua unit testing."; + license = { + fullName = "MIT "; + }; + buildType="builtin"; + }; +}; -lua-term = buildLuaPackage rec { -meta={ -description="Terminal functions for Lua"; -homepage="https://github.com/hoelzro/lua-term"; -license=stdenv.lib.licenses.mit; } -; -src= fetchurl { -url="https://luarocks.org/lua-term-0.3-1.src.rock"; -sha256="1bxfaskb30hpcaz8jmv5mshp56dgxlc2bm6fgf02z556cdy3kapm"; } -; -pname="lua-term"; -version="0.3-1"; -propagatedBuildInputs=[]; } -; -luasocket = buildLuaPackage rec { -pname="luasocket"; -propagatedBuildInputs=[ lua]; -version="3.0rc1-2"; -meta={ -license=stdenv.lib.licenses.mit; -homepage="http://luaforge.net/projects/luasocket/"; -description="Network support for the Lua language"; } -; -src= fetchurl { -sha256="1isin9m40ixpqng6ds47skwa4zxrc6w8blza8gmmq566w6hz50iq"; -url="https://luarocks.org/luasocket-3.0rc1-2.src.rock"; } -; } -; -ltermbox = buildLuaPackage rec { -propagatedBuildInputs=[ lua]; -src= fetchurl { -sha256="08jqlmmskbi1ml1i34dlmg6hxcs60nlm32dahpxhcrgjnfihmyn8"; -url="https://luarocks.org/ltermbox-0.2-1.src.rock"; } -; -version="0.2-1"; -pname="ltermbox"; +luassert = buildLuaPackage rec { +version="1.7.10-0"; +pname="luassert"; +propagatedBuildInputs=[ lua say]; meta={ -homepage="http://code.google.com/p/termbox"; -description="A termbox library package"; +homepage=http://olivinelabs.com/busted/; +description="Lua Assertions Extension"; license=stdenv.lib.licenses.mit; } -; } ; -luafilesystem = buildLuaPackage rec { -version="1.7.0-2"; src= fetchurl { -url="https://luarocks.org/luafilesystem-1.7.0-2.src.rock"; -sha256="0xhmd08zklsgpnpjr9rjipah35fbs8jd4v4va36xd8bpwlvx9rk5"; } -; -pname="luafilesystem"; -propagatedBuildInputs=[ lua]; -meta={ -description="File System Library for the Lua Programming Language"; -license=stdenv.lib.licenses.mit; -homepage="git://github.com/keplerproject/luafilesystem"; } -; } -; -penlight = buildLuaPackage rec { -version="1.3.1-1"; -pname="penlight"; -propagatedBuildInputs=[ luafilesystem]; -src= fetchurl { -sha256="10w7yf1n3nrr5ima9aggs9zd7mwiynb29df4vl2qb6ca0p2zrihk"; -url="https://luarocks.org/penlight-1.3.1-1.src.rock"; } -; -meta={ -description="Lua utility libraries loosely based on the Python standard libraries"; -license=stdenv.lib.licenses.mit; -homepage="http://stevedonovan.github.com/Penlight"; } +url=http://luarocks.org/manifests/teto/luassert-1.7.10-0.src.rock; +sha256="03kd0zhpl2ir0r45z12bayvwahy8pbbcwk1vfphf0zx11ik84rss"; } ; } ; + } +/* GENERATED */ diff --git a/pkgs/top-level/lua-packages.nix b/pkgs/top-level/lua-packages.nix index 17c6ca828bb92..0165b2a31c1ca 100644 --- a/pkgs/top-level/lua-packages.nix +++ b/pkgs/top-level/lua-packages.nix @@ -111,7 +111,7 @@ let luabitop = buildLuaPackage rec { version = "1.0.2"; - name = "bitop-${version}"; + pname = "bitop"; src = fetchurl { url = "https://luarocks.org/manifests/luarocks/luabitop-1.0.2-1.src.rock"; @@ -667,6 +667,26 @@ let }; }; +coxpcall = buildLuaPackage rec { +src= fetchurl { + +# url=http://luarocks.org/manifests/teto/coxpcall-scm-1.src.rock; +# sha256="0cz1m32kxi5zx6s69vxdldaafmzqj5wwr69i93abmlz15nx2bqpf"; + +url=https://luarocks.org/manifests/hisham/coxpcall-1.15.0-1.src.rock; +sha256="0x8hzly5vjmj8xbhg6l2hxhj57ysgrz7afb7wss4pmkc187d74zz"; +} +; +version="1.15.0-1"; +pname="coxpcall"; +propagatedBuildInputs=[]; +meta={ +license=stdenv.lib.licenses.mit; +description="Coroutine safe xpcall and pcall"; +homepage=http://keplerproject.github.io/coxpcall; } +; } +; + vicious = stdenv.mkDerivation rec { name = "vicious-${version}"; version = "2.3.1";