Commit Graph
2398 Commits
Author SHA1 Message Date
github-actions[bot] 5478217883 Merge staging-next into staging 2021-04-18 06:05:34 +00:00
Enrico Tassi 5594aa424c elpi: 1.13.0 -> 1.13.1 2021-04-18 06:09:28 +02:00
github-actions[bot] 33182b194a Merge staging-next into staging 2021-04-17 18:10:41 +00:00
Pavol Rusnak 29bb19258a treewide: use https for github URIs 2021-04-17 17:59:08 +02:00
Jörg Thalheim b2a1e04eed Merge remote-tracking branch 'upstream/staging-next' into HEAD 2021-04-17 16:37:04 +02:00
Vincent Laporte 8db8975228 ocamlPackages.ezxmlm: 1.0.2 → 1.1.0 2021-04-17 13:17:07 +02:00
Alyssa Ross 70e33e3ae3 glsurf: use current giflib
This requires bumping the version of camlimages used by glsurf to a
version that supports current giflib.  The most recent versions of
camlimages (even of 4.x) don't support ocaml 4.01 any more, so I've
upgraded to 4.1.2 here, the last version that supports ocaml 4.01 (and
which happily supports current giflib).
2021-04-16 14:06:10 +00:00
Vincent Laporte 982bdad584 ocamlPackages.cairo2: use Dune 2 2021-04-16 11:07:36 +02:00
Vincent Laporte e3aa8c650b ocamlPackages.lablgtk3: use Dune 2 2021-04-16 11:07:36 +02:00
sternenseemann 894b606945 ocamlPackages.wayland: init at 0.2 2021-04-15 11:51:06 +02:00
Vincent Laporte fd75d3b722 ocamlPackages.safepass: 3.0 → 3.1 2021-04-15 07:04:35 +02:00
Vincent Laporte 1c6935fbe4 ocamlPackages.postgresql: 4.6.3 → 5.0.0 2021-04-14 22:39:03 +02:00
Vincent Laporte 7db1853f5c ocamlPackages.rpclib: 8.0.0 → 8.1.0 2021-04-12 21:37:58 +02:00
Vincent Laporte f01a04abd4 ocamlPackages.jsonrpc: 1.4.1 → 1.5.0 2021-04-12 08:22:24 +02:00
sterni 2140791f9b ocamlPackages.janeStreet{,_0_9_0}: join the ocamlPackages fix point, allowing overriding to work as expected (#113696)
* ocamlPackages.janeStreet_0_9_0: join the ocamlPackages fix point

Internal dependencies in the janeStreet sets were always taken from the
own rec attribute set. While this is pretty simple and convenient, it
has the disadvantage that it doesn't play nice with overriding: If you'd
override an attribute in a janeStreet set previously, it would be
changed when referenced directly, but the other packages in that
janeStreet set still would use the original, non-overridden version of
the derivation.

This is easily fixed by passing janeStreet_0_9_0 itself from the fix
point of ocamlPackages and using it to reference the dependencies.

Example showing it now works as expected:

test-overlay.nix:

    self: super: {
      ocamlPackages = super.ocamlPackages.overrideScope (old: _: {
        janeStreet_0_9_0 = old.janeStreet_0_9_0 // {
          base = old.janeStreet_0_9_0.base.overrideAttrs (_: {
            meta.broken = true;
          });
        };
      });
    }

nix-repl> (import ./. {
  overlays = [ (import ./test-overlay.nix) ];
}).ocamlPackages.janeStreet_0_9_0.stdio

error: Package ‘ocaml4.10.0-base-0.9.4’ in /home/lukas/src/nix/nixpkgs/pkgs/development/ocaml-modules/janestreet/janePackage.nix:6 is marked as broken, refusing to evaluate.

a) To temporarily allow broken packages, you can use an environment variable
   for a single invocation of the nix tools.

     $ export NIXPKGS_ALLOW_BROKEN=1

b) For `nixos-rebuild` you can set
  { nixpkgs.config.allowBroken = true; }
in configuration.nix to override this.

c) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowBroken = true; }
to ~/.config/nixpkgs/config.nix.

* ocamlPackages.janeStreet: take part in fixpoint for OCaml >= 4.08

This change makes overrides to the janeStreet set work as expected by
making the janeStreet set take part in the ocamlPackages fixpoint for
janeStreet 0.14, i. e. OCaml >= 4.08

* ocamlPackages.janeStreet: take part in fixpoint for OCaml == 4.07

This change makes overrides to the janeStreet set work as expected by
making the janeStreet set take part in the ocamlPackages fixpoint for
janeStreet 0.12, i. e. OCaml == 4.07

* ocamlPackages.janeStreet: take part in fixpoint for OCaml < 4.07

This change makes overrides to the janeStreet set work as expected by
making the janeStreet set take part in the ocamlPackages fixpoint for
janeStreet 0.11, i. e. OCaml < 4.07

