summary refs log tree commit diff
path: root/pkgs/top-level/lua-packages.nix
diff options
context:
space:
mode:
authorAlexei Robyn <shados@shados.net>2019-06-13 21:01:10 +1000
committerAlexei Robyn <shados@shados.net>2019-06-14 13:17:15 +1000
commit274715cbc355e9d50e07a2f60a65a183f7d9855d (patch)
tree52131c594bc72a6a8d07fd64f45ad9ec82fdbe33 /pkgs/top-level/lua-packages.nix
parent8eabbb3d205541a33658779dc70dc217d3161ed2 (diff)
downloadnixpkgs-274715cbc355e9d50e07a2f60a65a183f7d9855d.tar
nixpkgs-274715cbc355e9d50e07a2f60a65a183f7d9855d.tar.gz
nixpkgs-274715cbc355e9d50e07a2f60a65a183f7d9855d.tar.bz2
nixpkgs-274715cbc355e9d50e07a2f60a65a183f7d9855d.tar.lz
nixpkgs-274715cbc355e9d50e07a2f60a65a183f7d9855d.tar.xz
nixpkgs-274715cbc355e9d50e07a2f60a65a183f7d9855d.tar.zst
nixpkgs-274715cbc355e9d50e07a2f60a65a183f7d9855d.zip
luaPackages: Replace all rockspec packages with generated ones
luaPackages replaced by generated ones:
- bit32
- compat53
- cqueues
- luacyrussasl -> cyrussasl (luarocks name)
- luaexpat
- luadbi -> luadbi front-end module + separate backend modules
  luadbi-{mysql,postgresql,sqlite3}
- luafilesystem
- luaossl
- luasec
- luasocket
- luastdlib -> stdlib (luarocks name)
- lrexlib -> lrexlib-pcre (we already have lrexlib-gnu and
  lrexlib-posix, lrexlib-pcre however appears to be the variant used in
  mudlet, which is the only current dep in nixpkgs)
- luasqlite -> luasql-sqlite3 (luarocks name)
- lfs -> luafilesytem (we literally had two manually written
  luafilesystem expressions, under different names)

Changes and additions to overrides to generated luarocks packgaes,
including:
- busted: Install bash completions along with the zsh ones
- cqueues:
    - Perform minor surgery on the rockspec to allow using a single
      rockspec to build for all supported Lua versions
    - Add a patch by @vcunat to work around a build issue
- luuid: Wrote a tiny patch to allow for Lua 5.1/Luajit compatibility
- General changes:
    - Sorted the packages
    - Attempted to make the formatting consistent
    - Preferenced `.override` instead of `.overrideAttrs` wherever
      possible

Minor changes to other packages to adjust for the Lua package changes:
- luakit expression simplified
- prosody expression simplified; but users will now need to specify the
  luadbi backend module they intend to use in withExtraLibs
- knot-resolver inputs correctd
- mudlet inputs corrected (although this package was and should still be
  broken)
