ocamlPackages.oui: init at 0-unstable-2025-10-08 (#451607)
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
{
|
||||
lib,
|
||||
buildDunePackage,
|
||||
fetchFromGitHub,
|
||||
ounit2,
|
||||
}:
|
||||
|
||||
buildDunePackage (finalAttrs: {
|
||||
pname = "0install-solver";
|
||||
version = "2.18";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "0install";
|
||||
repo = "0install";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-CxADWMYZBPobs65jeyMQjqu3zmm2PgtNgI/jUsYUp8I=";
|
||||
};
|
||||
|
||||
doCheck = true;
|
||||
checkInputs = [
|
||||
ounit2
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "Package dependency solver";
|
||||
license = lib.licenses.lgpl21;
|
||||
maintainers = [ lib.maintainers.stepbrobd ];
|
||||
homepage = "https://0install.net";
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,50 @@
|
||||
{
|
||||
lib,
|
||||
buildDunePackage,
|
||||
fetchFromGitHub,
|
||||
_0install-solver,
|
||||
alcotest,
|
||||
cudf,
|
||||
}:
|
||||
|
||||
buildDunePackage (finalAttrs: {
|
||||
pname = "opam-0install-cudf";
|
||||
version = "0.5.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ocaml-opam";
|
||||
repo = "opam-0install-cudf";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-TETfvR1Di4c8CylsKnMal/GfQcqMSr36o7511u1bYYs=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
cudf
|
||||
_0install-solver
|
||||
];
|
||||
|
||||
doCheck = true;
|
||||
checkInputs = [
|
||||
alcotest
|
||||
];
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/ocaml-opam/opam-0install-cudf";
|
||||
description = "Opam solver using 0install backend using the CUDF interface";
|
||||
longDescription = ''
|
||||
Opam's default solver is designed to maintain a set of packages
|
||||
over time, minimising disruption when installing new programs and
|
||||
finding a compromise solution across all packages.
|
||||
|
||||
In many situations (e.g. CI, local roots or duniverse builds) this
|
||||
is not necessary, and we can get a solution much faster by using
|
||||
a different algorithm.
|
||||
|
||||
This package provides a generic solver library which uses 0install's
|
||||
solver library. The library uses the CUDF library in order to interface
|
||||
with opam as it is the format common used to talk to all the supported solvers.
|
||||
'';
|
||||
license = lib.licenses.isc;
|
||||
maintainers = [ lib.maintainers.stepbrobd ];
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,33 @@
|
||||
{
|
||||
lib,
|
||||
buildDunePackage,
|
||||
base64,
|
||||
cmdliner,
|
||||
opam,
|
||||
opam-repository,
|
||||
opam-solver,
|
||||
opam-state,
|
||||
re,
|
||||
}:
|
||||
|
||||
buildDunePackage {
|
||||
pname = "opam-client";
|
||||
|
||||
inherit (opam) src version;
|
||||
|
||||
configureFlags = [ "--disable-checks" ];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
base64
|
||||
cmdliner
|
||||
opam-repository
|
||||
opam-solver
|
||||
opam-state
|
||||
re
|
||||
];
|
||||
|
||||
meta = opam.meta // {
|
||||
description = "Actions on the opam root, switches, installations, and front-end";
|
||||
maintainers = with lib.maintainers; [ stepbrobd ];
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
{
|
||||
lib,
|
||||
buildDunePackage,
|
||||
cudf,
|
||||
dose3,
|
||||
mccs,
|
||||
opam,
|
||||
opam-0install-cudf,
|
||||
opam-format,
|
||||
re,
|
||||
z3,
|
||||
}:
|
||||
|
||||
buildDunePackage {
|
||||
pname = "opam-solver";
|
||||
|
||||
inherit (opam) src version;
|
||||
|
||||
configureFlags = [ "--disable-checks" ];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
cudf
|
||||
dose3
|
||||
mccs
|
||||
opam-0install-cudf
|
||||
opam-format
|
||||
re
|
||||
z3
|
||||
];
|
||||
|
||||
meta = opam.meta // {
|
||||
description = "This library is based on the Cudf and Dose libraries, and handles calls to the external solver from opam";
|
||||
maintainers = with lib.maintainers; [ stepbrobd ];
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,60 @@
|
||||
{
|
||||
lib,
|
||||
buildDunePackage,
|
||||
fetchFromGitHub,
|
||||
cmdliner,
|
||||
fmt,
|
||||
markup,
|
||||
ocaml-crunch,
|
||||
opam-client,
|
||||
opam-format,
|
||||
ppx_deriving_yojson,
|
||||
ppx_expect,
|
||||
yojson,
|
||||
}:
|
||||
|
||||
buildDunePackage (finalAttrs: {
|
||||
pname = "oui";
|
||||
version = "0-unstable-2025-10-08";
|
||||
|
||||
minimalOCamlVersion = "4.10";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "OCamlPro";
|
||||
repo = "ocaml-universal-installer";
|
||||
rev = "2fe2e33c3f8e1744fdd4dab04458043451bf9f62";
|
||||
hash = "sha256-ALQIQ3Ab1Gs2xST9OwsO5IxixzgKlUg7uHZvfHMbv7Q=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml-crunch
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
cmdliner
|
||||
fmt
|
||||
markup
|
||||
opam-client
|
||||
opam-format
|
||||
ppx_deriving_yojson
|
||||
yojson
|
||||
];
|
||||
|
||||
# upstream tests are matching full library paths
|
||||
doCheck = false;
|
||||
checkInputs = [
|
||||
ppx_expect
|
||||
];
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/OCamlPro/ocaml-universal-installer";
|
||||
description = "A tool that builds standalone installers for your OCaml applications";
|
||||
longDescription = ''
|
||||
oui is a command-line tool that generates standalone installers for
|
||||
Linux, Windows and macOS from your OCaml and non OCaml binaries.
|
||||
'';
|
||||
license = lib.licenses.lgpl21;
|
||||
maintainers = [ lib.maintainers.stepbrobd ];
|
||||
mainProgram = "opam-oui";
|
||||
};
|
||||
})
|
||||
@@ -1580,16 +1580,22 @@ let
|
||||
|
||||
omd = callPackage ../development/ocaml-modules/omd { };
|
||||
|
||||
opam-0install-cudf = callPackage ../development/ocaml-modules/opam-0install-cudf { };
|
||||
|
||||
opam-core = callPackage ../development/ocaml-modules/opam-core {
|
||||
inherit (pkgs) opam;
|
||||
};
|
||||
|
||||
opam-client = callPackage ../development/ocaml-modules/opam-client { };
|
||||
|
||||
opam-file-format = callPackage ../development/ocaml-modules/opam-file-format { };
|
||||
|
||||
opam-format = callPackage ../development/ocaml-modules/opam-format { };
|
||||
|
||||
opam-repository = callPackage ../development/ocaml-modules/opam-repository { };
|
||||
|
||||
opam-solver = callPackage ../development/ocaml-modules/opam-solver { };
|
||||
|
||||
opam-state = callPackage ../development/ocaml-modules/opam-state { };
|
||||
|
||||
opium = callPackage ../development/ocaml-modules/opium { };
|
||||
@@ -1614,6 +1620,8 @@ let
|
||||
|
||||
otr = callPackage ../development/ocaml-modules/otr { };
|
||||
|
||||
oui = callPackage ../development/ocaml-modules/oui { };
|
||||
|
||||
ounit = callPackage ../development/ocaml-modules/ounit { };
|
||||
|
||||
ounit2 = callPackage ../development/ocaml-modules/ounit2 { };
|
||||
@@ -2219,6 +2227,10 @@ let
|
||||
|
||||
zmq-lwt = callPackage ../development/ocaml-modules/zmq/lwt.nix { };
|
||||
|
||||
### _ ###
|
||||
|
||||
_0install-solver = callPackage ../development/ocaml-modules/0install-solver { };
|
||||
|
||||
### Exceptional packages kept out of order ###
|
||||
|
||||
# Libs
|
||||
|
||||
Reference in New Issue
Block a user