(address . bug-guix@gnu.org)
Dear Guix ,
please consider the attached guix.scm. If you try to build it you will
notice many messages as the following:
warning: :telemetry.execute/3 is undefined (module :telemetry is not available or is yet to be defined)
until the build fails with:
16:26:55.642 [notice] Application eex exited: :stopped
** (Mix) Could not start application telemetry: could not find application file: telemetry.app
error: in phase 'check': uncaught exception:
%exception #<&invoke-error program: "mix" arguments: ("do" "compile" "--no-deps-check" "--no-prune-code-paths" "+" "test" "--no-deps-check") exit-status: 1 term-signal: #f stop-signal: #f>
phase `check' failed after 0.4 seconds
command "mix" "do" "compile" "--no-deps-check" "--no-prune-code-paths" "+" "test" "--no-deps-check" failed with status 1
build process 18 exited with status 256
This is because Erlang dependencies are not made available to Elixir
builds. I'm sending a patch addressing this issue.
Thank you for your work,
giacomo
(use-modules (guix packages)
(guix download)
(guix licenses)
(guix build-system mix)
(guix build-system rebar)
(gnu packages elixir-xyz)
(gnu packages erlang-xyz))
(define-public elixir-stream-data
(package
(name "elixir-stream-data")
(version "1.1.1")
(source
(origin
(method url-fetch)
(uri (hexpm-uri "stream_data" version))
(sha256
(base32 "134c7dyvprvnfm7fz6dvhk1mifrd0iq2pwjkzmiq8wq6pm3cvl25"))))
(build-system mix-build-system)
(native-inputs
(list elixir-excoveralls))
(synopsis "Data generation and property-based testing for Elixir")
(description "@code{StreamData} is an Elixir library for data generation and
property-based testing.")
(home-page "https://hexdocs.pm/stream_data/")
(license asl2.0)))
(define-public elixir-decimal
(package
(name "elixir-decimal")
(version "2.1.1")
(source
(origin
(method url-fetch)
(uri (hexpm-uri "decimal" version))
(sha256
(base32 "1k7z418b6cj977wswpxsk5844xrxc1smaiqsmrqpf3pdjzsfbksk"))))
(build-system mix-build-system)
(native-inputs
(list elixir-stream-data))
(synopsis "Arbitrary precision decimal arithmetic")
(description "This package provides @code{elixir-decimal}, a library that
represents values internally using three integers: a sign, a coefficient, and an
exponent. In this way, numbers of any size and with any number of decimal
places can be represented exactly.")
(home-page "https://hexdocs.pm/decimal/")
(license asl2.0)))
(define-public erlang-telemetry
(package
(name "erlang-telemetry")
(version "1.3.0")
(source
(origin
(method url-fetch)
(uri (hexpm-uri "telemetry" version))
(sha256
(base32 "1rkrbf3z7my9dsz9km7077anp6f0nyapmf5lyij3grnv364zq5bh"))))
(build-system rebar-build-system)
(synopsis "Dynamic dispatching library for metrics and instrumentations")
(description
"@code{Telemetry} is a lightweight library for dynamic dispatching of
events, with a focus on metrics and instrumentation. Any Erlang or Elixir
library can use @code{telemetry} to emit events. Application code and other
libraries can then hook into those events and run custom handlers.")
(home-page "https://hexdocs.pm/telemetry/")
(license asl2.0)))
(define-public elixir-ecto
(package
(name "elixir-ecto")
(version "3.12.3")
(source
(origin
(method url-fetch)
(uri (hexpm-uri "ecto" version))
(sha256
(base32 "0rcisp34m8b058jrcf52nziyscmn1h6yfjfw91ggj8p7d9893zcy"))))
(build-system mix-build-system)
(propagated-inputs (list elixir-decimal elixir-jason erlang-telemetry))
(synopsis
"Toolkit for data mapping and language integrated query for Elixir")
(description
"This package provides a toolkit for data mapping and language integrated query
for Elixir.")
(home-page "https://hexdocs.pm/ecto/")
(license asl2.0)))
elixir-ecto