[PATCH 0/2] Update emacs-ess

  • Done
  • quality assurance status badge
Details
2 participants
  • Kyle Meyer
  • Ludovic Courtès
Owner
unassigned
Submitted by
Kyle Meyer
Severity
normal

Debbugs page

Kyle Meyer wrote 7 years ago
(address . guix-patches@gnu.org)(name . Kyle Meyer)(address . kyle@kyleam.com)
20171013162619.16027-1-kyle@kyleam.com
gnu: Add emacs-julia-mode.
gnu: emacs-ess: Update to 16.10.

gnu/packages/emacs.scm | 52 +++++++++++++++++++++++++++++++++++++++++++++-----
1 file changed, 47 insertions(+), 5 deletions(-)

--
2.14.2
Kyle Meyer wrote 7 years ago
[PATCH 1/2] gnu: Add emacs-julia-mode.
(address . 28815@debbugs.gnu.org)(name . Kyle Meyer)(address . kyle@kyleam.com)
20171013162837.16158-1-kyle@kyleam.com
* gnu/packages/emacs.scm (emacs-julia-mode): New variable.
---

This definition hard codes the commit because the package version hasn't
changed since it was initially added in 2014. I've opened an issue to see if
they'll tag a release:


gnu/packages/emacs.scm | 32 ++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)