* ocamlPackages.janeStreet: remove self - super distinction

Previously, we inherited non-janestreet ocaml dependencies from super
and janestreet dependencies from self which always was super.janeStreet.

This behavior is however not really what we want due to liftJaneStreet:
Users and other packages will use ocamlPackages.base etc. instead of
ocamlPackages.janeStreet.base and the like. Consequently they also would
override the top-level attributes which would mean that other janestreet
packages would not pick up on it however.

As a consequence however, overriding ocamlPackages.janeStreet.base
doesn't work. Since this was never possible, I don't think this is an
issue. It is probably a good idea to deprecate that set anyways and
printing a warning when it is used via trace.

janeStreet_0_9_0 is unchanged as the disticniton between self and super
makes sense for it.

Below is an example showing how overriding would work from an user's
perspective:

test-overlay.nix:

    self: super: {
      ocamlPackages = super.ocamlPackages.overrideScope (old: _: {
        base = old.base.overrideAttrs (_: {
          meta.broken = true;
        });
      });
    }

nix-repl> (import ./. { overlays = [ (import ./test-overlay.nix) ]; }).ocamlPackages.
stdio
error: Package ‘ocaml4.10.0-base-0.14.0’ in /home/lukas/src/nix/nixpkgs/pkgs/development/ocaml-modules/janestreet/janePackage_0_14.nix:12 is marked as broken, refusing to evaluate.

a) To temporarily allow broken packages, you can use an environment variable
   for a single invocation of the nix tools.

     $ export NIXPKGS_ALLOW_BROKEN=1

b) For `nixos-rebuild` you can set
  { nixpkgs.config.allowBroken = true; }
in configuration.nix to override this.

c) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowBroken = true; }
to ~/.config/nixpkgs/config.nix.
2021-04-11 12:26:10 +02:00
Vincent Laporte 0062afc050 ocamlPackages.printbox: 0.4 → 0.5 2021-04-11 10:10:38 +02:00
sternenseemann f0ceaf880e ocamlPackages.mirage-crypto*: 0.9.1 -> 0.9.2
https://github.com/mirage/mirage-crypto/releases/tag/v0.9.2
2021-04-09 14:23:12 +02:00
sternenseemann 4462a1f678 ocamlPackages.irmin*: 2.5.1 -> 2.5.2
https://github.com/mirage/irmin/releases/tag/2.5.2
2021-04-09 07:57:04 +02:00
Vincent Laporte cf42b2eb0f ocamlPackages.sqlite3: use Dune 2 2021-04-07 21:27:13 +02:00
Vincent Laporte cc6d25b0d3 ocamlPackages.merlin-extend: use Dune 2 2021-04-07 20:34:26 +02:00
Vincent Laporte 55ddc94d92 ocamlPackages.ocamlnet: 4.1.8 → 4.1.9 2021-04-07 20:32:28 +02:00
Vincent Laporte c86f67bfb9 ocamlPackages.minisat: 0.2 → 0.3 2021-04-06 08:43:38 +02:00
Vincent Laporte 026b9db487 ocamlPackages.opti: use Dune 2 2021-04-05 17:19:44 +02:00
Vincent Laporte 938741a71b ocamlPackages.parmap: use Dune 2 2021-04-05 16:50:15 +02:00
Vincent Laporte 3eb054abd8 ocamlPackages.gnuplot: use Dune 2 2021-04-05 15:14:40 +02:00
sternenseemann 83eb1fe06d ocamlPackages.pbkdf: init at 1.1.0
Necessary for the upcoming x509 0.12.0 release.
2021-04-05 15:09:05 +02:00
sternenseemann 60fa97197d ocamlPackages.mirage-crypto: 0.9.0 -> 0.9.1 2021-04-05 14:59:36 +02:00
sternenseemann 4350ede15e ocamlPackages.mimic: 0.0.1 -> 0.0.2
https://github.com/mirage/ocaml-git/releases/tag/mimic-v0.0.2
2021-04-05 14:27:57 +02:00
sternenseemann 2f368c2060 ocamlPackages.decompress-1-2: remove at 1.2.0
With imagelib updated there remains no user of this in nixpkgs.
2021-04-02 15:03:44 +02:00
sternenseemann a6425a6008 ocamlPackages.imagelib: 20200929 -> 20210402
Allows us to get rid of decompress 1.2.0:

https://github.com/rlepigre/ocaml-imagelib/releases/tag/20210402
2021-04-02 15:03:44 +02:00
Vincent Laporte 170bad5b0a ocamlPackages.gsl: use Dune 2 2021-04-02 14:12:12 +02:00
Vincent Laporte 9ac5c7df17 ocamlPackages.gettext-camomile: init at 0.4.2 2021-04-02 09:13:44 +02:00
Vincent Laporte ef0e64ec60 ocamlPackages.sosa: remove spurious dependency on nonstd 2021-04-02 09:01:22 +02:00
sternenseemann 77ffcfa47a ocamlPackages.mirage-crypto*: 0.8.10 -> 0.9.0
ocamlPackages.mirage-crypto: allow compiling with ocaml-freestanding

