all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Leo Prikler <leo.prikler@student.tugraz.at>
To: 47661@debbugs.gnu.org
Subject: [bug#47661] [PATCH v2 03/33] gnu: emacs: Add coreutils and gzip to PATH.
Date: Sat, 17 Apr 2021 19:06:18 +0200	[thread overview]
Message-ID: <20210417170648.3810-3-leo.prikler@student.tugraz.at> (raw)
In-Reply-To: <20210417170648.3810-1-leo.prikler@student.tugraz.at>

Some parts of Emacs (dired, compression handling, Tramp) shell out to commands
and patching them all is a daunting task.  Also, w.r.t. Tramp, we need those
commands to be portable across multiple machines, which need not only be Guix
machines (and even if they are, store items can be different).  This patch
ensures a ‘sane’ setup FSVO ‘sane’.

* gnu/packages/emacs.scm (emacs)[wrap-load-path]: Rename to...
[wrap-emacs-paths] ... this.  Also patch PATH.
---
 gnu/packages/emacs.scm | 19 ++++++++++++++++---
 1 file changed, 16 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index e1b01ac22b..5316d25151 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -201,8 +201,8 @@
                 (car (find-files "bin" "^emacs-([0-9]+\\.)+[0-9]+$"))
                 "bin/emacs")
                #t)))
