From: Jack Hill <jackhill@jackhill.us>
To: 42738@debbugs.gnu.org
Subject: [bug#42738] [PATCH] gnu: emacs: Update to 27.1-rc1.
Date: Thu, 6 Aug 2020 23:23:02 -0400 [thread overview]
Message-ID: <20200807032302.27928-1-jackhill@jackhill.us> (raw)
In-Reply-To: <alpine.DEB.2.21.2008062225250.4809@marsh.hcoop.net>
* gnu/packages/emacs.scm (emacs): Update to 27.1-rc1.
[arguments]: Add --with-harfbuzz and --with-modules to #configure-flags. Add
restore-emacs-pdump phase.
[inputs]: Add jansson and harfbuzz. Remove imagemagick.
---
gnu/packages/emacs.scm | 68 ++++++++++++++++++++++++++----------------
1 file changed, 43 insertions(+), 25 deletions(-)
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index ad8d4b0606..b809e90690 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -58,7 +58,6 @@
#:use-module (gnu packages gtk)
#:use-module (gnu packages guile)
#:use-module (gnu packages image)
- #:use-module (gnu packages imagemagick)
#:use-module (gnu packages linux) ; alsa-lib
#:use-module (gnu packages mail) ; for mailutils
#:use-module (gnu packages ncurses)
@@ -75,18 +74,18 @@
(define-public emacs
(package
(name "emacs")
- (version "26.3")
+ (version "27.1")
(source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/emacs/emacs-"
- version ".tar.xz"))
- (sha256
- (base32
- "119ldpk7sgn9jlpyngv5y4z3i7bb8q3xp4p0qqi7i5nq39syd42d"))
- (patches (search-patches "emacs-exec-path.patch"
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.savannah.gnu.org/git/emacs.git")
+ (commit "emacs-27.1-rc1")))
+ (patches (search-patches "emacs27-exec-path.patch"
"emacs-fix-scheme-indent-function.patch"
"emacs-ignore-empty-xim-styles.patch"
"emacs-source-date-epoch.patch"))
+ (sha256
+ (base32 "1vyw8bpairxfxim931xg3pwyl3afh2mmjxa2i1igsaiaaxyssbc6"))
(modules '((guix build utils)))
(snippet
'(with-directory-excursion "lisp"
@@ -94,16 +93,7 @@
;; autoloads.
(for-each delete-file
(append (find-files "." "\\.elc$")
- (find-files "." "loaddefs\\.el$")
- ;; This is the only "autoloads" file that
- ;; does not have "*loaddefs.el" name.
- ;; TODO: Next time changing this package,
- ;; replace the following with a call to
- ;; `find-files', so that `delete-file'
- ;; wouldn't error out when the file is
- ;; missing, making the entire snippet field
- ;; reusable as-is for `emacs-next' below.
- '("eshell/esh-groups.el")))
+ (find-files "." "loaddefs\\.el$")))
;; Make sure Tramp looks for binaries in the right places on
;; remote Guix System machines, where 'getconf PATH' returns
@@ -129,7 +119,8 @@
(build-system glib-or-gtk-build-system)
(arguments
`(#:tests? #f ; no check target
- #:configure-flags (list "--with-modules"
+ #:configure-flags (list "--with-harfbuzz"
+ "--with-modules"
"--disable-build-details")
#:phases
(modify-phases %standard-phases
@@ -180,9 +171,35 @@
;; which leads to conflicts.
(delete-file (string-append lisp-dir "/subdirs.el"))
;; Byte compile the site-start files.
- (emacs-byte-compile-directory lisp-dir)))))))
+ (emacs-byte-compile-directory lisp-dir))))
+ ;; Needed when building from git
+ (add-before
+ 'reset-gzip-timestamps
+ 'make-compressed-files-writable
+ (lambda _
+ (for-each make-file-writable
+ (find-files %output ".*\\.t?gz$"))
+ #t))
+ ;; restore the dump file that Emacs installs somewhere in
+ ;; libexec/ to its original state
+ (add-after 'glib-or-gtk-wrap 'restore-emacs-pdmp
+ (lambda* (#:key outputs target #:allow-other-keys)
+ (let* ((libexec (string-append (assoc-ref outputs "out")
+ "/libexec"))
+ ;; each of these find-files should return one file
+ (pdmp (find-files libexec "^emacs\\.pdmp$"))
+ (pdmp-real (find-files libexec
+ "^\\.emacs\\.pdmp-real$")))
+ (when (not (null? pdmp-real))
+ (for-each (lambda (wrapper real)
+ (delete-file wrapper)
+ (rename-file real wrapper))
+ pdmp pdmp-real))
+ #t))))))
(inputs
`(("gnutls" ,gnutls)
+ ("jansson" ,jansson)
+ ("harfbuzz" ,harfbuzz)
("ncurses" ,ncurses)
;; Avoid Emacs's limited movemail substitute that retrieves POP3 email
@@ -196,7 +213,6 @@
("libtiff" ,libtiff)
("giflib" ,giflib)
("libjpeg" ,libjpeg-turbo)
- ("imagemagick" ,imagemagick)
("acl" ,acl)
;; When looking for libpng `configure' links with `-lpng -lz', so we
@@ -218,6 +234,7 @@
(native-inputs
`(("guix-emacs.el" ,(search-auxiliary-file "emacs/guix-emacs.el"))
("pkg-config" ,pkg-config)
+ ("autoconf" ,autoconf) ;Needed when building from git
("texinfo" ,texinfo)))
(native-search-paths
@@ -360,7 +377,9 @@ languages.")
`(("guix-emacs.el" ,(search-auxiliary-file "emacs/guix-emacs.el"))
("ncurses" ,ncurses)))
(native-inputs
- `(("pkg-config" ,pkg-config)))))
+ `(("pkg-config" ,pkg-config)
+ ("autoconf" ,autoconf) ;Needed when building from git
+ ("texinfo" ,texinfo)))))
(define-public emacs-xwidgets
(package
@@ -387,8 +406,7 @@ editor (console only)")
(inputs (fold alist-delete
(package-inputs emacs)
'("libx11" "gtk+" "libxft" "libtiff" "giflib" "libjpeg"
- "imagemagick" "libpng" "librsvg" "libxpm" "libice"
- "libsm"
+ "libpng" "librsvg" "libxpm" "libice" "libsm"
;; These depend on libx11, so remove them as well.
"libotf" "m17n-lib" "dbus")))))
--
2.28.0
next prev parent reply other threads:[~2020-08-07 3:24 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-08-07 3:21 [bug#42738] [Work in progress] gnu: emacs: update to 27.1 Jack Hill
2020-08-07 3:23 ` Jack Hill [this message]
[not found] ` <alpine.DEB.2.21.2008180137010.4809@marsh.hcoop.net>
2020-08-18 6:26 ` [bug#42738] [PATCH v2] gnu: emacs: Update " Jack Hill
2020-08-18 8:57 ` Alexey Abramov
2020-08-18 13:04 ` [bug#42738] [Work in progress] gnu: emacs: update " Michael Rohleder
[not found] ` <alpine.DEB.2.21.2008182335550.4809@marsh.hcoop.net>
2020-08-19 4:09 ` [bug#42738] [PATCH v3] gnu: emacs: Update " Jack Hill
2020-08-27 21:59 ` [bug#42738] [PATCH v4] " Morgan.J.Smith
2020-08-28 5:35 ` Jack Hill
[not found] ` <87sgc6onvi.fsf@gnu.org>
[not found] ` <87lfhybntk.fsf@netris.org>
2020-08-28 21:10 ` Morgan Smith
[not found] ` <87pn79e5fb.fsf@roquette.i-did-not-set--mail-host-address--so-tickle-me>
[not found] ` <87v9gt3ocx.fsf@ambrevar.xyz>
2020-09-04 9:16 ` Pierre Neidhardt
2020-08-19 13:53 ` [bug#42738] [Work in progress] gnu: emacs: update " Michael Rohleder
2020-08-19 2:53 ` [bug#42738] [PATCH v2] gnu: emacs: Update to 27.1. (fwd) Jack Hill
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200807032302.27928-1-jackhill@jackhill.us \
--to=jackhill@jackhill.us \
--cc=42738@debbugs.gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).