guix_mirror_bot pushed a commit to branch ocaml-team
in repository guix.

commit e1ab077fa2452166cede8d0f2f51c9f0b778efca
Author: Jason Conroy <[email protected]>
AuthorDate: Sun Feb 15 13:15:18 2026 -0500

    gnu: ocaml5: Add ocaml-merlin.
    
    * gnu/packages/ocaml5.scm (ocaml-merlin): New variable.
    
    Change-Id: I3409a8c14a657f1ce65b7ac4934613c512c1abf3
    Signed-off-by: Julien Lepiller <[email protected]>
---
 gnu/packages/ocaml5.scm | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/gnu/packages/ocaml5.scm b/gnu/packages/ocaml5.scm
index 1425abf9a2..152eb57af9 100644
--- a/gnu/packages/ocaml5.scm
+++ b/gnu/packages/ocaml5.scm
@@ -3099,6 +3099,25 @@ tools such as Merlin to perform project-wide occurrences 
queries.")))
     (description "@code{ocaml-dot-merlin-reader} is an external reader for
 @code{ocaml-merlin} configurations.")))
 
+(define-public ocaml-merlin
+  (package
+    (inherit %ocaml-merlin-base)
+    (name "ocaml5-merlin")
+    (arguments
+     `(#:package "merlin"
+       #:phases (modify-phases %standard-phases
+                  (replace 'check
+                    (lambda* (#:key tests? #:allow-other-keys)
+                      ;; Tests require a writable cache directory
+                      (setenv "HOME" "/tmp")
+                      (when tests?
+                        (invoke "dune" "runtest" "-p"
+                                "merlin,dot-merlin-reader")))))))
+    (propagated-inputs (list ocaml-merlin-lib ocaml-yojson ocaml-index))
+    (native-inputs (list ocaml-dot-merlin-reader ;required for tests
+                         ocaml-ppxlib ocaml-mdx jq))
+    (license license:expat)))
+
 (define-public ocaml-qcheck
   (package
     (name "ocaml5-qcheck")

Reply via email to