Subject: [PATCH] gnu: emilua: Update to 0.10.1

From: Valter Sage <[email-masked]>
Date: Thu, 12 Dec 2024 09:41:13 -0300

From c513b87b1f0b5445a57bb1528617b86dfe3b38c1 Mon Sep 17 00:00:00 2001
From: Valter Nazianzeno <[email-masked]>
Date: Thu, 12 Dec 2024 09:37:54 -0300
Subject: [PATCH] Gnu: emilua: Update to 0.10.1

---
 gnu/packages/lua.scm | 47 +++++++++++---------------------------------
 1 file changed, 12 insertions(+), 35 deletions(-)

diff --git a/gnu/packages/lua.scm b/gnu/packages/lua.scm
index 074ab6a0aa..4473a76fbb 100644
--- a/gnu/packages/lua.scm
+++ b/gnu/packages/lua.scm
@@ -76,6 +76,7 @@ (define-module (gnu packages lua)
   #:use-module (gnu packages re2c)
   #:use-module (gnu packages readline)
   #:use-module (gnu packages rsync)
+  #:use-module (gnu packages serialization)  
   #:use-module (gnu packages ssh)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages version-control)
@@ -1298,7 +1299,7 @@ (define-public luarocks
 (define-public emilua
   (package
     (name "emilua")
-    (version "0.4.3")
+    (version "0.10.1")
     (source (origin
               (method git-fetch)
               (uri (git-reference
@@ -1307,7 +1308,7 @@ (define-public emilua
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "1dwag2pyqc0g86rris4w4fzafmz9a6kiqd47vdq7hl3a1lyi74mx"))))
+                "0la2yl6188kzzhy46gav4797lq24vg9fj1d1nwx6979x55gcm98g"))))
     (build-system meson-build-system)
     (arguments
      (list
@@ -1315,51 +1316,26 @@ (define-public emilua
       #~(modify-phases %standard-phases
           (add-after 'unpack 'patch
             (lambda* (#:key inputs #:allow-other-keys)
-              (substitute* "src/emilua_gperf.awk"
-                (("/usr/bin/env") (which "env")))
-              (substitute* "src/system.cpp"
-                (("P_PIDFD") "P_PID"))
-
-              (copy-recursively
-               (assoc-ref inputs "emilua-http")
-               "emilua-http")
               (copy-recursively
                (assoc-ref inputs "trial-protocol")
                "trial-protocol")
-
               (with-directory-excursion "subprojects"
-                (symlink "../emilua-http" "emilua-http")
-                (copy-file "packagefiles/emilua-http/meson.build"
-                           "emilua-http/meson.build")
                 (symlink "../trial-protocol" "trial-protocol")
                 (copy-file "packagefiles/trial.protocol/meson.build"
                            "trial-protocol/meson.build")))))
       #:configure-flags
-      #~(list "-Denable_http=true"
+      #~(list "-Dversion_suffix=-guix1"
               "-Denable_file_io=true"
               "-Denable_io_uring=true"
-              ;; TODO: Linux namespaces are disabled for now due to conflict
-              ;; with some packages in guix.
-              "-Denable_linux_namespaces=false"
-              "-Denable_manpages=false"
-              "-Dversion_suffix=-guix1")))
+              "-Denable_tests=false"
+              "-Denable_manpages=false")))
     (native-inputs
      (list luajit-lua52-openresty
            re2c
            gperf
-           xxd
            pkg-config))
     (inputs
-     `(("emilua-http"
-        ,(origin
-           (method git-fetch)
-           (uri (git-reference
-                 (url "https://github.com/BoostGSoC14/boost.http")
-                 (commit "93ae527c89ffc517862e1f5f54c8a257278f1195")))
-           (sha256
-            (base32
-             "0jm7fw0cjd3s9zkkvyh6mcj6z32hcy7l9bszv74l92qk15ivvp9h"))))
-       ("trial-protocol"
+     `(("trial-protocol"
         ,(origin
            (method git-fetch)
            (uri (git-reference
@@ -1370,7 +1346,8 @@ (define-public emilua
              "0k42i5b4v3zz5x0r3dssiymgmn2x8zg4fzdksya9aggxgigippsx"))))
        ("boost" ,boost)
        ("boost-static" ,boost-static)
-       ("fmt" ,fmt-8)
+       ("cereal" ,cereal)
+       ("fmt" ,fmt)
        ("gcc" ,gcc-12)
        ("luajit-lua52-openresty" ,luajit-lua52-openresty)
        ("ncurses" ,ncurses)
@@ -1378,6 +1355,7 @@ (define-public emilua
        ("sord" ,sord)
        ("libcap" ,libcap)
        ("liburing" ,liburing)
+       ("linux-libre-headers" ,linux-libre-headers-6.6)
        ("openssl" ,openssl)))
     (native-search-paths
      (list
@@ -1389,9 +1367,8 @@ (define-public emilua
     (synopsis "Lua execution engine")
     (description
      "Emilua is a LuaJIT-based Lua execution engine that supports async IO,
-fibers and actor-inspired threading.  The experimental builtin HTTP module is
-enabled.")
-    (license license:boost1.0)))
+fibers and actor-inspired threading.")
+    (license (list license:boost1.0 license:expat))))
 
 (define-public fennel
   (package
-- 
2.47.1