ocamlPackages.mirage-crypto-ec: init at 0.9.0

https://github.com/mirage/mirage-crypto/releases/tag/v0.9.0
2021-04-01 22:14:30 +02:00
sternenseemann 83820fe6db ocamlPackages.mirage-clock-freestanding: init at 3.1.0 2021-04-01 16:10:15 +02:00
Vincent Laporte 94837b564d ocamlPackages.crowbar: use Dune 2 2021-04-01 09:37:32 +02:00
Vincent Laporte 595363a38f ocamlPackages.dtoa: use Dune 2 2021-04-01 09:08:13 +02:00
Vincent Laporte dc68bad367 ocamlPackages.cpu: use Dune 2 2021-04-01 08:49:17 +02:00
Vincent Laporte 6373ef78c6 ocamlPackages.parany: use Dune 2 2021-04-01 08:46:19 +02:00
Vincent Laporte 086ae4a06d ocamlPackages.bigstring: 0.2 → 0.3 2021-04-01 08:33:08 +02:00
Vincent Laporte d99c24d00a ocamlPackages.hidapi: use Dune 2 2021-04-01 08:33:08 +02:00
sternenseemann 7c9de65429 ocamlPackages.tcpip: 6.0.0 -> 6.1.0
https://github.com/mirage/mirage-tcpip/releases/tag/v6.1.0
2021-03-30 08:57:29 +02:00
sternenseemann 3ec81e0849 ocaml-freestanding: propagate solo5
solo5's bindings and ocaml-freestanding are both statically linked and
thus packages depending on ocaml-freestanding need the solo5 bindings as
well.
2021-03-30 08:57:29 +02:00
Vincent Laporte 1b21d00de8 ocamlPackages.spacetime_lib: use Dune 2 2021-03-30 08:32:05 +02:00
Vincent Laporte 25a75128d3 ocamlPackages.spelll: use Dune 2 2021-03-29 22:05:45 +02:00
Vincent Laporte 768bbabf0c ocamlPackages.cpuid: use Dune 2 2021-03-28 22:29:40 +02:00
Vincent Laporte 43846a5834 ocamlPackages.wtf8: use Dune 2 2021-03-28 22:05:32 +02:00
Vincent Laporte cf86741d99 ocamlPackages.ocaml-version: use Dune 2 2021-03-28 17:47:05 +02:00
sternenseemann b2eb2c8b4f Revert "ocamlPackages.tcpip: 6.0.0 -> 6.1.0"
This reverts commit 988f5a5910.

The release process for many OCaml packages and in extension mirage
related packages usually entails creating a release in the respective
own repository so a release tarball becomes available and then opening a
PR against ocaml/opam-repository to finalize the release. During this
new issues can be discovered which push the release back.

This happened for mirage-tcpip 6.1.0 several times:
https://github.com/ocaml/opam-repository/pull/18357
Prompting in total 3 different 6.1.0 releases with different hashes
respectively (the hash for ocamlPackages.tcpip.src shouldn't be
reproducible anymore, but we probably have cached the tarball already).
Ultimately the PR to opam-repository was closed to investigate some
failures on opam-repository's CI and the release postponed:
https://github.com/ocaml/opam-repository/pull/18357#issuecomment-808434285

I jumped the gun with the release and updated tcpip in nixpkgs before
tcpip was “properly” released in opam. I usually watch the github
repository of package I maintain for releases and can react pretty
quickly to a release as a result. Most of the time I also check
opam-repository's PRs nowadays for extra context or information, but
when everything seems fine and tests succeed I deem the update alright
to PR to nixpkgs. Being faster than opam was achievable in these cases
and actually seems kind of tantalizing.

In the light of this experience however, we should wait for the opam
PR getting merged at least for some packages that exhibit this behavior
of rereleasing the same version number multiple times to get the release
just right (afaik the 6.1.0 tag pointed to three different revisions for
tcpip). To me this is questionable upstream behavior we just have to deal
with in some way.
2021-03-27 14:33:49 +01:00
sternenseemann 13a8519b4b ocamlPackages.ocaml-freestanding: init at 0.6.4
Contains vendored in patches from https://github.com/mirage/ocaml-freestanding/pull/93
to make building within nixpkgs simpler. These serve as a makeshift
solution until ocaml-freestanding is released with its overhauled dune
based build system which will also support cross compiling. Upstream has
indicated that they are interested in making it work well with nix as
well.
2021-03-26 12:24:42 +01:00