unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#29034] [PATCH 1/5] gnu: Add ocaml-jbuilder.
  2017-10-27 23:10 [bug#29034] [PATCH 0/5] Add ocaml-utop and dependencies Peter Kreye
@ 2017-10-26 22:02 ` Peter Kreye
  2017-10-28  8:08   ` Ludovic Courtès
  2017-10-27 23:31 ` [bug#29034] [PATCH 2/5] gnu: Add ocaml-zed Peter Kreye
                   ` (3 subsequent siblings)
  4 siblings, 1 reply; 11+ messages in thread
From: Peter Kreye @ 2017-10-26 22:02 UTC (permalink / raw)
  To: 29034

* gnu/packages/ocaml.scm (ocaml-jbuilder): New variable.
---
 gnu/packages/ocaml.scm | 34 ++++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index b13168c7d..2df9cc1a2 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -3557,6 +3557,40 @@ library is currently designed for Unicode Standard 3.2.")
     ;; with an exception for linked libraries to use a different license
     (license license:lgpl2.0+)))
 
+(define-public ocaml-jbuilder
+  (package
+    (name "ocaml-jbuilder")
+    (version "1.0+beta14")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "https://github.com/janestreet/jbuilder/archive/"
+                    version ".tar.gz"))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "06jdcb4jmmp4wqyf9cm59jzgj0mxkpdzd9q3728gdxc1sz3v1sz0"))))
+    (build-system ocaml-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'configure
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out")))
+               (setenv "PREFIX" out))
+             #t)))))
+    (native-inputs
+     `(("menhir" ,ocaml-menhir)))
+    (propagated-inputs
+     `(("opam" ,opam)))
+    (home-page "https://github.com/janestreet/jbuilder")
+    (synopsis "Composable build system for OCaml")
+    (description "Jbuilder is a build system designed for OCaml/Reason projects
+only.  It focuses on providing the user with a consistent experience and takes
+care of most of the low-level details of OCaml compilation.  All you have to do
+is provide a description of your project and Jbuilder will do the rest.")
+    (license license:asl2.0)))
+
 (define-public coq-flocq
   (package
     (name "coq-flocq")
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [bug#29034] [PATCH 0/5] Add ocaml-utop and dependencies
@ 2017-10-27 23:10 Peter Kreye
  2017-10-26 22:02 ` [bug#29034] [PATCH 1/5] gnu: Add ocaml-jbuilder Peter Kreye
                   ` (4 more replies)
  0 siblings, 5 replies; 11+ messages in thread
From: Peter Kreye @ 2017-10-27 23:10 UTC (permalink / raw)
  To: 29034

Hi,

This patch series adds UTop and its dependencies for OCaml. In order to
get a recent version of utop to build, a more recent version of
ocaml-findlib was needed.

Thanks,
Peter

Peter Kreye (5):
  gnu: Add ocaml-jbuilder.
  gnu: Add ocaml-zed.
  gnu: Add ocaml-lambda-term.
  gnu: Add ocaml-findlib-1.7.3.
  gnu: Add ocaml-utop.

 gnu/packages/ocaml.scm | 192 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 192 insertions(+)

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [bug#29034] [PATCH 2/5] gnu: Add ocaml-zed.
  2017-10-27 23:10 [bug#29034] [PATCH 0/5] Add ocaml-utop and dependencies Peter Kreye
  2017-10-26 22:02 ` [bug#29034] [PATCH 1/5] gnu: Add ocaml-jbuilder Peter Kreye
@ 2017-10-27 23:31 ` Peter Kreye
  2017-10-28  8:11   ` Ludovic Courtès
  2017-10-27 23:32 ` [bug#29034] [PATCH 3/5] gnu: Add ocaml-lambda-term Peter Kreye
                   ` (2 subsequent siblings)
  4 siblings, 1 reply; 11+ messages in thread
From: Peter Kreye @ 2017-10-27 23:31 UTC (permalink / raw)
  To: 29034

* gnu/packages/ocaml.scm (ocaml-zed): New variable.
---
 gnu/packages/ocaml.scm | 37 +++++++++++++++++++++++++++++++++++++
 1 file changed, 37 insertions(+)

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 2df9cc1a2..5fdc8e09c 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -3591,6 +3591,43 @@ care of most of the low-level details of OCaml compilation.  All you have to do
 is provide a description of your project and Jbuilder will do the rest.")
     (license license:asl2.0)))
 
+(define-public ocaml-zed
+  (package
+    (name "ocaml-zed")
+    (version "1.5")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/diml/zed/archive/"
+                                  version ".tar.gz"))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "1q281slzwgdrrxalayll75bxgghadswlh2zcvzy08nrywqnlq5y8"))))
+    (build-system ocaml-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (delete 'configure)
+         (replace 'build
+           (lambda* (#:key #:allow-other-keys)
+             (zero? (system* "jbuilder" "build"))))
+         (delete 'check)
+         (replace 'install
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out")))
+               (zero? (system* "jbuilder" "install" "--prefix" out))))))))
+    (native-inputs
+     `(("jbuilder" ,ocaml-jbuilder)))
+    (propagated-inputs
+     `(("camomile" ,ocaml-camomile)
+       ("react" ,ocaml-react)))
+    (home-page "https://github.com/diml/zed")
+    (synopsis "Abstract engine for text editing in OCaml")
+    (description "Zed is an abstract engine for text edition.  It can be used
+to write text editors, edition widgets, readlines, etc.  You just have to
+connect an engine to your inputs and rendering functions to get an editor.")
+    (license license:bsd-3)))
+
 (define-public coq-flocq
   (package
     (name "coq-flocq")
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [bug#29034] [PATCH 3/5] gnu: Add ocaml-lambda-term.
  2017-10-27 23:10 [bug#29034] [PATCH 0/5] Add ocaml-utop and dependencies Peter Kreye
  2017-10-26 22:02 ` [bug#29034] [PATCH 1/5] gnu: Add ocaml-jbuilder Peter Kreye
  2017-10-27 23:31 ` [bug#29034] [PATCH 2/5] gnu: Add ocaml-zed Peter Kreye
@ 2017-10-27 23:32 ` Peter Kreye
  2017-10-28  8:18   ` Ludovic Courtès
  2017-10-27 23:33 ` [bug#29034] [PATCH 4/5] gnu: Add ocaml-findlib-1.7.3 Peter Kreye
  2017-10-27 23:34 ` [bug#29034] [PATCH 5/5] gnu: Add ocaml-utop Peter Kreye
  4 siblings, 1 reply; 11+ messages in thread
From: Peter Kreye @ 2017-10-27 23:32 UTC (permalink / raw)
  To: 29034

* gnu/packages/ocaml.scm (ocaml-zed): New variable.
---
 gnu/packages/ocaml.scm | 42 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 42 insertions(+)

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 5fdc8e09c..712cc91e0 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -3628,6 +3628,48 @@ to write text editors, edition widgets, readlines, etc.  You just have to
 connect an engine to your inputs and rendering functions to get an editor.")
     (license license:bsd-3)))
 
+(define-public ocaml-lambda-term
+  (package
+    (name "ocaml-lambda-term")
+    (version "1.11")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://github.com/diml/lambda-term/archive/"
+                           version ".tar.gz"))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32 "10lx1jqgmmfwwlv64di4a8nia9l53v7179z70n9fx6aq5l7r8nba"))))
+    (build-system ocaml-build-system)
+    (arguments
+     `(#:test-target "test"
+       #:phases
+       (modify-phases %standard-phases
+         (delete 'configure)
+         ;; currently, ocaml-lwt is an old version of lwt from before lwt.react
+         ;; was split into a separate module called lwt_react
+         (add-before 'build 'use-old-lwt-react-name
+           (lambda _
+             (substitute* "src/jbuild" (("lwt_react") "lwt.react"))))
+         (replace 'install
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out")))
+               (zero? (system* "jbuilder" "install" "--prefix" out))))))))
+    (native-inputs
+     `(("jbuilder" ,ocaml-jbuilder)))
+    (propagated-inputs
+     `(("lwt" ,ocaml-lwt)
+       ("zed" ,ocaml-zed)))
+    (home-page "https://github.com/diml/lambda-term")
+    (synopsis "Terminal manipulation library for OCaml")
+    (description "Lambda-Term is a cross-platform library for manipulating the
+terminal.  It provides an abstraction for keys, mouse events, colors, as well as
+a set of widgets to write curses-like applications.  The main objective of
+Lambda-Term is to provide a higher level functional interface to terminal
+manipulation than, for example, ncurses, by providing a native OCaml interface
+instead of bindings to a C library.")
+    (license license:bsd-3)))
+
 (define-public coq-flocq
   (package
     (name "coq-flocq")
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [bug#29034] [PATCH 4/5] gnu: Add ocaml-findlib-1.7.3.
  2017-10-27 23:10 [bug#29034] [PATCH 0/5] Add ocaml-utop and dependencies Peter Kreye
                   ` (2 preceding siblings ...)
  2017-10-27 23:32 ` [bug#29034] [PATCH 3/5] gnu: Add ocaml-lambda-term Peter Kreye
@ 2017-10-27 23:33 ` Peter Kreye
  2017-10-28  8:36   ` Ludovic Courtès
  2017-10-27 23:34 ` [bug#29034] [PATCH 5/5] gnu: Add ocaml-utop Peter Kreye
  4 siblings, 1 reply; 11+ messages in thread
From: Peter Kreye @ 2017-10-27 23:33 UTC (permalink / raw)
  To: 29034

* gnu/packages/ocaml.scm (ocaml-findlib-1.7.3): New variable.
---
 gnu/packages/ocaml.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 712cc91e0..403176452 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -844,6 +844,41 @@ brought up to date by propagating the changes in each replica
 to the other.")
     (license license:gpl3+)))
 
+(define-public ocaml-findlib-1.7.3
+  (package
+    (inherit ocaml-findlib)
+    (version "1.7.3")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "http://download.camlcity.org/download/"
+                                  "findlib" "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "12xx8si1qv3xz90qsrpazjjk4lc1989fzm97rsmc4diwla7n15ni"))))
+    (arguments
+     `(#:tests? #f  ; no test suite
+       #:parallel-build? #f
+       #:make-flags (list "all" "opt")
+       #:phases (modify-phases %standard-phases
+                  (replace
+                      'configure
+                    (lambda* (#:key outputs #:allow-other-keys)
+                      (let ((out (assoc-ref outputs "out")))
+                        (system*
+                         "./configure"
+                         "-bindir" (string-append out "/bin")
+                         "-config" (string-append out "/etc/ocamfind.conf")
+                         "-mandir" (string-append out "/share/man")
+                         "-sitelib" (string-append out "/lib/ocaml/site-lib")
+                         "-with-toolbox"))))
+                  (replace
+                      'install
+                    (lambda* (#:key outputs #:allow-other-keys)
+                      (let ((out (assoc-ref outputs "out")))
+                        (system*
+                         "make" "install"
+                         (string-append "OCAML_CORE_STDLIB=" out))))))))))
+
 (define-public ocaml-findlib
   (package
     (name "ocaml-findlib")
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [bug#29034] [PATCH 5/5] gnu: Add ocaml-utop.
  2017-10-27 23:10 [bug#29034] [PATCH 0/5] Add ocaml-utop and dependencies Peter Kreye
                   ` (3 preceding siblings ...)
  2017-10-27 23:33 ` [bug#29034] [PATCH 4/5] gnu: Add ocaml-findlib-1.7.3 Peter Kreye
@ 2017-10-27 23:34 ` Peter Kreye
  2017-10-28  8:37   ` bug#29034: " Ludovic Courtès
  4 siblings, 1 reply; 11+ messages in thread
From: Peter Kreye @ 2017-10-27 23:34 UTC (permalink / raw)
  To: 29034

* gnu/packages/ocaml.scm (ocaml-utop): New variable.
---
 gnu/packages/ocaml.scm | 44 ++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 44 insertions(+)

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 403176452..474d7653b 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -3705,6 +3705,50 @@ manipulation than, for example, ncurses, by providing a native OCaml interface
 instead of bindings to a C library.")
     (license license:bsd-3)))
 
+(define-public ocaml-utop
+  (package
+    (name "ocaml-utop")
+    (version "2.0.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/diml/utop/archive/"
+                                  version ".tar.gz"))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "1v22bzw1vgwbbmpvi7lkyp2r59w5mag85rmqplb4fwik78x7k4ss"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:test-target "test"
+       #:phases
+       (modify-phases %standard-phases
+         (delete 'configure)
+         (replace 'install
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (libdir (string-append out "/lib/ocaml/site-lib")))
+               (mkdir-p libdir)
+               (zero? (system* "jbuilder" "install"
+                               "--prefix" out
+                               "--libdir" libdir))))))))
+    (native-inputs
+     `(("ocaml" ,ocaml)
+       ("cppo" ,ocaml-cppo)
+       ("jbuilder" ,ocaml-jbuilder)))
+    (propagated-inputs
+     `(("findlib" ,ocaml-findlib-1.7.3)
+       ("lambda-term" ,ocaml-lambda-term)
+       ("lwt" ,ocaml-lwt)
+       ("react" ,ocaml-react)
+       ("camomile" ,ocaml-camomile)
+       ("zed" ,ocaml-zed)))
+    (home-page "https://github.com/diml/utop")
+    (synopsis "Improved interface to the OCaml toplevel")
+    (description "UTop is an improved toplevel for OCaml.  It can run in a
+terminal or in Emacs.  It supports line editing, history, real-time and context
+sensitive completion, colors, and more.")
+    (license license:bsd-3)))
+
 (define-public coq-flocq
   (package
     (name "coq-flocq")
-- 
2.14.2

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [bug#29034] [PATCH 1/5] gnu: Add ocaml-jbuilder.
  2017-10-26 22:02 ` [bug#29034] [PATCH 1/5] gnu: Add ocaml-jbuilder Peter Kreye
@ 2017-10-28  8:08   ` Ludovic Courtès
  0 siblings, 0 replies; 11+ messages in thread
From: Ludovic Courtès @ 2017-10-28  8:08 UTC (permalink / raw)
  To: Peter Kreye; +Cc: 29034

Hello,

Peter Kreye <kreyepr@gmail.com> skribis:

> * gnu/packages/ocaml.scm (ocaml-jbuilder): New variable.

Applied!

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [bug#29034] [PATCH 2/5] gnu: Add ocaml-zed.
  2017-10-27 23:31 ` [bug#29034] [PATCH 2/5] gnu: Add ocaml-zed Peter Kreye
@ 2017-10-28  8:11   ` Ludovic Courtès
  0 siblings, 0 replies; 11+ messages in thread
From: Ludovic Courtès @ 2017-10-28  8:11 UTC (permalink / raw)
  To: Peter Kreye; +Cc: 29034

Peter Kreye <kreyepr@gmail.com> skribis:

> * gnu/packages/ocaml.scm (ocaml-zed): New variable.

Applied!

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [bug#29034] [PATCH 3/5] gnu: Add ocaml-lambda-term.
  2017-10-27 23:32 ` [bug#29034] [PATCH 3/5] gnu: Add ocaml-lambda-term Peter Kreye
@ 2017-10-28  8:18   ` Ludovic Courtès
  0 siblings, 0 replies; 11+ messages in thread
From: Ludovic Courtès @ 2017-10-28  8:18 UTC (permalink / raw)
  To: Peter Kreye; +Cc: 29034

Peter Kreye <kreyepr@gmail.com> skribis:

> * gnu/packages/ocaml.scm (ocaml-zed): New variable.

Applied!

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [bug#29034] [PATCH 4/5] gnu: Add ocaml-findlib-1.7.3.
  2017-10-27 23:33 ` [bug#29034] [PATCH 4/5] gnu: Add ocaml-findlib-1.7.3 Peter Kreye
@ 2017-10-28  8:36   ` Ludovic Courtès
  0 siblings, 0 replies; 11+ messages in thread
From: Ludovic Courtès @ 2017-10-28  8:36 UTC (permalink / raw)
  To: Peter Kreye; +Cc: 29034

Peter Kreye <kreyepr@gmail.com> skribis:

> * gnu/packages/ocaml.scm (ocaml-findlib-1.7.3): New variable.

I rewrote it a bit to reduce duplication:

--8<---------------cut here---------------start------------->8---
(define-public ocaml-findlib-1.7.3
  (package
    (inherit ocaml-findlib)
    (version "1.7.3")
    (source (origin
              (method url-fetch)
              (uri (string-append "http://download.camlcity.org/download/"
                                  "findlib" "-" version ".tar.gz"))
              (sha256
               (base32
                "12xx8si1qv3xz90qsrpazjjk4lc1989fzm97rsmc4diwla7n15ni"))))
    (arguments
     (substitute-keyword-arguments (package-arguments ocaml-findlib)
       ((#:phases phases)
        `(modify-phases ,phases
           (replace 'install
             (lambda* (#:key outputs #:allow-other-keys)
               (let ((out (assoc-ref outputs "out")))
                 (zero? (system* "make" "install"
                                 (string-append "OCAML_CORE_STDLIB="
                                                out))))))))))))
--8<---------------cut here---------------end--------------->8---

Hope that’s fine with you!

Also, what would it take to upgrade ocaml-findlib@1.6 to this one?
That’s something we should do if there are no compatibility issues.

Thanks,
Ludo’.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* bug#29034: [PATCH 5/5] gnu: Add ocaml-utop.
  2017-10-27 23:34 ` [bug#29034] [PATCH 5/5] gnu: Add ocaml-utop Peter Kreye
@ 2017-10-28  8:37   ` Ludovic Courtès
  0 siblings, 0 replies; 11+ messages in thread
From: Ludovic Courtès @ 2017-10-28  8:37 UTC (permalink / raw)
  To: Peter Kreye; +Cc: 29034-done

Peter Kreye <kreyepr@gmail.com> skribis:

> * gnu/packages/ocaml.scm (ocaml-utop): New variable.

Applied.

Thanks for this patch series, and welcome!  :-)

Ludo’.

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2017-10-28  8:38 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-10-27 23:10 [bug#29034] [PATCH 0/5] Add ocaml-utop and dependencies Peter Kreye
2017-10-26 22:02 ` [bug#29034] [PATCH 1/5] gnu: Add ocaml-jbuilder Peter Kreye
2017-10-28  8:08   ` Ludovic Courtès
2017-10-27 23:31 ` [bug#29034] [PATCH 2/5] gnu: Add ocaml-zed Peter Kreye
2017-10-28  8:11   ` Ludovic Courtès
2017-10-27 23:32 ` [bug#29034] [PATCH 3/5] gnu: Add ocaml-lambda-term Peter Kreye
2017-10-28  8:18   ` Ludovic Courtès
2017-10-27 23:33 ` [bug#29034] [PATCH 4/5] gnu: Add ocaml-findlib-1.7.3 Peter Kreye
2017-10-28  8:36   ` Ludovic Courtès
2017-10-27 23:34 ` [bug#29034] [PATCH 5/5] gnu: Add ocaml-utop Peter Kreye
2017-10-28  8:37   ` bug#29034: " Ludovic Courtès

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).