Subject: [bug#30797] [PATCH 1/2] gnu: Add emacs-exec-path-from-shell

From: Oleg Pykhalov <[email-masked]>
Date: Thu, 15 Mar 2018 11:50:53 +0300

Hello Konrad,

Konrad Hinsen <[email-masked]> writes:

> * gnu/packages/emacs.scm (emacs-exec-path-from-shell): 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 c2c162c75..9c9c399fd 100644
> --- a/gnu/packages/emacs.scm
> +++ b/gnu/packages/emacs.scm
> @@ -7361,3 +7361,31 @@ highlighting and indentation support.")
>  @uref{https://www.terraform.io/, Terraform} configuration files.  Most of the
>  functionality is inherited from @code{hcl-mode}.")
>      (license license:gpl3+)))
> +
> +(define-public emacs-exec-path-from-shell
> +  (package
> +    (name "emacs-exec-path-from-shell")
> +    (version "1.11")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (string-append
> +             "http://stable.melpa.org/packages/exec-path-from-shell-"
> +             version
> +             ".el"))

Same as in https://debbugs.gnu.org/cgi/bugreport.cgi?bug=30798#8

    Unfortunately, we can't use sources from MELPA.  The problem is:
    when a repository get a new commit, the old tarball is *REPLACED*
    with the new one on MELPA, so the package could never be built
    anymore, since the source disappeared.  That's why we use tarballs
    directly from source.

    BTW, to make a recipe more polished you could remove unnecessary new
    lines, for example:

           (uri (string-append "http://stable.melpa.org/packages/deft-"
                 version ".el"))

> +       (sha256
> +        (base32
> +         "03qjgb81cq1l3j54lvlf98r75vmmgd06mj6qh5wa6mz4xzp4w26r"))))
> +    (build-system emacs-build-system)
> +    (home-page
> +     "https://github.com/purcell/exec-path-from-shell")
> +    (synopsis 
> +     "Get environment variables such as $PATH from the shell")

Likewise (new line).

> +    (description
> +     "This library allows the user to set Emacs' @code{exec-path} and @code{$PATH}
                                                  ^
                                                  unnecessary apostrophe?

Also this line is too long (more than 80 symbols).

> +from the shell path, so that @code{shell-command}, @code{compile} and the
> +like work as expected on systems on which Emacs is not guaranteed
> +to inherit a login shell's environment variables.  It also allows other
> +environment variables to be retrieved from the shell, so that Emacs will
> +see the same values you get in a terminal.")
> +    (license license:gpl3+)))

Otherwise LGTM.

Thanks,
Oleg.