···176 '';
177 type = types.listOf overlayType;
178 description = lib.mdDoc ''
179- List of overlays to use with the Nix Packages collection.
180- (For details, see the Nixpkgs documentation.) It allows
181- you to override packages globally. Each function in the list
182- takes as an argument the *original* Nixpkgs.
183- The first argument should be used for finding dependencies, and
184- the second should be used for overriding recipes.
185186- If `nixpkgs.pkgs` is set, overlays specified here
187- will be applied after the overlays that were already present
188- in `nixpkgs.pkgs`.
189 '';
190 };
191
···176 '';
177 type = types.listOf overlayType;
178 description = lib.mdDoc ''
179+ List of overlays to apply to Nixpkgs.
180+ This option allows modifying the Nixpkgs package set accessed through the `pkgs` module argument.
0000181182+ For details, see the [Overlays chapter in the Nixpkgs manual](https://nixos.org/manual/nixpkgs/stable/#chap-overlays).
183+184+ If the {option}`nixpkgs.pkgs` option is set, overlays specified using `nixpkgs.overlays` will be applied after the overlays that were already included in `nixpkgs.pkgs`.
185 '';
186 };
187
···1+{ lib, stdenv, fetchurl, ocaml, findlib, topkg, ocamlbuild, cmdliner }:
2+3+let
4+5+in lib.throwIfNot (lib.versionAtLeast ocaml.version "4.08")
6+"b0 is not available for OCaml ${ocaml.version}"
7+8+stdenv.mkDerivation rec {
9+10+ pname = "ocaml${ocaml.version}-b0";
11+ version = "0.0.5";
12+13+ src = fetchurl {
14+ url = "${meta.homepage}/releases/b0-${version}.tbz";
15+ sha256 = "sha256-ty04JQcP4RCme/VQw0ko2IBebWWX5cBU6nRTTeV1I/I=";
16+ };
17+18+ strictDeps = true;
19+20+ nativeBuildInputs = [ ocaml findlib ocamlbuild topkg ];
21+ buildInputs = [ topkg cmdliner ];
22+23+ inherit (topkg) buildPhase installPhase;
24+25+ meta = with lib; {
26+ description = "Software construction and deployment kit";
27+ longDescription = ''
28+ WARNING this package is unstable and work in progress, do not depend on
29+ it.
30+ B0 describes software construction and deployments using modular and
31+ customizable definitions written in OCaml. B0 describes:
32+ * Build environments.
33+ * Software configuration, build and testing.
34+ * Source and binary deployments.
35+ * Software life-cycle procedures.
36+ B0 also provides the B00 build library which provides abitrary build
37+ abstraction with reliable and efficient incremental rebuilds. The B00
38+ library can be – and has been – used on its own to devise domain specific
39+ build systems.
40+ '';
41+ homepage = "https://erratique.ch/software/b0";
42+ inherit (ocaml.meta) platforms;
43+ license = licenses.isc;
44+ maintainers = [ maintainers.Julow ];
45+ };
46+}
+25
pkgs/development/ocaml-modules/odig/default.nix
···0000000000000000000000000
···1+{ lib, stdenv, fetchurl, buildTopkgPackage, cmdliner, odoc, b0 }:
2+3+buildTopkgPackage rec {
4+ pname = "odig";
5+ version = "0.0.9";
6+7+ src = fetchurl {
8+ url = "${meta.homepage}/releases/odig-${version}.tbz";
9+ sha256 = "sha256-sYKvGYkxeF5FmrNQdOyMAtlsJqhlmUESi9SkPn/cjM4=";
10+ };
11+12+ buildInputs = [ cmdliner odoc b0 ];
13+14+ meta = with lib; {
15+ description = "Lookup documentation of installed OCaml packages";
16+ longDescription = ''
17+ odig is a command line tool to lookup documentation of installed OCaml
18+ packages. It shows package metadata, readmes, change logs, licenses,
19+ cross-referenced `odoc` API documentation and manuals.
20+ '';
21+ homepage = "https://erratique.ch/software/odig";
22+ license = licenses.isc;
23+ maintainers = [ maintainers.Julow ];
24+ };
25+}