[PATCH] gnu: Add emacs-libyaml.

  • Done
  • quality assurance status badge
Details
2 participants
  • Nicolas Goaziou
  • Fredrik Salomonsson
Owner
unassigned
Submitted by
Fredrik Salomonsson
Severity
normal
F
F
Fredrik Salomonsson wrote on 27 Jun 2020 23:26
(address . guix-patches@gnu.org)(name . Fredrik Salomonsson)(address . plattfot@gmail.com)
20200627212657.171876-1-plattfot@gmail.com
* gnu/packages/emacs-xyz.scm (emacs-libyaml): New variable.
---
gnu/packages/emacs-xyz.scm | 52 ++++++++++++++++++++++++++++++++++++++
1 file changed, 52 insertions(+)

Toggle diff (72 lines)
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 8b03ce347c..b782383f44 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -141,6 +141,7 @@
#:use-module (gnu packages version-control)
#:use-module (gnu packages imagemagick)
#:use-module (gnu packages w3m)
+ #:use-module (gnu packages web)
#:use-module (gnu packages wget)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
@@ -19255,6 +19256,57 @@ processes for Emacs")
(lambda _
(copy-recursively "../extra" ".")))))))))
+(define-public emacs-libyaml
+ (let ((version "0")
+ (revision "1")
+ (commit "703e0d448c7ee24e25b513a3c65980c80e166805"))
+ (package
+ (name "emacs-libyaml")
+ (version (git-version version revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/syohex/emacs-libyaml")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "08l7pm9v50ykd3fkbm0bh2kcd57cadbc5i9r6rj51vd32w3pl2yl"))))
+ (build-system emacs-build-system)
+ (arguments
+ `(#:modules ((guix build emacs-build-system)
+ (guix build emacs-utils)
+ (guix build utils))
+ #:imported-modules (,@%emacs-build-system-modules
+ (guix build gnu-build-system))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'add-source-to-load-path 'substitute-libyaml-core-path
+ (lambda* (#:key outputs #:allow-other-keys)
+ (chmod "libyaml.el" #o644)
+ (substitute* "libyaml.el"
+ (("^\\(require 'libyaml-core\\)")
+ (string-append "(module-load \"" (assoc-ref outputs "out")
+ "/lib/libyaml-core.so\")")))
+ #t))
+ (add-after 'check 'make
+ ;; Run make.
+ (lambda* (#:key (make-flags '()) outputs #:allow-other-keys)
+ ;; Compile the shared object file.
+ (apply invoke "make" "all" "CPPFLAGS=" make-flags)
+ ;; Move the file into /lib.
+ (install-file
+ "libyaml-core.so"
+ (string-append (assoc-ref outputs "out") "/lib"))
+ #t)))
+ #:tests? #f))
+ (native-inputs `(("libyaml" ,libyaml)))
+ (home-page "https://github.com/syohex/emacs-libyaml")
+ (synopsis "Libyaml bindings for Emacs")
+ (description "This package implements bindings for
+@code{libyaml} to be able to parse yaml files in elisp.")
+ (license license:gpl3+))))
+
(define-public emacs-lsp-java
(package
(name "emacs-lsp-java")
--
2.26.2
N
N
Nicolas Goaziou wrote on 28 Jun 2020 21:27
(name . Fredrik Salomonsson)(address . plattfot@gmail.com)(address . 42094-done@debbugs.gnu.org)
87zh8nvvmu.fsf@nicolasgoaziou.fr
Hello,

Fredrik Salomonsson <plattfot@gmail.com> writes:

Toggle quote (2 lines)
> * gnu/packages/emacs-xyz.scm (emacs-libyaml): New variable.

Thank you.

I added a comment explaining why we were using an unstable revision of
the library, improved case in description and pushed.

Regards,
--
Nicolas Goaziou
Closed
?