summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPierre-Henry Fröhring <contact@phfrohring.com>2023-12-10 14:03:55 +0100
committerLiliana Marie Prikler <liliana.prikler@gmail.com>2023-12-17 22:22:30 +0100
commitc2ed5a7d134dff0755954dd966cb3a41fc047ba5 (patch)
tree2b0188a6643797c582adddf0c5c0543785925213
parente0e6d659b5d798068b9b03860cc2d3e391f6b74f (diff)
gnu: elixir: Wrap binaries.
* gnu/packages/elixir.scm (elixir)[#:phases]: Add ‘wrap-programs’. [native-search-path]: Add “GUIX_ELIXIR_LIBS”. Change-Id: I75bdde3aeedc1d495ea5fc2c5fc3fcdc5dc3fad2 Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
-rw-r--r--gnu/packages/elixir.scm18
1 files changed, 15 insertions, 3 deletions
diff --git a/gnu/packages/elixir.scm b/gnu/packages/elixir.scm
index 724b42512c..15cbdbdfc7 100644
--- a/gnu/packages/elixir.scm
+++ b/gnu/packages/elixir.scm
@@ -27,6 +27,7 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system gnu)
#:use-module (guix gexp)
+ #:use-module (guix utils)
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module (gnu packages)
@@ -96,9 +97,20 @@
(lambda* (#:key inputs #:allow-other-keys)
;; Some tests require access to a home directory.
(setenv "HOME" "/tmp")))
- (delete 'configure))))
- (inputs
- (list erlang git))
+ (delete 'configure)
+ (add-after 'install 'wrap-programs
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (programs '("elixir" "elixirc" "iex" "mix")))
+ (for-each (lambda (program)
+ (wrap-program (string-append out "/bin/" program)
+ '("ERL_LIBS" prefix ("${GUIX_ELIXIR_LIBS}"))))
+ programs)))))))
+ (inputs (list erlang git))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUIX_ELIXIR_LIBS")
+ (files (list (string-append "lib/elixir/" (version-major+minor version)))))))
(home-page "https://elixir-lang.org/")
(synopsis "Elixir programming language")
(description "Elixir is a dynamic, functional language used to build