Subject: [PATCH] gnu: Add Fennel
From: "Paul A. Patience" <[email-masked]>
To: "[email-masked]" <[email-masked]>
Date: Wed, 16 Dec 2020 17:05:34 +0000
List-Id: <debbugs-submit.debbugs.gnu.org>

* gnu/packages/lua.scm (fennel): New variable.
---
 gnu/packages/lua.scm | 37 +++++++++++++++++++++++++++++++++++++
 1 file changed, 37 insertions(+)

diff --git a/gnu/packages/lua.scm b/gnu/packages/lua.scm
index 5d6da69fae..cd4ff4a29a 100644
--- a/gnu/packages/lua.scm
+++ b/gnu/packages/lua.scm
@@ -1061,3 +1061,40 @@ signals to Linux processes.")
     (description "This package provides Lua module for nonblocking system
 shell command executions.")
     (license license:bsd-3)))
+
+(define-public fennel
+  (package
+    (name "fennel")
+    (version "0.7.0")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://git.sr.ht/~technomancy/fennel")
+                    (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "17pdcwhfw754fblppw46qphnsvxrn3b7066cz54lv8c0c12iryim"))))
+    (build-system gnu-build-system)
+    (arguments
+     '(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
+       #:test-target "test"
+       #:phases
+       (modify-phases %standard-phases
+         (delete 'configure)
+         (add-before 'build 'delete-fennelview
+           ;; The repository bundles a precompiled fennelview.lua.
+           (lambda _ (delete-file "fennelview.lua") #t))
+         (add-after 'build 'patch-fennel
+           (lambda _
+             (substitute* "fennel"
+               (("/usr/bin/env lua") (which "lua")))
+             #t)))))
+    (inputs `(("lua" ,lua)))
+    (home-page "https://fennel-lang.org/")
+    (synopsis "A Lisp that compiles to Lua")
+    (description
+     "Fennel is a programming language that brings together the speed,
+simplicity, and reach of Lua with the flexibility of a Lisp syntax and macro
+system.")
+    (license license:expat)))
--
2.29.2