Remove ocaml packages added independently
more/packages/ocaml.scm
| 44 | 44 | #:use-module (gnu packages texinfo) | |
| 45 | 45 | #:use-module (more packages smt)) | |
| 46 | 46 | ||
| 47 | - | ;; Janestreet packages are found in a similar way and all need the same patch. | |
| 48 | - | (define (janestreet-origin name version hash) | |
| 49 | - | (origin (method url-fetch) | |
| 50 | - | (uri (string-append "https://ocaml.janestreet.com/ocaml-core/" | |
| 51 | - | (version-major+minor version) "/files/" | |
| 52 | - | name "-" version ".tar.gz")) | |
| 53 | - | (sha256 (base32 hash)) | |
| 54 | - | (modules '((guix build utils))) | |
| 55 | - | (snippet | |
| 56 | - | (let ((pattern (string-append "lib/" name))) | |
| 57 | - | `(begin | |
| 58 | - | ;; install.ml contains an invalid reference to the ppx file and | |
| 59 | - | ;; propagates this error to the generated META file. It | |
| 60 | - | ;; looks for it in the "lib" directory, but it is installed in | |
| 61 | - | ;; "lib/ocaml/site-lib/package". This substitute does not change | |
| 62 | - | ;; this file for non ppx packages. | |
| 63 | - | (substitute* "install.ml" | |
| 64 | - | ((,pattern) (string-append "lib/ocaml/site-lib/" ,name))) | |
| 65 | - | ;; The standard Makefile would try to install janestreet modules | |
| 66 | - | ;; in OCaml's directory in the store, which is read-only. | |
| 67 | - | (substitute* "Makefile" | |
| 68 | - | (("--prefix") | |
| 69 | - | "--libdir $(LIBDIR) --prefix"))))))) | |
| 70 | - | ||
| 71 | - | ;; They also require almost the same set of arguments | |
| 72 | - | (define janestreet-arguments | |
| 73 | - | `(#:use-make? #t | |
| 74 | - | #:make-flags | |
| 75 | - | (list (string-append "CONFIGUREFLAGS=--prefix " | |
| 76 | - | (assoc-ref %outputs "out") | |
| 77 | - | " --enable-tests") | |
| 78 | - | (string-append "LIBDIR=" | |
| 79 | - | (assoc-ref %outputs "out") | |
| 80 | - | "/lib/ocaml/site-lib") | |
| 81 | - | ;; for ocaml-bin-prot, otherwise ignored | |
| 82 | - | (string-append "OCAML_TOPLEVEL_PATH=" | |
| 83 | - | (assoc-ref %build-inputs "findlib") | |
| 84 | - | "/lib/ocaml/site-lib")) | |
| 85 | - | #:phases (modify-phases %standard-phases (delete 'configure)))) | |
| 86 | - | ||
| 87 | 47 | (define-public ocaml-fix | |
| 88 | 48 | (package | |
| 89 | 49 | (inherit ocaml) | |
… | |||
| 139 | 99 | (with-directory-excursion "testsuite" | |
| 140 | 100 | (zero? (system* "make" "all")))))))))) | |
| 141 | 101 | ||
| 142 | - | (define-public ocaml-zed | |
| 143 | - | (package | |
| 144 | - | (name "ocaml-zed") | |
| 145 | - | (version "1.4") | |
| 146 | - | (source (origin | |
| 147 | - | (method url-fetch) | |
| 148 | - | (uri (string-append "https://github.com/diml/zed/archive/" | |
| 149 | - | version ".tar.gz")) | |
| 150 | - | (sha256 | |
| 151 | - | (base32 | |
| 152 | - | "0pvfq9ikhbkv4ksn3k3vzs6wiwkihjav3n81lhxm54z9931gfwnz")))) | |
| 153 | - | (build-system ocaml-build-system) | |
| 154 | - | (propagated-inputs | |
| 155 | - | `(("camomile" ,ocaml-camomile) | |
| 156 | - | ("react" ,ocaml-react))) | |
| 157 | - | (home-page "https://github.com/diml/zed") | |
| 158 | - | (synopsis "Abstract engine for text edition in OCaml") | |
| 159 | - | (description "Zed is an abstract engine for text edition. It can be used to | |
| 160 | - | write text editors, edition widgets, readlines, ... | |
| 161 | - | ||
| 162 | - | Zed uses Camomile to fully support the Unicode specification, and implements an | |
| 163 | - | UTF-8 encoded string type with validation, and a rope datastructure to achieve | |
| 164 | - | efficient operations on large Unicode buffers. Zed also features a regular | |
| 165 | - | expression search on ropes. | |
| 166 | - | ||
| 167 | - | To support efficient text edition capabilities, Zed provides macro recording | |
| 168 | - | and cursor management facilities.") | |
| 169 | - | (license license:bsd-3))) | |
| 170 | - | ||
| 171 | - | (define-public ocaml-lambda-term | |
| 172 | - | (package | |
| 173 | - | (name "ocaml-lambda-term") | |
| 174 | - | (version "1.10.1") | |
| 175 | - | (home-page "https://github.com/diml/lambda-term") | |
| 176 | - | (source (origin | |
| 177 | - | (method url-fetch) | |
| 178 | - | (uri (string-append home-page "/archive/" version ".tar.gz")) | |
| 179 | - | (sha256 | |
| 180 | - | (base32 | |
| 181 | - | "1449glcsavcwbcsxbd7wcjz50y8vvin4zwpmkhq8i6jca3f3sknj")))) | |
| 182 | - | (build-system ocaml-build-system) | |
| 183 | - | (propagated-inputs | |
| 184 | - | `(("zed" ,ocaml-zed) | |
| 185 | - | ("lwt" ,ocaml-lwt) | |
| 186 | - | ("react" ,ocaml-react))) | |
| 187 | - | (arguments | |
| 188 | - | `(#:phases | |
| 189 | - | (modify-phases %standard-phases | |
| 190 | - | (add-after 'install 'link-stubs | |
| 191 | - | (lambda* (#:key outputs #:allow-other-keys) | |
| 192 | - | (let* ((out (assoc-ref outputs "out")) | |
| 193 | - | (stubs (string-append out "/lib/ocaml/site-lib/stubslibs")) | |
| 194 | - | (lib (string-append out "/lib/ocaml/site-lib/lambda-term"))) | |
| 195 | - | (mkdir-p stubs) | |
| 196 | - | (symlink (string-append lib "/dlllambda-term_stubs.so") | |
| 197 | - | (string-append stubs "/dlllambda-term_stubs.so")))))))) | |
| 198 | - | (synopsis "Terminal manipulation library for OCaml") | |
| 199 | - | (description "Lambda-term is a cross-platform library for manipulating the | |
| 200 | - | terminal. It provides an abstraction for keys, mouse events, colors, as well as | |
| 201 | - | a set of widgets to write curses-like applications. | |
| 202 | - | ||
| 203 | - | The main objective of lambda-term is to provide a higher level functional | |
| 204 | - | interface to terminal manipulation than, for example, ncurses, by providing a | |
| 205 | - | native OCaml interface instead of bindings to a C library. | |
| 206 | - | ||
| 207 | - | Lambda-term integrates with zed to provide text edition facilities in console | |
| 208 | - | applications.") | |
| 209 | - | (license license:bsd-3))) | |
| 210 | - | ||
| 211 | - | (define-public ocaml-utop | |
| 212 | - | (package | |
| 213 | - | (name "ocaml-utop") | |
| 214 | - | (version "1.19.3") | |
| 215 | - | (source (origin | |
| 216 | - | (method url-fetch) | |
| 217 | - | (uri (string-append "https://github.com/diml/utop/archive/" | |
| 218 | - | version ".tar.gz")) | |
| 219 | - | (file-name (string-append name "-" version ".tar.gz")) | |
| 220 | - | (sha256 | |
| 221 | - | (base32 | |
| 222 | - | "16z02vp9n97iax4fqpbi7v86r75vbabxvnd1rirh8w2miixs1g4x")))) | |
| 223 | - | (build-system ocaml-build-system) | |
| 224 | - | (native-inputs | |
| 225 | - | `(("cppo" ,ocaml-cppo))) | |
| 226 | - | (propagated-inputs | |
| 227 | - | `(("lambda-term" ,ocaml-lambda-term) | |
| 228 | - | ("lwt" ,ocaml-lwt) | |
| 229 | - | ("react" ,ocaml-react))) | |
| 230 | - | (home-page "https://github.com/diml/utop") | |
| 231 | - | (synopsis "Universal toplevel for OCaml") | |
| 232 | - | (description "utop is an improved toplevel for OCaml. It can run in a | |
| 233 | - | terminal or in Emacs. It supports line edition, history, real-time and context | |
| 234 | - | sensitive completion, colors, and more. | |
| 235 | - | ||
| 236 | - | It integrates with the tuareg mode in Emacs.") | |
| 237 | - | (license license:bsd-3))) | |
| 238 | - | ||
| 239 | 102 | (define-public proof-general2 | |
| 240 | 103 | (package | |
| 241 | 104 | (name "proof-general2") | |