Merge pull request #241493 from Julow/ocaml-odig-init
odig: Init at 0.0.9
This commit is contained in:
commit
0f74397fee
5 changed files with 107 additions and 0 deletions
28
pkgs/build-support/ocaml/topkg.nix
Normal file
28
pkgs/build-support/ocaml/topkg.nix
Normal file
|
@ -0,0 +1,28 @@
|
|||
{ lib, stdenv, fetchurl, ocaml, findlib, topkg, ocamlbuild, cmdliner, odoc, b0
|
||||
}:
|
||||
|
||||
{ pname, version, nativeBuildInputs ? [ ], buildInputs ? [ ], ... }@args:
|
||||
|
||||
lib.throwIf (args ? minimalOCamlVersion
|
||||
&& lib.versionOlder ocaml.version args.minimalOCamlVersion)
|
||||
"${pname}-${version} is not available for OCaml ${ocaml.version}"
|
||||
|
||||
stdenv.mkDerivation ({
|
||||
|
||||
dontAddStaticConfigureFlags = true;
|
||||
configurePlatforms = [ ];
|
||||
strictDeps = true;
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
} // (builtins.removeAttrs args [ "minimalOCamlVersion" ]) // {
|
||||
|
||||
name = "ocaml${ocaml.version}-${pname}-${version}";
|
||||
|
||||
nativeBuildInputs = [ ocaml findlib ocamlbuild topkg ] ++ nativeBuildInputs;
|
||||
buildInputs = [ topkg ] ++ buildInputs;
|
||||
|
||||
meta = (args.meta or { }) // {
|
||||
platforms = args.meta.platforms or ocaml.meta.platforms;
|
||||
};
|
||||
|
||||
})
|
46
pkgs/development/ocaml-modules/b0/default.nix
Normal file
46
pkgs/development/ocaml-modules/b0/default.nix
Normal file
|
@ -0,0 +1,46 @@
|
|||
{ lib, stdenv, fetchurl, ocaml, findlib, topkg, ocamlbuild, cmdliner }:
|
||||
|
||||
let
|
||||
|
||||
in lib.throwIfNot (lib.versionAtLeast ocaml.version "4.08")
|
||||
"b0 is not available for OCaml ${ocaml.version}"
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
pname = "ocaml${ocaml.version}-b0";
|
||||
version = "0.0.5";
|
||||
|
||||
src = fetchurl {
|
||||
url = "${meta.homepage}/releases/b0-${version}.tbz";
|
||||
sha256 = "sha256-ty04JQcP4RCme/VQw0ko2IBebWWX5cBU6nRTTeV1I/I=";
|
||||
};
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
nativeBuildInputs = [ ocaml findlib ocamlbuild topkg ];
|
||||
buildInputs = [ topkg cmdliner ];
|
||||
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Software construction and deployment kit";
|
||||
longDescription = ''
|
||||
WARNING this package is unstable and work in progress, do not depend on
|
||||
it.
|
||||
B0 describes software construction and deployments using modular and
|
||||
customizable definitions written in OCaml. B0 describes:
|
||||
* Build environments.
|
||||
* Software configuration, build and testing.
|
||||
* Source and binary deployments.
|
||||
* Software life-cycle procedures.
|
||||
B0 also provides the B00 build library which provides abitrary build
|
||||
abstraction with reliable and efficient incremental rebuilds. The B00
|
||||
library can be – and has been – used on its own to devise domain specific
|
||||
build systems.
|
||||
'';
|
||||
homepage = "https://erratique.ch/software/b0";
|
||||
inherit (ocaml.meta) platforms;
|
||||
license = licenses.isc;
|
||||
maintainers = [ maintainers.Julow ];
|
||||
};
|
||||
}
|
25
pkgs/development/ocaml-modules/odig/default.nix
Normal file
25
pkgs/development/ocaml-modules/odig/default.nix
Normal file
|
@ -0,0 +1,25 @@
|
|||
{ lib, stdenv, fetchurl, buildTopkgPackage, cmdliner, odoc, b0 }:
|
||||
|
||||
buildTopkgPackage rec {
|
||||
pname = "odig";
|
||||
version = "0.0.9";
|
||||
|
||||
src = fetchurl {
|
||||
url = "${meta.homepage}/releases/odig-${version}.tbz";
|
||||
sha256 = "sha256-sYKvGYkxeF5FmrNQdOyMAtlsJqhlmUESi9SkPn/cjM4=";
|
||||
};
|
||||
|
||||
buildInputs = [ cmdliner odoc b0 ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Lookup documentation of installed OCaml packages";
|
||||
longDescription = ''
|
||||
odig is a command line tool to lookup documentation of installed OCaml
|
||||
packages. It shows package metadata, readmes, change logs, licenses,
|
||||
cross-referenced `odoc` API documentation and manuals.
|
||||
'';
|
||||
homepage = "https://erratique.ch/software/odig";
|
||||
license = licenses.isc;
|
||||
maintainers = [ maintainers.Julow ];
|
||||
};
|
||||
}
|
|
@ -16865,6 +16865,8 @@ with pkgs;
|
|||
ocamlformat_0_22_4 ocamlformat_0_23_0 ocamlformat_0_24_1 ocamlformat_0_25_1
|
||||
ocamlformat_0_26_0;
|
||||
|
||||
inherit (ocamlPackages) odig;
|
||||
|
||||
orc = callPackage ../development/compilers/orc { };
|
||||
|
||||
orocos-kdl = callPackage ../development/libraries/orocos-kdl { };
|
||||
|
|
|
@ -60,6 +60,8 @@ let
|
|||
|
||||
### B ###
|
||||
|
||||
b0 = callPackage ../development/ocaml-modules/b0 { };
|
||||
|
||||
bap = janeStreet_0_15.bap;
|
||||
|
||||
base64 = callPackage ../development/ocaml-modules/base64 { };
|
||||
|
@ -1330,6 +1332,8 @@ let
|
|||
|
||||
odate = callPackage ../development/ocaml-modules/odate { };
|
||||
|
||||
odig = callPackage ../development/ocaml-modules/odig { };
|
||||
|
||||
odoc = callPackage ../development/ocaml-modules/odoc { };
|
||||
|
||||
odoc-parser = callPackage ../development/ocaml-modules/odoc-parser { };
|
||||
|
@ -1888,6 +1892,8 @@ let
|
|||
|
||||
buildOasisPackage = callPackage ../build-support/ocaml/oasis.nix { };
|
||||
|
||||
buildTopkgPackage = callPackage ../build-support/ocaml/topkg.nix { };
|
||||
|
||||
# Apps from all-packages, to be eventually removed
|
||||
|
||||
google-drive-ocamlfuse = callPackage ../applications/networking/google-drive-ocamlfuse { };
|
||||
|
|
Loading…
Reference in a new issue