Toggle diff (45 lines)
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 24dfd97ff..a4812ee33 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -3321,6 +3321,38 @@ that highlights non-conforming text. The subset of the English language called
E-Prime forbids the use of the \"to be\" form to strengthen your writing.")
(license license:gpl3+))))
+(define-public emacs-julia-mode
+ (let ((commit "115d4dc8a07445301772da8376b232fa8c7168f4")
+ (revision "1"))
+ (package
+ (name "emacs-julia-mode")
+ (version (string-append "0.3-" revision "." (string-take commit 8)))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/JuliaEditorSupport/julia-emacs.git")
+ (commit commit)))
+ (file-name (string-append name "-" version "-checkout"))
+ (sha256
+ (base32
+ "1is4dcv6blslpzbjcg8l2jpxi8xj96q4cm0nxjxsyswpm8bw8ki0"))))
+ (build-system emacs-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'install 'check
+ (lambda _
+ (zero? (system* "emacs" "-batch"
+ "-l" "julia-mode.el"
+ "-l" "julia-mode-tests.el"
+ "-f" "ert-run-tests-batch-and-exit")))))))
+ (home-page "https://github.com/JuliaEditorSupport/julia-emacs")
+ (synopsis "Major mode for Julia")
+ (description "This Emacs package provides a mode for the Julia
+programming language.")
+ (license license:expat))))
+
(define-public emacs-ess
(package
(name "emacs-ess")
--
2.14.2
Kyle Meyer wrote 7 years ago
[PATCH 2/2] gnu: emacs-ess: Update to 16.10.
(address . 28815@debbugs.gnu.org)(name . Kyle Meyer)(address . kyle@kyleam.com)
20171013162837.16158-2-kyle@kyleam.com
* gnu/packages/emacs.scm (emacs-ess): Update to 16.10.
[arguments]: Enable tests.
[source]: Add snippet to prevent build process from trying to download
external julia-mode.el.
---

Despite its build process downloading julia-mode.el, ESS doesn't seem to
require julia-mode.el for building or running, so I haven't included it as an
input. Should we include it anyway?

gnu/packages/emacs.scm | 20 +++++++++++++++-----
1 file changed, 15 insertions(+), 5 deletions(-)

Toggle diff (49 lines)
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index a4812ee33..d1d80488c 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -3356,19 +3356,26 @@ programming language.")
(define-public emacs-ess
(package
(name "emacs-ess")
- (version "16.04")
+ (version "16.10")
(source (origin
(method url-fetch)
(uri (string-append "http://ess.r-project.org/downloads/ess/ess-"
version ".tgz"))
(sha256
(base32
- "0w7mbbajn377gdmvnd21mpyr368b2ia46gq6cb99y4y5rspf9pcg"))))
+ "04m8lwp3ylh2vl7k2bjjs7mxbm64j4sdckqpvnm9k0qhaqf02pjk"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Stop ESS from trying to bundle an external julia-mode.el.
+ (substitute* "lisp/Makefile"
+ (("^\tjulia-mode.elc\\\\\n") "")
+ (("^all: \\$\\(ELC\\) ess-custom.el julia-mode.el")
+ "all: $(ELC) ess-custom.el"))))))
(build-system gnu-build-system)
(arguments
(let ((base-directory "/share/emacs/site-lisp/guix.d/ess"))
- `(#:tests? #f ; There is no test suite.
- #:make-flags (list (string-append "PREFIX=" %output)
+ `(#:make-flags (list (string-append "PREFIX=" %output)
(string-append "ETCDIR=" %output "/"
,base-directory "/etc")
(string-append "LISPDIR=" %output "/"
@@ -3384,7 +3391,10 @@ programming language.")
;; FIXME: the texlive-union insists on regenerating fonts. It stores
;; them in HOME, so it needs to be writeable.
(add-before 'build 'set-HOME
- (lambda _ (setenv "HOME" "/tmp") #t))))))
+ (lambda _ (setenv "HOME" "/tmp") #t))
+ (replace 'check
+ (lambda _
+ (zero? (system* "make" "test"))))))))
(inputs
`(("emacs" ,emacs-minimal)
("r-minimal" ,r-minimal)))
--
2.14.2
Ludovic Courtès wrote 7 years ago
Re: [bug#28815] [PATCH 1/2] gnu: Add emacs-julia-mode.
(name . Kyle Meyer)(address . kyle@kyleam.com)(address . 28815@debbugs.gnu.org)
87wp3xwzqk.fsf@gnu.org
Kyle Meyer <kyle@kyleam.com> skribis:

Toggle quote (9 lines)
> * gnu/packages/emacs.scm (emacs-julia-mode): New variable.
> ---
>
> This definition hard codes the commit because the package version hasn't
> changed since it was initially added in 2014. I've opened an issue to see if
> they'll tag a release:
>
> https://github.com/JuliaEditorSupport/julia-emacs/issues/46

Makes sense.

I’ve committed with this comment:
Toggle diff (13 lines)
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index c8d0cac30..e8b44dcff 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -3322,6 +3322,8 @@ E-Prime forbids the use of the \"to be\" form to strengthen your writing.")
(license license:gpl3+))))
(define-public emacs-julia-mode
+ ;; XXX: Upstream version remained stuck at 0.3. See
+ ;; <https://github.com/JuliaEditorSupport/julia-emacs/issues/46>.
(let ((commit "115d4dc8a07445301772da8376b232fa8c7168f4")
(revision "1"))
(package
Thanks,
Ludo’.
Ludovic Courtès wrote 7 years ago
Re: [bug#28815] [PATCH 2/2] gnu: emacs-ess: Update to 16.10.
(name . Kyle Meyer)(address . kyle@kyleam.com)(address . 28815-done@debbugs.gnu.org)
87shelwzjz.fsf@gnu.org
Hi,

Kyle Meyer <kyle@kyleam.com> skribis:

Toggle quote (5 lines)
> * gnu/packages/emacs.scm (emacs-ess): Update to 16.10.
> [arguments]: Enable tests.
> [source]: Add snippet to prevent build process from trying to download
> external julia-mode.el.

Applied!

Toggle quote (4 lines)
> Despite its build process downloading julia-mode.el, ESS doesn't seem to
> require julia-mode.el for building or running, so I haven't included it as an
> input. Should we include it anyway?

Dunno! If you found that it works well like this, that’s probably
fine. We can always revisit it later if needed.

Thanks,
Ludo’.
Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 28815@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 28815
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch
You may also tag this issue. See list of standard tags. For example, to set the confirmed and easy tags
mumi command -t +confirmed -t +easy
Or, remove the moreinfo tag and set the help tag
mumi command -t -moreinfo -t +help