Diffstat (limited to 'pkgs/top-level/lua-packages.nix')
-rw-r--r--pkgs/top-level/lua-packages.nix432
1 files changed, 1 insertions, 431 deletions
diff --git a/pkgs/top-level/lua-packages.nix b/pkgs/top-level/lua-packages.nix
index a15982fe8b9..9946167dd49 100644
--- a/pkgs/top-level/lua-packages.nix
+++ b/pkgs/top-level/lua-packages.nix
@@ -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 = "bit32-${version}";
-
-    src = fetchFromGitHub {
-      owner = "keplerproject";
-      repo = "lua-compat-5.2";
-      rev = "bitlib-${version}";
-      sha256 = "1ipqlbvb5w394qwhm2f3w6pdrgy8v4q8sps5hh3pqz14dcqwakhj";
-    };
-
-    buildPhase = ''
-      cc ${if stdenv.isDarwin then "-bundle -undefined dynamic_lookup -all_load" else "-shared"} -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 = "Lua 5.2 bit manipulation library";
-      homepage = "http://www.lua.org/manual/5.2/manual.html#6.7";
-      license = licenses.mit;
-      maintainers = with maintainers; [ lblasc ];
-      platforms = platforms.unix;
-    };
-  };
-
-  compat53 = buildLuaPackage rec {
-    version = "0.7";
-    name = "compat53-${version}";
-
-    src = fetchFromGitHub {
-      owner = "keplerproject";
-      repo = "lua-compat-5.3";
-      rev = "v${version}";
-      sha256 = "02a14nvn7aggg1yikj9h3dcf8aqjbxlws1bfvqbpfxv9d5phnrpz";
-    };
-
-    nativeBuildInputs = [ pkgconfig ];
-
-    postConfigure = ''
-      CFLAGS+=" -shared $(pkg-config --libs ${if isLuaJIT then "luajit" else "lua"})"
-    '';
-
-    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 "$out/share/lua/${lua.luaversion}/compat53" compat53/*.lua
-      install -Dt "$out/lib/lua/${lua.luaversion}/compat53" *.so
-    '';
-
-    meta = with stdenv.lib; {
-      description = "Compatibility module providing Lua-5.3-style APIs for Lua 5.2 and 5.1";
-      homepage = "https://github.com/keplerproject/lua-compat-5.3";
-      license = licenses.mit;
-      maintainers = with maintainers; [ vcunat ];
-      platforms = platforms.all;
-    };
-  };
-
-  cqueues = buildLuaPackage rec {
-    name = "cqueues-${version}";
-    version = "20171014";
-
-    src = fetchurl {
-      url = "https://www.25thandclement.com/~william/projects/releases/${name}.tgz";
-      sha256 = "1dabhpn6r0hlln8vx9hxm34pfcm46qzgpb2apmziwg5z51fi4ksb";
-    };
-
-    preConfigure = ''export prefix=$out'';
-
-    # https://github.com/wahern/cqueues/issues/216
-    NIX_CFLAGS_COMPILE = [ "-DCQUEUES_VERSION=${version}" ];
-
-    nativeBuildInputs = [ gnum4 ];
-    buildInputs = [ openssl ];
-
-    meta = with stdenv.lib; {
-      description = "A type of event loop for Lua";
-      homepage = "https://www.25thandclement.com/~william/projects/cqueues.html";
-      license = licenses.mit;
-      maintainers = with maintainers; [ vcunat ];
-      platforms = platforms.unix;
-    };
-  };
-
-  luacyrussasl = buildLuaPackage rec {
-    version = "1.1.0";
-    name = "lua-cyrussasl-${version}";
-    src = fetchFromGitHub {
-      owner = "JorjBauer";
-      repo = "lua-cyrussasl";
-      rev = "v${version}";
-      sha256 = "14kzm3vk96k2i1m9f5zvpvq4pnzaf7s91h5g4h4x2bq1mynzw2s1";
-    };
-
-    preBuild = ''
-      makeFlagsArray=(
-        CFLAGS="-O2 -fPIC"
-        LDFLAGS="-O -shared -fpic -lsasl2"
-        LUAPATH="$out/share/lua/${lua.luaversion}"
-        CPATH="$out/lib/lua/${lua.luaversion}"
-      );
-      mkdir -p $out/{share,lib}/lua/${lua.luaversion}
-    '';
-
-    buildInputs = [ cyrus_sasl ];
-
-    meta = with stdenv.lib; {
-      homepage = "https://github.com/JorjBauer/lua-cyrussasl";
-      description = "Cyrus SASL library for Lua 5.1+";
-      license = licenses.bsd3;
-    };
-  };
-
-  luaexpat = buildLuaPackage rec {
-    version = "1.3.0";
-    name = "expat-${version}";
-
-    src = fetchurl {
-      url = "https://matthewwild.co.uk/projects/luaexpat/luaexpat-${version}.tar.gz";
-      sha256 = "1hvxqngn0wf5642i5p3vcyhg3pmp102k63s9ry4jqyyqc1wkjq6h";
-    };
-
-    buildInputs = [ expat ];
-
-    preConfigure = stdenv.lib.optionalString stdenv.isDarwin ''
-      substituteInPlace Makefile \
-      --replace '-shared' '-bundle -undefined dynamic_lookup -all_load'
-    '';
-
-    preBuild = ''
-      makeFlagsArray=(
-        LUA_LDIR="$out/share/lua/${lua.luaversion}"
-        LUA_INC="-I${lua}/include" LUA_CDIR="$out/lib/lua/${lua.luaversion}"
-        EXPAT_INC="-I${expat.dev}/include");
-    '';
-
-    disabled = isLua53 || isLuaJIT;
-
-    meta = with stdenv.lib; {
-      description = "SAX XML parser based on the Expat library";
-      homepage = "http://matthewwild.co.uk/projects/luaexpat";
-      license = licenses.mit;
-      maintainers = with maintainers; [ flosse ];
-      platforms = platforms.unix;
-    };
-  };
-
-  luadbi = buildLuaPackage rec {
-    name = "luadbi-${version}";
-    version = "0.7.2";
-
-    src = fetchFromGitHub {
-      owner = "mwild1";
-      repo = "luadbi";
-      rev = "v${version}";
-      sha256 = "167ivwmczhp98bxzpz3wdxcfj6vi0a10gpi7rdfjs2rbfwkzqvjh";
-    };
-
-    MYSQL_INC = [ "-I${mysql.connector-c}/include/mysql" ];
-    MYSQL_LDFLAGS= [
-      "-lmysqlclient"
-      "-L${mysql.connector-c}/lib/mysql"
-    ];
-
-    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 = [
-      "LUA_CDIR=$(out)/lib/lua/${lua.luaversion}"
-      "LUA_LDIR=$(out)/share/lua/${lua.luaversion}"
-    ];
-
-    installTargets = [
-      "install_lua" "install_mysql" "install_psql" "install_sqlite3"
-    ];
-
-    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 = "filesystem-${version}";
-
-    src = fetchFromGitHub {
-      owner = "keplerproject";
-      repo = "luafilesystem";
-      rev = "v${stdenv.lib.replaceChars ["."] ["_"] version}";
-      sha256 = "0fibrasshlgpa71m9wkpjxwmylnxpcf06rpqbaa0qwvqh94nhwby";
-    };
-
-    preConfigure = ''
-      substituteInPlace config --replace "CC= gcc" "";
-    ''
-    + 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 = "Lua library complementing filesystem-related functions";
-      homepage = "https://github.com/keplerproject/luafilesystem";
-      license = licenses.mit;
-      maintainers = with maintainers; [ flosse ];
-      platforms = platforms.unix;
-    };
-  };
-
-  luaossl = buildLuaPackage rec {
-    name = "luaossl-${version}";
-    version = "20181207";
-
-    src = fetchurl {
-      url = "https://github.com/wahern/luaossl/releases/download/rel-${version}/luaossl-rel-${version}.zip";
-      sha256 = "194r6db80ksh4zh8d2k35q6vci9zbrfvkanjl280y6ij2xyhkvj7";
-    };
-
-    preConfigure = ''export prefix=$out'';
-
-    nativeBuildInputs = [ unzip ];
-    buildInputs = [ openssl ];
-
-    meta = with stdenv.lib; {
-      description = "Comprehensive binding to OpenSSL for Lua 5.1+";
-      homepage = "https://www.25thandclement.com/~william/projects/luaossl.html";
-      license = licenses.mit;
-      maintainers = with maintainers; [ vcunat ];
-      platforms = platforms.unix;
-    };
-  };
-
-  luasec = buildLuaPackage rec {
-    name = "sec-0.8";
-
-    src = fetchFromGitHub {
-      owner = "brunoos";
-      repo = "luasec";
-      rev = "lua${name}";
-      sha256 = "1cgb7ihnrrfr59a2da4d3chr7lqpid98xpglmzhv3hrpg4x5sksz";
-    };
-
-    propagatedBuildInputs = [ luasocket ];
-    buildInputs = [ openssl ];
-
-    preBuild = ''
-      makeFlagsArray=(
-        ${platformString}
-        LUAPATH="$out/share/lua/${lua.luaversion}"
-        LUACPATH="$out/lib/lua/${lua.luaversion}"
-        INC_PATH="-I${lua}/include"
-        LIB_PATH="-L$out/lib");
-    '';
-
-    meta = with stdenv.lib; {
-      description = "Lua binding for OpenSSL library to provide TLS/SSL communication";
-      homepage = "https://github.com/brunoos/luasec";
-      license = licenses.mit;
-      maintainers = with maintainers; [ flosse ];
-      platforms = platforms.unix;
-    };
-  };
-
-  luasocket = buildLuaPackage rec {
-    name = "socket-${version}";
-    version = "3.0-rc1";
-
-    src = fetchFromGitHub {
-      owner = "diegonehab";
-      repo = "luasocket";
-      rev = "v${version}";
-      sha256 = "1chs7z7a3i3lck4x7rz60ziwbf793gw169hpjdfca8y4yf1hzsxk";
-    };
-
-    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 = [ "install" "install-unix" ];
-
-    meta = with stdenv.lib; {
-      description = "Network support for Lua";
-      homepage = "http://w3.impa.br/~diego/software/luasocket/";
-      license = licenses.mit;
-      maintainers = with maintainers; [ ];
-      platforms = with platforms; darwin ++ linux ++ freebsd ++ illumos;
-    };
-  };
-
   luxio = buildLuaPackage rec {
     name = "luxio-${version}";
     version = "13";
@@ -453,115 +132,6 @@ with self; {
     };
   };
 
-
-  luastdlib = buildLuaPackage rec {
-    name = "stdlib-${version}";
-    version = "41.2.1";
-
-    src = fetchFromGitHub {
-      owner = "lua-stdlib";
-      repo = "lua-stdlib";
-      rev = "release-v${version}";
-      sha256 = "03wd1qvkrj50fjszb2apzdkc8d5bpfbbi9pajl0vbrlzzmmi3jlq";
-    };
-
-    nativeBuildInputs = [ autoreconfHook unzip ];
-
-    meta = with stdenv.lib; {
-      description = "General Lua libraries";
-      homepage = "https://github.com/lua-stdlib/lua-stdlib";
-      license = licenses.mit;
-      maintainers = with maintainers; [ vyp ];
-      platforms = platforms.linux;
-    };
-  };
-
-  lrexlib = buildLuaPackage rec {
-    name = "lrexlib-${version}";
-    version = "2.8.0";
-
-    src = fetchFromGitHub {
-      owner = "rrthomas";
-      repo = "lrexlib";
-      rev = "rel-2-8-0";
-      sha256 = "1c62ny41b1ih6iddw5qn81gr6dqwfffzdp7q6m8x09zzcdz78zhr";
-    };
-
-    buildInputs = [ luastdlib pcre luarocks oniguruma gnulib tre glibc ];
-
-    buildPhase = let
-      luaVariable = ''LUA_PATH="${luastdlib}/share/lua/${lua.luaversion}/?/init.lua;${luastdlib}/share/lua/${lua.luaversion}/?.lua"'';
-      pcreVariable = "PCRE_DIR=${pcre.out} PCRE_INCDIR=${pcre.dev}/include";
-      onigVariable = "ONIG_DIR=${oniguruma}";
-      gnuVariable = "GNU_INCDIR=${gnulib}/lib";
-      treVariable = "TRE_DIR=${tre}";
-      posixVariable = "POSIX_DIR=${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 = "Lua bindings of various regex library APIs";
-      homepage = "https://github.com/rrthomas/lrexlib";
-      license = licenses.mit;
-      maintainers = with maintainers; [ vyp ];
-      platforms = platforms.linux;
-    };
-  };
-
-  luasqlite3 = buildLuaPackage rec {
-    name = "sqlite3-${version}";
-    version = "2.3.0";
-
-    src = fetchFromGitHub {
-      owner = "LuaDist";
-      repo = "luasql-sqlite3";
-      rev = version;
-      sha256 = "05k8zs8nsdmlwja3hdhckwknf7ww5cvbp3sxhk2xd1i3ij6aa10b";
-    };
-
-    disabled = isLua53;
-
-    buildInputs = [ sqlite ];
-
-    patches = [ ../development/lua-modules/luasql.patch ];
-
-    meta = with stdenv.lib; {
-      description = "Database connectivity for Lua";
-      homepage = "https://github.com/LuaDist/luasql-sqlite3";
-      license = licenses.mit;
-      maintainers = with maintainers; [ vyp ];
-      platforms = platforms.linux;
-    };
-  };
-
-  lfs = buildLuaPackage rec {
-    name = "lfs-${version}";
-    version = "1.7.0.2";
-
-    src = fetchFromGitHub {
-      owner = "keplerproject";
-      repo = "luafilesystem";
-      rev = "v" + stdenv.lib.replaceStrings ["."] ["_"] version;
-      sha256 = "0zmprgkm9zawdf9wnw0v3w6ibaj442wlc6alp39hmw610fl4vghi";
-    };
-
-    meta = with stdenv.lib; {
-      description = "Portable library for filesystem operations";
-      homepage = https://keplerproject.github.com/luafilesystem;
-      license = licenses.mit;
-      maintainers = with maintainers; [ vcunat ];
-      platforms = platforms.all;
-    };
-  };
-
-
   vicious = toLuaModule(stdenv.mkDerivation rec {
     name = "vicious-${version}";
     version = "2.3.1";