gnu: Add emacs-ob-sclang.

Remove emacs-org-contrib's dependency on SuperCollider by extracting
ob-sclang.el into its own package.

* gnu/packages/emacs-xyz.scm (emacs-org-contrib)[source]: Add snippet
that deletes ob-sclang.el.
[propagated-inputs]: Remove emacs-scel.
(emacs-ob-sclang): New variable.
This commit is contained in:
Pierre Langlois 2020-10-03 12:13:50 +01:00
parent 50110a1aa5
commit 38094a4f8d
No known key found for this signature in database
GPG key ID: A8FC9E447F4F7D54

View file

@ -9857,7 +9857,11 @@ (define-public emacs-org-contrib
(uri (string-append "https://orgmode.org/elpa/" (uri (string-append "https://orgmode.org/elpa/"
"org-plus-contrib-" version ".tar")) "org-plus-contrib-" version ".tar"))
(sha256 (sha256
(base32 "1naq25g4d95cx29axx428rnpc4m9hd0j7w1l0vqwkdjyr5qfj0ab")))) (base32 "1naq25g4d95cx29axx428rnpc4m9hd0j7w1l0vqwkdjyr5qfj0ab"))
;; ob-sclang.el is packaged separately to avoid the dependency on
;; SuperCollider and qtwebengine.
(modules '((guix build utils)))
(snippet '(begin (delete-file "ob-sclang.el") #t))))
(arguments (arguments
`(#:modules ((guix build emacs-build-system) `(#:modules ((guix build emacs-build-system)
(guix build utils) (guix build utils)
@ -9884,8 +9888,7 @@ (define-public emacs-org-contrib
(propagated-inputs (propagated-inputs
`(("arduino-mode" ,emacs-arduino-mode) `(("arduino-mode" ,emacs-arduino-mode)
("cider" ,emacs-cider) ("cider" ,emacs-cider)
("org" ,emacs-org) ("org" ,emacs-org)))
("scel" ,emacs-scel)))
(synopsis "Contributed packages to Org mode") (synopsis "Contributed packages to Org mode")
(description "Org is an Emacs mode for keeping notes, maintaining TODO (description "Org is an Emacs mode for keeping notes, maintaining TODO
lists, and project planning with a fast and effective plain-text system. lists, and project planning with a fast and effective plain-text system.
@ -9893,6 +9896,28 @@ (define-public emacs-org-contrib
This package is equivalent to org-plus-contrib, but only includes additional This package is equivalent to org-plus-contrib, but only includes additional
files that you would find in @file{contrib/} from the git repository."))) files that you would find in @file{contrib/} from the git repository.")))
(define-public emacs-ob-sclang
(package
(inherit emacs-org-contrib)
(name "emacs-ob-sclang")
(source
(origin (inherit (package-source emacs-org-contrib))
(modules '((guix build utils)))
(snippet
'(begin
(for-each (lambda (file)
(unless (equal? file "./ob-sclang.el")
(delete-file file)))
(find-files "." "\\.el"))
#t))))
(propagated-inputs
`(("org" ,emacs-org)
("scel" ,emacs-scel)))
(synopsis "Org Babel support for SuperCollider")
(description "This package adds support for evaluating @code{sclang}
Org mode source blocks. It is extracted from the @code{emacs-org-contrib}
package.")))
(define-public emacs-org-edna (define-public emacs-org-edna
(package (package
(name "emacs-org-edna") (name "emacs-org-edna")