From: Alex Kost <alezost@gmail.com>
To: Oleg Pykhalov <go.wigust@gmail.com>
Cc: help-guix@gnu.org
Subject: Re: Which Emacs version used to build Emacs packages with emacs-checkout?
Date: Fri, 29 Sep 2017 13:57:14 +0300 [thread overview]
Message-ID: <87poa97oxh.fsf@gmail.com> (raw)
In-Reply-To: <87vakaetcw.fsf@gmail.com> (Oleg Pykhalov's message of "Fri, 22 Sep 2017 16:49:19 +0300")
[-- Attachment #1: Type: text/plain, Size: 1323 bytes --]
Oleg Pykhalov (2017-09-22 16:49 +0300) wrote:
> Hello Alex,
Hi!
> Alex Kost <alezost@gmail.com> writes:
[...]
>> Yes. Note that this default emacs can be overrided on a package level
>> by using #:emacs keyword in the arguments. See 'emacs-auctex' package
>> for example.
>
> Ah, this is bad for me. Now I need to redefine all those “#:emacs
> ,emacs” to “#:emacs ,emacs-checkout” as I guess. Or I need to redefine
> “emacs” variable instead of inherit it in “emacs-checkout”.
I think making your packages with #:emacs argument is the right way.
And it is not so bad as it may seem, as you can use some Guile code to
reduce the duplication. For example, look at the attached file: it
shows how you may inherit the packages you need from the original emacs
packages. To check it, put it into your GUIX_PACKAGE_PATH and call
"guix package --show=my-emacs-paredit". This is just an example, but I
think you get the idea ;-)
> I want to have Emacs builded from my local Git repository. And I also
> want Emacs packages builded with this my Emacs version.
Actually, why do you want to do this? I mean it doesn't matter what
version of Emacs you use to compile .el files. There is no difference:
if you build a package with Emacs 24 it will still work with Emacs 26.
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: my-emacs.scm --]
[-- Type: text/x-scheme, Size: 550 bytes --]
(define-module (my-emacs)
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (gnu packages emacs))
(define-syntax-rule (define-my-packages (var-name pkg) ...)
(begin
(define-public var-name
(package (inherit pkg)
(name (string-append "my-" (package-name pkg)))
(arguments
(cons* #:emacs emacs-no-x
(package-arguments pkg)))))
...))
(define-my-packages
(my-emacs-ag emacs-ag)
(my-paredit paredit)
(my-smex emacs-smex)
;; ...and the other packages you need.
)
prev parent reply other threads:[~2017-09-29 10:57 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-09-07 18:49 Which Emacs version used to build Emacs packages with emacs-checkout? Oleg Pykhalov
2017-09-08 20:31 ` Alex Kost
2017-09-22 13:49 ` Oleg Pykhalov
2017-09-29 10:57 ` Alex Kost [this message]
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=87poa97oxh.fsf@gmail.com \
--to=alezost@gmail.com \
--cc=go.wigust@gmail.com \
--cc=help-guix@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.
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).