Subject: bug#65313: closed (Re: [PATCH v2] * gnu/packages/erlang.scm (erlang-lfe): New variable.)

From: [email-masked] (GNU bug Tracking System)
Date: Thu, 07 Sep 2023 02:33:02 +0000

Your bug report

#65313: [PATCH 0/1] gnu: Add erlang-lfe.

which was filed against the guix-patches package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
65313: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=65313
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: [PATCH v2] * gnu/packages/erlang.scm (erlang-lfe): New variable.
From: Maxim Cournoyer <[email-masked]>
To: Tim Johann <[email-masked]>
Cc: [email-masked]
Date: Wed, 06 Sep 2023 22:32:45 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi Tim,

Tim Johann <[email-masked]> writes:

> ---
>  gnu/packages/erlang.scm | 72 +++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 72 insertions(+)

I've adjusted the commit message like so:

--8<---------------cut here---------------start------------->8---
    gnu: Add erlang-lfe.
    
    * gnu/packages/erlang.scm (erlang-lfe): New variable.
--8<---------------cut here---------------end--------------->8---

Made other small cosmetic changes such as moving the #:make-flags above
the #:phases, the inputs after the build arguments, added a copyright
line with your name, and installed it with commit 5ef28595e.

Thank you for your contribution!

-- 
Maxim

Subject: [PATCH 0/1] gnu: Add erlang-lfe.
From: Tim Johann <[email-masked]>
To: [email-masked]
Cc: Tim Johann <[email-masked]>
Date: Tue, 15 Aug 2023 17:23:28 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Please, find attached a package definition for Lisp Flavoured Erlang.

I am aware of the earlier attempt to package LFE by jgart [1] (since a few days), but I was already on track with everything, including the replacement of the 'check' phase, and did not take anything from that solution.

I guess, that jgart's problem was the same as I encountered:  while the binaries are built with a standard gnu Makefile, the tests use rebar3.  rebar3 would download the dependencies instead of reusing existing Guix packages.  My solution was 'inspired' by how the rebar3 build method handles dependencies.  The rebar3-build-system links the dependencies to a subdirectory _checkouts from which the later _build directory is copied and used for fetching all rebar3 plugins, overriding the download locations in rebar.config [2,3].  But with linking the dependencies, the file permissions stay read-only, and with rebar trying multiple times to copy to _build, the 'check' phase would fail with permission denied.  This is the reason for copying dependencies from the store, to be able to modify the permissions.

[1] https://issues.guix.gnu.org/60372
[2] https://blog.erlware.org/rebar3-features-part-6-_checkouts-2/
[3] http://rebar3.org/docs/configuration/dependencies/

Tim Johann (1):
  * gnu/packages/erlang.scm (erlang-lfe): New variable.

 gnu/packages/erlang.scm | 77 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 77 insertions(+)

base-commit: 2279e3e60479e91838db2d7261e86e91f9891650
-- 
2.41.0