all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Alex Kost <alezost@gmail.com>
To: Oleg Pykhalov <go.wigust@gmail.com>
Cc: 28832@debbugs.gnu.org
Subject: [bug#28832] [PATCH 1/3] gnu: Add emacs-json-reformat.
Date: Fri, 22 Dec 2017 23:20:40 +0300	[thread overview]
Message-ID: <87vagyldk7.fsf@gmail.com> (raw)
In-Reply-To: <874lokvg84.fsf@gmail.com> (Oleg Pykhalov's message of "Thu, 21 Dec 2017 07:48:27 +0300")

Oleg Pykhalov (2017-12-21 07:48 +0300) wrote:

> Hello Alex,
>
> Alex Kost <alezost@gmail.com> writes:
>
>> Oleg Pykhalov (2017-12-20 06:26 +0300) wrote:
[...]
>>> Maybe we just need to fix "geiser"?
>>
>> Sorry, I don't understand what you mean.  What is wrong with geiser and
>> why/how should it be fixed?
>
> Elisp files of Geiser are in different place than others Emacs
> packages.  There is no 'guix.d/geiser-0.9/'.

Oh, now I see what you mean.

> (for-each (match-lambda …) …) in 'setup-environment' will failed.
>
> Either we need to handle this case specific for Geiser or just
> change where it need to store Elisp files in 'geiser' package recipe.

It is not a specific Geiser case: installing *.el files in
"share/emacs/site-lisp/" is a common practice.  Actually, it is the
default place where automake wants to install elisp files (using
AM_PATH_LISPDIR macro), so whenever a package uses gnu-build-system,
most likely it will install elisp files to the site-lisp directory.  For
example, the following packages do this: bbdb, gettext, emms, magit,
emacs-wget, emacs-w3m, emacs-mmm-mode,...

>> Also do other non-"emacs-" packages (magit, emms) have the same problem?
>
> Hm,
>
>     /gnu/store/k9zrrzpdw0mld0lqyackba3kwbw41ipr-emacs-emms-4.3/share/emacs/site-lisp/
>     /gnu/store/zihybmvkccjb310fsxc2sad5j0w5vdi1-magit-2.11.0/share/emacs/stie-lisp/
>
> it seems that it will be easier to handle a case without
> 'guix.d/PACKAGE-VERSION/'.

I also think so, for example, 'emacs-inputs-el-directories' procedure
simply adds "/share/emacs/site-lisp" along with the "guix.d/..." directory.

[...]
>>>> I think we shouldn't rely on the assumption that all emacs inputs have
>>>> "emacs-" prefix
>>>
>>> Then, how to determine that a package is Emacs package?
>>
>> I don't know :-)  'emacs-inputs' is probably the best way.
>
> No :-), it only relies on "emacs-" prefix in store.
> emacs-inputs -> emacs-package? -> (string-prefix? "emacs-" name)

Yeah, I understand this.  I meant this is the best way we have at our
disposal.  I also don't know how to determine emacs packages without
"emacs-" prefix (well, maybe by looking for *.el files inside the
package store dir, not sure if it's suitable though).

>>> emacs inputs contain "emacs-minimal" and "source".
>>> So we actually need to remove "emacs-minimal" instead "emacs".
>>
>> or maybe both? since some packages uses 'emacs' instead of
>> 'emacs-minimal' (emacs-auctex, emacs-exwm, etc.).
>
> Not both, because 'emacs-inputs' removes all inputs without "emacs-"
> prefix, so 'emacs' too.

Oh right, sorry.

So to clarify the current situation, we have 2 problems:

1. 'emacs-package?' defines emacs package simply by checking "emacs-"
prefix, so it doesn't find such packages as magit or geiser.  This
problem does not relate directly to your patch; rather it is the problem
of the current 'emacs-build-system': if some emacs package depends on
'magit' or 'geiser' (currently there are no such packages),
emacs-build-system will not compile *.el files (because it will not find
'magit'/'geiser' needed for compilation).

2. Your patch handles only "/share/emacs/site-lisp/guix.d/<foo>/" but
not "/share/emacs/site-lisp/".

-- 
Alex

  reply	other threads:[~2017-12-22 20:21 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-10-14  9:51 [bug#28832] [PATCH 0/3] gnu: Add emacs-json-mode Oleg Pykhalov
2017-10-14 10:29 ` [bug#28832] [PATCH 1/3] gnu: Add emacs-json-reformat Oleg Pykhalov
2017-10-14 10:29   ` [bug#28832] [PATCH 2/3] gnu: Add emacs-json-snatcher Oleg Pykhalov
2017-10-20 12:41     ` Ludovic Courtès
2017-10-14 10:29   ` [bug#28832] [PATCH 3/3] gnu: Add emacs-json-mode Oleg Pykhalov
2017-10-20 12:34   ` [bug#28832] [PATCH 1/3] gnu: Add emacs-json-reformat Ludovic Courtès
2017-12-01 10:23     ` Ludovic Courtès
2017-12-11 23:12       ` Oleg Pykhalov
2017-12-12  9:17         ` Ludovic Courtès
2017-12-12 17:23           ` Alex Kost
2017-12-13  4:55             ` Oleg Pykhalov
2017-12-15 20:35               ` Alex Kost
2017-12-15  9:36             ` Oleg Pykhalov
2017-12-15 14:02               ` Ludovic Courtès
2017-12-19 10:46                 ` Oleg Pykhalov
2017-12-19 20:57                   ` Alex Kost
2017-12-20  3:26                     ` Oleg Pykhalov
2017-12-20 22:10                       ` Alex Kost
2017-12-21  4:48                         ` Oleg Pykhalov
2017-12-22 20:20                           ` Alex Kost [this message]
2017-12-15 20:35               ` Alex Kost
2017-12-19 11:07                 ` Oleg Pykhalov
2018-01-11 21:46           ` Ludovic Courtès
2018-01-15 12:01             ` bug#28832: " Oleg Pykhalov
2018-01-15 13:33               ` [bug#28832] " Ludovic Courtès
2018-01-16 17:32                 ` Alex Kost

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=87vagyldk7.fsf@gmail.com \
    --to=alezost@gmail.com \
    --cc=28832@debbugs.gnu.org \
    --cc=go.wigust@gmail.com \
    /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.