GNU bug report logs -
#53456
[PATCH] gnu: Add fnlfmt.
Previous Next
Reported by: Brandon Lucas <br <at> ndon.dk>
Date: Sat, 22 Jan 2022 21:30:02 UTC
Severity: normal
Tags: patch
Done: Ludovic Courtès <ludo <at> gnu.org>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 53456 in the body.
You can then email your comments to 53456 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
guix-patches <at> gnu.org
:
bug#53456
; Package
guix-patches
.
(Sat, 22 Jan 2022 21:30:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Brandon Lucas <br <at> ndon.dk>
:
New bug report received and forwarded. Copy sent to
guix-patches <at> gnu.org
.
(Sat, 22 Jan 2022 21:30:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/lua.scm (fnlfmt): New variable.
---
gnu/packages/lua.scm | 46 ++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 46 insertions(+)
diff --git a/gnu/packages/lua.scm b/gnu/packages/lua.scm
index 99f09a26f1..50f97c3912 100644
--- a/gnu/packages/lua.scm
+++ b/gnu/packages/lua.scm
@@ -15,6 +15,7 @@
;;; Copyright © 2020 Paul A. Patience <paul <at> apatience.com>
;;; Copyright © 2021 Vinícius dos Santos Oliveira <vini.ipsmaker <at> gmail.com>
;;; Copyright © 2021 Greg Hogan <code <at> greghogan.com>
+;;; Copyright © 2022 Brandon Lucas <br <at> ndon.dk>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -1208,3 +1209,48 @@ (define-public fennel
simplicity, and reach of Lua with the flexibility of a Lisp syntax and macro
system.")
(license license:expat)))
+
+(define-public fnlfmt
+ (package
+ (name "fnlfmt")
+ (version "0.2.2")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.sr.ht/~technomancy/fnlfmt")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1rv0amqhy5ypi3pvxfaadn3k1cy4mjlc49wdzl2psz3i11w9gr36"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:test-target "test"
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (add-before 'build 'patch-makefile
+ ;; Use input fennel instead of bundled fennel.
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "Makefile"
+ (("./fennel") (search-input-file inputs "/bin/fennel")))))
+ (add-after 'build 'patch-fnlfmt
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "fnlfmt"
+ (("/usr/bin/env .*lua") (search-input-file inputs "/bin/lua")))))
+ (replace 'install
+ ;; There is no install target; manually install the output file.
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out")) (bin (string-append out
+ "/bin")))
+ (for-each (lambda (file)
+ (install-file file bin))
+ (find-files "." "fnlfmt"))))))))
+ (inputs (list fennel))
+ (propagated-inputs (list lua))
+ (home-page "https://git.sr.ht/~technomancy/fnlfmt")
+ (synopsis "Automatic formatting of Fennel code")
+ (description
+ "Fnlfmt is a tool for automatically formatting Fennel code in a consistent
+way, following established lisp conventions.")
+ (license license:lgpl3+)))
--
2.34.0
Information forwarded
to
guix-patches <at> gnu.org
:
bug#53456
; Package
guix-patches
.
(Sat, 22 Jan 2022 21:34:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 53456 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Brandon Lucas schreef op za 22-01-2022 om 21:28 [+0000]:
> + (add-after 'build 'patch-fnlfmt
> + (lambda* (#:key inputs #:allow-other-keys)
> + (substitute* "fnlfmt"
> + (("/usr/bin/env .*lua") (search-input-file inputs
> "/bin/lua")))))
> + (inputs (list fennel))
> + (propagated-inputs (list lua))
Given that the shebang in 'fnlfmt' has been patched appropriately, what
is the point of propagating here? Can lua be moved to 'inputs'?
Greetings,
Maxime
[signature.asc (application/pgp-signature, inline)]
Information forwarded
to
guix-patches <at> gnu.org
:
bug#53456
; Package
guix-patches
.
(Sat, 22 Jan 2022 21:40:01 GMT)
Full text and
rfc822 format available.
Message #11 received at 53456 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Brandon Lucas schreef op za 22-01-2022 om 21:28 [+0000]:
> + ;; Use input fennel instead of bundled fennel.
> + (lambda* (#:key inputs #:allow-other-keys)
> + (substitute* "Makefile"
> + (("./fennel") (search-input-file inputs "/bin/fennel")))))
'fennel' is in native-inputs, not inputs. For historical reasons,
the 'inputs' in the phase contains both the native-inputs and native-
inputs in the phase is #false when compiling natively, which can be
confusing (maybe that can be addressed someday).
I suggest:
(lambda* (#:key native-inputs inputs #:allow-other-keys)
(substitute* "Makefile"
(("./fennel")
(search-input-file (or native-inputs inputs) "/bin/fennel")))))
[signature.asc (application/pgp-signature, inline)]
Information forwarded
to
guix-patches <at> gnu.org
:
bug#53456
; Package
guix-patches
.
(Sat, 22 Jan 2022 21:42:01 GMT)
Full text and
rfc822 format available.
Message #14 received at 53456 <at> debbugs.gnu.org (full text, mbox):
Brandon Lucas schreef op za 22-01-2022 om 21:28 [+0000]:
> + (add-after 'build 'patch-fnlfmt
> + (lambda* (#:key inputs #:allow-other-keys)
> + (substitute* "fnlfmt"
> + (("/usr/bin/env .*lua") (search-input-file inputs "/bin/lua")))))
I think modifying the Makefile (in patch-makefile) to replace the
/usr/bin/env lua there would be a little simpler.
Information forwarded
to
guix-patches <at> gnu.org
:
bug#53456
; Package
guix-patches
.
(Sat, 22 Jan 2022 21:44:02 GMT)
Full text and
rfc822 format available.
Message #17 received at 53456 <at> debbugs.gnu.org (full text, mbox):
Brandon Lucas schreef op za 22-01-2022 om 21:28 [+0000]:
> + (source (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://git.sr.ht/~technomancy/fnlfmt")
> + (commit version)))
> + (file-name (git-file-name name version))
> + (sha256
> + (base32
> + "1rv0amqhy5ypi3pvxfaadn3k1cy4mjlc49wdzl2psz3i11w9gr36"))))
> + (build-system gnu-build-system)
> + (arguments
> + '(#:test-target "test"
> + #:phases
> + (modify-phases %standard-phases
> + (delete 'configure)
> + (add-before 'build 'patch-makefile
> + ;; Use input fennel instead of bundled fennel.
> + (lambda* (#:key inputs #:allow-other-keys)
> + (substitute* "Makefile"
> + (("./fennel") (search-input-file inputs "/bin/fennel")))))
Unbundling is conventionally done using an origin snippet.
See ‘17.4.5 Snippets versus Phases’ in the manual.
Information forwarded
to
guix-patches <at> gnu.org
:
bug#53456
; Package
guix-patches
.
(Sat, 22 Jan 2022 21:47:01 GMT)
Full text and
rfc822 format available.
Message #20 received at 53456 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Brandon Lucas schreef op za 22-01-2022 om 21:28 [+0000]:
> + (url "https://git.sr.ht/~technomancy/fnlfmt")
> + (commit version)))
Upstream appears to be violating the Expat license of the bundled
'fennel' by not including a copy of the Expat license:
[...], subject to the following conditions:
The above copyright notice and this permission notice shall be
included in all copies of substantial portions of the Software.
[...]
Can this be adddressed (upstream)?
Greetings,
Maxime.
[signature.asc (application/pgp-signature, inline)]
Information forwarded
to
guix-patches <at> gnu.org
:
bug#53456
; Package
guix-patches
.
(Sat, 22 Jan 2022 21:54:02 GMT)
Full text and
rfc822 format available.
Message #23 received at 53456 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Brandon Lucas schreef op za 22-01-2022 om 21:28 [+0000]:
> + (license license:lgpl3+)))
The lgpl3+ is by itself not a complete license, it is structured as a
few exceptions under conditions to the gpl. The lgpl3 even asks you to
include both a copy of the GPL3 and the LGPL3 license text:
https://git.sr.ht/~technomancy/fnlfmt/tree/main/item/LICENSE#L91
b) Accompany the Combined Work with a copy of the GNU GPL and this
license document.
Strictly speaking that's only for ‘Combined works’, and I don't expect
any trouble in practice. However, it would be nice to do things
properly. Would you be up to asking upstream to include a copy of the
GPL as well (which upstream isn't doing currently)?
Greetings,
Maxime.
[signature.asc (application/pgp-signature, inline)]
Information forwarded
to
guix-patches <at> gnu.org
:
bug#53456
; Package
guix-patches
.
(Sun, 23 Jan 2022 00:17:02 GMT)
Full text and
rfc822 format available.
Message #26 received at 53456 <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/lua.scm (fnlfmt): New variable.
---
Thank you for the review. I learned a lot. :)
I also realized that if I truly unbundle fennel from fnlfmt, I also need
to wrap it, so that it can load fennel at runtime. It only worked before
because I had failed to remove the fennel.lua file from the checkout.
I have tried to apply your other suggestions here as well.
I will also write to upstream and attempt to get the licensing
clarified.
gnu/packages/lua.scm | 65 ++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 65 insertions(+)
diff --git a/gnu/packages/lua.scm b/gnu/packages/lua.scm
index 99f09a26f1..1543d7bd11 100644
--- a/gnu/packages/lua.scm
+++ b/gnu/packages/lua.scm
@@ -15,6 +15,7 @@
;;; Copyright © 2020 Paul A. Patience <paul <at> apatience.com>
;;; Copyright © 2021 Vinícius dos Santos Oliveira <vini.ipsmaker <at> gmail.com>
;;; Copyright © 2021 Greg Hogan <code <at> greghogan.com>
+;;; Copyright © 2022 Brandon Lucas <br <at> ndon.dk>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -36,12 +37,14 @@ (define-module (gnu packages lua)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
+ #:use-module (guix gexp)
#:use-module (guix utils)
#:use-module (guix build-system gnu)
#:use-module (guix build-system cmake)
#:use-module (guix build-system meson)
#:use-module (guix build-system trivial)
#:use-module (gnu packages)
+ #:use-module (gnu packages bash)
#:use-module (gnu packages boost)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages glib)
@@ -1208,3 +1211,65 @@ (define-public fennel
simplicity, and reach of Lua with the flexibility of a Lisp syntax and macro
system.")
(license license:expat)))
+
+(define-public fnlfmt
+ (package
+ (name "fnlfmt")
+ (version "0.2.2")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.sr.ht/~technomancy/fnlfmt")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1rv0amqhy5ypi3pvxfaadn3k1cy4mjlc49wdzl2psz3i11w9gr36"))
+ (modules '((guix build utils)))
+ (snippet
+ #~(begin
+ ;; Use input fennel instead of bundled fennel.
+ (delete-file-recursively "fennel")
+ (delete-file-recursively "fennel.lua")
+ (substitute* "Makefile"
+ (("./fennel") "fennel"))))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:modules ((guix build gnu-build-system)
+ (guix build utils)
+ (ice-9 match))
+ #:test-target "test"
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (add-before 'build 'patch-makefile
+ (lambda* (#:key native-inputs inputs #:allow-other-keys)
+ (substitute* "Makefile"
+ ;; Patch lua shebang that gets inserted to fnlfmt.
+ (("/usr/bin/env lua")
+ (search-input-file (or native-inputs inputs) "/bin/lua")))))
+ (replace 'install
+ ;; There is no install target; manually install the output file.
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin")))
+ (for-each (lambda (file)
+ (install-file file bin))
+ (find-files "." "fnlfmt")))))
+ (add-after 'install 'wrap
+ (lambda* (#:key inputs native-inputs outputs #:allow-other-keys)
+ (let* ((all-inputs (or native-inputs inputs))
+ (fnlfmt (assoc-ref outputs "out"))
+ (lua-version ,(version-major+minor (package-version lua)))
+ (fennel (assoc-ref all-inputs "fennel")))
+ (wrap-program (string-append fnlfmt "/bin/fnlfmt")
+ `("LUA_PATH" ";" suffix
+ (,(format #f "~a/share/lua/~a/?.lua" fennel lua-version))))
+ #t))))))
+ (inputs (list bash-minimal lua fennel))
+ (home-page "https://git.sr.ht/~technomancy/fnlfmt")
+ (synopsis "Automatic formatting of Fennel code")
+ (description
+ "Fnlfmt is a tool for automatically formatting Fennel code in a consistent
+way, following established lisp conventions.")
+ (license license:lgpl3+)))
--
2.34.0
Information forwarded
to
guix-patches <at> gnu.org
:
bug#53456
; Package
guix-patches
.
(Sun, 23 Jan 2022 00:20:01 GMT)
Full text and
rfc822 format available.
Message #29 received at 53456 <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/lua.scm (fennel): Update to 03c1c95.
---
In order to properly wrap fnlfmt with LUA_PATH to fennel, we need to
know which /share/lua/x.x dir fennel got installed under.
The 1.0.0 release had a bug where fennel installed under 5.4 no matter
what lua was used to compile it. There has since been an update that
corrects this issue, so we can rely on the version of the lua input to
determine where the fennel.lua file got installed to.
gnu/packages/lua.scm | 66 +++++++++++++++++++++++---------------------
1 file changed, 34 insertions(+), 32 deletions(-)
diff --git a/gnu/packages/lua.scm b/gnu/packages/lua.scm
index 1543d7bd11..568505a457 100644
--- a/gnu/packages/lua.scm
+++ b/gnu/packages/lua.scm
@@ -1175,42 +1175,44 @@ (define-public emilua
(license license:boost1.0)))
(define-public fennel
- (package
- (name "fennel")
- (version "1.0.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
- "0d4rpf0f2aqxlca3kxrbhjjhf1knhiz8ccwlx8xid05mc16la70y"))))
- (build-system gnu-build-system)
- (arguments
- '(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
- #:tests? #t ; even on cross-build
- #:test-target "test"
- #:phases
- (modify-phases %standard-phases
- (delete 'configure)
- (add-after 'build 'patch-fennel
+ (let ((commit "03c1c95f2a79e45a9baf607f96a74c693b8b70f4")
+ (revision "0"))
+ (package
+ (name "fennel")
+ (version (git-version "1.0.0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.sr.ht/~technomancy/fennel")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1znp38h5q819gvcyl248zwvjsljfxdxdk8n82fnj6lyibiiqzgvx"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
+ #:tests? #t ; even on cross-build
+ #:test-target "test"
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (add-after 'build 'patch-fennel
(lambda* (#:key inputs #:allow-other-keys)
- (substitute* "fennel"
- (("/usr/bin/env .*lua")
- (search-input-file inputs "/bin/lua")))))
- (delete 'check)
- (add-after 'install 'check
+ (substitute* "fennel"
+ (("/usr/bin/env .*lua")
+ (search-input-file inputs "/bin/lua")))))
+ (delete 'check)
+ (add-after 'install 'check
(assoc-ref %standard-phases 'check)))))
- (inputs (list lua))
- (home-page "https://fennel-lang.org/")
- (synopsis "Lisp that compiles to Lua")
- (description
- "Fennel is a programming language that brings together the speed,
+ (inputs (list lua))
+ (home-page "https://fennel-lang.org/")
+ (synopsis "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)))
+ (license license:expat))))
(define-public fnlfmt
(package
--
2.34.0
Information forwarded
to
guix-patches <at> gnu.org
:
bug#53456
; Package
guix-patches
.
(Sun, 23 Jan 2022 11:06:01 GMT)
Full text and
rfc822 format available.
Message #32 received at 53456 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Brandon Lucas schreef op zo 23-01-2022 om 00:16 [+0000]:
> + (delete-file-recursively "fennel")
> + (delete-file-recursively "fennel.lua")
This is not wrong, but 'fennel' and 'fennel.lua' are regular files and
not directories, so (delete-file "fennel") (delete-file "fennel.lua")
would be sufficient.
[signature.asc (application/pgp-signature, inline)]
Information forwarded
to
guix-patches <at> gnu.org
:
bug#53456
; Package
guix-patches
.
(Sun, 23 Jan 2022 11:12:02 GMT)
Full text and
rfc822 format available.
Message #35 received at 53456 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Brandon Lucas schreef op zo 23-01-2022 om 00:16 [+0000]:
> + (inputs (list bash-minimal lua fennel))
'fennel' is used as a tool run during building
(https://git.sr.ht/~technomancy/fnlfmt/tree/main/item/Makefile#L3),
so it needs to be in native-inputs. It is also used as a kind of
library (see LUA_PATH in 'wrap' phase), so it needs to be in
native-inputs as well.
Summarised: 'fennel' needs to be in both inputs and native-inputs.
As a test, you can try to cross-compile fnlfmt:
# warning: this will first build a cross-compiler wich will take a lot
# of time
$ ./pre-inst-env guix build fnlfmt --target=aarch64-linux-gnu
It is not guaranteed that if it builds, it will work, but it is a
useful test.
Greetings,
Maxime.
[signature.asc (application/pgp-signature, inline)]
Information forwarded
to
guix-patches <at> gnu.org
:
bug#53456
; Package
guix-patches
.
(Sun, 23 Jan 2022 12:15:01 GMT)
Full text and
rfc822 format available.
Message #38 received at 53456 <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/lua.scm (fnlfmt): New variable.
---
You are right, fennel must be a native-input. Lua must be as well.
Thank you for the tip about cross-compiling. :)
I also simplified to delete-file as suggested.
gnu/packages/lua.scm | 66 ++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 66 insertions(+)
diff --git a/gnu/packages/lua.scm b/gnu/packages/lua.scm
index 99f09a26f1..2250990af9 100644
--- a/gnu/packages/lua.scm
+++ b/gnu/packages/lua.scm
@@ -15,6 +15,7 @@
;;; Copyright © 2020 Paul A. Patience <paul <at> apatience.com>
;;; Copyright © 2021 Vinícius dos Santos Oliveira <vini.ipsmaker <at> gmail.com>
;;; Copyright © 2021 Greg Hogan <code <at> greghogan.com>
+;;; Copyright © 2022 Brandon Lucas <br <at> ndon.dk>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -36,12 +37,14 @@ (define-module (gnu packages lua)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
+ #:use-module (guix gexp)
#:use-module (guix utils)
#:use-module (guix build-system gnu)
#:use-module (guix build-system cmake)
#:use-module (guix build-system meson)
#:use-module (guix build-system trivial)
#:use-module (gnu packages)
+ #:use-module (gnu packages bash)
#:use-module (gnu packages boost)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages glib)
@@ -1208,3 +1211,66 @@ (define-public fennel
simplicity, and reach of Lua with the flexibility of a Lisp syntax and macro
system.")
(license license:expat)))
+
+(define-public fnlfmt
+ (package
+ (name "fnlfmt")
+ (version "0.2.2")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.sr.ht/~technomancy/fnlfmt")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1rv0amqhy5ypi3pvxfaadn3k1cy4mjlc49wdzl2psz3i11w9gr36"))
+ (modules '((guix build utils)))
+ (snippet
+ #~(begin
+ ;; Use input fennel instead of bundled fennel.
+ (delete-file "fennel")
+ (delete-file "fennel.lua")
+ (substitute* "Makefile"
+ (("./fennel") "fennel"))))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:modules ((guix build gnu-build-system)
+ (guix build utils)
+ (ice-9 match))
+ #:test-target "test"
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (add-before 'build 'patch-makefile
+ (lambda* (#:key native-inputs inputs #:allow-other-keys)
+ (substitute* "Makefile"
+ ;; Patch lua shebang that gets inserted to fnlfmt.
+ (("/usr/bin/env lua")
+ (search-input-file (or native-inputs inputs) "/bin/lua")))))
+ (replace 'install
+ ;; There is no install target; manually install the output file.
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin")))
+ (for-each (lambda (file)
+ (install-file file bin))
+ (find-files "." "fnlfmt")))))
+ (add-after 'install 'wrap
+ (lambda* (#:key inputs native-inputs outputs #:allow-other-keys)
+ (let* ((all-inputs (or native-inputs inputs))
+ (fnlfmt (assoc-ref outputs "out"))
+ (lua-version ,(version-major+minor (package-version lua)))
+ (fennel (assoc-ref all-inputs "fennel")))
+ (wrap-program (string-append fnlfmt "/bin/fnlfmt")
+ `("LUA_PATH" ";" suffix
+ (,(format #f "~a/share/lua/~a/?.lua" fennel lua-version))))
+ #t))))))
+ (inputs (list bash-minimal))
+ (native-inputs (list lua fennel))
+ (home-page "https://git.sr.ht/~technomancy/fnlfmt")
+ (synopsis "Automatic formatting of Fennel code")
+ (description
+ "Fnlfmt is a tool for automatically formatting Fennel code in a consistent
+way, following established lisp conventions.")
+ (license license:lgpl3+)))
--
2.34.0
Information forwarded
to
guix-patches <at> gnu.org
:
bug#53456
; Package
guix-patches
.
(Sun, 23 Jan 2022 12:16:02 GMT)
Full text and
rfc822 format available.
Message #41 received at 53456 <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/lua.scm (fennel): Update to 03c1c95.
---
gnu/packages/lua.scm | 66 +++++++++++++++++++++++---------------------
1 file changed, 34 insertions(+), 32 deletions(-)
diff --git a/gnu/packages/lua.scm b/gnu/packages/lua.scm
index 2250990af9..4286475a2c 100644
--- a/gnu/packages/lua.scm
+++ b/gnu/packages/lua.scm
@@ -1175,42 +1175,44 @@ (define-public emilua
(license license:boost1.0)))
(define-public fennel
- (package
- (name "fennel")
- (version "1.0.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
- "0d4rpf0f2aqxlca3kxrbhjjhf1knhiz8ccwlx8xid05mc16la70y"))))
- (build-system gnu-build-system)
- (arguments
- '(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
- #:tests? #t ; even on cross-build
- #:test-target "test"
- #:phases
- (modify-phases %standard-phases
- (delete 'configure)
- (add-after 'build 'patch-fennel
+ (let ((commit "03c1c95f2a79e45a9baf607f96a74c693b8b70f4")
+ (revision "0"))
+ (package
+ (name "fennel")
+ (version (git-version "1.0.0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.sr.ht/~technomancy/fennel")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1znp38h5q819gvcyl248zwvjsljfxdxdk8n82fnj6lyibiiqzgvx"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
+ #:tests? #t ; even on cross-build
+ #:test-target "test"
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (add-after 'build 'patch-fennel
(lambda* (#:key inputs #:allow-other-keys)
- (substitute* "fennel"
- (("/usr/bin/env .*lua")
- (search-input-file inputs "/bin/lua")))))
- (delete 'check)
- (add-after 'install 'check
+ (substitute* "fennel"
+ (("/usr/bin/env .*lua")
+ (search-input-file inputs "/bin/lua")))))
+ (delete 'check)
+ (add-after 'install 'check
(assoc-ref %standard-phases 'check)))))
- (inputs (list lua))
- (home-page "https://fennel-lang.org/")
- (synopsis "Lisp that compiles to Lua")
- (description
- "Fennel is a programming language that brings together the speed,
+ (inputs (list lua))
+ (home-page "https://fennel-lang.org/")
+ (synopsis "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)))
+ (license license:expat))))
(define-public fnlfmt
(package
--
2.34.0
Information forwarded
to
guix-patches <at> gnu.org
:
bug#53456
; Package
guix-patches
.
(Sun, 23 Jan 2022 20:51:01 GMT)
Full text and
rfc822 format available.
Message #44 received at 53456 <at> debbugs.gnu.org (full text, mbox):
<maximedevos <at> telenet.be> wrote:
> Would you be up to asking upstream to include a copy of the
> GPL as well (which upstream isn't doing currently)?
Hi Maxime,
I wrote to upstream about this and the inclusion of the expat
license, and the author has updated the repo to include both
the full GPL text as well as the Expat license.
Kind regards,
Brandon.
Reply sent
to
Ludovic Courtès <ludo <at> gnu.org>
:
You have taken responsibility.
(Wed, 26 Jan 2022 15:53:02 GMT)
Full text and
rfc822 format available.
Notification sent
to
Brandon Lucas <br <at> ndon.dk>
:
bug acknowledged by developer.
(Wed, 26 Jan 2022 15:53:02 GMT)
Full text and
rfc822 format available.
Message #49 received at 53456-done <at> debbugs.gnu.org (full text, mbox):
Hi,
Brandon Lucas <br <at> ndon.dk> skribis:
> * gnu/packages/lua.scm (fnlfmt): New variable.
[...]
> * gnu/packages/lua.scm (fennel): Update to 03c1c95.
Applied.
Since we normally don’t package snapshots, I took the liberty to add the
justification you gave as a comment in next to the commit definition.
Thank you, and thanks Maxime for the thorough review!
Ludo’.
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Thu, 24 Feb 2022 12:24:08 GMT)
Full text and
rfc822 format available.
This bug report was last modified 3 years and 118 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.