emilua: init at 0.4.3

authored by

Valter Nazianzeno and committed by
Anderson Torres
05f82739 9814d9d6

+113
+111
pkgs/development/interpreters/emilua/default.nix
··· 1 + { lib 2 + , stdenv 3 + , meson 4 + , ninja 5 + , fetchFromGitHub 6 + , fetchFromGitLab 7 + , re2c 8 + , gperf 9 + , gawk 10 + , xxd 11 + , pkg-config 12 + , boost182 13 + , fmt 14 + , luajit_openresty 15 + , ncurses 16 + , serd 17 + , sord 18 + , libcap 19 + , liburing 20 + , openssl 21 + , asciidoctor 22 + }: 23 + 24 + let 25 + emilua-http-wrap = fetchFromGitHub { 26 + owner = "BoostGSoC14"; 27 + repo = "boost.http"; 28 + rev = "93ae527c89ffc517862e1f5f54c8a257278f1195"; 29 + name = "emilua-http"; 30 + hash = "sha256-MN29YwkTi0TJ2V+vRI9nUIxvJKsG+j3nT3o0yQB3p0o="; 31 + }; 32 + 33 + trial-protocol-wrap = fetchFromGitHub { 34 + owner = "breese"; 35 + repo = "trial.protocol"; 36 + rev = "79149f604a49b8dfec57857ca28aaf508069b669"; 37 + name = "trial-protocol"; 38 + hash = "sha256-Xd8bX3z9PZWU17N9R95HXdj6qo9at5FBL/+PTVaJgkw="; 39 + }; 40 + in 41 + stdenv.mkDerivation rec { 42 + pname = "emilua"; 43 + version = "0.4.3"; 44 + 45 + src = fetchFromGitLab { 46 + owner = "emilua"; 47 + repo = "emilua"; 48 + rev = "v${version}"; 49 + hash = "sha256-vZITPQ1qUHhw24c0HKdR6VenviOc6JizQQ8w7K94irc="; 50 + }; 51 + 52 + buildInputs = [ 53 + luajit_openresty 54 + boost182 55 + fmt 56 + ncurses 57 + serd 58 + sord 59 + libcap 60 + liburing 61 + openssl 62 + ]; 63 + 64 + nativeBuildInputs = [ 65 + re2c 66 + gperf 67 + gawk 68 + xxd 69 + pkg-config 70 + asciidoctor 71 + meson 72 + ninja 73 + ]; 74 + 75 + # Meson is no longer able to pick up Boost automatically. 76 + # https://github.com/NixOS/nixpkgs/issues/86131 77 + env = { 78 + BOOST_INCLUDEDIR = "${lib.getDev boost182}/include"; 79 + BOOST_LIBRARYDIR = "${lib.getLib boost182}/lib"; 80 + }; 81 + 82 + mesonFlags = [ 83 + "-Dversion_suffix=-nixpkgs1" 84 + "-Denable_http=true" 85 + "-Denable_file_io=true" 86 + "-Denable_io_uring=true" 87 + "-Denable_linux_namespaces=true" 88 + "-Denable_tests=true" 89 + "-Denable_manpages=true" 90 + ]; 91 + 92 + postPatch = '' 93 + pushd subprojects 94 + cp -r ${emilua-http-wrap} emilua-http 95 + cp -r ${trial-protocol-wrap} trial-protocol 96 + chmod +w emilua-http trial-protocol 97 + cp "packagefiles/emilua-http/meson.build" "emilua-http/" 98 + cp "packagefiles/trial.protocol/meson.build" "trial-protocol/" 99 + popd 100 + 101 + substituteInPlace src/emilua_gperf.awk --replace '#!/usr/bin/env -S gawk --file' '#!${gawk}/bin/gawk -f' 102 + ''; 103 + 104 + meta = with lib; { 105 + description = "Lua execution engine"; 106 + homepage = "https://emilua.org/"; 107 + license = licenses.boost; 108 + maintainers = with maintainers; [ manipuladordedados ]; 109 + platforms = platforms.linux; 110 + }; 111 + }
+2
pkgs/top-level/all-packages.nix
··· 17876 17876 zuo = callPackage ../development/interpreters/zuo { }; 17877 17877 17878 17878 ### LUA interpreters 17879 + emilua = callPackage ../development/interpreters/emilua { }; 17880 + 17879 17881 luaInterpreters = callPackage ./../development/interpreters/lua-5 { }; 17880 17882 inherit (luaInterpreters) lua5_1 lua5_2 lua5_2_compat lua5_3 lua5_3_compat lua5_4 lua5_4_compat luajit_2_1 luajit_2_0 luajit_openresty; 17881 17883