Subject: [PATCH] gnu: Add emacs-next-no-x.

From: John Soo <[email-masked]>
Date: Sat, 28 Mar 2020 17:11:51 -0700

Hi Guix,

I wanted to give emacs 27 a try without x. So far so good!

Thanks!

John

>>From a1877e1d8d0317de69e1ee915d9624747a66e6bf Mon Sep 17 00:00:00 2001
From: John Soo <[email-masked]>
Date: Thu, 19 Mar 2020 10:39:15 -0700
Subject: [PATCH] gnu: Add emacs-next-no-x.

* gnu/packages/emacs.scm (emacs-next-no-x): New variable.
---
 gnu/packages/emacs.scm | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index ec8de7373b..006402e212 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -20,6 +20,7 @@
 ;;; Copyright © 2019 Valentin Ignatev <[email-masked]>
 ;;; Copyright © 2019 Leo Prikler <[email-masked]>
 ;;; Copyright © 2019 Amin Bandali <[email-masked]>
+;;; Copyright © 2019 John Soo <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -385,6 +386,33 @@ editor (console only)")
                     ;; These depend on libx11, so remove them as well.
                     "libotf" "m17n-lib" "dbus")))))
 
+(define-public emacs-next-no-x
+  (package
+    (inherit emacs-next)
+    (name "emacs-next-no-x")
+    (synopsis (package-synopsis emacs-no-x))
+    (build-system gnu-build-system)
+    (arguments
+     (substitute-keyword-arguments (package-arguments emacs-next)
+       ((#:modules _)
+        `((guix build emacs-utils)
+          ,@%gnu-build-system-modules))
+       ((#:imported-modules _)
+        `((guix build emacs-utils)
+          ,@%gnu-build-system-modules))
+       ((#:phases p)
+        `(modify-phases ,p
+           (delete 'restore-emacs-pdmp)))))
+    (inputs
+     (fold alist-delete
+           (package-inputs emacs-next)
+           '("libx11" "gtk+" "libxft" "libtiff" "giflib" "libjpeg"
+             "imagemagick" "libpng" "librsvg" "libxpm" "libice"
+             "libsm"
+
+             ;; These depend on libx11, so remove them as well.
+             "libotf" "m17n-lib" "dbus")))))
+
 (define-public emacs-no-x-toolkit
   (package (inherit emacs)
     (name "emacs-no-x-toolkit")
-- 
2.26.0