guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#30119] [PATCHv2] Add emacs-realgud and varia


From: Maxim Cournoyer
Subject: [bug#30119] [PATCHv2] Add emacs-realgud and varia
Date: Sun, 04 Feb 2018 22:41:54 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux)

Hello Ludovic!

address@hidden (Ludovic Courtès) writes:

> Hi Maxim,
>
> Maxim Cournoyer <address@hidden> skribis:
>
>> From 379cf143bb078c7785d104a41a762d6136f1508e Mon Sep 17 00:00:00 2001
>> From: Maxim Cournoyer <address@hidden>
>> Date: Sat, 13 Jan 2018 17:54:18 -0500
>> Subject: [PATCH 1/4] emacs-build-system: Add set-emacs-load-path phase.
>>
>> This generalizes the mechanism by which the Emacs dependencies are made 
>> visible,
>> so that any build phase can make use of them.
>>
>> * guix/build/emacs-build-system.scm (%legacy-install-suffix): New variable.
>> (%install-suffix): Redefine in terms of %legacy-install-suffix.
>> (set-emacs-load-path): Add new phase used for dependency resolution.
>> (build): Remove ad-hoc dependency discovery mechanism.
>> (emacs-input->el-directory): Add new procedure.
>> (emacs-inputs-el-directories): Use it.
>> (package-name-version->elpa-name-version): Fix typo.
>> (%standard-phases): Include the new `set-emacs-load-path' phase. Refactor to
>> make the ordering of the phases clearer.
>> * guix/build/emacs-utils.scm (emacs-byte-compile-directory): Remove the
>> optional `dependency-dirs' argument, which is now obsoleted by the
>> `set-emacs-load-path' phase.
>
> Nice!  At first sight it looks good to me.  If you’ve checked on a
> sample that Emacs packages still build fine, and if nobody replies in
> the meantime, I’ll apply it in a day or two.
>
> This will trigger on the order of 200 rebuilds per architecture, but
> these are small packages, so I think it’s fine.

Yes, I did test this on a sample of random Emacs packages and they built
fine with these changes.

> Nitpick:
>
>>  (define (emacs-inputs-el-directories dirs)
>>    "Build the list of Emacs Lisp directories from the Emacs package directory
>>  DIRS."
>> -  (append-map (lambda (d)
>> -                (list (string-append d "/share/emacs/site-lisp")
>> -                      (string-append d %install-suffix "/"
>> -                                     (store-directory->elpa-name-version 
>> d))))
>> -              dirs))
>> +  (filter string? (map emacs-input->el-directory dirs)))
>
> This can be written as:
>
>   (filter-map emacs-input->el-directory dirs)

Done! It's good to know how to handle these pesky nils at last!

> [...]
>
>> +  ;; TODO: Remove after issue 30611 is fixed in master (see:
>> +  ;; https://debbugs.gnu.org/30116).
>
> Which number is correct?  :-)

30116, good catch!

> I’m not convinced we need special treatment for this case directly in
> emacs-build-system.  This has happened only once on 200+ packages, so I
> would rather leave the special case in the package definition itself.
>
> WDYT?

Hmm, I think I'd rather leave it there; the alternative implies
replacing the `patch-el-files' phase in the package definition, and this
would involve copy-pasting the modified phase code which is a bit
messy. I'd also rather spare someone from having to investigate this
problem again until 30116 is merged into master.

Does it make sense?

>> From 1e4a28920b17f7a3bf3e34a999b29e0245233942 Mon Sep 17 00:00:00 2001
>> From: Maxim Cournoyer <address@hidden>
>> Date: Mon, 11 Dec 2017 00:07:57 -0500
>> Subject: [PATCH 4/4] gnu: Add emacs-realgud.
>>
>> * gnu/packages/emacs.scm (emacs-test-simple, emacs-load-relative,
>> emacs-loc-changes, emacs-realgud): New public variables.
>
> LGTM.   However, there’s a tradition to add one package per commit, so
> it would be great if you could split it and send updated patches.

Done. All patches attached!

Thanks for reviewing :)

Maxim

Attachment: 0001-emacs-build-system-Add-set-emacs-load-path-phase.patch
Description: Text Data

Attachment: 0002-emacs-build-system-Reinstate-the-check-phase.patch
Description: Text Data

Attachment: 0003-emacs-build-system-Work-around-issue-30116.patch
Description: Text Data

Attachment: 0004-gnu-Add-emacs-test-simple.patch
Description: Text Data

Attachment: 0005-gnu-Add-emacs-load-relative.patch
Description: Text Data

Attachment: 0006-gnu-Add-emacs-loc-changes.patch
Description: Text Data

Attachment: 0007-gnu-Add-emacs-realgud.patch
Description: Text Data

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]