-         (add-after 'strip-double-wrap 'wrap-load-path
-           (lambda* (#:key outputs #:allow-other-keys)
+         (add-after 'strip-double-wrap 'wrap-emacs-paths
+           (lambda* (#:key inputs outputs #:allow-other-keys)
              (let* ((out (assoc-ref outputs "out"))
                     (lisp-dirs (find-files (string-append out "/share/emacs")
                                            "^lisp$"
@@ -210,6 +210,13 @@
                (for-each
                 (lambda (prog)
                   (wrap-program prog
+                    ;; emacs-next and variants rely on uname being in PATH for
+                    ;; Tramp.  Tramp paths can't be hardcoded, because they
+                    ;; need to be portable.
+                    `("PATH" suffix
+                      ,(map (lambda (in) (string-append in "/bin"))
+                            (list (assoc-ref inputs "gzip")
+                                  (assoc-ref inputs "coreutils"))))
                     `("EMACSLOADPATH" suffix ,lisp-dirs)))
                 (find-files (string-append out "/bin")
                             ;; Matches versioned and unversioned emacs binaries.
@@ -231,6 +238,10 @@
      `(("gnutls" ,gnutls)
        ("ncurses" ,ncurses)
 
+       ;; Required for "core" functionality, such as dired and compression.
+       ("coreutils" ,coreutils)
+       ("gzip" ,gzip)
+
        ;; Avoid Emacs's limited movemail substitute that retrieves POP3 email
        ;; only via insecure channels.  This is not needed for (modern) IMAP.
        ("mailutils" ,mailutils)
@@ -361,7 +372,9 @@ also enabled and works without glitches even on X server."))))
            (delete 'strip-double-wrap)))))
     (inputs
      `(("guix-emacs.el" ,(search-auxiliary-file "emacs/guix-emacs.el"))
-       ("ncurses" ,ncurses)))
+       ("ncurses" ,ncurses)
+       ("coreutils" ,coreutils)
+       ("gzip" ,gzip)))
     (native-inputs
      `(("pkg-config" ,pkg-config)))))
 
-- 
2.31.1





  parent reply	other threads:[~2021-04-17 17:36 UTC|newest]

Thread overview: 76+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-04-08 17:46 [bug#47661] [PATCH 00/33] Improve Emacs UX Leo Prikler
2021-04-08 17:49 ` [bug#47661] [PATCH 01/33] profiles: Add hook for Emacs subdirs Leo Prikler
2021-04-08 17:49   ` [bug#47661] [PATCH 02/33] gnu: emacs: Wrap EMACSLOADPATH Leo Prikler
2021-04-08 17:49   ` [bug#47661] [PATCH 03/33] gnu: emacs: Patch more program file names Leo Prikler
2021-04-08 17:49   ` [bug#47661] [PATCH 04/33] build-system: emacs: Use subdirectories again Leo Prikler
2021-04-08 17:49   ` [bug#47661] [PATCH 05/33] gnu: emacs-libgit: Adjust to changes in emacs-build-system Leo Prikler
2021-04-08 17:49   ` [bug#47661] [PATCH 06/33] gnu: emacs-guix: " Leo Prikler
2021-04-08 17:49   ` [bug#47661] [PATCH 07/33] gnu: emacs-telega: " Leo Prikler
2021-04-08 17:49   ` [bug#47661] [PATCH 08/33] gnu: Add emacs-telega-contrib Leo Prikler
2021-04-08 17:49   ` [bug#47661] [PATCH 09/33] gnu: emacs-emacsql: Adjust to changes in emacs-build-system Leo Prikler
2021-04-08 17:49   ` [bug#47661] [PATCH 10/33] gnu: emacs-howm: " Leo Prikler
2021-04-08 17:49   ` [bug#47661] [PATCH 11/33] gnu: emacs-ert-runner: " Leo Prikler
2021-04-08 17:49   ` [bug#47661] [PATCH 12/33] gnu: emacs-pdf-tools: " Leo Prikler
2021-04-08 17:49   ` [bug#47661] [PATCH 13/33] gnu: emacs-shroud: " Leo Prikler
2021-04-08 17:49   ` [bug#47661] [PATCH 14/33] gnu: emacs-sly-stepper: " Leo Prikler
2021-04-08 17:49   ` [bug#47661] [PATCH 15/33] gnu: emacs-sly-stepper: Remove generated sources Leo Prikler
2021-04-08 17:49   ` [bug#47661] [PATCH 16/33] gnu: emacs-org-contrib: Adjust to changes in emacs-build-system Leo Prikler
2021-04-08 17:49   ` [bug#47661] [PATCH 17/33] gnu: emacs-edbi: " Leo Prikler
2021-04-08 17:49   ` [bug#47661] [PATCH 18/33] gnu: emacs-scel: " Leo Prikler
2021-04-08 17:49   ` [bug#47661] [PATCH 19/33] gnu: emacs-vterm: " Leo Prikler
2021-04-08 17:49   ` [bug#47661] [PATCH 20/33] gnu: notmuch: " Leo Prikler
2021-04-08 17:49   ` [bug#47661] [PATCH 21/33] gnu: emacs-pyim: Update to 3.6 Leo Prikler
2021-04-08 17:49   ` [bug#47661] [PATCH 22/33] gnu: emacs-realgud: Adjust to changes in emacs-build-system Leo Prikler
2021-04-08 17:49   ` [bug#47661] [PATCH 23/33] gnu: emacs-geiser: Update to 0.13 Leo Prikler
2021-04-08 17:49   ` [bug#47661] [PATCH 24/33] gnu: Add emacs-geiser-guile Leo Prikler
2021-04-08 17:49   ` [bug#47661] [PATCH 25/33] gnu: emacs-guix: Update to 0.5.2-4.8ce6d21 Leo Prikler
2021-04-08 17:50   ` [bug#47661] [PATCH 26/33] gnu: emacs-flycheck-guile: Add missing input Leo Prikler
2021-04-08 17:50   ` [bug#47661] [PATCH 27/33] gnu: guile-studio: " Leo Prikler
2021-04-08 17:50   ` [bug#47661] [PATCH 28/33] gnu: geiser-gauche: Adjust to changes in emacs-build-system Leo Prikler
2021-04-08 17:50   ` [bug#47661] [PATCH 29/33] gnu: emacs-dvc: " Leo Prikler
2021-04-08 17:50   ` [bug#47661] [PATCH 30/33] gnu: emacs-w3m: " Leo Prikler
2021-04-08 17:50   ` [bug#47661] [PATCH 31/33] gnu: emacs-wget: Port to emacs-build-system Leo Prikler
2021-04-08 17:50   ` [bug#47661] [PATCH 32/33] gnu: emacs-haskell-mode: Adjust to changes in emacs-build-system Leo Prikler
2021-04-08 17:50   ` [bug#47661] [PATCH 33/33] gnu: emacs-julia-snail: " Leo Prikler
2021-04-17 17:06 ` [bug#47661] [PATCH v2 01/33] profiles: Add hook for Emacs subdirs Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 02/33] gnu: emacs: Wrap EMACSLOADPATH Leo Prikler
2021-04-17 17:06   ` Leo Prikler [this message]
2021-04-17 17:06   ` [bug#47661] [PATCH v2 04/33] build-system: emacs: Use subdirectories again Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 05/33] gnu: emacs-libgit: Adjust to changes in emacs-build-system Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 06/33] gnu: emacs-guix: " Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 07/33] gnu: emacs-telega: " Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 08/33] gnu: Add emacs-telega-contrib Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 09/33] gnu: emacs-emacsql: Adjust to changes in emacs-build-system Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 10/33] gnu: emacs-howm: " Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 11/33] gnu: emacs-ert-runner: " Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 12/33] gnu: emacs-pdf-tools: " Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 13/33] gnu: emacs-shroud: " Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 14/33] gnu: emacs-sly-stepper: " Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 15/33] gnu: emacs-sly-stepper: Remove generated sources Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 16/33] gnu: emacs-org-contrib: Adjust to changes in emacs-build-system Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 17/33] gnu: emacs-edbi: " Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 18/33] gnu: emacs-scel: " Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 19/33] gnu: emacs-vterm: " Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 20/33] gnu: notmuch: " Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 21/33] gnu: emacs-pyim: Update to 3.6 Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 22/33] gnu: emacs-realgud: Adjust to changes in emacs-build-system Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 23/33] gnu: emacs-geiser: Update to 0.13 Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 24/33] gnu: Add emacs-geiser-guile Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 25/33] gnu: emacs-guix: Update to 0.5.2-4.8ce6d21 Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 26/33] gnu: emacs-flycheck-guile: Add missing input Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 27/33] gnu: guile-studio: " Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 28/33] gnu: geiser-gauche: Adjust to changes in emacs-build-system Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 29/33] gnu: emacs-dvc: " Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 30/33] gnu: emacs-w3m: " Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 31/33] gnu: emacs-wget: Port to emacs-build-system Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 32/33] gnu: emacs-haskell-mode: Adjust to changes in emacs-build-system Leo Prikler
2021-04-17 17:06   ` [bug#47661] [PATCH v2 33/33] gnu: emacs-julia-snail: " Leo Prikler
2021-04-29 12:16 ` [bug#47661] [PATCH 00/33] Improve Emacs UX Xinglu Chen
2021-04-29 14:58   ` Leo Prikler
2021-04-30  8:25     ` Xinglu Chen
2021-05-01 18:45       ` bug#47661: " Leo Prikler
2021-05-04  5:13         ` [bug#47661] " Arun Isaac
2021-05-04  6:38           ` Leo Prikler
2021-05-04 21:02             ` Arun Isaac
2021-05-04 21:22               ` Leo Prikler
2021-05-05  7:47                 ` Arun Isaac

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

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210417170648.3810-3-leo.prikler@student.tugraz.at \
    --to=leo.prikler@student.tugraz.at \
    --cc=47661@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 external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.