;;; Copyright © 2018 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2020 Brett Gilio <brettg@gnu.org>
+;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
#:use-module (gnu packages protobuf)
#:use-module (gnu packages python)
#:use-module (gnu packages python-xyz)
+ #:use-module (gnu packages rsync)
#:use-module (gnu packages sdl)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages tex)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages time)
#:use-module (gnu packages tls)
- #:use-module (gnu packages version-control)
#:use-module (gnu packages virtualization)
#:use-module (gnu packages web-browsers)
#:use-module (gnu packages xml)
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/ocaml/ocamlbuild.git")
+ (url "https://github.com/ocaml/ocamlbuild")
(commit version)))
(file-name (git-file-name name version))
(sha256
(define-public ocaml-extlib
(package
(name "ocaml-extlib")
- (version "1.7.6")
+ (version "1.7.7")
(source (origin
(method url-fetch)
- (uri (string-append "https://ygrek.org.ua/p/release/ocaml-extlib/"
+ (uri (string-append "https://ygrek.org/p/release/ocaml-extlib/"
"extlib-" version ".tar.gz"))
(sha256
(base32
- "0wfs20v1yj5apdbj7214wdsr17ayh0qqq7ihidndvc8nmmwfa1dz"))))
+ "1sxmzc1mx3kg62j8kbk0dxkx8mkf1rn70h542cjzrziflznap0s1"))))
(build-system ocaml-build-system)
(arguments
`(#:phases
"1i0hhkrqi7rqlainlg5pc4hibbx6b5dp3x99gmav8c3sbfvlk9mc"))))
(build-system dune-build-system)
(propagated-inputs `(("ocaml-cudf" ,ocaml-cudf)))
- (home-page "http://www.i3s.unice.fr/~cpjm/misc/")
+ (home-page "https://www.i3s.unice.fr/~cpjm/misc/")
(synopsis "Upgrade path problem solver")
(description "Mccs (Multi Criteria CUDF Solver) is a CUDF problem solver.
Mccs take as input a CUDF problem and computes the best solution according to
#:test-target "tests"
- ;; FIXME: There's an obscure test failure:
- ;; …/_obuild/opam/opam.asm install P1' failed.
- #:tests? #f
-
#:phases (modify-phases %standard-phases
(add-before 'build 'pre-build
(lambda* (#:key inputs make-flags #:allow-other-keys)
#t)))
(add-before 'check 'pre-check
(lambda _
- (setenv "HOME" (getcwd))
- (invoke "git" "config" "--global" "user.email" "guix@gnu.org")
- (invoke "git" "config" "--global" "user.name" "Guix")
+ ;; The "repo" test attempts to open some of these files O_WRONLY
+ ;; and fails with a bogus "OpamSystem.File_not_found" otherwise.
+ (for-each
+ (lambda (f) (chmod f #o644))
+ (find-files "tests/packages" "\\.opam$"))
+
+ (substitute* "tests/Makefile"
+ (("/usr/bin/printf")
+ (which "printf"))
+ ;; By default tests run twice: once with a "local" repository
+ ;; and once with a git repository: disable the git tests to
+ ;; avoid the dependency.
+ (("all: local git")
+ "all: local"))
#t)))))
(native-inputs
`(("dune" ,dune)
- ("git" ,git) ;for the tests
("ocaml-cppo" ,ocaml-cppo)
- ("python" ,python))) ;for the tests
+
+ ;; For tests.
+ ("openssl" ,openssl)
+ ("python" ,python-wrapper)
+ ("rsync" ,rsync)
+ ("unzip" ,unzip)
+ ("which" ,which)))
(inputs
`(("ocaml" ,ocaml)
("ncurses" ,ncurses)
(define-public camlp5
(package
(name "camlp5")
- (version "7.11")
+ (version "7.12")
(source
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/camlp5/camlp5.git")
+ (url "https://github.com/camlp5/camlp5")
(commit (string-append "rel" (string-delete #\. version)))))
(file-name (git-file-name name version))
(sha256
- (base32 "1s1f9i0r0czxlbnsaz4kvs2ahknmqxcm5ypl75g7scjcbl0an2x4"))))
+ (base32 "12ix5g15bys932hyf9gs637iz76m0ji9075d83jfdmx85q30llgf"))))
(build-system gnu-build-system)
(inputs
`(("ocaml" ,ocaml)))
(install-file "etc/META" (string-append (assoc-ref outputs "out")
"/lib/ocaml/camlp5/"))
#t)))))
- (home-page "http://camlp5.gforge.inria.fr/")
+ (home-page "https://camlp5.github.io/")
(synopsis "Pre-processor Pretty Printer for OCaml")
(description
"Camlp5 is a Pre-Processor-Pretty-Printer for Objective Caml. It offers
(define-public hevea
(package
(name "hevea")
- (version "2.33")
+ (version "2.34")
(source (origin
(method url-fetch)
(uri (string-append "http://hevea.inria.fr/old/"
"hevea-" version ".tar.gz"))
(sha256
(base32
- "0115bn6n6hhb08rmj0m508wjcsn1mggiagqly6s941pq811wxymb"))))
+ "1pzyszxw90klpcmhjqrjfc8cw6c0gm4w2blim8ydyxb6rq6qml1s"))))
(build-system gnu-build-system)
(inputs
`(("ocaml" ,ocaml)))
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/ocaml/num.git")
+ (url "https://github.com/ocaml/num")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/ocaml/tuareg.git")
+ (url "https://github.com/ocaml/tuareg")
(commit version)))
(file-name (git-file-name name version))
(sha256
(define-public ocaml-menhir
(package
(name "ocaml-menhir")
- (version "20181113")
+ ;; More recent versions can be built after we have dune >= 2.0
+ (version "20190626")
(source
(origin
(method git-fetch)
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "1iqdf64ayq4s3d9jkwhs3s8wqc2s48b292hp0kcjsskfhcvwg0kr"))))
+ (base32 "0v8av4pw6rykzb7wx54xhbsx0jhh8xyb4x0k4yrxi0w5ylkck6mb"))))
(build-system ocaml-build-system)
(inputs
`(("ocaml" ,ocaml)))
(define-public lablgtk
(package
(name "lablgtk")
- (version "2.18.8")
+ (version "2.18.10")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/garrigue/lablgtk")
- (commit "lablgtk2188")))
+ (commit version)))
(file-name (git-file-name name version))
(sha256
(base32
- "0gpww8bkwi5cl68kc006970zvzwvq73h1mwrnd239apmwlxc1l8a"))))
+ "0w8cdfcv2wc19sd3qzj3qq77qc6rbnbynsz02gzbl15kgrvgrfxi"))))
(build-system gnu-build-system)
(native-inputs
`(("ocaml" ,ocaml)
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/bcpierce00/unison.git")
+ (url "https://github.com/bcpierce00/unison")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(list "all" "allopt"
(string-append "INSTALLDIR=" (assoc-ref %outputs "out")
"/lib/ocaml"))))
- (home-page "http://forge.ocamlcore.org/projects/camlzip")
+ (home-page "https://github.com/xavierleroy/camlzip")
(synopsis "Provides easy access to compressed files")
(description "Provides easy access to compressed files in ZIP, GZIP and
JAR format. It provides functions for reading from and writing to compressed
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/c-cube/qcheck.git")
+ (url "https://github.com/c-cube/qcheck")
(commit version)))
(file-name (git-file-name name version))
(sha256
(home-page "https://github.com/c-cube/qcheck")
(synopsis "QuickCheck inspired property-based testing for OCaml")
(description "QuickCheck inspired property-based testing for OCaml. This
-module allows to check invariants (properties of some types) over randomly
+module checks invariants (properties of some types) over randomly
generated instances of the type. It provides combinators for generating
instances and printing them.")
(license license:lgpl3+)))
(delete 'configure))))
(home-page "http://erratique.ch/software/mtime")
(synopsis "Monotonic wall-clock time for OCaml")
- (description "Access monotonic wall-clock time. It allows to measure time
+ (description "Access monotonic wall-clock time. It measures time
spans without being subject to operating system calendar time adjustments.")
(license license:isc)))
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/alainfrisch/ppx_tools.git")
+ (url "https://github.com/alainfrisch/ppx_tools")
(commit version)))
(file-name (git-file-name name version))
(sha256 (base32
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/savonet/ocaml-ssl.git")
+ (url "https://github.com/savonet/ocaml-ssl")
(commit version)))
(file-name (git-file-name name version))
(sha256 (base32
(sha256
(base32
"0gsb1jpj3mnqbjgbavi4l95gl6g4agq58j82km22fdfg63j3w3fk"))))))
- (home-page "http://www.cduce.org/download.html#side")
+ (home-page "https://www.cduce.org/download.html#side")
(synopsis "Lexer generator for Unicode and OCaml")
(description "Lexer generator for Unicode and OCaml.")
(license license:expat)))
(define-public ocaml-ocurl
(package
(name "ocaml-ocurl")
- (version "0.8.2")
+ (version "0.9.1")
(source (origin
(method url-fetch)
(uri (string-append "http://ygrek.org.ua/p/release/ocurl/ocurl-"
version ".tar.gz"))
(sha256
(base32
- "1ax3xdlzgb1zg7d0wr9nwgmh6a45a764m0wk8p6mx07ad94hz0q9"))))
+ "0n621cxb9012pj280c7821qqsdhypj8qy9qgrah79dkh6a8h2py6"))))
(build-system ocaml-build-system)
(arguments
`(#:phases
`(("ocamlbuild" ,ocamlbuild)))
(home-page "https://forge.ocamlcore.org/projects/ocamlify")
(synopsis "Include files in OCaml code")
- (description "OCamlify allows to create OCaml source code by including
+ (description "OCamlify creates OCaml source code by including
whole files into OCaml string or string list. The code generated can be
compiled as a standard OCaml file. It allows embedding external resources as
OCaml code.")
(define-public ocaml-fileutils
(package
(name "ocaml-fileutils")
- (version "0.6.0")
+ (version "0.6.2")
(source (origin
(method git-fetch)
(uri (git-reference
(file-name (git-file-name name version))
(sha256
(base32
- "06gxbqfssl16xc8y4d34wpm0mwfr0jgph4lmlwfmgazyggnmvc7m"))))
- (build-system ocaml-build-system)
- (arguments
- '(#:phases
- (modify-phases %standard-phases
- (add-before 'configure 'set-topfind
- (lambda* (#:key inputs #:allow-other-keys)
- ;; add the line #directory ".." at the top of each file
- ;; using #use "topfind";; to be able to find topfind
- (let* ((findlib-path (assoc-ref inputs "findlib"))
- (findlib-libdir
- (string-append findlib-path "/lib/ocaml/site-lib")))
- (substitute* "setup.ml"
- (("#use \"topfind\";;" all)
- (string-append "#directory \"" findlib-libdir "\"\n"
- all))))
- #t)))))
+ "01qf51b8pb7vyfba7y0kb7ajwj1950im25d7f59821zwsibns3d9"))))
+ (build-system dune-build-system)
(propagated-inputs
`(("ocaml-stdlib-shims" ,ocaml-stdlib-shims)))
(native-inputs
- `(("ocamlbuild" ,ocamlbuild)
- ("ocaml-oasis" ,ocaml-oasis)
- ("ocaml-ounit" ,ocaml-ounit)))
+ `(("ocaml-ounit" ,ocaml-ounit)))
(home-page "http://ocaml-fileutils.forge.ocamlcore.org")
(synopsis "Pure OCaml functions to manipulate real file and filename")
(description "Library to provide pure OCaml functions to manipulate real
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/c-cube/seq.git")
+ (url "https://github.com/c-cube/seq")
(commit version)))
(file-name (git-file-name name version))
(sha256
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/ocaml/ocaml-re.git")
+ (url "https://github.com/ocaml/ocaml-re")
(commit version)))
(file-name (git-file-name name version))
(sha256
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/mirage/ezjsonm.git")
+ (url "https://github.com/mirage/ezjsonm")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/mirage/ocaml-uri.git")
+ (url "https://github.com/mirage/ocaml-uri")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/alavrik/piqi.git")
+ (url "https://github.com/alavrik/piqi")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(name "ocaml4.07-piqi")
(version "0.7.7")
(source (origin
- (method url-fetch)
- (uri (string-append "https://github.com/alavrik/piqi-ocaml/"
- "archive/v" version ".tar.gz"))
- (file-name (string-append name "-" version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/alavrik/piqi-ocaml")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
(sha256
(base32
- "1l0b4saxmwqgw9mb10mwrz31lvpj3l0abh3cwarqp0x4vdrzshbh"))))
+ "1913jpsb8mvqi8609j4g4sm5jhg50dq0xqxgy8nmvknfryyc89nm"))))
(build-system ocaml-build-system)
(arguments
`(#:make-flags
"/bin/sh"))
#:phases
(modify-phases %standard-phases
+ (add-after 'unpack 'make-files-writable
+ (lambda _
+ (for-each make-file-writable (find-files "."))
+ #t))
(delete 'configure))
#:ocaml ,ocaml-4.07
#:findlib ,ocaml4.07-findlib))
(define-public bap
(package
(name "bap")
- (version "1.6.0")
+ (version "2.0.0")
(home-page "https://github.com/BinaryAnalysisPlatform/bap")
(source (origin
(method git-fetch)
(file-name (git-file-name name version))
(sha256
(base32
- "0ryf2xb37pj2f9mc3p5prqgqrylph9qgq7q9jnbx8b03nzzpa6h6"))))
+ "0lb9xkfp67wjjqr75p6krivmjra7l5673236v9ny4gp0xi0755bk"))))
(build-system ocaml-build-system)
(native-inputs
`(("ocaml-oasis" ,(package-with-ocaml4.07 ocaml-oasis))
("ocaml-ocurl" ,(package-with-ocaml4.07 ocaml-ocurl))
("ocaml-piqi" ,ocaml4.07-piqi)
("ocaml-ppx-jane" ,ocaml4.07-ppx-jane)
+ ("ocaml-utop" ,ocaml4.07-utop)
("ocaml-uuidm" ,(package-with-ocaml4.07 ocaml-uuidm))
("ocaml-uri" ,ocaml4.07-uri)
("ocaml-zarith" ,(package-with-ocaml4.07 ocaml-zarith))))
(inputs
- `(("llvm" ,llvm-3.8)
- ("gmp" ,gmp)))
+ `(("gmp" ,gmp)
+ ("llvm" ,llvm-3.8)
+ ("ncurses" ,ncurses)))
(arguments
`(#:use-make? #t
#:phases
(modify-phases %standard-phases
+ (add-before 'configure 'fix-ncurses
+ (lambda _
+ (substitute* "oasis/llvm"
+ (("-lcurses") "-lncurses"))
+ #t))
(replace 'configure
(lambda* (#:key outputs inputs #:allow-other-keys)
;; add write for user, to prevent a failure in the install phase
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/diml/zed.git")
+ (url "https://github.com/diml/zed")
(commit version)))
(file-name (git-file-name name version))
(sha256
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/diml/lambda-term.git")
+ (url "https://github.com/diml/lambda-term")
(commit version)))
(file-name (git-file-name name version))
(sha256
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/ocaml-community/utop.git")
+ (url "https://github.com/ocaml-community/utop")
(commit version)))
(file-name (git-file-name name version))
(sha256
(define-public ocaml-tsdl
(package
(name "ocaml-tsdl")
- (version "0.9.6")
- (home-page "http://erratique.ch/software/tsdl")
+ (version "0.9.7")
+ (home-page "https://erratique.ch/software/tsdl")
(source (origin
(method url-fetch)
(uri (string-append home-page "/releases/tsdl-"
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "00krjhmnchsnz33h9zhh0v69xbvi86l0xf0dvy7iivylb7f7x3n4"))))
+ "1zwv0ixkigh1gzk5n49rwvz2f2m62jdkkqg40j7dclg4gri7691f"))))
(build-system ocaml-build-system)
(arguments
`(#:build-flags '("build")
(native-inputs
`(("ocamlbuild" ,ocamlbuild)
("ocaml-astring" ,ocaml-astring)
- ("ocaml-ocb-stubblr" ,ocaml-ocb-stubblr)
("opam" ,opam)
("pkg-config" ,pkg-config)))
(inputs
`(("topkg" ,ocaml-topkg)
- ("result" ,ocaml-result)
("sdl2" ,sdl2)
("integers" ,ocaml-integers)
("ctypes" ,ocaml-ctypes)))
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/deducteam/dedukti.git")
+ (url "https://github.com/deducteam/dedukti")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/rlepigre/ocaml-bindlib.git")
+ (url "https://github.com/rlepigre/ocaml-bindlib")
(commit (string-append "ocaml-bindlib_" version))))
(file-name (git-file-name name version))
(sha256
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/ocaml/merlin.git")
+ (url "https://github.com/ocaml/merlin")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/janestreet/ppx_compare.git")
+ (url "https://github.com/janestreet/ppx_compare")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/janestreet/ppx_sexp_conv.git")
+ (url "https://github.com/janestreet/ppx_sexp_conv")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/janestreet/ppx_variants_conv.git")
+ (url "https://github.com/janestreet/ppx_variants_conv")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(define-public ocaml-octavius
(package
(name "ocaml-octavius")
- (version "1.2.1")
+ (version "1.2.2")
(source (origin
(method git-fetch)
(uri (git-reference
(file-name (git-file-name name version))
(sha256
(base32
- "1ck6yj6z5rvqyl39rz87ca1bnk0f1dpgvlk115631hjh8bwpfvfq"))))
+ "1c5m51xcn2jv42kjjpklr6g63sgx1k885wfdp1yr4wrmiaj9cbpx"))))
(build-system dune-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'make-writable
+ (lambda _
+ (for-each (lambda (file)
+ (chmod file #o644))
+ (find-files "." "."))
+ #t)))))
(properties `((upstream-name . "octavius")))
(home-page "https://github.com/ocaml-doc/octavius")
(synopsis "Ocamldoc comment syntax parser")
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/janestreet/ppx_hash.git")
+ (url "https://github.com/janestreet/ppx_hash")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/janestreet/ppx_enumerate.git")
+ (url "https://github.com/janestreet/ppx_enumerate")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/janestreet/ppx_expect.git")
+ (url "https://github.com/janestreet/ppx_expect")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/janestreet/ppx_typerep_conv.git")
+ (url "https://github.com/janestreet/ppx_typerep_conv")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/janestreet/ppx_bin_prot.git")
+ (url "https://github.com/janestreet/ppx_bin_prot")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/janestreet/spawn.git")
+ (url "https://github.com/janestreet/spawn")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/janestreet/core.git")
+ (url "https://github.com/janestreet/core")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/janestreet/core_kernel.git")
+ (url "https://github.com/janestreet/core_kernel")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/ocsigen/tyxml.git")
+ (url "https://github.com/ocsigen/tyxml")
(commit version)))
(file-name (git-file-name name version))
(sha256
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/aantron/bisect_ppx.git")
+ (url "https://github.com/aantron/bisect_ppx")
(commit version)))
(file-name (git-file-name name version))
(sha256
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/Chris00/fftw-ocaml.git")
+ (url "https://github.com/Chris00/fftw-ocaml")
(commit version)))
(file-name (git-file-name name version))
(sha256
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/mmottl/lacaml.git")
+ (url "https://github.com/mmottl/lacaml")
(commit version)))
(file-name (git-file-name name version))
(sha256
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/Chris00/ocaml-cairo.git")
+ (url "https://github.com/Chris00/ocaml-cairo")
(commit version)))
(file-name (git-file-name name version))
(sha256
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/garrigue/lablgtk.git")
+ (url "https://github.com/garrigue/lablgtk")
(commit version)))
(file-name (git-file-name name version))
(sha256