guix-patches
[Top][All Lists]
Advanced

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

[bug#66801] [PATCH 1/5] guix: build-system: rebar: build Erlang packages


From: Pierre-Henry Fröhring
Subject: [bug#66801] [PATCH 1/5] guix: build-system: rebar: build Erlang packages with dependencies.
Date: Mon, 13 Nov 2023 19:58:45 +0100

      This loses the previous erlang-depends logic, which unpackaged the
      already compiled packages.  I really don't think we should have erlang be
      yet another rust that heats up the planet compiling leftpad over and over
      again.  Can we somehow have that cake?

Okay, perhaps it would have been better to start working on the Mix building system
and inform you simultaneously, instead of sending patches all at once. So, let's
start anew.

I have taken into account all of your suggestions and have crafted this patch
introducing the mix-build-system. Yes, there are ChangeLogs now. Currently, the
"Machete" package is compiled and tested without repeatedly compiling leftpad — i.e.,
considering pure Elixir packages up to transitive dependencies, it works as
expected. This is new.

As I'm learning how all this works, I'm not entirely sure that updating the rebar
build system is absolutely necessary. I suppose we will understand more as we add an
increasing number of Elixir packages, especially when incorporating Elixir packages
with Erlang dependencies.

So, here's what's coming up:

1. A patch that introduces the mix-build-system variable.
2. Several patches that introduce Elixir packages, up to elixir-machete, which is one
   of the few packages that includes tests in the tarball.

I guess the next steps are as follows:

1. To determine if the approach is acceptable. Will we boil the world by compiling
   left-pad endlessly?
2. If the approach is deemed acceptable, the next step is to evaluate the code. Is
   the code riddled with delicious regexes?
3. If the first two points are verified, it might be worthwhile to continue
   developing this implementation until Phoenix is successfully compiled and tested
   as expected.

For reference, I have attached a file named `mix-build-system.org'.
This file contains a description of a prototype in Bash that
illustrates the approach taken in this patch.

Cheers.

Attachment: mix-build-system.org
Description: Binary data


reply via email to

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