[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#67877] [PATCH 0/7] Enable Elixir packages that depend on Erlang pac
From: |
Liliana Marie Prikler |
Subject: |
[bug#67877] [PATCH 0/7] Enable Elixir packages that depend on Erlang packages to build |
Date: |
Mon, 18 Dec 2023 15:49:22 +0100 |
User-agent: |
Evolution 3.46.4 |
Am Montag, dem 18.12.2023 um 14:02 +0100 schrieb Pierre-Henry Fröhring:
> Hello lylip,
>
> It's great to see progress!
>
> I suggest the next objective is to enable Elixir packages that depend
> on Erlang packages to build. For instance, the Elixir package
> [telemetry_metrics] depends on the Erlang telemetry package and is a
> dependency of the Elixir Phoenix package.
>
> While reviewing the code of the Rebar build system, we noticed the
> use of the [skip_deps] Rebar flag, which is ignored by Rebar:
> ┌────
> │ $ guix shell rebar3 -- rebar3 help compile
> │ […]
> │ -d, --deps_only Only compile dependencies, no project apps will
> be
> │ built.
> └────
>
> So, to build Elixir packages that depend on Erlang, the necessary
> steps inlcude:
> 1) Updating the Rebar build system to align with the current usages
> of Rebar.
> 2) Allowing Elixir to access Erlang compiled libraries as discussed
> in [issue 66801].
>
> If the following plan is agreed upon, then we will have an Elixir
> package that depends on an Erlang package to build, specifically
> `telemetry_metrics'. Patches in the series will have these
> objectives:
>
> 1. ☐ Update the Rebar build system to align with the current usages
> of Rebar.
> 2. ☐ Update the Erlang build system to install libraries under
> `lib/erlang/X.Y' as discussed in issue 66801.
> 3. ☐ Update the Erlang package so that `GUIX_ERL_LIBS' gather all
> libraries installed under `lib/erlang/X.Y'.
> 4. ☐ Update the Erlang package to wrap its binaires so that they have
> access to
> compiled libraries represented by `GUIX_ERL_LIBS'.
> 5. ☐ Add the Erlang Telemetry package.
> 6. ☐ Update the Elixir package so that it has access to Erlang
> packages represented by `GUIX_ERL_LIBS'.
> 7. ☐ Add the Elixir package `telemetry_metrics'.
>
> If the corresponding patch series is merged, additional packages
> (whether Erlang, Elixir, or other types) will be incorporated until
> Phoenix package builds.
>
> What do you think of this plan?
Since we typically disable phoning home (including telemetry), I don't
think having a telemetry package in Guix would be good optics :)
Perhaps you can think of another example package but still follow the
steps laid out above?
Cheers