summaryrefslogtreecommitdiff
path: root/dev-ml
diff options
context:
space:
mode:
authorroot <root@alpha.trunkmasters.com>2026-06-12 19:09:37 -0500
committerroot <root@alpha.trunkmasters.com>2026-06-12 19:09:37 -0500
commitb590c8d7572b727d565cc0b8ff660d43569845de (patch)
tree06f7a4102ea4e845df8b66660f252920d52952f9 /dev-ml
parent24f9cbfc4c34fdb6a6e03311674414e881ceab47 (diff)
downloadbaldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.tar.gz
baldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.tar.xz
baldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.zip
Adding metadata
Diffstat (limited to 'dev-ml')
-rw-r--r--dev-ml/0install/0install-2.18-r1.ebuild38
-rw-r--r--dev-ml/0install/Manifest1
-rw-r--r--dev-ml/0install/metadata.xml17
-rw-r--r--dev-ml/ANSITerminal/ANSITerminal-0.8.5.ebuild15
-rw-r--r--dev-ml/ANSITerminal/Manifest1
-rw-r--r--dev-ml/ANSITerminal/metadata.xml12
-rw-r--r--dev-ml/alcotest/Manifest3
-rw-r--r--dev-ml/alcotest/alcotest-1.7.0-r1.ebuild45
-rw-r--r--dev-ml/alcotest/alcotest-1.8.0.ebuild38
-rw-r--r--dev-ml/alcotest/alcotest-1.9.0.ebuild38
-rw-r--r--dev-ml/alcotest/files/alcotest-1.7.0-time_float_unix.patch49
-rw-r--r--dev-ml/alcotest/metadata.xml13
-rw-r--r--dev-ml/angstrom/Manifest1
-rw-r--r--dev-ml/angstrom/angstrom-0.16.1.ebuild24
-rw-r--r--dev-ml/angstrom/metadata.xml9
-rw-r--r--dev-ml/astring/Manifest1
-rw-r--r--dev-ml/astring/astring-0.8.5.ebuild24
-rw-r--r--dev-ml/astring/metadata.xml12
-rw-r--r--dev-ml/async/Manifest2
-rw-r--r--dev-ml/async/async-0.16.0.ebuild34
-rw-r--r--dev-ml/async/async-0.17.0.ebuild34
-rw-r--r--dev-ml/async/metadata.xml9
-rw-r--r--dev-ml/async_kernel/Manifest2
-rw-r--r--dev-ml/async_kernel/async_kernel-0.16.0.ebuild23
-rw-r--r--dev-ml/async_kernel/async_kernel-0.17.0.ebuild24
-rw-r--r--dev-ml/async_kernel/metadata.xml9
-rw-r--r--dev-ml/async_log/Manifest1
-rw-r--r--dev-ml/async_log/async_log-0.17.0.ebuild28
-rw-r--r--dev-ml/async_log/metadata.xml9
-rw-r--r--dev-ml/async_rpc_kernel/Manifest2
-rw-r--r--dev-ml/async_rpc_kernel/async_rpc_kernel-0.16.0.ebuild23
-rw-r--r--dev-ml/async_rpc_kernel/async_rpc_kernel-0.17.0.ebuild27
-rw-r--r--dev-ml/async_rpc_kernel/metadata.xml9
-rw-r--r--dev-ml/async_unix/Manifest2
-rw-r--r--dev-ml/async_unix/async_unix-0.16.0.ebuild25
-rw-r--r--dev-ml/async_unix/async_unix-0.17.0.ebuild28
-rw-r--r--dev-ml/async_unix/metadata.xml9
-rw-r--r--dev-ml/atd/Manifest2
-rw-r--r--dev-ml/atd/atd-2.15.0.ebuild40
-rw-r--r--dev-ml/atd/atd-2.16.0-r1.ebuild53
-rw-r--r--dev-ml/atd/metadata.xml17
-rw-r--r--dev-ml/base/Manifest2
-rw-r--r--dev-ml/base/base-0.16.3-r1.ebuild22
-rw-r--r--dev-ml/base/base-0.17.3.ebuild27
-rw-r--r--dev-ml/base/metadata.xml9
-rw-r--r--dev-ml/base_bigstring/Manifest2
-rw-r--r--dev-ml/base_bigstring/base_bigstring-0.16.0.ebuild22
-rw-r--r--dev-ml/base_bigstring/base_bigstring-0.17.0-r1.ebuild27
-rw-r--r--dev-ml/base_bigstring/metadata.xml9
-rw-r--r--dev-ml/base_quickcheck/Manifest3
-rw-r--r--dev-ml/base_quickcheck/base_quickcheck-0.16.0.ebuild36
-rw-r--r--dev-ml/base_quickcheck/base_quickcheck-0.17.0-r2.ebuild34
-rw-r--r--dev-ml/base_quickcheck/base_quickcheck-0.17.1.ebuild44
-rw-r--r--dev-ml/base_quickcheck/metadata.xml9
-rw-r--r--dev-ml/batteries/Manifest2
-rw-r--r--dev-ml/batteries/batteries-3.10.0.ebuild24
-rw-r--r--dev-ml/batteries/batteries-3.9.0.ebuild24
-rw-r--r--dev-ml/batteries/metadata.xml9
-rw-r--r--dev-ml/bigarray-compat/Manifest2
-rw-r--r--dev-ml/bigarray-compat/bigarray-compat-1.0.0.ebuild15
-rw-r--r--dev-ml/bigarray-compat/bigarray-compat-1.1.0.ebuild15
-rw-r--r--dev-ml/bigarray-compat/metadata.xml9
-rw-r--r--dev-ml/bigstringaf/Manifest1
-rw-r--r--dev-ml/bigstringaf/bigstringaf-0.10.0.ebuild21
-rw-r--r--dev-ml/bigstringaf/metadata.xml9
-rw-r--r--dev-ml/bin_prot/Manifest2
-rw-r--r--dev-ml/bin_prot/bin_prot-0.16.0.ebuild30
-rw-r--r--dev-ml/bin_prot/bin_prot-0.17.0-r1.ebuild33
-rw-r--r--dev-ml/bin_prot/metadata.xml9
-rw-r--r--dev-ml/biniou/Manifest1
-rw-r--r--dev-ml/biniou/biniou-1.2.2-r1.ebuild22
-rw-r--r--dev-ml/biniou/metadata.xml16
-rw-r--r--dev-ml/bos/Manifest1
-rw-r--r--dev-ml/bos/bos-0.2.1.ebuild44
-rw-r--r--dev-ml/bos/metadata.xml9
-rw-r--r--dev-ml/cairo2/Manifest2
-rw-r--r--dev-ml/cairo2/cairo2-0.6.4.ebuild35
-rw-r--r--dev-ml/cairo2/cairo2-0.6.5.ebuild34
-rw-r--r--dev-ml/cairo2/files/cairo2-0.6.1-ignore-gtk-and-pango.patch82
-rw-r--r--dev-ml/cairo2/metadata.xml9
-rw-r--r--dev-ml/calendar/Manifest1
-rw-r--r--dev-ml/calendar/calendar-2.04-r1.ebuild37
-rw-r--r--dev-ml/calendar/metadata.xml5
-rw-r--r--dev-ml/calendars/Manifest2
-rw-r--r--dev-ml/calendars/calendars-1.0.0.ebuild19
-rw-r--r--dev-ml/calendars/calendars-2.0.0.ebuild18
-rw-r--r--dev-ml/calendars/metadata.xml9
-rw-r--r--dev-ml/camlbz2/Manifest1
-rw-r--r--dev-ml/camlbz2/camlbz2-0.8.0-r1.ebuild20
-rw-r--r--dev-ml/camlbz2/metadata.xml9
-rw-r--r--dev-ml/camldbm/Manifest1
-rw-r--r--dev-ml/camldbm/camldbm-1.2-r1.ebuild37
-rw-r--r--dev-ml/camldbm/metadata.xml9
-rw-r--r--dev-ml/camlidl/Manifest2
-rw-r--r--dev-ml/camlidl/camlidl-1.12.ebuild67
-rw-r--r--dev-ml/camlidl/camlidl-1.13.ebuild66
-rw-r--r--dev-ml/camlidl/files/META.camlidl5
-rw-r--r--dev-ml/camlidl/files/camlidl-1.12-destdir.patch32
-rw-r--r--dev-ml/camlidl/files/nowarn.patch11
-rw-r--r--dev-ml/camlidl/metadata.xml9
-rw-r--r--dev-ml/camlp-streams/Manifest1
-rw-r--r--dev-ml/camlp-streams/camlp-streams-5.0.1.ebuild17
-rw-r--r--dev-ml/camlp-streams/metadata.xml9
-rw-r--r--dev-ml/camlp4/Manifest3
-rw-r--r--dev-ml/camlp4/camlp4-4.14_p1-r2.ebuild55
-rw-r--r--dev-ml/camlp4/camlp4-5.3_p1.ebuild58
-rw-r--r--dev-ml/camlp4/camlp4-5.4_p1.ebuild58
-rw-r--r--dev-ml/camlp4/files/reload.patch13
-rw-r--r--dev-ml/camlp4/metadata.xml9
-rw-r--r--dev-ml/camlp5/Manifest3
-rw-r--r--dev-ml/camlp5/camlp5-8.03.01-r1.ebuild70
-rw-r--r--dev-ml/camlp5/camlp5-8.03.06-r1.ebuild71
-rw-r--r--dev-ml/camlp5/camlp5-8.04.00.ebuild71
-rw-r--r--dev-ml/camlp5/metadata.xml9
-rw-r--r--dev-ml/camlpdf/Manifest2
-rw-r--r--dev-ml/camlpdf/camlpdf-2.7.1.ebuild36
-rw-r--r--dev-ml/camlpdf/camlpdf-2.8.1.ebuild36
-rw-r--r--dev-ml/camlpdf/metadata.xml13
-rw-r--r--dev-ml/camlzip/Manifest2
-rw-r--r--dev-ml/camlzip/camlzip-1.13.ebuild42
-rw-r--r--dev-ml/camlzip/camlzip-1.14.ebuild45
-rw-r--r--dev-ml/camlzip/metadata.xml9
-rw-r--r--dev-ml/camomile/Manifest2
-rw-r--r--dev-ml/camomile/camomile-1.0.2.ebuild26
-rw-r--r--dev-ml/camomile/camomile-2.0.0.ebuild25
-rw-r--r--dev-ml/camomile/metadata.xml9
-rw-r--r--dev-ml/capitalization/Manifest1
-rw-r--r--dev-ml/capitalization/capitalization-0.17.0-r1.ebuild27
-rw-r--r--dev-ml/capitalization/metadata.xml9
-rw-r--r--dev-ml/charinfo_width/Manifest2
-rw-r--r--dev-ml/charinfo_width/charinfo_width-1.1.0-r1.ebuild26
-rw-r--r--dev-ml/charinfo_width/charinfo_width-2.0.0.ebuild26
-rw-r--r--dev-ml/charinfo_width/metadata.xml12
-rw-r--r--dev-ml/cinaps/Manifest1
-rw-r--r--dev-ml/cinaps/cinaps-0.15.1-r2.ebuild22
-rw-r--r--dev-ml/cinaps/files/cinaps-0.15.1-test.patch13
-rw-r--r--dev-ml/cinaps/metadata.xml9
-rw-r--r--dev-ml/cmdliner/Manifest3
-rw-r--r--dev-ml/cmdliner/cmdliner-1.3.0.ebuild41
-rw-r--r--dev-ml/cmdliner/cmdliner-2.0.0.ebuild41
-rw-r--r--dev-ml/cmdliner/cmdliner-2.1.0.ebuild41
-rw-r--r--dev-ml/cmdliner/metadata.xml9
-rw-r--r--dev-ml/coq-menhirlib/Manifest1
-rw-r--r--dev-ml/coq-menhirlib/coq-menhirlib-20240715.ebuild44
-rw-r--r--dev-ml/coq-menhirlib/metadata.xml9
-rw-r--r--dev-ml/core/Manifest2
-rw-r--r--dev-ml/core/core-0.16.1.ebuild43
-rw-r--r--dev-ml/core/core-0.17.1-r1.ebuild46
-rw-r--r--dev-ml/core/metadata.xml18
-rw-r--r--dev-ml/core_bench/Manifest2
-rw-r--r--dev-ml/core_bench/core_bench-0.16.0.ebuild27
-rw-r--r--dev-ml/core_bench/core_bench-0.17.0.ebuild34
-rw-r--r--dev-ml/core_bench/metadata.xml9
-rw-r--r--dev-ml/core_extended/Manifest1
-rw-r--r--dev-ml/core_extended/core_extended-0.17.0.ebuild27
-rw-r--r--dev-ml/core_extended/metadata.xml9
-rw-r--r--dev-ml/core_kernel/Manifest2
-rw-r--r--dev-ml/core_kernel/core_kernel-0.16.0.ebuild58
-rw-r--r--dev-ml/core_kernel/core_kernel-0.17.0-r1.ebuild33
-rw-r--r--dev-ml/core_kernel/metadata.xml17
-rw-r--r--dev-ml/core_unix/Manifest3
-rw-r--r--dev-ml/core_unix/core_unix-0.16.0-r1.ebuild38
-rw-r--r--dev-ml/core_unix/core_unix-0.17.0.ebuild46
-rw-r--r--dev-ml/core_unix/core_unix-0.17.1.ebuild47
-rw-r--r--dev-ml/core_unix/files/core_unix-0.16.0-musl.patch23
-rw-r--r--dev-ml/core_unix/files/core_unix-0.17.0-atomic.patch33
-rw-r--r--dev-ml/core_unix/files/core_unix-0.17.0-musl.patch12
-rw-r--r--dev-ml/core_unix/files/core_unix-0.17.1-riscv.patch16
-rw-r--r--dev-ml/core_unix/metadata.xml9
-rw-r--r--dev-ml/cppo/Manifest5
-rw-r--r--dev-ml/cppo/cppo-1.6.7-r1.ebuild19
-rw-r--r--dev-ml/cppo/cppo-1.6.8-r1.ebuild19
-rw-r--r--dev-ml/cppo/cppo-1.6.9-r1.ebuild19
-rw-r--r--dev-ml/cppo/cppo-1.7.0.ebuild19
-rw-r--r--dev-ml/cppo/cppo-1.8.0.ebuild19
-rw-r--r--dev-ml/cppo/metadata.xml9
-rw-r--r--dev-ml/cryptokit/Manifest4
-rw-r--r--dev-ml/cryptokit/cryptokit-1.16.1-r2.ebuild63
-rw-r--r--dev-ml/cryptokit/cryptokit-1.19.ebuild63
-rw-r--r--dev-ml/cryptokit/cryptokit-1.20.1.ebuild63
-rw-r--r--dev-ml/cryptokit/cryptokit-1.21.1.ebuild60
-rw-r--r--dev-ml/cryptokit/metadata.xml9
-rw-r--r--dev-ml/csexp/Manifest1
-rw-r--r--dev-ml/csexp/csexp-1.5.2-r1.ebuild23
-rw-r--r--dev-ml/csexp/metadata.xml9
-rw-r--r--dev-ml/cstruct/Manifest1
-rw-r--r--dev-ml/cstruct/cstruct-6.2.0-r1.ebuild30
-rw-r--r--dev-ml/cstruct/metadata.xml9
-rw-r--r--dev-ml/cudf/Manifest1
-rw-r--r--dev-ml/cudf/cudf-0.10-r1.ebuild99
-rw-r--r--dev-ml/cudf/metadata.xml9
-rw-r--r--dev-ml/curses/Manifest2
-rw-r--r--dev-ml/curses/curses-1.0.10.ebuild19
-rw-r--r--dev-ml/curses/curses-1.0.11.ebuild18
-rw-r--r--dev-ml/curses/files/curses-1.0.10-CC.patch11
-rw-r--r--dev-ml/curses/metadata.xml9
-rw-r--r--dev-ml/delimited_parsing/Manifest1
-rw-r--r--dev-ml/delimited_parsing/delimited_parsing-0.17.0.ebuild25
-rw-r--r--dev-ml/delimited_parsing/metadata.xml9
-rw-r--r--dev-ml/dose3/Manifest1
-rw-r--r--dev-ml/dose3/dose3-7.0.0-r2.ebuild42
-rw-r--r--dev-ml/dose3/metadata.xml13
-rw-r--r--dev-ml/dune-build-info/Manifest5
-rw-r--r--dev-ml/dune-build-info/dune-build-info-3.16.0.ebuild28
-rw-r--r--dev-ml/dune-build-info/dune-build-info-3.18.1.ebuild28
-rw-r--r--dev-ml/dune-build-info/dune-build-info-3.19.1-r1.ebuild28
-rw-r--r--dev-ml/dune-build-info/dune-build-info-3.20.2.ebuild28
-rw-r--r--dev-ml/dune-build-info/dune-build-info-3.21.1.ebuild28
-rw-r--r--dev-ml/dune-build-info/metadata.xml12
-rw-r--r--dev-ml/dune-configurator/Manifest7
-rw-r--r--dev-ml/dune-configurator/dune-configurator-3.16.0-r1.ebuild39
-rw-r--r--dev-ml/dune-configurator/dune-configurator-3.16.1.ebuild39
-rw-r--r--dev-ml/dune-configurator/dune-configurator-3.17.1.ebuild39
-rw-r--r--dev-ml/dune-configurator/dune-configurator-3.18.1.ebuild39
-rw-r--r--dev-ml/dune-configurator/dune-configurator-3.19.1-r1.ebuild39
-rw-r--r--dev-ml/dune-configurator/dune-configurator-3.20.2.ebuild39
-rw-r--r--dev-ml/dune-configurator/dune-configurator-3.21.1.ebuild31
-rw-r--r--dev-ml/dune-configurator/metadata.xml9
-rw-r--r--dev-ml/dune-private-libs/Manifest3
-rw-r--r--dev-ml/dune-private-libs/dune-private-libs-3.16.0-r4.ebuild40
-rw-r--r--dev-ml/dune-private-libs/dune-private-libs-3.18.1.ebuild40
-rw-r--r--dev-ml/dune-private-libs/dune-private-libs-3.19.0-r1.ebuild40
-rw-r--r--dev-ml/dune-private-libs/metadata.xml9
-rw-r--r--dev-ml/dune-site/Manifest6
-rw-r--r--dev-ml/dune-site/dune-site-3.16.0.ebuild32
-rw-r--r--dev-ml/dune-site/dune-site-3.16.1.ebuild40
-rw-r--r--dev-ml/dune-site/dune-site-3.18.1.ebuild40
-rw-r--r--dev-ml/dune-site/dune-site-3.19.1-r1.ebuild40
-rw-r--r--dev-ml/dune-site/dune-site-3.20.2.ebuild40
-rw-r--r--dev-ml/dune-site/dune-site-3.21.1-r1.ebuild41
-rw-r--r--dev-ml/dune-site/metadata.xml12
-rw-r--r--dev-ml/dune/Manifest6
-rw-r--r--dev-ml/dune/dune-3.16.1.ebuild70
-rw-r--r--dev-ml/dune/dune-3.17.2.ebuild70
-rw-r--r--dev-ml/dune/dune-3.18.1.ebuild70
-rw-r--r--dev-ml/dune/dune-3.19.1.ebuild70
-rw-r--r--dev-ml/dune/dune-3.20.2.ebuild70
-rw-r--r--dev-ml/dune/dune-3.21.1-r2.ebuild70
-rw-r--r--dev-ml/dune/files/50dune-gentoo.el4
-rw-r--r--dev-ml/dune/metadata.xml9
-rw-r--r--dev-ml/duration/Manifest3
-rw-r--r--dev-ml/duration/duration-0.1.3.ebuild18
-rw-r--r--dev-ml/duration/duration-0.2.1.ebuild19
-rw-r--r--dev-ml/duration/duration-0.3.1.ebuild29
-rw-r--r--dev-ml/duration/metadata.xml9
-rw-r--r--dev-ml/easy-format/Manifest2
-rw-r--r--dev-ml/easy-format/easy-format-1.2.0-r1.ebuild32
-rw-r--r--dev-ml/easy-format/easy-format-1.3.4.ebuild15
-rw-r--r--dev-ml/easy-format/metadata.xml9
-rw-r--r--dev-ml/expect_test_helpers_core/Manifest2
-rw-r--r--dev-ml/expect_test_helpers_core/expect_test_helpers_core-0.16.0.ebuild27
-rw-r--r--dev-ml/expect_test_helpers_core/expect_test_helpers_core-0.17.0-r1.ebuild32
-rw-r--r--dev-ml/expect_test_helpers_core/metadata.xml9
-rw-r--r--dev-ml/extlib/Manifest2
-rw-r--r--dev-ml/extlib/extlib-1.7.9-r1.ebuild49
-rw-r--r--dev-ml/extlib/extlib-1.8.0.ebuild46
-rw-r--r--dev-ml/extlib/metadata.xml9
-rw-r--r--dev-ml/facile/Manifest1
-rw-r--r--dev-ml/facile/facile-1.1.4.ebuild30
-rw-r--r--dev-ml/facile/files/facile-1.1.4-dune.patch41
-rw-r--r--dev-ml/facile/metadata.xml13
-rw-r--r--dev-ml/fieldslib/Manifest3
-rw-r--r--dev-ml/fieldslib/fieldslib-0.15.0.ebuild21
-rw-r--r--dev-ml/fieldslib/fieldslib-0.16.0.ebuild22
-rw-r--r--dev-ml/fieldslib/fieldslib-0.17.0-r1.ebuild25
-rw-r--r--dev-ml/fieldslib/metadata.xml15
-rw-r--r--dev-ml/findlib/Manifest2
-rw-r--r--dev-ml/findlib/findlib-1.9.6-r1.ebuild85
-rw-r--r--dev-ml/findlib/findlib-1.9.8-r1.ebuild94
-rw-r--r--dev-ml/findlib/findlib-1.9.8.ebuild90
-rw-r--r--dev-ml/findlib/metadata.xml9
-rw-r--r--dev-ml/fix/Manifest4
-rw-r--r--dev-ml/fix/fix-20220121.ebuild16
-rw-r--r--dev-ml/fix/fix-20230505.ebuild16
-rw-r--r--dev-ml/fix/fix-20250428.ebuild16
-rw-r--r--dev-ml/fix/fix-20250919.ebuild16
-rw-r--r--dev-ml/fix/metadata.xml12
-rw-r--r--dev-ml/fmt/Manifest2
-rw-r--r--dev-ml/fmt/fmt-0.11.0.ebuild33
-rw-r--r--dev-ml/fmt/fmt-0.9.0.ebuild37
-rw-r--r--dev-ml/fmt/metadata.xml9
-rw-r--r--dev-ml/fpath/Manifest1
-rw-r--r--dev-ml/fpath/fpath-0.7.3.ebuild26
-rw-r--r--dev-ml/fpath/metadata.xml9
-rw-r--r--dev-ml/gapi-ocaml/Manifest2
-rw-r--r--dev-ml/gapi-ocaml/gapi-ocaml-0.4.6.ebuild34
-rw-r--r--dev-ml/gapi-ocaml/gapi-ocaml-0.4.7.ebuild33
-rw-r--r--dev-ml/gapi-ocaml/metadata.xml24
-rw-r--r--dev-ml/gel/Manifest1
-rw-r--r--dev-ml/gel/gel-0.17.0-r1.ebuild26
-rw-r--r--dev-ml/gel/metadata.xml9
-rw-r--r--dev-ml/gen/Manifest1
-rw-r--r--dev-ml/gen/gen-1.1.ebuild28
-rw-r--r--dev-ml/gen/metadata.xml12
-rw-r--r--dev-ml/graphics/Manifest2
-rw-r--r--dev-ml/graphics/graphics-5.1.2-r1.ebuild21
-rw-r--r--dev-ml/graphics/graphics-5.2.0-r1.ebuild23
-rw-r--r--dev-ml/graphics/metadata.xml9
-rw-r--r--dev-ml/gsl-ocaml/Manifest2
-rw-r--r--dev-ml/gsl-ocaml/gsl-ocaml-1.24.3-r2.ebuild26
-rw-r--r--dev-ml/gsl-ocaml/gsl-ocaml-1.25.1.ebuild25
-rw-r--r--dev-ml/gsl-ocaml/metadata.xml9
-rw-r--r--dev-ml/hmap/Manifest1
-rw-r--r--dev-ml/hmap/hmap-0.8.1.ebuild24
-rw-r--r--dev-ml/hmap/metadata.xml9
-rw-r--r--dev-ml/int_repr/Manifest2
-rw-r--r--dev-ml/int_repr/int_repr-0.16.0.ebuild23
-rw-r--r--dev-ml/int_repr/int_repr-0.17.0-r1.ebuild27
-rw-r--r--dev-ml/int_repr/metadata.xml9
-rw-r--r--dev-ml/integers/Manifest1
-rw-r--r--dev-ml/integers/integers-0.7.0.ebuild20
-rw-r--r--dev-ml/integers/metadata.xml9
-rw-r--r--dev-ml/iostream/Manifest1
-rw-r--r--dev-ml/iostream/iostream-0.3.ebuild20
-rw-r--r--dev-ml/iostream/metadata.xml9
-rw-r--r--dev-ml/jane-street-headers/Manifest2
-rw-r--r--dev-ml/jane-street-headers/jane-street-headers-0.16.0.ebuild18
-rw-r--r--dev-ml/jane-street-headers/jane-street-headers-0.17.0.ebuild19
-rw-r--r--dev-ml/jane-street-headers/metadata.xml9
-rw-r--r--dev-ml/jingoo/Manifest3
-rw-r--r--dev-ml/jingoo/files/jingoo-1.5.2-tests.patch10
-rw-r--r--dev-ml/jingoo/jingoo-1.5.0.ebuild27
-rw-r--r--dev-ml/jingoo/jingoo-1.5.1.ebuild27
-rw-r--r--dev-ml/jingoo/jingoo-1.5.2.ebuild35
-rw-r--r--dev-ml/jingoo/metadata.xml9
-rw-r--r--dev-ml/jsonm/Manifest1
-rw-r--r--dev-ml/jsonm/jsonm-1.0.2.ebuild38
-rw-r--r--dev-ml/jsonm/metadata.xml9
-rw-r--r--dev-ml/jst-config/Manifest2
-rw-r--r--dev-ml/jst-config/jst-config-0.16.0.ebuild28
-rw-r--r--dev-ml/jst-config/jst-config-0.17.0-r1.ebuild27
-rw-r--r--dev-ml/jst-config/metadata.xml9
-rw-r--r--dev-ml/lablgl/Manifest2
-rw-r--r--dev-ml/lablgl/files/lablgl-1.06-makefile.patch12
-rw-r--r--dev-ml/lablgl/lablgl-1.06-r2.ebuild97
-rw-r--r--dev-ml/lablgl/lablgl-1.07-r1.ebuild103
-rw-r--r--dev-ml/lablgl/metadata.xml5
-rw-r--r--dev-ml/lablgtk-sourceview/Manifest1
-rw-r--r--dev-ml/lablgtk-sourceview/lablgtk-sourceview-3.1.5.ebuild30
-rw-r--r--dev-ml/lablgtk-sourceview/metadata.xml9
-rw-r--r--dev-ml/lablgtk/Manifest1
-rw-r--r--dev-ml/lablgtk/lablgtk-3.1.5-r2.ebuild31
-rw-r--r--dev-ml/lablgtk/metadata.xml14
-rw-r--r--dev-ml/labltk/Manifest2
-rw-r--r--dev-ml/labltk/files/findlib.patch20
-rw-r--r--dev-ml/labltk/files/labltk-8.06.12-c2x.patch47
-rw-r--r--dev-ml/labltk/files/labltk-8.06.12-c99.patch11
-rw-r--r--dev-ml/labltk/files/labltk-8.06.12-shuffle.patch46
-rw-r--r--dev-ml/labltk/files/labltk-8.06.14-findlib.patch13
-rw-r--r--dev-ml/labltk/files/labltk-8.06.14-shuffle.patch31
-rw-r--r--dev-ml/labltk/files/labltk-8.06.9-configure-clang16.patch50
-rw-r--r--dev-ml/labltk/labltk-8.06.12-r2.ebuild58
-rw-r--r--dev-ml/labltk/labltk-8.06.15-r1.ebuild55
-rw-r--r--dev-ml/labltk/metadata.xml9
-rw-r--r--dev-ml/lambda-term/Manifest3
-rw-r--r--dev-ml/lambda-term/lambda-term-3.3.2.ebuild26
-rw-r--r--dev-ml/lambda-term/lambda-term-3.3.3.ebuild26
-rw-r--r--dev-ml/lambda-term/lambda-term-3.4.0.ebuild26
-rw-r--r--dev-ml/lambda-term/metadata.xml21
-rw-r--r--dev-ml/libvirt-ocaml/Manifest1
-rw-r--r--dev-ml/libvirt-ocaml/libvirt-ocaml-0.6.1.7.ebuild33
-rw-r--r--dev-ml/libvirt-ocaml/metadata.xml13
-rw-r--r--dev-ml/llvm/Manifest17
-rw-r--r--dev-ml/llvm/llvm-16.0.6.ebuild111
-rw-r--r--dev-ml/llvm/llvm-17.0.6.ebuild111
-rw-r--r--dev-ml/llvm/llvm-18.1.8.ebuild108
-rw-r--r--dev-ml/llvm/llvm-19.1.7.ebuild108
-rw-r--r--dev-ml/llvm/llvm-20.1.8.ebuild108
-rw-r--r--dev-ml/llvm/llvm-21.1.8.ebuild108
-rw-r--r--dev-ml/llvm/llvm-22.1.6.ebuild108
-rw-r--r--dev-ml/llvm/llvm-22.1.7.ebuild108
-rw-r--r--dev-ml/llvm/llvm-23.0.0.9999.ebuild107
-rw-r--r--dev-ml/llvm/llvm-23.0.0_pre20260512.ebuild107
-rw-r--r--dev-ml/llvm/metadata.xml8
-rw-r--r--dev-ml/logs/Manifest4
-rw-r--r--dev-ml/logs/logs-0.10.0.ebuild52
-rw-r--r--dev-ml/logs/logs-0.7.0-r1.ebuild68
-rw-r--r--dev-ml/logs/logs-0.8.0.ebuild68
-rw-r--r--dev-ml/logs/logs-0.9.0.ebuild68
-rw-r--r--dev-ml/logs/metadata.xml14
-rw-r--r--dev-ml/luv/Manifest2
-rw-r--r--dev-ml/luv/luv-0.5.11-r2.ebuild37
-rw-r--r--dev-ml/luv/luv-0.5.14-r1.ebuild44
-rw-r--r--dev-ml/luv/metadata.xml9
-rw-r--r--dev-ml/lwt/Manifest4
-rw-r--r--dev-ml/lwt/files/lwt-5.9.1-ppxlib.patch36
-rw-r--r--dev-ml/lwt/lwt-5.7.0.ebuild59
-rw-r--r--dev-ml/lwt/lwt-5.9.0.ebuild59
-rw-r--r--dev-ml/lwt/lwt-5.9.1-r1.ebuild63
-rw-r--r--dev-ml/lwt/lwt-5.9.2.ebuild56
-rw-r--r--dev-ml/lwt/metadata.xml9
-rw-r--r--dev-ml/lwt_log/Manifest2
-rw-r--r--dev-ml/lwt_log/lwt_log-1.1.1-r1.ebuild18
-rw-r--r--dev-ml/lwt_log/lwt_log-1.1.2.ebuild19
-rw-r--r--dev-ml/lwt_log/metadata.xml12
-rw-r--r--dev-ml/lwt_ssl/Manifest2
-rw-r--r--dev-ml/lwt_ssl/lwt_ssl-1.1.3.ebuild23
-rw-r--r--dev-ml/lwt_ssl/lwt_ssl-1.2.0.ebuild23
-rw-r--r--dev-ml/lwt_ssl/metadata.xml9
-rw-r--r--dev-ml/markup/Manifest1
-rw-r--r--dev-ml/markup/markup-1.0.3.ebuild26
-rw-r--r--dev-ml/markup/metadata.xml9
-rw-r--r--dev-ml/mccs/Manifest2
-rw-r--r--dev-ml/mccs/mccs-1.1.18-r1.ebuild25
-rw-r--r--dev-ml/mccs/mccs-1.1.19.ebuild25
-rw-r--r--dev-ml/mccs/metadata.xml9
-rw-r--r--dev-ml/memtrace/Manifest1
-rw-r--r--dev-ml/memtrace/memtrace-0.2.3.ebuild25
-rw-r--r--dev-ml/memtrace/metadata.xml12
-rw-r--r--dev-ml/menhir/Manifest2
-rw-r--r--dev-ml/menhir/menhir-20240715.ebuild21
-rw-r--r--dev-ml/menhir/menhir-20250912.ebuild21
-rw-r--r--dev-ml/menhir/metadata.xml9
-rw-r--r--dev-ml/merlin-extend/Manifest3
-rw-r--r--dev-ml/merlin-extend/merlin-extend-0.6-r1.ebuild19
-rw-r--r--dev-ml/merlin-extend/merlin-extend-0.6.1.ebuild22
-rw-r--r--dev-ml/merlin-extend/merlin-extend-0.6.2.ebuild22
-rw-r--r--dev-ml/merlin-extend/metadata.xml9
-rw-r--r--dev-ml/merlin/Manifest3
-rw-r--r--dev-ml/merlin/files/50merlin-gentoo.el4
-rw-r--r--dev-ml/merlin/merlin-5.5.ebuild123
-rw-r--r--dev-ml/merlin/merlin-5.6.ebuild125
-rw-r--r--dev-ml/merlin/metadata.xml9
-rw-r--r--dev-ml/mew/Manifest1
-rw-r--r--dev-ml/mew/metadata.xml12
-rw-r--r--dev-ml/mew/mew-0.1.0-r1.ebuild23
-rw-r--r--dev-ml/mew_vi/Manifest1
-rw-r--r--dev-ml/mew_vi/metadata.xml12
-rw-r--r--dev-ml/mew_vi/mew_vi-0.5.0.ebuild21
-rw-r--r--dev-ml/mirage-clock/Manifest2
-rw-r--r--dev-ml/mirage-clock/metadata.xml9
-rw-r--r--dev-ml/mirage-clock/mirage-clock-3.1.0.ebuild17
-rw-r--r--dev-ml/mirage-clock/mirage-clock-4.2.0.ebuild22
-rw-r--r--dev-ml/mmap/Manifest1
-rw-r--r--dev-ml/mmap/metadata.xml9
-rw-r--r--dev-ml/mmap/mmap-1.2.0-r1.ebuild19
-rw-r--r--dev-ml/mtime/Manifest4
-rw-r--r--dev-ml/mtime/metadata.xml9
-rw-r--r--dev-ml/mtime/mtime-1.2.0.ebuild33
-rw-r--r--dev-ml/mtime/mtime-1.4.0.ebuild31
-rw-r--r--dev-ml/mtime/mtime-2.0.0.ebuild34
-rw-r--r--dev-ml/mtime/mtime-2.1.0.ebuild34
-rw-r--r--dev-ml/num/Manifest2
-rw-r--r--dev-ml/num/files/num-1.6-META-directory.patch10
-rw-r--r--dev-ml/num/files/num-1.6-META.patch14
-rw-r--r--dev-ml/num/metadata.xml9
-rw-r--r--dev-ml/num/num-1.5.ebuild50
-rw-r--r--dev-ml/num/num-1.6-r1.ebuild51
-rw-r--r--dev-ml/ocaml-augeas/Manifest2
-rw-r--r--dev-ml/ocaml-augeas/files/ocaml-augeas-0.6-flags.patch21
-rw-r--r--dev-ml/ocaml-augeas/files/ocaml-augeas-0.6-ocaml-4.09.patch28
-rw-r--r--dev-ml/ocaml-augeas/metadata.xml8
-rw-r--r--dev-ml/ocaml-augeas/ocaml-augeas-0.5.ebuild25
-rw-r--r--dev-ml/ocaml-augeas/ocaml-augeas-0.6-r2.ebuild44
-rw-r--r--dev-ml/ocaml-autoconf/Manifest1
-rw-r--r--dev-ml/ocaml-autoconf/metadata.xml5
-rw-r--r--dev-ml/ocaml-autoconf/ocaml-autoconf-1.1-r1.ebuild17
-rw-r--r--dev-ml/ocaml-base64/Manifest3
-rw-r--r--dev-ml/ocaml-base64/metadata.xml9
-rw-r--r--dev-ml/ocaml-base64/ocaml-base64-3.5.0.ebuild19
-rw-r--r--dev-ml/ocaml-base64/ocaml-base64-3.5.1.ebuild19
-rw-r--r--dev-ml/ocaml-base64/ocaml-base64-3.5.2.ebuild19
-rw-r--r--dev-ml/ocaml-compiler-libs/Manifest3
-rw-r--r--dev-ml/ocaml-compiler-libs/metadata.xml9
-rw-r--r--dev-ml/ocaml-compiler-libs/ocaml-compiler-libs-0.12.3-r2.ebuild17
-rw-r--r--dev-ml/ocaml-compiler-libs/ocaml-compiler-libs-0.12.4-r2.ebuild17
-rw-r--r--dev-ml/ocaml-compiler-libs/ocaml-compiler-libs-0.17.0.ebuild21
-rw-r--r--dev-ml/ocaml-crunch/Manifest2
-rw-r--r--dev-ml/ocaml-crunch/metadata.xml9
-rw-r--r--dev-ml/ocaml-crunch/ocaml-crunch-3.3.1.ebuild24
-rw-r--r--dev-ml/ocaml-crunch/ocaml-crunch-4.0.0.ebuild24
-rw-r--r--dev-ml/ocaml-ctypes/Manifest2
-rw-r--r--dev-ml/ocaml-ctypes/metadata.xml9
-rw-r--r--dev-ml/ocaml-ctypes/ocaml-ctypes-0.23.0.ebuild31
-rw-r--r--dev-ml/ocaml-ctypes/ocaml-ctypes-0.24.0.ebuild35
-rw-r--r--dev-ml/ocaml-doc/Manifest1
-rw-r--r--dev-ml/ocaml-doc/metadata.xml5
-rw-r--r--dev-ml/ocaml-doc/ocaml-doc-4.05.ebuild22
-rw-r--r--dev-ml/ocaml-expat/Manifest1
-rw-r--r--dev-ml/ocaml-expat/files/ocaml-expat-1.1.0-cc.patch11
-rw-r--r--dev-ml/ocaml-expat/files/ounit2.patch17
-rw-r--r--dev-ml/ocaml-expat/metadata.xml9
-rw-r--r--dev-ml/ocaml-expat/ocaml-expat-1.3.0.ebuild55
-rw-r--r--dev-ml/ocaml-fileutils/Manifest3
-rw-r--r--dev-ml/ocaml-fileutils/files/ocaml-fileutils-0.6.4-dune.patch8
-rw-r--r--dev-ml/ocaml-fileutils/metadata.xml24
-rw-r--r--dev-ml/ocaml-fileutils/ocaml-fileutils-0.6.3-r1.ebuild32
-rw-r--r--dev-ml/ocaml-fileutils/ocaml-fileutils-0.6.4-r1.ebuild27
-rw-r--r--dev-ml/ocaml-fileutils/ocaml-fileutils-0.6.6.ebuild25
-rw-r--r--dev-ml/ocaml-gettext-camomile/Manifest1
-rw-r--r--dev-ml/ocaml-gettext-camomile/metadata.xml19
-rw-r--r--dev-ml/ocaml-gettext-camomile/ocaml-gettext-camomile-0.4.2-r1.ebuild44
-rw-r--r--dev-ml/ocaml-gettext-stub/Manifest2
-rw-r--r--dev-ml/ocaml-gettext-stub/metadata.xml19
-rw-r--r--dev-ml/ocaml-gettext-stub/ocaml-gettext-stub-0.4.2-r2.ebuild50
-rw-r--r--dev-ml/ocaml-gettext-stub/ocaml-gettext-stub-0.4.2.1.ebuild41
-rw-r--r--dev-ml/ocaml-gettext/Manifest2
-rw-r--r--dev-ml/ocaml-gettext/files/ocaml-gettext-ocaml-5.4.patch18
-rw-r--r--dev-ml/ocaml-gettext/metadata.xml19
-rw-r--r--dev-ml/ocaml-gettext/ocaml-gettext-0.4.2-r2.ebuild45
-rw-r--r--dev-ml/ocaml-gettext/ocaml-gettext-0.4.2.1.ebuild41
-rw-r--r--dev-ml/ocaml-hashcons/Manifest1
-rw-r--r--dev-ml/ocaml-hashcons/metadata.xml5
-rw-r--r--dev-ml/ocaml-hashcons/ocaml-hashcons-1.3.ebuild45
-rw-r--r--dev-ml/ocaml-inifiles/Manifest1
-rw-r--r--dev-ml/ocaml-inifiles/files/ocaml-inifiles-1.2-inifiles.ml.patch20
-rw-r--r--dev-ml/ocaml-inifiles/files/ocaml-inifiles-1.2-shuffle.patch8
-rw-r--r--dev-ml/ocaml-inifiles/metadata.xml9
-rw-r--r--dev-ml/ocaml-inifiles/ocaml-inifiles-1.2.ebuild33
-rw-r--r--dev-ml/ocaml-markdown/Manifest1
-rw-r--r--dev-ml/ocaml-markdown/metadata.xml12
-rw-r--r--dev-ml/ocaml-markdown/ocaml-markdown-0.2.1.ebuild46
-rw-r--r--dev-ml/ocaml-migrate-parsetree/Manifest4
-rw-r--r--dev-ml/ocaml-migrate-parsetree/metadata.xml9
-rw-r--r--dev-ml/ocaml-migrate-parsetree/ocaml-migrate-parsetree-2.1.0.ebuild18
-rw-r--r--dev-ml/ocaml-migrate-parsetree/ocaml-migrate-parsetree-2.2.0.ebuild19
-rw-r--r--dev-ml/ocaml-migrate-parsetree/ocaml-migrate-parsetree-2.3.0-r1.ebuild20
-rw-r--r--dev-ml/ocaml-migrate-parsetree/ocaml-migrate-parsetree-2.4.0-r1.ebuild21
-rw-r--r--dev-ml/ocaml-process/Manifest1
-rw-r--r--dev-ml/ocaml-process/metadata.xml12
-rw-r--r--dev-ml/ocaml-process/ocaml-process-0.2.1-r1.ebuild38
-rw-r--r--dev-ml/ocaml-sha/Manifest3
-rw-r--r--dev-ml/ocaml-sha/metadata.xml17
-rw-r--r--dev-ml/ocaml-sha/ocaml-sha-1.15.1.ebuild22
-rw-r--r--dev-ml/ocaml-sha/ocaml-sha-1.15.2.ebuild22
-rw-r--r--dev-ml/ocaml-sha/ocaml-sha-1.15.4.ebuild25
-rw-r--r--dev-ml/ocaml-sqlite3/Manifest1
-rw-r--r--dev-ml/ocaml-sqlite3/metadata.xml5
-rw-r--r--dev-ml/ocaml-sqlite3/ocaml-sqlite3-5.0.2.ebuild29
-rw-r--r--dev-ml/ocaml-ssl/Manifest2
-rw-r--r--dev-ml/ocaml-ssl/metadata.xml9
-rw-r--r--dev-ml/ocaml-ssl/ocaml-ssl-0.5.13-r1.ebuild31
-rw-r--r--dev-ml/ocaml-ssl/ocaml-ssl-0.7.0.ebuild45
-rw-r--r--dev-ml/ocaml-stdint/Manifest2
-rw-r--r--dev-ml/ocaml-stdint/metadata.xml23
-rw-r--r--dev-ml/ocaml-stdint/ocaml-stdint-0.7.0.ebuild18
-rw-r--r--dev-ml/ocaml-stdint/ocaml-stdint-0.7.2-r1.ebuild19
-rw-r--r--dev-ml/ocaml_intrinsics/Manifest1
-rw-r--r--dev-ml/ocaml_intrinsics/metadata.xml9
-rw-r--r--dev-ml/ocaml_intrinsics/ocaml_intrinsics-0.16.0.ebuild41
-rw-r--r--dev-ml/ocaml_intrinsics_kernel/Manifest1
-rw-r--r--dev-ml/ocaml_intrinsics_kernel/metadata.xml9
-rw-r--r--dev-ml/ocaml_intrinsics_kernel/ocaml_intrinsics_kernel-0.17.0.ebuild21
-rw-r--r--dev-ml/ocamlbuild/Manifest2
-rw-r--r--dev-ml/ocamlbuild/files/ocamlbuild-0.15.0-test.patch37
-rw-r--r--dev-ml/ocamlbuild/metadata.xml9
-rw-r--r--dev-ml/ocamlbuild/ocamlbuild-0.15.0.ebuild57
-rw-r--r--dev-ml/ocamlbuild/ocamlbuild-0.16.1.ebuild57
-rw-r--r--dev-ml/ocamlfuse/Manifest1
-rw-r--r--dev-ml/ocamlfuse/metadata.xml22
-rw-r--r--dev-ml/ocamlfuse/ocamlfuse-2.7.1_p11.ebuild37
-rw-r--r--dev-ml/ocamlgraph/Manifest2
-rw-r--r--dev-ml/ocamlgraph/metadata.xml9
-rw-r--r--dev-ml/ocamlgraph/ocamlgraph-2.1.0.ebuild22
-rw-r--r--dev-ml/ocamlgraph/ocamlgraph-2.2.0.ebuild21
-rw-r--r--dev-ml/ocamlnet/Manifest2
-rw-r--r--dev-ml/ocamlnet/files/ocamlnet-4.1.9-int_missing.patch20
-rw-r--r--dev-ml/ocamlnet/files/ocamlnet-4.1.9-noWhich.patch16
-rw-r--r--dev-ml/ocamlnet/files/ocamlnet-4.1.9-shuffle.patch11
-rw-r--r--dev-ml/ocamlnet/files/ocamlnet-4.1.9-unboundLexer.patch10
-rw-r--r--dev-ml/ocamlnet/metadata.xml13
-rw-r--r--dev-ml/ocamlnet/ocamlnet-4.1.8-r2.ebuild78
-rw-r--r--dev-ml/ocamlnet/ocamlnet-4.1.9-r2.ebuild93
-rw-r--r--dev-ml/ocamlsdl/Manifest1
-rw-r--r--dev-ml/ocamlsdl/files/ocamlsdl-0.9.1-fix-ocaml-4.09.0-compilation.patch28
-rw-r--r--dev-ml/ocamlsdl/files/ocamlsdl-0.9.1-ocamlopt.patch22
-rw-r--r--dev-ml/ocamlsdl/metadata.xml9
-rw-r--r--dev-ml/ocamlsdl/ocamlsdl-0.9.1-r1.ebuild71
-rw-r--r--dev-ml/ocamlweb/Manifest1
-rw-r--r--dev-ml/ocamlweb/files/ocamlweb-1.41-ocaml-4.08.0.patch53
-rw-r--r--dev-ml/ocamlweb/files/ocamlweb-1.41-strip.patch17
-rw-r--r--dev-ml/ocamlweb/metadata.xml9
-rw-r--r--dev-ml/ocamlweb/ocamlweb-1.41-r2.ebuild39
-rw-r--r--dev-ml/ocplib-endian/Manifest2
-rw-r--r--dev-ml/ocplib-endian/metadata.xml9
-rw-r--r--dev-ml/ocplib-endian/ocplib-endian-1.1-r1.ebuild20
-rw-r--r--dev-ml/ocplib-endian/ocplib-endian-1.2.ebuild20
-rw-r--r--dev-ml/ocplib-simplex/Manifest2
-rw-r--r--dev-ml/ocplib-simplex/files/ocplib-simplex-0.4-flags.patch48
-rw-r--r--dev-ml/ocplib-simplex/metadata.xml13
-rw-r--r--dev-ml/ocplib-simplex/ocplib-simplex-0.4.1.ebuild35
-rw-r--r--dev-ml/ocplib-simplex/ocplib-simplex-0.5.1.ebuild24
-rw-r--r--dev-ml/octavius/Manifest1
-rw-r--r--dev-ml/octavius/metadata.xml9
-rw-r--r--dev-ml/octavius/octavius-1.2.2.ebuild15
-rw-r--r--dev-ml/ocurl/Manifest2
-rw-r--r--dev-ml/ocurl/metadata.xml9
-rw-r--r--dev-ml/ocurl/ocurl-0.9.1-r1.ebuild34
-rw-r--r--dev-ml/ocurl/ocurl-0.9.2-r2.ebuild42
-rw-r--r--dev-ml/odoc/Manifest3
-rw-r--r--dev-ml/odoc/metadata.xml16
-rw-r--r--dev-ml/odoc/odoc-2.4.3-r1.ebuild37
-rw-r--r--dev-ml/odoc/odoc-2.4.4.ebuild36
-rw-r--r--dev-ml/odoc/odoc-3.1.0.ebuild36
-rw-r--r--dev-ml/opam-0install-cudf/Manifest1
-rw-r--r--dev-ml/opam-0install-cudf/metadata.xml21
-rw-r--r--dev-ml/opam-0install-cudf/opam-0install-cudf-0.5.0-r2.ebuild28
-rw-r--r--dev-ml/opam-common/Manifest4
-rw-r--r--dev-ml/opam-common/files/fix-dotinstall-escape.patch22
-rw-r--r--dev-ml/opam-common/metadata.xml9
-rw-r--r--dev-ml/opam-common/opam-common-2.2.1.ebuild44
-rw-r--r--dev-ml/opam-common/opam-common-2.3.0-r1.ebuild46
-rw-r--r--dev-ml/opam-common/opam-common-2.4.1.ebuild47
-rw-r--r--dev-ml/opam-common/opam-common-2.5.1.ebuild45
-rw-r--r--dev-ml/opam-file-format/Manifest4
-rw-r--r--dev-ml/opam-file-format/metadata.xml9
-rw-r--r--dev-ml/opam-file-format/opam-file-format-2.1.3.ebuild22
-rw-r--r--dev-ml/opam-file-format/opam-file-format-2.1.5.ebuild22
-rw-r--r--dev-ml/opam-file-format/opam-file-format-2.1.6.ebuild22
-rw-r--r--dev-ml/opam-file-format/opam-file-format-2.2.0-r1.ebuild24
-rw-r--r--dev-ml/opam-installer/Manifest5
-rw-r--r--dev-ml/opam-installer/metadata.xml9
-rw-r--r--dev-ml/opam-installer/opam-installer-2.1.6.ebuild41
-rw-r--r--dev-ml/opam-installer/opam-installer-2.2.1-r1.ebuild47
-rw-r--r--dev-ml/opam-installer/opam-installer-2.3.0.ebuild47
-rw-r--r--dev-ml/opam-installer/opam-installer-2.4.1.ebuild47
-rw-r--r--dev-ml/opam-installer/opam-installer-2.5.1.ebuild47
-rw-r--r--dev-ml/opam/Manifest5
-rw-r--r--dev-ml/opam/metadata.xml9
-rw-r--r--dev-ml/opam/opam-2.1.6-r1.ebuild54
-rw-r--r--dev-ml/opam/opam-2.2.1-r1.ebuild55
-rw-r--r--dev-ml/opam/opam-2.3.0.ebuild55
-rw-r--r--dev-ml/opam/opam-2.4.1.ebuild55
-rw-r--r--dev-ml/opam/opam-2.5.1.ebuild55
-rw-r--r--dev-ml/ounit2/Manifest2
-rw-r--r--dev-ml/ounit2/files/ounit2-2.2.6-dune.patch19
-rw-r--r--dev-ml/ounit2/files/ounit2-2.2.7-dune.patch19
-rw-r--r--dev-ml/ounit2/metadata.xml9
-rw-r--r--dev-ml/ounit2/ounit2-2.2.6.ebuild28
-rw-r--r--dev-ml/ounit2/ounit2-2.2.7-r1.ebuild29
-rw-r--r--dev-ml/parmap/Manifest1
-rw-r--r--dev-ml/parmap/metadata.xml9
-rw-r--r--dev-ml/parmap/parmap-1.2.5.ebuild19
-rw-r--r--dev-ml/parsexp/Manifest2
-rw-r--r--dev-ml/parsexp/metadata.xml9
-rw-r--r--dev-ml/parsexp/parsexp-0.16.0.ebuild18
-rw-r--r--dev-ml/parsexp/parsexp-0.17.0.ebuild22
-rw-r--r--dev-ml/patch/Manifest2
-rw-r--r--dev-ml/patch/metadata.xml12
-rw-r--r--dev-ml/patch/patch-3.0.1.ebuild31
-rw-r--r--dev-ml/patch/patch-3.1.0.ebuild23
-rw-r--r--dev-ml/patience_diff/Manifest2
-rw-r--r--dev-ml/patience_diff/metadata.xml9
-rw-r--r--dev-ml/patience_diff/patience_diff-0.16.0.ebuild23
-rw-r--r--dev-ml/patience_diff/patience_diff-0.17.0-r1.ebuild27
-rw-r--r--dev-ml/pcre-ocaml/Manifest2
-rw-r--r--dev-ml/pcre-ocaml/metadata.xml9
-rw-r--r--dev-ml/pcre-ocaml/pcre-ocaml-7.4.6-r2.ebuild29
-rw-r--r--dev-ml/pcre-ocaml/pcre-ocaml-7.5.0.ebuild30
-rw-r--r--dev-ml/pcre2-ocaml/Manifest1
-rw-r--r--dev-ml/pcre2-ocaml/metadata.xml9
-rw-r--r--dev-ml/pcre2-ocaml/pcre2-ocaml-8.0.3-r1.ebuild24
-rw-r--r--dev-ml/pp/Manifest1
-rw-r--r--dev-ml/pp/metadata.xml9
-rw-r--r--dev-ml/pp/pp-2.0.0.ebuild18
-rw-r--r--dev-ml/pprint/Manifest2
-rw-r--r--dev-ml/pprint/metadata.xml16
-rw-r--r--dev-ml/pprint/pprint-20220103.ebuild15
-rw-r--r--dev-ml/pprint/pprint-20230830.ebuild15
-rw-r--r--dev-ml/ppx_assert/Manifest2
-rw-r--r--dev-ml/ppx_assert/metadata.xml9
-rw-r--r--dev-ml/ppx_assert/ppx_assert-0.16.0.ebuild25
-rw-r--r--dev-ml/ppx_assert/ppx_assert-0.17.0-r1.ebuild30
-rw-r--r--dev-ml/ppx_base/Manifest2
-rw-r--r--dev-ml/ppx_base/metadata.xml9
-rw-r--r--dev-ml/ppx_base/ppx_base-0.16.0-r1.ebuild25
-rw-r--r--dev-ml/ppx_base/ppx_base-0.17.0.ebuild28
-rw-r--r--dev-ml/ppx_bench/Manifest3
-rw-r--r--dev-ml/ppx_bench/metadata.xml9
-rw-r--r--dev-ml/ppx_bench/ppx_bench-0.16.0.ebuild22
-rw-r--r--dev-ml/ppx_bench/ppx_bench-0.17.0-r1.ebuild27
-rw-r--r--dev-ml/ppx_bench/ppx_bench-0.17.1.ebuild26
-rw-r--r--dev-ml/ppx_bin_prot/Manifest3
-rw-r--r--dev-ml/ppx_bin_prot/metadata.xml9
-rw-r--r--dev-ml/ppx_bin_prot/ppx_bin_prot-0.16.0.ebuild27
-rw-r--r--dev-ml/ppx_bin_prot/ppx_bin_prot-0.17.0-r2.ebuild35
-rw-r--r--dev-ml/ppx_bin_prot/ppx_bin_prot-0.17.1.ebuild35
-rw-r--r--dev-ml/ppx_blob/Manifest3
-rw-r--r--dev-ml/ppx_blob/metadata.xml9
-rw-r--r--dev-ml/ppx_blob/ppx_blob-0.7.2.ebuild20
-rw-r--r--dev-ml/ppx_blob/ppx_blob-0.8.0.ebuild20
-rw-r--r--dev-ml/ppx_blob/ppx_blob-0.9.0.ebuild20
-rw-r--r--dev-ml/ppx_cold/Manifest2
-rw-r--r--dev-ml/ppx_cold/metadata.xml9
-rw-r--r--dev-ml/ppx_cold/ppx_cold-0.16.0.ebuild23
-rw-r--r--dev-ml/ppx_cold/ppx_cold-0.17.0-r1.ebuild26
-rw-r--r--dev-ml/ppx_compare/Manifest2
-rw-r--r--dev-ml/ppx_compare/metadata.xml9
-rw-r--r--dev-ml/ppx_compare/ppx_compare-0.16.0.ebuild27
-rw-r--r--dev-ml/ppx_compare/ppx_compare-0.17.0-r1.ebuild27
-rw-r--r--dev-ml/ppx_custom_printf/Manifest2
-rw-r--r--dev-ml/ppx_custom_printf/metadata.xml9
-rw-r--r--dev-ml/ppx_custom_printf/ppx_custom_printf-0.16.0.ebuild22
-rw-r--r--dev-ml/ppx_custom_printf/ppx_custom_printf-0.17.0-r1.ebuild27
-rw-r--r--dev-ml/ppx_derivers/Manifest1
-rw-r--r--dev-ml/ppx_derivers/metadata.xml9
-rw-r--r--dev-ml/ppx_derivers/ppx_derivers-1.2.1.ebuild15
-rw-r--r--dev-ml/ppx_deriving/Manifest4
-rw-r--r--dev-ml/ppx_deriving/metadata.xml9
-rw-r--r--dev-ml/ppx_deriving/ppx_deriving-5.2.1-r2.ebuild29
-rw-r--r--dev-ml/ppx_deriving/ppx_deriving-6.0.3-r1.ebuild26
-rw-r--r--dev-ml/ppx_deriving/ppx_deriving-6.1.0.ebuild25
-rw-r--r--dev-ml/ppx_deriving/ppx_deriving-6.1.1.ebuild25
-rw-r--r--dev-ml/ppx_deriving_yojson/Manifest2
-rw-r--r--dev-ml/ppx_deriving_yojson/metadata.xml12
-rw-r--r--dev-ml/ppx_deriving_yojson/ppx_deriving_yojson-3.10.0.ebuild45
-rw-r--r--dev-ml/ppx_deriving_yojson/ppx_deriving_yojson-3.9.0.ebuild24
-rw-r--r--dev-ml/ppx_diff/Manifest2
-rw-r--r--dev-ml/ppx_diff/metadata.xml9
-rw-r--r--dev-ml/ppx_diff/ppx_diff-0.17.0-r2.ebuild32
-rw-r--r--dev-ml/ppx_diff/ppx_diff-0.17.1.ebuild31
-rw-r--r--dev-ml/ppx_disable_unused_warnings/Manifest2
-rw-r--r--dev-ml/ppx_disable_unused_warnings/metadata.xml9
-rw-r--r--dev-ml/ppx_disable_unused_warnings/ppx_disable_unused_warnings-0.16.0.ebuild21
-rw-r--r--dev-ml/ppx_disable_unused_warnings/ppx_disable_unused_warnings-0.17.0-r1.ebuild27
-rw-r--r--dev-ml/ppx_enumerate/Manifest2
-rw-r--r--dev-ml/ppx_enumerate/metadata.xml9
-rw-r--r--dev-ml/ppx_enumerate/ppx_enumerate-0.16.0.ebuild23
-rw-r--r--dev-ml/ppx_enumerate/ppx_enumerate-0.17.0-r1.ebuild27
-rw-r--r--dev-ml/ppx_expect/Manifest3
-rw-r--r--dev-ml/ppx_expect/metadata.xml9
-rw-r--r--dev-ml/ppx_expect/ppx_expect-0.16.0.ebuild27
-rw-r--r--dev-ml/ppx_expect/ppx_expect-0.17.2-r2.ebuild33
-rw-r--r--dev-ml/ppx_expect/ppx_expect-0.17.3.ebuild32
-rw-r--r--dev-ml/ppx_fields_conv/Manifest2
-rw-r--r--dev-ml/ppx_fields_conv/metadata.xml9
-rw-r--r--dev-ml/ppx_fields_conv/ppx_fields_conv-0.16.0.ebuild23
-rw-r--r--dev-ml/ppx_fields_conv/ppx_fields_conv-0.17.0-r1.ebuild27
-rw-r--r--dev-ml/ppx_fixed_literal/Manifest2
-rw-r--r--dev-ml/ppx_fixed_literal/metadata.xml9
-rw-r--r--dev-ml/ppx_fixed_literal/ppx_fixed_literal-0.16.0.ebuild23
-rw-r--r--dev-ml/ppx_fixed_literal/ppx_fixed_literal-0.17.0-r1.ebuild26
-rw-r--r--dev-ml/ppx_globalize/Manifest3
-rw-r--r--dev-ml/ppx_globalize/metadata.xml9
-rw-r--r--dev-ml/ppx_globalize/ppx_globalize-0.16.0.ebuild23
-rw-r--r--dev-ml/ppx_globalize/ppx_globalize-0.17.0-r2.ebuild29
-rw-r--r--dev-ml/ppx_globalize/ppx_globalize-0.17.2.ebuild28
-rw-r--r--dev-ml/ppx_hash/Manifest2
-rw-r--r--dev-ml/ppx_hash/metadata.xml9
-rw-r--r--dev-ml/ppx_hash/ppx_hash-0.16.0.ebuild22
-rw-r--r--dev-ml/ppx_hash/ppx_hash-0.17.0-r1.ebuild30
-rw-r--r--dev-ml/ppx_here/Manifest2
-rw-r--r--dev-ml/ppx_here/metadata.xml9
-rw-r--r--dev-ml/ppx_here/ppx_here-0.16.0.ebuild27
-rw-r--r--dev-ml/ppx_here/ppx_here-0.17.0-r1.ebuild29
-rw-r--r--dev-ml/ppx_ignore_instrumentation/Manifest3
-rw-r--r--dev-ml/ppx_ignore_instrumentation/metadata.xml9
-rw-r--r--dev-ml/ppx_ignore_instrumentation/ppx_ignore_instrumentation-0.15.0-r1.ebuild19
-rw-r--r--dev-ml/ppx_ignore_instrumentation/ppx_ignore_instrumentation-0.16.0.ebuild19
-rw-r--r--dev-ml/ppx_ignore_instrumentation/ppx_ignore_instrumentation-0.17.0.ebuild20
-rw-r--r--dev-ml/ppx_import/Manifest4
-rw-r--r--dev-ml/ppx_import/files/ppx_import-dune-ounit2.patch9
-rw-r--r--dev-ml/ppx_import/metadata.xml13
-rw-r--r--dev-ml/ppx_import/ppx_import-1.10.0-r1.ebuild33
-rw-r--r--dev-ml/ppx_import/ppx_import-1.11.0-r1.ebuild32
-rw-r--r--dev-ml/ppx_import/ppx_import-1.12.0.ebuild31
-rw-r--r--dev-ml/ppx_import/ppx_import-1.9.1-r2.ebuild33
-rw-r--r--dev-ml/ppx_inline_test/Manifest3
-rw-r--r--dev-ml/ppx_inline_test/metadata.xml9
-rw-r--r--dev-ml/ppx_inline_test/ppx_inline_test-0.16.0.ebuild27
-rw-r--r--dev-ml/ppx_inline_test/ppx_inline_test-0.17.0-r2.ebuild30
-rw-r--r--dev-ml/ppx_inline_test/ppx_inline_test-0.17.1.ebuild29
-rw-r--r--dev-ml/ppx_jane/Manifest2
-rw-r--r--dev-ml/ppx_jane/metadata.xml9
-rw-r--r--dev-ml/ppx_jane/ppx_jane-0.16.0-r1.ebuild40
-rw-r--r--dev-ml/ppx_jane/ppx_jane-0.17.0.ebuild49
-rw-r--r--dev-ml/ppx_js_style/Manifest3
-rw-r--r--dev-ml/ppx_js_style/metadata.xml9
-rw-r--r--dev-ml/ppx_js_style/ppx_js_style-0.16.0-r1.ebuild29
-rw-r--r--dev-ml/ppx_js_style/ppx_js_style-0.17.0-r2.ebuild28
-rw-r--r--dev-ml/ppx_js_style/ppx_js_style-0.17.1.ebuild26
-rw-r--r--dev-ml/ppx_let/Manifest3
-rw-r--r--dev-ml/ppx_let/metadata.xml9
-rw-r--r--dev-ml/ppx_let/ppx_let-0.16.0-r1.ebuild28
-rw-r--r--dev-ml/ppx_let/ppx_let-0.17.0-r2.ebuild28
-rw-r--r--dev-ml/ppx_let/ppx_let-0.17.1.ebuild27
-rw-r--r--dev-ml/ppx_log/Manifest2
-rw-r--r--dev-ml/ppx_log/metadata.xml9
-rw-r--r--dev-ml/ppx_log/ppx_log-0.16.0.ebuild25
-rw-r--r--dev-ml/ppx_log/ppx_log-0.17.0-r1.ebuild41
-rw-r--r--dev-ml/ppx_module_timer/Manifest2
-rw-r--r--dev-ml/ppx_module_timer/metadata.xml9
-rw-r--r--dev-ml/ppx_module_timer/ppx_module_timer-0.16.0.ebuild23
-rw-r--r--dev-ml/ppx_module_timer/ppx_module_timer-0.17.0-r1.ebuild30
-rw-r--r--dev-ml/ppx_optcomp/Manifest3
-rw-r--r--dev-ml/ppx_optcomp/metadata.xml9
-rw-r--r--dev-ml/ppx_optcomp/ppx_optcomp-0.16.0.ebuild24
-rw-r--r--dev-ml/ppx_optcomp/ppx_optcomp-0.17.0-r2.ebuild28
-rw-r--r--dev-ml/ppx_optcomp/ppx_optcomp-0.17.1.ebuild27
-rw-r--r--dev-ml/ppx_optional/Manifest2
-rw-r--r--dev-ml/ppx_optional/metadata.xml9
-rw-r--r--dev-ml/ppx_optional/ppx_optional-0.16.0.ebuild23
-rw-r--r--dev-ml/ppx_optional/ppx_optional-0.17.0-r1.ebuild27
-rw-r--r--dev-ml/ppx_pipebang/Manifest3
-rw-r--r--dev-ml/ppx_pipebang/metadata.xml9
-rw-r--r--dev-ml/ppx_pipebang/ppx_pipebang-0.15.0-r1.ebuild21
-rw-r--r--dev-ml/ppx_pipebang/ppx_pipebang-0.16.0.ebuild22
-rw-r--r--dev-ml/ppx_pipebang/ppx_pipebang-0.17.0.ebuild22
-rw-r--r--dev-ml/ppx_sexp_conv/Manifest3
-rw-r--r--dev-ml/ppx_sexp_conv/metadata.xml9
-rw-r--r--dev-ml/ppx_sexp_conv/ppx_sexp_conv-0.16.0-r2.ebuild26
-rw-r--r--dev-ml/ppx_sexp_conv/ppx_sexp_conv-0.17.0-r2.ebuild29
-rw-r--r--dev-ml/ppx_sexp_conv/ppx_sexp_conv-0.17.1.ebuild28
-rw-r--r--dev-ml/ppx_sexp_message/Manifest2
-rw-r--r--dev-ml/ppx_sexp_message/metadata.xml9
-rw-r--r--dev-ml/ppx_sexp_message/ppx_sexp_message-0.16.0.ebuild23
-rw-r--r--dev-ml/ppx_sexp_message/ppx_sexp_message-0.17.0-r1.ebuild28
-rw-r--r--dev-ml/ppx_sexp_value/Manifest2
-rw-r--r--dev-ml/ppx_sexp_value/metadata.xml9
-rw-r--r--dev-ml/ppx_sexp_value/ppx_sexp_value-0.16.0.ebuild23
-rw-r--r--dev-ml/ppx_sexp_value/ppx_sexp_value-0.17.0-r1.ebuild28
-rw-r--r--dev-ml/ppx_stable/Manifest3
-rw-r--r--dev-ml/ppx_stable/metadata.xml9
-rw-r--r--dev-ml/ppx_stable/ppx_stable-0.16.0.ebuild23
-rw-r--r--dev-ml/ppx_stable/ppx_stable-0.17.0-r2.ebuild27
-rw-r--r--dev-ml/ppx_stable/ppx_stable-0.17.1.ebuild26
-rw-r--r--dev-ml/ppx_stable_witness/Manifest2
-rw-r--r--dev-ml/ppx_stable_witness/metadata.xml9
-rw-r--r--dev-ml/ppx_stable_witness/ppx_stable_witness-0.16.0.ebuild23
-rw-r--r--dev-ml/ppx_stable_witness/ppx_stable_witness-0.17.0-r1.ebuild27
-rw-r--r--dev-ml/ppx_string/Manifest2
-rw-r--r--dev-ml/ppx_string/metadata.xml9
-rw-r--r--dev-ml/ppx_string/ppx_string-0.16.0.ebuild23
-rw-r--r--dev-ml/ppx_string/ppx_string-0.17.0-r1.ebuild27
-rw-r--r--dev-ml/ppx_string_conv/Manifest1
-rw-r--r--dev-ml/ppx_string_conv/metadata.xml9
-rw-r--r--dev-ml/ppx_string_conv/ppx_string_conv-0.17.0-r1.ebuild29
-rw-r--r--dev-ml/ppx_tools/Manifest1
-rw-r--r--dev-ml/ppx_tools/metadata.xml9
-rw-r--r--dev-ml/ppx_tools/ppx_tools-6.6-r1.ebuild22
-rw-r--r--dev-ml/ppx_tydi/Manifest3
-rw-r--r--dev-ml/ppx_tydi/metadata.xml9
-rw-r--r--dev-ml/ppx_tydi/ppx_tydi-0.16.0.ebuild23
-rw-r--r--dev-ml/ppx_tydi/ppx_tydi-0.17.0-r2.ebuild28
-rw-r--r--dev-ml/ppx_tydi/ppx_tydi-0.17.1.ebuild27
-rw-r--r--dev-ml/ppx_typerep_conv/Manifest3
-rw-r--r--dev-ml/ppx_typerep_conv/metadata.xml9
-rw-r--r--dev-ml/ppx_typerep_conv/ppx_typerep_conv-0.16.0.ebuild23
-rw-r--r--dev-ml/ppx_typerep_conv/ppx_typerep_conv-0.17.0-r2.ebuild28
-rw-r--r--dev-ml/ppx_typerep_conv/ppx_typerep_conv-0.17.1.ebuild27
-rw-r--r--dev-ml/ppx_variants_conv/Manifest3
-rw-r--r--dev-ml/ppx_variants_conv/metadata.xml9
-rw-r--r--dev-ml/ppx_variants_conv/ppx_variants_conv-0.16.0-r1.ebuild24
-rw-r--r--dev-ml/ppx_variants_conv/ppx_variants_conv-0.17.0-r2.ebuild28
-rw-r--r--dev-ml/ppx_variants_conv/ppx_variants_conv-0.17.1.ebuild27
-rw-r--r--dev-ml/ppx_yojson_conv_lib/Manifest1
-rw-r--r--dev-ml/ppx_yojson_conv_lib/metadata.xml12
-rw-r--r--dev-ml/ppx_yojson_conv_lib/ppx_yojson_conv_lib-0.17.0.ebuild35
-rw-r--r--dev-ml/ppxlib/Manifest6
-rw-r--r--dev-ml/ppxlib/metadata.xml9
-rw-r--r--dev-ml/ppxlib/ppxlib-0.22.2-r4.ebuild48
-rw-r--r--dev-ml/ppxlib/ppxlib-0.24.0-r2.ebuild40
-rw-r--r--dev-ml/ppxlib/ppxlib-0.30.0-r2.ebuild40
-rw-r--r--dev-ml/ppxlib/ppxlib-0.33.0-r2.ebuild43
-rw-r--r--dev-ml/ppxlib/ppxlib-0.36.2-r1.ebuild34
-rw-r--r--dev-ml/ppxlib/ppxlib-0.37.0-r1.ebuild45
-rw-r--r--dev-ml/ppxlib_jane/Manifest2
-rw-r--r--dev-ml/ppxlib_jane/metadata.xml9
-rw-r--r--dev-ml/ppxlib_jane/ppxlib_jane-0.17.2-r2.ebuild24
-rw-r--r--dev-ml/ppxlib_jane/ppxlib_jane-0.17.4-r1.ebuild23
-rw-r--r--dev-ml/protocol_version_header/Manifest2
-rw-r--r--dev-ml/protocol_version_header/metadata.xml9
-rw-r--r--dev-ml/protocol_version_header/protocol_version_header-0.16.0.ebuild22
-rw-r--r--dev-ml/protocol_version_header/protocol_version_header-0.17.0.ebuild22
-rw-r--r--dev-ml/ptime/Manifest2
-rw-r--r--dev-ml/ptime/metadata.xml35
-rw-r--r--dev-ml/ptime/ptime-1.1.0.ebuild31
-rw-r--r--dev-ml/ptime/ptime-1.2.0.ebuild29
-rw-r--r--dev-ml/ptmap/Manifest1
-rw-r--r--dev-ml/ptmap/files/ptmap-2.0.5-dune.patch11
-rw-r--r--dev-ml/ptmap/metadata.xml12
-rw-r--r--dev-ml/ptmap/ptmap-2.0.5-r2.ebuild22
-rw-r--r--dev-ml/qcheck/Manifest4
-rw-r--r--dev-ml/qcheck/metadata.xml12
-rw-r--r--dev-ml/qcheck/qcheck-0.22.ebuild36
-rw-r--r--dev-ml/qcheck/qcheck-0.26.ebuild36
-rw-r--r--dev-ml/qcheck/qcheck-0.27.ebuild37
-rw-r--r--dev-ml/qcheck/qcheck-0.91.ebuild39
-rw-r--r--dev-ml/qtest/Manifest1
-rw-r--r--dev-ml/qtest/metadata.xml12
-rw-r--r--dev-ml/qtest/qtest-2.11.2.ebuild21
-rw-r--r--dev-ml/re/Manifest5
-rw-r--r--dev-ml/re/files/ounit2.patch11
-rw-r--r--dev-ml/re/files/re-1.13.0-noSeq.patch9
-rw-r--r--dev-ml/re/metadata.xml9
-rw-r--r--dev-ml/re/re-1.11.0-r1.ebuild44
-rw-r--r--dev-ml/re/re-1.12.0.ebuild43
-rw-r--r--dev-ml/re/re-1.13.0-r2.ebuild48
-rw-r--r--dev-ml/re/re-1.13.3-r2.ebuild51
-rw-r--r--dev-ml/re/re-1.14.0.ebuild47
-rw-r--r--dev-ml/react/Manifest1
-rw-r--r--dev-ml/react/metadata.xml21
-rw-r--r--dev-ml/react/react-1.2.2-r1.ebuild38
-rw-r--r--dev-ml/reactiveData/Manifest1
-rw-r--r--dev-ml/reactiveData/metadata.xml5
-rw-r--r--dev-ml/reactiveData/reactiveData-0.2.1.ebuild34
-rw-r--r--dev-ml/reason/Manifest1
-rw-r--r--dev-ml/reason/metadata.xml16
-rw-r--r--dev-ml/reason/reason-3.17.3.ebuild47
-rw-r--r--dev-ml/record_builder/Manifest1
-rw-r--r--dev-ml/record_builder/metadata.xml9
-rw-r--r--dev-ml/record_builder/record_builder-0.17.0-r2.ebuild25
-rw-r--r--dev-ml/result/Manifest1
-rw-r--r--dev-ml/result/metadata.xml9
-rw-r--r--dev-ml/result/result-1.5.ebuild15
-rw-r--r--dev-ml/rresult/Manifest1
-rw-r--r--dev-ml/rresult/metadata.xml9
-rw-r--r--dev-ml/rresult/rresult-0.7.0.ebuild23
-rw-r--r--dev-ml/sedlex/Manifest3
-rw-r--r--dev-ml/sedlex/metadata.xml18
-rw-r--r--dev-ml/sedlex/sedlex-3.3-r1.ebuild37
-rw-r--r--dev-ml/sedlex/sedlex-3.6.ebuild36
-rw-r--r--dev-ml/sedlex/sedlex-3.7.ebuild36
-rw-r--r--dev-ml/seq/Manifest1
-rw-r--r--dev-ml/seq/metadata.xml9
-rw-r--r--dev-ml/seq/seq-0.3.1-r1.ebuild15
-rw-r--r--dev-ml/sexp_pretty/Manifest2
-rw-r--r--dev-ml/sexp_pretty/metadata.xml9
-rw-r--r--dev-ml/sexp_pretty/sexp_pretty-0.16.0.ebuild28
-rw-r--r--dev-ml/sexp_pretty/sexp_pretty-0.17.0-r2.ebuild28
-rw-r--r--dev-ml/sexplib/Manifest2
-rw-r--r--dev-ml/sexplib/metadata.xml9
-rw-r--r--dev-ml/sexplib/sexplib-0.16.0-r1.ebuild23
-rw-r--r--dev-ml/sexplib/sexplib-0.17.0-r1.ebuild23
-rw-r--r--dev-ml/sexplib0/Manifest4
-rw-r--r--dev-ml/sexplib0/metadata.xml9
-rw-r--r--dev-ml/sexplib0/sexplib0-0.15.0-r2.ebuild16
-rw-r--r--dev-ml/sexplib0/sexplib0-0.15.1-r1.ebuild16
-rw-r--r--dev-ml/sexplib0/sexplib0-0.16.0.ebuild16
-rw-r--r--dev-ml/sexplib0/sexplib0-0.17.0-r2.ebuild16
-rw-r--r--dev-ml/spawn/Manifest4
-rw-r--r--dev-ml/spawn/metadata.xml9
-rw-r--r--dev-ml/spawn/spawn-0.13.0.ebuild18
-rw-r--r--dev-ml/spawn/spawn-0.15.0-r1.ebuild18
-rw-r--r--dev-ml/spawn/spawn-0.15.1.ebuild18
-rw-r--r--dev-ml/spawn/spawn-0.17.0.ebuild18
-rw-r--r--dev-ml/spdx_licenses/Manifest2
-rw-r--r--dev-ml/spdx_licenses/metadata.xml15
-rw-r--r--dev-ml/spdx_licenses/spdx_licenses-1.2.0.ebuild20
-rw-r--r--dev-ml/spdx_licenses/spdx_licenses-1.4.0.ebuild20
-rw-r--r--dev-ml/splittable_random/Manifest2
-rw-r--r--dev-ml/splittable_random/metadata.xml9
-rw-r--r--dev-ml/splittable_random/splittable_random-0.16.0.ebuild28
-rw-r--r--dev-ml/splittable_random/splittable_random-0.17.0-r2.ebuild28
-rw-r--r--dev-ml/stdcompat/Manifest2
-rw-r--r--dev-ml/stdcompat/metadata.xml14
-rw-r--r--dev-ml/stdcompat/stdcompat-19-r2.ebuild34
-rw-r--r--dev-ml/stdcompat/stdcompat-21.1-r1.ebuild36
-rw-r--r--dev-ml/stdio/Manifest2
-rw-r--r--dev-ml/stdio/metadata.xml9
-rw-r--r--dev-ml/stdio/stdio-0.16.0.ebuild21
-rw-r--r--dev-ml/stdio/stdio-0.17.0-r2.ebuild24
-rw-r--r--dev-ml/stdlib-shims/Manifest2
-rw-r--r--dev-ml/stdlib-shims/metadata.xml24
-rw-r--r--dev-ml/stdlib-shims/stdlib-shims-0.2.0.ebuild17
-rw-r--r--dev-ml/stdlib-shims/stdlib-shims-0.3.0.ebuild17
-rw-r--r--dev-ml/stringext/Manifest1
-rw-r--r--dev-ml/stringext/metadata.xml9
-rw-r--r--dev-ml/stringext/stringext-1.6.0.ebuild22
-rw-r--r--dev-ml/swhid_core/Manifest1
-rw-r--r--dev-ml/swhid_core/metadata.xml13
-rw-r--r--dev-ml/swhid_core/swhid_core-0.1.ebuild16
-rw-r--r--dev-ml/textutils/Manifest2
-rw-r--r--dev-ml/textutils/metadata.xml9
-rw-r--r--dev-ml/textutils/textutils-0.16.0.ebuild26
-rw-r--r--dev-ml/textutils/textutils-0.17.0-r1.ebuild25
-rw-r--r--dev-ml/textutils_kernel/Manifest2
-rw-r--r--dev-ml/textutils_kernel/metadata.xml9
-rw-r--r--dev-ml/textutils_kernel/textutils_kernel-0.16.0.ebuild25
-rw-r--r--dev-ml/textutils_kernel/textutils_kernel-0.17.0-r1.ebuild24
-rw-r--r--dev-ml/time_now/Manifest2
-rw-r--r--dev-ml/time_now/metadata.xml9
-rw-r--r--dev-ml/time_now/time_now-0.16.0.ebuild28
-rw-r--r--dev-ml/time_now/time_now-0.17.0-r2.ebuild28
-rw-r--r--dev-ml/timezone/Manifest2
-rw-r--r--dev-ml/timezone/metadata.xml9
-rw-r--r--dev-ml/timezone/timezone-0.16.0-r1.ebuild22
-rw-r--r--dev-ml/timezone/timezone-0.17.0-r1.ebuild22
-rw-r--r--dev-ml/tiny_httpd/Manifest3
-rw-r--r--dev-ml/tiny_httpd/files/tiny_httpd-0.16-noseq.patch11
-rw-r--r--dev-ml/tiny_httpd/files/tiny_httpd-0.17.0-noseq.patch31
-rw-r--r--dev-ml/tiny_httpd/files/tiny_httpd-0.19-noseq.patch31
-rw-r--r--dev-ml/tiny_httpd/metadata.xml20
-rw-r--r--dev-ml/tiny_httpd/tiny_httpd-0.16-r1.ebuild50
-rw-r--r--dev-ml/tiny_httpd/tiny_httpd-0.17.0.ebuild52
-rw-r--r--dev-ml/tiny_httpd/tiny_httpd-0.19.ebuild52
-rw-r--r--dev-ml/topkg/Manifest4
-rw-r--r--dev-ml/topkg/metadata.xml9
-rw-r--r--dev-ml/topkg/topkg-1.0.7.ebuild38
-rw-r--r--dev-ml/topkg/topkg-1.0.8.ebuild38
-rw-r--r--dev-ml/topkg/topkg-1.1.0.ebuild38
-rw-r--r--dev-ml/topkg/topkg-1.1.1.ebuild38
-rw-r--r--dev-ml/trie/Manifest1
-rw-r--r--dev-ml/trie/metadata.xml12
-rw-r--r--dev-ml/trie/trie-1.0.0.ebuild15
-rw-r--r--dev-ml/typerep/Manifest2
-rw-r--r--dev-ml/typerep/metadata.xml9
-rw-r--r--dev-ml/typerep/typerep-0.16.0-r1.ebuild19
-rw-r--r--dev-ml/typerep/typerep-0.17.1-r2.ebuild24
-rw-r--r--dev-ml/tyxml/Manifest3
-rw-r--r--dev-ml/tyxml/files/tyxml-4.5.0-gentoo.patch11
-rw-r--r--dev-ml/tyxml/metadata.xml21
-rw-r--r--dev-ml/tyxml/tyxml-4.5.0.ebuild29
-rw-r--r--dev-ml/tyxml/tyxml-4.6.0.ebuild34
-rw-r--r--dev-ml/tyxml/tyxml-4.6.0_p20260130.ebuild46
-rw-r--r--dev-ml/uchar/Manifest1
-rw-r--r--dev-ml/uchar/metadata.xml9
-rw-r--r--dev-ml/uchar/uchar-0.0.2-r1.ebuild42
-rw-r--r--dev-ml/unidecode/Manifest1
-rw-r--r--dev-ml/unidecode/files/unidecode-0.4.0-test.patch8
-rw-r--r--dev-ml/unidecode/metadata.xml9
-rw-r--r--dev-ml/unidecode/unidecode-0.4.0.ebuild26
-rw-r--r--dev-ml/uopt/Manifest1
-rw-r--r--dev-ml/uopt/metadata.xml9
-rw-r--r--dev-ml/uopt/uopt-0.17.0-r2.ebuild25
-rw-r--r--dev-ml/uri/Manifest1
-rw-r--r--dev-ml/uri/metadata.xml9
-rw-r--r--dev-ml/uri/uri-4.4.0-r1.ebuild24
-rw-r--r--dev-ml/utop/Manifest2
-rw-r--r--dev-ml/utop/files/50utop-gentoo.el3
-rw-r--r--dev-ml/utop/metadata.xml18
-rw-r--r--dev-ml/utop/utop-2.16.0.ebuild68
-rw-r--r--dev-ml/utop/utop-2.17.0.ebuild78
-rw-r--r--dev-ml/uucp/Manifest2
-rw-r--r--dev-ml/uucp/metadata.xml9
-rw-r--r--dev-ml/uucp/uucp-16.0.0.ebuild34
-rw-r--r--dev-ml/uucp/uucp-17.0.0.ebuild34
-rw-r--r--dev-ml/uuidm/Manifest4
-rw-r--r--dev-ml/uuidm/metadata.xml9
-rw-r--r--dev-ml/uuidm/uuidm-0.9.10.ebuild26
-rw-r--r--dev-ml/uuidm/uuidm-0.9.7.ebuild25
-rw-r--r--dev-ml/uuidm/uuidm-0.9.8.ebuild25
-rw-r--r--dev-ml/uuidm/uuidm-0.9.9.ebuild25
-rw-r--r--dev-ml/uunf/Manifest3
-rw-r--r--dev-ml/uunf/metadata.xml9
-rw-r--r--dev-ml/uunf/uunf-15.1.0-r1.ebuild38
-rw-r--r--dev-ml/uunf/uunf-16.0.0.ebuild38
-rw-r--r--dev-ml/uunf/uunf-17.0.0.ebuild38
-rw-r--r--dev-ml/uuseg/Manifest3
-rw-r--r--dev-ml/uuseg/metadata.xml22
-rw-r--r--dev-ml/uuseg/uuseg-15.0.0.ebuild38
-rw-r--r--dev-ml/uuseg/uuseg-16.0.0.ebuild39
-rw-r--r--dev-ml/uuseg/uuseg-17.0.0.ebuild39
-rw-r--r--dev-ml/uutf/Manifest2
-rw-r--r--dev-ml/uutf/metadata.xml12
-rw-r--r--dev-ml/uutf/uutf-1.0.3-r2.ebuild66
-rw-r--r--dev-ml/uutf/uutf-1.0.4-r1.ebuild44
-rw-r--r--dev-ml/variantslib/Manifest2
-rw-r--r--dev-ml/variantslib/metadata.xml9
-rw-r--r--dev-ml/variantslib/variantslib-0.16.0.ebuild21
-rw-r--r--dev-ml/variantslib/variantslib-0.17.0-r2.ebuild24
-rw-r--r--dev-ml/xdg/Manifest2
-rw-r--r--dev-ml/xdg/metadata.xml9
-rw-r--r--dev-ml/xdg/xdg-3.20.2.ebuild40
-rw-r--r--dev-ml/xdg/xdg-3.21.1.ebuild40
-rw-r--r--dev-ml/xml-light/Manifest1
-rw-r--r--dev-ml/xml-light/metadata.xml9
-rw-r--r--dev-ml/xml-light/xml-light-2.5.ebuild15
-rw-r--r--dev-ml/xmlm/Manifest1
-rw-r--r--dev-ml/xmlm/metadata.xml16
-rw-r--r--dev-ml/xmlm/xmlm-1.4.0.ebuild22
-rw-r--r--dev-ml/yojson/Manifest2
-rw-r--r--dev-ml/yojson/files/yojson-2.1.1-dune-seq.patch9
-rw-r--r--dev-ml/yojson/metadata.xml16
-rw-r--r--dev-ml/yojson/yojson-2.2.2-r1.ebuild44
-rw-r--r--dev-ml/yojson/yojson-3.0.0.ebuild53
-rw-r--r--dev-ml/zarith/Manifest1
-rw-r--r--dev-ml/zarith/metadata.xml9
-rw-r--r--dev-ml/zarith/zarith-1.14.ebuild60
-rw-r--r--dev-ml/zed/Manifest1
-rw-r--r--dev-ml/zed/metadata.xml21
-rw-r--r--dev-ml/zed/zed-3.2.3.ebuild30
-rw-r--r--dev-ml/zmq-async/Manifest1
-rw-r--r--dev-ml/zmq-async/metadata.xml12
-rw-r--r--dev-ml/zmq-async/zmq-async-5.2.1.ebuild44
-rw-r--r--dev-ml/zmq-lwt/Manifest1
-rw-r--r--dev-ml/zmq-lwt/metadata.xml12
-rw-r--r--dev-ml/zmq-lwt/zmq-lwt-5.2.1.ebuild42
-rw-r--r--dev-ml/zmq/Manifest2
-rw-r--r--dev-ml/zmq/metadata.xml12
-rw-r--r--dev-ml/zmq/zmq-5.2.1.ebuild41
-rw-r--r--dev-ml/zmq/zmq-5.3.0.ebuild41
1082 files changed, 22677 insertions, 0 deletions
diff --git a/dev-ml/0install/0install-2.18-r1.ebuild b/dev-ml/0install/0install-2.18-r1.ebuild
new file mode 100644
index 000000000000..6a4c64932f36
--- /dev/null
+++ b/dev-ml/0install/0install-2.18-r1.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Package dependency solver"
+HOMEPAGE="https://docs.0install.net/developers/solver/"
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tbz"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+
+IUSE="+ocamlopt"
+
+RDEPEND="
+ dev-ml/lwt:=[ocamlopt?]
+ dev-ml/ocaml-sha:=[ocamlopt?]
+ dev-ml/ocplib-endian:=[ocamlopt?]
+ dev-ml/ocurl:=[ocamlopt?]
+ dev-ml/react:=
+ dev-ml/stdlib-shims:=[ocamlopt?]
+ dev-ml/xmlm:=
+ dev-ml/yojson:=[ocamlopt?]
+"
+BDEPEND="dev-ml/findlib"
+
+RESTRICT="test"
+
+src_compile() {
+ dune-compile 0install-solver 0install
+}
+
+src_install() {
+ dune-install 0install-solver 0install
+}
diff --git a/dev-ml/0install/Manifest b/dev-ml/0install/Manifest
new file mode 100644
index 000000000000..65daafe4855a
--- /dev/null
+++ b/dev-ml/0install/Manifest
@@ -0,0 +1 @@
+DIST 0install-2.18.tbz 452385 BLAKE2B 90b4ce4d508005fd3fc9303e4fbb86fe830568fccab2aa6cbbadd16b232b3b3d2446dcd830069e0d96011c500f2e484d7009fbeedf12b6f520e17042aa784605 SHA512 6d4734754951fad9caad5d876a1301e283bdd77a080d6601d57b21c540a30a616b18f664cbd4f86748c90de41cf3ef54f3a883fd75f638abbe3630a0320e4a7f
diff --git a/dev-ml/0install/metadata.xml b/dev-ml/0install/metadata.xml
new file mode 100644
index 000000000000..c459666c0b0e
--- /dev/null
+++ b/dev-ml/0install/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <longdescription lang="en">
+ Zero Install is a decentralised cross-distribution software
+ installation system. Other features include full support for shared
+ libraries (with a SAT solver for dependency resolution),
+ sharing between users, and integration with native platform package
+ managers. It supports both binary and source packages, and works on
+ Linux, macOS, Unix and Windows systems.
+ </longdescription>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ANSITerminal/ANSITerminal-0.8.5.ebuild b/dev-ml/ANSITerminal/ANSITerminal-0.8.5.ebuild
new file mode 100644
index 000000000000..0894dee59864
--- /dev/null
+++ b/dev-ml/ANSITerminal/ANSITerminal-0.8.5.ebuild
@@ -0,0 +1,15 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Basic control of ANSI compliant terminals and the windows shell"
+HOMEPAGE="https://github.com/Chris00/ANSITerminal/"
+SRC_URI="https://github.com/Chris00/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-3-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
diff --git a/dev-ml/ANSITerminal/Manifest b/dev-ml/ANSITerminal/Manifest
new file mode 100644
index 000000000000..f4150c70c35b
--- /dev/null
+++ b/dev-ml/ANSITerminal/Manifest
@@ -0,0 +1 @@
+DIST ANSITerminal-0.8.5.tar.gz 15121 BLAKE2B 08426f33e160a6cb076c40028d47de81c4e58b49544c7bdb3f61cb6d321b5779c40d99012af8d213cfebd8e25ea311c69254a153b50dbcfa93744cb29806d75c SHA512 df5ce287a7f8134172ae439f77b6b31edf897ced9481d7a2ecf55a56e01f271ff97c37c1a018b74b4af5668ce7dd2d4870436de09869f021dd10700021bc7b0f
diff --git a/dev-ml/ANSITerminal/metadata.xml b/dev-ml/ANSITerminal/metadata.xml
new file mode 100644
index 000000000000..dd9ee57ec140
--- /dev/null
+++ b/dev-ml/ANSITerminal/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/Chris00/ANSITerminal/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/alcotest/Manifest b/dev-ml/alcotest/Manifest
new file mode 100644
index 000000000000..9fcbc784c5f6
--- /dev/null
+++ b/dev-ml/alcotest/Manifest
@@ -0,0 +1,3 @@
+DIST alcotest-1.7.0.tar.gz 293433 BLAKE2B 83a9b1bb3a6d9ec09de739e77a6e1085bbca328f5be39f6ab28931a7bc16d223d571917f924598ddcc399910f986df95eb72ae61f28512221d9de6174ffe3988 SHA512 6e29cc39109f5d83a175578f48ff1b48fdf13913b7cdd332823a660c681ab0cd5dec41b10322226102b023d7c74620decf964458926abed56ae835e4e565014e
+DIST alcotest-1.8.0.tar.gz 296522 BLAKE2B 63ad6a8349a1ed0b0a61db7b816b30a020bda23374a5672543b758a227079d7129b2b3bd3e40cc8b71bb753c366116d0e9f7aea57011986099f1c129fcda7a55 SHA512 bcbb43d8f67e5250823f4cf92db81bef6ee71a399f9c12c4c1e343d043b885da8571593a59c07ae140a0222f8a5a66eef328206c0636e349e628520831be62db
+DIST alcotest-1.9.0.tar.gz 297579 BLAKE2B f56a69198bd2e3dcb5970744cfec1d83b8981a0ed12584ed1849aca1c5c9488038fb3fb3b1b60c9160a54220f88d66b3929a92577942ccaf98356ba98216baa3 SHA512 98a956db0924c8d2b4ac89fc7b5478b36c155a2ab3e2927d1131adb1ecd62c64ac07ba42d02f7972d94a3ac70942f0031cf9f998693f8920f8673cf8cdafb349
diff --git a/dev-ml/alcotest/alcotest-1.7.0-r1.ebuild b/dev-ml/alcotest/alcotest-1.7.0-r1.ebuild
new file mode 100644
index 000000000000..54c6b2e736ff
--- /dev/null
+++ b/dev-ml/alcotest/alcotest-1.7.0-r1.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="A lightweight and colourful test framework"
+HOMEPAGE="https://github.com/mirage/alcotest/"
+SRC_URI="https://github.com/mirage/alcotest/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ dev-ml/astring:=
+ dev-ml/async:=[ocamlopt?]
+ dev-ml/async_kernel:=[ocamlopt?]
+ >=dev-ml/async_unix-0.15.0:=[ocamlopt?]
+ dev-ml/base:=[ocamlopt?]
+ dev-ml/cmdliner:=[ocamlopt?]
+ >=dev-ml/core-0.15.0:=[ocamlopt?]
+ >=dev-ml/core_unix-0.15.0:=[ocamlopt?]
+ dev-ml/duration:=[ocamlopt?]
+ dev-ml/fmt:=[ocamlopt?]
+ dev-ml/lwt:=[ocamlopt?]
+ dev-ml/mirage-clock:=[ocamlopt?]
+ dev-ml/re:=[ocamlopt?]
+ dev-ml/result:=[ocamlopt?]
+ dev-ml/logs:=[ocamlopt?]
+ dev-ml/uutf:=[ocamlopt?]
+ dev-ml/uuidm:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.0"
+
+src_prepare() {
+ default
+
+ if has_version '>=dev-ml/core_unix-0.16.0' ; then
+ eapply "${FILESDIR}"/${P}-time_float_unix.patch
+ fi
+}
diff --git a/dev-ml/alcotest/alcotest-1.8.0.ebuild b/dev-ml/alcotest/alcotest-1.8.0.ebuild
new file mode 100644
index 000000000000..cdf5b23a1aa5
--- /dev/null
+++ b/dev-ml/alcotest/alcotest-1.8.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="A lightweight and colourful test framework"
+HOMEPAGE="https://github.com/mirage/alcotest/"
+SRC_URI="https://github.com/mirage/alcotest/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ dev-ml/astring:=
+ dev-ml/async:=[ocamlopt?]
+ dev-ml/async_kernel:=[ocamlopt?]
+ >=dev-ml/async_unix-0.15.0:=[ocamlopt?]
+ dev-ml/base:=[ocamlopt?]
+ >=dev-ml/cmdliner-1.2:=[ocamlopt?]
+ >=dev-ml/core-0.15.0:=[ocamlopt?]
+ >=dev-ml/core_unix-0.15.0:=[ocamlopt?]
+ dev-ml/duration:=[ocamlopt?]
+ dev-ml/fmt:=[ocamlopt?]
+ dev-ml/lwt:=[ocamlopt?]
+ dev-ml/mirage-clock:=[ocamlopt?]
+ dev-ml/re:=[ocamlopt?]
+ dev-ml/result:=[ocamlopt?]
+ dev-ml/stdlib-shims:=[ocamlopt?]
+ dev-ml/logs:=[ocamlopt?]
+ dev-ml/uutf:=[ocamlopt?]
+ dev-ml/uuidm:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.0"
diff --git a/dev-ml/alcotest/alcotest-1.9.0.ebuild b/dev-ml/alcotest/alcotest-1.9.0.ebuild
new file mode 100644
index 000000000000..18a4a80dd43d
--- /dev/null
+++ b/dev-ml/alcotest/alcotest-1.9.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="A lightweight and colourful test framework"
+HOMEPAGE="https://github.com/mirage/alcotest/"
+SRC_URI="https://github.com/mirage/alcotest/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ dev-ml/astring:=
+ dev-ml/async:=[ocamlopt?]
+ dev-ml/async_kernel:=[ocamlopt?]
+ >=dev-ml/async_unix-0.15.0:=[ocamlopt?]
+ dev-ml/base:=[ocamlopt?]
+ >=dev-ml/cmdliner-1.2:=[ocamlopt?]
+ >=dev-ml/core-0.15.0:=[ocamlopt?]
+ >=dev-ml/core_unix-0.15.0:=[ocamlopt?]
+ dev-ml/duration:=[ocamlopt?]
+ dev-ml/fmt:=[ocamlopt?]
+ dev-ml/lwt:=[ocamlopt?]
+ dev-ml/mirage-clock:=[ocamlopt?]
+ dev-ml/re:=[ocamlopt?]
+ dev-ml/result:=[ocamlopt?]
+ dev-ml/stdlib-shims:=[ocamlopt?]
+ dev-ml/logs:=[ocamlopt?]
+ dev-ml/uutf:=[ocamlopt?]
+ dev-ml/uuidm:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.0"
diff --git a/dev-ml/alcotest/files/alcotest-1.7.0-time_float_unix.patch b/dev-ml/alcotest/files/alcotest-1.7.0-time_float_unix.patch
new file mode 100644
index 000000000000..cb54fb280a43
--- /dev/null
+++ b/dev-ml/alcotest/files/alcotest-1.7.0-time_float_unix.patch
@@ -0,0 +1,49 @@
+This fixes the following errors:
+Error: The module Time_unix.Span is an alias for module Time_float_unix.Span, which is missing
+Error: Unbound module Time_float_unix
+---
+diff --git a/src/alcotest-async/alcotest_async.ml b/src/alcotest-async/alcotest_async.ml
+index 97ed610..b6a826f 100644
+--- a/src/alcotest-async/alcotest_async.ml
++++ b/src/alcotest-async/alcotest_async.ml
+@@ -7,7 +7,7 @@ let run_test timeout name fn args =
+ | `Timeout ->
+ Alcotest.fail
+ (Printf.sprintf "%s timed out after %s" name
+- (Time_unix.Span.to_string_hum timeout))
++ (Time_float_unix.Span.to_string_hum timeout))
+
+ module Promise = struct
+ include Deferred
+@@ -24,7 +24,7 @@ module V1 = struct
+
+ let test_case_sync n s f = test_case n s (fun x -> Deferred.return (f x))
+
+- let test_case ?(timeout = Time_unix.Span.of_sec 2.) name s f =
++ let test_case ?(timeout = Time_float_unix.Span.of_sec 2.) name s f =
+ test_case name s (run_test timeout name f)
+ end
+
+diff --git a/src/alcotest-async/alcotest_async_intf.ml b/src/alcotest-async/alcotest_async_intf.ml
+index 27df58c..baa55cd 100644
+--- a/src/alcotest-async/alcotest_async_intf.ml
++++ b/src/alcotest-async/alcotest_async_intf.ml
+@@ -2,7 +2,7 @@ module type V1 = sig
+ include Alcotest_engine.V1.Cli.S with type return = unit Async.Deferred.t
+
+ val test_case :
+- ?timeout:Time_unix.Span.t ->
++ ?timeout:Time_float_unix.Span.t ->
+ string ->
+ Alcotest.speed_level ->
+ ('a -> unit Async.Deferred.t) ->
+diff --git a/src/alcotest-async/dune b/src/alcotest-async/dune
+index 9497c26..52ab50c 100644
+--- a/src/alcotest-async/dune
++++ b/src/alcotest-async/dune
+@@ -9,4 +9,4 @@
+ async_unix
+ base
+ core
+- core_unix.time_unix))
++ core_unix.time_float_unix))
diff --git a/dev-ml/alcotest/metadata.xml b/dev-ml/alcotest/metadata.xml
new file mode 100644
index 000000000000..54ddb0454c4d
--- /dev/null
+++ b/dev-ml/alcotest/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>fogti@ytrizja.de</email>
+ <name>Ellen Emilia Anna Zscheile</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/angstrom/Manifest b/dev-ml/angstrom/Manifest
new file mode 100644
index 000000000000..13125c259fb9
--- /dev/null
+++ b/dev-ml/angstrom/Manifest
@@ -0,0 +1 @@
+DIST angstrom-0.16.1.tar.gz 117544 BLAKE2B e09bea0e44d391aa9aa2dc0592bf0c40a62f5d0e9b9fd3b9247ca558c59ab1bd30c820c07a29543b87bbea9636a847135abe1a4fd196baa62ee7679484ce77cc SHA512 754089f10e4836fc6379a508662853885ceec985367a9b4bc2915ce5f45e5878aba31523149710b5040e4e373a0a27a6315231dfbc690ff4718c4c3d7df33732
diff --git a/dev-ml/angstrom/angstrom-0.16.1.ebuild b/dev-ml/angstrom/angstrom-0.16.1.ebuild
new file mode 100644
index 000000000000..217f15220edf
--- /dev/null
+++ b/dev-ml/angstrom/angstrom-0.16.1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit dune
+
+DESCRIPTION="Parser combinators built for speed and memory-efficiency"
+HOMEPAGE="https://github.com/inhabitedtype/angstrom"
+SRC_URI="https://github.com/inhabitedtype/${PN}/archive/${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 arm64 x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-ml/async:=[ocamlopt?]
+ dev-ml/bigstringaf:=[ocamlopt?]
+ dev-ml/lwt:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="test? ( dev-ml/alcotest )"
diff --git a/dev-ml/angstrom/metadata.xml b/dev-ml/angstrom/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/angstrom/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/astring/Manifest b/dev-ml/astring/Manifest
new file mode 100644
index 000000000000..9de5e69087a9
--- /dev/null
+++ b/dev-ml/astring/Manifest
@@ -0,0 +1 @@
+DIST astring-0.8.5.tbz 37499 BLAKE2B bff0b9a295da9e33e0cc4bf1a5a0c3cec4010f477d67a39650bbb8e61f12e517cd5734f1e869d35448e4e555a04d0223b76181f29ee299ef9f19359c7d59e69a SHA512 b40634cc2053d651bce5c1974996b352ffa48ecac429919113840b2a807efb34387d950f12accb346afd5e40514cb90219d70b00109c30e1450c4e99f65c9856
diff --git a/dev-ml/astring/astring-0.8.5.ebuild b/dev-ml/astring/astring-0.8.5.ebuild
new file mode 100644
index 000000000000..23a28ffd7746
--- /dev/null
+++ b/dev-ml/astring/astring-0.8.5.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit opam
+
+DESCRIPTION="Alternative String module for OCaml"
+HOMEPAGE="https://erratique.ch/software/astring https://github.com/dbuenzli/astring"
+SRC_URI="https://erratique.ch/software/astring/releases/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+
+BDEPEND="
+ dev-ml/ocamlbuild
+ dev-ml/findlib
+ dev-ml/topkg
+"
+
+src_compile() {
+ ocaml pkg/pkg.ml build || die
+}
diff --git a/dev-ml/astring/metadata.xml b/dev-ml/astring/metadata.xml
new file mode 100644
index 000000000000..5208931cf393
--- /dev/null
+++ b/dev-ml/astring/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <upstream>
+ <changelog>https://github.com/dbuenzli/astring/blob/master/CHANGES.md</changelog>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/async/Manifest b/dev-ml/async/Manifest
new file mode 100644
index 000000000000..9c61cc9609d3
--- /dev/null
+++ b/dev-ml/async/Manifest
@@ -0,0 +1,2 @@
+DIST async-0.16.0.tar.gz 77022 BLAKE2B 0df5cc12772b013f780c1a8b146f65442d11dce61b762fe0aff3f45ef67190ab786e5149fa568156d31410def6bf62f8cfa6d943b40a4720f1d84f03883a5d3b SHA512 4668387de903654e9a73eb8218c9a70d5652d7e8ee255e0dfa6f86c4ba99260e9303499b97ff288c8184ba7e77c47964bfce2ce27bbbab4e4d59d2c9f6863505
+DIST async-0.17.0.tar.gz 86210 BLAKE2B fa8853a24d251bf5acaf6bff8a1dd115a7c80bf6650f886a70404bd9023495f381ab0cec723d50038e170ba6a0998e8c77066677e20a6047f18b5d44d73355ac SHA512 6947668d7b9be9716e5d1e629a74efbe6e22669083b7f97f605c62ea70eacab3b7573445e9cb028f7711ded294a07c6e9833f039496ede84958aa2e5794b270d
diff --git a/dev-ml/async/async-0.16.0.ebuild b/dev-ml/async/async-0.16.0.ebuild
new file mode 100644
index 000000000000..2fbc9b8f7d34
--- /dev/null
+++ b/dev-ml/async/async-0.16.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Jane Street Capital's asynchronous execution library"
+HOMEPAGE="https://github.com/janestreet/async"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 x86"
+IUSE="+ocamlopt"
+
+# Need qtest_lib, netkit_sockets
+# Unpackaged test deps
+RESTRICT="test"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/async_kernel:${SLOT}
+ dev-ml/async_rpc_kernel:${SLOT}
+ dev-ml/async_unix:${SLOT}
+ dev-ml/core:${SLOT}
+ dev-ml/core_kernel:${SLOT}
+ dev-ml/core_unix:${SLOT}
+ dev-ml/ppx_jane:${SLOT}
+ dev-ml/ppx_log:${SLOT}
+ dev-ml/ppx_module_timer:=
+ dev-ml/textutils:${SLOT}
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/async/async-0.17.0.ebuild b/dev-ml/async/async-0.17.0.ebuild
new file mode 100644
index 000000000000..9dbc458d92a8
--- /dev/null
+++ b/dev-ml/async/async-0.17.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Jane Street Capital's asynchronous execution library"
+HOMEPAGE="https://github.com/janestreet/async"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Need qtest_lib, netkit_sockets
+# Unpackaged test deps
+RESTRICT="test"
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ dev-ml/async_kernel:${SLOT}[ocamlopt?]
+ dev-ml/async_log:${SLOT}[ocamlopt?]
+ dev-ml/async_rpc_kernel:${SLOT}[ocamlopt?]
+ dev-ml/async_unix:${SLOT}[ocamlopt?]
+ dev-ml/core:${SLOT}[ocamlopt?]
+ dev-ml/core_kernel:${SLOT}[ocamlopt?]
+ dev-ml/core_unix:${SLOT}[ocamlopt?]
+ dev-ml/ppx_jane:${SLOT}[ocamlopt?]
+ dev-ml/textutils:${SLOT}[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/async/metadata.xml b/dev-ml/async/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/async/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/async_kernel/Manifest b/dev-ml/async_kernel/Manifest
new file mode 100644
index 000000000000..adffdeeddb91
--- /dev/null
+++ b/dev-ml/async_kernel/Manifest
@@ -0,0 +1,2 @@
+DIST async_kernel-0.16.0.tar.gz 155521 BLAKE2B 9968e15fba844b35c595811cfc953aff71adfbcd26765060dcf8733907d1e71c771ed8eff27ae10967ee287d25c0af6a8945afbcf40eccb239d00212264c0c13 SHA512 8fb53e1802d5992698dcc8ce56b04e898bc3c9402a04462a63854754a7d2900a0760d09c5526e92114fc5eca3857757613deb9ef88552c020f04a1956590f13a
+DIST async_kernel-0.17.0.tar.gz 162639 BLAKE2B c279604cd201ed77c3c00320e7f6bbb9272c581d13612bd878a72f6d8de51c4b7b7f6c73c962e77e55154a864f6b5a326e4e7d049b9c4a377a4cfe8ef30b717e SHA512 c1fc75699eaa7a498b8541301af762712133d42a0101540d4547cc633b6fc3830eb2b217290717a7c24849b2771670f7e49b6780405b273f5b726943b8bd94e1
diff --git a/dev-ml/async_kernel/async_kernel-0.16.0.ebuild b/dev-ml/async_kernel/async_kernel-0.16.0.ebuild
new file mode 100644
index 000000000000..b2b126f9d90a
--- /dev/null
+++ b/dev-ml/async_kernel/async_kernel-0.16.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Jane Street Capital's asynchronous execution library (core)"
+HOMEPAGE="https://github.com/janestreet/async_kernel"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/core:${SLOT}
+ dev-ml/core_kernel:${SLOT}
+ dev-ml/ppx_jane:${SLOT}
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/async_kernel/async_kernel-0.17.0.ebuild b/dev-ml/async_kernel/async_kernel-0.17.0.ebuild
new file mode 100644
index 000000000000..cda59c441873
--- /dev/null
+++ b/dev-ml/async_kernel/async_kernel-0.17.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Jane Street Capital's asynchronous execution library (core)"
+HOMEPAGE="https://github.com/janestreet/async_kernel"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ dev-ml/core:${SLOT}[ocamlopt?]
+ dev-ml/core_kernel:${SLOT}[ocamlopt?]
+ dev-ml/ppx_jane:${SLOT}[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/async_kernel/metadata.xml b/dev-ml/async_kernel/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/async_kernel/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/async_log/Manifest b/dev-ml/async_log/Manifest
new file mode 100644
index 000000000000..dfa4dac39ed6
--- /dev/null
+++ b/dev-ml/async_log/Manifest
@@ -0,0 +1 @@
+DIST async_log-0.17.0.tar.gz 30105 BLAKE2B d1cb43c0a849d94957bd86f8a40207f843d473463c8207bfc41347c90d675fc0b3b3a1cb0fb9a7280bff03fb4b8cad2cc7b4e809f45bf371f8213612ce0321a0 SHA512 a98974dd4ff054d110b66956ae60272baca0acbe18ae3a57f4a2c28774cd9c108d3fbc7a7d7b289628f45efafb46d6347ba192cf948a8f941fc916fe61e96d51
diff --git a/dev-ml/async_log/async_log-0.17.0.ebuild b/dev-ml/async_log/async_log-0.17.0.ebuild
new file mode 100644
index 000000000000..a703079f275d
--- /dev/null
+++ b/dev-ml/async_log/async_log-0.17.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2024-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Logging library built on top of Async_unix"
+HOMEPAGE="https://github.com/janestreet/async_log"
+SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ dev-ml/async_kernel:${SLOT}[ocamlopt?]
+ dev-ml/async_unix:${SLOT}[ocamlopt?]
+ dev-ml/core:${SLOT}[ocamlopt?]
+ dev-ml/core_kernel:${SLOT}[ocamlopt?]
+ dev-ml/ppx_jane:${SLOT}[ocamlopt?]
+ dev-ml/timezone:${SLOT}[ocamlopt?]
+ dev-ml/uopt:${SLOT}[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/async_log/metadata.xml b/dev-ml/async_log/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/async_log/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/async_rpc_kernel/Manifest b/dev-ml/async_rpc_kernel/Manifest
new file mode 100644
index 000000000000..46aa1a4f6156
--- /dev/null
+++ b/dev-ml/async_rpc_kernel/Manifest
@@ -0,0 +1,2 @@
+DIST async_rpc_kernel-0.16.0.tar.gz 76163 BLAKE2B 14a293ee65f207b28a755799162cd66346ec54bedd01c1cfb7b9d413a4c278c332ee7724320c688aea19148935aad6f5cc2d96a3f653de0d8ff32cbb568cc4a7 SHA512 62381da44300df9f2c422fb1e439fe00316a5017963c2a3fb5d8b52f6268944cc52ec4b6b2cd694798717eaee2282e3bb10c59a7dc76ac41b2d319595e658e0f
+DIST async_rpc_kernel-0.17.0.tar.gz 126810 BLAKE2B 21a47425457a9d62a64664bb87cae64623eaf9c449d1cff06b0260e2938b65e69cc7cad63f74522e205ece01a3f884baab49543a007d792ca6216dda45c0c9bc SHA512 902baa5df528420fe28c53c01885f2067e32fdfaec6989105958e3e78cc20e844f4af4b9dc93de7385452be66d4f14707dd221b92ad4dcced05c992eebc53fd4
diff --git a/dev-ml/async_rpc_kernel/async_rpc_kernel-0.16.0.ebuild b/dev-ml/async_rpc_kernel/async_rpc_kernel-0.16.0.ebuild
new file mode 100644
index 000000000000..f61b4f1dd75b
--- /dev/null
+++ b/dev-ml/async_rpc_kernel/async_rpc_kernel-0.16.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Platform-independent core of Async RPC library"
+HOMEPAGE="https://github.com/janestreet/async_rpc_kernel"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/async_kernel:${SLOT}
+ dev-ml/core:${SLOT}
+ dev-ml/protocol_version_header:${SLOT}
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/async_rpc_kernel/async_rpc_kernel-0.17.0.ebuild b/dev-ml/async_rpc_kernel/async_rpc_kernel-0.17.0.ebuild
new file mode 100644
index 000000000000..47de1fafa3dc
--- /dev/null
+++ b/dev-ml/async_rpc_kernel/async_rpc_kernel-0.17.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Platform-independent core of Async RPC library"
+HOMEPAGE="https://github.com/janestreet/async_rpc_kernel"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ dev-ml/async_kernel:${SLOT}[ocamlopt?]
+ dev-ml/core:${SLOT}[ocamlopt?]
+ dev-ml/core_kernel:${SLOT}[ocamlopt?]
+ dev-ml/gel:${SLOT}[ocamlopt?]
+ dev-ml/ppx_jane:${SLOT}[ocamlopt?]
+ dev-ml/protocol_version_header:${SLOT}[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/async_rpc_kernel/metadata.xml b/dev-ml/async_rpc_kernel/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/async_rpc_kernel/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/async_unix/Manifest b/dev-ml/async_unix/Manifest
new file mode 100644
index 000000000000..12fbf896f065
--- /dev/null
+++ b/dev-ml/async_unix/Manifest
@@ -0,0 +1,2 @@
+DIST async_unix-0.16.0.tar.gz 186267 BLAKE2B 1f4be6e324658d50554c7ba252de4f85c9439492ed35a3e453113c443b848bef63684b1ae752f70994b5b224e00110364442ea032a345f9f3982542e306d47e6 SHA512 9fe8f61cb3a27e9974aefa40596df744dad75aca037b0b8347c87f86f63832a993f8306c0b0e7cbf7affcedc50a53ae32bdf3be40cee04d1e41653e3697bd991
+DIST async_unix-0.17.0.tar.gz 192143 BLAKE2B df87ae470ba5f990bcb99a243e04b2d129caf962bea38aed4801dab7a3b6a22096420b3c38bfee13c2b6d474c1647be8ed05720b5b49267a910adefad494e3b3 SHA512 78ead235bdf2f1bcf1355e8997ca8ade19681bd1b9716c96e5013364575f04f21e40995d92c324c864f9d7ff00df2be9405fc9225b182fbb73d79ab77637bba0
diff --git a/dev-ml/async_unix/async_unix-0.16.0.ebuild b/dev-ml/async_unix/async_unix-0.16.0.ebuild
new file mode 100644
index 000000000000..319bbae39912
--- /dev/null
+++ b/dev-ml/async_unix/async_unix-0.16.0.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Jane Street Capital's asynchronous execution library (unix)"
+HOMEPAGE="https://github.com/janestreet/async_unix"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/async_kernel:${SLOT}
+ dev-ml/core:${SLOT}
+ dev-ml/core_kernel:${SLOT}
+ dev-ml/core_unix:${SLOT}
+ dev-ml/ppx_jane:${SLOT}
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/async_unix/async_unix-0.17.0.ebuild b/dev-ml/async_unix/async_unix-0.17.0.ebuild
new file mode 100644
index 000000000000..63f5da9746b5
--- /dev/null
+++ b/dev-ml/async_unix/async_unix-0.17.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Jane Street Capital's asynchronous execution library (unix)"
+HOMEPAGE="https://github.com/janestreet/async_unix"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ dev-ml/async_kernel:${SLOT}[ocamlopt?]
+ dev-ml/core:${SLOT}[ocamlopt?]
+ dev-ml/core_kernel:${SLOT}[ocamlopt?]
+ dev-ml/core_unix:${SLOT}[ocamlopt?]
+ dev-ml/cstruct[ocamlopt?]
+ dev-ml/ppx_jane:${SLOT}[ocamlopt?]
+ dev-ml/ppx_optcomp:${SLOT}[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/async_unix/metadata.xml b/dev-ml/async_unix/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/async_unix/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/atd/Manifest b/dev-ml/atd/Manifest
new file mode 100644
index 000000000000..9fe1c451fc67
--- /dev/null
+++ b/dev-ml/atd/Manifest
@@ -0,0 +1,2 @@
+DIST atd-2.15.0.tar.gz 3352231 BLAKE2B 4e5ca04bef5f534da3191ee740b1879ffa6a7886498eb988e3124e85daf35942ce81954e7e08e4074c75bc8c528237c16d24bd44b9576f03ea3a90b7fad4d437 SHA512 e9a777d9453ccc8f41f907d130bbf3d094ab373bbb89eb6ee02b24f046cbc3a0881a33b9bf3b01674cbae3e586589eeae50a64ad7c7877b50fc764d05abd12fe
+DIST atd-2.16.0.tar.gz 3387238 BLAKE2B bb9c639d8e6e91be99685668d90f71f0f2653ad736d6d6a315125f62ab896e2f160d676a1a5bfffa857fb6fa710144f171b0e4f12add02a1601a20868ec3c754 SHA512 9824e3476e1679c797fc00ec7d5bb738707acc3c9a64b16be4a6c61337aa429ba947731224e2808817a27941717ac54fbbf0eb0845d4819c943beb126a5e9176
diff --git a/dev-ml/atd/atd-2.15.0.ebuild b/dev-ml/atd/atd-2.15.0.ebuild
new file mode 100644
index 000000000000..d6628f7815c7
--- /dev/null
+++ b/dev-ml/atd/atd-2.15.0.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Static types for JSON APIs"
+HOMEPAGE="https://github.com/ahrefs/atd/"
+SRC_URI="https://github.com/ahrefs/atd/archive/${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+RDEPEND="
+ >=dev-ml/cmdliner-1.1.1:=
+ >=dev-ml/yojson-2.0.2:=
+ dev-ml/biniou:=
+ dev-ml/easy-format:=
+ dev-ml/menhir:=
+ dev-ml/re:=
+"
+DEPEND="${RDEPEND}"
+
+src_install() {
+ dune-install atd \
+ atdgen \
+ atdgen-codec-runtime \
+ atdgen-runtime \
+ atdj \
+ atdpy \
+ atds \
+ atdts
+
+ dodoc CHANGES.md CONTRIBUTING.md README.md
+}
diff --git a/dev-ml/atd/atd-2.16.0-r1.ebuild b/dev-ml/atd/atd-2.16.0-r1.ebuild
new file mode 100644
index 000000000000..9a13f2d8a804
--- /dev/null
+++ b/dev-ml/atd/atd-2.16.0-r1.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Static types for JSON APIs"
+HOMEPAGE="https://github.com/ahrefs/atd/"
+SRC_URI="https://github.com/ahrefs/atd/archive/${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+RDEPEND="
+ dev-ml/biniou:=
+ dev-ml/cmdliner:=
+ dev-ml/easy-format:=
+ dev-ml/menhir:=
+ dev-ml/re:=
+ dev-ml/yojson:=
+"
+DEPEND="
+ ${RDEPEND}
+"
+
+DUNE_PACKAGES=(
+ atd
+ atdgen
+ atdgen-codec-runtime
+ atdgen-runtime
+ atdj
+ atdpy
+ atds
+ atdts
+)
+
+src_compile() {
+ dune-compile "${DUNE_PACKAGES[@]}"
+}
+
+src_test() {
+ nonfatal dune_src_test
+}
+
+src_install() {
+ dune-install "${DUNE_PACKAGES[@]}"
+ einstalldocs
+}
diff --git a/dev-ml/atd/metadata.xml b/dev-ml/atd/metadata.xml
new file mode 100644
index 000000000000..f3792792f0b5
--- /dev/null
+++ b/dev-ml/atd/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <longdescription>
+ ATD stands for Adaptable Type Definitions. It is a syntax for defining
+ cross-language data types. It is used as input to generate efficient and
+ type-safe serializers, deserializers and validators.
+ </longdescription>
+ <upstream>
+ <bugs-to>https://github.com/ahrefs/atd/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/base/Manifest b/dev-ml/base/Manifest
new file mode 100644
index 000000000000..7d432b95c643
--- /dev/null
+++ b/dev-ml/base/Manifest
@@ -0,0 +1,2 @@
+DIST base-0.16.3.tar.gz 442632 BLAKE2B 533a04b197bb1065a8b8772aa227bbe3be2c47d536722dfa7d1df366ad05e40fdd47f3a842654ee9bde1e3527ff34adaf155057af68596d4c02c8108505c9108 SHA512 69380ed392faf4495459f97f70a10a6959fce71d2e6ba093472fc272141646307fd7872407de855dfa48ef0435f6587eae5aa50f4a67eac40a9e1946d0c3c070
+DIST base-0.17.3.tar.gz 478230 BLAKE2B 427252d33c357d5e4a06a65c2829a743f2de80ae7b02ecd5ff42f356cf933dd1934daf2e26a5ff00daaf0eef71bb8cacaab8d1eda96898ea806ef473a29e6154 SHA512 628610caff7e124631870fa1e29661caac28bdfdb18750ee43b868037da3d65d6dd9023b4be7c4c52405679efb5e865a6632d95606a22b28a36636a6bf706ef3
diff --git a/dev-ml/base/base-0.16.3-r1.ebuild b/dev-ml/base/base-0.16.3-r1.ebuild
new file mode 100644
index 000000000000..3bf97db14ae3
--- /dev/null
+++ b/dev-ml/base/base-0.16.3-r1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Standard library for OCaml"
+HOMEPAGE="https://github.com/janestreet/base"
+SRC_URI="https://github.com/janestreet/base/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.14.0
+ =dev-ml/sexplib0-0.16*:=[ocamlopt?]
+ dev-ml/dune-configurator:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/base/base-0.17.3.ebuild b/dev-ml/base/base-0.17.3.ebuild
new file mode 100644
index 000000000000..a145f825bd30
--- /dev/null
+++ b/dev-ml/base/base-0.17.3.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Standard library for OCaml"
+HOMEPAGE="https://github.com/janestreet/base"
+SRC_URI="https://github.com/janestreet/base/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/sexplib0-${JSM}*:=[ocamlopt?]
+ >=dev-ml/dune-configurator-3:=[ocamlopt?]
+ =dev-ml/ocaml_intrinsics_kernel-${JSM}*:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/base/metadata.xml b/dev-ml/base/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/base/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/base_bigstring/Manifest b/dev-ml/base_bigstring/Manifest
new file mode 100644
index 000000000000..83aaa0f26db9
--- /dev/null
+++ b/dev-ml/base_bigstring/Manifest
@@ -0,0 +1,2 @@
+DIST base_bigstring-0.16.0.tar.gz 19275 BLAKE2B 380b82c397f8cc8ddc6c5d33ebab13845eedbafc8c479eb2a03289d0bea929a0b442363729f706d0ff886f1686ee2b7e31aac97e3f7477809f13a5b0eebcdccc SHA512 95297f201ed8229feb974e6389f2aa955391d4716d6bc81b9b8ea06daf2722a950bd623fd35267fcbcde064ec49a5e06f51ef5b12f5c30793da937ca1c3c8bf5
+DIST base_bigstring-0.17.0.tar.gz 20840 BLAKE2B 453ce6b9f794b013a8456fccd1d5ada237e88aac558d996c546cefb1318b33081da9ef76e08a95083a1e42192463e87ea8345be33d84bee83bc85bdf75f9a611 SHA512 8787dd092d2fc15c19002837bde91e0d86a23dfbff7aa34a6c51ec9fabfc7e66b9816986e9c7075a283dfe8b670e552968c979d7c9bd20f0543e85c1b42e54f2
diff --git a/dev-ml/base_bigstring/base_bigstring-0.16.0.ebuild b/dev-ml/base_bigstring/base_bigstring-0.16.0.ebuild
new file mode 100644
index 000000000000..6838cf05b374
--- /dev/null
+++ b/dev-ml/base_bigstring/base_bigstring-0.16.0.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="String type based on Bigarray, for use in I/O and C-bindings"
+HOMEPAGE="https://github.com/janestreet/base_bigstring"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/base:${SLOT}
+ dev-ml/int_repr:${SLOT}
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/base_bigstring/base_bigstring-0.17.0-r1.ebuild b/dev-ml/base_bigstring/base_bigstring-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..0255f11191e8
--- /dev/null
+++ b/dev-ml/base_bigstring/base_bigstring-0.17.0-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="String type based on Bigarray, for use in I/O and C-bindings"
+HOMEPAGE="https://github.com/janestreet/base_bigstring"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/int_repr-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_jane-${JSM}:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/base_bigstring/metadata.xml b/dev-ml/base_bigstring/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/base_bigstring/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/base_quickcheck/Manifest b/dev-ml/base_quickcheck/Manifest
new file mode 100644
index 000000000000..92d33257d357
--- /dev/null
+++ b/dev-ml/base_quickcheck/Manifest
@@ -0,0 +1,3 @@
+DIST base_quickcheck-0.16.0.tar.gz 76738 BLAKE2B b54fac86332bfe06b767345898c2e1a7a6f70de26cb06d16467d634eee3117d7ab571f611d17f692776c519dfa4ab7de9c948b08e44016e1e05fdff565a16246 SHA512 c859f2982140ec72b3377e3f167117df43f8cb14b62d3949e92ecf479cb27b4c31bb2dfa9111da24ce42f969452582ba076aef868d304b97c08f2918759cc291
+DIST base_quickcheck-0.17.0.tar.gz 67016 BLAKE2B acd54bfeb74a3b7f8f72fdcc4b92c8dd161f87f82bb6eca175d15947b6a04b9e13015c10562a5ce1a93c6019498d7c2f9f65dc2a7a5bbfcd78011e5731aabb04 SHA512 66503fd6c94bc7f68bf24ce554cefc681df0fd54b9d72539de51047a193143153f0332d81ee2c94e860b7c6953266ce79b64ef32f904150b0c9c70f7c43069d4
+DIST base_quickcheck-0.17.1.tar.gz 67058 BLAKE2B 02ffc2a816a4e84e92d6839777ea429f9f06361ecbc5705481bc6c385a5ce80c04f8eb5d0a34f04838dce983f70a1bb15c20cc5b48917c753cca076fe36a8982 SHA512 d345b0333508f6f49fe636455139e563b0594bd2cf56534d2f42ed083906e41bb4e009996ed7db8989d8409899d25cfcdbd71021260486c310f7e0fd63df56d9
diff --git a/dev-ml/base_quickcheck/base_quickcheck-0.16.0.ebuild b/dev-ml/base_quickcheck/base_quickcheck-0.16.0.ebuild
new file mode 100644
index 000000000000..a7f6d305fb31
--- /dev/null
+++ b/dev-ml/base_quickcheck/base_quickcheck-0.16.0.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Randomized testing framework, designed for compatibility with Base"
+HOMEPAGE="https://github.com/janestreet/base_quickcheck"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/base:${SLOT}
+ dev-ml/fieldslib:=
+ dev-ml/ppx_base:${SLOT}
+ dev-ml/ppx_compare:=
+ dev-ml/ppx_cold:=
+ dev-ml/ppx_enumerate:=
+ dev-ml/ppx_fields_conv:${SLOT}
+ dev-ml/ppx_globalize:=
+ dev-ml/ppx_let:${SLOT}
+ dev-ml/ppx_hash:=
+ dev-ml/ppx_here:=
+ dev-ml/ppx_sexp_conv:=
+ dev-ml/ppx_sexp_message:${SLOT}
+ dev-ml/ppx_sexp_value:${SLOT}
+ dev-ml/splittable_random:${SLOT}
+ >=dev-ml/ppxlib-0.28.0:=
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/base_quickcheck/base_quickcheck-0.17.0-r2.ebuild b/dev-ml/base_quickcheck/base_quickcheck-0.17.0-r2.ebuild
new file mode 100644
index 000000000000..fc1c89d5864a
--- /dev/null
+++ b/dev-ml/base_quickcheck/base_quickcheck-0.17.0-r2.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Randomized testing framework, designed for compatibility with Base"
+HOMEPAGE="https://github.com/janestreet/base_quickcheck"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_base-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_fields_conv-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_let-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_sexp_message-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_sexp_value-${JSM}:=[ocamlopt?]
+ =dev-ml/ppxlib_jane-${JSM}:=[ocamlopt?]
+ =dev-ml/splittable_random-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+ <dev-ml/ppxlib-0.36.0
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/base_quickcheck/base_quickcheck-0.17.1.ebuild b/dev-ml/base_quickcheck/base_quickcheck-0.17.1.ebuild
new file mode 100644
index 000000000000..2404ffdbe74f
--- /dev/null
+++ b/dev-ml/base_quickcheck/base_quickcheck-0.17.1.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Randomized testing framework, designed for compatibility with Base"
+HOMEPAGE="https://github.com/janestreet/base_quickcheck"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_base-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_compare-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_cold-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_enumerate-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_fields_conv-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_globalize-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppx_globalize-0.17.2
+ =dev-ml/ppx_hash-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_here-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_let-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppx_let-0.17.1
+ =dev-ml/ppx_sexp_conv-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppx_sexp_conv-0.17.1
+ =dev-ml/ppx_sexp_message-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_sexp_value-${JSM}:=[ocamlopt?]
+ =dev-ml/ppxlib_jane-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib_jane-0.17.4
+ =dev-ml/splittable_random-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.36.0:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/base_quickcheck/metadata.xml b/dev-ml/base_quickcheck/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/base_quickcheck/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/batteries/Manifest b/dev-ml/batteries/Manifest
new file mode 100644
index 000000000000..8dbec2f6d3f8
--- /dev/null
+++ b/dev-ml/batteries/Manifest
@@ -0,0 +1,2 @@
+DIST batteries-3.10.0.tar.gz 795346 BLAKE2B ff4a46641dd4eb9bd1fcab68f0a30fb3af40b896941aa44eba2ef3e1a499b3be20c19a5058ce304766807a7b9e328dc0adc602395de30ef97dc9d3f3f9d4100c SHA512 2be9e9e709aa0d261c969409017355313c3edd1f0479f61757f6f57562a0ed78dba0c3c873ec7ef8cf10c9b872ba08b92b07b9a120f287fe1c6ab864ac8f787c
+DIST batteries-3.9.0.tar.gz 795015 BLAKE2B 62ea499848267117be962fe23f5ad1f4f860799d591af82e0ca3ef5fd14a8c5ac38329f55456f5aba9e0f7ba0c49af8316d1ffe61c8daa9165e123e5537b60aa SHA512 55975b62c26f6db77433a3ac31f97af609fc6789bb62ac38b267249c78fd44ff37fe81901f1cf560857b9493a6046dd37b0d1c0234c66bd59e52843aac3ce6cb
diff --git a/dev-ml/batteries/batteries-3.10.0.ebuild b/dev-ml/batteries/batteries-3.10.0.ebuild
new file mode 100644
index 000000000000..f7c9911d8bb4
--- /dev/null
+++ b/dev-ml/batteries/batteries-3.10.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2021-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="A community-maintained standard library extension"
+HOMEPAGE="https://github.com/ocaml-batteries-team/batteries-included/"
+SRC_URI="https://github.com/ocaml-batteries-team/batteries-included/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+S="${WORKDIR}"/batteries-included-${PV}
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+RDEPEND="
+ dev-ml/camlp-streams:=[ocamlopt?]
+ dev-ml/num:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/batteries/batteries-3.9.0.ebuild b/dev-ml/batteries/batteries-3.9.0.ebuild
new file mode 100644
index 000000000000..f7c9911d8bb4
--- /dev/null
+++ b/dev-ml/batteries/batteries-3.9.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2021-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="A community-maintained standard library extension"
+HOMEPAGE="https://github.com/ocaml-batteries-team/batteries-included/"
+SRC_URI="https://github.com/ocaml-batteries-team/batteries-included/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+S="${WORKDIR}"/batteries-included-${PV}
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+RDEPEND="
+ dev-ml/camlp-streams:=[ocamlopt?]
+ dev-ml/num:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/batteries/metadata.xml b/dev-ml/batteries/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/batteries/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/bigarray-compat/Manifest b/dev-ml/bigarray-compat/Manifest
new file mode 100644
index 000000000000..6993333221a7
--- /dev/null
+++ b/dev-ml/bigarray-compat/Manifest
@@ -0,0 +1,2 @@
+DIST bigarray-compat-1.0.0.tar.gz 1385 BLAKE2B afa38fd206de8738db51742467b95df4aec3e4e713c946c2c1d041da7e19483bdb53dca440b50c9c1b3c3a5fd7ac71a63ccfe74a14a5743f10f35429838a1c14 SHA512 c365fee15582aca35d7b05268cde29e54774ad7df7be56762b4aad78ca1409d4326ad3b34af0f1cc2c7b872837290a9cd9ff43b47987c03bba7bba32fe8a030f
+DIST bigarray-compat-1.1.0.tar.gz 2046 BLAKE2B a42ca96452106920a26e8cc95e1f31d887af57687243b6896f4ac80091c78c590ee37e7291c2319b5d9ef3f0fd72b8add463e2ef11f830cee169451f34930c1f SHA512 bbd9c2b319930db832ae8d41844ef81e74ced9f745f32981f2efcc9777220d55e1e5d6dc2965e9e1a6ed5e0d56ad27c672289f8dc28fbe2658f3230cbda5a800
diff --git a/dev-ml/bigarray-compat/bigarray-compat-1.0.0.ebuild b/dev-ml/bigarray-compat/bigarray-compat-1.0.0.ebuild
new file mode 100644
index 000000000000..d3b997366abe
--- /dev/null
+++ b/dev-ml/bigarray-compat/bigarray-compat-1.0.0.ebuild
@@ -0,0 +1,15 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="Compatibility library to use Stdlib.Bigarray when possible"
+HOMEPAGE="https://github.com/mirage/bigarray-compat"
+SRC_URI="https://github.com/mirage/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+IUSE="+ocamlopt"
diff --git a/dev-ml/bigarray-compat/bigarray-compat-1.1.0.ebuild b/dev-ml/bigarray-compat/bigarray-compat-1.1.0.ebuild
new file mode 100644
index 000000000000..bfcd9e9ea3ee
--- /dev/null
+++ b/dev-ml/bigarray-compat/bigarray-compat-1.1.0.ebuild
@@ -0,0 +1,15 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="Compatibility library to use Stdlib.Bigarray when possible"
+HOMEPAGE="https://github.com/mirage/bigarray-compat"
+SRC_URI="https://github.com/mirage/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
diff --git a/dev-ml/bigarray-compat/metadata.xml b/dev-ml/bigarray-compat/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/bigarray-compat/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/bigstringaf/Manifest b/dev-ml/bigstringaf/Manifest
new file mode 100644
index 000000000000..436d090ee9e4
--- /dev/null
+++ b/dev-ml/bigstringaf/Manifest
@@ -0,0 +1 @@
+DIST bigstringaf-0.10.0.tar.gz 12175 BLAKE2B 15c6ea44b824afee2ba33178ecd34af5bb6e01506960dab4a87a95bdc877f2c9c0e5cbb25c5fbd86bb1539dff3eb4c2b6a3bb2e9c5197e9371164e61b5eba6a9 SHA512 b51c756925d7016ffd7eac49e69393a1897391ca2685a8c30c7b6e3917b4d66c9400b49e8986d0f03329197b95ad52e096ff83dea5e03571cb5bc3d9a5170602
diff --git a/dev-ml/bigstringaf/bigstringaf-0.10.0.ebuild b/dev-ml/bigstringaf/bigstringaf-0.10.0.ebuild
new file mode 100644
index 000000000000..06e034859094
--- /dev/null
+++ b/dev-ml/bigstringaf/bigstringaf-0.10.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit dune
+
+DESCRIPTION="Bigstring intrinsics and fast blits based on memcpy/memmove"
+HOMEPAGE="https://github.com/inhabitedtype/bigstringaf"
+SRC_URI="https://github.com/inhabitedtype/${PN}/archive/${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 arm64 x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ dev-ml/dune-configurator
+ test? ( dev-ml/alcotest )
+"
diff --git a/dev-ml/bigstringaf/metadata.xml b/dev-ml/bigstringaf/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/bigstringaf/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/bin_prot/Manifest b/dev-ml/bin_prot/Manifest
new file mode 100644
index 000000000000..c170e87b389f
--- /dev/null
+++ b/dev-ml/bin_prot/Manifest
@@ -0,0 +1,2 @@
+DIST bin_prot-0.16.0.tar.gz 343886 BLAKE2B f13574daba74d813810afb844ebd300803279fb5ab0c067b64dc13230a0cf5d88b46809892465b7bea22e41696c962de40f5cb7c05099a98de7c01f0a7f96240 SHA512 e6e2b4c2984fc89fc7ceb57cae7b7f796e6a0441e4d37da1b6bc1f167d8900b1c4bc0174d5d9de5669b7539d9256293365242e9875ef78fccbda226635c63b5d
+DIST bin_prot-0.17.0.tar.gz 351860 BLAKE2B bad3203bc42f6f95550a29392fe419d3159614743736ee3bf5855765330c2549575d7af8d42f3534be37fb346d43aa56667d71af328c7ea8ba6c4a64006f695a SHA512 02047b9562e4bc6abd4c19afcbd236a05807e6fc704c8a27436a55c27e7ce2df7d928fa3616727ff71d2dc9b3c9c04d06b9e0337e90fc75dd83ae34b4a0abfbe
diff --git a/dev-ml/bin_prot/bin_prot-0.16.0.ebuild b/dev-ml/bin_prot/bin_prot-0.16.0.ebuild
new file mode 100644
index 000000000000..021f0eb79190
--- /dev/null
+++ b/dev-ml/bin_prot/bin_prot-0.16.0.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Binary protocol generator"
+HOMEPAGE="https://github.com/janestreet/bin_prot"
+SRC_URI="https://github.com/janestreet/bin_prot/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/base:${SLOT}
+ dev-ml/findlib:=
+ dev-ml/ppx_compare:${SLOT}
+ dev-ml/ppx_custom_printf:${SLOT}
+ dev-ml/ppx_fields_conv:${SLOT}
+ dev-ml/ppx_optcomp:${SLOT}
+ dev-ml/ppx_sexp_conv:${SLOT}
+ dev-ml/ppx_stable_witness:${SLOT}
+ dev-ml/ppx_variants_conv:${SLOT}
+ dev-ml/variantslib:=
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/bin_prot/bin_prot-0.17.0-r1.ebuild b/dev-ml/bin_prot/bin_prot-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..c052c1269e28
--- /dev/null
+++ b/dev-ml/bin_prot/bin_prot-0.17.0-r1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Binary protocol generator"
+HOMEPAGE="https://github.com/janestreet/bin_prot"
+SRC_URI="https://github.com/janestreet/bin_prot/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_base-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_compare-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_custom_printf-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_fields_conv-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_optcomp-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_sexp_conv-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_stable_witness-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_variants_conv-${JSM}:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/bin_prot/metadata.xml b/dev-ml/bin_prot/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/bin_prot/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/biniou/Manifest b/dev-ml/biniou/Manifest
new file mode 100644
index 000000000000..f031d91b5bfc
--- /dev/null
+++ b/dev-ml/biniou/Manifest
@@ -0,0 +1 @@
+DIST biniou-1.2.2.tar.gz 24054 BLAKE2B e4ee5f28348cacbf5cc523d104188c003bca0deb04af188131c4ceeed36b9947a300fc866a51b3e6d11f15646fecc799beeec90dc8badb3dacf147a3190b62f5 SHA512 3e70b36e7e536ce65b6c2283b1372bd99207f3b55aa8c90266524e3ba028928b091595f5b92ba9870f915895673f4dca72963db71659deaadc129b7feb409cfc
diff --git a/dev-ml/biniou/biniou-1.2.2-r1.ebuild b/dev-ml/biniou/biniou-1.2.2-r1.ebuild
new file mode 100644
index 000000000000..c28d614e204e
--- /dev/null
+++ b/dev-ml/biniou/biniou-1.2.2-r1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="A binary data serialization format inspired by JSON for OCaml"
+HOMEPAGE="https://github.com/ocaml-community/biniou/"
+SRC_URI="https://github.com/ocaml-community/biniou/archive/${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="amd64"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ dev-ml/camlp-streams:=[ocamlopt?]
+ dev-ml/easy-format:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/biniou/metadata.xml b/dev-ml/biniou/metadata.xml
new file mode 100644
index 000000000000..e19be5dd9d35
--- /dev/null
+++ b/dev-ml/biniou/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <name>François-Xavier Carton</name>
+ <email>fx.carton91@gmail.com</email>
+ </maintainer>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/mjambon/biniou/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/bos/Manifest b/dev-ml/bos/Manifest
new file mode 100644
index 000000000000..3f2fdf2fcb3d
--- /dev/null
+++ b/dev-ml/bos/Manifest
@@ -0,0 +1 @@
+DIST bos-0.2.1.tbz 42330 BLAKE2B c376428ef055555f09e4af24391b7bbcc388af955ac5192bd4c3999325757812a87b54e518fa2d5a3a81d1e8d0d65f2cb3b69d5f186129136855af7766e9ac13 SHA512 8daeb8a4c2dd1f2460f6274ada19f4f1b6ebe875ff83a938c93418ce0e6bdb74b8afc5c9a7d410c1c9df2dad030e4fa276b6ed2da580639484e8b5bc92610b1d
diff --git a/dev-ml/bos/bos-0.2.1.ebuild b/dev-ml/bos/bos-0.2.1.ebuild
new file mode 100644
index 000000000000..165c9b986192
--- /dev/null
+++ b/dev-ml/bos/bos-0.2.1.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="Basic OS interaction for OCaml"
+HOMEPAGE="https://erratique.ch/software/bos https://github.com/dbuenzli/bos"
+SRC_URI="https://erratique.ch/software/bos/releases/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="dev-lang/ocaml:=
+ dev-ml/rresult:=
+ dev-ml/astring:=
+ dev-ml/fpath:=
+ dev-ml/fmt:=
+ dev-ml/mtime
+ dev-ml/logs:=[fmt]"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-ml/findlib
+ dev-ml/ocamlbuild
+ dev-ml/topkg"
+
+QA_FLAGS_IGNORED='.*'
+
+src_compile() {
+ ocaml pkg/pkg.ml build --tests $(usex test true false) || die
+}
+
+src_test() {
+ ocaml pkg/pkg.ml test || die
+}
+
+src_install() {
+ opam-installer -i \
+ --prefix="${ED}/usr" \
+ --libdir="${D}/$(ocamlc -where)" \
+ --docdir="${ED}/usr/share/doc/${PF}" \
+ ${PN}.install || die
+}
diff --git a/dev-ml/bos/metadata.xml b/dev-ml/bos/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/bos/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/cairo2/Manifest b/dev-ml/cairo2/Manifest
new file mode 100644
index 000000000000..e63d7aad8dce
--- /dev/null
+++ b/dev-ml/cairo2/Manifest
@@ -0,0 +1,2 @@
+DIST cairo2-0.6.4.tbz 90735 BLAKE2B d0e6617a1de99050553ebbb0ea9fa1567051923378b164f8ff073700cbda7275a7c5dc97ed74d9f891b18fe4a051b8da81450da4946364ea7c6e53ec10cc8ba0 SHA512 2fd755b32253a4c441146fb41d13bf7ad4ce3828bc479ece296fb58350e20c7349c22457ad99fa080407b5150ce337a753221043f18b7b641f4c5bc98e37e799
+DIST cairo2-0.6.5.tbz 90746 BLAKE2B bbabef5ab1dc455306f85351519c1f7a9a92df994ef02c151566b2698f507e603195e05fd5c3cba4a42590cfada062d78f0b10cc7c94779b073b95f842374a81 SHA512 9c13aaf0c716ac2fdec90d6dcb90a654c051cb9aa896e9333b819e68669efbf3ee7bb147882d45dd5b86db3fd868158bce46f46c5c8960f9add523d64342f704
diff --git a/dev-ml/cairo2/cairo2-0.6.4.ebuild b/dev-ml/cairo2/cairo2-0.6.4.ebuild
new file mode 100644
index 000000000000..19d4414fad4a
--- /dev/null
+++ b/dev-ml/cairo2/cairo2-0.6.4.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2019-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Binding to Cairo, a 2D Vector Graphics Library"
+HOMEPAGE="https://github.com/Chris00/ocaml-cairo"
+SRC_URI="https://github.com/Chris00/ocaml-cairo/releases/download/${PV}/cairo2-${PV}.tbz"
+
+LICENSE="LGPL-3"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ x11-libs/cairo:=[svg(+)]
+ dev-ml/dune-configurator:=
+"
+RDEPEND="${DEPEND}"
+BDEPEND=""
+
+# >>> Test phase: dev-ml/cairo2-0.6.1
+# image_create alias tests/runtest (got signal SEGV)
+# (cd _build/default/tests && ./image_create.exe)
+# DESTROY bigarray 'data'
+# Done: 70/72 (jobs: 1) * ERROR: dev-ml/cairo2-0.6.1::x-portage failed (test phase):
+RESTRICT=test
+
+# Remove lablgtk2 dep https://github.com/Chris00/ocaml-cairo/issues/21
+# Fix compiler warnings, from: https://github.com/Chris00/ocaml-cairo/pull/22
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.6.1-ignore-gtk-and-pango.patch
+)
diff --git a/dev-ml/cairo2/cairo2-0.6.5.ebuild b/dev-ml/cairo2/cairo2-0.6.5.ebuild
new file mode 100644
index 000000000000..6f95c8db41f0
--- /dev/null
+++ b/dev-ml/cairo2/cairo2-0.6.5.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2019-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Binding to Cairo, a 2D Vector Graphics Library"
+HOMEPAGE="https://github.com/Chris00/ocaml-cairo"
+SRC_URI="https://github.com/Chris00/ocaml-cairo/releases/download/${PV}/cairo2-${PV}.tbz"
+
+LICENSE="LGPL-3"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ x11-libs/cairo:=[svg(+)]
+ dev-ml/dune-configurator:=
+"
+RDEPEND="${DEPEND}"
+
+# >>> Test phase: dev-ml/cairo2-0.6.1
+# image_create alias tests/runtest (got signal SEGV)
+# (cd _build/default/tests && ./image_create.exe)
+# DESTROY bigarray 'data'
+# Done: 70/72 (jobs: 1) * ERROR: dev-ml/cairo2-0.6.1::x-portage failed (test phase):
+RESTRICT=test
+
+# Remove lablgtk2 dep https://github.com/Chris00/ocaml-cairo/issues/21
+# Fix compiler warnings, from: https://github.com/Chris00/ocaml-cairo/pull/22
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.6.1-ignore-gtk-and-pango.patch
+)
diff --git a/dev-ml/cairo2/files/cairo2-0.6.1-ignore-gtk-and-pango.patch b/dev-ml/cairo2/files/cairo2-0.6.1-ignore-gtk-and-pango.patch
new file mode 100644
index 000000000000..90fc00f1ddcf
--- /dev/null
+++ b/dev-ml/cairo2/files/cairo2-0.6.1-ignore-gtk-and-pango.patch
@@ -0,0 +1,82 @@
+From: Debian OCaml Maintainers <debian-ocaml-maint@lists.debian.org>
+Date: Sat, 15 Aug 2020 08:56:03 +0200
+Subject: ignore-gtk-and-pango
+
+===================================================================
+---
+ examples-gtk/dune | 8 --------
+ examples-pango/dune | 8 --------
+ gtk/dune | 13 -------------
+ pango/dune | 13 -------------
+ 4 files changed, 42 deletions(-)
+ delete mode 100644 examples-gtk/dune
+ delete mode 100644 examples-pango/dune
+ delete mode 100644 gtk/dune
+ delete mode 100644 pango/dune
+
+diff --git a/examples-gtk/dune b/examples-gtk/dune
+deleted file mode 100644
+index 10d8fcb..0000000
+--- a/examples-gtk/dune
++++ /dev/null
+@@ -1,8 +0,0 @@
+-
+-(executables
+- (names gtk_demo)
+-(libraries cairo2-gtk))
+-
+-(alias
+- (name examples)
+- (deps gtk_demo.exe))
+diff --git a/examples-pango/dune b/examples-pango/dune
+deleted file mode 100644
+index c8ae49e..0000000
+--- a/examples-pango/dune
++++ /dev/null
+@@ -1,8 +0,0 @@
+-
+-(executables
+- (names pango_demo rendering)
+- (libraries cairo2-pango))
+-
+-(alias
+- (name examples)
+- (deps pango_demo.exe rendering.exe))
+diff --git a/gtk/dune b/gtk/dune
+deleted file mode 100644
+index 6ef367e..0000000
+--- a/gtk/dune
++++ /dev/null
+@@ -1,13 +0,0 @@
+-
+-(library
+- (name cairo_gtk)
+- (public_name cairo2-gtk)
+- (c_names cairo_gtk_stubs)
+- (c_flags :standard (:include c_flags.sexp))
+- (c_library_flags :standard (:include c_library_flags.sexp))
+- (libraries threads lablgtk2 cairo2)
+- (synopsis "Rendering Cairo on Gtk canvas"))
+-
+-(rule
+- (targets c_flags.sexp c_library_flags.sexp)
+- (action (run ../config/discover.exe --gtk)))
+diff --git a/pango/dune b/pango/dune
+deleted file mode 100644
+index 816cc49..0000000
+--- a/pango/dune
++++ /dev/null
+@@ -1,13 +0,0 @@
+-
+-(library
+- (name cairo_pango)
+- (public_name cairo2-pango)
+- (c_names cairo_pango_stubs)
+- (c_flags :standard (:include c_flags.sexp))
+- (c_library_flags :standard (:include c_library_flags.sexp))
+- (libraries threads lablgtk2 cairo2)
+- (synopsis "Interface between Cairo and Pango"))
+-
+-(rule
+- (targets c_flags.sexp c_library_flags.sexp)
+- (action (run ../config/discover.exe --gtk)))
diff --git a/dev-ml/cairo2/metadata.xml b/dev-ml/cairo2/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/cairo2/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/calendar/Manifest b/dev-ml/calendar/Manifest
new file mode 100644
index 000000000000..2c3f68bfe5cc
--- /dev/null
+++ b/dev-ml/calendar/Manifest
@@ -0,0 +1 @@
+DIST calendar-2.04.tar.gz 271522 BLAKE2B e69d129324687cbee55c2217c1c7a89ce0817b60aff3eba8e26d94736e4cc771cf031c66857bc3f6438b9b389030e6f6ff54fd55d6734bef4c5ece0bc45ae419 SHA512 3941768428eda47f47912846cc2921ee82c722bda7cf6095c1c8bdcfebc19bb8f64ebb1a25475396d2a49c186b83421af63602a54a261684117b1c036a66cf3d
diff --git a/dev-ml/calendar/calendar-2.04-r1.ebuild b/dev-ml/calendar/calendar-2.04-r1.ebuild
new file mode 100644
index 000000000000..ee9f5e211003
--- /dev/null
+++ b/dev-ml/calendar/calendar-2.04-r1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit findlib
+
+DESCRIPTION="Ocaml library to handle dates and time"
+HOMEPAGE="https://forge.ocamlcore.org/projects/calendar/"
+SRC_URI="https://download.ocamlcore.org/${PN}/${PN}/${PV}/${P}.tar.gz"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="~amd64"
+IUSE="doc"
+
+DEPEND="<dev-lang/ocaml-5:=[ocamlopt]"
+RDEPEND="${DEPEND}"
+
+src_compile() {
+ emake
+ use doc && emake doc
+}
+
+src_test() {
+ emake tests
+}
+
+src_install() {
+ findlib_src_install
+ dodoc README CHANGES
+
+ if use doc ; then
+ docinto html
+ dodoc -r doc
+ fi
+}
diff --git a/dev-ml/calendar/metadata.xml b/dev-ml/calendar/metadata.xml
new file mode 100644
index 000000000000..5f33304011d5
--- /dev/null
+++ b/dev-ml/calendar/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/calendars/Manifest b/dev-ml/calendars/Manifest
new file mode 100644
index 000000000000..141eeb7e0d28
--- /dev/null
+++ b/dev-ml/calendars/Manifest
@@ -0,0 +1,2 @@
+DIST calendars-1.0.0.tar.gz 7374 BLAKE2B 8792bc8b9996ec4f71eec6d34570d5b3d4fa17ea40be3dbc6cb379f0318ae01897b50df20e8cbfe5d91450078231155547bcb2a25b1789efc0e6c9993b3d2c3d SHA512 84bcc9c96eab1a1821699ebd90ab04a14c3afa54d9f112001a5bde8efb3b8fe29baf6da133dde561e9ed290fec5babd673818e490779986725f6c5ab644c2391
+DIST calendars-2.0.0.tar.gz 17278 BLAKE2B d88ccb00768f7a7a26b17e82c7dbf561a5fd2d449a4ad8ddcf76de28b44edf78233d521e0534d092d9c13116239b94f103c18321562ecfbb7fcbc51fbaeb37da SHA512 a5173392af5c5e6dcbf02fae20ba484667210758f6be64686e0b3874343b4308500a7aca0d43af0b97931d298761d1e2aeceb2ffabd1387f256c9d1561f42939
diff --git a/dev-ml/calendars/calendars-1.0.0.ebuild b/dev-ml/calendars/calendars-1.0.0.ebuild
new file mode 100644
index 000000000000..3646eda51111
--- /dev/null
+++ b/dev-ml/calendars/calendars-1.0.0.ebuild
@@ -0,0 +1,19 @@
+# Copyright 2019-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="Convert dates between gregorian/julian/french/hebrew calendars"
+HOMEPAGE="https://github.com/geneweb/calendars"
+SRC_URI="https://github.com/geneweb/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm64 x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+DEPEND="test? ( dev-ml/ounit2 )"
diff --git a/dev-ml/calendars/calendars-2.0.0.ebuild b/dev-ml/calendars/calendars-2.0.0.ebuild
new file mode 100644
index 000000000000..2fadc06b79e1
--- /dev/null
+++ b/dev-ml/calendars/calendars-2.0.0.ebuild
@@ -0,0 +1,18 @@
+# Copyright 2019-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Convert dates between gregorian/julian/french/hebrew calendars"
+HOMEPAGE="https://github.com/geneweb/calendars"
+SRC_URI="https://github.com/geneweb/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+DEPEND="test? ( dev-ml/alcotest )"
diff --git a/dev-ml/calendars/metadata.xml b/dev-ml/calendars/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/calendars/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/camlbz2/Manifest b/dev-ml/camlbz2/Manifest
new file mode 100644
index 000000000000..3ea8b3ccddaa
--- /dev/null
+++ b/dev-ml/camlbz2/Manifest
@@ -0,0 +1 @@
+DIST camlbz2-0.8.0.tar.bz2 16560 BLAKE2B 818a656e0bd61669341f5dafa9adcaf14de13e452fd29ccf91a1216fdda0fb3f61b069781613e65794079d89fb666ed5dbfbdce91a3b39f64963fc61173596fa SHA512 5d8f8ff20676d77aa9c418bd8ba8a3c14aeb6e44e2d458f03ead29f703c97f3f7b5999e2b0a3fc3c78c5a77e7fbd55e5f8c8aeed154f4d46030f7f92f7f1f38a
diff --git a/dev-ml/camlbz2/camlbz2-0.8.0-r1.ebuild b/dev-ml/camlbz2/camlbz2-0.8.0-r1.ebuild
new file mode 100644
index 000000000000..d176891871ea
--- /dev/null
+++ b/dev-ml/camlbz2/camlbz2-0.8.0-r1.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DUNE_PKG_NAME=bz2
+inherit dune
+
+DESCRIPTION="OCaml bindings for libbz (AKA, bzip2)"
+HOMEPAGE="https://gitlab.com/irill/camlbz2"
+SRC_URI="https://gitlab.com/irill/camlbz2/-/archive/${PV}/${P}.tar.bz2"
+
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="app-arch/bzip2
+ dev-ml/stdlib-shims:=[ocamlopt?]"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/camlbz2/metadata.xml b/dev-ml/camlbz2/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/camlbz2/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/camldbm/Manifest b/dev-ml/camldbm/Manifest
new file mode 100644
index 000000000000..170acb84fdfe
--- /dev/null
+++ b/dev-ml/camldbm/Manifest
@@ -0,0 +1 @@
+DIST camldbm-1.2.tar.gz 14823 BLAKE2B b9eda65c56440b1d13562e0d184474e585b13826038e77901961df475cbd73df39c9923e4f73c891252f17416e78acb3c3b42accf01dc5d6f51a72bafa930084 SHA512 56d317db420179f96a0f6a453f8a34ea16942f3ca5ed09dd6955517348dad281ad105b861378f1ebd01ec5c8a1c07d5e5db1ab4d255f9572ece64a86559705f0
diff --git a/dev-ml/camldbm/camldbm-1.2-r1.ebuild b/dev-ml/camldbm/camldbm-1.2-r1.ebuild
new file mode 100644
index 000000000000..c89a9f993656
--- /dev/null
+++ b/dev-ml/camldbm/camldbm-1.2-r1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit toolchain-funcs
+
+DESCRIPTION="OCaml binding to the NDBM/GDBM Unix databases"
+HOMEPAGE="https://github.com/ocaml/dbm"
+SRC_URI="https://github.com/ocaml/dbm/archive/${P}.tar.gz"
+S="${WORKDIR}/dbm-${P}"
+
+LICENSE="LGPL-2-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm ~ppc x86"
+
+DEPEND=">=sys-libs/gdbm-1.9.1-r2[berkdb]
+ <dev-lang/ocaml-5:=[ocamlopt]"
+RDEPEND="${DEPEND}"
+
+QA_FLAGS_IGNORED=(
+ /usr/'lib.*'/ocaml/dbm.cmxs
+ /usr/'lib.*'/ocaml/stublibs/dllcamldbm.so
+)
+
+src_prepare() {
+ sed -i \
+ -e "s|ranlib|$(tc-getRANLIB)|g" \
+ Makefile \
+ || die
+ default
+}
+
+src_install() {
+ dodir "$(ocamlc -where)/stublibs" # required and makefile does not create it
+ emake LIBDIR="${D}/$(ocamlc -where)" install
+}
diff --git a/dev-ml/camldbm/metadata.xml b/dev-ml/camldbm/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/camldbm/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/camlidl/Manifest b/dev-ml/camlidl/Manifest
new file mode 100644
index 000000000000..5119b3df0d9c
--- /dev/null
+++ b/dev-ml/camlidl/Manifest
@@ -0,0 +1,2 @@
+DIST camlidl112.tar.gz 182507 BLAKE2B 3a1e4f3f7341bb3e34397af995c660178850c9a774a44866f458cb7731e143e5e2252355c200c7d82f7d55d765749aa26105642027867623f0f6e3125f98c892 SHA512 b60b666c865bf923b1f2499238fd81232454a5d358960dd2038707bf71916d5dd7432044a01fa272e61cd2af6867aa23330f6f06398f213fd3e92072e1d784a1
+DIST camlidl113.tar.gz 183353 BLAKE2B bfbf1fcc8ca8ec6bbb55d38d48dd427d13e38917f3b74d00fb895419f0302f4b6caf16dea167aeeac35326ce116dc8620e9fa5024b1ddf9b25717956c6123ef0 SHA512 c9a33d6b49bf51f1957941bac591090e568ffc2d56b75ed777141ef4fd599c87ae968cdc473d8cee325083aa1a0bbc31215540f19fcfc8bb94f8db2ce9deb35c
diff --git a/dev-ml/camlidl/camlidl-1.12.ebuild b/dev-ml/camlidl/camlidl-1.12.ebuild
new file mode 100644
index 000000000000..066fc48692a9
--- /dev/null
+++ b/dev-ml/camlidl/camlidl-1.12.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="Stub code generator for OCaml"
+HOMEPAGE="https://github.com/xavierleroy/camlidl"
+SRC_URI="https://github.com/xavierleroy/${PN}/archive/${PN}$(ver_rs 0-1 '').tar.gz"
+
+S="${WORKDIR}"/${PN}-${PN}$(ver_rs 0-1 '')
+
+LICENSE="QPL-1.0 LGPL-2"
+SLOT="0/${PV}"
+KEYWORDS="amd64 ~ppc x86"
+
+DEPEND="dev-lang/ocaml:=[ocamlopt]"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/nowarn.patch"
+ "${FILESDIR}/${P}-destdir.patch"
+)
+
+src_prepare() {
+ sed -i \
+ -e "s|ar rc|$(tc-getAR) rc|g" \
+ runtime/Makefile.unix \
+ || die
+ default
+}
+
+src_compile() {
+ # Use the UNIX makefile
+ libdir=$(ocamlc -where || die)
+
+ sed -i -e "s|OCAMLLIB=.*|OCAMLLIB=${libdir}|" config/Makefile.unix || die
+ sed -i -e "s|BINDIR=.*|BINDIR=${EPREFIX}/usr/bin|" config/Makefile.unix || die
+ ln -s Makefile.unix config/Makefile || die
+
+ # Make
+ emake depend CPP="$(tc-getPROG CPP cpp)"
+ emake -j1 RANLIB="$(tc-getRANLIB)"
+}
+
+src_test() {
+ einfo "Running tests..."
+ cd tests || die
+ emake CCPP="$(tc-getCXX)" CC="$(tc-getCC)"
+}
+
+src_install() {
+ libdir=$(ocamlc -where || die)
+ dodir "${libdir#"${EPREFIX}"}"/caml
+
+ dodir /usr/bin
+ dodir /usr/$(get_libdir)/ocaml/stublibs
+ # Install
+ emake DESTDIR="${D}" BINDIR="${ED}/usr/bin" RANLIB="$(tc-getRANLIB)" install
+
+ # Add package header
+ sed -e "s/@VERSION/${P}/g" "${FILESDIR}/META.camlidl" > "${D}${libdir}/META.camlidl" || die
+
+ # Documentation
+ dodoc README Changes
+}
diff --git a/dev-ml/camlidl/camlidl-1.13.ebuild b/dev-ml/camlidl/camlidl-1.13.ebuild
new file mode 100644
index 000000000000..43700590ef1b
--- /dev/null
+++ b/dev-ml/camlidl/camlidl-1.13.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="Stub code generator for OCaml"
+HOMEPAGE="https://github.com/xavierleroy/camlidl"
+SRC_URI="https://github.com/xavierleroy/${PN}/archive/${PN}$(ver_rs 0-1 '').tar.gz"
+
+S="${WORKDIR}"/${PN}-${PN}$(ver_rs 0-1 '')
+
+LICENSE="QPL-1.0 LGPL-2"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~ppc ~x86"
+
+DEPEND="dev-lang/ocaml:=[ocamlopt]"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/nowarn.patch"
+)
+
+src_prepare() {
+ sed -i \
+ -e "s|ar rc|$(tc-getAR) rc|g" \
+ runtime/Makefile.unix \
+ || die
+ default
+}
+
+src_compile() {
+ # Use the UNIX makefile
+ libdir=$(ocamlc -where || die)
+
+ sed -i -e "s|OCAMLLIB=.*|OCAMLLIB=${libdir}|" config/Makefile.unix || die
+ sed -i -e "s|BINDIR=.*|BINDIR=${EPREFIX}/usr/bin|" config/Makefile.unix || die
+ ln -s Makefile.unix config/Makefile || die
+
+ # Make
+ emake depend CPP="$(tc-getPROG CPP cpp)"
+ emake -j1 RANLIB="$(tc-getRANLIB)"
+}
+
+src_test() {
+ einfo "Running tests..."
+ cd tests || die
+ emake CCPP="$(tc-getCXX)" CC="$(tc-getCC)"
+}
+
+src_install() {
+ libdir=$(ocamlc -where || die)
+ dodir "${libdir#"${EPREFIX}"}"/caml
+
+ dodir /usr/bin
+ dodir /usr/$(get_libdir)/ocaml/stublibs
+ # Install
+ emake DESTDIR="${D}" BINDIR="${ED}/usr/bin" RANLIB="$(tc-getRANLIB)" install
+
+ # Add package header
+ sed -e "s/@VERSION/${P}/g" "${FILESDIR}/META.camlidl" > "${D}${libdir}/META.camlidl" || die
+
+ # Documentation
+ dodoc README Changes
+}
diff --git a/dev-ml/camlidl/files/META.camlidl b/dev-ml/camlidl/files/META.camlidl
new file mode 100644
index 000000000000..b0aeaf231415
--- /dev/null
+++ b/dev-ml/camlidl/files/META.camlidl
@@ -0,0 +1,5 @@
+description = "Stub generator"
+version = "@VERSION"
+directory = "^"
+archive(byte) = "com.cma"
+archive(native) = "com.cmxa"
diff --git a/dev-ml/camlidl/files/camlidl-1.12-destdir.patch b/dev-ml/camlidl/files/camlidl-1.12-destdir.patch
new file mode 100644
index 000000000000..6f2b14f8f583
--- /dev/null
+++ b/dev-ml/camlidl/files/camlidl-1.12-destdir.patch
@@ -0,0 +1,32 @@
+--- a/runtime/Makefile.unix 2024-06-17 10:03:13.524360767 +0200
++++ b/runtime/Makefile.unix 2024-06-17 10:03:55.768905814 +0200
+@@ -26,10 +26,10 @@
+ # $(RANLIB) $@
+
+ install:
+- cp camlidlruntime.h $(OCAMLLIB)/caml/camlidlruntime.h
+- cp libcamlidl.a $(OCAMLLIB)/libcamlidl.a
+- cp dllcamlidl.so $(OCAMLLIB)/stublibs/dllcamlidl.so
+- cd $(OCAMLLIB); $(RANLIB) libcamlidl.a
++ cp camlidlruntime.h $(DESTDIR)$(OCAMLLIB)/caml/camlidlruntime.h
++ cp libcamlidl.a $(DESTDIR)$(OCAMLLIB)/libcamlidl.a
++ cp dllcamlidl.so $(DESTDIR)$(OCAMLLIB)/stublibs/dllcamlidl.so
++ cd $(DESTDIR)$(OCAMLLIB); $(RANLIB) libcamlidl.a
+
+ clean:
+ rm -f *.a *.o *.so
+--- a/lib/Makefile 2024-06-17 10:06:49.145036983 +0200
++++ b/lib/Makefile 2024-06-17 10:07:44.366441218 +0200
+@@ -40,10 +40,10 @@
+ $(OCAMLOPT) -a -o $(NATIVELIB) -cclib -lcamlidl $(NATIVEOBJS)
+
+ installbyt:
+- cp -p $(INTERFACES) $(BYTELIB) $(OCAMLLIB)
++ cp -p $(INTERFACES) $(BYTELIB) $(DESTDIR)$(OCAMLLIB)
+
+ installopt:
+- cp -p $(NATIVELIB) $(NATIVELIB:.cmxa=.$(LIBEXT)) $(OCAMLLIB)
++ cp -p $(NATIVELIB) $(NATIVELIB:.cmxa=.$(LIBEXT)) $(DESTDIR)$(OCAMLLIB)
+
+ .SUFFIXES: .mli .ml .cmi .cmo .cmx
+
diff --git a/dev-ml/camlidl/files/nowarn.patch b/dev-ml/camlidl/files/nowarn.patch
new file mode 100644
index 000000000000..3d9a5bbbf8af
--- /dev/null
+++ b/dev-ml/camlidl/files/nowarn.patch
@@ -0,0 +1,11 @@
+--- a/compiler/Makefile
++++ b/compiler/Makefile
+@@ -29,7 +29,7 @@ PROG=camlidl$(EXE)
+ all: $(PROG)
+
+ $(PROG): $(OBJS)
+- $(OCAMLC) -o $(PROG) $(OBJS)
++ $(OCAMLC) -w -a -o $(PROG) $(OBJS)
+
+ clean::
+ rm -f $(PROG)
diff --git a/dev-ml/camlidl/metadata.xml b/dev-ml/camlidl/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/camlidl/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/camlp-streams/Manifest b/dev-ml/camlp-streams/Manifest
new file mode 100644
index 000000000000..6973a627864a
--- /dev/null
+++ b/dev-ml/camlp-streams/Manifest
@@ -0,0 +1 @@
+DIST camlp-streams-5.0.1.tar.gz 17392 BLAKE2B bec87a4b9717bcd05799317542533a83e43b5d7dcdc0d691595678613da4f091f087c00487e1499e088687cc9cf21381386c92e25db9d5f182200805452b43fd SHA512 2efa8dd4a636217c8d49bac1e4e7e5558fc2f45cfea66514140a59fd99dd08d61fb9f1e17804997ff648b71b13820a5d4a1eb70fed9d848aa2abd6e41f853c86
diff --git a/dev-ml/camlp-streams/camlp-streams-5.0.1.ebuild b/dev-ml/camlp-streams/camlp-streams-5.0.1.ebuild
new file mode 100644
index 000000000000..22b50c2eea1b
--- /dev/null
+++ b/dev-ml/camlp-streams/camlp-streams-5.0.1.ebuild
@@ -0,0 +1,17 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Stream and Genlex libraries for use with Camlp4 and Camlp5"
+HOMEPAGE="https://github.com/ocaml/camlp-streams"
+SRC_URI="https://github.com/ocaml/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="LGPL-2-with-linking-exception"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 x86"
+
+IUSE="+ocamlopt"
diff --git a/dev-ml/camlp-streams/metadata.xml b/dev-ml/camlp-streams/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/camlp-streams/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/camlp4/Manifest b/dev-ml/camlp4/Manifest
new file mode 100644
index 000000000000..807bf30fa7fa
--- /dev/null
+++ b/dev-ml/camlp4/Manifest
@@ -0,0 +1,3 @@
+DIST camlp4-4.14_p1.tar.gz 641790 BLAKE2B 3e1054a924956e9c23d43fb4ef00cf99fe09f6d2a5eb4216cb3d5079a439159d36703b6ae268789d73e51e87ed0329531b25c2e846df03c4ae99b1a6403b84c3 SHA512 1853ae0465a1366cf73d7aa9de56c037ef3d4bb5b341fe3eeb39677b5b08bda44316634b93d5d35d917a98dff8eb40da974937f714ab609818e7d25f716de811
+DIST camlp4-5.3_p1.tar.gz 653589 BLAKE2B 3fd9b063132a02081f3af79ebc02d6e7788ca60f3776a65b92d29faec1db4016d01b4a5b8556a818a39ab65d3aa4aadc281f5480f12fa36be9ca00f9323c6016 SHA512 30d0a1a52d5e359f16158e10b025e8d05fb7ccf1fa7f45cecd3584e5ba5ba995f85917680904c347437f3bdf6376ade9a666bbef7a337e5f41bc73ec1bb126d8
+DIST camlp4-5.4_p1.tar.gz 653021 BLAKE2B 03cf09a8ba26813ffc9c122dac85e91cc3c8203e74b6b5994b2f975bc999135844d954a6583cf96439d29810609001824d76910a5995bc6b5ab47864beeab07d SHA512 4eddd761f3c81cfd4fbeec0eac661d572a2779d35f4a332d2d8a3c7ee80aeb0a0269535d7b1a2c708963ac03f9cf325f2fe219c4393823843c16c30c975afcc8
diff --git a/dev-ml/camlp4/camlp4-4.14_p1-r2.ebuild b/dev-ml/camlp4/camlp4-4.14_p1-r2.ebuild
new file mode 100644
index 000000000000..ee6c39531eed
--- /dev/null
+++ b/dev-ml/camlp4/camlp4-4.14_p1-r2.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PV=${PV/_p/+}
+MY_P=${PN}-${MY_PV}
+
+inherit edo
+
+DESCRIPTION="System for writing extensible parsers for programming languages"
+HOMEPAGE="https://github.com/camlp4/camlp4"
+SRC_URI="https://github.com/camlp4/camlp4/archive/${MY_PV}.tar.gz
+ -> ${P}.tar.gz"
+S="${WORKDIR}"/${P/_p/-}
+
+LICENSE="LGPL-2-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~hppa ~ppc ppc64 x86"
+IUSE="+ocamlopt"
+
+RDEPEND="=dev-lang/ocaml-4.14*:=[ocamlopt?]"
+DEPEND="
+ ${RDEPEND}
+ dev-ml/ocamlbuild[ocamlopt?]
+ dev-ml/findlib:=
+"
+
+QA_FLAGS_IGNORED='.*'
+
+PATCHES=( "${FILESDIR}/reload.patch" )
+
+src_configure() {
+ edo ./configure \
+ --bindir="${EPREFIX}/usr/bin" \
+ --libdir="$(ocamlc -where)" \
+ --pkgdir="$(ocamlc -where)"
+}
+
+src_compile() {
+ # Increase stack limit to 11GiB to avoid stack overflow error.
+ ulimit -s 11530000
+
+ emake byte
+ use ocamlopt && emake native
+}
+
+src_install() {
+ # OCaml generates textrels on 32-bit arches
+ if use arm || use ppc || use x86 ; then
+ export QA_TEXTRELS='.*'
+ fi
+ emake DESTDIR="${D}" install install-META
+ dodoc CHANGES.md README.md
+}
diff --git a/dev-ml/camlp4/camlp4-5.3_p1.ebuild b/dev-ml/camlp4/camlp4-5.3_p1.ebuild
new file mode 100644
index 000000000000..b32c23552a4c
--- /dev/null
+++ b/dev-ml/camlp4/camlp4-5.3_p1.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PV=${PV/_p/+}
+MY_P=${PN}-${MY_PV}
+
+inherit edo
+
+DESCRIPTION="System for writing extensible parsers for programming languages"
+HOMEPAGE="https://github.com/camlp4/camlp4"
+SRC_URI="https://github.com/camlp4/camlp4/archive/${MY_PV}.tar.gz
+ -> ${P}.tar.gz"
+S="${WORKDIR}"/${P/_p/-}
+
+LICENSE="LGPL-2-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ =dev-lang/ocaml-5.3*:=[ocamlopt?]
+ dev-ml/camlp-streams:=[ocamlopt?]
+"
+DEPEND="
+ ${RDEPEND}
+ dev-ml/ocamlbuild[ocamlopt?]
+ dev-ml/findlib:=
+"
+
+QA_FLAGS_IGNORED='.*'
+
+PATCHES=( "${FILESDIR}/reload.patch" )
+
+src_configure() {
+ edo ./configure \
+ --bindir="${EPREFIX}/usr/bin" \
+ --libdir="$(ocamlc -where)" \
+ --pkgdir="$(ocamlc -where)"
+}
+
+src_compile() {
+ # Increase stack limit to 11GiB to avoid stack overflow error.
+ ulimit -s 11530000
+
+ emake byte
+ use ocamlopt && emake native
+}
+
+src_install() {
+ # OCaml generates textrels on 32-bit arches
+ if use arm || use ppc || use x86 ; then
+ export QA_TEXTRELS='.*'
+ fi
+ emake DESTDIR="${D}" install install-META
+ dodoc CHANGES.md README.md
+}
diff --git a/dev-ml/camlp4/camlp4-5.4_p1.ebuild b/dev-ml/camlp4/camlp4-5.4_p1.ebuild
new file mode 100644
index 000000000000..04b2da202b88
--- /dev/null
+++ b/dev-ml/camlp4/camlp4-5.4_p1.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PV=${PV/_p/+}
+MY_P=${PN}-${MY_PV}
+
+inherit edo
+
+DESCRIPTION="System for writing extensible parsers for programming languages"
+HOMEPAGE="https://github.com/camlp4/camlp4"
+SRC_URI="https://github.com/camlp4/camlp4/archive/${MY_PV}.tar.gz
+ -> ${P}.tar.gz"
+S="${WORKDIR}"/${P/_p/-}
+
+LICENSE="LGPL-2-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ =dev-lang/ocaml-5.4*:=[ocamlopt?]
+ dev-ml/camlp-streams:=[ocamlopt?]
+"
+DEPEND="
+ ${RDEPEND}
+ dev-ml/ocamlbuild[ocamlopt?]
+ dev-ml/findlib:=
+"
+
+QA_FLAGS_IGNORED='.*'
+
+PATCHES=( "${FILESDIR}/reload.patch" )
+
+src_configure() {
+ edo ./configure \
+ --bindir="${EPREFIX}/usr/bin" \
+ --libdir="$(ocamlc -where)" \
+ --pkgdir="$(ocamlc -where)"
+}
+
+src_compile() {
+ # Increase stack limit to 11GiB to avoid stack overflow error.
+ ulimit -s 11530000
+
+ emake byte
+ use ocamlopt && emake native
+}
+
+src_install() {
+ # OCaml generates textrels on 32-bit arches
+ if use arm || use ppc || use x86 ; then
+ export QA_TEXTRELS='.*'
+ fi
+ emake DESTDIR="${D}" install install-META
+ dodoc CHANGES.md README.md
+}
diff --git a/dev-ml/camlp4/files/reload.patch b/dev-ml/camlp4/files/reload.patch
new file mode 100644
index 000000000000..8fbc1c05532c
--- /dev/null
+++ b/dev-ml/camlp4/files/reload.patch
@@ -0,0 +1,13 @@
+Index: camlp4-4.08-1/camlp4/Camlp4/Struct/DynLoader.ml
+===================================================================
+--- camlp4-4.08-1.orig/camlp4/Camlp4/Struct/DynLoader.ml
++++ camlp4-4.08-1/camlp4/Camlp4/Struct/DynLoader.ml
+@@ -76,7 +76,7 @@ value load =
+ [ Not_found -> raise (Error file "file not found in path") ]
+ in
+ try Dynlink.loadfile fname with
+- [ Dynlink.Error e -> raise (Error fname (Dynlink.error_message e)) ]
++ [ Dynlink.Error (Module_already_loaded _ ) -> () | Dynlink.Error e -> raise (Error fname (Dynlink.error_message e)) ]
+ };
+
+
diff --git a/dev-ml/camlp4/metadata.xml b/dev-ml/camlp4/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/camlp4/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/camlp5/Manifest b/dev-ml/camlp5/Manifest
new file mode 100644
index 000000000000..2e8a3dd7e0e2
--- /dev/null
+++ b/dev-ml/camlp5/Manifest
@@ -0,0 +1,3 @@
+DIST camlp5-8.03.01.tar.gz 1308092 BLAKE2B 1cb69bf407eb40c3646098431a4e6b3e35f78a5ce2880399c2034ce0a50ec5650c86216029a8521af97cbc92bf4be3d8b2180336c0decaddab30822232f1a2da SHA512 144ab15e18673fa485d08cf37c6ba69146db7db4be9e7031e202e0747d922e223396b83881b1d65cf27bedb2115d91e5eb62b5a22e2d57dda838013ebd398ff2
+DIST camlp5-8.03.06.tar.gz 1361806 BLAKE2B e1bdd28a7b7e64f3104d92fcc83ac8929e24dc09af7fd10c96dfba63ee3ebe7669346842e8805f1a039ea8e770c4c9fa853c51cbc38ed107fb933743993e1a4b SHA512 eb4b665e5e3360320a1d87e458385bf521bcb1a0f569637e6f9436aedd027fb264ad4c2b6b60f77aa32ea3c2670827573b6a02acf1ee3258a4734012647803fd
+DIST camlp5-8.04.00.tar.gz 1438379 BLAKE2B 8e06efb0348823cbc9c250946ea001b462ff44df03602635db8cde763f96b65d2cd3f68e337113baed547f32e6fa64b746ff460dd14aa9b02aa72d47c9a4e358 SHA512 ecec87b75290c00f80f02c1eece8cef763673b7b2fd65a109c1ed1cae33998dec44dac2e600fec1897fca0a7545a42402ada8d73a0780d6b7171e01aa906fb31
diff --git a/dev-ml/camlp5/camlp5-8.03.01-r1.ebuild b/dev-ml/camlp5/camlp5-8.03.01-r1.ebuild
new file mode 100644
index 000000000000..8d11f52ec5de
--- /dev/null
+++ b/dev-ml/camlp5/camlp5-8.03.01-r1.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit findlib vcs-clean
+
+DESCRIPTION="A preprocessor-pretty-printer of ocaml"
+HOMEPAGE="https://camlp5.github.io/"
+SRC_URI="https://github.com/${PN}/${PN}/archive/refs/tags/${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 x86"
+IUSE="doc +ocamlopt"
+
+RDEPEND="
+ <dev-lang/ocaml-5
+ dev-ml/bos:=
+ dev-ml/camlp-streams:=[ocamlopt?]
+ dev-ml/fmt:=[ocamlopt?]
+ dev-ml/fpath:=
+ dev-ml/logs:=[ocamlopt?]
+ dev-ml/re:=[ocamlopt?]
+ dev-ml/rresult:=
+"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ egit_clean
+ default
+}
+
+src_configure() {
+ ./configure \
+ --strict \
+ -prefix /usr \
+ -bindir /usr/bin \
+ -libdir /usr/$(get_libdir)/ocaml \
+ -mandir /usr/share/man || die "configure failed"
+}
+
+src_compile() {
+ ulimit -s 11530000
+ emake out
+ if use ocamlopt; then
+ emake opt
+ emake opt.opt
+ fi
+}
+
+src_test() {
+ ulimit -s 11530000
+ emake bootstrap
+ if use ocamlopt; then
+ emake opt
+ emake opt.opt
+ fi
+}
+
+src_install() {
+ emake DESTDIR="${ED}" install
+ # findlib support
+ insinto "$(ocamlfind printconf destdir)/${PN}"
+ doins etc/META
+
+ dodoc -r doc/*
+ dodoc CHANGES DEVEL ICHANGES README.md UPGRADING MODE
+}
diff --git a/dev-ml/camlp5/camlp5-8.03.06-r1.ebuild b/dev-ml/camlp5/camlp5-8.03.06-r1.ebuild
new file mode 100644
index 000000000000..aef373488367
--- /dev/null
+++ b/dev-ml/camlp5/camlp5-8.03.06-r1.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit findlib vcs-clean
+
+DESCRIPTION="A preprocessor-pretty-printer of ocaml"
+HOMEPAGE="https://camlp5.github.io/"
+SRC_URI="https://github.com/${PN}/${PN}/archive/refs/tags/${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+IUSE="doc +ocamlopt"
+
+RDEPEND="
+ <dev-lang/ocaml-5.4
+ dev-ml/bos:=
+ dev-ml/camlp-streams:=[ocamlopt?]
+ dev-ml/fmt:=[ocamlopt?]
+ dev-ml/fpath:=
+ dev-ml/logs:=[ocamlopt?]
+ dev-ml/pcre2-ocaml:=[ocamlopt?]
+ dev-ml/re:=[ocamlopt?]
+ dev-ml/rresult:=
+"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ egit_clean
+ default
+}
+
+src_configure() {
+ ./configure \
+ --strict \
+ -prefix /usr \
+ -bindir /usr/bin \
+ -libdir /usr/$(get_libdir)/ocaml \
+ -mandir /usr/share/man || die "configure failed"
+}
+
+src_compile() {
+ ulimit -s 11530000
+ emake out
+ if use ocamlopt; then
+ emake opt
+ emake opt.opt
+ fi
+}
+
+src_test() {
+ ulimit -s 11530000
+ emake bootstrap
+ if use ocamlopt; then
+ emake opt
+ emake opt.opt
+ fi
+}
+
+src_install() {
+ emake DESTDIR="${ED}" install
+ # findlib support
+ insinto "$(ocamlfind printconf destdir)/${PN}"
+ doins etc/META
+
+ dodoc -r doc/*
+ dodoc CHANGES DEVEL ICHANGES README.md UPGRADING MODE
+}
diff --git a/dev-ml/camlp5/camlp5-8.04.00.ebuild b/dev-ml/camlp5/camlp5-8.04.00.ebuild
new file mode 100644
index 000000000000..1b9c54055a36
--- /dev/null
+++ b/dev-ml/camlp5/camlp5-8.04.00.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit findlib vcs-clean
+
+DESCRIPTION="A preprocessor-pretty-printer of ocaml"
+HOMEPAGE="https://camlp5.github.io/"
+SRC_URI="https://github.com/${PN}/${PN}/archive/refs/tags/${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+IUSE="doc +ocamlopt"
+
+RDEPEND="
+ <dev-lang/ocaml-5
+ dev-ml/bos:=
+ dev-ml/camlp-streams:=[ocamlopt?]
+ dev-ml/fmt:=[ocamlopt?]
+ dev-ml/fpath:=
+ dev-ml/logs:=[ocamlopt?]
+ dev-ml/pcre2-ocaml:=[ocamlopt?]
+ dev-ml/re:=[ocamlopt?]
+ dev-ml/rresult:=
+"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ egit_clean
+ default
+}
+
+src_configure() {
+ ./configure \
+ --strict \
+ -prefix /usr \
+ -bindir /usr/bin \
+ -libdir /usr/$(get_libdir)/ocaml \
+ -mandir /usr/share/man || die "configure failed"
+}
+
+src_compile() {
+ ulimit -s 11530000
+ emake out
+ if use ocamlopt; then
+ emake opt
+ emake opt.opt
+ fi
+}
+
+src_test() {
+ ulimit -s 11530000
+ emake bootstrap
+ if use ocamlopt; then
+ emake opt
+ emake opt.opt
+ fi
+}
+
+src_install() {
+ emake DESTDIR="${ED}" install
+ # findlib support
+ insinto "$(ocamlfind printconf destdir)/${PN}"
+ doins etc/META
+
+ dodoc -r doc/*
+ dodoc CHANGES DEVEL ICHANGES README.md UPGRADING MODE
+}
diff --git a/dev-ml/camlp5/metadata.xml b/dev-ml/camlp5/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/camlp5/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/camlpdf/Manifest b/dev-ml/camlpdf/Manifest
new file mode 100644
index 000000000000..17ff6b181e31
--- /dev/null
+++ b/dev-ml/camlpdf/Manifest
@@ -0,0 +1,2 @@
+DIST camlpdf-2.7.1.tar.gz 841886 BLAKE2B 30215949fab2517e00cf520ef4f79a6fbf49173e7e2643ac1a47d0dd945063908de2928f7181d2182ad4fe51945bb3f6a89a54aa236a889ea392cd126ef856c8 SHA512 2480a282a6ce09444ed14a3f41561375ecf7e3c57f7559a48ad9791d9f824e59820bfd39aa36910ff6bdc9b160cef76ab90dbbfe628c836c3f5c5081dfd5e452
+DIST camlpdf-2.8.1.tar.gz 847238 BLAKE2B f3aa0e72c47e54222a138e058e817e2c6f76ec978b7f5b9f6e56f8fbfbfb923c403d331f4d77b63a1a2deb091a332f8f83b48559537301636b6ee2ad0f5e0072 SHA512 baf16128dbe4b3bf1cc1c726976e083cd12113de6865a1d847f1e606bdc2570ce474076d5350d705dd22f538e21dd524d9e8bd56708fedd56df822be92be36a2
diff --git a/dev-ml/camlpdf/camlpdf-2.7.1.ebuild b/dev-ml/camlpdf/camlpdf-2.7.1.ebuild
new file mode 100644
index 000000000000..1aada1b8ee02
--- /dev/null
+++ b/dev-ml/camlpdf/camlpdf-2.7.1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit findlib
+
+DESCRIPTION="OCaml library for reading, writing, and modifying PDF files"
+HOMEPAGE="https://github.com/johnwhitington/camlpdf/"
+SRC_URI="https://github.com/johnwhitington/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+# technically LGPL-2.1+ with linking exception
+LICENSE="LGPL-2.1-with-linking-exception LGPL-2.1+"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc examples"
+
+RDEPEND="dev-lang/ocaml:=[ocamlopt]"
+DEPEND="${RDEPEND}"
+
+src_compile() {
+ # parallel make bugs
+ emake -j1
+}
+
+src_install() {
+ findlib_src_install
+ dodoc Changes README.md
+
+ if use doc ; then
+ dodoc introduction_to_camlpdf.pdf
+ dodoc -r doc/camlpdf/html
+ fi
+
+ use examples && dodoc -r examples
+}
diff --git a/dev-ml/camlpdf/camlpdf-2.8.1.ebuild b/dev-ml/camlpdf/camlpdf-2.8.1.ebuild
new file mode 100644
index 000000000000..a42cce5c703b
--- /dev/null
+++ b/dev-ml/camlpdf/camlpdf-2.8.1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit findlib
+
+DESCRIPTION="OCaml library for reading, writing, and modifying PDF files"
+HOMEPAGE="https://github.com/johnwhitington/camlpdf/"
+SRC_URI="https://github.com/johnwhitington/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+# technically LGPL-2.1+ with linking exception
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="~amd64"
+IUSE="doc examples"
+
+RDEPEND="dev-lang/ocaml:=[ocamlopt]"
+DEPEND="${RDEPEND}"
+
+src_compile() {
+ # parallel make bugs
+ emake -j1
+}
+
+src_install() {
+ findlib_src_install
+ dodoc Changes README.md
+
+ if use doc ; then
+ dodoc introduction_to_camlpdf.pdf
+ dodoc -r doc/camlpdf/html
+ fi
+
+ use examples && dodoc -r examples
+}
diff --git a/dev-ml/camlpdf/metadata.xml b/dev-ml/camlpdf/metadata.xml
new file mode 100644
index 000000000000..1d30489d69a8
--- /dev/null
+++ b/dev-ml/camlpdf/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>ivan.lloro.boada@gmail.com</email>
+ <name>Ivan Lloro</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/camlzip/Manifest b/dev-ml/camlzip/Manifest
new file mode 100644
index 000000000000..d964f254bb53
--- /dev/null
+++ b/dev-ml/camlzip/Manifest
@@ -0,0 +1,2 @@
+DIST camlzip-1.13.tar.gz 31570 BLAKE2B 8aee80e75aa8afe9c0c1efbc8e70d962a3b5a6558b0d9fd0153a52adb9d72834680ab7720a3e3bdd8256c985a4a08021efe56209b5b9774cdf15a4f1bcbe08a0 SHA512 dc0fff718b089b89b753fe7d70f100f005b4bb4efcb29afb30bb1ccfd0a7c9a1aa8685c033b0c2c86f0573a7bb0772e499d1149bac159ec8fc11426f71903e51
+DIST camlzip-1.14.tar.gz 32822 BLAKE2B b4f442c963e3212cd1cb0fbabd828bf2fd033918a94997a7c83d7b75f6abf046cef2a7c78c983e439822e0a8917240ba45dcefe2ae243e5b94eed76178bfae5f SHA512 b623efc5c5cfc28bad54dcb74f3d08e8cc4b9216d739e23cf3886d2490ef78c518ec37a344121fe1dab0a40e61b5c6e9908c8f12305a0754aaf9278a32c1dba6
diff --git a/dev-ml/camlzip/camlzip-1.13.ebuild b/dev-ml/camlzip/camlzip-1.13.ebuild
new file mode 100644
index 000000000000..11dfdebd5b68
--- /dev/null
+++ b/dev-ml/camlzip/camlzip-1.13.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit findlib
+
+DESCRIPTION="Compressed file access ML library (ZIP, GZIP and JAR)"
+HOMEPAGE="https://github.com/xavierleroy/camlzip"
+SRC_URI="https://github.com/xavierleroy/camlzip/archive/rel$(ver_rs 1- '').tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-rel$(ver_rs 1- '')"
+
+LICENSE="LGPL-2.1"
+SLOT="1/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+RDEPEND=">=dev-lang/ocaml-4.13:=[ocamlopt?]
+ >=virtual/zlib-1.1.3:="
+DEPEND="${RDEPEND}"
+
+QA_FLAGS_IGNORED=(
+ "usr/lib.*/ocaml/stublibs/dllcamlzip.so"
+ "usr/lib.*/ocaml/zip/zip.cmxs"
+)
+
+src_compile() {
+ emake allbyt
+
+ if use ocamlopt; then
+ emake allopt
+ fi
+}
+
+src_install() {
+ findlib_src_preinst
+
+ emake DESTDIR="${D}" install-findlib
+ dosym zip/libcamlzip.a /usr/$(get_libdir)/ocaml/libcamlzip.a
+
+ dodoc README.md Changes
+}
diff --git a/dev-ml/camlzip/camlzip-1.14.ebuild b/dev-ml/camlzip/camlzip-1.14.ebuild
new file mode 100644
index 000000000000..a126bed3a5c3
--- /dev/null
+++ b/dev-ml/camlzip/camlzip-1.14.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit findlib
+
+DESCRIPTION="Compressed file access ML library (ZIP, GZIP and JAR)"
+HOMEPAGE="https://github.com/xavierleroy/camlzip"
+SRC_URI="https://github.com/xavierleroy/camlzip/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="1/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt"
+
+RDEPEND=">=dev-lang/ocaml-4.13:=[ocamlopt?]
+ >=virtual/zlib-1.1.3:="
+DEPEND="${RDEPEND}"
+
+QA_FLAGS_IGNORED=(
+ "usr/lib.*/ocaml/stublibs/dllcamlzip.so"
+ "usr/lib.*/ocaml/zip/zip.cmxs"
+)
+
+src_compile() {
+ emake allbyt
+
+ if use ocamlopt; then
+ emake allopt
+ fi
+}
+
+src_test() {
+ emake -C test
+}
+
+src_install() {
+ findlib_src_preinst
+
+ emake DESTDIR="${D}" install-findlib
+ dosym zip/libcamlzip.a /usr/$(get_libdir)/ocaml/libcamlzip.a
+
+ dodoc README.md Changes
+}
diff --git a/dev-ml/camlzip/metadata.xml b/dev-ml/camlzip/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/camlzip/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/camomile/Manifest b/dev-ml/camomile/Manifest
new file mode 100644
index 000000000000..3766becc3b7d
--- /dev/null
+++ b/dev-ml/camomile/Manifest
@@ -0,0 +1,2 @@
+DIST camomile-1.0.2.tar.gz 7032339 BLAKE2B 8cd60c74821c2c8e7084e752d1e4d67428c935859e02a8630f3f5563b53b3ce444071fa26153950f6a410b2743073692c7061e4f1f902c23e5fa54c50a89383c SHA512 d62ecaa297058b52674f98e513a6d776148fe62651b2b4a2dac4bb3e05abb8b7684960e889f68c6dab60aee669fbab715a2d6a9206645e24d10d8aaaf7cedf0e
+DIST camomile-2.0.0.tar.gz 7030383 BLAKE2B 795f6a0e482cbc2d5a38bcb1a9ca2f93f1d7ec437bc736dbc50ef39b6c072df925776dba315e04a9dd508fffe06ffcd2eaac10ef56da56727b8e85ca2f931e9a SHA512 b0ae3d921f65390e8ec88a04901dd097b568db9f9ae70fb328e9d3ddb2dd8922b9a8e8da9ace91ad9cb5f6a1310ae5b6ba502e287d6c828f4d60622289316ac8
diff --git a/dev-ml/camomile/camomile-1.0.2.ebuild b/dev-ml/camomile/camomile-1.0.2.ebuild
new file mode 100644
index 000000000000..6f7461d804c4
--- /dev/null
+++ b/dev-ml/camomile/camomile-1.0.2.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="Camomile is a comprehensive Unicode library for ocaml"
+HOMEPAGE="https://github.com/yoriyuki/Camomile/wiki"
+SRC_URI="https://github.com/yoriyuki/Camomile/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${P^}"
+
+LICENSE="LGPL-2"
+SLOT="0/${PV}"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 x86"
+IUSE="+ocamlopt"
+
+# Unbound module errors
+RESTRICT="test"
+
+src_compile() {
+ # Amend standard dune_src_compile with -p camomile
+ # Needed to workaround: https://github.com/yoriyuki/Camomile/issues/83
+ # (https://dune.readthedocs.io/en/stable/faq.html#how-to-make-warnings-non-fatal)
+ dune build -p camomile @install || die
+}
diff --git a/dev-ml/camomile/camomile-2.0.0.ebuild b/dev-ml/camomile/camomile-2.0.0.ebuild
new file mode 100644
index 000000000000..08ff7859395f
--- /dev/null
+++ b/dev-ml/camomile/camomile-2.0.0.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Camomile is a comprehensive Unicode library for ocaml"
+HOMEPAGE="https://github.com/savonet/Camomile"
+SRC_URI="https://github.com/savonet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${P^}"
+
+LICENSE="LGPL-2"
+SLOT="0/${PV}"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 x86"
+IUSE="+ocamlopt"
+
+# Unbound module errors
+RESTRICT="test"
+
+RDEPEND="
+ dev-ml/dune-site:=
+ dev-ml/camlp-streams:=
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/camomile/metadata.xml b/dev-ml/camomile/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/camomile/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/capitalization/Manifest b/dev-ml/capitalization/Manifest
new file mode 100644
index 000000000000..94ecee566c5a
--- /dev/null
+++ b/dev-ml/capitalization/Manifest
@@ -0,0 +1 @@
+DIST capitalization-0.17.0.tar.gz 5267 BLAKE2B 3245c2faf1616957745aa54590f59a4934032b17577da7f4c1d14314259df43cc719edcfd4ddf1b3db68a93da36d62cc01f0b1b44fdc0371611ec43f1c8d1156 SHA512 eec8ad41b31dd761c174b1d97032fba0305a0b82509927b1bbefe119a67b5b0660e0d45fc035a456a52852a9fdaccd6e4f2ce0447c593ee4c93afe7b52179f8c
diff --git a/dev-ml/capitalization/capitalization-0.17.0-r1.ebuild b/dev-ml/capitalization/capitalization-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..8725ce6aede0
--- /dev/null
+++ b/dev-ml/capitalization/capitalization-0.17.0-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Defines case conventions and functions to rename identifiers according to them"
+HOMEPAGE="https://github.com/janestreet/capitalization"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_base-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/capitalization/metadata.xml b/dev-ml/capitalization/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/capitalization/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/charinfo_width/Manifest b/dev-ml/charinfo_width/Manifest
new file mode 100644
index 000000000000..7ca90c0692c2
--- /dev/null
+++ b/dev-ml/charinfo_width/Manifest
@@ -0,0 +1,2 @@
+DIST charinfo_width-1.1.0.tar.gz 8307 BLAKE2B fcb37b82e2eb914322c78bcfebf901d713b55edc1c069b46cb157bbe1292b63aa69f4679f9077308a17e7d31d7c972e6b636ce7dad22fc963aedc33039dfbcfb SHA512 c8dac9eb6f520213de69b23433e2f0d6a21578c70ae69fb682065e707363968959395a6ddc6c88893e08372a138287318634b52a8b4fb70ac988b4ad4a18b140
+DIST charinfo_width-2.0.0.tar.gz 8901 BLAKE2B 46dbacfc52093f03bf694cd74e5871e1b51602e3b36f927192d7c57de063d1210a4af5944dd340b92af84d3f1700a8ad7deffb082e941854002efa5824ea14c8 SHA512 54b875465ca275cfeedcdf0d0f91777020b1425e5062421f9dded01ae8a0299f1ccd749c944861e25e27d0ea96a2b044b71f34cdfcb7fe19fc9ea0cf87a151b8
diff --git a/dev-ml/charinfo_width/charinfo_width-1.1.0-r1.ebuild b/dev-ml/charinfo_width/charinfo_width-1.1.0-r1.ebuild
new file mode 100644
index 000000000000..6191c758438e
--- /dev/null
+++ b/dev-ml/charinfo_width/charinfo_width-1.1.0-r1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PN="charInfo_width"
+DUNE_PKG_NAME="${MY_PN}"
+
+inherit dune
+
+DESCRIPTION="Determine column width for a character"
+HOMEPAGE="https://github.com/kandu/charInfo_width"
+SRC_URI="https://github.com/kandu/${MY_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ <dev-ml/camomile-2.0.0:=
+ dev-ml/ppx_expect:=
+ dev-ml/result:=
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/charinfo_width/charinfo_width-2.0.0.ebuild b/dev-ml/charinfo_width/charinfo_width-2.0.0.ebuild
new file mode 100644
index 000000000000..f83ae74a5e3f
--- /dev/null
+++ b/dev-ml/charinfo_width/charinfo_width-2.0.0.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PN="charInfo_width"
+DUNE_PKG_NAME="${MY_PN}"
+
+inherit dune
+
+DESCRIPTION="Determine column width for a character"
+HOMEPAGE="https://github.com/kandu/charInfo_width"
+SRC_URI="https://github.com/kandu/${MY_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-ml/camomile-2.0.0:=[ocamlopt?]
+ dev-ml/ppx_expect:=[ocamlopt?]
+ dev-ml/result:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/charinfo_width/metadata.xml b/dev-ml/charinfo_width/metadata.xml
new file mode 100644
index 000000000000..70b1e0c428c9
--- /dev/null
+++ b/dev-ml/charinfo_width/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/kandu/charInfo_width/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/cinaps/Manifest b/dev-ml/cinaps/Manifest
new file mode 100644
index 000000000000..e88bea28e0bb
--- /dev/null
+++ b/dev-ml/cinaps/Manifest
@@ -0,0 +1 @@
+DIST cinaps-0.15.1.tar.gz 9752 BLAKE2B 56b0a8fda6e0e420b3062001f853e187c78ca9adfba7a2204845f61f6480fc9984578db00a9aaba7cefa2bc41234d710a2079300b2dcdf6791d6e037d0a82f3d SHA512 ca53a9da8aa71ce7cddf7e24778e9c4d3f3e5784209da85a5a6b2d5af83cd8ad769fbe3009d2757ebf4a25ca39d76af00ebc693b1b01c3b53c8775ea479123a5
diff --git a/dev-ml/cinaps/cinaps-0.15.1-r2.ebuild b/dev-ml/cinaps/cinaps-0.15.1-r2.ebuild
new file mode 100644
index 000000000000..05c8aca5c7b5
--- /dev/null
+++ b/dev-ml/cinaps/cinaps-0.15.1-r2.ebuild
@@ -0,0 +1,22 @@
+# Copyright 2020-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Trivial metaprogramming tool"
+HOMEPAGE="https://github.com/ocaml-ppx/cinaps"
+SRC_URI="https://github.com/ocaml-ppx/cinaps/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+DEPEND="dev-ml/re:="
+RDEPEND="${DEPEND}"
+BDEPEND="test? ( dev-ml/ppx_jane )"
+
+PATCHES=( "${FILESDIR}"/${P}-test.patch )
diff --git a/dev-ml/cinaps/files/cinaps-0.15.1-test.patch b/dev-ml/cinaps/files/cinaps-0.15.1-test.patch
new file mode 100644
index 000000000000..d3b50c05d73e
--- /dev/null
+++ b/dev-ml/cinaps/files/cinaps-0.15.1-test.patch
@@ -0,0 +1,13 @@
+--- a/test/dune 2025-04-13 21:58:20.175375148 +0200
++++ b/test/dune 2025-04-13 21:58:28.498274736 +0200
+@@ -3,7 +3,7 @@
+
+ (executables (names test_staged_gen) (modules test_staged_gen)
+ (libraries cinaps.runtime)
+- (preprocess (pps ppx_jane -allow-toplevel-expression)))
++ (preprocess (pps ppx_jane)))
+
+ (alias (name runtest) (deps test_staged_gen.exe)
+- (action (bash ./test_staged_gen.exe)))
+\ No newline at end of file
++ (action (bash ./test_staged_gen.exe)))
diff --git a/dev-ml/cinaps/metadata.xml b/dev-ml/cinaps/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/cinaps/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/cmdliner/Manifest b/dev-ml/cmdliner/Manifest
new file mode 100644
index 000000000000..34629e965098
--- /dev/null
+++ b/dev-ml/cmdliner/Manifest
@@ -0,0 +1,3 @@
+DIST cmdliner-1.3.0.tbz 58515 BLAKE2B 297b8903e1446a94be5580557b2d94a686833997d9b5f688564f31f6c13bf1e6d1f589143b223a78b7dc6f259c5ca664529b3273e5bf29d5a503d9612ba65ef6 SHA512 4c46bc334444ff772637deae2f5ba03645d7a1b7db523470a1246acfce79b971c764d964cbb02388639b3161b279700d9ade95da550446fb32aa4849c8a8f283
+DIST cmdliner-2.0.0.tbz 93833 BLAKE2B 9e6621c7227d829fee2943667b8b3600cc23ef8509967f28a7f61f6faa18675b847a90f4f324d9c103f903b838186e18a3bf16e6d4efde21d574226f628f5aac SHA512 a7bd4eeb0cef7c08bca73b0077a65f748c19a230544133b39fc3360feb2cf0af08416a8b84031c94a2f4a007d5920a4db1368d87b9eeca561671828e2dad2885
+DIST cmdliner-2.1.0.tbz 98220 BLAKE2B 6c78495b5f6c0d23cf7e3a2faca12438872819d26fa91ee475a5ba91f0dc5b26e6f5d3642438ed832f9900694286ac64efd9934c12893857d0840d824e8d8670 SHA512 2ca8c9a2b392e031f88aa0e76f2ab50c8e9e28d77852d04ca2d5b62326630ca41567ce0832e9a9334d9b130b48deede66c7880a9d0aee75a1afe7541097e249f
diff --git a/dev-ml/cmdliner/cmdliner-1.3.0.ebuild b/dev-ml/cmdliner/cmdliner-1.3.0.ebuild
new file mode 100644
index 000000000000..84a27260368d
--- /dev/null
+++ b/dev-ml/cmdliner/cmdliner-1.3.0.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit findlib
+
+DESCRIPTION="Declarative definition of command line interfaces for OCaml"
+HOMEPAGE="http://erratique.ch/software/cmdliner"
+SRC_URI="http://erratique.ch/software/${PN}/releases/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ dev-ml/result:=
+ dev-ml/findlib:=
+"
+DEPEND="${RDEPEND}
+ dev-ml/topkg
+ dev-ml/ocamlbuild"
+
+src_compile() {
+ emake build-byte
+ if use ocamlopt ; then
+ emake build-native-dynlink
+ emake build-native
+ fi
+}
+
+src_install() {
+ # Can't use opam-installer here as it is an opam dep...
+ findlib_src_preinst
+ local nativelibs=""
+ use ocamlopt && nativelibs="$(echo _build/cmdliner.cm{x,xa,xs} _build/cmdliner.a)"
+ ocamlfind install cmdliner pkg/META \
+ _build/cmdliner.mli _build/cmdliner.cm{a,i} ${nativelibs} || die
+ dodoc README.md CHANGES.md
+}
diff --git a/dev-ml/cmdliner/cmdliner-2.0.0.ebuild b/dev-ml/cmdliner/cmdliner-2.0.0.ebuild
new file mode 100644
index 000000000000..a7409474e2a6
--- /dev/null
+++ b/dev-ml/cmdliner/cmdliner-2.0.0.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit findlib
+
+DESCRIPTION="Declarative definition of command line interfaces for OCaml"
+HOMEPAGE="http://erratique.ch/software/cmdliner"
+SRC_URI="http://erratique.ch/software/${PN}/releases/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ dev-ml/result:=
+ dev-ml/findlib:=
+"
+DEPEND="${RDEPEND}
+ dev-ml/topkg
+ dev-ml/ocamlbuild"
+
+src_compile() {
+ emake build-byte
+ if use ocamlopt ; then
+ emake build-native-dynlink
+ emake build-native
+ fi
+}
+
+src_install() {
+ # Can't use opam-installer here as it is an opam dep...
+ findlib_src_preinst
+ local nativelibs=""
+ use ocamlopt && nativelibs="$(echo _build/src/cmdliner.cm{x,xa,xs} _build/src/cmdliner.a)"
+ ocamlfind install cmdliner pkg/META \
+ _build/src/cmdliner.mli _build/src/cmdliner.cm{a,i} ${nativelibs} || die
+ dodoc README.md CHANGES.md
+}
diff --git a/dev-ml/cmdliner/cmdliner-2.1.0.ebuild b/dev-ml/cmdliner/cmdliner-2.1.0.ebuild
new file mode 100644
index 000000000000..a7409474e2a6
--- /dev/null
+++ b/dev-ml/cmdliner/cmdliner-2.1.0.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit findlib
+
+DESCRIPTION="Declarative definition of command line interfaces for OCaml"
+HOMEPAGE="http://erratique.ch/software/cmdliner"
+SRC_URI="http://erratique.ch/software/${PN}/releases/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ dev-ml/result:=
+ dev-ml/findlib:=
+"
+DEPEND="${RDEPEND}
+ dev-ml/topkg
+ dev-ml/ocamlbuild"
+
+src_compile() {
+ emake build-byte
+ if use ocamlopt ; then
+ emake build-native-dynlink
+ emake build-native
+ fi
+}
+
+src_install() {
+ # Can't use opam-installer here as it is an opam dep...
+ findlib_src_preinst
+ local nativelibs=""
+ use ocamlopt && nativelibs="$(echo _build/src/cmdliner.cm{x,xa,xs} _build/src/cmdliner.a)"
+ ocamlfind install cmdliner pkg/META \
+ _build/src/cmdliner.mli _build/src/cmdliner.cm{a,i} ${nativelibs} || die
+ dodoc README.md CHANGES.md
+}
diff --git a/dev-ml/cmdliner/metadata.xml b/dev-ml/cmdliner/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/cmdliner/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/coq-menhirlib/Manifest b/dev-ml/coq-menhirlib/Manifest
new file mode 100644
index 000000000000..63133d2a85ce
--- /dev/null
+++ b/dev-ml/coq-menhirlib/Manifest
@@ -0,0 +1 @@
+DIST menhir-20240715.tar.bz2 1245971 BLAKE2B b5f1a1fb234dd53e1d3f77b095e2721f8d2af354a3aa36da2b993dc9f699767bb7c98aae13316ff3405b8bcf80f9ba3addc824ace59f5548613f0f93d105adf7 SHA512 b18da35517702dbdab0d9f5819ad711f61f2ed13ec9e51db71b92fa2d6604cbf28aa6d684c36a41364324694ebbc5dc6aaed4dbb3779c14b399e49ded6fd5db6
diff --git a/dev-ml/coq-menhirlib/coq-menhirlib-20240715.ebuild b/dev-ml/coq-menhirlib/coq-menhirlib-20240715.ebuild
new file mode 100644
index 000000000000..dbad929b5119
--- /dev/null
+++ b/dev-ml/coq-menhirlib/coq-menhirlib-20240715.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="A support library for verified Coq parsers produced by Menhir"
+HOMEPAGE="http://gallium.inria.fr/~fpottier/menhir/"
+
+if [[ "${PV}" == *9999* ]] ; then
+ inherit git-r3
+
+ EGIT_REPO_URI="https://gitlab.inria.fr/fpottier/menhir.git"
+else
+ SRC_URI="https://gitlab.inria.fr/fpottier/menhir/-/archive/${PV}/menhir-${PV}.tar.bz2"
+ S="${WORKDIR}/menhir-${PV}"
+
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="GPL-2 LGPL-2-with-linking-exception"
+SLOT="0/${PV}"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-ml/menhir-${PV}:=
+ sci-mathematics/coq:=
+"
+DEPEND="
+ ${RDEPEND}
+"
+
+src_compile() {
+ emake -C "${PN}"
+ edune build @install --profile release -p "${PN}" || die
+}
+
+src_install() {
+ emake -C "${PN}" DESTDIR="${D}" install
+ dune_src_install
+
+ dodoc "${PN}/CHANGES.md" "${PN}/README.md"
+}
diff --git a/dev-ml/coq-menhirlib/metadata.xml b/dev-ml/coq-menhirlib/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/coq-menhirlib/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/core/Manifest b/dev-ml/core/Manifest
new file mode 100644
index 000000000000..cb8f05eaa990
--- /dev/null
+++ b/dev-ml/core/Manifest
@@ -0,0 +1,2 @@
+DIST core-0.16.1.tar.gz 542242 BLAKE2B ad0b3c1b55b960f040dc0ed82a2c3c19447dfe635d2d25adab63a0ea529867cd6692fe258af3c5896ea63b5438f96b75007b4e2e5ea1d34b3c13936a7b369aeb SHA512 5f9f4400b6e42b74ffd57223cb67884368d324739565bbb20162547ede8bd6d0ece3cc265503b674829f9cf373784e8036d4c73e26e9196aa5446de69b63e181
+DIST core-0.17.1.tar.gz 631656 BLAKE2B 88a1c7b4c1ce5e8ca9713a1e92e4ea141aab1b5926427e78855f403449e3104052afca6f66a19d8b4a9b6d5dbac510d0844ace7e74ee7a7a5d6b89528412c94f SHA512 61b415f4fb12c78d30649fff1aabe3a475eea926ce6edb7774031f4dc7f37ea51f5d9337ead6ec73cd93da5fd1ed0f2738c210c71ebc8fe9d7f6135a06bd176f
diff --git a/dev-ml/core/core-0.16.1.ebuild b/dev-ml/core/core-0.16.1.ebuild
new file mode 100644
index 000000000000..02a1f35939e1
--- /dev/null
+++ b/dev-ml/core/core-0.16.1.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Jane Street's alternative to the standard library"
+HOMEPAGE="https://github.com/janestreet/core"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/base:${SLOT}
+ dev-ml/base_bigstring:${SLOT}
+ dev-ml/base_quickcheck:${SLOT}
+ dev-ml/bin_prot:${SLOT}
+ dev-ml/ppxlib:=
+ dev-ml/ppx_bin_prot:=
+ dev-ml/ppx_bench:=
+ dev-ml/ppx_custom_printf:=
+ dev-ml/ppx_disable_unused_warnings:=
+ dev-ml/ppx_fields_conv:=
+ dev-ml/ppx_fixed_literal:=
+ dev-ml/ppx_let:=
+ dev-ml/ppx_log:=
+ dev-ml/ppx_jane:${SLOT}
+ dev-ml/ppx_module_timer:=
+ dev-ml/ppx_optional:=
+ dev-ml/ppx_pipebang:=
+ dev-ml/ppx_sexp_message:${SLOT}
+ dev-ml/ppx_sexp_value:=
+ dev-ml/ppx_stable:=
+ dev-ml/ppx_string:=
+ dev-ml/ppx_ignore_instrumentation:=
+ dev-ml/typerep:${SLOT}
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/core/core-0.17.1-r1.ebuild b/dev-ml/core/core-0.17.1-r1.ebuild
new file mode 100644
index 000000000000..f7025cb03cf7
--- /dev/null
+++ b/dev-ml/core/core-0.17.1-r1.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Jane Street's alternative to the standard library"
+HOMEPAGE="https://github.com/janestreet/core"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/base_bigstring-${JSM}:=[ocamlopt?]
+ =dev-ml/base_quickcheck-${JSM}:=[ocamlopt?]
+ =dev-ml/bin_prot-${JSM}:=[ocamlopt?]
+ =dev-ml/fieldslib-${JSM}:=[ocamlopt?]
+ =dev-ml/jane-street-headers-${JSM}:=[ocamlopt?]
+ =dev-ml/jst-config-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_assert-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_base-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_diff-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_hash-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_inline_test-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_jane-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_optcomp-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_sexp_conv-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_sexp_message-${JSM}:=[ocamlopt?]
+ =dev-ml/sexplib-${JSM}:=[ocamlopt?]
+ =dev-ml/splittable_random-${JSM}:=[ocamlopt?]
+ =dev-ml/stdio-${JSM}:=[ocamlopt?]
+ =dev-ml/time_now-${JSM}:=[ocamlopt?]
+ =dev-ml/typerep-${JSM}:=[ocamlopt?]
+ =dev-ml/variantslib-${JSM}:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/core/metadata.xml b/dev-ml/core/metadata.xml
new file mode 100644
index 000000000000..f2cc82792251
--- /dev/null
+++ b/dev-ml/core/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <longdescription lang="en">
+ Core is Jane Street Capital's Ocaml standard library overlay. It
+ provides tail recursive versions of non tail recursive functions in
+ the standard library, changes the signature of many of the standard
+ modules, and adds new functionality.
+
+ Core_extended adds new functionality, but is only code reviewed on an
+ ad-hoc basis.
+ </longdescription>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/core_bench/Manifest b/dev-ml/core_bench/Manifest
new file mode 100644
index 000000000000..74955aa42890
--- /dev/null
+++ b/dev-ml/core_bench/Manifest
@@ -0,0 +1,2 @@
+DIST core_bench-0.16.0.tar.gz 47258 BLAKE2B 04ffc46994549e04f3ed8e6dfde72abfee8df6818cd42b5139aaaf5107a697a86167864cf0189be5708ed2a0148e3a810e562f89e27c4409530dc1f3bd566f01 SHA512 46fc0316dc345eb469bf0a5e2468fbf19babba76ed90bf90d74fa6de3d326b9a3f1b4f3949492c6b487aabce4b5f001d1db661069e15ca7c05b55eaeb9c382a7
+DIST core_bench-0.17.0.tar.gz 48889 BLAKE2B 5898460df65b6c6000cace4c7cc8bd35dbd3d4c9f1a47f8fdad862096796d20449e3e1d674dfb246289dfc1bba91f3625595b92a275fc146bfb1ce6ce00c0290 SHA512 79a13acb398a321aa7e144c9d0c1c5b0384d3ab987dbc2706f4b510e6c08b7e026ebeb375751e73df0f505fffd64933845263f6900f0c4340abae34c9ebcf95b
diff --git a/dev-ml/core_bench/core_bench-0.16.0.ebuild b/dev-ml/core_bench/core_bench-0.16.0.ebuild
new file mode 100644
index 000000000000..e2a60aabd45f
--- /dev/null
+++ b/dev-ml/core_bench/core_bench-0.16.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Micro-benchmarking library for OCaml"
+HOMEPAGE="https://github.com/janestreet/core_bench"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/core:${SLOT}
+ dev-ml/core_kernel:${SLOT}
+ dev-ml/core_unix:${SLOT}
+ dev-ml/ppx_compare:${SLOT}
+ dev-ml/ppx_jane:${SLOT}
+ dev-ml/ppx_let:${SLOT}
+ dev-ml/textutils:${SLOT}
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/core_bench/core_bench-0.17.0.ebuild b/dev-ml/core_bench/core_bench-0.17.0.ebuild
new file mode 100644
index 000000000000..debaca4cef4b
--- /dev/null
+++ b/dev-ml/core_bench/core_bench-0.17.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Micro-benchmarking library for OCaml"
+HOMEPAGE="https://github.com/janestreet/core_bench"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-5
+ dev-ml/core:${SLOT}[ocamlopt?]
+ dev-ml/core_extended:${SLOT}[ocamlopt?]
+ dev-ml/core_kernel:${SLOT}[ocamlopt?]
+ dev-ml/core_unix:${SLOT}[ocamlopt?]
+ dev-ml/delimited_parsing:${SLOT}[ocamlopt?]
+ dev-ml/ppx_compare:${SLOT}[ocamlopt?]
+ dev-ml/ppx_fields_conv:${SLOT}[ocamlopt?]
+ dev-ml/ppx_jane:${SLOT}[ocamlopt?]
+ dev-ml/ppx_let:${SLOT}[ocamlopt?]
+ dev-ml/ppx_sexp_conv:${SLOT}[ocamlopt?]
+ dev-ml/textutils:${SLOT}[ocamlopt?]
+ dev-ml/time_now:${SLOT}[ocamlopt?]
+ dev-ml/re:=[ocamlopt?]
+"
+RDEPEND="${DEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/core_bench/metadata.xml b/dev-ml/core_bench/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/core_bench/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/core_extended/Manifest b/dev-ml/core_extended/Manifest
new file mode 100644
index 000000000000..9bd6b014ff91
--- /dev/null
+++ b/dev-ml/core_extended/Manifest
@@ -0,0 +1 @@
+DIST core_extended-0.17.0.tar.gz 60067 BLAKE2B 63cee35040a3a221c0fb8f43ec9f56ecd72e4f0d9c70092d853362968a388dfe1951ee8ec5ad46a5a67194de39b743b3221b3aa7ada7f98df3827e869eed44e2 SHA512 6e6ceacc556164fd7b81a2444604f371276a888cc9b2671d2c6bd6fc413593114cf409f84f35df8c0edbf6ce6999b89cc7f64df5203e9cf96a4d3241f4ca453c
diff --git a/dev-ml/core_extended/core_extended-0.17.0.ebuild b/dev-ml/core_extended/core_extended-0.17.0.ebuild
new file mode 100644
index 000000000000..405b9ca9ef8b
--- /dev/null
+++ b/dev-ml/core_extended/core_extended-0.17.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit dune
+
+DESCRIPTION="Extra components that are not as closely vetted or as stable as Core"
+HOMEPAGE="https://github.com/janestreet/core_extended"
+SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ dev-ml/core:${SLOT}[ocamlopt?]
+ dev-ml/core_kernel:${SLOT}[ocamlopt?]
+ dev-ml/core_unix:${SLOT}[ocamlopt?]
+ dev-ml/ppx_jane:${SLOT}[ocamlopt?]
+ dev-ml/re:=[ocamlopt?]
+ dev-ml/record_builder:${SLOT}[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/core_extended/metadata.xml b/dev-ml/core_extended/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/core_extended/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/core_kernel/Manifest b/dev-ml/core_kernel/Manifest
new file mode 100644
index 000000000000..c4e07eac6fe4
--- /dev/null
+++ b/dev-ml/core_kernel/Manifest
@@ -0,0 +1,2 @@
+DIST core_kernel-0.16.0.tar.gz 276775 BLAKE2B 3e64ff9291c01b7f9d48a70e3106b09d96040b41720f36cc36d2067cf195451a0c948991f55b930bb6f58e28d75f47f21367785c2c06ac8459de0f72bf05f961 SHA512 a6cf486694514ea4393aa6b2bf688b4a21fd97238d22ddfa99af30ee478be23255d67f87c16115df03ceb3a7bf4726e92d0c01be0abb2308f36c027a5ab4bc04
+DIST core_kernel-0.17.0.tar.gz 285870 BLAKE2B d49d6e987502a3830a1b49d67ae3a05779298b6d2cbd3537dc9f9f0941298c0f4c9b76722678f32a4808fde95909d83afa45126f36853346f247a70841448226 SHA512 03ec1e78b53580cfe0e032e1e519dc1f02a14817c18e0db670a5c87696c9ffd919601da3ba3b674d308a190451ba6b539469a59f97bb5af42475f00e8132c16e
diff --git a/dev-ml/core_kernel/core_kernel-0.16.0.ebuild b/dev-ml/core_kernel/core_kernel-0.16.0.ebuild
new file mode 100644
index 000000000000..fbff9c2b3e9e
--- /dev/null
+++ b/dev-ml/core_kernel/core_kernel-0.16.0.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="System-independent part of Core"
+HOMEPAGE="https://github.com/janestreet/core_kernel"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+# Wants quickcheck_deprecated for now
+RESTRICT="test"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/base_quickcheck:=
+ dev-ml/core:${SLOT}
+ dev-ml/int_repr:${SLOT}
+ dev-ml/ppx_assert:=
+ dev-ml/ppx_bench:=
+ dev-ml/ppx_bin_prot:=
+ dev-ml/ppx_cold:=
+ dev-ml/ppx_compare:=
+ dev-ml/ppx_custom_printf:=
+ dev-ml/ppx_disable_unused_warnings:=
+ dev-ml/ppx_enumerate:=
+ dev-ml/ppx_expect:=
+ dev-ml/ppx_fields_conv:=
+ dev-ml/ppx_fixed_literal:=
+ dev-ml/ppx_globalize:=
+ dev-ml/ppx_hash:=
+ dev-ml/ppx_here:=
+ dev-ml/ppx_ignore_instrumentation:=
+ dev-ml/ppx_inline_test:=
+ dev-ml/ppx_let:=
+ dev-ml/ppx_log:=
+ dev-ml/ppx_module_timer:=
+ dev-ml/ppx_optcomp:${SLOT}
+ dev-ml/ppx_optional:=
+ dev-ml/ppx_pipebang:=
+ dev-ml/ppx_sexp_conv:=
+ dev-ml/ppx_sexp_message:=
+ dev-ml/ppx_sexp_value:=
+ dev-ml/ppx_stable:=
+ dev-ml/ppx_stable_witness:=
+ dev-ml/ppx_string:=
+ dev-ml/ppx_tydi:=
+ dev-ml/ppx_typerep_conv:=
+ dev-ml/ppx_variants_conv:=
+ dev-ml/ppxlib:=
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/core_kernel/core_kernel-0.17.0-r1.ebuild b/dev-ml/core_kernel/core_kernel-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..e98c48a0be04
--- /dev/null
+++ b/dev-ml/core_kernel/core_kernel-0.17.0-r1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="System-independent part of Core"
+HOMEPAGE="https://github.com/janestreet/core_kernel"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Wants quickcheck_deprecated for now
+RESTRICT="test"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/core-${JSM}:=[ocamlopt?]
+ =dev-ml/int_repr-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_jane-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_optcomp-${JSM}:=[ocamlopt?]
+ =dev-ml/uopt-${JSM}:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/core_kernel/metadata.xml b/dev-ml/core_kernel/metadata.xml
new file mode 100644
index 000000000000..bdba23fda3ad
--- /dev/null
+++ b/dev-ml/core_kernel/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <longdescription lang="en">
+ Core_kernel is the system-independent part of Core. It is aimed for
+ cases when the full Core is not available, such as in Javascript. It
+ provides an overlay on the usual namespace, so the best way to use
+ Core is to start your file with:
+
+ open Core_kernel.Std
+ </longdescription>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/core_unix/Manifest b/dev-ml/core_unix/Manifest
new file mode 100644
index 000000000000..d0631f572dad
--- /dev/null
+++ b/dev-ml/core_unix/Manifest
@@ -0,0 +1,3 @@
+DIST core_unix-0.16.0.tar.gz 391719 BLAKE2B 29105ee1b8342241dbea136207d221af04d9412a74412fb4fd532f08b22b842125a72e69a47d36129a99c04cd3a83e605bc42b970d79a52420b3e273bd9915d5 SHA512 e38a126af832360f0e0079919b930f3fa99b02935c35372b1ed8c7e174af335de2f4dcb8da90be8f9f524542752dd5c62ec6192eb327d7cc6313b7402b0f7f65
+DIST core_unix-0.17.0.tar.gz 403348 BLAKE2B 9afc07343427e84dc71df23b2d3a4e02780dcb75b4969d06a7d06d47b7dfe17e464223258733673265491cecfbea07f92f429167b81ead226319c452e4b895db SHA512 15472af90b0dda207eec57701f7e4f796b3aa35ae81491ffaff5611e3e5ff0532c80464c92528d970b5d651774d4a89fd3ab619b53f4871cf1ffd7741625f6e3
+DIST core_unix-0.17.1.tar.gz 403373 BLAKE2B 384bc85e12362e7ec02c9e2e1e38f6350d8c9db682e4e8a23184487a0261b45373460d3f22d7a87856d88bfc1176a1ea5d7d5fa0d88979b81c8250e546c9ea7a SHA512 c4e8ce9d5885ac8fa8d554a97e1857f3a1c933e0eb5dfd4fe874412b9d09e6d0a2973b644733855553f33f5c859719228f0e6aaf3a2b7eb5befb46fc513750de
diff --git a/dev-ml/core_unix/core_unix-0.16.0-r1.ebuild b/dev-ml/core_unix/core_unix-0.16.0-r1.ebuild
new file mode 100644
index 000000000000..b7b8b6d9f16c
--- /dev/null
+++ b/dev-ml/core_unix/core_unix-0.16.0-r1.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2023-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit dune toolchain-funcs
+
+DESCRIPTION="Unix-specific portions of Core"
+HOMEPAGE="https://github.com/janestreet/core_unix"
+SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/core:=
+ dev-ml/core_kernel:${SLOT}
+ dev-ml/expect_test_helpers_core:${SLOT}
+ dev-ml/ocaml_intrinsics:${SLOT}
+ >=dev-ml/spawn-0.15:=
+ dev-ml/re:=
+ dev-ml/timezone:${SLOT}
+"
+RDEPEND="${DEPEND}"
+
+PATCHES=( "${FILESDIR}"/${P}-musl.patch )
+
+src_prepare() {
+ sed -i \
+ -e "s:gcc:$(tc-getCC):" \
+ unix_pseudo_terminal/src/discover.sh \
+ || die
+
+ default
+}
diff --git a/dev-ml/core_unix/core_unix-0.17.0.ebuild b/dev-ml/core_unix/core_unix-0.17.0.ebuild
new file mode 100644
index 000000000000..e8f5f1522617
--- /dev/null
+++ b/dev-ml/core_unix/core_unix-0.17.0.ebuild
@@ -0,0 +1,46 @@
+# Copyright 2023-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit dune toolchain-funcs
+
+DESCRIPTION="Unix-specific portions of Core"
+HOMEPAGE="https://github.com/janestreet/core_unix"
+SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ dev-ml/core:${SLOT}[ocamlopt?]
+ dev-ml/core_kernel:${SLOT}[ocamlopt?]
+ dev-ml/expect_test_helpers_core:${SLOT}[ocamlopt?]
+ dev-ml/jane-street-headers:${SLOT}[ocamlopt?]
+ dev-ml/jst-config:${SLOT}[ocamlopt?]
+ dev-ml/ppx_jane:${SLOT}[ocamlopt?]
+ dev-ml/ppx_optcomp:${SLOT}[ocamlopt?]
+ dev-ml/sexplib:${SLOT}[ocamlopt?]
+ >=dev-ml/spawn-0.15:=[ocamlopt?]
+ dev-ml/timezone:${SLOT}[ocamlopt?]
+ dev-ml/uopt:${SLOT}[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-musl.patch
+ "${FILESDIR}"/${P}-atomic.patch
+)
+
+src_prepare() {
+ sed -i \
+ -e "s:gcc:$(tc-getCC):" \
+ unix_pseudo_terminal/src/discover.sh \
+ || die
+
+ default
+}
diff --git a/dev-ml/core_unix/core_unix-0.17.1.ebuild b/dev-ml/core_unix/core_unix-0.17.1.ebuild
new file mode 100644
index 000000000000..daec9003d2c5
--- /dev/null
+++ b/dev-ml/core_unix/core_unix-0.17.1.ebuild
@@ -0,0 +1,47 @@
+# Copyright 2023-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit dune toolchain-funcs
+
+DESCRIPTION="Unix-specific portions of Core"
+HOMEPAGE="https://github.com/janestreet/core_unix"
+SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ dev-ml/core:${SLOT}[ocamlopt?]
+ dev-ml/core_kernel:${SLOT}[ocamlopt?]
+ dev-ml/expect_test_helpers_core:${SLOT}[ocamlopt?]
+ dev-ml/jane-street-headers:${SLOT}[ocamlopt?]
+ dev-ml/jst-config:${SLOT}[ocamlopt?]
+ dev-ml/ppx_jane:${SLOT}[ocamlopt?]
+ dev-ml/ppx_optcomp:${SLOT}[ocamlopt?]
+ dev-ml/sexplib:${SLOT}[ocamlopt?]
+ >=dev-ml/spawn-0.15:=[ocamlopt?]
+ dev-ml/timezone:${SLOT}[ocamlopt?]
+ dev-ml/uopt:${SLOT}[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.17.0-musl.patch
+ "${FILESDIR}"/${P}-riscv.patch
+)
+
+src_prepare() {
+ sed -i \
+ -e "s:gcc:$(tc-getCC):" \
+ unix_pseudo_terminal/src/discover.sh \
+ || die
+
+ default
+}
diff --git a/dev-ml/core_unix/files/core_unix-0.16.0-musl.patch b/dev-ml/core_unix/files/core_unix-0.16.0-musl.patch
new file mode 100644
index 000000000000..8e26f9706317
--- /dev/null
+++ b/dev-ml/core_unix/files/core_unix-0.16.0-musl.patch
@@ -0,0 +1,23 @@
+--- a/bigstring_unix/src/bigstring_unix_stubs.c 2023-07-08 18:01:05.614573701 +0200
++++ b/bigstring_unix/src/bigstring_unix_stubs.c 2023-07-08 18:01:20.505598860 +0200
+@@ -743,7 +743,7 @@
+ int count = Int_val(v_count);
+ size_t total_len = 0;
+ struct iovec *iovecs = copy_iovecs(&total_len, v_iovecs, count);
+- struct msghdr msghdr = {NULL, 0, NULL, 0, NULL, 0, 0};
++ struct msghdr msghdr = {NULL};
+ ssize_t ret;
+ if (total_len > THREAD_IO_CUTOFF || contains_mmapped(v_iovecs, count)) {
+ Begin_roots1(v_iovecs);
+--- a/linux_ext/src/linux_ext_stubs.c 2024-05-29 19:59:43.955479960 +0200
++++ b/linux_ext/src/linux_ext_stubs.c 2024-05-29 20:00:26.661018190 +0200
+@@ -243,7 +243,8 @@
+ int count = Int_val(v_count);
+ ssize_t ret;
+ struct iovec *iovecs = caml_stat_alloc(sizeof(struct iovec) * count);
+- struct msghdr msghdr = { NULL, 0, NULL, 0, NULL, 0, 0 };
++ struct msghdr msghdr;
++ memset(&msghdr, 0, sizeof(msghdr));
+ msghdr.msg_iov = iovecs;
+ msghdr.msg_iovlen = count;
+ for (--count; count >= 0; --count) {
diff --git a/dev-ml/core_unix/files/core_unix-0.17.0-atomic.patch b/dev-ml/core_unix/files/core_unix-0.17.0-atomic.patch
new file mode 100644
index 000000000000..64d9d28e50f5
--- /dev/null
+++ b/dev-ml/core_unix/files/core_unix-0.17.0-atomic.patch
@@ -0,0 +1,33 @@
+From ebce389ac68e098f542e34400e114ac992f415af Mon Sep 17 00:00:00 2001
+From: public-release <as-public-release@janestreet.com>
+Date: Tue, 8 Oct 2024 20:31:01 +0100
+Subject: [PATCH] v0.18~preview.130.00+55
+
+---
+ bigstring_unix/src/bigstring_unix_stubs.c | 7 +-
+
+diff --git a/bigstring_unix/src/bigstring_unix_stubs.c b/bigstring_unix/src/bigstring_unix_stubs.c
+index 0d4c7df..785ff10 100644
+--- a/bigstring_unix/src/bigstring_unix_stubs.c
++++ b/bigstring_unix/src/bigstring_unix_stubs.c
+@@ -46,6 +46,10 @@
+ #define bswap_64 bswap64
+ #endif
+
++#define CAML_INTERNALS
++#include <caml/io.h>
++#undef CAML_INTERNALS
++
+ #include "ocaml_utils.h"
+ #include "unix_utils.h"
+ #include <caml/socketaddr.h>
+@@ -309,9 +313,6 @@ CAMLprim value bigstring_recvfrom_assume_fd_is_nonblocking_stub(value v_sock, va
+
+ /* I/O of bigstrings from channels */
+
+-#define CAML_INTERNALS
+-#include <caml/io.h>
+-
+ CAMLprim value bigstring_input_stub(value v_min_len, value v_chan, value v_pos,
+ value v_len, value v_bstr) {
+ CAMLparam2(v_chan, v_bstr);
diff --git a/dev-ml/core_unix/files/core_unix-0.17.0-musl.patch b/dev-ml/core_unix/files/core_unix-0.17.0-musl.patch
new file mode 100644
index 000000000000..8844eb995c88
--- /dev/null
+++ b/dev-ml/core_unix/files/core_unix-0.17.0-musl.patch
@@ -0,0 +1,12 @@
+--- a/linux_ext/src/linux_ext_stubs.c 2024-05-29 19:59:43.955479960 +0200
++++ b/linux_ext/src/linux_ext_stubs.c 2024-05-29 20:00:26.661018190 +0200
+@@ -236,7 +236,8 @@
+ int count = Int_val(v_count);
+ ssize_t ret;
+ struct iovec *iovecs = caml_stat_alloc(sizeof(struct iovec) * count);
+- struct msghdr msghdr = {NULL, 0, NULL, 0, NULL, 0, 0};
++ struct msghdr msghdr;
++ memset(&msghdr, 0, sizeof(msghdr));
+ msghdr.msg_iov = iovecs;
+ msghdr.msg_iovlen = count;
+ for (--count; count >= 0; --count) {
diff --git a/dev-ml/core_unix/files/core_unix-0.17.1-riscv.patch b/dev-ml/core_unix/files/core_unix-0.17.1-riscv.patch
new file mode 100644
index 000000000000..f59541153de5
--- /dev/null
+++ b/dev-ml/core_unix/files/core_unix-0.17.1-riscv.patch
@@ -0,0 +1,16 @@
+--- a/time_stamp_counter/src/time_stamp_counter_stubs.c 2025-07-12 22:31:10.112736714 +0200
++++ b/time_stamp_counter/src/time_stamp_counter_stubs.c 2025-07-12 22:34:08.599793338 +0200
+@@ -44,6 +44,13 @@
+ asm volatile("mrs %0, cntvct_el0" : "=r" (tsc));
+ return tsc;
+ }
++#elif defined(__riscv)
++static uint64_t rdtsc()
++{
++ uint64_t tsc;
++ tsc = 0;
++ return tsc;
++}
+ #endif
+
+ CAMLprim CAMLweakdef uint64_t caml_rdtsc_unboxed(value unit) {
diff --git a/dev-ml/core_unix/metadata.xml b/dev-ml/core_unix/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/core_unix/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/cppo/Manifest b/dev-ml/cppo/Manifest
new file mode 100644
index 000000000000..9169941eaa9d
--- /dev/null
+++ b/dev-ml/cppo/Manifest
@@ -0,0 +1,5 @@
+DIST cppo-1.6.7.tar.gz 29032 BLAKE2B cc02666ca5fbc903cf6a749ee08f7fe34bad4604635084bbf964afdde66783c01e3d48d515eb42a5188189fef67ebe7cf79c0205c60537c9d1a8b14f453fd248 SHA512 fb2865b4004fe3f17d5893659fca90c01557cf6be789500c54b06ac8e0d097181c9f6437f178aae6d786b3f6b639859bc68400f4a7c59e7acd4f296cf8271a9d
+DIST cppo-1.6.8.tar.gz 29063 BLAKE2B 503c9dcc5f25cf69caa5057753ece9e107383a94d191a15f8056f7f417fa252147f2b2d3011493b80728aeca6979c0097e42b1d1af174784528959870366f5f9 SHA512 069bbe0ef09c03b0dc4b5795f909c3ef872fe99c6f1e6704a0fa97594b1570b3579226ec67fe11d696ccc349a4585055bbaf07c65eff423aa45af28abf38c858
+DIST cppo-1.6.9.tar.gz 31210 BLAKE2B 4e2d9bea57d705bb59de6d7ec990cdd44d2492b7d104d95c9f947172e7e46f5302a0a55f981ce19e5a2fd4b2de2209b4adae478235aca0729920dcba11c07b9b SHA512 26ff5a7b7f38c460661974b23ca190f0feae3a99f1974e0fd12ccf08745bd7d91b7bc168c70a5385b837bfff9530e0e4e41cf269f23dd8cf16ca658008244b44
+DIST cppo-1.7.0.tar.gz 41051 BLAKE2B 880a9775d1da3c459bd43720615d264beed0d0ffa775c58aab21f3fe56346bd959a81f73825a0c1349dd9da48d46f9827ff0f9447d19938fd32870945a23ad19 SHA512 cafa2f7add42912b413f39e1d9fb7a2a42a9be134128c179dfe353f35a6c32840720d2166a77d985941300cb945b9c424b38401d20027d814b25f3bac534506d
+DIST cppo-1.8.0.tar.gz 43588 BLAKE2B 932d6340cd190f781290895ab697d2c7a0b97ecfaaad3f52299e3ccb8df8c10f1f59f266186a6325d14ab07d19e9e6e457c9c3f01ee1b5a79c234eca19926a9b SHA512 3840725b767a0300bdc48f11d26d798bdcae0a764ed6798df3a08dfc8cc76fe124b14a19d47c9b5ea8e229d68b0311510afce77c0e4d9131fbda5116dc2689a2
diff --git a/dev-ml/cppo/cppo-1.6.7-r1.ebuild b/dev-ml/cppo/cppo-1.6.7-r1.ebuild
new file mode 100644
index 000000000000..1753b6f23aba
--- /dev/null
+++ b/dev-ml/cppo/cppo-1.6.7-r1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="An equivalent of the C preprocessor for OCaml programs"
+HOMEPAGE="https://github.com/ocaml-community/cppo/"
+SRC_URI="https://github.com/ocaml-community/cppo/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+SLOT="0/${PV}"
+LICENSE="BSD"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 x86"
+IUSE="+ocamlopt"
+
+RDEPEND="dev-ml/ocamlbuild:=
+ dev-ml/findlib:="
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/cppo/cppo-1.6.8-r1.ebuild b/dev-ml/cppo/cppo-1.6.8-r1.ebuild
new file mode 100644
index 000000000000..66030d3bfc18
--- /dev/null
+++ b/dev-ml/cppo/cppo-1.6.8-r1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="An equivalent of the C preprocessor for OCaml programs"
+HOMEPAGE="https://github.com/ocaml-community/cppo/"
+SRC_URI="https://github.com/ocaml-community/cppo/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+SLOT="0/${PV}"
+LICENSE="BSD"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt"
+
+RDEPEND="dev-ml/ocamlbuild:=
+ dev-ml/findlib:="
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/cppo/cppo-1.6.9-r1.ebuild b/dev-ml/cppo/cppo-1.6.9-r1.ebuild
new file mode 100644
index 000000000000..fc0b069b6af4
--- /dev/null
+++ b/dev-ml/cppo/cppo-1.6.9-r1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="An equivalent of the C preprocessor for OCaml programs"
+HOMEPAGE="https://github.com/ocaml-community/cppo/"
+SRC_URI="https://github.com/ocaml-community/cppo/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+SLOT="0/${PV}"
+LICENSE="BSD"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt"
+
+RDEPEND="dev-ml/ocamlbuild:=
+ dev-ml/findlib:="
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/cppo/cppo-1.7.0.ebuild b/dev-ml/cppo/cppo-1.7.0.ebuild
new file mode 100644
index 000000000000..7bb6ff1edec1
--- /dev/null
+++ b/dev-ml/cppo/cppo-1.7.0.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="An equivalent of the C preprocessor for OCaml programs"
+HOMEPAGE="https://github.com/ocaml-community/cppo/"
+SRC_URI="https://github.com/ocaml-community/cppo/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+RDEPEND="dev-ml/ocamlbuild:=
+ dev-ml/findlib:="
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/cppo/cppo-1.8.0.ebuild b/dev-ml/cppo/cppo-1.8.0.ebuild
new file mode 100644
index 000000000000..7bb6ff1edec1
--- /dev/null
+++ b/dev-ml/cppo/cppo-1.8.0.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="An equivalent of the C preprocessor for OCaml programs"
+HOMEPAGE="https://github.com/ocaml-community/cppo/"
+SRC_URI="https://github.com/ocaml-community/cppo/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+RDEPEND="dev-ml/ocamlbuild:=
+ dev-ml/findlib:="
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/cppo/metadata.xml b/dev-ml/cppo/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/cppo/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/cryptokit/Manifest b/dev-ml/cryptokit/Manifest
new file mode 100644
index 000000000000..b6da13fbddeb
--- /dev/null
+++ b/dev-ml/cryptokit/Manifest
@@ -0,0 +1,4 @@
+DIST cryptokit-1.16.1.tar.gz 120607 BLAKE2B fbb89c4dabef8f09614003acc2b8173fdfdacb36793fd20f4415ebec04f3759537739eccd7b9d143df0163816b9db65c221c2b83408c9ac3aa7f9bf7b63876c6 SHA512 28913a7c35ae951a4c464287acc511ee1bdc9d03b5928e2243c5ae5cbb8b10afe8e84d7a73ba6478ed62657d01fdb6f02472739255c33de3671c4130b659da52
+DIST cryptokit-1.19.tar.gz 162353 BLAKE2B cded152e90c140801fba6730837c8aa6b2755613a0f75d97ae91d7b04f76af7962de00a413cd950d5187efa2e67b98904b161e8ba2d89567ec447ed09a3e8671 SHA512 11c942d561e9808b8811400fa1b4b738ded2e3f7b4e3d886c00b97a6cd7c726ff384962aee821885e06bcf6bbe3a34d3157a4a4c89defb5b474c01165085d08b
+DIST cryptokit-1.20.1.tar.gz 162579 BLAKE2B e9a59d492ee3cf7c4a393f1115b327f40be6a3e3f4c0753f1dc35f106840b08881ea4d13b4ed2b41b5d741eac188ea8f44ea7f7087030eae34bfecefaab0e39c SHA512 7b1e2ba8b99b11a04522ffe4b6b92278bc772d9888967757ab013151211fc85d29847af566677f2b9c3200e45b857600a70356ca6ed80ca299508808057358b1
+DIST cryptokit-1.21.1.tar.gz 170096 BLAKE2B 2fe318fe5258b9b35b29ac5a724110ec2b0a0bf7ccaf5deefec58606f5fd4370a66205cf2712c1eaabedb7e7febb5296a9f85c4a1a173933c4bf0f7c9e02a149 SHA512 9bbe610b226d719f2b1a478e1584adbd2d12515190ebea6d88259772df6b66f7184914efe5baf43b9074bb1f0424224c6d8cf890e126cacf6f94744c78d83636
diff --git a/dev-ml/cryptokit/cryptokit-1.16.1-r2.ebuild b/dev-ml/cryptokit/cryptokit-1.16.1-r2.ebuild
new file mode 100644
index 000000000000..fc24923f4fe1
--- /dev/null
+++ b/dev-ml/cryptokit/cryptokit-1.16.1-r2.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+MY_PV="$(ver_rs 1- '')"
+DESCRIPTION="Cryptographic primitives library for Objective Caml"
+HOMEPAGE="https://github.com/xavierleroy/cryptokit"
+SRC_URI="https://github.com/xavierleroy/cryptokit/archive/release${MY_PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-release${MY_PV}"
+
+LICENSE="LGPL-2"
+SLOT="0/${PV}"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc x86"
+IUSE="cpu_flags_x86_aes +ocamlopt test zlib"
+REQUIRED_USE="test? ( ocamlopt )"
+RESTRICT="!test? ( test )"
+
+# We can't use mpir on zarith
+# (until it gains mpz_powm_sec?)
+# bug #750740
+DEPEND="
+ dev-ml/dune-configurator
+ dev-ml/zarith:=[-mpir(-)]
+ zlib? ( >=virtual/zlib-1.1:= )
+"
+RDEPEND="${DEPEND}"
+
+DOCS=( "Changes" "README.txt" "AUTHORS.txt" )
+
+src_configure() {
+ # Don't build in src_configure
+ sed -i -e 's:exit (Sys.command "dune build @configure --release")::' configure || die
+
+ # It's not autotools (or even close), it's a Dune wrapper.
+ ./configure \
+ $(use_enable cpu_flags_x86_aes hardwaresupport) \
+ $(use_enable zlib) \
+ || die
+}
+
+pkg_postinst() {
+ elog ""
+ elog "This library uses the /dev/random device to generate "
+ elog "random data and RSA keys. The device should either be"
+ elog "built into the kernel or provided as a module. An"
+ elog "alternative is to use the Entropy Gathering Daemon"
+ elog "(http://egd.sourceforge.net). Please note that the"
+ elog "remainder of the library will still work even in the"
+ elog "absence of a one of these sources of randomness."
+ elog ""
+}
+
+src_test() {
+ echo ""
+ einfo "You must have either /dev/random or the Entropy Gathering"
+ einfo "Daemon (EGD) for this test to succeed!"
+ echo ""
+
+ dune_src_test
+}
diff --git a/dev-ml/cryptokit/cryptokit-1.19.ebuild b/dev-ml/cryptokit/cryptokit-1.19.ebuild
new file mode 100644
index 000000000000..9f1724857ca6
--- /dev/null
+++ b/dev-ml/cryptokit/cryptokit-1.19.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+MY_PV="$(ver_rs 1- '')"
+DESCRIPTION="Cryptographic primitives library for Objective Caml"
+HOMEPAGE="https://github.com/xavierleroy/cryptokit"
+SRC_URI="https://github.com/xavierleroy/cryptokit/archive/release${MY_PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-release${MY_PV}"
+
+LICENSE="LGPL-2"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~x86"
+IUSE="cpu_flags_x86_aes +ocamlopt test zlib"
+REQUIRED_USE="test? ( ocamlopt )"
+RESTRICT="!test? ( test )"
+
+# We can't use mpir on zarith
+# (until it gains mpz_powm_sec?)
+# bug #750740
+DEPEND="
+ dev-ml/dune-configurator
+ dev-ml/zarith:=[-mpir(-)]
+ zlib? ( >=virtual/zlib-1.1:= )
+"
+RDEPEND="${DEPEND}"
+
+DOCS=( "Changes" "README.txt" "AUTHORS.txt" )
+
+src_configure() {
+ # Don't build in src_configure
+ sed -i -e 's:exit (Sys.command "dune build @configure --release")::' configure || die
+
+ # It's not autotools (or even close), it's a Dune wrapper.
+ ./configure \
+ $(use_enable cpu_flags_x86_aes hardwaresupport) \
+ $(use_enable zlib) \
+ || die
+}
+
+pkg_postinst() {
+ elog ""
+ elog "This library uses the /dev/random device to generate "
+ elog "random data and RSA keys. The device should either be"
+ elog "built into the kernel or provided as a module. An"
+ elog "alternative is to use the Entropy Gathering Daemon"
+ elog "(http://egd.sourceforge.net). Please note that the"
+ elog "remainder of the library will still work even in the"
+ elog "absence of a one of these sources of randomness."
+ elog ""
+}
+
+src_test() {
+ echo ""
+ einfo "You must have either /dev/random or the Entropy Gathering"
+ einfo "Daemon (EGD) for this test to succeed!"
+ echo ""
+
+ dune_src_test
+}
diff --git a/dev-ml/cryptokit/cryptokit-1.20.1.ebuild b/dev-ml/cryptokit/cryptokit-1.20.1.ebuild
new file mode 100644
index 000000000000..9f1724857ca6
--- /dev/null
+++ b/dev-ml/cryptokit/cryptokit-1.20.1.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+MY_PV="$(ver_rs 1- '')"
+DESCRIPTION="Cryptographic primitives library for Objective Caml"
+HOMEPAGE="https://github.com/xavierleroy/cryptokit"
+SRC_URI="https://github.com/xavierleroy/cryptokit/archive/release${MY_PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-release${MY_PV}"
+
+LICENSE="LGPL-2"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~x86"
+IUSE="cpu_flags_x86_aes +ocamlopt test zlib"
+REQUIRED_USE="test? ( ocamlopt )"
+RESTRICT="!test? ( test )"
+
+# We can't use mpir on zarith
+# (until it gains mpz_powm_sec?)
+# bug #750740
+DEPEND="
+ dev-ml/dune-configurator
+ dev-ml/zarith:=[-mpir(-)]
+ zlib? ( >=virtual/zlib-1.1:= )
+"
+RDEPEND="${DEPEND}"
+
+DOCS=( "Changes" "README.txt" "AUTHORS.txt" )
+
+src_configure() {
+ # Don't build in src_configure
+ sed -i -e 's:exit (Sys.command "dune build @configure --release")::' configure || die
+
+ # It's not autotools (or even close), it's a Dune wrapper.
+ ./configure \
+ $(use_enable cpu_flags_x86_aes hardwaresupport) \
+ $(use_enable zlib) \
+ || die
+}
+
+pkg_postinst() {
+ elog ""
+ elog "This library uses the /dev/random device to generate "
+ elog "random data and RSA keys. The device should either be"
+ elog "built into the kernel or provided as a module. An"
+ elog "alternative is to use the Entropy Gathering Daemon"
+ elog "(http://egd.sourceforge.net). Please note that the"
+ elog "remainder of the library will still work even in the"
+ elog "absence of a one of these sources of randomness."
+ elog ""
+}
+
+src_test() {
+ echo ""
+ einfo "You must have either /dev/random or the Entropy Gathering"
+ einfo "Daemon (EGD) for this test to succeed!"
+ echo ""
+
+ dune_src_test
+}
diff --git a/dev-ml/cryptokit/cryptokit-1.21.1.ebuild b/dev-ml/cryptokit/cryptokit-1.21.1.ebuild
new file mode 100644
index 000000000000..74d48a584ec1
--- /dev/null
+++ b/dev-ml/cryptokit/cryptokit-1.21.1.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+MY_PV="$(ver_rs 1- '')"
+DESCRIPTION="Cryptographic primitives library for Objective Caml"
+HOMEPAGE="https://github.com/xavierleroy/cryptokit"
+SRC_URI="https://github.com/xavierleroy/cryptokit/archive/release${MY_PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-release${MY_PV}"
+
+LICENSE="LGPL-2"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~x86"
+IUSE="cpu_flags_x86_aes +ocamlopt test zlib"
+REQUIRED_USE="test? ( ocamlopt )"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ dev-ml/dune-configurator
+ dev-ml/zarith:=
+ zlib? ( >=virtual/zlib-1.1:= )
+"
+RDEPEND="${DEPEND}"
+
+DOCS=( "Changes" "README.txt" "AUTHORS.txt" )
+
+src_configure() {
+ # Don't build in src_configure
+ sed -i -e 's:exit (Sys.command "dune build @configure --release")::' configure || die
+
+ # It's not autotools (or even close), it's a Dune wrapper.
+ ./configure \
+ $(use_enable cpu_flags_x86_aes hardwaresupport) \
+ $(use_enable zlib) \
+ || die
+}
+
+pkg_postinst() {
+ elog ""
+ elog "This library uses the /dev/random device to generate "
+ elog "random data and RSA keys. The device should either be"
+ elog "built into the kernel or provided as a module. An"
+ elog "alternative is to use the Entropy Gathering Daemon"
+ elog "(http://egd.sourceforge.net). Please note that the"
+ elog "remainder of the library will still work even in the"
+ elog "absence of a one of these sources of randomness."
+ elog ""
+}
+
+src_test() {
+ echo ""
+ einfo "You must have either /dev/random or the Entropy Gathering"
+ einfo "Daemon (EGD) for this test to succeed!"
+ echo ""
+
+ dune_src_test
+}
diff --git a/dev-ml/cryptokit/metadata.xml b/dev-ml/cryptokit/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/cryptokit/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/csexp/Manifest b/dev-ml/csexp/Manifest
new file mode 100644
index 000000000000..09d0e000b332
--- /dev/null
+++ b/dev-ml/csexp/Manifest
@@ -0,0 +1 @@
+DIST csexp-1.5.2.tbz 11447 BLAKE2B 2c0481fa1e713e86f0146acdae132b645374deb813c085e0c65881c1edcee45ebfc863d13b9e5fa15d236f1a5634c4549248fe986afff71edf47ab9d648aa552 SHA512 be281018bcfc20d4db14894ef51c4b836d6338d2fdfe22e63d46f405f8dea7349e16f1c0ecd65f73d4c85a2a80e618cdbb8c9dafcbb9f229f04f1adca5b1973c
diff --git a/dev-ml/csexp/csexp-1.5.2-r1.ebuild b/dev-ml/csexp/csexp-1.5.2-r1.ebuild
new file mode 100644
index 000000000000..e2119569d306
--- /dev/null
+++ b/dev-ml/csexp/csexp-1.5.2-r1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2020-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Parsing and printing of S-expressions in Canonical form"
+HOMEPAGE="https://github.com/ocaml-dune/csexp/"
+SRC_URI="https://github.com/ocaml-dune/csexp/releases/download/${PV}/${P}.tbz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND=">=dev-ml/result-1.5:=[ocamlopt=]"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ >=dev-ml/dune-3.4
+ test? ( dev-ml/ppx_expect )
+"
diff --git a/dev-ml/csexp/metadata.xml b/dev-ml/csexp/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/csexp/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/cstruct/Manifest b/dev-ml/cstruct/Manifest
new file mode 100644
index 000000000000..d7d4adfc959d
--- /dev/null
+++ b/dev-ml/cstruct/Manifest
@@ -0,0 +1 @@
+DIST cstruct-6.2.0.tbz 241841 BLAKE2B 9a662bf1208e80afda486dd46169b281e838e49666aca01a9ad57b9516fa055af315ea12d5e5bb8994df67eb2f6edabe544a89a2a2a370249e5b72e109f01b1a SHA512 8d33fe6b3707a3994d0225cd33cadde0bb2ca834ef01096e3df33a08e4a8c6d02ebccddf558a73988b8a5595b65fdc10de61efbf872c6c9e55c719c7e19c463d
diff --git a/dev-ml/cstruct/cstruct-6.2.0-r1.ebuild b/dev-ml/cstruct/cstruct-6.2.0-r1.ebuild
new file mode 100644
index 000000000000..49607c5dc93e
--- /dev/null
+++ b/dev-ml/cstruct/cstruct-6.2.0-r1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 2024-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Access C-like structures directly from OCaml"
+HOMEPAGE="https://github.com/mirage/ocaml-cstruct"
+SRC_URI="https://github.com/mirage/ocaml-cstruct/releases/download/v${PV}/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="test? (
+ dev-ml/alcotest
+ dev-ml/cppo
+ dev-ml/ocaml-migrate-parsetree
+ dev-ml/ppx_sexp_conv
+ dev-ml/ppxlib
+ dev-ml/sexplib
+ )
+"
+
+src_compile() {
+ dune-compile ${PN}
+}
diff --git a/dev-ml/cstruct/metadata.xml b/dev-ml/cstruct/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/cstruct/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/cudf/Manifest b/dev-ml/cudf/Manifest
new file mode 100644
index 000000000000..b54469da8028
--- /dev/null
+++ b/dev-ml/cudf/Manifest
@@ -0,0 +1 @@
+DIST cudf-v0.10.tar.bz2 47664 BLAKE2B 6ecdfc4243d80f12f6904b334f93ff47beb94535b6ba84992c6a31d244a7c2dcb6072e67828d96b31d4628bb244022fd962efcdcae5299f5a57694f3aa6c95a8 SHA512 b36ecad224070d2c07d4123fb7e39160390ddec4196505e66aad9fbd982bd7ca320ff5f0e771e7996da49bff22fb87fc057060277695b75cd68de19e57cb3855
diff --git a/dev-ml/cudf/cudf-0.10-r1.ebuild b/dev-ml/cudf/cudf-0.10-r1.ebuild
new file mode 100644
index 000000000000..4dcacb01d097
--- /dev/null
+++ b/dev-ml/cudf/cudf-0.10-r1.ebuild
@@ -0,0 +1,99 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune toolchain-funcs
+
+MYP=${PN}-v${PV}
+DESCRIPTION="Library to parse, pretty print, and evaluate CUDF documents"
+HOMEPAGE="http://www.mancoosi.org/cudf/"
+SRC_URI="https://gitlab.com/irill/${PN}/-/archive/v${PV}/${MYP}.tar.bz2"
+
+S="${WORKDIR}"/${MYP}
+
+LICENSE="LGPL-3+"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt llvm-libunwind test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-ml/extlib:=
+ dev-ml/findlib:=
+ dev-libs/glib:2
+ llvm-libunwind? ( llvm-runtimes/libunwind:= )
+ !llvm-libunwind? ( sys-libs/libunwind:= )
+ sys-libs/ncurses:=
+ app-arch/zstd
+"
+DEPEND="${RDEPEND}
+ test? ( dev-ml/ounit2 )
+ dev-ml/ocamlbuild
+ dev-lang/perl
+"
+BDEPEND="virtual/pkgconfig"
+
+QA_FLAGS_IGNORED='.*'
+
+src_prepare() {
+ default
+
+ sed -i \
+ -e 's|make|$(MAKE)|g' \
+ Makefile || die
+
+ if has_version ">=dev-lang/ocaml-5" ; then
+ sed -i \
+ -e 's|-lncurses|$(shell ${PKG_CONFIG} --libs ncurses glib-2.0) -lunwind -lzstd|g' \
+ -e "s|ar r|$(tc-getAR) r|g" \
+ c-lib/Makefile || die
+ sed -i \
+ -e 's|-lcurses|$(shell ${PKG_CONFIG} --libs ncurses glib-2.0) -lunwind -lzstd|g' \
+ c-lib/Makefile.variants || die
+ if use ocamlopt ; then
+ sed -i \
+ -e 's|-lunix|-lunixnat|g' \
+ c-lib/Makefile || die
+ else
+ sed -i \
+ -e 's|-lunix|-lunixbyt|g' \
+ c-lib/Makefile || die
+ fi
+ else
+ sed -i \
+ -e 's|-lncurses|$(shell ${PKG_CONFIG} --libs ncurses glib-2.0) -lunwind|g' \
+ -e "s|ar r|$(tc-getAR) r|g" \
+ c-lib/Makefile || die
+ sed -i \
+ -e 's|-lcurses|$(shell ${PKG_CONFIG} --libs ncurses glib-2.0) -lunwind|g' \
+ c-lib/Makefile.variants || die
+ fi
+
+ tc-export CC PKG_CONFIG
+
+ sed -i \
+ -e "s|-lncurses|$( $(tc-getPKG_CONFIG) --libs ncurses)|g" \
+ c-lib/cudf.pc.in || die
+}
+
+src_compile() {
+ dune_src_compile
+ emake c-lib
+ if use ocamlopt ; then
+ emake c-lib-opt
+ fi
+}
+
+src_test() {
+ dune_src_test
+ emake c-lib-test
+}
+
+src_install() {
+ dune_src_install
+ mv "${ED}"/usr/share/doc/${PF}/{cudf/README,} || die
+ rmdir "${ED}"/usr/share/doc/${PF}/cudf || die
+ emake DESTDIR="${ED}" -C c-lib/ LIBDIR="/usr/$(get_libdir)" -e install
+ dodoc BUGS ChangeLog
+}
diff --git a/dev-ml/cudf/metadata.xml b/dev-ml/cudf/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/cudf/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/curses/Manifest b/dev-ml/curses/Manifest
new file mode 100644
index 000000000000..4adfc30bb69e
--- /dev/null
+++ b/dev-ml/curses/Manifest
@@ -0,0 +1,2 @@
+DIST curses-1.0.10.tbz 25780 BLAKE2B 62eba2e769571e73d22ed1cd698e64895be2a78fe53a98feffd98a0ee0914d765e8d9a997792721b7f2fb544d6db88c94e6e6946bf60cd1d3628a987a6891d60 SHA512 158626f3fd6931f30482a47ab149990ff49334c8c0dc966eb07d92f22e87faaab3fd48ed7788bbc5a77f82cb6163520588ce55ab53456bca22994f147c7e00c5
+DIST curses-1.0.11.tar.gz 28807 BLAKE2B dec943cbde1c4cc15572601e198872a8e17ae0de48f71923c6a8f110f65f2bc882ced5a343823ed83c98b9d30eae23564c013a49e05aa2d700702d4c239de6b2 SHA512 343113ab56ce339d8dc534087c27c88513a15a7d4337187f0d8e939c05730c6f2f4e6ddb2bfa6eed96b38d8e0271762d34be0ecf94bbfcbaeef29c12a362c672
diff --git a/dev-ml/curses/curses-1.0.10.ebuild b/dev-ml/curses/curses-1.0.10.ebuild
new file mode 100644
index 000000000000..3e59eb4bb28b
--- /dev/null
+++ b/dev-ml/curses/curses-1.0.10.ebuild
@@ -0,0 +1,19 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Bindings to ncurses"
+HOMEPAGE="https://github.com/mbacarella/curses"
+SRC_URI="https://github.com/mbacarella/${PN}/releases/download/${PV}/${P}.tbz"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
+
+BDEPEND="dev-ml/dune-configurator"
+
+PATCHES=( "${FILESDIR}"/${P}-CC.patch )
diff --git a/dev-ml/curses/curses-1.0.11.ebuild b/dev-ml/curses/curses-1.0.11.ebuild
new file mode 100644
index 000000000000..4d4073b15f39
--- /dev/null
+++ b/dev-ml/curses/curses-1.0.11.ebuild
@@ -0,0 +1,18 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Bindings to ncurses"
+HOMEPAGE="https://github.com/mbacarella/curses"
+SRC_URI="https://github.com/mbacarella/${PN}/archive/refs/tags/${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
+
+BDEPEND="dev-ml/dune-configurator"
diff --git a/dev-ml/curses/files/curses-1.0.10-CC.patch b/dev-ml/curses/files/curses-1.0.10-CC.patch
new file mode 100644
index 000000000000..8acff01c5d9c
--- /dev/null
+++ b/dev-ml/curses/files/curses-1.0.10-CC.patch
@@ -0,0 +1,11 @@
+--- a/dune 2022-03-21 21:07:36.326440959 +0100
++++ b/dune 2022-03-21 21:07:46.650295407 +0100
+@@ -45,7 +45,7 @@
+ %{workspace_root}
+ (with-stdout-to
+ %{target}
+- (system "%{bin:gcc} -x c -E _curses.ml")))))
++ (system "%{cc} -x c -E _curses.ml")))))
+
+ (rule
+ (targets c_flags.sexp c_library_flags.sexp config.ml _config.h)
diff --git a/dev-ml/curses/metadata.xml b/dev-ml/curses/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/curses/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/delimited_parsing/Manifest b/dev-ml/delimited_parsing/Manifest
new file mode 100644
index 000000000000..fd550ea29008
--- /dev/null
+++ b/dev-ml/delimited_parsing/Manifest
@@ -0,0 +1 @@
+DIST delimited_parsing-0.17.0.tar.gz 12282 BLAKE2B e03f9fa8d3b85fc5a71b7f3fef41ae83afee638cf528490c2498bc271180b76fc6852b1cba0f3d3521d07b66be41b5973819e3fa28e1800d55fd873e22c6c143 SHA512 be222b03edbe22d4968985c96def74af2598f996ca80aca97e18bab997d76e0cb072c459797d5657dc479cc7e43bd0df647d0148fb55c74247d41af69db4cbb9
diff --git a/dev-ml/delimited_parsing/delimited_parsing-0.17.0.ebuild b/dev-ml/delimited_parsing/delimited_parsing-0.17.0.ebuild
new file mode 100644
index 000000000000..59a89d47c7b2
--- /dev/null
+++ b/dev-ml/delimited_parsing/delimited_parsing-0.17.0.ebuild
@@ -0,0 +1,25 @@
+# Copyright 2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit dune
+
+DESCRIPTION="Parsing of character (e.g., comma) separated and fixed-width values"
+HOMEPAGE="https://github.com/janestreet/delimited_parsing"
+SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ dev-ml/async:${SLOT}[ocamlopt?]
+ dev-ml/core:${SLOT}[ocamlopt?]
+ dev-ml/core_extended:${SLOT}[ocamlopt?]
+ dev-ml/ppx_jane:${SLOT}[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/delimited_parsing/metadata.xml b/dev-ml/delimited_parsing/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/delimited_parsing/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/dose3/Manifest b/dev-ml/dose3/Manifest
new file mode 100644
index 000000000000..364978c43c54
--- /dev/null
+++ b/dev-ml/dose3/Manifest
@@ -0,0 +1 @@
+DIST dose3-7.0.0.tar.bz2 1381598 BLAKE2B 8d34927a121c0baeac6b95424c8087f3da441b75468bcb1f385aa48d218b26cc168deec588ba348b62c97f76c0110fe16bdf5bd75738540dd5eda3a87ec02e05 SHA512 0752af050102cc7e7a2ae9a4e7a155e769ac961d716dd58b8d23201bc357678a1412ccc3a853bc38b69370ca863a7ad15d8cf9203938d813ccb9b71251632904
diff --git a/dev-ml/dose3/dose3-7.0.0-r2.ebuild b/dev-ml/dose3/dose3-7.0.0-r2.ebuild
new file mode 100644
index 000000000000..b9913e0d1d44
--- /dev/null
+++ b/dev-ml/dose3/dose3-7.0.0-r2.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Library to perform analysis on package repositories"
+HOMEPAGE="https://www.mancoosi.org/software/ https://irill.gitlab.io/dose3/"
+SRC_URI="https://gitlab.com/irill/${PN}/-/archive/${PV}/${P}.tar.bz2"
+S="${WORKDIR}/${PN}-$(ver_cut 1-3)"
+
+LICENSE="LGPL-3+" # with OCaml linking exception
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+BDEPEND="
+ dev-ml/findlib
+ dev-ml/ocamlbuild
+"
+# NOTE: dependencies on RPM, camlbz2, ZIP are unnecessary,
+# because those are only used by dose3-extra
+RDEPEND="
+ dev-ml/ocaml-base64:=[ocamlopt?]
+ dev-ml/cudf:=[ocamlopt?]
+ >=dev-ml/extlib-1.7.8:=[ocamlopt?]
+ dev-ml/ocamlgraph:=[ocamlopt?]
+ dev-ml/re:=[ocamlopt?]
+ dev-ml/stdlib-shims:=[ocamlopt?]
+ dev-ml/parmap:=[ocamlopt?]
+ dev-ml/ocaml-expat:=[ocamlopt?]
+ dev-ml/xml-light:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+
+# missing test data
+RESTRICT="test"
+
+src_compile() {
+ dune-compile ${PN}
+}
diff --git a/dev-ml/dose3/metadata.xml b/dev-ml/dose3/metadata.xml
new file mode 100644
index 000000000000..54ddb0454c4d
--- /dev/null
+++ b/dev-ml/dose3/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>fogti@ytrizja.de</email>
+ <name>Ellen Emilia Anna Zscheile</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/dune-build-info/Manifest b/dev-ml/dune-build-info/Manifest
new file mode 100644
index 000000000000..ae47bdca6b5e
--- /dev/null
+++ b/dev-ml/dune-build-info/Manifest
@@ -0,0 +1,5 @@
+DIST dune-3.16.0.tar.gz 2999701 BLAKE2B 5e371fa1003cec31273aeeb1a830036f48d3734588bd7a980b57aaae30d4984a34dec6f9be0ee9985c72dee08c2c6d456a789eab83cfce42c142a3abc6951b2e SHA512 3b1d041907128b6598e0f6150fe300a4a69098822f823ceead63b46e1005a21485738c6fa92641dd940c9f9cde48ae141ea51959a9b250bee3cbeb06ba788e23
+DIST dune-3.18.1.tar.gz 2918737 BLAKE2B 38731cdc61d2944f27487e844c554d0085e9a1787e9ebe7fb92e53d74df6e5919aaefe361c171e129451c7a57b95efe2cc066c1e087bf4a082ca34f6b5a100de SHA512 e9f188360f680bd4a2dad50a11f71e40aec42247f2eff2ac8f3071e6500620c1e631377e675f6b336c2ee9420d665885ce3509b7285bcef306521ba9b49c5208
+DIST dune-3.19.1.tar.gz 2917826 BLAKE2B 588a7d2195169ed1210a7126bd06cfdea4fa0e7735f23c346314c3cbbea1e76ec1286f1b56b337a151fc3246343c001794bde6a9eb85a4a05c6a1537ae2ae8bb SHA512 a101cad5d159a7134bd38d25968ea24189485b12f517e746c5b4c367a8d6ca0959ea59a71dc8c939e5d28a6ae644de9b3c12582579c044e3a081373ac680beb6
+DIST dune-3.20.2.tar.gz 3051854 BLAKE2B ce0ff1b7503d0b3bc72fc9c7e1c167c33cf071257066117c16ad24d2d2aeb9c3a84dccd2e24132eb3a95c6f0ee254810e8b1a9f39e8dc81752a97948be8438c3 SHA512 efb4376e03a3e760ee230c22ba8ac788623382437d9e3551fdd6bacdca1c6aa2db90246feb011d3d0e7ba3afa47161ebd06c80cfb24e357a82f7764bf003e355
+DIST dune-3.21.1.tar.gz 3431470 BLAKE2B cb0a155fff9e4c81438f31770856ab4a7107d78f5cca128aa675bb11ff62c66d4cffb4fb22e4a4f9eda8e9ec088cbf827b66a6511bd179a427bf16778cd42a0c SHA512 a304fc6bb854c3a1d5b86b3d3a942e140387ae82e52be240289ef89413d6e6017bc6869363aba3898d6a6be1cb31f4fe8b9264c735c87a1e18cad82a26054acb
diff --git a/dev-ml/dune-build-info/dune-build-info-3.16.0.ebuild b/dev-ml/dune-build-info/dune-build-info-3.16.0.ebuild
new file mode 100644
index 000000000000..cc218b53551f
--- /dev/null
+++ b/dev-ml/dune-build-info/dune-build-info-3.16.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Embed locations informations inside executable and libraries"
+HOMEPAGE="https://github.com/ocaml/dune"
+SRC_URI="https://github.com/ocaml/dune/archive/${PV}.tar.gz -> dune-${PV}.tar.gz"
+S="${WORKDIR}/dune-${PV}"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="amd64 ppc64 x86"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+RDEPEND=">=dev-ml/dune-3.12"
+DEPEND="${RDEPEND}"
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile ${PN}
+}
diff --git a/dev-ml/dune-build-info/dune-build-info-3.18.1.ebuild b/dev-ml/dune-build-info/dune-build-info-3.18.1.ebuild
new file mode 100644
index 000000000000..ca20151c926a
--- /dev/null
+++ b/dev-ml/dune-build-info/dune-build-info-3.18.1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Embed locations informations inside executable and libraries"
+HOMEPAGE="https://github.com/ocaml/dune"
+SRC_URI="https://github.com/ocaml/dune/archive/${PV}.tar.gz -> dune-${PV}.tar.gz"
+S="${WORKDIR}/dune-${PV}"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+RDEPEND=">=dev-ml/dune-3.12"
+DEPEND="${RDEPEND}"
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile ${PN}
+}
diff --git a/dev-ml/dune-build-info/dune-build-info-3.19.1-r1.ebuild b/dev-ml/dune-build-info/dune-build-info-3.19.1-r1.ebuild
new file mode 100644
index 000000000000..0999e52de171
--- /dev/null
+++ b/dev-ml/dune-build-info/dune-build-info-3.19.1-r1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Embed locations informations inside executable and libraries"
+HOMEPAGE="https://github.com/ocaml/dune"
+SRC_URI="https://github.com/ocaml/dune/archive/${PV}.tar.gz -> dune-${PV}.tar.gz"
+S="${WORKDIR}/dune-${PV}"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+RDEPEND=">=dev-ml/dune-3.18"
+DEPEND="${RDEPEND}"
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile ${PN}
+}
diff --git a/dev-ml/dune-build-info/dune-build-info-3.20.2.ebuild b/dev-ml/dune-build-info/dune-build-info-3.20.2.ebuild
new file mode 100644
index 000000000000..a7a3b4ecf683
--- /dev/null
+++ b/dev-ml/dune-build-info/dune-build-info-3.20.2.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Embed locations informations inside executable and libraries"
+HOMEPAGE="https://github.com/ocaml/dune"
+SRC_URI="https://github.com/ocaml/dune/archive/${PV}.tar.gz -> dune-${PV}.tar.gz"
+S="${WORKDIR}/dune-${PV}"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm64 ppc64 x86"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+RDEPEND=">=dev-ml/dune-3.20"
+DEPEND="${RDEPEND}"
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile ${PN}
+}
diff --git a/dev-ml/dune-build-info/dune-build-info-3.21.1.ebuild b/dev-ml/dune-build-info/dune-build-info-3.21.1.ebuild
new file mode 100644
index 000000000000..8ef9aa2d1f78
--- /dev/null
+++ b/dev-ml/dune-build-info/dune-build-info-3.21.1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Embed locations informations inside executable and libraries"
+HOMEPAGE="https://github.com/ocaml/dune"
+SRC_URI="https://github.com/ocaml/dune/archive/${PV}.tar.gz -> dune-${PV}.tar.gz"
+S="${WORKDIR}/dune-${PV}"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+RDEPEND=">=dev-ml/dune-3.21"
+DEPEND="${RDEPEND}"
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile ${PN}
+}
diff --git a/dev-ml/dune-build-info/metadata.xml b/dev-ml/dune-build-info/metadata.xml
new file mode 100644
index 000000000000..bdd5feb21585
--- /dev/null
+++ b/dev-ml/dune-build-info/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/ocaml/dune/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/dune-configurator/Manifest b/dev-ml/dune-configurator/Manifest
new file mode 100644
index 000000000000..06591ddd37b7
--- /dev/null
+++ b/dev-ml/dune-configurator/Manifest
@@ -0,0 +1,7 @@
+DIST dune-3.16.0.tar.gz 2999701 BLAKE2B 5e371fa1003cec31273aeeb1a830036f48d3734588bd7a980b57aaae30d4984a34dec6f9be0ee9985c72dee08c2c6d456a789eab83cfce42c142a3abc6951b2e SHA512 3b1d041907128b6598e0f6150fe300a4a69098822f823ceead63b46e1005a21485738c6fa92641dd940c9f9cde48ae141ea51959a9b250bee3cbeb06ba788e23
+DIST dune-3.16.1.tar.gz 3000392 BLAKE2B 93de09c47fda95e1d83f10c9a4e7cfb7f801c7c4e47acbed7a20ef614ff3a6585d8a25b8617c8ee45d338006a99084d096990d1e8c3cbeb6613caa7f0e1a70b5 SHA512 18e8022c5fa276e06f788cf25a4d6d08e3247c546cd69a5206d4e78ece1f47a615c6d5842e68e1fa7908cae7ae8c6e4f31d2eb835d97b5e6b5e4154957139e9f
+DIST dune-3.17.1.tar.gz 3011472 BLAKE2B 5bb6b33cf0961ab6e9276408b40498bf296327bd594e80f3b057d38cae980443feb3e2637630463a5bf10245d355b449a1123bbacefaec234982284288e3ce64 SHA512 2953a7c3cfddfe4ef82cbecafba75883f9ccfd96c5630313c95e49e10398d806b9dcd0385dff593a31752c915e20c1d1a0f5e0a20ad7195eb36f408c2d6b66f7
+DIST dune-3.18.1.tar.gz 2918737 BLAKE2B 38731cdc61d2944f27487e844c554d0085e9a1787e9ebe7fb92e53d74df6e5919aaefe361c171e129451c7a57b95efe2cc066c1e087bf4a082ca34f6b5a100de SHA512 e9f188360f680bd4a2dad50a11f71e40aec42247f2eff2ac8f3071e6500620c1e631377e675f6b336c2ee9420d665885ce3509b7285bcef306521ba9b49c5208
+DIST dune-3.19.1.tar.gz 2917826 BLAKE2B 588a7d2195169ed1210a7126bd06cfdea4fa0e7735f23c346314c3cbbea1e76ec1286f1b56b337a151fc3246343c001794bde6a9eb85a4a05c6a1537ae2ae8bb SHA512 a101cad5d159a7134bd38d25968ea24189485b12f517e746c5b4c367a8d6ca0959ea59a71dc8c939e5d28a6ae644de9b3c12582579c044e3a081373ac680beb6
+DIST dune-3.20.2.tar.gz 3051854 BLAKE2B ce0ff1b7503d0b3bc72fc9c7e1c167c33cf071257066117c16ad24d2d2aeb9c3a84dccd2e24132eb3a95c6f0ee254810e8b1a9f39e8dc81752a97948be8438c3 SHA512 efb4376e03a3e760ee230c22ba8ac788623382437d9e3551fdd6bacdca1c6aa2db90246feb011d3d0e7ba3afa47161ebd06c80cfb24e357a82f7764bf003e355
+DIST dune-3.21.1.tar.gz 3431470 BLAKE2B cb0a155fff9e4c81438f31770856ab4a7107d78f5cca128aa675bb11ff62c66d4cffb4fb22e4a4f9eda8e9ec088cbf827b66a6511bd179a427bf16778cd42a0c SHA512 a304fc6bb854c3a1d5b86b3d3a942e140387ae82e52be240289ef89413d6e6017bc6869363aba3898d6a6be1cb31f4fe8b9264c735c87a1e18cad82a26054acb
diff --git a/dev-ml/dune-configurator/dune-configurator-3.16.0-r1.ebuild b/dev-ml/dune-configurator/dune-configurator-3.16.0-r1.ebuild
new file mode 100644
index 000000000000..64655885dfcc
--- /dev/null
+++ b/dev-ml/dune-configurator/dune-configurator-3.16.0-r1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Helper library for gathering system configuration"
+HOMEPAGE="https://github.com/ocaml/dune"
+SRC_URI="https://github.com/ocaml/dune/archive/${PV}.tar.gz -> dune-${PV}.tar.gz"
+S="${WORKDIR}/dune-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+BDEPEND=">=dev-ml/dune-3.12"
+DEPEND="
+ >=dev-ml/csexp-1.5:=[ocamlopt?]
+"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ default
+
+ # This enables dune-configurator to use the vendored csexp module
+ sed -i 's/stdune.csexp/dune-configurator.csexp/' \
+ vendor/csexp/src/dune || die
+}
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile ${PN}
+}
diff --git a/dev-ml/dune-configurator/dune-configurator-3.16.1.ebuild b/dev-ml/dune-configurator/dune-configurator-3.16.1.ebuild
new file mode 100644
index 000000000000..72cb74746f80
--- /dev/null
+++ b/dev-ml/dune-configurator/dune-configurator-3.16.1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Helper library for gathering system configuration"
+HOMEPAGE="https://github.com/ocaml/dune"
+SRC_URI="https://github.com/ocaml/dune/archive/${PV}.tar.gz -> dune-${PV}.tar.gz"
+S="${WORKDIR}/dune-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+BDEPEND=">=dev-ml/dune-3.12"
+DEPEND="
+ >=dev-ml/csexp-1.5:=[ocamlopt?]
+"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ default
+
+ # This enables dune-configurator to use the vendored csexp module
+ sed -i 's/stdune.csexp/dune-configurator.csexp/' \
+ vendor/csexp/src/dune || die
+}
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile ${PN}
+}
diff --git a/dev-ml/dune-configurator/dune-configurator-3.17.1.ebuild b/dev-ml/dune-configurator/dune-configurator-3.17.1.ebuild
new file mode 100644
index 000000000000..72cb74746f80
--- /dev/null
+++ b/dev-ml/dune-configurator/dune-configurator-3.17.1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Helper library for gathering system configuration"
+HOMEPAGE="https://github.com/ocaml/dune"
+SRC_URI="https://github.com/ocaml/dune/archive/${PV}.tar.gz -> dune-${PV}.tar.gz"
+S="${WORKDIR}/dune-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+BDEPEND=">=dev-ml/dune-3.12"
+DEPEND="
+ >=dev-ml/csexp-1.5:=[ocamlopt?]
+"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ default
+
+ # This enables dune-configurator to use the vendored csexp module
+ sed -i 's/stdune.csexp/dune-configurator.csexp/' \
+ vendor/csexp/src/dune || die
+}
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile ${PN}
+}
diff --git a/dev-ml/dune-configurator/dune-configurator-3.18.1.ebuild b/dev-ml/dune-configurator/dune-configurator-3.18.1.ebuild
new file mode 100644
index 000000000000..665f4766bfc7
--- /dev/null
+++ b/dev-ml/dune-configurator/dune-configurator-3.18.1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Helper library for gathering system configuration"
+HOMEPAGE="https://github.com/ocaml/dune"
+SRC_URI="https://github.com/ocaml/dune/archive/${PV}.tar.gz -> dune-${PV}.tar.gz"
+S="${WORKDIR}/dune-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+BDEPEND=">=dev-ml/dune-3.12"
+DEPEND="
+ >=dev-ml/csexp-1.5:=[ocamlopt?]
+"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ default
+
+ # This enables dune-configurator to use the vendored csexp module
+ sed -i 's/stdune.csexp/dune-configurator.csexp/' \
+ vendor/csexp/src/dune || die
+}
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile ${PN}
+}
diff --git a/dev-ml/dune-configurator/dune-configurator-3.19.1-r1.ebuild b/dev-ml/dune-configurator/dune-configurator-3.19.1-r1.ebuild
new file mode 100644
index 000000000000..66643cbae872
--- /dev/null
+++ b/dev-ml/dune-configurator/dune-configurator-3.19.1-r1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Helper library for gathering system configuration"
+HOMEPAGE="https://github.com/ocaml/dune"
+SRC_URI="https://github.com/ocaml/dune/archive/${PV}.tar.gz -> dune-${PV}.tar.gz"
+S="${WORKDIR}/dune-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+BDEPEND=">=dev-ml/dune-3.18"
+DEPEND="
+ >=dev-ml/csexp-1.5:=[ocamlopt?]
+"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ default
+
+ # This enables dune-configurator to use the vendored csexp module
+ sed -i 's/stdune.csexp/dune-configurator.csexp/' \
+ vendor/csexp/src/dune || die
+}
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile ${PN}
+}
diff --git a/dev-ml/dune-configurator/dune-configurator-3.20.2.ebuild b/dev-ml/dune-configurator/dune-configurator-3.20.2.ebuild
new file mode 100644
index 000000000000..a1bc991c15ec
--- /dev/null
+++ b/dev-ml/dune-configurator/dune-configurator-3.20.2.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Helper library for gathering system configuration"
+HOMEPAGE="https://github.com/ocaml/dune"
+SRC_URI="https://github.com/ocaml/dune/archive/${PV}.tar.gz -> dune-${PV}.tar.gz"
+S="${WORKDIR}/dune-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+KEYWORDS="amd64 ~arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+BDEPEND=">=dev-ml/dune-3.20"
+DEPEND="
+ >=dev-ml/csexp-1.5:=[ocamlopt?]
+"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ default
+
+ # This enables dune-configurator to use the vendored csexp module
+ sed -i 's/stdune.csexp/dune-configurator.csexp/' \
+ vendor/csexp/src/dune || die
+}
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile ${PN}
+}
diff --git a/dev-ml/dune-configurator/dune-configurator-3.21.1.ebuild b/dev-ml/dune-configurator/dune-configurator-3.21.1.ebuild
new file mode 100644
index 000000000000..ad5151d2c728
--- /dev/null
+++ b/dev-ml/dune-configurator/dune-configurator-3.21.1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Helper library for gathering system configuration"
+HOMEPAGE="https://github.com/ocaml/dune"
+SRC_URI="https://github.com/ocaml/dune/archive/${PV}.tar.gz -> dune-${PV}.tar.gz"
+S="${WORKDIR}/dune-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+BDEPEND=">=dev-ml/dune-3.21"
+DEPEND="
+ >=dev-ml/csexp-1.5:=[ocamlopt?]
+"
+RDEPEND="${DEPEND}"
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile ${PN}
+}
diff --git a/dev-ml/dune-configurator/metadata.xml b/dev-ml/dune-configurator/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/dune-configurator/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/dune-private-libs/Manifest b/dev-ml/dune-private-libs/Manifest
new file mode 100644
index 000000000000..13e6f1341a22
--- /dev/null
+++ b/dev-ml/dune-private-libs/Manifest
@@ -0,0 +1,3 @@
+DIST dune-3.16.0.tar.gz 2999701 BLAKE2B 5e371fa1003cec31273aeeb1a830036f48d3734588bd7a980b57aaae30d4984a34dec6f9be0ee9985c72dee08c2c6d456a789eab83cfce42c142a3abc6951b2e SHA512 3b1d041907128b6598e0f6150fe300a4a69098822f823ceead63b46e1005a21485738c6fa92641dd940c9f9cde48ae141ea51959a9b250bee3cbeb06ba788e23
+DIST dune-3.18.1.tar.gz 2918737 BLAKE2B 38731cdc61d2944f27487e844c554d0085e9a1787e9ebe7fb92e53d74df6e5919aaefe361c171e129451c7a57b95efe2cc066c1e087bf4a082ca34f6b5a100de SHA512 e9f188360f680bd4a2dad50a11f71e40aec42247f2eff2ac8f3071e6500620c1e631377e675f6b336c2ee9420d665885ce3509b7285bcef306521ba9b49c5208
+DIST dune-3.19.0.tar.gz 2917654 BLAKE2B 8e285da34865e6264a14d8bcbb53b2b78abb46565dec6af8b5428848a59db9e70d4922b0b99534109a1b1283aad873286761d0700b74f4cdb0e0e51aef63dbdb SHA512 0d3210ecf34a6ed4a43fe76697067ef756902d444159f1ea676d228651d063290fb2a22f3077dfdf66dbf6b345ee68f0ad41f27cb62facdbca2672f75c989b03
diff --git a/dev-ml/dune-private-libs/dune-private-libs-3.16.0-r4.ebuild b/dev-ml/dune-private-libs/dune-private-libs-3.16.0-r4.ebuild
new file mode 100644
index 000000000000..5f18338cf9ee
--- /dev/null
+++ b/dev-ml/dune-private-libs/dune-private-libs-3.16.0-r4.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Private libraries of Dune"
+HOMEPAGE="https://github.com/ocaml/dune"
+SRC_URI="https://github.com/ocaml/dune/archive/${PV}.tar.gz
+ -> dune-${PV}.tar.gz"
+S="${WORKDIR}/dune-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+BDEPEND=">=dev-ml/dune-3.12"
+DEPEND="
+ dev-ml/csexp:=[ocamlopt?]
+"
+RDEPEND="${DEPEND}
+ !dev-ml/stdune
+ !dev-ml/dyn
+ !dev-ml/ordering
+"
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile ordering dyn stdune ${PN}
+}
+
+src_install() {
+ dune-install ordering dyn stdune ${PN}
+}
diff --git a/dev-ml/dune-private-libs/dune-private-libs-3.18.1.ebuild b/dev-ml/dune-private-libs/dune-private-libs-3.18.1.ebuild
new file mode 100644
index 000000000000..1e5ff0688ab4
--- /dev/null
+++ b/dev-ml/dune-private-libs/dune-private-libs-3.18.1.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Private libraries of Dune"
+HOMEPAGE="https://github.com/ocaml/dune"
+SRC_URI="https://github.com/ocaml/dune/archive/${PV}.tar.gz
+ -> dune-${PV}.tar.gz"
+S="${WORKDIR}/dune-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+BDEPEND=">=dev-ml/dune-3.12"
+DEPEND="
+ dev-ml/csexp:=[ocamlopt?]
+"
+RDEPEND="${DEPEND}
+ !dev-ml/stdune
+ !dev-ml/dyn
+ !dev-ml/ordering
+"
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile ordering dyn stdune ${PN}
+}
+
+src_install() {
+ dune-install ordering dyn stdune ${PN}
+}
diff --git a/dev-ml/dune-private-libs/dune-private-libs-3.19.0-r1.ebuild b/dev-ml/dune-private-libs/dune-private-libs-3.19.0-r1.ebuild
new file mode 100644
index 000000000000..fcd790a93769
--- /dev/null
+++ b/dev-ml/dune-private-libs/dune-private-libs-3.19.0-r1.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Private libraries of Dune"
+HOMEPAGE="https://github.com/ocaml/dune"
+SRC_URI="https://github.com/ocaml/dune/archive/${PV}.tar.gz
+ -> dune-${PV}.tar.gz"
+S="${WORKDIR}/dune-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+BDEPEND=">=dev-ml/dune-3.18"
+DEPEND="
+ dev-ml/csexp:=[ocamlopt?]
+"
+RDEPEND="${DEPEND}
+ !dev-ml/stdune
+ !dev-ml/dyn
+ !dev-ml/ordering
+"
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile ordering dyn stdune ${PN}
+}
+
+src_install() {
+ dune-install ordering dyn stdune ${PN}
+}
diff --git a/dev-ml/dune-private-libs/metadata.xml b/dev-ml/dune-private-libs/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/dune-private-libs/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/dune-site/Manifest b/dev-ml/dune-site/Manifest
new file mode 100644
index 000000000000..1d799a4e8f37
--- /dev/null
+++ b/dev-ml/dune-site/Manifest
@@ -0,0 +1,6 @@
+DIST dune-3.16.0.tar.gz 2999701 BLAKE2B 5e371fa1003cec31273aeeb1a830036f48d3734588bd7a980b57aaae30d4984a34dec6f9be0ee9985c72dee08c2c6d456a789eab83cfce42c142a3abc6951b2e SHA512 3b1d041907128b6598e0f6150fe300a4a69098822f823ceead63b46e1005a21485738c6fa92641dd940c9f9cde48ae141ea51959a9b250bee3cbeb06ba788e23
+DIST dune-3.16.1.tar.gz 3000392 BLAKE2B 93de09c47fda95e1d83f10c9a4e7cfb7f801c7c4e47acbed7a20ef614ff3a6585d8a25b8617c8ee45d338006a99084d096990d1e8c3cbeb6613caa7f0e1a70b5 SHA512 18e8022c5fa276e06f788cf25a4d6d08e3247c546cd69a5206d4e78ece1f47a615c6d5842e68e1fa7908cae7ae8c6e4f31d2eb835d97b5e6b5e4154957139e9f
+DIST dune-3.18.1.tar.gz 2918737 BLAKE2B 38731cdc61d2944f27487e844c554d0085e9a1787e9ebe7fb92e53d74df6e5919aaefe361c171e129451c7a57b95efe2cc066c1e087bf4a082ca34f6b5a100de SHA512 e9f188360f680bd4a2dad50a11f71e40aec42247f2eff2ac8f3071e6500620c1e631377e675f6b336c2ee9420d665885ce3509b7285bcef306521ba9b49c5208
+DIST dune-3.19.1.tar.gz 2917826 BLAKE2B 588a7d2195169ed1210a7126bd06cfdea4fa0e7735f23c346314c3cbbea1e76ec1286f1b56b337a151fc3246343c001794bde6a9eb85a4a05c6a1537ae2ae8bb SHA512 a101cad5d159a7134bd38d25968ea24189485b12f517e746c5b4c367a8d6ca0959ea59a71dc8c939e5d28a6ae644de9b3c12582579c044e3a081373ac680beb6
+DIST dune-3.20.2.tar.gz 3051854 BLAKE2B ce0ff1b7503d0b3bc72fc9c7e1c167c33cf071257066117c16ad24d2d2aeb9c3a84dccd2e24132eb3a95c6f0ee254810e8b1a9f39e8dc81752a97948be8438c3 SHA512 efb4376e03a3e760ee230c22ba8ac788623382437d9e3551fdd6bacdca1c6aa2db90246feb011d3d0e7ba3afa47161ebd06c80cfb24e357a82f7764bf003e355
+DIST dune-3.21.1.tar.gz 3431470 BLAKE2B cb0a155fff9e4c81438f31770856ab4a7107d78f5cca128aa675bb11ff62c66d4cffb4fb22e4a4f9eda8e9ec088cbf827b66a6511bd179a427bf16778cd42a0c SHA512 a304fc6bb854c3a1d5b86b3d3a942e140387ae82e52be240289ef89413d6e6017bc6869363aba3898d6a6be1cb31f4fe8b9264c735c87a1e18cad82a26054acb
diff --git a/dev-ml/dune-site/dune-site-3.16.0.ebuild b/dev-ml/dune-site/dune-site-3.16.0.ebuild
new file mode 100644
index 000000000000..ab76bac02f92
--- /dev/null
+++ b/dev-ml/dune-site/dune-site-3.16.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Embed locations informations inside executable and libraries"
+HOMEPAGE="https://github.com/ocaml/dune"
+SRC_URI="https://github.com/ocaml/dune/archive/${PV}.tar.gz
+ -> dune-${PV}.tar.gz"
+S="${WORKDIR}/dune-${PV}"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm ~arm64 ~ppc ppc64 x86"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+RDEPEND="
+ >=dev-ml/dune-3.12
+ ~dev-ml/dune-private-libs-${PV}:=[ocamlopt=]
+"
+DEPEND="${RDEPEND}"
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile ${PN}
+}
diff --git a/dev-ml/dune-site/dune-site-3.16.1.ebuild b/dev-ml/dune-site/dune-site-3.16.1.ebuild
new file mode 100644
index 000000000000..6d2e3537ba0f
--- /dev/null
+++ b/dev-ml/dune-site/dune-site-3.16.1.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Embed locations informations inside executable and libraries"
+HOMEPAGE="https://github.com/ocaml/dune"
+SRC_URI="https://github.com/ocaml/dune/archive/${PV}.tar.gz
+ -> dune-${PV}.tar.gz"
+S="${WORKDIR}/dune-${PV}"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+RDEPEND="
+ >=dev-ml/dune-3.12
+ dev-ml/csexp:=[ocamlopt?]
+ !dev-ml/dune-private-libs
+ !dev-ml/stdune
+ !dev-ml/dyn
+ !dev-ml/ordering
+"
+DEPEND="${RDEPEND}"
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile ordering dyn stdune dune-private-libs ${PN}
+}
+
+src_install() {
+ dune-install ordering dyn stdune dune-private-libs ${PN}
+}
diff --git a/dev-ml/dune-site/dune-site-3.18.1.ebuild b/dev-ml/dune-site/dune-site-3.18.1.ebuild
new file mode 100644
index 000000000000..c0c6ea5a5456
--- /dev/null
+++ b/dev-ml/dune-site/dune-site-3.18.1.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Embed locations informations inside executable and libraries"
+HOMEPAGE="https://github.com/ocaml/dune"
+SRC_URI="https://github.com/ocaml/dune/archive/${PV}.tar.gz
+ -> dune-${PV}.tar.gz"
+S="${WORKDIR}/dune-${PV}"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+RDEPEND="
+ >=dev-ml/dune-3.12
+ dev-ml/csexp:=[ocamlopt?]
+ !dev-ml/dune-private-libs
+ !dev-ml/stdune
+ !dev-ml/dyn
+ !dev-ml/ordering
+"
+DEPEND="${RDEPEND}"
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile ordering dyn stdune dune-private-libs ${PN}
+}
+
+src_install() {
+ dune-install ordering dyn stdune dune-private-libs ${PN}
+}
diff --git a/dev-ml/dune-site/dune-site-3.19.1-r1.ebuild b/dev-ml/dune-site/dune-site-3.19.1-r1.ebuild
new file mode 100644
index 000000000000..d5b7a869fdb0
--- /dev/null
+++ b/dev-ml/dune-site/dune-site-3.19.1-r1.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Embed locations informations inside executable and libraries"
+HOMEPAGE="https://github.com/ocaml/dune"
+SRC_URI="https://github.com/ocaml/dune/archive/${PV}.tar.gz
+ -> dune-${PV}.tar.gz"
+S="${WORKDIR}/dune-${PV}"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+RDEPEND="
+ >=dev-ml/dune-3.18
+ dev-ml/csexp:=[ocamlopt?]
+ !dev-ml/dune-private-libs
+ !dev-ml/stdune
+ !dev-ml/dyn
+ !dev-ml/ordering
+"
+DEPEND="${RDEPEND}"
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile ordering dyn stdune dune-private-libs ${PN}
+}
+
+src_install() {
+ dune-install ordering dyn stdune dune-private-libs ${PN}
+}
diff --git a/dev-ml/dune-site/dune-site-3.20.2.ebuild b/dev-ml/dune-site/dune-site-3.20.2.ebuild
new file mode 100644
index 000000000000..57dadba68f52
--- /dev/null
+++ b/dev-ml/dune-site/dune-site-3.20.2.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Embed locations informations inside executable and libraries"
+HOMEPAGE="https://github.com/ocaml/dune"
+SRC_URI="https://github.com/ocaml/dune/archive/${PV}.tar.gz
+ -> dune-${PV}.tar.gz"
+S="${WORKDIR}/dune-${PV}"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="amd64 ~arm arm64 ~ppc ppc64 x86"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+RDEPEND="
+ >=dev-ml/dune-3.20
+ dev-ml/csexp:=[ocamlopt?]
+ !dev-ml/dune-private-libs
+ !dev-ml/stdune
+ !dev-ml/dyn
+ !dev-ml/ordering
+"
+DEPEND="${RDEPEND}"
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile ordering dyn stdune dune-private-libs ${PN}
+}
+
+src_install() {
+ dune-install ordering dyn stdune dune-private-libs ${PN}
+}
diff --git a/dev-ml/dune-site/dune-site-3.21.1-r1.ebuild b/dev-ml/dune-site/dune-site-3.21.1-r1.ebuild
new file mode 100644
index 000000000000..b1658320d182
--- /dev/null
+++ b/dev-ml/dune-site/dune-site-3.21.1-r1.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Embed locations informations inside executable and libraries"
+HOMEPAGE="https://github.com/ocaml/dune"
+SRC_URI="https://github.com/ocaml/dune/archive/${PV}.tar.gz
+ -> dune-${PV}.tar.gz"
+S="${WORKDIR}/dune-${PV}"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+RDEPEND="
+ >=dev-ml/dune-3.21
+ dev-ml/csexp:=[ocamlopt?]
+ dev-ml/pp:=[ocamlopt?]
+ !dev-ml/dune-private-libs
+ !dev-ml/stdune
+ !dev-ml/dyn
+ !dev-ml/ordering
+"
+DEPEND="${RDEPEND}"
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile ordering dyn fs-io top-closure stdune dune-private-libs ${PN}
+}
+
+src_install() {
+ dune-install ordering dyn fs-io top-closure stdune dune-private-libs ${PN}
+}
diff --git a/dev-ml/dune-site/metadata.xml b/dev-ml/dune-site/metadata.xml
new file mode 100644
index 000000000000..bdd5feb21585
--- /dev/null
+++ b/dev-ml/dune-site/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/ocaml/dune/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/dune/Manifest b/dev-ml/dune/Manifest
new file mode 100644
index 000000000000..e431a806556e
--- /dev/null
+++ b/dev-ml/dune/Manifest
@@ -0,0 +1,6 @@
+DIST dune-3.16.1.tar.gz 3000392 BLAKE2B 93de09c47fda95e1d83f10c9a4e7cfb7f801c7c4e47acbed7a20ef614ff3a6585d8a25b8617c8ee45d338006a99084d096990d1e8c3cbeb6613caa7f0e1a70b5 SHA512 18e8022c5fa276e06f788cf25a4d6d08e3247c546cd69a5206d4e78ece1f47a615c6d5842e68e1fa7908cae7ae8c6e4f31d2eb835d97b5e6b5e4154957139e9f
+DIST dune-3.17.2.tar.gz 3015019 BLAKE2B 8b79e0f6d878722529c21069de7975642351e9dbbf8508a04677a8e04d7eab53dffca785d52dbdbbd4fd28635f2a0bc29abf04f0d9fd87cf6d0ba26b470b4c6c SHA512 8feaf89c5bada83d840e6a1e42ae9308375b07dabc2363015b667bcff638dd78acd526c1a43dd4730ab675b4828f7304e503b97e9f53397e73ed4e644693f260
+DIST dune-3.18.1.tar.gz 2918737 BLAKE2B 38731cdc61d2944f27487e844c554d0085e9a1787e9ebe7fb92e53d74df6e5919aaefe361c171e129451c7a57b95efe2cc066c1e087bf4a082ca34f6b5a100de SHA512 e9f188360f680bd4a2dad50a11f71e40aec42247f2eff2ac8f3071e6500620c1e631377e675f6b336c2ee9420d665885ce3509b7285bcef306521ba9b49c5208
+DIST dune-3.19.1.tar.gz 2917826 BLAKE2B 588a7d2195169ed1210a7126bd06cfdea4fa0e7735f23c346314c3cbbea1e76ec1286f1b56b337a151fc3246343c001794bde6a9eb85a4a05c6a1537ae2ae8bb SHA512 a101cad5d159a7134bd38d25968ea24189485b12f517e746c5b4c367a8d6ca0959ea59a71dc8c939e5d28a6ae644de9b3c12582579c044e3a081373ac680beb6
+DIST dune-3.20.2.tar.gz 3051854 BLAKE2B ce0ff1b7503d0b3bc72fc9c7e1c167c33cf071257066117c16ad24d2d2aeb9c3a84dccd2e24132eb3a95c6f0ee254810e8b1a9f39e8dc81752a97948be8438c3 SHA512 efb4376e03a3e760ee230c22ba8ac788623382437d9e3551fdd6bacdca1c6aa2db90246feb011d3d0e7ba3afa47161ebd06c80cfb24e357a82f7764bf003e355
+DIST dune-3.21.1.tar.gz 3431470 BLAKE2B cb0a155fff9e4c81438f31770856ab4a7107d78f5cca128aa675bb11ff62c66d4cffb4fb22e4a4f9eda8e9ec088cbf827b66a6511bd179a427bf16778cd42a0c SHA512 a304fc6bb854c3a1d5b86b3d3a942e140387ae82e52be240289ef89413d6e6017bc6869363aba3898d6a6be1cb31f4fe8b9264c735c87a1e18cad82a26054acb
diff --git a/dev-ml/dune/dune-3.16.1.ebuild b/dev-ml/dune/dune-3.16.1.ebuild
new file mode 100644
index 000000000000..3bcff8ad80d4
--- /dev/null
+++ b/dev-ml/dune/dune-3.16.1.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit multiprocessing elisp-common
+
+DESCRIPTION="A composable build system for OCaml"
+HOMEPAGE="https://github.com/ocaml/dune"
+SRC_URI="https://github.com/ocaml/dune/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="emacs"
+RESTRICT="strip test"
+
+RDEPEND="
+ dev-lang/ocaml:=
+ emacs? ( >=app-editors/emacs-23.1:* )
+"
+DEPEND="${RDEPEND}"
+
+QA_FLAGS_IGNORED="usr/bin/dune"
+
+BYTECOMPFLAGS="-L ${S}/editor-integration/emacs"
+SITEFILE="50${PN}-gentoo.el"
+
+src_prepare() {
+ default
+
+ # This allows `dune --version` to output the correct version
+ # instead of "n/a"
+ sed -i "/^(name dune)/a (version ${PV})" dune-project || die
+}
+
+src_configure() {
+ ./configure \
+ --libdir="$(ocamlc -where)" \
+ --mandir=/usr/share/man \
+ --docdir=/usr/share/doc \
+ --etcdir=/etc \
+ --datadir=/usr/share \
+ --sbindir=/usr/sbin \
+ --bindir=/usr/bin \
+ || die
+}
+
+src_compile() {
+ ocaml boot/bootstrap.ml -j $(get_makeopts_jobs) --verbose || die
+ ./_boot/dune.exe build @install -p "${PN}" --profile dune-bootstrap \
+ -j $(get_makeopts_jobs) --display short || die
+
+ use emacs && elisp-compile editor-integration/emacs/*.el
+}
+
+src_install() {
+ # OCaml generates textrels on 32-bit arches
+ if use arm || use ppc || use x86 ; then
+ export QA_TEXTRELS='.*'
+ fi
+ default
+
+ mv "${ED}"/usr/share/doc/dune "${ED}"/usr/share/doc/${PF} || die
+
+ if use emacs ; then
+ elisp-install ${PN} editor-integration/emacs/*.el{,c}
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+ fi
+}
diff --git a/dev-ml/dune/dune-3.17.2.ebuild b/dev-ml/dune/dune-3.17.2.ebuild
new file mode 100644
index 000000000000..3fc606e88e34
--- /dev/null
+++ b/dev-ml/dune/dune-3.17.2.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit multiprocessing elisp-common
+
+DESCRIPTION="A composable build system for OCaml"
+HOMEPAGE="https://github.com/ocaml/dune"
+SRC_URI="https://github.com/ocaml/dune/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="emacs"
+RESTRICT="strip test"
+
+RDEPEND="
+ dev-lang/ocaml:=
+ emacs? ( >=app-editors/emacs-23.1:* )
+"
+DEPEND="${RDEPEND}"
+
+QA_FLAGS_IGNORED="usr/bin/dune"
+
+BYTECOMPFLAGS="-L ${S}/editor-integration/emacs"
+SITEFILE="50${PN}-gentoo.el"
+
+src_prepare() {
+ default
+
+ # This allows `dune --version` to output the correct version
+ # instead of "n/a"
+ sed -i "/^(name dune)/a (version ${PV})" dune-project || die
+}
+
+src_configure() {
+ ./configure \
+ --libdir="$(ocamlc -where)" \
+ --mandir=/usr/share/man \
+ --docdir=/usr/share/doc \
+ --etcdir=/etc \
+ --datadir=/usr/share \
+ --sbindir=/usr/sbin \
+ --bindir=/usr/bin \
+ || die
+}
+
+src_compile() {
+ ocaml boot/bootstrap.ml -j $(get_makeopts_jobs) --verbose || die
+ ./_boot/dune.exe build @install -p "${PN}" --profile dune-bootstrap \
+ -j $(get_makeopts_jobs) --display short || die
+
+ use emacs && elisp-compile editor-integration/emacs/*.el
+}
+
+src_install() {
+ # OCaml generates textrels on 32-bit arches
+ if use arm || use ppc || use x86 ; then
+ export QA_TEXTRELS='.*'
+ fi
+ default
+
+ mv "${ED}"/usr/share/doc/dune "${ED}"/usr/share/doc/${PF} || die
+
+ if use emacs ; then
+ elisp-install ${PN} editor-integration/emacs/*.el{,c}
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+ fi
+}
diff --git a/dev-ml/dune/dune-3.18.1.ebuild b/dev-ml/dune/dune-3.18.1.ebuild
new file mode 100644
index 000000000000..3fc606e88e34
--- /dev/null
+++ b/dev-ml/dune/dune-3.18.1.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit multiprocessing elisp-common
+
+DESCRIPTION="A composable build system for OCaml"
+HOMEPAGE="https://github.com/ocaml/dune"
+SRC_URI="https://github.com/ocaml/dune/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="emacs"
+RESTRICT="strip test"
+
+RDEPEND="
+ dev-lang/ocaml:=
+ emacs? ( >=app-editors/emacs-23.1:* )
+"
+DEPEND="${RDEPEND}"
+
+QA_FLAGS_IGNORED="usr/bin/dune"
+
+BYTECOMPFLAGS="-L ${S}/editor-integration/emacs"
+SITEFILE="50${PN}-gentoo.el"
+
+src_prepare() {
+ default
+
+ # This allows `dune --version` to output the correct version
+ # instead of "n/a"
+ sed -i "/^(name dune)/a (version ${PV})" dune-project || die
+}
+
+src_configure() {
+ ./configure \
+ --libdir="$(ocamlc -where)" \
+ --mandir=/usr/share/man \
+ --docdir=/usr/share/doc \
+ --etcdir=/etc \
+ --datadir=/usr/share \
+ --sbindir=/usr/sbin \
+ --bindir=/usr/bin \
+ || die
+}
+
+src_compile() {
+ ocaml boot/bootstrap.ml -j $(get_makeopts_jobs) --verbose || die
+ ./_boot/dune.exe build @install -p "${PN}" --profile dune-bootstrap \
+ -j $(get_makeopts_jobs) --display short || die
+
+ use emacs && elisp-compile editor-integration/emacs/*.el
+}
+
+src_install() {
+ # OCaml generates textrels on 32-bit arches
+ if use arm || use ppc || use x86 ; then
+ export QA_TEXTRELS='.*'
+ fi
+ default
+
+ mv "${ED}"/usr/share/doc/dune "${ED}"/usr/share/doc/${PF} || die
+
+ if use emacs ; then
+ elisp-install ${PN} editor-integration/emacs/*.el{,c}
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+ fi
+}
diff --git a/dev-ml/dune/dune-3.19.1.ebuild b/dev-ml/dune/dune-3.19.1.ebuild
new file mode 100644
index 000000000000..c1271970aec7
--- /dev/null
+++ b/dev-ml/dune/dune-3.19.1.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit multiprocessing elisp-common
+
+DESCRIPTION="A composable build system for OCaml"
+HOMEPAGE="https://github.com/ocaml/dune"
+SRC_URI="https://github.com/ocaml/dune/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="emacs"
+RESTRICT="strip test"
+
+RDEPEND="
+ dev-lang/ocaml:=
+ emacs? ( >=app-editors/emacs-23.1:* )
+"
+DEPEND="${RDEPEND}"
+
+QA_FLAGS_IGNORED="usr/bin/dune"
+
+BYTECOMPFLAGS="-L ${S}/editor-integration/emacs"
+SITEFILE="50${PN}-gentoo.el"
+
+src_prepare() {
+ default
+
+ # This allows `dune --version` to output the correct version
+ # instead of "n/a"
+ sed -i "/^(name dune)/a (version ${PV})" dune-project || die
+}
+
+src_configure() {
+ ./configure \
+ --libdir="$(ocamlc -where)" \
+ --mandir=/usr/share/man \
+ --docdir=/usr/share/doc \
+ --etcdir=/etc \
+ --datadir=/usr/share \
+ --sbindir=/usr/sbin \
+ --bindir=/usr/bin \
+ || die
+}
+
+src_compile() {
+ ocaml boot/bootstrap.ml -j $(get_makeopts_jobs) --verbose || die
+ ./_boot/dune.exe build @install -p "${PN}" --profile dune-bootstrap \
+ -j $(get_makeopts_jobs) --display short || die
+
+ use emacs && elisp-compile editor-integration/emacs/*.el
+}
+
+src_install() {
+ DOCS=( README.md CHANGES.md )
+ # OCaml generates textrels on 32-bit arches
+ if use arm || use ppc || use x86 ; then
+ export QA_TEXTRELS='.*'
+ fi
+ default
+
+ rm -r "${ED}"/usr/share/doc/dune
+ if use emacs ; then
+ elisp-install ${PN} editor-integration/emacs/*.el{,c}
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+ fi
+}
diff --git a/dev-ml/dune/dune-3.20.2.ebuild b/dev-ml/dune/dune-3.20.2.ebuild
new file mode 100644
index 000000000000..13407243a491
--- /dev/null
+++ b/dev-ml/dune/dune-3.20.2.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit multiprocessing elisp-common
+
+DESCRIPTION="A composable build system for OCaml"
+HOMEPAGE="https://github.com/ocaml/dune"
+SRC_URI="https://github.com/ocaml/dune/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="amd64 ~arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="emacs"
+RESTRICT="strip test"
+
+RDEPEND="
+ dev-lang/ocaml:=
+ emacs? ( >=app-editors/emacs-23.1:* )
+"
+DEPEND="${RDEPEND}"
+
+QA_FLAGS_IGNORED="usr/bin/dune"
+
+BYTECOMPFLAGS="-L ${S}/editor-integration/emacs"
+SITEFILE="50${PN}-gentoo.el"
+
+src_prepare() {
+ default
+
+ # This allows `dune --version` to output the correct version
+ # instead of "n/a"
+ sed -i "/^(name dune)/a (version ${PV})" dune-project || die
+}
+
+src_configure() {
+ ./configure \
+ --libdir="$(ocamlc -where)" \
+ --mandir=/usr/share/man \
+ --docdir=/usr/share/doc \
+ --etcdir=/etc \
+ --datadir=/usr/share \
+ --sbindir=/usr/sbin \
+ --bindir=/usr/bin \
+ || die
+}
+
+src_compile() {
+ ocaml boot/bootstrap.ml -j $(get_makeopts_jobs) --verbose || die
+ ./_boot/dune.exe build @install -p "${PN}" --profile dune-bootstrap \
+ -j $(get_makeopts_jobs) --display short || die
+
+ use emacs && elisp-compile editor-integration/emacs/*.el
+}
+
+src_install() {
+ # OCaml generates textrels on 32-bit arches
+ if use arm || use ppc || use x86 ; then
+ export QA_TEXTRELS='.*'
+ fi
+ default
+
+ mv "${ED}"/usr/share/doc/dune "${ED}"/usr/share/doc/${PF} || die
+
+ if use emacs ; then
+ elisp-install ${PN} editor-integration/emacs/*.el{,c}
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+ fi
+}
diff --git a/dev-ml/dune/dune-3.21.1-r2.ebuild b/dev-ml/dune/dune-3.21.1-r2.ebuild
new file mode 100644
index 000000000000..3fc606e88e34
--- /dev/null
+++ b/dev-ml/dune/dune-3.21.1-r2.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit multiprocessing elisp-common
+
+DESCRIPTION="A composable build system for OCaml"
+HOMEPAGE="https://github.com/ocaml/dune"
+SRC_URI="https://github.com/ocaml/dune/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="emacs"
+RESTRICT="strip test"
+
+RDEPEND="
+ dev-lang/ocaml:=
+ emacs? ( >=app-editors/emacs-23.1:* )
+"
+DEPEND="${RDEPEND}"
+
+QA_FLAGS_IGNORED="usr/bin/dune"
+
+BYTECOMPFLAGS="-L ${S}/editor-integration/emacs"
+SITEFILE="50${PN}-gentoo.el"
+
+src_prepare() {
+ default
+
+ # This allows `dune --version` to output the correct version
+ # instead of "n/a"
+ sed -i "/^(name dune)/a (version ${PV})" dune-project || die
+}
+
+src_configure() {
+ ./configure \
+ --libdir="$(ocamlc -where)" \
+ --mandir=/usr/share/man \
+ --docdir=/usr/share/doc \
+ --etcdir=/etc \
+ --datadir=/usr/share \
+ --sbindir=/usr/sbin \
+ --bindir=/usr/bin \
+ || die
+}
+
+src_compile() {
+ ocaml boot/bootstrap.ml -j $(get_makeopts_jobs) --verbose || die
+ ./_boot/dune.exe build @install -p "${PN}" --profile dune-bootstrap \
+ -j $(get_makeopts_jobs) --display short || die
+
+ use emacs && elisp-compile editor-integration/emacs/*.el
+}
+
+src_install() {
+ # OCaml generates textrels on 32-bit arches
+ if use arm || use ppc || use x86 ; then
+ export QA_TEXTRELS='.*'
+ fi
+ default
+
+ mv "${ED}"/usr/share/doc/dune "${ED}"/usr/share/doc/${PF} || die
+
+ if use emacs ; then
+ elisp-install ${PN} editor-integration/emacs/*.el{,c}
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+ fi
+}
diff --git a/dev-ml/dune/files/50dune-gentoo.el b/dev-ml/dune/files/50dune-gentoo.el
new file mode 100644
index 000000000000..87fd7c6b28a9
--- /dev/null
+++ b/dev-ml/dune/files/50dune-gentoo.el
@@ -0,0 +1,4 @@
+(add-to-list 'load-path "@SITELISP@")
+(autoload 'dune-mode "dune"
+ "Major mode to edit dune files." t)
+(add-to-list 'auto-mode-alist '("\\(?:\\`\\|/\\)dune\\(?:\\.inc\\|\\-project\\)?\\'" . dune-mode))
diff --git a/dev-ml/dune/metadata.xml b/dev-ml/dune/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/dune/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/duration/Manifest b/dev-ml/duration/Manifest
new file mode 100644
index 000000000000..24ed9f7b6ca2
--- /dev/null
+++ b/dev-ml/duration/Manifest
@@ -0,0 +1,3 @@
+DIST duration-0.1.3.tar.gz 4295 BLAKE2B 1bcf0d457e76c6dfe05308dbbdcd02e534abecb621d30d4d031e2218da48515e1086c0c71c3c91ea84350143dc3255ae368d66ba43ec9fb763932efbb3654128 SHA512 eeb219821e65d5cdee0b1038afd856b58f21633498e8cae37a7195d2a045cd0b11c4c817a6518d20c5a6c5f8c7ebfa9b84dae16bb847a658a8dc1aae5a9be5ab
+DIST duration-0.2.1.tar.gz 4826 BLAKE2B 9a6a4f0b5f924e05b9e571097d294dcb98516325311ec9d405cb3330556a8c8d632c317e10dfb4af71bccc34efb503e219e9a9b600f7a43726a6f5e5ea5400ae SHA512 36a2944e72ffcc8b3ae64a2a2c80382833a09cdf24e224c13deb645a0295c333bd8e2a22a1375691f7bb5021d7fa3ac1620e90c59a3d17fdd7eb5ff7853ebf74
+DIST duration-0.3.1.gh.tar.gz 7035 BLAKE2B 6a9a5b37f344ab445660d9481e44a087ff49504f6d89e09cc8ebfa08aabb968792f9418d2c69a69f118aaa0a48076a57fff425f3d9b640178230b5421e1d6db8 SHA512 d87185a638f8a715e03acec18182f37ff1f10d857a4feefea0e60eb3b545772c46b1c683368ba3380b5d543b44d296ad80f7359412fb8d0fe5fcfbdb4e0df421
diff --git a/dev-ml/duration/duration-0.1.3.ebuild b/dev-ml/duration/duration-0.1.3.ebuild
new file mode 100644
index 000000000000..cfab3bd98bbf
--- /dev/null
+++ b/dev-ml/duration/duration-0.1.3.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="Duration - conversions to various time units"
+HOMEPAGE="https://github.com/hannesm/duration"
+SRC_URI="https://github.com/hannesm/duration/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+DEPEND="test? ( dev-ml/alcotest )"
diff --git a/dev-ml/duration/duration-0.2.1.ebuild b/dev-ml/duration/duration-0.2.1.ebuild
new file mode 100644
index 000000000000..c618eeff34a6
--- /dev/null
+++ b/dev-ml/duration/duration-0.2.1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Duration - conversions to various time units"
+HOMEPAGE="https://github.com/hannesm/duration"
+SRC_URI="https://github.com/hannesm/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+DEPEND="test? ( dev-ml/alcotest )"
diff --git a/dev-ml/duration/duration-0.3.1.ebuild b/dev-ml/duration/duration-0.3.1.ebuild
new file mode 100644
index 000000000000..f98e760a179f
--- /dev/null
+++ b/dev-ml/duration/duration-0.3.1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Duration - conversions to various time units"
+HOMEPAGE="https://github.com/hannesm/duration/"
+
+if [[ "${PV}" == *9999* ]] ; then
+ inherit git-r3
+
+ EGIT_REPO_URI="https://github.com/hannesm/${PN}"
+else
+ SRC_URI="https://github.com/hannesm/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz"
+
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+fi
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ test? ( dev-ml/alcotest )
+"
diff --git a/dev-ml/duration/metadata.xml b/dev-ml/duration/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/duration/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/easy-format/Manifest b/dev-ml/easy-format/Manifest
new file mode 100644
index 000000000000..232bea17c6b4
--- /dev/null
+++ b/dev-ml/easy-format/Manifest
@@ -0,0 +1,2 @@
+DIST easy-format-1.2.0.tar.gz 15632 BLAKE2B 0bf20b87050330e90f3ef5cbe47470049ddc470d22357240f6b0ddd75138d3297935306c071e4355f02ed2fdd01a3155461e90a91df1346fa33180833db77b57 SHA512 375849b1ecd2e37f4b32d1ee12197a95856b17a47e3eb06a7e7320a82234c241156c3c8bfb18ce17bbe73b93d31d755675478860505470aa7ab866277a99603f
+DIST easy-format-1.3.4.tbz 16075 BLAKE2B cab5c3d76ac77bfcf4a993b4bf07f6577edd60ed148931912af8c2319368569cebe51c5626c80a2d02e06a19e1d0d5d08406acfdafc917006eeae7f20b30ef66 SHA512 90264864dde4cbf51f60fb5c21cf033e11bdeb662e76b62ce27b496c298ca9102174885ed7a6d29a6b8e43089e27d5bb5be247f88d9739c15cfd8470fec29d33
diff --git a/dev-ml/easy-format/easy-format-1.2.0-r1.ebuild b/dev-ml/easy-format/easy-format-1.2.0-r1.ebuild
new file mode 100644
index 000000000000..13addc0be922
--- /dev/null
+++ b/dev-ml/easy-format/easy-format-1.2.0-r1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit findlib
+
+DESCRIPTION="Pretty-printing library for OCaml"
+HOMEPAGE="https://github.com/ocaml-community/easy-format"
+SRC_URI="https://github.com/ocaml-community/easy-format/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="amd64"
+IUSE="examples +ocamlopt"
+
+RDEPEND="<dev-lang/ocaml-5:=[ocamlopt?]"
+DEPEND="${RDEPEND}"
+
+src_compile() {
+ emake all
+ use ocamlopt && emake opt
+}
+
+src_install() {
+ findlib_src_install
+ dodoc README.md Changes
+ if use examples ; then
+ dodoc -r examples
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+}
diff --git a/dev-ml/easy-format/easy-format-1.3.4.ebuild b/dev-ml/easy-format/easy-format-1.3.4.ebuild
new file mode 100644
index 000000000000..01737678d110
--- /dev/null
+++ b/dev-ml/easy-format/easy-format-1.3.4.ebuild
@@ -0,0 +1,15 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Pretty-printing library for OCaml"
+HOMEPAGE="https://github.com/ocaml-community/easy-format"
+SRC_URI="https://github.com/ocaml-community/${PN}/releases/download/${PV}/${P}.tbz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="~amd64"
+IUSE="+ocamlopt"
diff --git a/dev-ml/easy-format/metadata.xml b/dev-ml/easy-format/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/easy-format/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/expect_test_helpers_core/Manifest b/dev-ml/expect_test_helpers_core/Manifest
new file mode 100644
index 000000000000..097e8731a7dd
--- /dev/null
+++ b/dev-ml/expect_test_helpers_core/Manifest
@@ -0,0 +1,2 @@
+DIST expect_test_helpers_core-0.16.0.tar.gz 22549 BLAKE2B 2925c572a97a4bada839f98bea50f503d138d43550e1849ae23f4f553c5402c86135ad6ef1e57e9a5a382a2aae719bf88b8550399824294970350fbe0fa5d474 SHA512 057504994125e05c02264eef4766e58619d1f89039836b994487cc8627786c0e0d1491ab8a3ffa02ac19cb8d0754f4af88188a47d25cbe89c5a51b04ac002c95
+DIST expect_test_helpers_core-0.17.0.tar.gz 24511 BLAKE2B 484e5b54a37182a219f7a2c07f731b9f4ff7fe24fa4c785098ac9e55c2e28b3edacdeb99f33d46362b2e7fee66bdfe761e0bfc825c9af179a19031ac30db103c SHA512 3f5114802eda07114ce46c792d577a9cc71f5b412c380fc76870f7de5907340be6d8a9b8892c84f96ba81b148ee19aa03017c1e06762c25f898fe63725d06401
diff --git a/dev-ml/expect_test_helpers_core/expect_test_helpers_core-0.16.0.ebuild b/dev-ml/expect_test_helpers_core/expect_test_helpers_core-0.16.0.ebuild
new file mode 100644
index 000000000000..30efd6bafa05
--- /dev/null
+++ b/dev-ml/expect_test_helpers_core/expect_test_helpers_core-0.16.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Helpers for writing expectation tests"
+HOMEPAGE="https://github.com/janestreet/expect_test_helpers_core"
+SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/base:${SLOT}
+ dev-ml/core:${SLOT}
+ dev-ml/ppx_jane:${SLOT}
+ dev-ml/stdio:${SLOT}
+ dev-ml/sexp_pretty:${SLOT}
+"
+RDEPEND="${DEPEND}"
+BDEPEND=""
diff --git a/dev-ml/expect_test_helpers_core/expect_test_helpers_core-0.17.0-r1.ebuild b/dev-ml/expect_test_helpers_core/expect_test_helpers_core-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..a48ff4fe91e3
--- /dev/null
+++ b/dev-ml/expect_test_helpers_core/expect_test_helpers_core-0.17.0-r1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2022-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Helpers for writing expectation tests"
+HOMEPAGE="https://github.com/janestreet/expect_test_helpers_core"
+SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/base_quickcheck-${JSM}:=[ocamlopt?]
+ =dev-ml/core-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_jane-${JSM}:=[ocamlopt?]
+ dev-ml/re:=[ocamlopt?]
+ =dev-ml/sexp_pretty-${JSM}:=[ocamlopt?]
+ =dev-ml/stdio-${JSM}:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/expect_test_helpers_core/metadata.xml b/dev-ml/expect_test_helpers_core/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/expect_test_helpers_core/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/extlib/Manifest b/dev-ml/extlib/Manifest
new file mode 100644
index 000000000000..238f79296834
--- /dev/null
+++ b/dev-ml/extlib/Manifest
@@ -0,0 +1,2 @@
+DIST extlib-1.7.9.tar.gz 91092 BLAKE2B 6d5f0dc01813357fd9b3efcbe0e4c4308eb538deb924cbff2919bc6e24b72e3fc631b428c1e67f90ea32005b87c16147265c80d61d8feb97df0223bc9b14736b SHA512 859cf5b9743589037f9e1b5f00ea77ae2401657b3dfc6897d21c89d5f8a1d7e7ac901eb6eaa16722e6b6a0266fa634c40320d13fcf7bdfad2863512b5f79e591
+DIST extlib-1.8.0.tar.gz 90132 BLAKE2B e890a13f3d32c7c25a5fbe9dda9d85139e2d54f3275d1236f575aab88a615718a343bfcf6f0f3832d14855ac720f99c6a45a28a3aec84f2a4e27098eb648863e SHA512 f82892bcd9b3098a313c8f130c4926a093a5cbbb098f509f80d6c176c9ff3a7b345daa1c6298bd4d6da0b41b98c681aed50c68b066eba2de1fd5fc07f99dc487
diff --git a/dev-ml/extlib/extlib-1.7.9-r1.ebuild b/dev-ml/extlib/extlib-1.7.9-r1.ebuild
new file mode 100644
index 000000000000..ea3f40f178a8
--- /dev/null
+++ b/dev-ml/extlib/extlib-1.7.9-r1.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit findlib vcs-clean
+
+DESCRIPTION="Standard library extensions for O'Caml"
+HOMEPAGE="https://github.com/ygrek/ocaml-extlib/"
+SRC_URI="https://github.com/ygrek/ocaml-extlib/archive/${PV}.tar.gz
+ -> ${P}.tar.gz"
+S="${WORKDIR}"/ocaml-${P}
+
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="doc +ocamlopt"
+
+# See bug #704146
+BDEPEND=">=dev-ml/cppo-1.6.6"
+RDEPEND="<dev-lang/ocaml-5.3:=[ocamlopt?]"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ default
+
+ egit_clean
+}
+
+src_compile() {
+ cd "${S}"/src || die
+
+ emake -j1 all
+
+ use ocamlopt && emake opt cmxs
+ use doc && emake doc
+}
+
+src_test() {
+ emake -j1 test
+}
+
+src_install() {
+ findlib_src_install
+
+ dodoc README.md
+
+ use doc && dodoc -r src/doc/
+}
diff --git a/dev-ml/extlib/extlib-1.8.0.ebuild b/dev-ml/extlib/extlib-1.8.0.ebuild
new file mode 100644
index 000000000000..5c285fe173fa
--- /dev/null
+++ b/dev-ml/extlib/extlib-1.8.0.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit findlib vcs-clean
+
+DESCRIPTION="Standard library extensions for O'Caml"
+HOMEPAGE="https://github.com/ygrek/ocaml-extlib/"
+SRC_URI="https://github.com/ygrek/ocaml-extlib/archive/${PV}.tar.gz
+ -> ${P}.tar.gz"
+S="${WORKDIR}"/ocaml-${P}
+
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="doc +ocamlopt"
+
+BDEPEND="dev-ml/cppo"
+
+src_prepare() {
+ default
+
+ egit_clean
+}
+
+src_compile() {
+ cd "${S}"/src || die
+
+ emake -j1 all
+
+ use ocamlopt && emake opt cmxs
+ use doc && emake doc
+}
+
+src_test() {
+ emake -j1 test
+}
+
+src_install() {
+ findlib_src_install
+
+ dodoc README.md
+
+ use doc && dodoc -r src/doc/
+}
diff --git a/dev-ml/extlib/metadata.xml b/dev-ml/extlib/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/extlib/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/facile/Manifest b/dev-ml/facile/Manifest
new file mode 100644
index 000000000000..95ae8dfd8d61
--- /dev/null
+++ b/dev-ml/facile/Manifest
@@ -0,0 +1 @@
+DIST facile-1.1.4.tbz 83874 BLAKE2B a0921615425124b6f1ba51a939bd4c89bcab71a0341e5b866f2c44d89863c077c42f269fcee2a8e302c580ce618c4e765f826fd9c4855f9e992c35cbdc8660db SHA512 b4484275ebf7f0bd271d865c6745bd1784e2260060470f64f86a18833a9663efbf56b089ae668c51f57bc8473281af4e92d461b87eefb2c62162fa7da60838f9
diff --git a/dev-ml/facile/facile-1.1.4.ebuild b/dev-ml/facile/facile-1.1.4.ebuild
new file mode 100644
index 000000000000..e49797cd148b
--- /dev/null
+++ b/dev-ml/facile/facile-1.1.4.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="OCaml constraint programming library on integer & integer set finite domains"
+HOMEPAGE="http://opti.recherche.enac.fr/"
+SRC_URI="https://github.com/Emmanuel-PLF/${PN}/releases/download/${PV}/${P}.tbz"
+
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+
+KEYWORDS="amd64 arm64 ~ppc ppc64 x86"
+IUSE="+ocamlopt"
+
+PATCHES=( "${FILESDIR}"/${P}-dune.patch )
+
+src_prepare() {
+ default
+ sed -i \
+ -e "s:Pervasives:Stdlib:g" \
+ lib/fcl_misc.ml \
+ lib/fcl_cstr.ml \
+ lib/fcl_fdArray.ml \
+ lib/fcl_nonlinear.ml \
+ lib/fcl_sorting.ml \
+ || die
+}
diff --git a/dev-ml/facile/files/facile-1.1.4-dune.patch b/dev-ml/facile/files/facile-1.1.4-dune.patch
new file mode 100644
index 000000000000..f740a80c4cd5
--- /dev/null
+++ b/dev-ml/facile/files/facile-1.1.4-dune.patch
@@ -0,0 +1,41 @@
+diff --git a/dune-project b/dune-project
+new file mode 100644
+index 0000000..7d8f2ba
+--- /dev/null
++++ b/dune-project
+@@ -0,0 +1,2 @@
++(lang dune 2.9)
++(name facile)
+diff --git a/examples/dune b/examples/dune
+new file mode 100644
+index 0000000..b804a36
+--- /dev/null
++++ b/examples/dune
+@@ -0,0 +1,4 @@
++(executables
++ (libraries facile)
++ (names coins golf golomb jobshop magic marriage prolog seven_eleven tiles)
++)
+diff --git a/lib/dune b/lib/dune
+new file mode 100644
+index 0000000..d28179f
+--- /dev/null
++++ b/lib/dune
+@@ -0,0 +1,4 @@
++(library
++ (public_name facile)
++ (ocamlopt_flags (-unsafe -noassert -inline 10))
++)
+diff --git a/lib_test/dune b/lib_test/dune
+new file mode 100644
+index 0000000..e8993ee
+--- /dev/null
++++ b/lib_test/dune
+@@ -0,0 +1,7 @@
++(executable
++ (libraries facile)
++ (name queens))
++
++(rule
++ (alias runtest)
++ (action (run ./queens.exe 8)))
diff --git a/dev-ml/facile/metadata.xml b/dev-ml/facile/metadata.xml
new file mode 100644
index 000000000000..e74a01cf2795
--- /dev/null
+++ b/dev-ml/facile/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>kde@gentoo.org</email>
+ <name>Gentoo KDE Project</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/fieldslib/Manifest b/dev-ml/fieldslib/Manifest
new file mode 100644
index 000000000000..e3f1cc990620
--- /dev/null
+++ b/dev-ml/fieldslib/Manifest
@@ -0,0 +1,3 @@
+DIST fieldslib-0.15.0.tar.gz 3680 BLAKE2B fc6f2ed845906c7956a202d60c49a3ec919a94cf1b8091a925dabceee4c76e22e74768f8c6f83d6f42369aa4ac0a035cc4f8be3828db24313cdb6777853eaadd SHA512 9bba75a93cd55f798f830409579092f96edbdb739808cbeb9c35b99d74baf7ebade5d0e95005cde550a80f337da13e4d088ba5eb26e597b7fc81b80a91037190
+DIST fieldslib-0.16.0.tar.gz 3711 BLAKE2B faf1ee760fb04f643bfb6d80a5f3ab1ac4b4aa2edb112f516fede7e0a6e66bbf48951615faf0aa9b86ce1f518ef24bedef77d7486ac22a24404ca4b009a8b8a0 SHA512 73a6d9fdd921eddbe766e933ef3dbb2d3866bf454a79a260c81406e069e0c1db689676e070214b38190ee1ddb369d0edd704a474186aec44eeabc8b0adee0f86
+DIST fieldslib-0.17.0.tar.gz 3744 BLAKE2B 56acfc888521b2a541f763b7073b32f3dc2d91e3009d09c3dc4b67955ee7a69bffc25952de7e4597db01019e98094bc415342765aadeb1a6263e5f39fcbfd06f SHA512 54ceba943a8a09678c5cc7909bd3814c1a78683e0fe3f69c740b5352fb8f14013827c311c0e71cc56b35a04b57ec131805d4b6b4332448fe885b10a9c6282ecf
diff --git a/dev-ml/fieldslib/fieldslib-0.15.0.ebuild b/dev-ml/fieldslib/fieldslib-0.15.0.ebuild
new file mode 100644
index 000000000000..96feda059eac
--- /dev/null
+++ b/dev-ml/fieldslib/fieldslib-0.15.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="Folding over record fields"
+HOMEPAGE="https://github.com/janestreet/fieldslib"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-ml/base-0.14.0:=
+ dev-ml/findlib:=
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/fieldslib/fieldslib-0.16.0.ebuild b/dev-ml/fieldslib/fieldslib-0.16.0.ebuild
new file mode 100644
index 000000000000..7d33814ec7aa
--- /dev/null
+++ b/dev-ml/fieldslib/fieldslib-0.16.0.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="Folding over record fields"
+HOMEPAGE="https://github.com/janestreet/fieldslib"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/base:${SLOT}
+ dev-ml/findlib:=
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/fieldslib/fieldslib-0.17.0-r1.ebuild b/dev-ml/fieldslib/fieldslib-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..e557f70d6e07
--- /dev/null
+++ b/dev-ml/fieldslib/fieldslib-0.17.0-r1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Folding over record fields"
+HOMEPAGE="https://github.com/janestreet/fieldslib"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/fieldslib/metadata.xml b/dev-ml/fieldslib/metadata.xml
new file mode 100644
index 000000000000..154a4d570b18
--- /dev/null
+++ b/dev-ml/fieldslib/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <longdescription lang="en">
+ This library defines a syntax extension for OCaml using Camlp4 that
+ can be used to define first class values representing record fields,
+ and additional routines, to get and set record fields, iterate and fold
+ over all fields of a record and create new record values.
+ </longdescription>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/findlib/Manifest b/dev-ml/findlib/Manifest
new file mode 100644
index 000000000000..2e1b8d5933aa
--- /dev/null
+++ b/dev-ml/findlib/Manifest
@@ -0,0 +1,2 @@
+DIST findlib-1.9.6.tar.gz 271246 BLAKE2B c9c98b9e92c0cf690e2c8794a1ed606c0288d49a016dfa08592c9f617be1020385f52bf37345a7cbcbc7f0fcb19750a6617036cbf90afef231eccdbc7132baf8 SHA512 cfaf1872d6ccda548f07d32cc6b90c3aafe136d2aa6539e03143702171ee0199add55269bba894c77115535dc46a5835901a5d7c75768999e72db503bfd83027
+DIST findlib-1.9.8.tar.gz 274668 BLAKE2B 2483d2b833d566508680a5b9b3949aef187c290ab5602ef423ede214cb57f4b8f61dfeb9cc712499d8c7d0590388bf5e481263bbc841488e1fb62e866f9b64d8 SHA512 64aa28ac27358e1bc5d118e283fb64757fb96329151860bb9c1e9352a9fa1728ebcb4320b8d2eeb57ed2eea83c9849ea89d06c0fa25e1884ececb431341f9f1a
diff --git a/dev-ml/findlib/findlib-1.9.6-r1.ebuild b/dev-ml/findlib/findlib-1.9.6-r1.ebuild
new file mode 100644
index 000000000000..5a6c5c2a1475
--- /dev/null
+++ b/dev-ml/findlib/findlib-1.9.6-r1.ebuild
@@ -0,0 +1,85 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="OCaml tool to find/use non-standard packages"
+HOMEPAGE="http://projects.camlcity.org/projects/findlib.html"
+SRC_URI="http://download.camlcity.org/download/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ~ppc ppc64 ~riscv x86"
+IUSE="doc +ocamlopt tk"
+
+DEPEND="dev-lang/ocaml:=[ocamlopt?]
+ tk? ( dev-ml/labltk:= )"
+RDEPEND="${DEPEND}"
+
+QA_FLAGS_IGNORED='.*'
+
+src_prepare() {
+ default
+ export ocamlfind_destdir="${EPREFIX}/usr/$(get_libdir)/ocaml"
+ export stublibs="${ocamlfind_destdir}/stublibs"
+ sed -i \
+ -e "/dbm/d" \
+ -e "/graphics/d" \
+ -e "/ocamlbuild/d" \
+ -e "/check_library num/d" \
+ configure \
+ || die
+}
+
+src_configure() {
+ local myconf
+ use tk && myconf="-with-toolbox"
+ ./configure -bindir "${EPREFIX}"/usr/bin -mandir "${EPREFIX}"/usr/share/man \
+ -sitelib ${ocamlfind_destdir} \
+ -config ${ocamlfind_destdir}/findlib/findlib.conf \
+ -no-custom \
+ ${myconf} || die "configure failed"
+}
+
+src_compile() {
+ emake -j1 all
+ if use ocamlopt; then
+ emake -j1 opt # optimized code
+ fi
+}
+
+src_install() {
+ emake prefix="${D}" install
+
+ dodir "${stublibs#"${EPREFIX}"}"
+
+ if use doc; then
+ cd "${S}/doc" || die
+ dodoc QUICKSTART README DOCINFO
+ docinto html
+ dodoc -r ref-html guide-html
+ fi
+
+ # See bug #803275 and bug #833604
+ for x in camlp4 labltk; do
+ rm -rf "${ED}"/usr/$(get_libdir)/ocaml/${x} || die
+ done
+}
+
+check_stublibs() {
+ local ocaml_stdlib=$(ocamlc -where)
+ local ldconf="${ocaml_stdlib}/ld.conf"
+
+ if [[ ! -e ${ldconf} ]] ; then
+ echo "${ocaml_stdlib}" > ${ldconf} || die
+ echo "${ocaml_stdlib}/stublibs" >> ${ldconf} || die
+ fi
+
+ if ! grep -qe ${stublibs} ${ldconf} ; then
+ echo ${stublibs} >> ${ldconf} || die
+ fi
+}
+
+pkg_postinst() {
+ check_stublibs
+}
diff --git a/dev-ml/findlib/findlib-1.9.8-r1.ebuild b/dev-ml/findlib/findlib-1.9.8-r1.ebuild
new file mode 100644
index 000000000000..5498d8a98445
--- /dev/null
+++ b/dev-ml/findlib/findlib-1.9.8-r1.ebuild
@@ -0,0 +1,94 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="OCaml tool to find/use non-standard packages"
+HOMEPAGE="http://projects.camlcity.org/projects/findlib.html"
+SRC_URI="http://download.camlcity.org/download/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/1"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~x86"
+IUSE="doc +ocamlopt tk"
+
+DEPEND=">=dev-lang/ocaml-5:=[ocamlopt?]
+ tk? ( dev-ml/labltk:= )"
+RDEPEND="${DEPEND}"
+
+QA_FLAGS_IGNORED='.*'
+
+src_prepare() {
+ default
+ export ocamlfind_destdir="${EPREFIX}/usr/$(get_libdir)/ocaml"
+ export stublibs="${ocamlfind_destdir}/stublibs"
+ sed -i \
+ -e "/dbm/d" \
+ -e "/graphics/d" \
+ -e "/ocamlbuild/d" \
+ -e "/check_library num/d" \
+ configure \
+ || die
+ sed -i \
+ -e "s|capitalize |capitalize_ascii |" \
+ -e "s|Pervasives.||" \
+ src/findlib-toolbox/make_wizard.ml \
+ || die
+}
+
+src_configure() {
+ local myconf
+ use tk && myconf="-with-toolbox"
+ ./configure -bindir "${EPREFIX}"/usr/bin -mandir "${EPREFIX}"/usr/share/man \
+ -sitelib ${ocamlfind_destdir} \
+ -config ${ocamlfind_destdir}/findlib/findlib.conf \
+ -no-custom \
+ ${myconf} || die "configure failed"
+}
+
+src_compile() {
+ emake -j1 all
+ if use ocamlopt; then
+ emake -j1 opt # optimized code
+ fi
+}
+
+src_install() {
+ emake prefix="${D}" install
+
+ dodir "${stublibs#"${EPREFIX}"}"
+
+ if use doc; then
+ cd "${S}/doc" || die
+ dodoc QUICKSTART README DOCINFO
+ docinto html
+ dodoc -r ref-html guide-html
+ fi
+
+ # See bug #803275 and bug #833604
+ for x in camlp4 labltk; do
+ rm -rf "${ED}"/usr/$(get_libdir)/ocaml/${x} || die
+ done
+
+ for x in compiler-libs dynlink ocamldoc stdlib str threads unix; do
+ rm -f "${ED}"/usr/$(get_libdir)/ocaml/${x}/META
+ done
+}
+
+check_stublibs() {
+ local ocaml_stdlib=$(ocamlc -where)
+ local ldconf="${ocaml_stdlib}/ld.conf"
+
+ if [[ ! -e ${ldconf} ]] ; then
+ echo "${ocaml_stdlib}" > ${ldconf} || die
+ echo "${ocaml_stdlib}/stublibs" >> ${ldconf} || die
+ fi
+
+ if ! grep -qe ${stublibs} ${ldconf} ; then
+ echo ${stublibs} >> ${ldconf} || die
+ fi
+}
+
+pkg_postinst() {
+ check_stublibs
+}
diff --git a/dev-ml/findlib/findlib-1.9.8.ebuild b/dev-ml/findlib/findlib-1.9.8.ebuild
new file mode 100644
index 000000000000..69677669282f
--- /dev/null
+++ b/dev-ml/findlib/findlib-1.9.8.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="OCaml tool to find/use non-standard packages"
+HOMEPAGE="http://projects.camlcity.org/projects/findlib.html"
+SRC_URI="http://download.camlcity.org/download/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~x86"
+IUSE="doc +ocamlopt tk"
+
+DEPEND="dev-lang/ocaml:=[ocamlopt?]
+ tk? ( dev-ml/labltk:= )"
+RDEPEND="${DEPEND}"
+
+QA_FLAGS_IGNORED='.*'
+
+src_prepare() {
+ default
+ export ocamlfind_destdir="${EPREFIX}/usr/$(get_libdir)/ocaml"
+ export stublibs="${ocamlfind_destdir}/stublibs"
+ sed -i \
+ -e "/dbm/d" \
+ -e "/graphics/d" \
+ -e "/ocamlbuild/d" \
+ -e "/check_library num/d" \
+ configure \
+ || die
+ sed -i \
+ -e "s|capitalize |capitalize_ascii |" \
+ -e "s|Pervasives.||" \
+ src/findlib-toolbox/make_wizard.ml \
+ || die
+}
+
+src_configure() {
+ local myconf
+ use tk && myconf="-with-toolbox"
+ ./configure -bindir "${EPREFIX}"/usr/bin -mandir "${EPREFIX}"/usr/share/man \
+ -sitelib ${ocamlfind_destdir} \
+ -config ${ocamlfind_destdir}/findlib/findlib.conf \
+ -no-custom \
+ ${myconf} || die "configure failed"
+}
+
+src_compile() {
+ emake -j1 all
+ if use ocamlopt; then
+ emake -j1 opt # optimized code
+ fi
+}
+
+src_install() {
+ emake prefix="${D}" install
+
+ dodir "${stublibs#"${EPREFIX}"}"
+
+ if use doc; then
+ cd "${S}/doc" || die
+ dodoc QUICKSTART README DOCINFO
+ docinto html
+ dodoc -r ref-html guide-html
+ fi
+
+ # See bug #803275 and bug #833604
+ for x in camlp4 labltk; do
+ rm -rf "${ED}"/usr/$(get_libdir)/ocaml/${x} || die
+ done
+}
+
+check_stublibs() {
+ local ocaml_stdlib=$(ocamlc -where)
+ local ldconf="${ocaml_stdlib}/ld.conf"
+
+ if [[ ! -e ${ldconf} ]] ; then
+ echo "${ocaml_stdlib}" > ${ldconf} || die
+ echo "${ocaml_stdlib}/stublibs" >> ${ldconf} || die
+ fi
+
+ if ! grep -qe ${stublibs} ${ldconf} ; then
+ echo ${stublibs} >> ${ldconf} || die
+ fi
+}
+
+pkg_postinst() {
+ check_stublibs
+}
diff --git a/dev-ml/findlib/metadata.xml b/dev-ml/findlib/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/findlib/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/fix/Manifest b/dev-ml/fix/Manifest
new file mode 100644
index 000000000000..e8790dc581e2
--- /dev/null
+++ b/dev-ml/fix/Manifest
@@ -0,0 +1,4 @@
+DIST fix-20220121.tar.bz2 342191 BLAKE2B 58ea04bc8afd881346465185885f2261159670f5aa4f98f34326e16ad46393c072bcd5f8216824ddaa1556a390abce1e8cb8eb6220d930f1c992153e4db59a10 SHA512 7a4767529f233d14e3b20f2fbc418f1745ccdf5bb771e871a642757efb777400b3dc7efe6083166a24495c9e7b5a54acbeda1ae1eb8f220322eb1b4e404eccac
+DIST fix-20230505.tar.bz2 355711 BLAKE2B fbcce6561610315969409d7f6ab2c3e7b3a6dd249d1496120765e5a787d51314efa96f63465098dfe9733a34c9587d6a7b16669b2e8923be9c10fe656f24db80 SHA512 2b4c7539ca3226d825ee2adceea5c8f1bc7c66d58d0e092847be9f1293c9f06cf50bcfd38f078fafdc79876191f3e546af8d3a835458f94c14c9202730bc2f1d
+DIST fix-20250428.tar.bz2 356681 BLAKE2B 0184d32955ddbb3cf4dab9758334aa1ec122b8bcab1092f86b01f9e00e47fa6c0273abdc3e13f78936417eb377385aaca47d51ce56637b6bd607b892cd3c0610 SHA512 3fe3754ea1ba68cf3d72fbfc6afec54cfb4826fb1f864921b9d0e80cd38f0ef42a342ad8d52f0a58cd53c6f8990ada9cc98920b0f6c89cbb1276e08b137e2e2f
+DIST fix-20250919.tar.bz2 359100 BLAKE2B 93c8f61cb6e241a0b7aeeaac020eb382bcf7480a678130be57e0039a7478bca26241163fccaaf249d3dcebab982d023afed01a014765e7734f56f633ee656c6c SHA512 c879731a132842c5b8554790bab12eda8a15ded7a1b9ba2c5343e1be5f2e043a8e23b6547496cbb967eaef68988e29ee2163e9a54e1c117e846e9f0d36674c64
diff --git a/dev-ml/fix/fix-20220121.ebuild b/dev-ml/fix/fix-20220121.ebuild
new file mode 100644
index 000000000000..d10531a6a1d9
--- /dev/null
+++ b/dev-ml/fix/fix-20220121.ebuild
@@ -0,0 +1,16 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="Facilities for memoization and fixed points"
+HOMEPAGE="https://gitlab.inria.fr/fpottier/fix"
+SRC_URI="https://gitlab.inria.fr/fpottier/fix/-/archive/${PV}/${P}.tar.bz2"
+
+LICENSE="LGPL-2"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test" # regenerate & qcheck not yet packaged
diff --git a/dev-ml/fix/fix-20230505.ebuild b/dev-ml/fix/fix-20230505.ebuild
new file mode 100644
index 000000000000..8769e9a957ca
--- /dev/null
+++ b/dev-ml/fix/fix-20230505.ebuild
@@ -0,0 +1,16 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Facilities for memoization and fixed points"
+HOMEPAGE="https://gitlab.inria.fr/fpottier/fix"
+SRC_URI="https://gitlab.inria.fr/fpottier/fix/-/archive/${PV}/${P}.tar.bz2"
+
+LICENSE="LGPL-2"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test" # regenerate not yet packaged
diff --git a/dev-ml/fix/fix-20250428.ebuild b/dev-ml/fix/fix-20250428.ebuild
new file mode 100644
index 000000000000..0d259a964293
--- /dev/null
+++ b/dev-ml/fix/fix-20250428.ebuild
@@ -0,0 +1,16 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Facilities for memoization and fixed points"
+HOMEPAGE="https://gitlab.inria.fr/fpottier/fix"
+SRC_URI="https://gitlab.inria.fr/fpottier/fix/-/archive/${PV}/${P}.tar.bz2"
+
+LICENSE="LGPL-2"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test" # regenerate not yet packaged
diff --git a/dev-ml/fix/fix-20250919.ebuild b/dev-ml/fix/fix-20250919.ebuild
new file mode 100644
index 000000000000..0d259a964293
--- /dev/null
+++ b/dev-ml/fix/fix-20250919.ebuild
@@ -0,0 +1,16 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Facilities for memoization and fixed points"
+HOMEPAGE="https://gitlab.inria.fr/fpottier/fix"
+SRC_URI="https://gitlab.inria.fr/fpottier/fix/-/archive/${PV}/${P}.tar.bz2"
+
+LICENSE="LGPL-2"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test" # regenerate not yet packaged
diff --git a/dev-ml/fix/metadata.xml b/dev-ml/fix/metadata.xml
new file mode 100644
index 000000000000..7175306c216f
--- /dev/null
+++ b/dev-ml/fix/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://gitlab.inria.fr/fpottier/fix/-/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/fmt/Manifest b/dev-ml/fmt/Manifest
new file mode 100644
index 000000000000..c55db0e92eb0
--- /dev/null
+++ b/dev-ml/fmt/Manifest
@@ -0,0 +1,2 @@
+DIST fmt-0.11.0.tbz 23336 BLAKE2B 665fb00441ec0a333d849dc77d99b86d9b9cb853a93a49ee0cf069562d0ef86dd182db04f3f0328b975ee9c796d2426148d9112ac3575e2560d95c332cc639e6 SHA512 3f40155fc6a7315202e410585964307d63416c8001fd243667ed9d8d1a02b67deecacb25e9c2feb409c537bbdfb7817d91168de4ddd643532ff51d6c1c696a4a
+DIST fmt-0.9.0.tbz 22699 BLAKE2B 6c251b7c32093a5860b8e5c18f6a92573e664e8a20eb4b85dc6e601a04045d9c55c1e4a4f5cb879ccc92046c15c5ff97d1877ab78ecfaa2a4aa83a9f49fd409e SHA512 66cf4b8bb92232a091dfda5e94d1c178486a358cdc34b1eec516d48ea5acb6209c0dfcb416f0c516c50ddbddb3c94549a45e4a6d5c5fd1c81d3374dec823a83b
diff --git a/dev-ml/fmt/fmt-0.11.0.ebuild b/dev-ml/fmt/fmt-0.11.0.ebuild
new file mode 100644
index 000000000000..39542823f0ab
--- /dev/null
+++ b/dev-ml/fmt/fmt-0.11.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit findlib opam
+
+DESCRIPTION="Combinators to devise OCaml Format pretty-printing functions"
+HOMEPAGE="https://erratique.ch/software/fmt https://github.com/dbuenzli/fmt"
+SRC_URI="https://erratique.ch/software/fmt/releases/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="test"
+RESTRICT="test"
+
+RDEPEND="
+ dev-ml/cmdliner:=[ocamlopt]
+ dev-ml/result:=[ocamlopt]
+ dev-ml/stdlib-shims:=[ocamlopt]
+ dev-ml/uchar:=[ocamlopt]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ >=dev-ml/topkg-0.9
+ dev-ml/ocamlbuild
+ dev-ml/findlib
+"
+
+src_compile() {
+ ocaml pkg/pkg.ml build --tests $(usex test 'true' 'false') || die
+}
diff --git a/dev-ml/fmt/fmt-0.9.0.ebuild b/dev-ml/fmt/fmt-0.9.0.ebuild
new file mode 100644
index 000000000000..18b44487ad91
--- /dev/null
+++ b/dev-ml/fmt/fmt-0.9.0.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit findlib opam
+
+DESCRIPTION="Combinators to devise OCaml Format pretty-printing functions"
+HOMEPAGE="https://erratique.ch/software/fmt https://github.com/dbuenzli/fmt"
+SRC_URI="https://erratique.ch/software/fmt/releases/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-ml/cmdliner:=[ocamlopt]
+ dev-ml/result:=[ocamlopt]
+ dev-ml/stdlib-shims:=[ocamlopt]
+ dev-ml/uchar:=[ocamlopt]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ >=dev-ml/topkg-0.9
+ dev-ml/ocamlbuild
+ dev-ml/findlib
+"
+
+src_compile() {
+ ocaml pkg/pkg.ml build --tests $(usex test 'true' 'false') || die
+}
+
+src_test() {
+ ocaml pkg/pkg.ml test _build/test/test.native || die
+}
diff --git a/dev-ml/fmt/metadata.xml b/dev-ml/fmt/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/fmt/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/fpath/Manifest b/dev-ml/fpath/Manifest
new file mode 100644
index 000000000000..186a907c964a
--- /dev/null
+++ b/dev-ml/fpath/Manifest
@@ -0,0 +1 @@
+DIST fpath-0.7.3.tbz 24345 BLAKE2B 5d4e68acebdafb6378422b31385e78decff2dfce1bedd102c7e6baac519f9843e0828629f4a15e075f506865e1af6f9cc7ece761e74fe6608d3476338cc556cb SHA512 acf4b379aee3c25305ef71d1b97b154faa6de1e8248a8e8d046cf11090a3e94f2dc048b961bb51725ca7384e784455f2893fbd51f26bf80571a9cc7e9475b945
diff --git a/dev-ml/fpath/fpath-0.7.3.ebuild b/dev-ml/fpath/fpath-0.7.3.ebuild
new file mode 100644
index 000000000000..499151a72256
--- /dev/null
+++ b/dev-ml/fpath/fpath-0.7.3.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit opam
+
+DESCRIPTION="File system paths for OCaml"
+HOMEPAGE="https://erratique.ch/software/fpath https://github.com/dbuenzli/fpath"
+SRC_URI="https://erratique.ch/software/fpath/releases/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+
+RDEPEND="dev-ml/result:=
+ dev-ml/astring:=
+"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-ml/topkg
+ dev-ml/ocamlbuild
+ dev-ml/findlib"
+
+src_compile() {
+ ocaml pkg/pkg.ml build || die
+}
diff --git a/dev-ml/fpath/metadata.xml b/dev-ml/fpath/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/fpath/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/gapi-ocaml/Manifest b/dev-ml/gapi-ocaml/Manifest
new file mode 100644
index 000000000000..e6f492d3a7c0
--- /dev/null
+++ b/dev-ml/gapi-ocaml/Manifest
@@ -0,0 +1,2 @@
+DIST gapi-ocaml-0.4.6.tar.gz 891545 BLAKE2B 40e6494ac8fdd7d114e0fa81170a38e7589ef77676fa63922dc99d5328dc431b9bf4c997c31ca87d716a80ca13c88e258155694f7ffd6553e79fea63d06c6bb9 SHA512 403850772c510c7a7284f73bd08317323b2c5892ef4ba6aeb162f2b5ae5a1f373bc17c94e7176c5972c88a9d8141d0699277d88bdaa0c8d4598aeeab705f26f9
+DIST gapi-ocaml-0.4.7.tar.gz 891465 BLAKE2B 8cb36318214cdfefb65eeb46771599084b7eeea5a0a7814b696d6e89bd6535bd38ac2700db7d9304e8ba69455d9d60565e0ec8998f211208e9e9fd5181ec4f03 SHA512 294422519f60374b7228ee04a317755f003b20abc61ad7ba6d167f96d3273807461cd1ffd309b61af3f1d60a12b01b5ac06b8e31714653a279cfe76516730458
diff --git a/dev-ml/gapi-ocaml/gapi-ocaml-0.4.6.ebuild b/dev-ml/gapi-ocaml/gapi-ocaml-0.4.6.ebuild
new file mode 100644
index 000000000000..91308dd72ec1
--- /dev/null
+++ b/dev-ml/gapi-ocaml/gapi-ocaml-0.4.6.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="A simple OCaml client for Google Services"
+HOMEPAGE="
+ https://opam.ocaml.org/packages/gapi-ocaml/
+ https://github.com/astrada/gapi-ocaml
+"
+
+SRC_URI="https://github.com/astrada/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64"
+IUSE="ocamlopt test"
+
+RDEPEND="
+ <dev-lang/ocaml-5.4
+ dev-ml/ocurl:=[ocamlopt?]
+ dev-ml/cryptokit:=[ocamlopt?]
+ dev-ml/yojson:=[ocamlopt?]
+ dev-ml/camlp-streams:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-ml/cppo
+ test? ( dev-ml/ounit2 )
+"
+
+RESTRICT="!test? ( test )"
diff --git a/dev-ml/gapi-ocaml/gapi-ocaml-0.4.7.ebuild b/dev-ml/gapi-ocaml/gapi-ocaml-0.4.7.ebuild
new file mode 100644
index 000000000000..d2f82ac6ce27
--- /dev/null
+++ b/dev-ml/gapi-ocaml/gapi-ocaml-0.4.7.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="A simple OCaml client for Google Services"
+HOMEPAGE="
+ https://opam.ocaml.org/packages/gapi-ocaml/
+ https://github.com/astrada/gapi-ocaml
+"
+
+SRC_URI="https://github.com/astrada/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64"
+IUSE="ocamlopt test"
+
+RDEPEND="
+ dev-ml/ocurl:=[ocamlopt?]
+ dev-ml/cryptokit:=[ocamlopt?]
+ dev-ml/yojson:=[ocamlopt?]
+ dev-ml/camlp-streams:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-ml/cppo
+ test? ( dev-ml/ounit2 )
+"
+
+RESTRICT="!test? ( test )"
diff --git a/dev-ml/gapi-ocaml/metadata.xml b/dev-ml/gapi-ocaml/metadata.xml
new file mode 100644
index 000000000000..d68d66e61c05
--- /dev/null
+++ b/dev-ml/gapi-ocaml/metadata.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <longdescription lang="en">gapi-ocaml is a simple, unofficial, OCaml client for Google Services.
+The library supports ClientLogin, OAuth 1.0a, and OAuth 2.0
+authentication. Supported RESTful APIs: Calendar APIs v3, Google+ API
+v1, Tasks API v1, APIs Discovery Service v1, URL Shortener API v1,
+OAuth2 API v2, Custom Search API v1, Google Analytics API v3, Page
+Speed Online API v1, Blogger API v2, Site Verification API v1, AdSense
+Management API v1.4, BigQuery API v2, Drive API v2, Drive API v3,
+Gmail API v1.</longdescription>
+ <upstream>
+ <bugs-to>https://github.com/astrada/gapi-ocaml/issues</bugs-to>
+ <maintainer>
+ <name>Alessandro Strada</name>
+ <email>alessandro.strada@gmail.com</email>
+ </maintainer>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/gel/Manifest b/dev-ml/gel/Manifest
new file mode 100644
index 000000000000..86ae045f1508
--- /dev/null
+++ b/dev-ml/gel/Manifest
@@ -0,0 +1 @@
+DIST gel-0.17.0.tar.gz 4255 BLAKE2B a270cb4191f3bb1ff503a180facf3600bdb3e6a47f1d96c45fc9218bad680375b67897b9747014574861ced98d6044c4bb09e425a756b8a6e278e2ac2c379231 SHA512 32e1dc3d59a70a17453b186d1739a6619a072d4983a2ffdb000b6587da04e53b38ca75bde52b5f7003ba0af2b2a754c627e87956a60df9582c2a53fc1089f716
diff --git a/dev-ml/gel/gel-0.17.0-r1.ebuild b/dev-ml/gel/gel-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..380896f0fcd6
--- /dev/null
+++ b/dev-ml/gel/gel-0.17.0-r1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2024-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="A library to mark non-record fields global"
+HOMEPAGE="https://github.com/janestreet/gel"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_jane-${JSM}:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/gel/metadata.xml b/dev-ml/gel/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/gel/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/gen/Manifest b/dev-ml/gen/Manifest
new file mode 100644
index 000000000000..bea5f96e9c99
--- /dev/null
+++ b/dev-ml/gen/Manifest
@@ -0,0 +1 @@
+DIST gen-1.1.tar.gz 32152 BLAKE2B f5314ecba43523ebde487740eae1df7e058ea0fa47ef676aa19d76e90f21b08464da6b1dafe8f0d10e7720dd48d72f6b7a40397545adf874698d6cddc47c0a72 SHA512 71a4b5c3666a7c11935398a78feea7383f61d2c549dfb96e324d40783ffa87b5ec492c5ec468803aabfb9b48e7d0ebaa30b24d2b974540afc7cca5feea3121c1
diff --git a/dev-ml/gen/gen-1.1.ebuild b/dev-ml/gen/gen-1.1.ebuild
new file mode 100644
index 000000000000..21d0269752b3
--- /dev/null
+++ b/dev-ml/gen/gen-1.1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Iterators for OCaml, both restartable and consumable"
+HOMEPAGE="https://github.com/c-cube/gen/"
+SRC_URI="https://github.com/c-cube/gen/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0/${PV}"
+KEYWORDS="amd64 ~arm ~arm64 ~riscv x86"
+IUSE="+ocamlopt"
+RESTRICT="test" # tests fail > unused-open
+
+RDEPEND="
+ dev-ml/dune-configurator:=
+"
+DEPEND="${RDEPEND}"
+# BDEPEND="test? ( dev-ml/qtest )"
+
+src_prepare() {
+ default
+
+ sed -i -e "s|(libraries seq)||" src/dune || die
+}
diff --git a/dev-ml/gen/metadata.xml b/dev-ml/gen/metadata.xml
new file mode 100644
index 000000000000..9fcb95056709
--- /dev/null
+++ b/dev-ml/gen/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/c-cube/gen/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/graphics/Manifest b/dev-ml/graphics/Manifest
new file mode 100644
index 000000000000..b91f8f3c249f
--- /dev/null
+++ b/dev-ml/graphics/Manifest
@@ -0,0 +1,2 @@
+DIST graphics-5.1.2.tbz 58863 BLAKE2B 640a288759f5c233f3ded3c0e974329b0b8a41ab60772d0d41e6f89057432215a35c0f06facc552fcacf2e1fb8d0f5c47bc5d0aad5ca89dcf4ab71732a9b1c9f SHA512 1387c1ecf5dfd62c3927f1f8ce0bcc8b162ef22f15bfd41eba47c955091f7ce5f19395beab550d31cff38d22c4ad097350975381e60936a0004271e96f65b09b
+DIST graphics-5.2.0.tar.gz 66386 BLAKE2B c4b8d02967593fd3ad3723e8756b0c0684f71525b7876ef595e87270a0c0404461b7d2220b39e509b80f7d6f1c37135bf981d9129d0ea42d8a6a2075abc5ef2b SHA512 3a9a534b438aff86fd7ac83b394ae118e79538dcce7787e587039310b6e8fd9b352cadd54392c6190bbf8127e227bcefec1902c714ed2dc987a6e5694170b6b4
diff --git a/dev-ml/graphics/graphics-5.1.2-r1.ebuild b/dev-ml/graphics/graphics-5.1.2-r1.ebuild
new file mode 100644
index 000000000000..bc2d6d271fe4
--- /dev/null
+++ b/dev-ml/graphics/graphics-5.1.2-r1.ebuild
@@ -0,0 +1,21 @@
+# Copyright 2022-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="The OCaml graphics library"
+HOMEPAGE="https://github.com/ocaml/graphics"
+SRC_URI="https://github.com/ocaml/${PN}/releases/download/${PV}/${P}.tbz"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+
+RDEPEND="dev-ml/dune-configurator:=[ocamlopt?]
+ x11-libs/libX11:="
+DEPEND="${RDEPEND}
+ x11-base/xorg-proto"
+
+IUSE="+ocamlopt"
diff --git a/dev-ml/graphics/graphics-5.2.0-r1.ebuild b/dev-ml/graphics/graphics-5.2.0-r1.ebuild
new file mode 100644
index 000000000000..959dc10a2279
--- /dev/null
+++ b/dev-ml/graphics/graphics-5.2.0-r1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2022-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="The OCaml graphics library"
+HOMEPAGE="https://github.com/ocaml/graphics"
+SRC_URI="https://github.com/ocaml/${PN}/archive/refs/tags/${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+
+RDEPEND="dev-ml/dune-configurator:=[ocamlopt?]
+ x11-libs/libXft
+ x11-libs/libX11:="
+DEPEND="${RDEPEND}
+ x11-base/xorg-proto"
+
+IUSE="+ocamlopt"
diff --git a/dev-ml/graphics/metadata.xml b/dev-ml/graphics/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/graphics/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/gsl-ocaml/Manifest b/dev-ml/gsl-ocaml/Manifest
new file mode 100644
index 000000000000..575428070415
--- /dev/null
+++ b/dev-ml/gsl-ocaml/Manifest
@@ -0,0 +1,2 @@
+DIST gsl-1.24.3.tbz 100642 BLAKE2B cf1bd63593901ba41ec33a8d073d923351e8cd6021f0402ce337242dd6b378408e740f2904a1c53f123453444dc08a05971921ab53e683b2ecf1e8a869f28e46 SHA512 c6e2578618591d1bef428693b69026cdea0f1606cd25d9f02d637a90256a5685eee70ecd0259d2595a1cd7b292c34e3c913c007e2706aa125af045d37e55d9c4
+DIST gsl-1.25.1.tbz 99259 BLAKE2B 576071599c3c451fec0aa9dbf738689f8092efde61f1057ccefdf8045f8c99b5bfe7e5e75e1bb07faaf8f2288c4ab8ef98045f32fc30c83162b2f82915d0552d SHA512 dc6f745738d8f2ad6da221c32634c072bb3de397613b76312d46f59ea66459aee8884019ddd88f3ef2d00ccbd015b63a37265dc5dded4d0207e954ae3fa9ec8f
diff --git a/dev-ml/gsl-ocaml/gsl-ocaml-1.24.3-r2.ebuild b/dev-ml/gsl-ocaml/gsl-ocaml-1.24.3-r2.ebuild
new file mode 100644
index 000000000000..e3060e6255dc
--- /dev/null
+++ b/dev-ml/gsl-ocaml/gsl-ocaml-1.24.3-r2.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DUNE_PKG_NAME="gsl"
+inherit dune
+
+MY_P=${P/-ocaml/}
+DESCRIPTION="OCaml bindings for the GSL library (successor of dev-ml/ocamlgsl)"
+HOMEPAGE="https://github.com/mmottl/gsl-ocaml"
+SRC_URI="https://github.com/mmottl/${PN}/releases/download/${PV}/${MY_P}.tbz"
+S="${WORKDIR}"/${MY_P}
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ dev-ml/dune-configurator
+ >=sci-libs/gsl-1.19:="
+RDEPEND="${DEPEND}"
+BDEPEND="<dev-lang/ocaml-5"
+
+# DOCS=( CHANGES.txt README.md NOTES.md TODO.md )
diff --git a/dev-ml/gsl-ocaml/gsl-ocaml-1.25.1.ebuild b/dev-ml/gsl-ocaml/gsl-ocaml-1.25.1.ebuild
new file mode 100644
index 000000000000..5922b5615302
--- /dev/null
+++ b/dev-ml/gsl-ocaml/gsl-ocaml-1.25.1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DUNE_PKG_NAME="gsl"
+inherit dune
+
+MY_P=${P/-ocaml/}
+DESCRIPTION="OCaml bindings for the GSL library (successor of dev-ml/ocamlgsl)"
+HOMEPAGE="https://github.com/mmottl/gsl-ocaml"
+SRC_URI="https://github.com/mmottl/${PN}/releases/download/${PV}/${MY_P}.tbz"
+S="${WORKDIR}"/${MY_P}
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ dev-ml/dune-configurator
+ >=sci-libs/gsl-1.19:="
+RDEPEND="${DEPEND}"
+
+# DOCS=( CHANGES.txt README.md NOTES.md TODO.md )
diff --git a/dev-ml/gsl-ocaml/metadata.xml b/dev-ml/gsl-ocaml/metadata.xml
new file mode 100644
index 000000000000..b201c2cfeade
--- /dev/null
+++ b/dev-ml/gsl-ocaml/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>sci@gentoo.org</email>
+ <name>Gentoo Science Project</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/hmap/Manifest b/dev-ml/hmap/Manifest
new file mode 100644
index 000000000000..39e8b062c162
--- /dev/null
+++ b/dev-ml/hmap/Manifest
@@ -0,0 +1 @@
+DIST hmap-0.8.1.tbz 4801 BLAKE2B bded8b87eb6ec922dcc8192f4c4ae6a650c72d14814b29504f3f4d93c46f09009d5c62fd940f3132a4d93b95e2325cd8c776157767f63c48180c536c409350a2 SHA512 9c476d9cf4acc16332e646ed67086d680d14dad76b1e7d3bfbbe22ddb96c55469efba1e2f006f89ef4816b26b68a9aa8094308967bda44283ed4384554fa9bb5
diff --git a/dev-ml/hmap/hmap-0.8.1.ebuild b/dev-ml/hmap/hmap-0.8.1.ebuild
new file mode 100644
index 000000000000..8d3c9b525462
--- /dev/null
+++ b/dev-ml/hmap/hmap-0.8.1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit opam
+
+DESCRIPTION="Heterogeneous value maps for OCaml"
+HOMEPAGE="http://erratique.ch/software/hmap"
+SRC_URI="http://erratique.ch/software/${PN}/releases/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64"
+
+BDEPEND="
+ dev-ml/ocamlbuild
+ dev-ml/findlib
+ dev-ml/topkg
+"
+
+src_compile() {
+ ocaml pkg/pkg.ml build || die
+}
diff --git a/dev-ml/hmap/metadata.xml b/dev-ml/hmap/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/hmap/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/int_repr/Manifest b/dev-ml/int_repr/Manifest
new file mode 100644
index 000000000000..8afde92f545c
--- /dev/null
+++ b/dev-ml/int_repr/Manifest
@@ -0,0 +1,2 @@
+DIST int_repr-0.16.0.tar.gz 9227 BLAKE2B 4dfb7a21cfe2bbd27051005f7eb1452925cac30b86ce3b20aeecbc0b2cf52966cbabbd9d56fa1fadfdc3c3912b33c4a1b323cfaf46e6c027ef6c31b4893e8901 SHA512 1b395d2c5c2322a8948f09e2b1c53382902edb1a390bc4659baf8eb87d085c90e551ede171a0d4d4b3c6fec18210ff100b02565461b42cabaedc446551c79841
+DIST int_repr-0.17.0.tar.gz 9585 BLAKE2B 482001315db80c0f267569ba9b0221de0ccd01f13fb5634dec3ebf5855dfbad72e216b414022e894a3ba7cdb30e197ec94b2084195a0f97891b191037551e6c9 SHA512 f8c73d61a8db553be0f09c1b7bb9efe97e46a739aa2f43316ef66e88e78c9f739a59f6f5d48ff3ae24540b96323db86512edbb73114276c9d3fb55dcd6a9e77b
diff --git a/dev-ml/int_repr/int_repr-0.16.0.ebuild b/dev-ml/int_repr/int_repr-0.16.0.ebuild
new file mode 100644
index 000000000000..b57d1f884e30
--- /dev/null
+++ b/dev-ml/int_repr/int_repr-0.16.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Integers of various widths"
+HOMEPAGE="https://github.com/janestreet/int_repr"
+SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/ppx_jane:${SLOT}
+"
+RDEPEND="${DEPEND}"
+BDEPEND=""
diff --git a/dev-ml/int_repr/int_repr-0.17.0-r1.ebuild b/dev-ml/int_repr/int_repr-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..a565b4b5865d
--- /dev/null
+++ b/dev-ml/int_repr/int_repr-0.17.0-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2022-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Integers of various widths"
+HOMEPAGE="https://github.com/janestreet/int_repr"
+SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_jane-${JSM}:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/int_repr/metadata.xml b/dev-ml/int_repr/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/int_repr/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/integers/Manifest b/dev-ml/integers/Manifest
new file mode 100644
index 000000000000..0b31a25218ec
--- /dev/null
+++ b/dev-ml/integers/Manifest
@@ -0,0 +1 @@
+DIST integers-0.7.0.tar.gz 12758 BLAKE2B 26244bb4fd6556c4e8e493180211a778552b84ae2de269b02d3094960fe7ab059a83f01263ee9e654e2e0c83195087bae621d7b60efde5eac519f9aae3a962fa SHA512 f71bf73af2e4e0dd5bd039b28bce1fdabfb199ada1836d694814aa6d0c1c2d205531fbfc05581082b2dbb1e9cc0948e594915d5ad6a1cfa1dbffa9e44a7a7450
diff --git a/dev-ml/integers/integers-0.7.0.ebuild b/dev-ml/integers/integers-0.7.0.ebuild
new file mode 100644
index 000000000000..69312d89a53d
--- /dev/null
+++ b/dev-ml/integers/integers-0.7.0.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Various signed and unsigned integer types for OCaml"
+HOMEPAGE="https://github.com/ocamllabs/ocaml-integers"
+SRC_URI="https://github.com/ocamllabs/ocaml-integers/archive/${PV}.tar.gz
+ -> ${P}.tar.gz"
+S="${WORKDIR}"/ocaml-${P}
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+RDEPEND="dev-ml/stdlib-shims:="
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/integers/metadata.xml b/dev-ml/integers/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/integers/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/iostream/Manifest b/dev-ml/iostream/Manifest
new file mode 100644
index 000000000000..08d7b70af955
--- /dev/null
+++ b/dev-ml/iostream/Manifest
@@ -0,0 +1 @@
+DIST iostream-0.3.tbz 14245 BLAKE2B f06596cd7a5f35e325a03f03c59214051a37d595335c483abc0d2a2f3f73327a29c895e54edc6bdee1ecf1246ab607042d57eafc19d41cb1326fc8137711973a SHA512 68ff56d48b2fcbd34ef2c15f6a8969543caa5c5e6b14177a0fde1e2b12d2fe52448d233e02cd1ab2529f74f48b31954ae8ec9e22601cfda6d3c38ce667c1b851
diff --git a/dev-ml/iostream/iostream-0.3.ebuild b/dev-ml/iostream/iostream-0.3.ebuild
new file mode 100644
index 000000000000..62cda1ba3dd1
--- /dev/null
+++ b/dev-ml/iostream/iostream-0.3.ebuild
@@ -0,0 +1,20 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+DUNE_PKG_NAME="iostream iostream-camlzip"
+inherit dune
+
+DESCRIPTION="Generic, composable IO input and output streams"
+HOMEPAGE="https://github.com/c-cube/ocaml-iostream"
+SRC_URI="https://github.com/c-cube/ocaml-${PN}/releases/download/v${PV}/${P}.tbz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="dev-ml/camlzip:=[ocamlopt?]"
+DEPEND="${RDEPEND}"
+BDEPEND="test? ( dev-ml/ounit2 )"
diff --git a/dev-ml/iostream/metadata.xml b/dev-ml/iostream/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/iostream/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/jane-street-headers/Manifest b/dev-ml/jane-street-headers/Manifest
new file mode 100644
index 000000000000..b86b5724e009
--- /dev/null
+++ b/dev-ml/jane-street-headers/Manifest
@@ -0,0 +1,2 @@
+DIST jane-street-headers-0.16.0.tar.gz 4905 BLAKE2B 33301bd5221fb636a44a3e654ae1511d99645e0dbfea4f9765f5d2febf9cdab03d6a9a15f7cf1733ffa380e7c9fa5743d66487feda0e2e2088d1e748775e607c SHA512 05336733845b442e3594889ac6e8fe7048bb3fc23b5f8a05e48d42db6851e4aac561587a1e73b9d6fb1852b768dd66b949cd220b1a9effe83dd181707ea2ab24
+DIST jane-street-headers-0.17.0.tar.gz 4940 BLAKE2B 21a6bd6ad436bac7afa9d051be26841bcef41d17ac88c9cb4d60417f5745130c6c252a6be8f6a38eb58f19f02c951243cfc5c971db67a0e6cba43d587291f0eb SHA512 200fafcbbdb86a5f183b42c7540f334ea77c0f879c793c18166c9c715500d603b22763787d8140cbcbd4eb3c6e0269bf3d3c380db67cf5b19776bd57daf379f1
diff --git a/dev-ml/jane-street-headers/jane-street-headers-0.16.0.ebuild b/dev-ml/jane-street-headers/jane-street-headers-0.16.0.ebuild
new file mode 100644
index 000000000000..22bb120cb5e0
--- /dev/null
+++ b/dev-ml/jane-street-headers/jane-street-headers-0.16.0.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Jane Street header files"
+HOMEPAGE="https://github.com/janestreet/jane-street-headers"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND=">=dev-lang/ocaml-4.14"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/jane-street-headers/jane-street-headers-0.17.0.ebuild b/dev-ml/jane-street-headers/jane-street-headers-0.17.0.ebuild
new file mode 100644
index 000000000000..f498fc7f2ffe
--- /dev/null
+++ b/dev-ml/jane-street-headers/jane-street-headers-0.17.0.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Jane Street header files"
+HOMEPAGE="https://github.com/janestreet/jane-street-headers"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+RDEPEND=">=dev-lang/ocaml-5"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/jane-street-headers/metadata.xml b/dev-ml/jane-street-headers/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/jane-street-headers/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/jingoo/Manifest b/dev-ml/jingoo/Manifest
new file mode 100644
index 000000000000..4c1c0274434a
--- /dev/null
+++ b/dev-ml/jingoo/Manifest
@@ -0,0 +1,3 @@
+DIST jingoo-1.5.0.tar.gz 69958 BLAKE2B c636b32aa81b5a6715083a06d48699f5943f608ff77cf1191231264cbeff924b46f44170794d7eb7d05b36dab3d4783e5785e1f2c283b14a68201e117ae08ec9 SHA512 7ef11809b3af5a5f8b6bb53c79025b0a8fb8d59f2f4b362e7cd75c7a7e4d555080a54d05338a5f86ce8677580353351bdb734c5e6381466131534e9621ecd41d
+DIST jingoo-1.5.1.tar.gz 70461 BLAKE2B 24dd18c90a5bde0d9fdc5a635a13037861de937ec1756d145a4c6822820b14a04e368126a67ff45c3531cae1d2bcb0920d9b832697eb43b72fc9bd0efefd05fb SHA512 2bea7c1171081a7a07b529bca37752e269ef49b885d02deb871e57c62c523862b1d0857ed79b6d7ef71eb8037af70a821f2247926a6f9be5f4e49dd207b46ddb
+DIST jingoo-1.5.2.tar.gz 70674 BLAKE2B 5b0cad70ffa31430a2927154f5b83888c0d8b71d4a8aa0c1b9f2b347aab0a379ef72b3d7ef36b6a91231bac14fa023279c6e72af3eb6094a790958f41054ac51 SHA512 28653ac8f083c259441848d803d75c93735ac2c1e8dae94d5e0880802fc30f458aad080b90ee2715f22d4d1cd09fd4c67a4bc94554600d6db350b08cd0f0f910
diff --git a/dev-ml/jingoo/files/jingoo-1.5.2-tests.patch b/dev-ml/jingoo/files/jingoo-1.5.2-tests.patch
new file mode 100644
index 000000000000..918f79f9b5e0
--- /dev/null
+++ b/dev-ml/jingoo/files/jingoo-1.5.2-tests.patch
@@ -0,0 +1,10 @@
+--- a/tests/dune.in
++++ b/tests/dune.in
+@@ -1,6 +1,6 @@
+ (executable
+ (name test)
+- (libraries jingoo unix dynlink re uutf uucp oUnit)
++ (libraries jingoo unix dynlink re uutf uucp ounit2)
+ )
+
+ (alias
diff --git a/dev-ml/jingoo/jingoo-1.5.0.ebuild b/dev-ml/jingoo/jingoo-1.5.0.ebuild
new file mode 100644
index 000000000000..cd684730d843
--- /dev/null
+++ b/dev-ml/jingoo/jingoo-1.5.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2021-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="OCaml template engine almost compatible with Jinja2"
+HOMEPAGE="https://github.com/tategakibunko/jingoo/"
+SRC_URI="https://github.com/tategakibunko/${PN}/archive/refs/tags/${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="amd64 arm64 x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-ml/menhir:=[ocamlopt?]
+ dev-ml/ppx_deriving:=[ocamlopt?]
+ dev-ml/re:=[ocamlopt?]
+ dev-ml/uucp:=
+ dev-ml/uutf:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="test? ( dev-ml/ounit2 )"
diff --git a/dev-ml/jingoo/jingoo-1.5.1.ebuild b/dev-ml/jingoo/jingoo-1.5.1.ebuild
new file mode 100644
index 000000000000..4d97362de92c
--- /dev/null
+++ b/dev-ml/jingoo/jingoo-1.5.1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2021-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="OCaml template engine almost compatible with Jinja2"
+HOMEPAGE="https://github.com/tategakibunko/jingoo/"
+SRC_URI="https://github.com/tategakibunko/${PN}/archive/refs/tags/${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-ml/menhir:=[ocamlopt?]
+ dev-ml/ppx_deriving:=[ocamlopt?]
+ dev-ml/re:=[ocamlopt?]
+ dev-ml/uucp:=
+ dev-ml/uutf:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="test? ( dev-ml/ounit2 )"
diff --git a/dev-ml/jingoo/jingoo-1.5.2.ebuild b/dev-ml/jingoo/jingoo-1.5.2.ebuild
new file mode 100644
index 000000000000..ec08281d714b
--- /dev/null
+++ b/dev-ml/jingoo/jingoo-1.5.2.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2021-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="OCaml template engine almost compatible with Jinja2"
+HOMEPAGE="https://github.com/tategakibunko/jingoo/"
+SRC_URI="https://github.com/tategakibunko/${PN}/archive/refs/tags/${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-tests.patch
+)
+
+RDEPEND="
+ dev-ml/menhir:=[ocamlopt?]
+ dev-ml/ppx_deriving:=[ocamlopt?]
+ dev-ml/re:=[ocamlopt?]
+ dev-ml/uucp:=
+ dev-ml/uutf:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="test? ( dev-ml/ounit2 )"
+
+src_test() {
+ emake test
+}
diff --git a/dev-ml/jingoo/metadata.xml b/dev-ml/jingoo/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/jingoo/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/jsonm/Manifest b/dev-ml/jsonm/Manifest
new file mode 100644
index 000000000000..e122b9abde77
--- /dev/null
+++ b/dev-ml/jsonm/Manifest
@@ -0,0 +1 @@
+DIST jsonm-1.0.2.tbz 22368 BLAKE2B b2f500796a21abb3d540064462dba7bd63459d9f1a3b47e419a8ea075b8cef24b744a128e4eb2c4a238de36db7c0eaaf60f85e137e3767836e23b5ec3cf89b98 SHA512 0072f5c31080202ed1cb996a8530d72c882723f26b597f784441033f59338ba8c0cbabf901794d5b1ae749a54af4d7ebf7b47987db43488c7f6ac7fe191a042f
diff --git a/dev-ml/jsonm/jsonm-1.0.2.ebuild b/dev-ml/jsonm/jsonm-1.0.2.ebuild
new file mode 100644
index 000000000000..1977a59d3e88
--- /dev/null
+++ b/dev-ml/jsonm/jsonm-1.0.2.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit findlib
+
+DESCRIPTION="Non-blocking streaming JSON codec for OCaml"
+HOMEPAGE="https://erratique.ch/software/jsonm"
+SRC_URI="https://erratique.ch/software/jsonm/releases/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+
+RDEPEND=">=dev-ml/uutf-1.0.0:=
+ dev-lang/ocaml:=
+ dev-ml/uchar:="
+DEPEND="${RDEPEND}
+ dev-ml/topkg
+ dev-ml/ocamlbuild
+ dev-ml/findlib"
+
+src_compile() {
+ ocaml pkg/pkg.ml build || die
+}
+
+src_install() {
+ # Can't use opam-installer here as it is an opam dep...
+ findlib_src_preinst
+
+ local nativelibs=""
+ use ocamlopt && nativelibs="$(echo _build/src/${PN}.cm{x,xa,xs,ti} _build/src/${PN}.a)"
+ ocamlfind install ${PN} _build/pkg/META _build/src/${PN}.mli _build/src/${PN}.cm{a,i} ${nativelibs} || die
+
+ use ocamlopt && newbin _build/test/jsontrip.native jsontrip
+ dodoc CHANGES.md TODO.md README.md
+}
diff --git a/dev-ml/jsonm/metadata.xml b/dev-ml/jsonm/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/jsonm/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/jst-config/Manifest b/dev-ml/jst-config/Manifest
new file mode 100644
index 000000000000..83abd25c39fa
--- /dev/null
+++ b/dev-ml/jst-config/Manifest
@@ -0,0 +1,2 @@
+DIST jst-config-0.16.0.tar.gz 4952 BLAKE2B 1a4a99594b68ff9f78e0019fb4a788b638b5ac3ea4c570b31d219855db96e086c3ee44b00ab02fe787f0898225bedf311bc86c85f84dbb1cbf892290ea44cbd4 SHA512 379446360c454c90ee80ed08dda3c34aff05d7026e77f868c33eb2fe93921e1ae9412bb69a5c92d54179d5465e0a1aab38cbf8ad55a86b2d164784015152c4ac
+DIST jst-config-0.17.0.tar.gz 5052 BLAKE2B 06cac5f2ddb3478a9eaff778fe5893238a177e41138fc44ea596016ee1a9838034cef48597d151b17f9974faa87c88bcd3f4acb130a2b375785d2f443490d3cf SHA512 b6b4fa1ffa88b6f3340e7ecc82666056caab78193176b1737af825a02f1b909c07a3801cd88edd63cb5ef4c007142110b4ca0ae4356962d1256b91c43e20e7e0
diff --git a/dev-ml/jst-config/jst-config-0.16.0.ebuild b/dev-ml/jst-config/jst-config-0.16.0.ebuild
new file mode 100644
index 000000000000..0a876ed98599
--- /dev/null
+++ b/dev-ml/jst-config/jst-config-0.16.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Compile-time configuration for Jane Street libraries"
+HOMEPAGE="https://github.com/janestreet/jst-config"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/base:=
+ dev-ml/dune-configurator:=
+ dev-ml/ppxlib:=
+ dev-ml/ppx_assert:=
+ dev-ml/ppx_compare:=
+ dev-ml/ppx_here:=
+ dev-ml/ppx_sexp_conv:=
+ dev-ml/stdio:=
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/jst-config/jst-config-0.17.0-r1.ebuild b/dev-ml/jst-config/jst-config-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..a355e2e49f6f
--- /dev/null
+++ b/dev-ml/jst-config/jst-config-0.17.0-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Compile-time configuration for Jane Street libraries"
+HOMEPAGE="https://github.com/janestreet/jst-config"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ dev-ml/dune-configurator:=[ocamlopt?]
+ =dev-ml/ppx_assert-${JSM}:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/jst-config/metadata.xml b/dev-ml/jst-config/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/jst-config/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/lablgl/Manifest b/dev-ml/lablgl/Manifest
new file mode 100644
index 000000000000..814ea444768d
--- /dev/null
+++ b/dev-ml/lablgl/Manifest
@@ -0,0 +1,2 @@
+DIST lablgl-1.06.tar.gz 567281 BLAKE2B 90e42d3f131b2a416b5a1fb9933fbf1178911aabfd571274e987c8e7da12a3c57673268b5e0300950f3b03ddb363626ad93fe3e647e5e7058ee48c0b130fcbfc SHA512 169ac4ed8eaf3635c107c57cd03a76a64fc16a8d3ba1ad261b7e4dcda985c0a83059421e72233f645aec21a1ec27b980530b4ffb7013fba31d446b16521b3f4c
+DIST lablgl-1.07.tar.gz 567464 BLAKE2B f5943883d5c3ab34f094d5e6f3254eb5728d662acf07afb10ab0561094bed867a93c4709b32e348b3dfbd6a86f55931bb545c71a927f4c10ea2a232a4176bdb2 SHA512 8091bd79dcb42ea29ad67f8f2da2cc75c640d72b0a5a4bb6a8548a6bfff4e7c1c6412903403b0916a0a5db918aed56a4979881456668d283d2fe4faaf9b4ec9e
diff --git a/dev-ml/lablgl/files/lablgl-1.06-makefile.patch b/dev-ml/lablgl/files/lablgl-1.06-makefile.patch
new file mode 100644
index 000000000000..1e336872ad5d
--- /dev/null
+++ b/dev-ml/lablgl/files/lablgl-1.06-makefile.patch
@@ -0,0 +1,12 @@
+Make sure install dir exists before copying file to it.
+
+--- a/LablGlut/src/Makefile
++++ b/LablGlut/src/Makefile
+@@ -68,6 +68,7 @@
+ cd "$(INSTALLDIR)" && $(RANLIB) liblablglut$(XA)
+ @if test -f dlllablglut$(XS); then $(MAKE) installdll; \
+ else $(MAKE) installtop; fi
++ mkdir -p "$(BINDIR)"
+ cp lablglut$(XB) "$(BINDIR)"
+
+ real-install: preinstall
diff --git a/dev-ml/lablgl/lablgl-1.06-r2.ebuild b/dev-ml/lablgl/lablgl-1.06-r2.ebuild
new file mode 100644
index 000000000000..b5c2273c7044
--- /dev/null
+++ b/dev-ml/lablgl/lablgl-1.06-r2.ebuild
@@ -0,0 +1,97 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit toolchain-funcs
+
+DESCRIPTION="Objective CAML interface for OpenGL"
+HOMEPAGE="https://github.com/garrigue/lablgl"
+SRC_URI="https://github.com/garrigue/lablgl/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ppc64 x86"
+IUSE="doc glut +ocamlopt tk"
+
+RDEPEND="
+ <dev-lang/ocaml-5:=[ocamlopt?]
+ x11-libs/libXext
+ x11-libs/libXmu
+ x11-libs/libX11
+ virtual/opengl
+ virtual/glu
+ glut? ( media-libs/freeglut )
+ tk? (
+ >=dev-lang/tcl-8.3:0=
+ >=dev-lang/tk-8.3:0=
+ dev-ml/labltk:=
+ )
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=( "${FILESDIR}"/${P}-makefile.patch )
+
+src_configure() {
+ # make configuration file
+ echo "BINDIR=/usr/bin" > Makefile.config || die
+ echo "GLLIBS = -lGL -lGLU" >> Makefile.config || die
+ if use glut; then
+ echo "GLUTLIBS = -lglut" >> Makefile.config || die
+ else
+ echo "GLUTLIBS = " >> Makefile.config || die
+ fi
+ echo "XLIBS = -lXext -lXmu -lX11" >> Makefile.config || die
+ echo "RANLIB = $(tc-getRANLIB)" >> Makefile.config || die
+ echo 'COPTS = -c -O $(CFLAGS)' >> Makefile.config || die
+ echo 'INCLUDES = $(TKINCLUDES) $(GLINCLUDES) $(XINCLUDES)' >> Makefile.config || die
+}
+
+src_compile() {
+ # Workaround for bug #834870
+ MAKEOPTS+=" -j1"
+
+ if use tk; then
+ emake togl
+ if use ocamlopt; then
+ emake toglopt
+ fi
+ fi
+
+ emake lib
+ if use ocamlopt; then
+ emake libopt
+ fi
+
+ if use glut; then
+ emake glut
+ if use ocamlopt; then
+ emake glutopt
+ fi
+ fi
+}
+
+src_install() {
+ # Makefile do not use mkdir so the library is not installed
+ # but copied as a 'stublibs' file.
+ dodir /usr/$(get_libdir)/ocaml/stublibs
+
+ # Same for lablglut's toplevel
+ if use tk ; then
+ dodir /usr/bin
+ fi
+
+ BINDIR="${ED}/usr/bin"
+ BASE="${ED}/usr/$(get_libdir)/ocaml"
+ emake BINDIR="${BINDIR}" INSTALLDIR="${BASE}/lablGL" DLLDIR="${BASE}/stublibs" install
+
+ dodoc README CHANGES
+
+ if use doc ; then
+ mv Togl/examples{,.togl} || die
+ dodoc -r Togl/examples.togl
+
+ mv LablGlut/examples{,.glut} || die
+ dodoc -r LablGlut/examples.glut
+ fi
+}
diff --git a/dev-ml/lablgl/lablgl-1.07-r1.ebuild b/dev-ml/lablgl/lablgl-1.07-r1.ebuild
new file mode 100644
index 000000000000..11eb266a0427
--- /dev/null
+++ b/dev-ml/lablgl/lablgl-1.07-r1.ebuild
@@ -0,0 +1,103 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dot-a toolchain-funcs
+
+DESCRIPTION="Objective CAML interface for OpenGL"
+HOMEPAGE="https://github.com/garrigue/lablgl"
+SRC_URI="https://github.com/garrigue/lablgl/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+IUSE="doc glut +ocamlopt tk"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.14:=[ocamlopt?]
+ dev-ml/camlp-streams
+ x11-libs/libXext
+ x11-libs/libXmu
+ x11-libs/libX11
+ virtual/opengl
+ virtual/glu
+ glut? ( media-libs/freeglut )
+ tk? (
+ >=dev-lang/tcl-8.3:0=
+ >=dev-lang/tk-8.3:0=
+ dev-ml/labltk:=
+ )
+"
+DEPEND="
+ ${RDEPEND}
+ dev-ml/findlib
+"
+
+PATCHES=( "${FILESDIR}"/${PN}-1.06-makefile.patch )
+
+src_configure() {
+ lto-guarantee-fat
+ # make configuration file
+ echo "BINDIR=/usr/bin" > Makefile.config || die
+ echo "GLLIBS = -lGL -lGLU" >> Makefile.config || die
+ if use glut; then
+ echo "GLUTLIBS = -lglut" >> Makefile.config || die
+ else
+ echo "GLUTLIBS = " >> Makefile.config || die
+ fi
+ echo "XLIBS = -lXext -lXmu -lX11" >> Makefile.config || die
+ echo "RANLIB = $(tc-getRANLIB)" >> Makefile.config || die
+ echo 'COPTS = -c -O $(CFLAGS)' >> Makefile.config || die
+ echo 'INCLUDES = $(TKINCLUDES) $(GLINCLUDES) $(XINCLUDES)' >> Makefile.config || die
+}
+
+src_compile() {
+ # Workaround for bug #834870
+ MAKEOPTS+=" -j1"
+
+ if use tk; then
+ emake togl
+ if use ocamlopt; then
+ emake toglopt
+ fi
+ fi
+
+ emake lib
+ if use ocamlopt; then
+ emake libopt
+ fi
+
+ if use glut; then
+ emake glut
+ if use ocamlopt; then
+ emake glutopt
+ fi
+ fi
+}
+
+src_install() {
+ # Makefile do not use mkdir so the library is not installed
+ # but copied as a 'stublibs' file.
+ dodir /usr/$(get_libdir)/ocaml/stublibs
+
+ # Same for lablglut's toplevel
+ if use tk ; then
+ dodir /usr/bin
+ fi
+
+ BINDIR="${ED}/usr/bin"
+ BASE="${ED}/usr/$(get_libdir)/ocaml"
+ emake BINDIR="${BINDIR}" INSTALLDIR="${BASE}/lablGL" DLLDIR="${BASE}/stublibs" install
+ strip-lto-bytecode
+
+ dodoc README CHANGES
+
+ if use doc ; then
+ mv Togl/examples{,.togl} || die
+ dodoc -r Togl/examples.togl
+
+ mv LablGlut/examples{,.glut} || die
+ dodoc -r LablGlut/examples.glut
+ fi
+}
diff --git a/dev-ml/lablgl/metadata.xml b/dev-ml/lablgl/metadata.xml
new file mode 100644
index 000000000000..5f33304011d5
--- /dev/null
+++ b/dev-ml/lablgl/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/lablgtk-sourceview/Manifest b/dev-ml/lablgtk-sourceview/Manifest
new file mode 100644
index 000000000000..edcfbc1ea03d
--- /dev/null
+++ b/dev-ml/lablgtk-sourceview/Manifest
@@ -0,0 +1 @@
+DIST lablgtk-3.1.5.tar.gz 1045721 BLAKE2B 5f677d2ac1a39f23e5c3b66f6239540e369ec6916eb87f980543a7ea6c723b5126882fd4f9673f8a76171d0e83de236b98ae9068956f86a0a37cb836c353b9e5 SHA512 750f57ea2ccb0534123596aca04a4ba12bbf67bafb521a7978e6acc8027b2b3b822d373bf3fabb4018640c5e2d5bc3d5a336e91ceb8ff037b1f7a048440df03a
diff --git a/dev-ml/lablgtk-sourceview/lablgtk-sourceview-3.1.5.ebuild b/dev-ml/lablgtk-sourceview/lablgtk-sourceview-3.1.5.ebuild
new file mode 100644
index 000000000000..8d613a32b038
--- /dev/null
+++ b/dev-ml/lablgtk-sourceview/lablgtk-sourceview-3.1.5.ebuild
@@ -0,0 +1,30 @@
+# Copyright 2019-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DUNE_PKG_NAME=lablgtk3-sourceview3
+
+inherit dune
+
+DESCRIPTION="OCaml bindings to GTK-3"
+HOMEPAGE="https://github.com/garrigue/lablgtk"
+SRC_URI="https://github.com/garrigue/lablgtk/archive/${PV}.tar.gz
+ -> lablgtk-${PV}.tar.gz"
+S="${WORKDIR}"/lablgtk-${PV}
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="3/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-ml/lablgtk-${PV}:3=
+ dev-ml/cairo2:=
+ x11-libs/gtksourceview:3.0=
+"
+RDEPEND="${DEPEND}"
+
+src_compile() {
+ dune-compile ${DUNE_PKG_NAME}
+}
diff --git a/dev-ml/lablgtk-sourceview/metadata.xml b/dev-ml/lablgtk-sourceview/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/lablgtk-sourceview/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/lablgtk/Manifest b/dev-ml/lablgtk/Manifest
new file mode 100644
index 000000000000..edcfbc1ea03d
--- /dev/null
+++ b/dev-ml/lablgtk/Manifest
@@ -0,0 +1 @@
+DIST lablgtk-3.1.5.tar.gz 1045721 BLAKE2B 5f677d2ac1a39f23e5c3b66f6239540e369ec6916eb87f980543a7ea6c723b5126882fd4f9673f8a76171d0e83de236b98ae9068956f86a0a37cb836c353b9e5 SHA512 750f57ea2ccb0534123596aca04a4ba12bbf67bafb521a7978e6acc8027b2b3b822d373bf3fabb4018640c5e2d5bc3d5a336e91ceb8ff037b1f7a048440df03a
diff --git a/dev-ml/lablgtk/lablgtk-3.1.5-r2.ebuild b/dev-ml/lablgtk/lablgtk-3.1.5-r2.ebuild
new file mode 100644
index 000000000000..8a5827c430db
--- /dev/null
+++ b/dev-ml/lablgtk/lablgtk-3.1.5-r2.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2019-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DUNE_PKG_NAME=lablgtk3
+
+inherit dune
+
+DESCRIPTION="OCaml bindings to GTK-3"
+HOMEPAGE="https://github.com/garrigue/lablgtk"
+SRC_URI="https://github.com/garrigue/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="3/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 x86"
+IUSE="+ocamlopt sourceview"
+
+DEPEND="
+ app-text/gtkspell:3=
+ dev-ml/cairo2:=[ocamlopt?]
+ dev-ml/camlp-streams:=[ocamlopt?]
+ x11-libs/gtk+:3=[X]
+ x11-libs/gtksourceview:3.0=
+"
+RDEPEND="${DEPEND}"
+PDEPEND="sourceview? ( dev-ml/lablgtk-sourceview:${SLOT} )"
+
+src_compile() {
+ dune-compile ${DUNE_PKG_NAME}
+}
diff --git a/dev-ml/lablgtk/metadata.xml b/dev-ml/lablgtk/metadata.xml
new file mode 100644
index 000000000000..e58729b75b94
--- /dev/null
+++ b/dev-ml/lablgtk/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <use>
+ <flag name="sourceview">
+ Enable GtkSourceView (<pkg>x11-libs/gtksourceview</pkg>) support
+ </flag>
+ </use>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/labltk/Manifest b/dev-ml/labltk/Manifest
new file mode 100644
index 000000000000..e24c90a5ba8e
--- /dev/null
+++ b/dev-ml/labltk/Manifest
@@ -0,0 +1,2 @@
+DIST labltk-8.06.12.tar.gz 372215 BLAKE2B 27718ad287954c11c0e77579239ad9ad53f4df308f3af3c482c40504e6426b4366d2c3de3acb36ca39e7fd404964fe5caa53a0b47702a0bc45ae1266765e90a0 SHA512 e1564ab2d8922276bd8ad586b37308d60ca2dd563bac3cdd992d8a6ba4de26e5499350a62a1d4cb2bbb9a5b7aff609b5187aad5fba118eb55d1b4c8355d2979a
+DIST labltk-8.06.15.tar.gz 385012 BLAKE2B cb0a341b47fbf5771aef0c29f2fe9410793d04fb3ecf4c97f771c894b2b33d3f74dde3242c597d358df4a79feef7bc1a1bb2a5a5fe2f7af69fab05733e51ec6a SHA512 67feb7f51be2a837050dc0b94a4cd185f05db240cdbb1188d5787465dd2abed98b17244c66893ad18ef912fbbe960b90a3e116a9f283a6277b6a747043780e24
diff --git a/dev-ml/labltk/files/findlib.patch b/dev-ml/labltk/files/findlib.patch
new file mode 100644
index 000000000000..9b9a63bdede8
--- /dev/null
+++ b/dev-ml/labltk/files/findlib.patch
@@ -0,0 +1,20 @@
+Index: labltk-8.06.0/lib/Makefile
+===================================================================
+--- labltk-8.06.0.orig/lib/Makefile
++++ labltk-8.06.0/lib/Makefile
+@@ -84,7 +84,7 @@ install-script: $(LIBNAME)
+ install-batch:
+ cp labltk.bat $(INSTALLBINDIR)
+
+-ifeq ($USE_FINDLIB,yes)
++ifeq ($(USE_FINDLIB),yes)
+ install:
+ ocamlfind install labltk -add $(LIBNAME).cma $(LIBNAME)top$(EXE)
+ chmod 755 $(INSTALLDIR)/$(LIBNAME)top$(EXE)
+@@ -114,4 +114,4 @@ installopt:
+ cd $(INSTALLDIR); $(RANLIB) $(LIBNAME).$(A)
+ chmod 644 $(INSTALLDIR)/$(LIBNAME).cmxa
+ chmod 644 $(INSTALLDIR)/$(LIBNAME).$(A)
+-endif
+\ No newline at end of file
++endif
diff --git a/dev-ml/labltk/files/labltk-8.06.12-c2x.patch b/dev-ml/labltk/files/labltk-8.06.12-c2x.patch
new file mode 100644
index 000000000000..f495e532d590
--- /dev/null
+++ b/dev-ml/labltk/files/labltk-8.06.12-c2x.patch
@@ -0,0 +1,47 @@
+--- a/support/cltkWait.c 2023-01-25 19:38:41.920494229 +0100
++++ b/support/cltkWait.c 2023-01-25 19:39:51.246347410 +0100
+@@ -44,9 +44,7 @@
+ Tk_Window win;
+ };
+
+-static void WaitVisibilityProc(clientData, eventPtr)
+- ClientData clientData;
+- XEvent *eventPtr; /* Information about event (not used). */
++static void WaitVisibilityProc(ClientData clientData, XEvent *eventPtr)
+ {
+ struct WinCBData *vis = clientData;
+ value cbid = Val_int(vis->cbid);
+--- a/support/cltkImg.c 2023-01-25 19:42:03.647173018 +0100
++++ b/support/cltkImg.c 2023-01-25 19:42:49.290423395 +0100
+@@ -111,9 +111,7 @@
+ return Val_int(0);
+ }
+
+-CAMLprim value camltk_setimgdata_bytecode(argv,argn)
+- value *argv;
+- int argn;
++CAMLprim value camltk_setimgdata_bytecode(value *argv, int argn)
+ {
+ return camltk_setimgdata_native(argv[0], argv[1], argv[2], argv[3],
+ argv[4], argv[5]);
+--- a/support/cltkVar.c 2023-01-25 19:44:11.880066940 +0100
++++ b/support/cltkVar.c 2023-01-25 19:46:16.580018764 +0100
+@@ -74,12 +74,12 @@
+ typedef char *(Tcl_VarTraceProc) _ANSI_ARGS_((ClientData clientData,
+ Tcl_Interp *interp, char *part1, char *part2, int flags));
+ */
+-static char * tracevar(clientdata, interp, name1, name2, flags)
+- ClientData clientdata;
+- Tcl_Interp *interp; /* Interpreter containing variable. */
+- char *name1; /* Name of variable. */
+- char *name2; /* Second part of variable name. */
+- int flags; /* Information about what happened. */
++static char * tracevar(ClientData clientdata, Tcl_Interp *interp,
++ char *name1, char *name2, int flags)
++ /* interp -> Interpreter containing variable. */
++ /* name1 -> Name of variable. */
++ /* name2 -> Second part of variable name. */
++ /* flags -> Information about what happened. */
+ {
+ Tcl_UntraceVar2(interp, name1, name2,
+ TCL_GLOBAL_ONLY|TCL_TRACE_WRITES|TCL_TRACE_UNSETS,
diff --git a/dev-ml/labltk/files/labltk-8.06.12-c99.patch b/dev-ml/labltk/files/labltk-8.06.12-c99.patch
new file mode 100644
index 000000000000..1761f478bd76
--- /dev/null
+++ b/dev-ml/labltk/files/labltk-8.06.12-c99.patch
@@ -0,0 +1,11 @@
+--- a/support/cltkVar.c 2024-06-04 20:18:35.940518270 +0200
++++ b/support/cltkVar.c 2024-06-04 20:18:49.456367424 +0200
+@@ -75,7 +75,7 @@
+ Tcl_Interp *interp, char *part1, char *part2, int flags));
+ */
+ static char * tracevar(ClientData clientdata, Tcl_Interp *interp,
+- char *name1, char *name2, int flags)
++ const char *name1, const char *name2, int flags)
+ /* interp -> Interpreter containing variable. */
+ /* name1 -> Name of variable. */
+ /* name2 -> Second part of variable name. */
diff --git a/dev-ml/labltk/files/labltk-8.06.12-shuffle.patch b/dev-ml/labltk/files/labltk-8.06.12-shuffle.patch
new file mode 100644
index 000000000000..62fd8997f212
--- /dev/null
+++ b/dev-ml/labltk/files/labltk-8.06.12-shuffle.patch
@@ -0,0 +1,46 @@
+--- a/compiler/Makefile 2023-01-21 22:23:29.676828969 +0100
++++ b/compiler/Makefile 2023-01-21 22:24:16.204141261 +0100
+@@ -73,6 +73,9 @@
+ .ml.cmo:
+ $(CAMLCOMP) $(COMPFLAGS) -I ../support $<
+
++maincompile.cmo: copyright.cmo
++maincompile.cmx: copyright.cmx
++
+ depend: parser.ml parser.mli lexer.ml pplex.ml ppyac.ml ppyac.mli
+ $(CAMLDEP) *.mli *.ml > .depend
+
+--- a/browser/Makefile 2023-01-25 22:29:40.784044151 +0100
++++ b/browser/Makefile 2023-01-25 22:29:56.579838693 +0100
+@@ -18,3 +18,6 @@
+
+ dummy.ml:
+ cp dummyUnix.ml dummy.ml
++
++shell.cmo : dummy.cmo
++shell.cmx : dummy.cmx
+--- a/browser/.depend 2023-03-09 11:54:40.849960961 +0100
++++ b/browser/.depend 2023-03-09 11:55:21.041342177 +0100
+@@ -117,10 +117,12 @@
+ shell.cmo : ../labltk/winfo.cmi ../labltk/toplevel.cmi ../labltk/tk.cmo \
+ ../support/timer.cmi ../labltk/text.cmi ../labltk/menu.cmi list2.cmo \
+ lexical.cmi jg_toplevel.cmo jg_tk.cmo jg_text.cmi jg_message.cmi \
++ dummy.cmo \
+ jg_menu.cmo jg_memo.cmi fileselect.cmi ../support/fileevent.cmi shell.cmi
+ shell.cmx : ../labltk/winfo.cmx ../labltk/toplevel.cmx ../labltk/tk.cmx \
+ ../support/timer.cmx ../labltk/text.cmx ../labltk/menu.cmx list2.cmx \
+ lexical.cmx jg_toplevel.cmx jg_tk.cmx jg_text.cmx jg_message.cmx \
++ dummy.cmx \
+ jg_menu.cmx jg_memo.cmx fileselect.cmx ../support/fileevent.cmx shell.cmi
+ typecheck.cmo : ../labltk/tk.cmo ../labltk/text.cmi mytypes.cmi jg_tk.cmo \
+ jg_text.cmi jg_message.cmi typecheck.cmi
+--- a/browser/Makefile.shared 2024-06-05 10:08:38.886219581 +0200
++++ b/browser/Makefile.shared 2024-06-05 10:06:05.142920155 +0200
+@@ -71,4 +71,7 @@
+
+ shell.cmo: dummy.cmi
+
++dummy.cmi: dummy.ml
++ $(CAMLCOMP) $(INCLUDES) $<
++
+ include .depend
diff --git a/dev-ml/labltk/files/labltk-8.06.14-findlib.patch b/dev-ml/labltk/files/labltk-8.06.14-findlib.patch
new file mode 100644
index 000000000000..2cc2b945a226
--- /dev/null
+++ b/dev-ml/labltk/files/labltk-8.06.14-findlib.patch
@@ -0,0 +1,13 @@
+Index: labltk-8.06.0/lib/Makefile
+===================================================================
+--- labltk-8.06.0.orig/lib/Makefile
++++ labltk-8.06.0/lib/Makefile
+@@ -84,7 +84,7 @@ install-script: $(LIBNAME)
+ install-batch:
+ cp labltk.bat $(INSTALLBINDIR)
+
+-ifeq ($USE_FINDLIB,yes)
++ifeq ($(USE_FINDLIB),yes)
+ install:
+ ocamlfind install labltk -add $(LIBNAME).cma $(LIBNAME)top$(EXE)
+ chmod 755 $(INSTALLDIR)/$(LIBNAME)top$(EXE)
diff --git a/dev-ml/labltk/files/labltk-8.06.14-shuffle.patch b/dev-ml/labltk/files/labltk-8.06.14-shuffle.patch
new file mode 100644
index 000000000000..5cf4bc839d02
--- /dev/null
+++ b/dev-ml/labltk/files/labltk-8.06.14-shuffle.patch
@@ -0,0 +1,31 @@
+--- a/compiler/Makefile 2023-01-21 22:23:29.676828969 +0100
++++ b/compiler/Makefile 2023-01-21 22:24:16.204141261 +0100
+@@ -73,6 +73,9 @@
+ .ml.cmo:
+ $(CAMLCOMP) $(COMPFLAGS) -I ../support $<
+
++maincompile.cmo: copyright.cmo
++maincompile.cmx: copyright.cmx
++
+ depend: parser.ml parser.mli lexer.ml pplex.ml ppyac.ml ppyac.mli
+ $(CAMLDEP) *.mli *.ml > .depend
+
+--- a/browser/Makefile 2023-01-25 22:29:40.784044151 +0100
++++ b/browser/Makefile 2023-01-25 22:29:56.579838693 +0100
+@@ -18,3 +18,6 @@
+
+ dummy.ml:
+ cp dummyUnix.ml dummy.ml
++
++shell.cmo : dummy.cmo
++shell.cmx : dummy.cmx
+--- a/browser/Makefile.shared 2024-06-05 10:08:38.886219581 +0200
++++ b/browser/Makefile.shared 2024-06-05 10:06:05.142920155 +0200
+@@ -71,4 +71,7 @@
+
+ shell.cmo: dummy.cmi
+
++dummy.cmi: dummy.ml
++ $(CAMLCOMP) $(INCLUDES) $<
++
+ include .depend
diff --git a/dev-ml/labltk/files/labltk-8.06.9-configure-clang16.patch b/dev-ml/labltk/files/labltk-8.06.9-configure-clang16.patch
new file mode 100644
index 000000000000..bc7e04175f7f
--- /dev/null
+++ b/dev-ml/labltk/files/labltk-8.06.9-configure-clang16.patch
@@ -0,0 +1,50 @@
+https://bugs.gentoo.org/881841
+https://github.com/garrigue/labltk/pull/17
+
+From e1e850972c4190686a040574b91d61948cc559b5 Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Sat, 19 Nov 2022 01:14:25 +0000
+Subject: [PATCH] config: Fix -Wimplicit-int, -Wstrict-prototypes (Clang 16)
+
+Followup to be8c977d320ed40cacb322658d4ceba5e583b3a6.
+
+Clang 16 makes -Wimplicit-int error by default.
+
+Unfortunately, this can lead to misconfiguration or miscompilation of software as configure
+tests may then return the wrong result.
+
+We also fix -Wstrict-prototypes while here as it's easy to do and it prepares
+us for C23.
+
+For more information, see LWN.net [0] or LLVM's Discourse [1], the Gentoo wiki [2],
+or the (new) c-std-porting mailing list [3].
+
+[0] https://lwn.net/Articles/913505/
+[1] https://discourse.llvm.org/t/configure-script-breakage-with-the-new-werror-implicit-function-declaration/65213
+[2] https://wiki.gentoo.org/wiki/Modern_C_porting
+[3] hosted at lists.linux.dev.
+
+Signed-off-by: Sam James <sam@gentoo.org>
+--- a/config/auto-aux/hasgot
++++ b/config/auto-aux/hasgot
+@@ -31,7 +31,7 @@ while : ; do
+ done
+
+ (for f in $*; do echo "int $f();"; done
+- echo "int main() {"
++ echo "int main(void) {"
+ for f in $*; do echo " $f();"; done
+ echo "}") >> hasgot.c
+
+--- a/config/auto-aux/tclversion.c
++++ b/config/auto-aux/tclversion.c
+@@ -18,7 +18,7 @@
+ #include <tcl.h>
+ #include <tk.h>
+
+-main ()
++int main (void)
+ {
+ puts(TCL_VERSION);
+ }
+
diff --git a/dev-ml/labltk/labltk-8.06.12-r2.ebuild b/dev-ml/labltk/labltk-8.06.12-r2.ebuild
new file mode 100644
index 000000000000..eb796f8cca66
--- /dev/null
+++ b/dev-ml/labltk/labltk-8.06.12-r2.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit findlib toolchain-funcs
+
+DESCRIPTION="OCaml interface to the Tcl/Tk GUI framework"
+HOMEPAGE="https://garrigue.github.io/labltk/"
+SRC_URI="https://github.com/garrigue/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="QPL-1.0 LGPL-2"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt X"
+
+RDEPEND="dev-lang/tk:=
+ >=dev-lang/ocaml-4.14:=[ocamlopt?,X(+)?]
+ <dev-lang/ocaml-5"
+DEPEND="${RDEPEND}
+ dev-ml/findlib
+"
+
+PATCHES=(
+ "${FILESDIR}/findlib.patch"
+ "${FILESDIR}"/${PN}-8.06.9-configure-clang16.patch
+ "${FILESDIR}"/${P}-shuffle.patch
+ "${FILESDIR}"/${P}-c2x.patch
+ "${FILESDIR}"/${P}-c99.patch
+)
+
+src_prepare() {
+ sed -i \
+ -e "s|ranlib|$(tc-getRANLIB)|" \
+ frx/Makefile \
+ || die
+ default
+}
+
+src_configure() {
+ ./configure --use-findlib --verbose $(usex X "--tk-x11" "--tk-no-x11") || die "configure failed!"
+}
+
+src_compile() {
+ emake -j1 all
+ use ocamlopt && emake -j1 opt
+}
+
+src_install() {
+ findlib_src_preinst
+ dodir /usr/bin
+ emake \
+ INSTALLDIR="${D}/$(ocamlc -where)/labltk" \
+ INSTALLBINDIR="${ED}/usr/bin/" \
+ RANLIB=$(tc-getRANLIB) \
+ install
+ dodoc Changes README.mlTk
+}
diff --git a/dev-ml/labltk/labltk-8.06.15-r1.ebuild b/dev-ml/labltk/labltk-8.06.15-r1.ebuild
new file mode 100644
index 000000000000..62fe1766dcc6
--- /dev/null
+++ b/dev-ml/labltk/labltk-8.06.15-r1.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit findlib toolchain-funcs
+
+DESCRIPTION="OCaml interface to the Tcl/Tk GUI framework"
+HOMEPAGE="https://garrigue.github.io/labltk/"
+SRC_URI="https://github.com/garrigue/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="QPL-1.0 LGPL-2"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt X"
+
+RDEPEND="dev-lang/tk:=
+ >=dev-lang/ocaml-5:=[ocamlopt?,X(+)?]
+ <dev-lang/ocaml-5.4"
+DEPEND="${RDEPEND}
+ dev-ml/findlib
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-8.06.14-findlib.patch
+ "${FILESDIR}"/${PN}-8.06.14-shuffle.patch
+)
+
+src_prepare() {
+ sed -i \
+ -e "s|ranlib|$(tc-getRANLIB)|" \
+ frx/Makefile \
+ || die
+ default
+}
+
+src_configure() {
+ ./configure --use-findlib --verbose $(usex X "--tk-x11" "--tk-no-x11") || die "configure failed!"
+}
+
+src_compile() {
+ emake -j1 all
+ use ocamlopt && emake -j1 opt
+}
+
+src_install() {
+ findlib_src_preinst
+ dodir /usr/bin
+ emake \
+ INSTALLDIR="${D}/$(ocamlc -where)/labltk" \
+ INSTALLBINDIR="${ED}/usr/bin/" \
+ RANLIB=$(tc-getRANLIB) \
+ install
+ dodoc Changes README.mlTk
+}
diff --git a/dev-ml/labltk/metadata.xml b/dev-ml/labltk/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/labltk/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/lambda-term/Manifest b/dev-ml/lambda-term/Manifest
new file mode 100644
index 000000000000..07433c508646
--- /dev/null
+++ b/dev-ml/lambda-term/Manifest
@@ -0,0 +1,3 @@
+DIST lambda-term-3.3.2.tar.gz 142574 BLAKE2B 81192f9fc7a8db83d08c7342a7914d4aa14ace14ee09d5a0387e5927502b02e018bc4c7537e82342221bd53a9e08ac24057820d5d1a056e243383fbe065f12b6 SHA512 78648768644058337e22c79cf1fbb1a36472b24f11b1dc0461fc38419be6ec01b02d8d0ac45fed0bc99f91ba4c0f19d3bda113e834e064bee973b734527b9766
+DIST lambda-term-3.3.3.tar.gz 142703 BLAKE2B 078d32b256fd2fd6fb971119cf0a234770f6f5f750c81b97a8e4603f7d46c6735443e1911fe1fe5c0d8f04299bf05e0bfc6eb173f65194e15cb1283a5513ab90 SHA512 34be68128d82b7219a963ca7442948842fc26ff9dbd3be9eb76092be3a4cf7cb19bad043fdeed7f5607178375c472dc51c6eebea82145541836e7883320d342c
+DIST lambda-term-3.4.0.tar.gz 142784 BLAKE2B f9926c9415cdfdc4bb069668a37943f69efe687e5bcad8c5f9008e79b5afafe42a78e40fa3150a991188524fcf6d75d38e9a23d95205df74500e253459d11f13 SHA512 e3014f90346a1c02846047edf6d9c494de860c1b2de31c6561548221b0723e9cf3790ff9950d7958e68faaa9e44aa210eaf74e92cc119b45dcbc93ade9c14647
diff --git a/dev-ml/lambda-term/lambda-term-3.3.2.ebuild b/dev-ml/lambda-term/lambda-term-3.3.2.ebuild
new file mode 100644
index 000000000000..159371dcc35d
--- /dev/null
+++ b/dev-ml/lambda-term/lambda-term-3.3.2.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Terminal manipulation library for OCaml"
+HOMEPAGE="https://github.com/ocaml-community/lambda-term"
+SRC_URI="https://github.com/ocaml-community/${PN}/archive/${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-ml/lwt-5.4:=
+ dev-ml/logs:=[lwt]
+ dev-ml/lwt_log:=
+ dev-ml/mew_vi:=
+ dev-ml/react:=
+ dev-ml/zed:=
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/lambda-term/lambda-term-3.3.3.ebuild b/dev-ml/lambda-term/lambda-term-3.3.3.ebuild
new file mode 100644
index 000000000000..1511e646aa55
--- /dev/null
+++ b/dev-ml/lambda-term/lambda-term-3.3.3.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Terminal manipulation library for OCaml"
+HOMEPAGE="https://github.com/ocaml-community/lambda-term"
+SRC_URI="https://github.com/ocaml-community/${PN}/archive/${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-ml/lwt-5.4:=
+ dev-ml/logs:=[lwt]
+ dev-ml/lwt_log:=
+ dev-ml/mew_vi:=
+ dev-ml/react:=
+ dev-ml/zed:=
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/lambda-term/lambda-term-3.4.0.ebuild b/dev-ml/lambda-term/lambda-term-3.4.0.ebuild
new file mode 100644
index 000000000000..1511e646aa55
--- /dev/null
+++ b/dev-ml/lambda-term/lambda-term-3.4.0.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Terminal manipulation library for OCaml"
+HOMEPAGE="https://github.com/ocaml-community/lambda-term"
+SRC_URI="https://github.com/ocaml-community/${PN}/archive/${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-ml/lwt-5.4:=
+ dev-ml/logs:=[lwt]
+ dev-ml/lwt_log:=
+ dev-ml/mew_vi:=
+ dev-ml/react:=
+ dev-ml/zed:=
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/lambda-term/metadata.xml b/dev-ml/lambda-term/metadata.xml
new file mode 100644
index 000000000000..35a1932520d3
--- /dev/null
+++ b/dev-ml/lambda-term/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <longdescription>
+ Lambda-term is a cross-platform library for manipulating the terminal.
+ It provides an abstraction for keys, mouse events, colors, as well as a set
+ of widgets to write curses-like applications. The main objective of
+ lambda-term is to provide a higher level functional interface to terminal
+ manipulation than, for example, ncurses, by providing a native OCaml
+ interface instead of bindings to a C library. Lambda-term integrates with
+ zed to provide text edition facilities in console applications.
+ </longdescription>
+ <upstream>
+ <bugs-to>https://github.com/ocaml-community/lambda-term/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/libvirt-ocaml/Manifest b/dev-ml/libvirt-ocaml/Manifest
new file mode 100644
index 000000000000..3a609b55852a
--- /dev/null
+++ b/dev-ml/libvirt-ocaml/Manifest
@@ -0,0 +1 @@
+DIST ocaml-libvirt-0.6.1.7.tar.gz 197186 BLAKE2B 77aa5997659028508a38a6ce13850e6508eb2d87055a4344351494e5e65b26cb5f40d05a56e0760bd43f2004904dafaf48312252d1dbe77de59f152a958d13b4 SHA512 ec4ebb69701b15a0c258e78f0e9eb9b1f2a75a86384392e8622ad7f4c85dfc598d51d95698835a2ea401b5647b3ad325ff820cbb7d0e524551ff07c26a54de2b
diff --git a/dev-ml/libvirt-ocaml/libvirt-ocaml-0.6.1.7.ebuild b/dev-ml/libvirt-ocaml/libvirt-ocaml-0.6.1.7.ebuild
new file mode 100644
index 000000000000..61502da5c9aa
--- /dev/null
+++ b/dev-ml/libvirt-ocaml/libvirt-ocaml-0.6.1.7.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dot-a
+
+DESCRIPTION="OCaml language binding for libvirt native C API"
+HOMEPAGE="https://ocaml.libvirt.org/"
+SRC_URI="https://download.libvirt.org/ocaml/ocaml-libvirt-${PV}.tar.gz"
+
+S="${WORKDIR}/ocaml-libvirt-${PV}"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="app-emulation/libvirt
+ dev-lang/ocaml:=[ocamlopt]"
+BDEPEND="dev-lang/perl
+ dev-ml/findlib[ocamlopt]
+ virtual/pkgconfig"
+
+src_configure() {
+ lto-guarantee-fat
+ default
+}
+
+src_install() {
+ # ocaml always installs a static lib even without USE=static-libs
+ strip-lto-bytecode "${ED}"
+ default
+}
diff --git a/dev-ml/libvirt-ocaml/metadata.xml b/dev-ml/libvirt-ocaml/metadata.xml
new file mode 100644
index 000000000000..16caf6fb4705
--- /dev/null
+++ b/dev-ml/libvirt-ocaml/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>salah.coronya@gmail.com</email>
+ <name>Christopher Byrne</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/llvm/Manifest b/dev-ml/llvm/Manifest
new file mode 100644
index 000000000000..c4576cf69876
--- /dev/null
+++ b/dev-ml/llvm/Manifest
@@ -0,0 +1,17 @@
+DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db365965f1c00bfea6c2d653b3996bd2acef8a2b37e37f6fc8a9d2b65711ad72657e0ef52c42f733053cf65051e7822f27396c30406d SHA512 89a67ebfbbc764cc456e8825ecfa90707741f8835b1b2adffae0b227ab1fe5ca9cce75b0efaffc9ca8431cae528dc54fd838867a56a2b645344d9e82d19ab1b7
+DIST llvm-project-16.0.6.src.tar.xz.sig 566 BLAKE2B 2060cebd5ed57cb8a86a44238c43dfd4b921649298b10c3d19da308374c1e49869174294e29943c2af459fe06428264e26881d6c1288ebbc48686cc2cf467c7a SHA512 ca249262c7102e0889ec1bdc6f71a3a6f0e7e5d5fbab8abcd6fccd2871e7955eff7af5b055a76006097baf0dfaf2f5069eff3035b3107fc552abdb2481b21447
+DIST llvm-project-17.0.6.src.tar.xz 127838860 BLAKE2B d6ede1a9fda8756995c3e0654111941649e15794179641806f18919f1dc68c41ca0cabd5693b5096d05dccc3a391cd20d34af1137bf8af92ed3117a1ce84d1b2 SHA512 6d85bf749e0d77553cc215cbfa61cec4ac4f4f652847f56f946b6a892a99a5ea40b6ab8b39a9708a035001f007986941ccf17e4635260a8b0c1fa59e78d41e30
+DIST llvm-project-17.0.6.src.tar.xz.sig 438 BLAKE2B 186e75b6a0fbfe1e85408589c149e1800fcc47d685b74e4260018e05cd08bc793d1d1197c9c50e177eea941a3d0c65cb0c583ce6dae449099b920adf8a508ef7 SHA512 f78c55053a6450625f3e95f52c305110b4468a9854fec75831b65b8d6ceee3c9206ab9e63c4b5fda8be9bd344f72cfbdaae0520ed240abd505e08ebeaa25d340
+DIST llvm-project-18.1.8.src.tar.xz 132067260 BLAKE2B a950492f1dbfb874dff63b1ffef86468169ba2f211a9733ec2d4cf30040f7f277ef00f048bb44dee9f97d7d762f0f241f19e5a2a7b0b49217d3821ddfc8c354f SHA512 25eeee9984c8b4d0fbc240df90f33cbb000d3b0414baff5c8982beafcc5e59e7ef18f6f85d95b3a5f60cb3d4cd4f877c80487b5768bc21bc833f107698ad93db
+DIST llvm-project-18.1.8.src.tar.xz.sig 566 BLAKE2B 6ab0efc5b38d4483f4e32e8b85774b2edd5d88fdf29f23b88eb0b5130a7a7f0e80549612b025f927e92de4a08ff7c292cff224dbda91a5d598244e98f7ad0fbd SHA512 ddfd1e8a06756759af6cbe488c82a6d6a62ba91f3e8a0eb4cece561321824f5d165b08ed91010588790b76e19790931d2651b24dba8567e3b151d3cb43bec25b
+DIST llvm-project-19.1.7.src.tar.xz 141249332 BLAKE2B 1259ed7f9aca7b35e89d818befdee20fd8bed4d2dc2c2c6f6f56451fd43d35ac03a0a5a406e142d22b25137999dc5b17471c196f8fcf79f20a8296832d900f6d SHA512 c7d63286d662707a9cd54758c9e3aaf52794a91900c484c4a6efa62d90bc719d5e7a345e4192feeb0c9fd11c82570d64677c781e5be1d645556b6aa018e47ec8
+DIST llvm-project-19.1.7.src.tar.xz.sig 438 BLAKE2B 4015140f4ba77de45039bdbdfbaf6f30e75705123d067ea97175d91d7a5b6a75008df01d99ae7aa16aaa3b101f3f41e38d01f04158f95a261d617b3ede0254cd SHA512 195797b06ac80a742e0ccbc03a50dc06dd2e04377d783d5474e3e72c5a75203b60292b047929312a411d22b137a239943fba414a4d136a2be14cbff978eb6bda
+DIST llvm-project-20.1.8.src.tar.xz 147242952 BLAKE2B 7657ac0b26acc5affb1bfc91b912ade3191c5d77f3979d5a80d5f6ce52f56a7d1c448bd257398390bf10838f02faa6f3ece37a7327cced69d165ec2e2e699316 SHA512 f330e72e6a1da468569049437cc0ba7a41abb816ccece7367189344f7ebfef730f4788ac7af2bef0aa8a49341c15ab1d31e941ffa782f264d11fe0dc05470773
+DIST llvm-project-20.1.8.src.tar.xz.sig 566 BLAKE2B 85beedfcff1195a974fab2c667b9efd4b715b3480c1b44b1b887fe32c69f72aca0d3b8fb276c03b6cc5a866622f669047aeee5ccb976640b4008ccd31dce77a4 SHA512 d74369bdb4d1b82775161ea53c9c5f3a23ce810f4df5ff617123023f9d8ce720e7d6ecc9e17f8ebd39fd9e7a9de79560abdf2ffe73bcb907a43148d43665d619
+DIST llvm-project-21.1.8.src.tar.xz 158958576 BLAKE2B 0d3d4ee920f8e5db50e98152616f16004c74df0e7313cc86d893428fb7b1c875109988a5e40ea6f2e5d0fef53c7bfe2fc2b69e84807f6eb440b03afa1b228a36 SHA512 cae4c44e7bf678071723da63ad5839491d717a7233e7f4791aa408207f3ea42f52de939ad15189b112c02a0770f1bb8d59bae6ad31ef53417a6eea7770fe52ab
+DIST llvm-project-21.1.8.src.tar.xz.sig 119 BLAKE2B cffc1825f5778a3e3c128ec3e856ff6ee50687319d621cdf42e895abf67e05cc51cb7493308e2b506ab60dbdbaca7aa75eb9f78d91d42c81f9682a36f4042e9d SHA512 10f58eff58ed6e701d0f123b15e68c82ab8cbdf99b1c86c0d83e3b8553e90ea51055e30327e8e442ded57c8f503e2a2de9ee075e9c28b5ba815a0f8922f8671c
+DIST llvm-project-22.1.6.src.tar.xz 167043464 BLAKE2B 86b5f0da9ced0ffc6e2c765f4d2c1537000062bd1bbfa6d060e192251c8e28d253924e1a164e76edef3ec05fa4447a75d554bc89f6ea7e33c6792a1f5d67f3a6 SHA512 39ee3a66b92abe4eed5f9db086f6279faa72d8a3fe1beee8897da2dcc8b6982d169054b394995090c9cc6519f50a03a7fc465905dda3c61eb1063b9ba4696b0c
+DIST llvm-project-22.1.6.src.tar.xz.sig 119 BLAKE2B faba6f95374bc9ffda950b7cb727246e3d05173a1b790f669722fe97aff5f5a7a840324b3f1721a424393e3dbf56d768868d65a1cfac107a49487e0111a8d87f SHA512 6aeaac226c3099ac1120e57daf9be4161855e17415df7117b9091a0c1a32022d27a842cdf208d17ee389b2be003577688565abbb18c78d94d56c3a38d56bb035
+DIST llvm-project-22.1.7.src.tar.xz 167066344 BLAKE2B 201b7f8f8b4216ad250f9dcdc87f817ac2dac99c1c7f151077e46165c0efae6d04c33c84c70c04c670fe0733e621af866f78d4d93f49e4d8385645f71495f53b SHA512 b7e56121cd6cb24085185ca0b621fec272dd9aa237c49a901043a9a4c31fdbc1ff33e650891d9786cd9495c006e87d4553ac36b518c864c75e99a80e40771bfd
+DIST llvm-project-22.1.7.src.tar.xz.sig 119 BLAKE2B 0a1125837ae881dcb356c43e6fcd24dd14e107cd045524906b3879db94184e2c74835ce1e3ee026e55790af5be4b861d629546de6f74374e71e164a571c6ecd0 SHA512 d56bc596b642d6e6e63f1d141dbc7b8151e58befc70fd3d28847f023789823c9daf90100be233ab6597219037ee28187e6e8996992b7226568265c205abad266
+DIST llvm-project-8789401c6f0b2c53ba348860c1b0c5df1fa40c8c.tar.gz 271359638 BLAKE2B 31d1c91b535f129cac4b1da7ce2e6f0765231ebe6a5b1cb83f00d56d68820cdd029f7d2fdf602148e37bc9a22d99b71e25284eab74b8d52fa87ed4636712171f SHA512 4ca908b0b5d7ae9a2b334d033d2c11b557dcc3305b9107017965ae612716beade09a0c73e1a5f5eab1c9794728558d4a981715bb9b01d5ba2c2c5c6c53d1a9b6
diff --git a/dev-ml/llvm/llvm-16.0.6.ebuild b/dev-ml/llvm/llvm-16.0.6.ebuild
new file mode 100644
index 000000000000..24abb52701d7
--- /dev/null
+++ b/dev-ml/llvm/llvm-16.0.6.ebuild
@@ -0,0 +1,111 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{13..14} )
+inherit cmake llvm llvm.org python-any-r1
+
+DESCRIPTION="OCaml bindings for LLVM"
+HOMEPAGE="https://llvm.org/"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="debug test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.00.0:0=
+ dev-ml/ocaml-ctypes:=
+ ~llvm-core/llvm-${PV}:=[debug?]
+ !llvm-core/llvm[ocaml(-)]
+"
+
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+ dev-lang/perl
+ dev-ml/findlib
+"
+
+LLVM_COMPONENTS=( llvm cmake third-party )
+LLVM_USE_TARGETS=llvm
+llvm.org_set_globals
+
+pkg_setup() {
+ LLVM_MAX_SLOT=${LLVM_MAJOR} llvm_pkg_setup
+ python-any-r1_pkg_setup
+}
+
+src_configure() {
+ local libdir=$(get_libdir)
+ local mycmakeargs=(
+ -DLLVM_LIBDIR_SUFFIX=${libdir#lib}
+
+ -DBUILD_SHARED_LIBS=OFF
+ -DLLVM_BUILD_LLVM_DYLIB=ON
+ -DLLVM_LINK_LLVM_DYLIB=ON
+ -DLLVM_OCAML_OUT_OF_TREE=ON
+
+ # cheap hack: LLVM combines both anyway, and the only difference
+ # is that the former list is explicitly verified at cmake time
+ -DLLVM_TARGETS_TO_BUILD=""
+ -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}"
+ -DLLVM_BUILD_TESTS=$(usex test)
+
+ # disable various irrelevant deps and settings
+ -DLLVM_ENABLE_FFI=OFF
+ -DLLVM_ENABLE_TERMINFO=OFF
+ -DHAVE_HISTEDIT_H=NO
+ -DLLVM_ENABLE_ASSERTIONS=$(usex debug)
+ -DLLVM_ENABLE_EH=ON
+ -DLLVM_ENABLE_RTTI=ON
+
+ -DLLVM_HOST_TRIPLE="${CHOST}"
+
+ -DPython3_EXECUTABLE="${PYTHON}"
+
+ # TODO: ocamldoc
+ )
+
+ use test && mycmakeargs+=(
+ -DLLVM_LIT_ARGS="$(get_lit_flags)"
+ )
+
+ # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
+ # also: custom rules for OCaml do not work for CPPFLAGS
+ use debug || local -x CFLAGS="${CFLAGS} -DNDEBUG"
+ cmake_src_configure
+
+ local llvm_libdir=$(llvm-config --libdir)
+ # an ugly hack; TODO: figure out a way to pass -L to ocaml...
+ cd "${BUILD_DIR}/${libdir}" || die
+ ln -s "${llvm_libdir}"/*.so . || die
+
+ if use test; then
+ local llvm_bindir=$(llvm-config --bindir)
+ # Force using system-installed tools.
+ sed -i -e "/llvm_tools_dir/s@\".*\"@\"${llvm_bindir}\"@" \
+ "${BUILD_DIR}"/test/lit.site.cfg.py || die
+ fi
+}
+
+src_compile() {
+ cmake_build ocaml_all
+}
+
+src_test() {
+ # respect TMPDIR!
+ local -x LIT_PRESERVES_TMP=1
+ cmake_build check-llvm-bindings-ocaml
+}
+
+src_install() {
+ DESTDIR="${D}" \
+ cmake -P "${BUILD_DIR}"/bindings/ocaml/cmake_install.cmake || die
+
+ dodoc bindings/ocaml/README.txt
+}
diff --git a/dev-ml/llvm/llvm-17.0.6.ebuild b/dev-ml/llvm/llvm-17.0.6.ebuild
new file mode 100644
index 000000000000..24abb52701d7
--- /dev/null
+++ b/dev-ml/llvm/llvm-17.0.6.ebuild
@@ -0,0 +1,111 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{13..14} )
+inherit cmake llvm llvm.org python-any-r1
+
+DESCRIPTION="OCaml bindings for LLVM"
+HOMEPAGE="https://llvm.org/"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="debug test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.00.0:0=
+ dev-ml/ocaml-ctypes:=
+ ~llvm-core/llvm-${PV}:=[debug?]
+ !llvm-core/llvm[ocaml(-)]
+"
+
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+ dev-lang/perl
+ dev-ml/findlib
+"
+
+LLVM_COMPONENTS=( llvm cmake third-party )
+LLVM_USE_TARGETS=llvm
+llvm.org_set_globals
+
+pkg_setup() {
+ LLVM_MAX_SLOT=${LLVM_MAJOR} llvm_pkg_setup
+ python-any-r1_pkg_setup
+}
+
+src_configure() {
+ local libdir=$(get_libdir)
+ local mycmakeargs=(
+ -DLLVM_LIBDIR_SUFFIX=${libdir#lib}
+
+ -DBUILD_SHARED_LIBS=OFF
+ -DLLVM_BUILD_LLVM_DYLIB=ON
+ -DLLVM_LINK_LLVM_DYLIB=ON
+ -DLLVM_OCAML_OUT_OF_TREE=ON
+
+ # cheap hack: LLVM combines both anyway, and the only difference
+ # is that the former list is explicitly verified at cmake time
+ -DLLVM_TARGETS_TO_BUILD=""
+ -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}"
+ -DLLVM_BUILD_TESTS=$(usex test)
+
+ # disable various irrelevant deps and settings
+ -DLLVM_ENABLE_FFI=OFF
+ -DLLVM_ENABLE_TERMINFO=OFF
+ -DHAVE_HISTEDIT_H=NO
+ -DLLVM_ENABLE_ASSERTIONS=$(usex debug)
+ -DLLVM_ENABLE_EH=ON
+ -DLLVM_ENABLE_RTTI=ON
+
+ -DLLVM_HOST_TRIPLE="${CHOST}"
+
+ -DPython3_EXECUTABLE="${PYTHON}"
+
+ # TODO: ocamldoc
+ )
+
+ use test && mycmakeargs+=(
+ -DLLVM_LIT_ARGS="$(get_lit_flags)"
+ )
+
+ # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
+ # also: custom rules for OCaml do not work for CPPFLAGS
+ use debug || local -x CFLAGS="${CFLAGS} -DNDEBUG"
+ cmake_src_configure
+
+ local llvm_libdir=$(llvm-config --libdir)
+ # an ugly hack; TODO: figure out a way to pass -L to ocaml...
+ cd "${BUILD_DIR}/${libdir}" || die
+ ln -s "${llvm_libdir}"/*.so . || die
+
+ if use test; then
+ local llvm_bindir=$(llvm-config --bindir)
+ # Force using system-installed tools.
+ sed -i -e "/llvm_tools_dir/s@\".*\"@\"${llvm_bindir}\"@" \
+ "${BUILD_DIR}"/test/lit.site.cfg.py || die
+ fi
+}
+
+src_compile() {
+ cmake_build ocaml_all
+}
+
+src_test() {
+ # respect TMPDIR!
+ local -x LIT_PRESERVES_TMP=1
+ cmake_build check-llvm-bindings-ocaml
+}
+
+src_install() {
+ DESTDIR="${D}" \
+ cmake -P "${BUILD_DIR}"/bindings/ocaml/cmake_install.cmake || die
+
+ dodoc bindings/ocaml/README.txt
+}
diff --git a/dev-ml/llvm/llvm-18.1.8.ebuild b/dev-ml/llvm/llvm-18.1.8.ebuild
new file mode 100644
index 000000000000..5ca362388aee
--- /dev/null
+++ b/dev-ml/llvm/llvm-18.1.8.ebuild
@@ -0,0 +1,108 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{13..14} )
+inherit cmake llvm.org llvm-utils python-any-r1
+
+DESCRIPTION="OCaml bindings for LLVM"
+HOMEPAGE="https://llvm.org/"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="debug test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.00.0:0=
+ dev-ml/ocaml-ctypes:=
+ ~llvm-core/llvm-${PV}:=[debug?]
+ !llvm-core/llvm[ocaml(-)]
+"
+
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+ dev-lang/perl
+ dev-ml/findlib
+"
+
+LLVM_COMPONENTS=( llvm cmake third-party )
+LLVM_USE_TARGETS=llvm
+llvm.org_set_globals
+
+src_configure() {
+ llvm_prepend_path "${LLVM_MAJOR}"
+
+ local libdir=$(get_libdir)
+ local mycmakeargs=(
+ -DLLVM_LIBDIR_SUFFIX=${libdir#lib}
+
+ -DBUILD_SHARED_LIBS=OFF
+ -DLLVM_BUILD_LLVM_DYLIB=ON
+ -DLLVM_LINK_LLVM_DYLIB=ON
+ -DLLVM_OCAML_OUT_OF_TREE=ON
+
+ # cheap hack: LLVM combines both anyway, and the only difference
+ # is that the former list is explicitly verified at cmake time
+ -DLLVM_TARGETS_TO_BUILD=""
+ -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}"
+ -DLLVM_BUILD_TESTS=$(usex test)
+
+ # disable various irrelevant deps and settings
+ -DLLVM_ENABLE_FFI=OFF
+ -DLLVM_ENABLE_TERMINFO=OFF
+ -DHAVE_HISTEDIT_H=NO
+ -DLLVM_ENABLE_ASSERTIONS=$(usex debug)
+ -DLLVM_ENABLE_EH=ON
+ -DLLVM_ENABLE_RTTI=ON
+
+ -DLLVM_HOST_TRIPLE="${CHOST}"
+
+ -DPython3_EXECUTABLE="${PYTHON}"
+
+ # TODO: ocamldoc
+ )
+
+ use test && mycmakeargs+=(
+ -DLLVM_LIT_ARGS="$(get_lit_flags)"
+ )
+
+ # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
+ # also: custom rules for OCaml do not work for CPPFLAGS
+ use debug || local -x CFLAGS="${CFLAGS} -DNDEBUG"
+ cmake_src_configure
+
+ local llvm_libdir=$(llvm-config --libdir)
+ # an ugly hack; TODO: figure out a way to pass -L to ocaml...
+ cd "${BUILD_DIR}/${libdir}" || die
+ ln -s "${llvm_libdir}"/*.so . || die
+
+ if use test; then
+ local llvm_bindir=$(llvm-config --bindir)
+ # Force using system-installed tools.
+ sed -i -e "/llvm_tools_dir/s@\".*\"@\"${llvm_bindir}\"@" \
+ "${BUILD_DIR}"/test/lit.site.cfg.py || die
+ fi
+}
+
+src_compile() {
+ cmake_build ocaml_all
+}
+
+src_test() {
+ # respect TMPDIR!
+ local -x LIT_PRESERVES_TMP=1
+ cmake_build check-llvm-bindings-ocaml
+}
+
+src_install() {
+ DESTDIR="${D}" \
+ cmake -P "${BUILD_DIR}"/bindings/ocaml/cmake_install.cmake || die
+
+ dodoc bindings/ocaml/README.txt
+}
diff --git a/dev-ml/llvm/llvm-19.1.7.ebuild b/dev-ml/llvm/llvm-19.1.7.ebuild
new file mode 100644
index 000000000000..e96c35cb257c
--- /dev/null
+++ b/dev-ml/llvm/llvm-19.1.7.ebuild
@@ -0,0 +1,108 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{13..14} )
+inherit cmake llvm.org llvm-utils python-any-r1
+
+DESCRIPTION="OCaml bindings for LLVM"
+HOMEPAGE="https://llvm.org/"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="debug test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.00.0:0=
+ dev-ml/ocaml-ctypes:=
+ ~llvm-core/llvm-${PV}:=[debug?]
+ !llvm-core/llvm[ocaml(-)]
+"
+
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+ dev-lang/perl
+ dev-ml/findlib
+"
+
+LLVM_COMPONENTS=( llvm cmake third-party )
+LLVM_USE_TARGETS=llvm
+llvm.org_set_globals
+
+src_configure() {
+ llvm_prepend_path "${LLVM_MAJOR}"
+
+ local libdir=$(get_libdir)
+ local mycmakeargs=(
+ -DLLVM_LIBDIR_SUFFIX=${libdir#lib}
+
+ -DBUILD_SHARED_LIBS=OFF
+ -DLLVM_BUILD_LLVM_DYLIB=ON
+ -DLLVM_LINK_LLVM_DYLIB=ON
+ -DLLVM_OCAML_OUT_OF_TREE=ON
+
+ # cheap hack: LLVM combines both anyway, and the only difference
+ # is that the former list is explicitly verified at cmake time
+ -DLLVM_TARGETS_TO_BUILD=""
+ -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}"
+ -DLLVM_BUILD_TESTS=$(usex test)
+
+ # disable various irrelevant deps and settings
+ -DLLVM_ENABLE_FFI=OFF
+ -DLLVM_ENABLE_TERMINFO=OFF
+ -DHAVE_HISTEDIT_H=NO
+ -DLLVM_ENABLE_ASSERTIONS=$(usex debug)
+ -DLLVM_ENABLE_EH=ON
+ -DLLVM_ENABLE_RTTI=ON
+
+ -DLLVM_HOST_TRIPLE="${CHOST}"
+
+ -DPython3_EXECUTABLE="${PYTHON}"
+
+ # TODO: ocamldoc
+ )
+
+ use test && mycmakeargs+=(
+ -DLLVM_LIT_ARGS="$(get_lit_flags)"
+ )
+
+ # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
+ # also: custom rules for OCaml do not work for CPPFLAGS
+ use debug || local -x CFLAGS="${CFLAGS} -DNDEBUG"
+ cmake_src_configure
+
+ local llvm_libdir=$(llvm-config --libdir)
+ # an ugly hack; TODO: figure out a way to pass -L to ocaml...
+ cd "${BUILD_DIR}/${libdir}" || die
+ ln -s "${llvm_libdir}"/*.so . || die
+
+ if use test; then
+ local llvm_bindir=$(llvm-config --bindir)
+ # Force using system-installed tools.
+ sed -i -e "/llvm_tools_dir/s@\".*\"@\"${llvm_bindir}\"@" \
+ "${BUILD_DIR}"/test/lit.site.cfg.py || die
+ fi
+}
+
+src_compile() {
+ cmake_build ocaml_all
+}
+
+src_test() {
+ # respect TMPDIR!
+ local -x LIT_PRESERVES_TMP=1
+ cmake_build check-llvm-bindings-ocaml
+}
+
+src_install() {
+ DESTDIR="${D}" \
+ cmake -P "${BUILD_DIR}"/bindings/ocaml/cmake_install.cmake || die
+
+ dodoc bindings/ocaml/README.txt
+}
diff --git a/dev-ml/llvm/llvm-20.1.8.ebuild b/dev-ml/llvm/llvm-20.1.8.ebuild
new file mode 100644
index 000000000000..e96c35cb257c
--- /dev/null
+++ b/dev-ml/llvm/llvm-20.1.8.ebuild
@@ -0,0 +1,108 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{13..14} )
+inherit cmake llvm.org llvm-utils python-any-r1
+
+DESCRIPTION="OCaml bindings for LLVM"
+HOMEPAGE="https://llvm.org/"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="debug test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.00.0:0=
+ dev-ml/ocaml-ctypes:=
+ ~llvm-core/llvm-${PV}:=[debug?]
+ !llvm-core/llvm[ocaml(-)]
+"
+
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+ dev-lang/perl
+ dev-ml/findlib
+"
+
+LLVM_COMPONENTS=( llvm cmake third-party )
+LLVM_USE_TARGETS=llvm
+llvm.org_set_globals
+
+src_configure() {
+ llvm_prepend_path "${LLVM_MAJOR}"
+
+ local libdir=$(get_libdir)
+ local mycmakeargs=(
+ -DLLVM_LIBDIR_SUFFIX=${libdir#lib}
+
+ -DBUILD_SHARED_LIBS=OFF
+ -DLLVM_BUILD_LLVM_DYLIB=ON
+ -DLLVM_LINK_LLVM_DYLIB=ON
+ -DLLVM_OCAML_OUT_OF_TREE=ON
+
+ # cheap hack: LLVM combines both anyway, and the only difference
+ # is that the former list is explicitly verified at cmake time
+ -DLLVM_TARGETS_TO_BUILD=""
+ -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}"
+ -DLLVM_BUILD_TESTS=$(usex test)
+
+ # disable various irrelevant deps and settings
+ -DLLVM_ENABLE_FFI=OFF
+ -DLLVM_ENABLE_TERMINFO=OFF
+ -DHAVE_HISTEDIT_H=NO
+ -DLLVM_ENABLE_ASSERTIONS=$(usex debug)
+ -DLLVM_ENABLE_EH=ON
+ -DLLVM_ENABLE_RTTI=ON
+
+ -DLLVM_HOST_TRIPLE="${CHOST}"
+
+ -DPython3_EXECUTABLE="${PYTHON}"
+
+ # TODO: ocamldoc
+ )
+
+ use test && mycmakeargs+=(
+ -DLLVM_LIT_ARGS="$(get_lit_flags)"
+ )
+
+ # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
+ # also: custom rules for OCaml do not work for CPPFLAGS
+ use debug || local -x CFLAGS="${CFLAGS} -DNDEBUG"
+ cmake_src_configure
+
+ local llvm_libdir=$(llvm-config --libdir)
+ # an ugly hack; TODO: figure out a way to pass -L to ocaml...
+ cd "${BUILD_DIR}/${libdir}" || die
+ ln -s "${llvm_libdir}"/*.so . || die
+
+ if use test; then
+ local llvm_bindir=$(llvm-config --bindir)
+ # Force using system-installed tools.
+ sed -i -e "/llvm_tools_dir/s@\".*\"@\"${llvm_bindir}\"@" \
+ "${BUILD_DIR}"/test/lit.site.cfg.py || die
+ fi
+}
+
+src_compile() {
+ cmake_build ocaml_all
+}
+
+src_test() {
+ # respect TMPDIR!
+ local -x LIT_PRESERVES_TMP=1
+ cmake_build check-llvm-bindings-ocaml
+}
+
+src_install() {
+ DESTDIR="${D}" \
+ cmake -P "${BUILD_DIR}"/bindings/ocaml/cmake_install.cmake || die
+
+ dodoc bindings/ocaml/README.txt
+}
diff --git a/dev-ml/llvm/llvm-21.1.8.ebuild b/dev-ml/llvm/llvm-21.1.8.ebuild
new file mode 100644
index 000000000000..e96c35cb257c
--- /dev/null
+++ b/dev-ml/llvm/llvm-21.1.8.ebuild
@@ -0,0 +1,108 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{13..14} )
+inherit cmake llvm.org llvm-utils python-any-r1
+
+DESCRIPTION="OCaml bindings for LLVM"
+HOMEPAGE="https://llvm.org/"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="debug test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.00.0:0=
+ dev-ml/ocaml-ctypes:=
+ ~llvm-core/llvm-${PV}:=[debug?]
+ !llvm-core/llvm[ocaml(-)]
+"
+
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+ dev-lang/perl
+ dev-ml/findlib
+"
+
+LLVM_COMPONENTS=( llvm cmake third-party )
+LLVM_USE_TARGETS=llvm
+llvm.org_set_globals
+
+src_configure() {
+ llvm_prepend_path "${LLVM_MAJOR}"
+
+ local libdir=$(get_libdir)
+ local mycmakeargs=(
+ -DLLVM_LIBDIR_SUFFIX=${libdir#lib}
+
+ -DBUILD_SHARED_LIBS=OFF
+ -DLLVM_BUILD_LLVM_DYLIB=ON
+ -DLLVM_LINK_LLVM_DYLIB=ON
+ -DLLVM_OCAML_OUT_OF_TREE=ON
+
+ # cheap hack: LLVM combines both anyway, and the only difference
+ # is that the former list is explicitly verified at cmake time
+ -DLLVM_TARGETS_TO_BUILD=""
+ -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}"
+ -DLLVM_BUILD_TESTS=$(usex test)
+
+ # disable various irrelevant deps and settings
+ -DLLVM_ENABLE_FFI=OFF
+ -DLLVM_ENABLE_TERMINFO=OFF
+ -DHAVE_HISTEDIT_H=NO
+ -DLLVM_ENABLE_ASSERTIONS=$(usex debug)
+ -DLLVM_ENABLE_EH=ON
+ -DLLVM_ENABLE_RTTI=ON
+
+ -DLLVM_HOST_TRIPLE="${CHOST}"
+
+ -DPython3_EXECUTABLE="${PYTHON}"
+
+ # TODO: ocamldoc
+ )
+
+ use test && mycmakeargs+=(
+ -DLLVM_LIT_ARGS="$(get_lit_flags)"
+ )
+
+ # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
+ # also: custom rules for OCaml do not work for CPPFLAGS
+ use debug || local -x CFLAGS="${CFLAGS} -DNDEBUG"
+ cmake_src_configure
+
+ local llvm_libdir=$(llvm-config --libdir)
+ # an ugly hack; TODO: figure out a way to pass -L to ocaml...
+ cd "${BUILD_DIR}/${libdir}" || die
+ ln -s "${llvm_libdir}"/*.so . || die
+
+ if use test; then
+ local llvm_bindir=$(llvm-config --bindir)
+ # Force using system-installed tools.
+ sed -i -e "/llvm_tools_dir/s@\".*\"@\"${llvm_bindir}\"@" \
+ "${BUILD_DIR}"/test/lit.site.cfg.py || die
+ fi
+}
+
+src_compile() {
+ cmake_build ocaml_all
+}
+
+src_test() {
+ # respect TMPDIR!
+ local -x LIT_PRESERVES_TMP=1
+ cmake_build check-llvm-bindings-ocaml
+}
+
+src_install() {
+ DESTDIR="${D}" \
+ cmake -P "${BUILD_DIR}"/bindings/ocaml/cmake_install.cmake || die
+
+ dodoc bindings/ocaml/README.txt
+}
diff --git a/dev-ml/llvm/llvm-22.1.6.ebuild b/dev-ml/llvm/llvm-22.1.6.ebuild
new file mode 100644
index 000000000000..45b60b544b23
--- /dev/null
+++ b/dev-ml/llvm/llvm-22.1.6.ebuild
@@ -0,0 +1,108 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{13..14} )
+inherit cmake llvm.org llvm-utils python-any-r1
+
+DESCRIPTION="OCaml bindings for LLVM"
+HOMEPAGE="https://llvm.org/"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="debug test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.00.0:0=
+ dev-ml/ocaml-ctypes:=
+ ~llvm-core/llvm-${PV}:=[debug?]
+ !llvm-core/llvm[ocaml(-)]
+"
+
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+ dev-lang/perl
+ dev-ml/findlib
+"
+
+LLVM_COMPONENTS=( llvm cmake third-party )
+LLVM_USE_TARGETS=llvm
+llvm.org_set_globals
+
+src_configure() {
+ llvm_prepend_path "${LLVM_MAJOR}"
+
+ local libdir=$(get_libdir)
+ local mycmakeargs=(
+ -DLLVM_LIBDIR_SUFFIX=${libdir#lib}
+
+ -DBUILD_SHARED_LIBS=OFF
+ -DLLVM_BUILD_LLVM_DYLIB=ON
+ -DLLVM_LINK_LLVM_DYLIB=ON
+ -DLLVM_OCAML_OUT_OF_TREE=ON
+
+ # cheap hack: LLVM combines both anyway, and the only difference
+ # is that the former list is explicitly verified at cmake time
+ -DLLVM_TARGETS_TO_BUILD=""
+ -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}"
+ -DLLVM_BUILD_TESTS=$(usex test)
+
+ # disable various irrelevant deps and settings
+ -DLLVM_ENABLE_FFI=OFF
+ -DLLVM_ENABLE_TERMINFO=OFF
+ -DHAVE_HISTEDIT_H=NO
+ -DLLVM_ENABLE_ASSERTIONS=$(usex debug)
+ -DLLVM_ENABLE_EH=ON
+ -DLLVM_ENABLE_RTTI=ON
+
+ -DLLVM_HOST_TRIPLE="${CHOST}"
+
+ -DPython3_EXECUTABLE="${PYTHON}"
+
+ # TODO: ocamldoc
+ )
+
+ use test && mycmakeargs+=(
+ -DLLVM_LIT_ARGS="$(get_lit_flags)"
+ )
+
+ # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
+ # also: custom rules for OCaml do not work for CPPFLAGS
+ use debug || local -x CFLAGS="${CFLAGS} -DNDEBUG"
+ cmake_src_configure
+
+ local llvm_libdir=$(llvm-config --libdir)
+ # an ugly hack; TODO: figure out a way to pass -L to ocaml...
+ cd "${BUILD_DIR}/${libdir}" || die
+ ln -s "${llvm_libdir}"/*.so . || die
+
+ if use test; then
+ local llvm_bindir=$(llvm-config --bindir)
+ # Force using system-installed tools.
+ sed -i -e "/llvm_tools_dir/s@\".*\"@\"${llvm_bindir}\"@" \
+ "${BUILD_DIR}"/test/lit.site.cfg.py || die
+ fi
+}
+
+src_compile() {
+ cmake_build ocaml_all
+}
+
+src_test() {
+ # respect TMPDIR!
+ local -x LIT_PRESERVES_TMP=1
+ cmake_build check-llvm-bindings-ocaml
+}
+
+src_install() {
+ DESTDIR="${D}" \
+ cmake -P "${BUILD_DIR}"/bindings/ocaml/cmake_install.cmake || die
+
+ dodoc bindings/ocaml/README.txt
+}
diff --git a/dev-ml/llvm/llvm-22.1.7.ebuild b/dev-ml/llvm/llvm-22.1.7.ebuild
new file mode 100644
index 000000000000..45b60b544b23
--- /dev/null
+++ b/dev-ml/llvm/llvm-22.1.7.ebuild
@@ -0,0 +1,108 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{13..14} )
+inherit cmake llvm.org llvm-utils python-any-r1
+
+DESCRIPTION="OCaml bindings for LLVM"
+HOMEPAGE="https://llvm.org/"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="debug test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.00.0:0=
+ dev-ml/ocaml-ctypes:=
+ ~llvm-core/llvm-${PV}:=[debug?]
+ !llvm-core/llvm[ocaml(-)]
+"
+
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+ dev-lang/perl
+ dev-ml/findlib
+"
+
+LLVM_COMPONENTS=( llvm cmake third-party )
+LLVM_USE_TARGETS=llvm
+llvm.org_set_globals
+
+src_configure() {
+ llvm_prepend_path "${LLVM_MAJOR}"
+
+ local libdir=$(get_libdir)
+ local mycmakeargs=(
+ -DLLVM_LIBDIR_SUFFIX=${libdir#lib}
+
+ -DBUILD_SHARED_LIBS=OFF
+ -DLLVM_BUILD_LLVM_DYLIB=ON
+ -DLLVM_LINK_LLVM_DYLIB=ON
+ -DLLVM_OCAML_OUT_OF_TREE=ON
+
+ # cheap hack: LLVM combines both anyway, and the only difference
+ # is that the former list is explicitly verified at cmake time
+ -DLLVM_TARGETS_TO_BUILD=""
+ -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}"
+ -DLLVM_BUILD_TESTS=$(usex test)
+
+ # disable various irrelevant deps and settings
+ -DLLVM_ENABLE_FFI=OFF
+ -DLLVM_ENABLE_TERMINFO=OFF
+ -DHAVE_HISTEDIT_H=NO
+ -DLLVM_ENABLE_ASSERTIONS=$(usex debug)
+ -DLLVM_ENABLE_EH=ON
+ -DLLVM_ENABLE_RTTI=ON
+
+ -DLLVM_HOST_TRIPLE="${CHOST}"
+
+ -DPython3_EXECUTABLE="${PYTHON}"
+
+ # TODO: ocamldoc
+ )
+
+ use test && mycmakeargs+=(
+ -DLLVM_LIT_ARGS="$(get_lit_flags)"
+ )
+
+ # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
+ # also: custom rules for OCaml do not work for CPPFLAGS
+ use debug || local -x CFLAGS="${CFLAGS} -DNDEBUG"
+ cmake_src_configure
+
+ local llvm_libdir=$(llvm-config --libdir)
+ # an ugly hack; TODO: figure out a way to pass -L to ocaml...
+ cd "${BUILD_DIR}/${libdir}" || die
+ ln -s "${llvm_libdir}"/*.so . || die
+
+ if use test; then
+ local llvm_bindir=$(llvm-config --bindir)
+ # Force using system-installed tools.
+ sed -i -e "/llvm_tools_dir/s@\".*\"@\"${llvm_bindir}\"@" \
+ "${BUILD_DIR}"/test/lit.site.cfg.py || die
+ fi
+}
+
+src_compile() {
+ cmake_build ocaml_all
+}
+
+src_test() {
+ # respect TMPDIR!
+ local -x LIT_PRESERVES_TMP=1
+ cmake_build check-llvm-bindings-ocaml
+}
+
+src_install() {
+ DESTDIR="${D}" \
+ cmake -P "${BUILD_DIR}"/bindings/ocaml/cmake_install.cmake || die
+
+ dodoc bindings/ocaml/README.txt
+}
diff --git a/dev-ml/llvm/llvm-23.0.0.9999.ebuild b/dev-ml/llvm/llvm-23.0.0.9999.ebuild
new file mode 100644
index 000000000000..618c7e6edebe
--- /dev/null
+++ b/dev-ml/llvm/llvm-23.0.0.9999.ebuild
@@ -0,0 +1,107 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{13..14} )
+inherit cmake llvm.org llvm-utils python-any-r1
+
+DESCRIPTION="OCaml bindings for LLVM"
+HOMEPAGE="https://llvm.org/"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
+SLOT="0/${PV}"
+IUSE="+debug test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.00.0:0=
+ dev-ml/ocaml-ctypes:=
+ ~llvm-core/llvm-${PV}:=[debug?]
+ !llvm-core/llvm[ocaml(-)]
+"
+
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+ dev-lang/perl
+ dev-ml/findlib
+"
+
+LLVM_COMPONENTS=( llvm cmake third-party )
+LLVM_USE_TARGETS=llvm
+llvm.org_set_globals
+
+src_configure() {
+ llvm_prepend_path "${LLVM_MAJOR}"
+
+ local libdir=$(get_libdir)
+ local mycmakeargs=(
+ -DLLVM_LIBDIR_SUFFIX=${libdir#lib}
+
+ -DBUILD_SHARED_LIBS=OFF
+ -DLLVM_BUILD_LLVM_DYLIB=ON
+ -DLLVM_LINK_LLVM_DYLIB=ON
+ -DLLVM_OCAML_OUT_OF_TREE=ON
+
+ # cheap hack: LLVM combines both anyway, and the only difference
+ # is that the former list is explicitly verified at cmake time
+ -DLLVM_TARGETS_TO_BUILD=""
+ -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}"
+ -DLLVM_BUILD_TESTS=$(usex test)
+
+ # disable various irrelevant deps and settings
+ -DLLVM_ENABLE_FFI=OFF
+ -DLLVM_ENABLE_TERMINFO=OFF
+ -DHAVE_HISTEDIT_H=NO
+ -DLLVM_ENABLE_ASSERTIONS=$(usex debug)
+ -DLLVM_ENABLE_EH=ON
+ -DLLVM_ENABLE_RTTI=ON
+
+ -DLLVM_HOST_TRIPLE="${CHOST}"
+
+ -DPython3_EXECUTABLE="${PYTHON}"
+
+ # TODO: ocamldoc
+ )
+
+ use test && mycmakeargs+=(
+ -DLLVM_LIT_ARGS="$(get_lit_flags)"
+ )
+
+ # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
+ # also: custom rules for OCaml do not work for CPPFLAGS
+ use debug || local -x CFLAGS="${CFLAGS} -DNDEBUG"
+ cmake_src_configure
+
+ local llvm_libdir=$(llvm-config --libdir)
+ # an ugly hack; TODO: figure out a way to pass -L to ocaml...
+ cd "${BUILD_DIR}/${libdir}" || die
+ ln -s "${llvm_libdir}"/*.so . || die
+
+ if use test; then
+ local llvm_bindir=$(llvm-config --bindir)
+ # Force using system-installed tools.
+ sed -i -e "/llvm_tools_dir/s@\".*\"@\"${llvm_bindir}\"@" \
+ "${BUILD_DIR}"/test/lit.site.cfg.py || die
+ fi
+}
+
+src_compile() {
+ cmake_build ocaml_all
+}
+
+src_test() {
+ # respect TMPDIR!
+ local -x LIT_PRESERVES_TMP=1
+ cmake_build check-llvm-bindings-ocaml
+}
+
+src_install() {
+ DESTDIR="${D}" \
+ cmake -P "${BUILD_DIR}"/bindings/ocaml/cmake_install.cmake || die
+
+ dodoc bindings/ocaml/README.txt
+}
diff --git a/dev-ml/llvm/llvm-23.0.0_pre20260512.ebuild b/dev-ml/llvm/llvm-23.0.0_pre20260512.ebuild
new file mode 100644
index 000000000000..618c7e6edebe
--- /dev/null
+++ b/dev-ml/llvm/llvm-23.0.0_pre20260512.ebuild
@@ -0,0 +1,107 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{13..14} )
+inherit cmake llvm.org llvm-utils python-any-r1
+
+DESCRIPTION="OCaml bindings for LLVM"
+HOMEPAGE="https://llvm.org/"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
+SLOT="0/${PV}"
+IUSE="+debug test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.00.0:0=
+ dev-ml/ocaml-ctypes:=
+ ~llvm-core/llvm-${PV}:=[debug?]
+ !llvm-core/llvm[ocaml(-)]
+"
+
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+ dev-lang/perl
+ dev-ml/findlib
+"
+
+LLVM_COMPONENTS=( llvm cmake third-party )
+LLVM_USE_TARGETS=llvm
+llvm.org_set_globals
+
+src_configure() {
+ llvm_prepend_path "${LLVM_MAJOR}"
+
+ local libdir=$(get_libdir)
+ local mycmakeargs=(
+ -DLLVM_LIBDIR_SUFFIX=${libdir#lib}
+
+ -DBUILD_SHARED_LIBS=OFF
+ -DLLVM_BUILD_LLVM_DYLIB=ON
+ -DLLVM_LINK_LLVM_DYLIB=ON
+ -DLLVM_OCAML_OUT_OF_TREE=ON
+
+ # cheap hack: LLVM combines both anyway, and the only difference
+ # is that the former list is explicitly verified at cmake time
+ -DLLVM_TARGETS_TO_BUILD=""
+ -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}"
+ -DLLVM_BUILD_TESTS=$(usex test)
+
+ # disable various irrelevant deps and settings
+ -DLLVM_ENABLE_FFI=OFF
+ -DLLVM_ENABLE_TERMINFO=OFF
+ -DHAVE_HISTEDIT_H=NO
+ -DLLVM_ENABLE_ASSERTIONS=$(usex debug)
+ -DLLVM_ENABLE_EH=ON
+ -DLLVM_ENABLE_RTTI=ON
+
+ -DLLVM_HOST_TRIPLE="${CHOST}"
+
+ -DPython3_EXECUTABLE="${PYTHON}"
+
+ # TODO: ocamldoc
+ )
+
+ use test && mycmakeargs+=(
+ -DLLVM_LIT_ARGS="$(get_lit_flags)"
+ )
+
+ # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
+ # also: custom rules for OCaml do not work for CPPFLAGS
+ use debug || local -x CFLAGS="${CFLAGS} -DNDEBUG"
+ cmake_src_configure
+
+ local llvm_libdir=$(llvm-config --libdir)
+ # an ugly hack; TODO: figure out a way to pass -L to ocaml...
+ cd "${BUILD_DIR}/${libdir}" || die
+ ln -s "${llvm_libdir}"/*.so . || die
+
+ if use test; then
+ local llvm_bindir=$(llvm-config --bindir)
+ # Force using system-installed tools.
+ sed -i -e "/llvm_tools_dir/s@\".*\"@\"${llvm_bindir}\"@" \
+ "${BUILD_DIR}"/test/lit.site.cfg.py || die
+ fi
+}
+
+src_compile() {
+ cmake_build ocaml_all
+}
+
+src_test() {
+ # respect TMPDIR!
+ local -x LIT_PRESERVES_TMP=1
+ cmake_build check-llvm-bindings-ocaml
+}
+
+src_install() {
+ DESTDIR="${D}" \
+ cmake -P "${BUILD_DIR}"/bindings/ocaml/cmake_install.cmake || die
+
+ dodoc bindings/ocaml/README.txt
+}
diff --git a/dev-ml/llvm/metadata.xml b/dev-ml/llvm/metadata.xml
new file mode 100644
index 000000000000..e77c705c30d5
--- /dev/null
+++ b/dev-ml/llvm/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>llvm@gentoo.org</email>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/logs/Manifest b/dev-ml/logs/Manifest
new file mode 100644
index 000000000000..19e67ec79b95
--- /dev/null
+++ b/dev-ml/logs/Manifest
@@ -0,0 +1,4 @@
+DIST logs-0.10.0.tbz 20044 BLAKE2B 7d9597634e4a36f63e7f71def680098f7c4345c2253572d21f4c54b2893fd9911af4af34430a763f68259a0b126155bec655b3a1aba0578de143002fadf221b8 SHA512 122b7a77bd07aee1e0cb8e07e82b195a12528cf015e72fa0dd5afaae26ce04bad9b29f32a6d3bd3547fe522b8a036608785e8adb900e31580a0d555719bbb7e7
+DIST logs-0.7.0.tbz 18458 BLAKE2B 091d1778166af0b67e17e932a775a73e31e5d167b94b1b378063a7112c21bf1ac935c7e51fe29bcc0121cd5e60ea46ed3c7381f4db5df400b463feedfbe89663 SHA512 657f66eeaf5788947a3ff4b2a179f7e192ad4ce086fc8968286066d4b83af476523b3befce50ee58abf2d9b8c8dc65573ba8ed62f9c5e7933db29a7fb769646a
+DIST logs-0.8.0.tbz 19314 BLAKE2B 658f498aef61f42d2291b074fd317ace2db46c1b52c83a5757b3a7c1ed6b710ec20f6d56c5ade4e283b0d5760c43975e05572f935aff447c753be127eadf41b8 SHA512 c34c67b00d6a989a2660204ea70db8521736d6105f15d1ee0ec6287a662798fe5c4d47075c6e7c84f5d5372adb5af5c4c404f79db70d69140af5e0ebbea3b6a5
+DIST logs-0.9.0.tbz 19795 BLAKE2B c45086fa59a3b6bb332e7da6615278a0f1bcb687f080aa0503c751b40ac0d5a2c8de0314c908496f6704c9b93bf13e92674d3fab6ed8c653136174e8c9a9aa58 SHA512 b75fb28e83f33461b06b5c9b60972c4a9a9a1599d637b4a0c7b1e86a87f34fe5361e817cb31f42ad7e7cbb822473b28fab9f58a02870eb189ebe88dae8e045ff
diff --git a/dev-ml/logs/logs-0.10.0.ebuild b/dev-ml/logs/logs-0.10.0.ebuild
new file mode 100644
index 000000000000..e5424d5dce53
--- /dev/null
+++ b/dev-ml/logs/logs-0.10.0.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit findlib
+
+DESCRIPTION="Logging infrastructure for OCaml"
+HOMEPAGE="https://erratique.ch/software/logs https://github.com/dbuenzli/logs"
+SRC_URI="https://erratique.ch/software/logs/releases/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+fmt cli +lwt"
+# Tests require (unpackaged) b0 build system
+RESTRICT="test"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/result:=[ocamlopt]
+ fmt? ( dev-ml/fmt:= )
+ cli? ( dev-ml/cmdliner:=[ocamlopt] )
+ lwt? ( dev-ml/lwt:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-ml/findlib
+ dev-ml/ocamlbuild
+ dev-ml/opam-installer
+ dev-ml/topkg
+"
+
+src_compile() {
+ ocaml pkg/pkg.ml build \
+ --with-js_of_ocaml-compiler false \
+ --with-fmt $(usex fmt true false) \
+ --with-cmdliner $(usex cli true false) \
+ --with-lwt $(usex lwt true false) \
+ --with-base-threads true \
+ || die
+}
+
+src_install() {
+ opam-installer -i \
+ --prefix="${ED}/usr" \
+ --libdir="${D}/$(ocamlc -where)" \
+ --docdir="${ED}/usr/share/doc/${PF}" \
+ ${PN}.install || die
+
+ einstalldocs
+}
diff --git a/dev-ml/logs/logs-0.7.0-r1.ebuild b/dev-ml/logs/logs-0.7.0-r1.ebuild
new file mode 100644
index 000000000000..5048ebe77133
--- /dev/null
+++ b/dev-ml/logs/logs-0.7.0-r1.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit findlib
+
+DESCRIPTION="Logging infrastructure for OCaml"
+HOMEPAGE="https://erratique.ch/software/logs https://github.com/dbuenzli/logs"
+SRC_URI="https://erratique.ch/software/logs/releases/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+fmt cli +lwt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-ml/result:=[ocamlopt]
+ dev-lang/ocaml:=[ocamlopt]
+ fmt? ( dev-ml/fmt:= )
+ cli? ( dev-ml/cmdliner:=[ocamlopt] )
+ lwt? ( dev-ml/lwt:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-ml/findlib
+ dev-ml/ocamlbuild
+ dev-ml/opam-installer
+ dev-ml/topkg
+ test? ( <=dev-ml/mtime-1.4.0 )
+"
+
+src_prepare() {
+ default
+ sed -i \
+ -e "/test\/test_fmt/d" \
+ -e "/test\/test_formatter/d" \
+ -e "/test\/tool/d" \
+ -e "/test\/test_lwt/d" \
+ pkg/pkg.ml \
+ || die
+}
+
+src_compile() {
+ ocaml pkg/pkg.ml build \
+ --with-js_of_ocaml false \
+ --with-fmt $(usex fmt true false) \
+ --with-cmdliner $(usex cli true false) \
+ --with-lwt $(usex lwt true false) \
+ --tests $(usex test true false) \
+ --with-base-threads true \
+ || die
+}
+
+src_test() {
+ ocaml pkg/pkg.ml test || die
+}
+
+src_install() {
+ opam-installer -i \
+ --prefix="${ED}/usr" \
+ --libdir="${D}/$(ocamlc -where)" \
+ --docdir="${ED}/usr/share/doc/${PF}" \
+ ${PN}.install || die
+
+ einstalldocs
+}
diff --git a/dev-ml/logs/logs-0.8.0.ebuild b/dev-ml/logs/logs-0.8.0.ebuild
new file mode 100644
index 000000000000..9fc6a636aeaa
--- /dev/null
+++ b/dev-ml/logs/logs-0.8.0.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit findlib
+
+DESCRIPTION="Logging infrastructure for OCaml"
+HOMEPAGE="https://erratique.ch/software/logs https://github.com/dbuenzli/logs"
+SRC_URI="https://erratique.ch/software/logs/releases/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+fmt cli +lwt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-ml/result:=[ocamlopt]
+ dev-lang/ocaml:=[ocamlopt]
+ fmt? ( dev-ml/fmt:= )
+ cli? ( dev-ml/cmdliner:=[ocamlopt] )
+ lwt? ( dev-ml/lwt:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-ml/findlib
+ dev-ml/ocamlbuild
+ dev-ml/opam-installer
+ dev-ml/topkg
+ test? ( <=dev-ml/mtime-1.4.0 )
+"
+
+src_prepare() {
+ default
+ sed -i \
+ -e "/test\/test_fmt/d" \
+ -e "/test\/test_formatter/d" \
+ -e "/test\/tool/d" \
+ -e "/test\/test_lwt/d" \
+ pkg/pkg.ml \
+ || die
+}
+
+src_compile() {
+ ocaml pkg/pkg.ml build \
+ --with-js_of_ocaml-compiler false \
+ --with-fmt $(usex fmt true false) \
+ --with-cmdliner $(usex cli true false) \
+ --with-lwt $(usex lwt true false) \
+ --tests $(usex test true false) \
+ --with-base-threads true \
+ || die
+}
+
+src_test() {
+ ocaml pkg/pkg.ml test || die
+}
+
+src_install() {
+ opam-installer -i \
+ --prefix="${ED}/usr" \
+ --libdir="${D}/$(ocamlc -where)" \
+ --docdir="${ED}/usr/share/doc/${PF}" \
+ ${PN}.install || die
+
+ einstalldocs
+}
diff --git a/dev-ml/logs/logs-0.9.0.ebuild b/dev-ml/logs/logs-0.9.0.ebuild
new file mode 100644
index 000000000000..7bb7d3947a27
--- /dev/null
+++ b/dev-ml/logs/logs-0.9.0.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit findlib
+
+DESCRIPTION="Logging infrastructure for OCaml"
+HOMEPAGE="https://erratique.ch/software/logs https://github.com/dbuenzli/logs"
+SRC_URI="https://erratique.ch/software/logs/releases/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+fmt cli +lwt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/result:=[ocamlopt]
+ fmt? ( dev-ml/fmt:= )
+ cli? ( dev-ml/cmdliner:=[ocamlopt] )
+ lwt? ( dev-ml/lwt:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-ml/findlib
+ dev-ml/ocamlbuild
+ dev-ml/opam-installer
+ dev-ml/topkg
+ test? ( <=dev-ml/mtime-1.4.0 )
+"
+
+src_prepare() {
+ default
+ sed -i \
+ -e "/test\/test_fmt/d" \
+ -e "/test\/test_formatter/d" \
+ -e "/test\/tool/d" \
+ -e "/test\/test_lwt/d" \
+ pkg/pkg.ml \
+ || die
+}
+
+src_compile() {
+ ocaml pkg/pkg.ml build \
+ --with-js_of_ocaml-compiler false \
+ --with-fmt $(usex fmt true false) \
+ --with-cmdliner $(usex cli true false) \
+ --with-lwt $(usex lwt true false) \
+ --tests $(usex test true false) \
+ --with-base-threads true \
+ || die
+}
+
+src_test() {
+ ocaml pkg/pkg.ml test || die
+}
+
+src_install() {
+ opam-installer -i \
+ --prefix="${ED}/usr" \
+ --libdir="${D}/$(ocamlc -where)" \
+ --docdir="${ED}/usr/share/doc/${PF}" \
+ ${PN}.install || die
+
+ einstalldocs
+}
diff --git a/dev-ml/logs/metadata.xml b/dev-ml/logs/metadata.xml
new file mode 100644
index 000000000000..f04e92f3d79b
--- /dev/null
+++ b/dev-ml/logs/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <use>
+ <flag name="cli">Enables the Logs_cli library that provides command line support for controlling Logs.</flag>
+ <flag name="fmt">Enables the Logs_fmt reporter.</flag>
+ <flag name="lwt">Enables the Logs_lwt library that provides Lwt logging functions.</flag>
+ </use>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/luv/Manifest b/dev-ml/luv/Manifest
new file mode 100644
index 000000000000..8ee82b876df5
--- /dev/null
+++ b/dev-ml/luv/Manifest
@@ -0,0 +1,2 @@
+DIST luv-0.5.11.tar.gz 809549 BLAKE2B 932bf48cb2d9ca32777d3c3d7457db5f4fb9dbfd51a8efbdf9282a9ebd941c53c56d7c17cf5e502c0e742dea1d1d76623d4adad32476fb36a0c08efded331f98 SHA512 8d1d7842583b02b906d89fe14bda5a66809d8ef7185efbe95e0fe7df619b795ad89fcbf16bfe1c3e92cef8721fe3d4e6192cabe215f3fe13b33de7335783e5f3
+DIST luv-0.5.14.tar.gz 849832 BLAKE2B 5fe04991fdf793d8981b5f978e41a7c170666e917e4272b0b94e0fbc11bcb795d0e7e3dea5a9affea86fe501fba0edcf6418d6d05a48233a9ef5b839755e4d2e SHA512 05fd79209a30d46030af7edf8f4384ec1dcf6423ccb27f25f0231a65c152946ac557ba54d8387f70ffbf402ebc474176dd312897077c46d7774afeaacd3b7d77
diff --git a/dev-ml/luv/luv-0.5.11-r2.ebuild b/dev-ml/luv/luv-0.5.11-r2.ebuild
new file mode 100644
index 000000000000..df0cefa5052d
--- /dev/null
+++ b/dev-ml/luv/luv-0.5.11-r2.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Binding to libuv: cross-platform asynchronous I/O"
+HOMEPAGE="https://github.com/aantron/luv"
+SRC_URI="https://github.com/aantron/${PN}/releases/download/${PV}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-lang/ocaml:=[ocamlopt?]
+ dev-libs/libuv:=
+ dev-ml/ocaml-ctypes:=[ocamlopt?]
+ dev-ml/result:=[ocamlopt?]
+ dev-ml/integers:=
+"
+DEPEND="${RDEPEND}"
+BDEPEND="sys-devel/gnuconfig
+ test? ( dev-ml/alcotest[ocamlopt?] )"
+
+src_prepare() {
+ default
+
+ cp "${BROOT}"/usr/share/gnuconfig/config.{guess,sub} src/c/vendor/configure/ || die
+}
+
+src_compile() {
+ LUV_USE_SYSTEM_LIBUV=yes dune_src_compile
+}
diff --git a/dev-ml/luv/luv-0.5.14-r1.ebuild b/dev-ml/luv/luv-0.5.14-r1.ebuild
new file mode 100644
index 000000000000..7937342c3f10
--- /dev/null
+++ b/dev-ml/luv/luv-0.5.14-r1.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Binding to libuv: cross-platform asynchronous I/O"
+HOMEPAGE="https://github.com/aantron/luv"
+
+if [[ ${PV} == *9999* ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/aantron/${PN}.git"
+else
+ SRC_URI="https://github.com/aantron/${PN}/releases/download/${PV}/${P}.tar.gz"
+ KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 ~riscv x86"
+fi
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-libs/libuv:=
+ >=dev-ml/ocaml-ctypes-0.23:=[ocamlopt?]
+ dev-ml/result:=[ocamlopt?]
+ dev-ml/integers:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ sys-devel/gnuconfig
+ test? ( dev-ml/alcotest[ocamlopt?] )
+"
+
+src_prepare() {
+ default
+
+ cp "${BROOT}"/usr/share/gnuconfig/config.{guess,sub} src/c/vendor/configure/ || die
+}
+
+src_compile() {
+ LUV_USE_SYSTEM_LIBUV=yes dune_src_compile
+}
diff --git a/dev-ml/luv/metadata.xml b/dev-ml/luv/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/luv/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/lwt/Manifest b/dev-ml/lwt/Manifest
new file mode 100644
index 000000000000..c66f95cbdd02
--- /dev/null
+++ b/dev-ml/lwt/Manifest
@@ -0,0 +1,4 @@
+DIST lwt-5.7.0.tar.gz 313632 BLAKE2B e1b401c70b7722b266085c0493ab4e081aeb58cdf0e3569f677ee3b66edb1b4dda9afd115143315562f301a80bf8efbb09ced3f09f641adcac01fe44b3670cdc SHA512 42e629920783428673b99c9d7a639237c9e6b35079b5d907bc67e7ea506acf9edadc48cec580bdcfd2410ed9412bf5e6bcc8b09de2fa7d35ce1490973d05ddd1
+DIST lwt-5.9.0.tar.gz 312144 BLAKE2B 123905ca0ef198e410eeacdef9bda91a2b89f8fa4427fee5a747cdde91d7058be7f3f91f405ad61c3df867569a713b1c64db33d237e862d131609bee310d3c21 SHA512 35574743df40170a8d1676254952c060090421a40d5f8ad37a6691f4f8bb0e28fca61f5efff1050edc4f8a3ffa2f06a1e23d0c084c89bfc105c1235e249bbc75
+DIST lwt-5.9.1.tar.gz 312306 BLAKE2B 4aa1bd218f206e52037f846a49ed5354b5719960cc12e7eca8e31dd5a17f5d0a1cdf35ab5041729c75999b3b599cc575397748ef5acccad0984640f4d6f2b69e SHA512 1c51fdb4d0856c89e2df08a1c0095ef28ebd0f613b07b03d0f66501ca5486515562071291e6d0932e57587ed0c9362c8b92c5c9eddb4d2bb2f5e129986b484a7
+DIST lwt-5.9.2.tar.gz 311751 BLAKE2B 8256236014992e4a009b34944e01215502c5f25a9979cafdbb2c93b4e4aa0c20717cf8a101ed43fec7f61d8213c73fd572058f87f800a6e034c681074fe93f56 SHA512 44ad793741a3ba52dfc07a190790d6e3207f146c42a4e1e11adc76f9d7fc9bee93d7fe18376882bb27e7e7e286be5807498884367b172a4ebc067028fa0c824c
diff --git a/dev-ml/lwt/files/lwt-5.9.1-ppxlib.patch b/dev-ml/lwt/files/lwt-5.9.1-ppxlib.patch
new file mode 100644
index 000000000000..77145903c378
--- /dev/null
+++ b/dev-ml/lwt/files/lwt-5.9.1-ppxlib.patch
@@ -0,0 +1,36 @@
+--- a/src/ppx/ppx_lwt.ml 2025-07-11 18:54:31.821983681 +0200
++++ b/src/ppx/ppx_lwt.ml 2025-07-11 18:57:23.788153921 +0200
+@@ -144,12 +144,12 @@
+ match exns with
+ | [] ->
+ let loc = !default_loc in
+- [%expr Lwt.bind [%e e] [%e pexp_function ~loc cases]]
++ [%expr Lwt.bind [%e e] [%e pexp_function_cases ~loc cases]]
+ | _ ->
+ let loc = !default_loc in
+ [%expr Lwt.try_bind (fun () -> [%e e])
+- [%e pexp_function ~loc cases]
+- [%e pexp_function ~loc exns]]
++ [%e pexp_function_cases ~loc cases]
++ [%e pexp_function_cases ~loc exns]]
+ in
+ Some (mapper#expression { new_exp with pexp_attributes })
+
+@@ -223,7 +223,7 @@
+ Lwt.backtrace_catch
+ (fun exn -> try Lwt.reraise exn with exn -> exn)
+ (fun () -> [%e expr])
+- [%e pexp_function ~loc cases]
++ [%e pexp_function_cases ~loc cases]
+ ]
+ in
+ Some (mapper#expression { new_exp with pexp_attributes })
+@@ -248,7 +248,7 @@
+ in
+ let new_exp =
+ let loc = !default_loc in
+- [%expr Lwt.bind [%e cond] [%e pexp_function ~loc cases]]
++ [%expr Lwt.bind [%e cond] [%e pexp_function_cases ~loc cases]]
+ in
+ Some (mapper#expression { new_exp with pexp_attributes })
+
diff --git a/dev-ml/lwt/lwt-5.7.0.ebuild b/dev-ml/lwt/lwt-5.7.0.ebuild
new file mode 100644
index 000000000000..5c1784605089
--- /dev/null
+++ b/dev-ml/lwt/lwt-5.7.0.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Cooperative light-weight thread library for OCaml"
+SRC_URI="https://github.com/ocsigen/lwt/archive/${PV}.tar.gz -> ${P}.tar.gz"
+HOMEPAGE="http://ocsigen.org/lwt"
+
+SLOT="0/${PV}"
+LICENSE="LGPL-2.1-with-linking-exception"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ dev-libs/libev
+ dev-ml/luv:=
+ dev-ml/mmap:=
+ dev-ml/ocplib-endian:=
+ dev-ml/ppx_let:=
+ dev-ml/ppxlib:=
+ dev-ml/react:=
+ dev-ml/result:=
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ dev-ml/cppo
+ dev-ml/findlib
+"
+
+# "domainslib" is unpackaged.
+OCAML_SUBPACKAGES=(
+ lwt
+ lwt_ppx
+ lwt_ppx_let
+ lwt_react
+)
+
+src_prepare() {
+ sed -i "s| seq||" "${S}"/src/core/dune || die
+
+ default
+}
+
+src_compile() {
+ dune-compile ${OCAML_SUBPACKAGES[@]}
+}
+
+src_test() {
+ dune-test ${OCAML_SUBPACKAGES[@]}
+}
+
+src_install() {
+ dune-install ${OCAML_SUBPACKAGES[@]}
+
+ einstalldocs
+}
diff --git a/dev-ml/lwt/lwt-5.9.0.ebuild b/dev-ml/lwt/lwt-5.9.0.ebuild
new file mode 100644
index 000000000000..887a2aa137c3
--- /dev/null
+++ b/dev-ml/lwt/lwt-5.9.0.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Cooperative light-weight thread library for OCaml"
+HOMEPAGE="http://ocsigen.org/lwt"
+SRC_URI="https://github.com/ocsigen/lwt/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ dev-libs/libev
+ dev-ml/luv:=
+ dev-ml/mmap:=
+ dev-ml/ocplib-endian:=
+ dev-ml/ppx_let:=
+ dev-ml/ppxlib:=
+ dev-ml/react:=
+ dev-ml/result:=
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ dev-ml/cppo
+ dev-ml/findlib
+"
+
+# "domainslib" is unpackaged.
+OCAML_SUBPACKAGES=(
+ lwt
+ lwt_ppx
+ lwt_react
+ lwt_retry
+)
+
+src_prepare() {
+ sed -i "s| seq||" "${S}"/src/core/dune || die
+
+ default
+}
+
+src_compile() {
+ dune-compile ${OCAML_SUBPACKAGES[@]}
+}
+
+src_test() {
+ dune-test ${OCAML_SUBPACKAGES[@]}
+}
+
+src_install() {
+ dune-install ${OCAML_SUBPACKAGES[@]}
+
+ einstalldocs
+}
diff --git a/dev-ml/lwt/lwt-5.9.1-r1.ebuild b/dev-ml/lwt/lwt-5.9.1-r1.ebuild
new file mode 100644
index 000000000000..9f51e528a13e
--- /dev/null
+++ b/dev-ml/lwt/lwt-5.9.1-r1.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Cooperative light-weight thread library for OCaml"
+HOMEPAGE="http://ocsigen.org/lwt"
+SRC_URI="https://github.com/ocsigen/lwt/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ dev-libs/libev
+ dev-ml/luv:=[ocamlopt?]
+ dev-ml/mmap:=[ocamlopt?]
+ dev-ml/ocplib-endian:=[ocamlopt?]
+ dev-ml/ppx_let:=[ocamlopt?]
+ dev-ml/ppxlib:=[ocamlopt?]
+ dev-ml/react:=
+ dev-ml/result:=[ocamlopt?]
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ dev-ml/cppo
+ dev-ml/findlib
+ test? ( dev-ml/ppx_here )
+"
+
+# "domainslib" is unpackaged.
+OCAML_SUBPACKAGES=(
+ lwt
+ lwt_ppx
+ lwt_react
+ lwt_retry
+)
+
+src_prepare() {
+ sed -i "s| seq||" "${S}"/src/core/dune || die
+ if has_version ">=dev-ml/ppxlib-0.36.0"; then
+ eapply "${FILESDIR}"/${P}-ppxlib.patch
+ fi
+ default
+}
+
+src_compile() {
+ dune-compile ${OCAML_SUBPACKAGES[@]}
+}
+
+src_test() {
+ dune-test ${OCAML_SUBPACKAGES[@]}
+}
+
+src_install() {
+ dune-install ${OCAML_SUBPACKAGES[@]}
+
+ einstalldocs
+}
diff --git a/dev-ml/lwt/lwt-5.9.2.ebuild b/dev-ml/lwt/lwt-5.9.2.ebuild
new file mode 100644
index 000000000000..f748feb12701
--- /dev/null
+++ b/dev-ml/lwt/lwt-5.9.2.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Cooperative light-weight thread library for OCaml"
+HOMEPAGE="http://ocsigen.org/lwt"
+SRC_URI="https://github.com/ocsigen/lwt/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ dev-libs/libev
+ dev-ml/luv:=[ocamlopt?]
+ dev-ml/mmap:=[ocamlopt?]
+ dev-ml/ocplib-endian:=[ocamlopt?]
+ dev-ml/ppx_let:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.36:=[ocamlopt?]
+ dev-ml/react:=
+ dev-ml/result:=[ocamlopt?]
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ dev-ml/cppo
+ >=dev-ml/dune-3.15
+ dev-ml/findlib
+ test? ( dev-ml/ppx_here )
+"
+
+# "domainslib" is unpackaged.
+OCAML_SUBPACKAGES=(
+ lwt
+ lwt_ppx
+ lwt_react
+ lwt_retry
+)
+
+src_compile() {
+ dune-compile ${OCAML_SUBPACKAGES[@]}
+}
+
+src_test() {
+ dune-test ${OCAML_SUBPACKAGES[@]}
+}
+
+src_install() {
+ dune-install ${OCAML_SUBPACKAGES[@]}
+
+ einstalldocs
+}
diff --git a/dev-ml/lwt/metadata.xml b/dev-ml/lwt/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/lwt/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/lwt_log/Manifest b/dev-ml/lwt_log/Manifest
new file mode 100644
index 000000000000..adfbcf4704f6
--- /dev/null
+++ b/dev-ml/lwt_log/Manifest
@@ -0,0 +1,2 @@
+DIST lwt_log-1.1.1.tar.gz 24569 BLAKE2B c205382dcb17f9ce6f8037bb19f817138081c61b60f5253913d9346c009694c0a6f67228293fa1d63ea405c94950141ea2f383f1483fcf674771f8a9252f9eff SHA512 df3d171a7c72f37e96b756d252ab586767df9c13e01500faf13d4b2cee936b0602fd7c725c03db488d3737d8d92300af103d395a926dc654a2c44a5d6068f24a
+DIST lwt_log-1.1.2.tar.gz 24567 BLAKE2B d555b2e54b327ddbb68d8fcf1f669eb8b74709673da8c0f0dc32ee5d58c5055ebda52c2f13d39ac37e0fda724e02c057872147b88921ed15dbed73b58c59962d SHA512 fb976d89c0f868b57434a9e0907ffae0842fe48fc747ddb860954d20f36722faea315ebb0b4dac202f9bf7203b0a09681614e9619f3bbd0dd59f8dd7bbd50575
diff --git a/dev-ml/lwt_log/lwt_log-1.1.1-r1.ebuild b/dev-ml/lwt_log/lwt_log-1.1.1-r1.ebuild
new file mode 100644
index 000000000000..65e0d086940d
--- /dev/null
+++ b/dev-ml/lwt_log/lwt_log-1.1.1-r1.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="Cooperative light-weight thread library for OCaml"
+HOMEPAGE="https://github.com/ocsigen/lwt_log"
+SRC_URI="https://github.com/ocsigen/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+SLOT="0/${PV}"
+LICENSE="LGPL-2"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
+
+RDEPEND="dev-ml/lwt:="
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/lwt_log/lwt_log-1.1.2.ebuild b/dev-ml/lwt_log/lwt_log-1.1.2.ebuild
new file mode 100644
index 000000000000..dd13b97c8ce0
--- /dev/null
+++ b/dev-ml/lwt_log/lwt_log-1.1.2.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Cooperative light-weight thread library for OCaml"
+HOMEPAGE="https://github.com/ocsigen/lwt_log"
+SRC_URI="https://github.com/ocsigen/${PN}/archive/${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+SLOT="0/${PV}"
+LICENSE="LGPL-2"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
+
+RDEPEND="dev-ml/lwt:="
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/lwt_log/metadata.xml b/dev-ml/lwt_log/metadata.xml
new file mode 100644
index 000000000000..59e1bfdcb4d0
--- /dev/null
+++ b/dev-ml/lwt_log/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/ocsigen/lwt_log/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/lwt_ssl/Manifest b/dev-ml/lwt_ssl/Manifest
new file mode 100644
index 000000000000..e2a7a8ed8b7b
--- /dev/null
+++ b/dev-ml/lwt_ssl/Manifest
@@ -0,0 +1,2 @@
+DIST lwt_ssl-1.1.3.tar.gz 14785 BLAKE2B b131d821c0e1394fee749ad5fdb0c7394ea96ffdb17dd22646d365c86ed41e1ed4e2b64a351fd14cc60f0e656e43a35e74c1c369c84e23a342fd7f056d49d40c SHA512 1bcc610ccf660436be2ed068ef98d85d752aecd2f364eab585ef1553b0ef1561a0fd50b5edc15000cf4cffc78d0ba184f7ede53651de14f5227ad1b795e2240a
+DIST lwt_ssl-1.2.0.tar.gz 14955 BLAKE2B 14c3d2160ba88147257fda953b298e8bdae5550edc4942eff6e90398eef1353e592e32ce2bd3e6d519fc48a48757015f5bf95af7d3eac283f49ea40206c4ddf4 SHA512 fee0fbc558e638917d626a0c7ce8c4701bc523141d9c3ebefef494fe8dd05cf8e4aeaf37abab1c9727be7677f353b429d31f2e8fe20b30a04a69f27beca22881
diff --git a/dev-ml/lwt_ssl/lwt_ssl-1.1.3.ebuild b/dev-ml/lwt_ssl/lwt_ssl-1.1.3.ebuild
new file mode 100644
index 000000000000..0c1d74fa892a
--- /dev/null
+++ b/dev-ml/lwt_ssl/lwt_ssl-1.1.3.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="GLib integration for Lwt"
+SRC_URI="https://github.com/ocsigen/lwt_ssl/archive/${PV}.tar.gz
+ -> ${P}.tar.gz"
+HOMEPAGE="http://ocsigen.org/lwt_ssl"
+
+IUSE="+ocamlopt"
+
+SLOT="0/${PV}"
+LICENSE="LGPL-2.1-with-linking-exception"
+KEYWORDS="~amd64 ~arm ~ppc"
+
+RDEPEND="
+ dev-ml/base
+ >=dev-ml/lwt-3.1:=
+ >=dev-ml/ocaml-ssl-0.4.0:=
+"
diff --git a/dev-ml/lwt_ssl/lwt_ssl-1.2.0.ebuild b/dev-ml/lwt_ssl/lwt_ssl-1.2.0.ebuild
new file mode 100644
index 000000000000..c89e166b346e
--- /dev/null
+++ b/dev-ml/lwt_ssl/lwt_ssl-1.2.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="GLib integration for Lwt"
+SRC_URI="https://github.com/ocsigen/lwt_ssl/archive/${PV}.tar.gz
+ -> ${P}.tar.gz"
+HOMEPAGE="http://ocsigen.org/lwt_ssl"
+
+IUSE="+ocamlopt"
+
+SLOT="0/${PV}"
+LICENSE="LGPL-2.1-with-linking-exception"
+KEYWORDS="~amd64 ~arm ~ppc"
+
+RDEPEND="
+ dev-ml/base
+ >=dev-ml/lwt-3.1:=
+ >=dev-ml/ocaml-ssl-0.5.13:=
+"
diff --git a/dev-ml/lwt_ssl/metadata.xml b/dev-ml/lwt_ssl/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/lwt_ssl/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/markup/Manifest b/dev-ml/markup/Manifest
new file mode 100644
index 000000000000..289d294fd28f
--- /dev/null
+++ b/dev-ml/markup/Manifest
@@ -0,0 +1 @@
+DIST markup-1.0.3.tar.gz 281554 BLAKE2B 71e6719c83ea0b456bb72ac469f11f8aab849098728431cf65e63f3484d98957250cec95a6c78e1bb586768f07fdf91bd4a8dc8195815b0bee836ce7c59fd2c8 SHA512 1bb030fa2d79f7a7ac2d04c07c72a39e83620757b1d7d8a33eea1ec9b4c32883a67de45d1eea9bfa6533ae8076009fab9af5f180ad2be9c1fef66e3e5937048a
diff --git a/dev-ml/markup/markup-1.0.3.ebuild b/dev-ml/markup/markup-1.0.3.ebuild
new file mode 100644
index 000000000000..ef30dc156419
--- /dev/null
+++ b/dev-ml/markup/markup-1.0.3.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Error-recovering streaming HTML5 and XML parsers"
+HOMEPAGE="https://github.com/aantron/markup.ml"
+SRC_URI="https://github.com/aantron/markup.ml/archive/${PV}.tar.gz
+ -> ${P}.tar.gz"
+S="${WORKDIR}"/${PN}.ml-${PV}
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="amd64 ~arm arm64 x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-ml/lwt:=
+ dev-ml/uchar:=
+ dev-ml/uutf:=
+"
+DEPEND="${RDEPEND}"
+BDEPEND="test? ( dev-ml/ounit2 )"
diff --git a/dev-ml/markup/metadata.xml b/dev-ml/markup/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/markup/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/mccs/Manifest b/dev-ml/mccs/Manifest
new file mode 100644
index 000000000000..8c9f9d873d2e
--- /dev/null
+++ b/dev-ml/mccs/Manifest
@@ -0,0 +1,2 @@
+DIST mccs-1.1.18.tar.gz 1025265 BLAKE2B ff49c8f93af12245da51915d9eb9295e520a9aae25ede5f4963a7d84085dcdaafd37695d65cb0a26afc8fb2d1a9371d6fe4c855c39221924df6300fdde7c60a4 SHA512 5c0a1e2e437efb1d76e7420cdd6b9bfa9a212a54a4ef27f5358c7249fcf5b1541e737b4550fe2c1e9e1761bbc31f48545df943cf4f72c8cbf530c47f5599c69d
+DIST mccs-1.1.19.tar.gz 1025309 BLAKE2B 0c214e11d90ced25402e2bd837721cd4165e5a5dd355f6e5cf4a55a7b2d98bfefe3befef152e69e153cc61a2c7d409f3d795222474932025c68f05d6db7d316f SHA512 c471fef72f14cf14853916636f8962d413c8456320ddf31b05e91a5927168f5b3c1a860ec13f528fe0e451dd5cc230a12ffb5f882ba79995d3836253939ae1f3
diff --git a/dev-ml/mccs/mccs-1.1.18-r1.ebuild b/dev-ml/mccs/mccs-1.1.18-r1.ebuild
new file mode 100644
index 000000000000..91467c76e9ff
--- /dev/null
+++ b/dev-ml/mccs/mccs-1.1.18-r1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+MY_PV=$(ver_rs 2 '+')
+
+DESCRIPTION="Multi Criteria CUDF Solver"
+HOMEPAGE="https://github.com/ocaml-opam/ocaml-mccs"
+SRC_URI="https://github.com/ocaml-opam/ocaml-mccs/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}"/ocaml-${PN}-$(ver_rs 2 '-')
+
+LICENSE="|| ( LGPL-2.1 BSD GPL-3 )"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ dev-ml/cudf:=
+ dev-ml/extlib:=
+ sci-mathematics/glpk:=
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/mccs/mccs-1.1.19.ebuild b/dev-ml/mccs/mccs-1.1.19.ebuild
new file mode 100644
index 000000000000..0df8dc039001
--- /dev/null
+++ b/dev-ml/mccs/mccs-1.1.19.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+MY_PV=$(ver_rs 2 '+')
+
+DESCRIPTION="Multi Criteria CUDF Solver"
+HOMEPAGE="https://github.com/ocaml-opam/ocaml-mccs"
+SRC_URI="https://github.com/ocaml-opam/ocaml-mccs/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}"/ocaml-${PN}-$(ver_rs 2 '-')
+
+LICENSE="|| ( LGPL-2.1 BSD GPL-3 )"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ dev-ml/cudf:=
+ dev-ml/extlib:=
+ sci-mathematics/glpk:=
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/mccs/metadata.xml b/dev-ml/mccs/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/mccs/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/memtrace/Manifest b/dev-ml/memtrace/Manifest
new file mode 100644
index 000000000000..1b448e9e20b5
--- /dev/null
+++ b/dev-ml/memtrace/Manifest
@@ -0,0 +1 @@
+DIST memtrace-0.2.3.tar.gz 1237922 BLAKE2B 936761946c51db5681a53f1bcaa9768e7c0fcaf0777f06e6c85f997a807c3d71ae3766d41fe8913bf5c7ab77477f253661ae5341ddcc0c240ef01cc699e167af SHA512 53acbbe5e3b674982d36f58409e14e7f4cf9cbdd8e4f9fcf7901457750fb0754b8ec83cd412c07217cffcbd370c1696bd455039344a6331fb1330cf560eef454
diff --git a/dev-ml/memtrace/memtrace-0.2.3.ebuild b/dev-ml/memtrace/memtrace-0.2.3.ebuild
new file mode 100644
index 000000000000..b9f1256f994b
--- /dev/null
+++ b/dev-ml/memtrace/memtrace-0.2.3.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Streaming client for OCaml's Memprof"
+HOMEPAGE="https://github.com/janestreet/memtrace/"
+
+if [[ "${PV}" == *9999* ]] ; then
+ inherit git-r3
+
+ EGIT_REPO_URI="https://github.com/janestreet/${PN}.git"
+else
+ SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="+ocamlopt"
+RESTRICT="test" # Very long bug #959363
diff --git a/dev-ml/memtrace/metadata.xml b/dev-ml/memtrace/metadata.xml
new file mode 100644
index 000000000000..45dc2c76bfa3
--- /dev/null
+++ b/dev-ml/memtrace/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/janestreet/memtrace/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/menhir/Manifest b/dev-ml/menhir/Manifest
new file mode 100644
index 000000000000..978278ba39b3
--- /dev/null
+++ b/dev-ml/menhir/Manifest
@@ -0,0 +1,2 @@
+DIST menhir-20240715.tar.bz2 1245971 BLAKE2B b5f1a1fb234dd53e1d3f77b095e2721f8d2af354a3aa36da2b993dc9f699767bb7c98aae13316ff3405b8bcf80f9ba3addc824ace59f5548613f0f93d105adf7 SHA512 b18da35517702dbdab0d9f5819ad711f61f2ed13ec9e51db71b92fa2d6604cbf28aa6d684c36a41364324694ebbc5dc6aaed4dbb3779c14b399e49ded6fd5db6
+DIST menhir-20250912.tar.bz2 1280672 BLAKE2B 53f3f88286a77093b34275ada55ba22ce31cd0db2981299a9ffc313415c1d345fa89694f29c522f8150e1c80ae0694c63beaaf331d8c6854f69430e7edf3c4b8 SHA512 bb1f93177ddea862a4b13eb344e81614291c3933d89cb39d11a8a59b1f842f2ea712bb4936c19e08ade42ad2c268e4bd76061457a56cc538cf3c5a6377f2ba97
diff --git a/dev-ml/menhir/menhir-20240715.ebuild b/dev-ml/menhir/menhir-20240715.ebuild
new file mode 100644
index 000000000000..17c4c69ae5cc
--- /dev/null
+++ b/dev-ml/menhir/menhir-20240715.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="LR(1) parser generator for the OCaml language"
+HOMEPAGE="http://gallium.inria.fr/~fpottier/menhir/"
+SRC_URI="https://gitlab.inria.fr/fpottier/${PN}/-/archive/${PV}/${P}.tar.bz2"
+
+LICENSE="GPL-2 LGPL-2-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+src_install() {
+ dune_src_install menhir
+ dune_src_install menhirLib
+ dune_src_install menhirSdk
+}
diff --git a/dev-ml/menhir/menhir-20250912.ebuild b/dev-ml/menhir/menhir-20250912.ebuild
new file mode 100644
index 000000000000..dc7b31cdc817
--- /dev/null
+++ b/dev-ml/menhir/menhir-20250912.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="LR(1) parser generator for the OCaml language"
+HOMEPAGE="http://gallium.inria.fr/~fpottier/menhir/"
+SRC_URI="https://gitlab.inria.fr/fpottier/${PN}/-/archive/${PV}/${P}.tar.bz2"
+
+LICENSE="GPL-2 LGPL-2-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt"
+
+src_install() {
+ dune_src_install menhir
+ dune_src_install menhirLib
+ dune_src_install menhirSdk
+}
diff --git a/dev-ml/menhir/metadata.xml b/dev-ml/menhir/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/menhir/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/merlin-extend/Manifest b/dev-ml/merlin-extend/Manifest
new file mode 100644
index 000000000000..5a084b32fe0d
--- /dev/null
+++ b/dev-ml/merlin-extend/Manifest
@@ -0,0 +1,3 @@
+DIST merlin-extend-0.6.1.tar.gz 8156 BLAKE2B d007bcfac004af48eafc8c806aabaff4f61d9bf7acd93273a991791144a7c9e8f7307cf61460551326ceb077bd838bb0b1d377aa134d45e2fd20109dc68f3213 SHA512 0d5041231b280dc1026d598cca8c75895a159e102f209be7c5a9a1ac9ab15da66c603d850a3f3f26880f9673e232765108e21984f2eb4dc92d9d1d7fb29b9382
+DIST merlin-extend-0.6.2.tar.gz 8296 BLAKE2B 658be5819951e1a0902a19d7d6e99343e89fcc9e583bf98176d61a560d1e7643f36d5562a54a094d29833c7de86d98c9f0ff6a835c8b7fd1cb9cb14e1041dd69 SHA512 c83fd23143941571ccb6282556d8d66521a14596ca57a26b43a3ee9721f0da75cad0e3f1ed0091498c69cd039616acbe35d3b621e796f18bb9febd671fee0205
+DIST merlin-extend-0.6.tar.gz 8098 BLAKE2B c8adb32c03a3fe423aa1bb9e10ed9d5041cfbbdc991ae656180debbcad6ee72404bdd7c03d8ee609b809aa27e8013f14785204c759221e33405182ef6c9d1616 SHA512 5cfe4bb1fe8804dcb52eb4cebea6176b5d50fdafbdcd4f5854726c74f196ad06fe3b1b46dde7622f2e5c99ce6bfea9efd070fb81e5fd5e2b5197f40cee109ea7
diff --git a/dev-ml/merlin-extend/merlin-extend-0.6-r1.ebuild b/dev-ml/merlin-extend/merlin-extend-0.6-r1.ebuild
new file mode 100644
index 000000000000..89458b370bfa
--- /dev/null
+++ b/dev-ml/merlin-extend/merlin-extend-0.6-r1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="SDK to extend Merlin"
+HOMEPAGE="https://github.com/let-def/merlin-extend"
+SRC_URI="https://github.com/let-def/merlin-extend/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64"
+IUSE="+ocamlopt"
+
+RDEPEND="dev-lang/ocaml:="
+DEPEND="${RDEPEND}
+ dev-ml/cppo"
diff --git a/dev-ml/merlin-extend/merlin-extend-0.6.1.ebuild b/dev-ml/merlin-extend/merlin-extend-0.6.1.ebuild
new file mode 100644
index 000000000000..2e233f143af0
--- /dev/null
+++ b/dev-ml/merlin-extend/merlin-extend-0.6.1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="SDK to extend Merlin"
+HOMEPAGE="https://github.com/let-def/merlin-extend/"
+SRC_URI="https://github.com/let-def/merlin-extend/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
+
+RDEPEND="dev-lang/ocaml:="
+DEPEND="
+ ${RDEPEND}
+ dev-ml/cppo
+"
diff --git a/dev-ml/merlin-extend/merlin-extend-0.6.2.ebuild b/dev-ml/merlin-extend/merlin-extend-0.6.2.ebuild
new file mode 100644
index 000000000000..0b81f8aac873
--- /dev/null
+++ b/dev-ml/merlin-extend/merlin-extend-0.6.2.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="SDK to extend Merlin"
+HOMEPAGE="https://github.com/let-def/merlin-extend/"
+SRC_URI="https://github.com/let-def/merlin-extend/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
+
+RDEPEND="dev-lang/ocaml:="
+DEPEND="
+ ${RDEPEND}
+ dev-ml/cppo
+"
diff --git a/dev-ml/merlin-extend/metadata.xml b/dev-ml/merlin-extend/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/merlin-extend/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/merlin/Manifest b/dev-ml/merlin/Manifest
new file mode 100644
index 000000000000..34df01be7027
--- /dev/null
+++ b/dev-ml/merlin/Manifest
@@ -0,0 +1,3 @@
+DIST merlin-5.5-503.tbz 3847507 BLAKE2B 012c97efea28b55397103af14dc134f2942ad3354f25ea02418ab9bf5b6790c420da79274ba1f22edf1221761b6ecbdd2802ab06fe3d7a3e43a0bd6cd4161797 SHA512 1fb3b5180d36aa82b82a319e15b743b802b6888f0dc67645baafdb4e18dfc23a7b90064ec9bc42f7424061cf8cde7f8839178d8a8537bf4596759f3ff4891873
+DIST merlin-5.6-503.tbz 3922503 BLAKE2B 7f5f177f12bf6717a27d3d75c90b465e9c72196222baa87ce18b35c2fdcaa181af4b10ce1fc3abbdd90dfa84a3b2ea56883a528125bbbddf5a6fdf64d3537b4c SHA512 9987baf2b2e82bab4c90a328bfcba9945e797e0f3d947156f04435ee84b49542844b379e35a79027c3ffe81f4b7a8f1c60803233999b4c039d4598033371880d
+DIST merlin-5.6-504.tbz 4588103 BLAKE2B 06fead7fdc112b48611ab88f83ad34e7f125d61b171efdac9c43a5d52a6201aa7f8459f87ea29bbab7e0ec02b9fddc37d82871baf91e393da9afa63f69282783 SHA512 e21c96db754a289462677e6985181902ddd90bab9e9cebbbb739d92d94b5aee7ef7a134da70ae384291d9bfaccfecd26d37b48f8d75c5d36b9eda18f6e5afd3d
diff --git a/dev-ml/merlin/files/50merlin-gentoo.el b/dev-ml/merlin/files/50merlin-gentoo.el
new file mode 100644
index 000000000000..1da1f56402a5
--- /dev/null
+++ b/dev-ml/merlin/files/50merlin-gentoo.el
@@ -0,0 +1,4 @@
+(add-to-list 'load-path "@SITELISP@")
+(autoload 'merlin-mode "merlin" "Merlin mode" t)
+(add-hook 'tuareg-mode-hook 'merlin-mode)
+(add-hook 'caml-mode-hook 'merlin-mode)
diff --git a/dev-ml/merlin/merlin-5.5.ebuild b/dev-ml/merlin/merlin-5.5.ebuild
new file mode 100644
index 000000000000..871e406d1656
--- /dev/null
+++ b/dev-ml/merlin/merlin-5.5.ebuild
@@ -0,0 +1,123 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# TODO: vim-plugin, although it's not clear how to make it work here
+inherit elisp-common dune edo
+
+DESCRIPTION="Context sensitive completion for OCaml in Vim and Emacs"
+HOMEPAGE="https://github.com/ocaml/merlin/"
+SRC_URI="https://github.com/ocaml/${PN}/releases/download/v${PV}-503/${P}-503.tbz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64"
+IUSE="emacs +ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-lang/ocaml-5.3.0 <dev-lang/ocaml-5.4.0
+ dev-ml/csexp:=
+ dev-ml/yojson:=
+ emacs? (
+ >=app-editors/emacs-23.1:*
+ app-emacs/auto-complete
+ app-emacs/company-mode
+ )
+"
+DEPEND="
+ ${RDEPEND}
+"
+# NOTICE: Block dev-ml/seq (which is a back-port of code to ocaml <4.07)
+# because it breaks merlin builds.
+# https://github.com/ocaml/merlin/issues/1500
+BDEPEND="
+ dev-ml/findlib
+ test? (
+ app-misc/jq
+ dev-ml/alcotest
+ dev-ml/ppxlib
+ )
+"
+
+SITEFILE="50${PN}-gentoo.el"
+
+DUNE_PKG_NAMES_OTHER=(
+ dot-merlin-reader
+ ocaml-index
+ merlin-lib
+)
+
+src_unpack() {
+ default
+
+ if has_version "=dev-lang/ocaml-5.3*" ; then
+ edo mv "${P}-503" "${S}"
+ else
+ die "The installed version of OCaml is not yet supported"
+ fi
+}
+
+src_prepare() {
+ default
+
+ # Handle ELisp installation via the Emacs Eclass.
+ rm emacs/dune || die
+
+ # This test runs only inside a git repo,
+ # it is not included in merlin release for ocaml 4.12.
+ if [[ -f tests/test-dirs/occurrences/issue1404.t ]] ; then
+ rm tests/test-dirs/occurrences/issue1404.t || die
+ fi
+ rm -r tests/test-dirs/locate/context-detection/cd-mod_constr.t || die
+
+ # Remove seq references from dune build files.
+ sed -i 's|seq||g' src/frontend/ocamlmerlin/dune || die
+
+ # Remove Menhir requirement.
+ # > MenhirLib.StaticVersion.require_20201216
+ sed -i src/ocaml/preprocess/parser_raw.ml \
+ -e "s|MenhirLib.StaticVersion.require_.*|()|g" \
+ || die
+}
+
+src_compile() {
+ # This is a minimal compilation set to avoid the "menhir" dependency.
+ # See the readme: https://github.com/ocaml/merlin/blob/main/README.md
+ dune-compile "${DUNE_PKG_NAMES_OTHER[@]}" "${PN}"
+
+ if use emacs ; then
+ # iedit isn't packaged yet
+ rm emacs/merlin-iedit.el || die
+
+ local -x BYTECOMPFLAGS="-L emacs"
+ elisp-compile ./emacs/*.el
+ fi
+}
+
+src_test() {
+ dune-test "${DUNE_PKG_NAMES_OTHER[@]}"
+
+ # Dune test dance:
+ # Testing not all packages removes some needed files for the install step.
+ # We have to compile again, luckily this time most of the build is cached.
+ dune-compile "${DUNE_PKG_NAMES_OTHER[@]}" "${PN}"
+}
+
+src_install() {
+ dune_src_install
+
+ if use emacs ; then
+ elisp-install "${PN}" ./emacs/*.el{,c}
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+ fi
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/dev-ml/merlin/merlin-5.6.ebuild b/dev-ml/merlin/merlin-5.6.ebuild
new file mode 100644
index 000000000000..6a71e5023af2
--- /dev/null
+++ b/dev-ml/merlin/merlin-5.6.ebuild
@@ -0,0 +1,125 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# TODO: vim-plugin, although it's not clear how to make it work here
+inherit elisp-common dune edo
+
+DESCRIPTION="Context sensitive completion for OCaml in Vim and Emacs"
+HOMEPAGE="https://github.com/ocaml/merlin/"
+SRC_URI="
+ https://github.com/ocaml/${PN}/releases/download/v${PV}-503/${P}-503.tbz
+ https://github.com/ocaml/${PN}/releases/download/v${PV}-504/${P}-504.tbz
+"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64"
+IUSE="emacs +ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-lang/ocaml-5.3.0 <dev-lang/ocaml-5.5.0
+ dev-ml/csexp:=
+ dev-ml/yojson:=
+ emacs? (
+ >=app-editors/emacs-23.1:*
+ app-emacs/auto-complete
+ app-emacs/company-mode
+ )
+"
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ dev-ml/findlib
+ test? (
+ app-misc/jq
+ dev-ml/alcotest
+ dev-ml/ppxlib
+ )
+"
+
+SITEFILE="50${PN}-gentoo.el"
+
+DUNE_PKG_NAMES_OTHER=(
+ dot-merlin-reader
+ ocaml-index
+ merlin-lib
+)
+
+src_unpack() {
+ default
+
+ if has_version "=dev-lang/ocaml-5.3*" ; then
+ edo mv "${P}-503" "${S}"
+ elif has_version "=dev-lang/ocaml-5.4*" ; then
+ edo mv "${P}-504" "${S}"
+ else
+ die "The installed version of OCaml is not yet supported"
+ fi
+}
+
+src_prepare() {
+ default
+
+ # Handle ELisp installation via the Emacs Eclass.
+ rm emacs/dune || die
+
+ # This test runs only inside a git repo,
+ # it is not included in merlin release for ocaml 4.12.
+ if [[ -f tests/test-dirs/occurrences/issue1404.t ]] ; then
+ rm tests/test-dirs/occurrences/issue1404.t || die
+ fi
+ rm -r tests/test-dirs/locate/context-detection/cd-mod_constr.t || die
+
+ # Remove seq references from dune build files.
+ sed -i 's|seq||g' src/frontend/ocamlmerlin/dune || die
+
+ # Remove Menhir requirement.
+ # > MenhirLib.StaticVersion.require_20201216
+ sed -i src/ocaml/preprocess/parser_raw.ml \
+ -e "s|MenhirLib.StaticVersion.require_.*|()|g" \
+ || die
+}
+
+src_compile() {
+ # This is a minimal compilation set to avoid the "menhir" dependency.
+ # See the readme: https://github.com/ocaml/merlin/blob/main/README.md
+ dune-compile "${DUNE_PKG_NAMES_OTHER[@]}" "${PN}"
+
+ if use emacs ; then
+ # iedit isn't packaged yet
+ rm emacs/merlin-iedit.el || die
+
+ local -x BYTECOMPFLAGS="-L emacs"
+ elisp-compile ./emacs/*.el
+ fi
+}
+
+src_test() {
+ dune-test "${DUNE_PKG_NAMES_OTHER[@]}"
+
+ # Dune test dance:
+ # Testing not all packages removes some needed files for the install step.
+ # We have to compile again, luckily this time most of the build is cached.
+ dune-compile "${DUNE_PKG_NAMES_OTHER[@]}" "${PN}"
+}
+
+src_install() {
+ dune_src_install
+
+ if use emacs ; then
+ elisp-install "${PN}" ./emacs/*.el{,c}
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+ fi
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/dev-ml/merlin/metadata.xml b/dev-ml/merlin/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/merlin/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/mew/Manifest b/dev-ml/mew/Manifest
new file mode 100644
index 000000000000..4f54866d6ad2
--- /dev/null
+++ b/dev-ml/mew/Manifest
@@ -0,0 +1 @@
+DIST mew-0.1.0.tar.gz 4309 BLAKE2B 7280369eb4d8d940c5f30b8d3485020b088bdca918e3c2992c54e9785ac4fcbd99a0552285c68742704d845b3764b0bd741592963095254cb744b621c2b1eb6d SHA512 77a68f6dc9f3edc729384d59247a29f32f969dc6d987ed2e6c88b9a64b655822dafa9c3cb424bf40e6cf9ed20cddf9c708738872db245f14a711770e8e938db3
diff --git a/dev-ml/mew/metadata.xml b/dev-ml/mew/metadata.xml
new file mode 100644
index 000000000000..6754d6417dc5
--- /dev/null
+++ b/dev-ml/mew/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/kandu/mew/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/mew/mew-0.1.0-r1.ebuild b/dev-ml/mew/mew-0.1.0-r1.ebuild
new file mode 100644
index 000000000000..6298b8d0a721
--- /dev/null
+++ b/dev-ml/mew/mew-0.1.0-r1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="General modal editing engine generator"
+HOMEPAGE="https://github.com/kandu/mew"
+SRC_URI="https://github.com/kandu/mew/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-ml/result:=
+ dev-ml/trie:=
+"
+DEPEND="${RDEPEND}"
+BDEPEND="test? ( dev-ml/ppx_expect )"
diff --git a/dev-ml/mew_vi/Manifest b/dev-ml/mew_vi/Manifest
new file mode 100644
index 000000000000..e8e4772e23c7
--- /dev/null
+++ b/dev-ml/mew_vi/Manifest
@@ -0,0 +1 @@
+DIST mew_vi-0.5.0.tar.gz 8605 BLAKE2B 30953927947b80391ccff3a7378bfc7d4edcff7164226225c5c1f0fc835312aa31220eedc2e29de663027dd32e316f4ac365494da0893f6d91094f35c036b0db SHA512 f6ee1375ceee60ccae1799d07a8bc55684fdbffc2275147ef19cf3c7d242663764e6630b9423287a78efacba17f410971e3fc397d202effb331f94dc00797eb0
diff --git a/dev-ml/mew_vi/metadata.xml b/dev-ml/mew_vi/metadata.xml
new file mode 100644
index 000000000000..12216b4fa4a6
--- /dev/null
+++ b/dev-ml/mew_vi/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/kandu/mew_vi/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/mew_vi/mew_vi-0.5.0.ebuild b/dev-ml/mew_vi/mew_vi-0.5.0.ebuild
new file mode 100644
index 000000000000..7070943c97e6
--- /dev/null
+++ b/dev-ml/mew_vi/mew_vi-0.5.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="A vi-like modal editing engine generator"
+HOMEPAGE="https://github.com/kandu/mew_vi"
+SRC_URI="https://github.com/kandu/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ dev-ml/mew:=
+ dev-ml/react:=
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/mirage-clock/Manifest b/dev-ml/mirage-clock/Manifest
new file mode 100644
index 000000000000..82acb7cc92fa
--- /dev/null
+++ b/dev-ml/mirage-clock/Manifest
@@ -0,0 +1,2 @@
+DIST mirage-clock-3.1.0.tar.gz 8441 BLAKE2B a8cc3b1ab3f929c4c28ce5f0dfe30d316b1d9445f4fd053743d5e224e8b5630c9ae2d12804ca690488a238c6aa8cd8b197ca8ca7d9e49b902964570c78ed946b SHA512 e4518a6c47e18c7fd3fd910de2f68cacb18735d59bcfffc79b676c8526466f2134979805222c39496588ef6f16a8f6b1fb79fec478459a3ec474fb60118c5551
+DIST mirage-clock-4.2.0.tar.gz 8440 BLAKE2B 37c701a92ec8cdf71e9d297ec09992f313f1b3637146988b8fac3e7c6e21be4eb2ebe622fdf1ae52612b2cf51e6cbfa87750c62bf68f126d3e61789d461a4a31 SHA512 7c32adf30505fe35a1313c162731b96e283a883dbc18d530344830a1f76d3397a6dd3b76a4ac3024aa02ff917d228c953c9ebdfeeae1f48686e776007234edda
diff --git a/dev-ml/mirage-clock/metadata.xml b/dev-ml/mirage-clock/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/mirage-clock/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/mirage-clock/mirage-clock-3.1.0.ebuild b/dev-ml/mirage-clock/mirage-clock-3.1.0.ebuild
new file mode 100644
index 000000000000..f2e3d420d7a5
--- /dev/null
+++ b/dev-ml/mirage-clock/mirage-clock-3.1.0.ebuild
@@ -0,0 +1,17 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="A lightweight and colourful test framework"
+HOMEPAGE="https://github.com/mirage/mirage-clock"
+SRC_URI="https://github.com/mirage/mirage-clock/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+BDEPEND="dev-ml/dune-configurator"
diff --git a/dev-ml/mirage-clock/mirage-clock-4.2.0.ebuild b/dev-ml/mirage-clock/mirage-clock-4.2.0.ebuild
new file mode 100644
index 000000000000..b8d1773320c1
--- /dev/null
+++ b/dev-ml/mirage-clock/mirage-clock-4.2.0.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Portable clock implementation for Unix and Xen"
+HOMEPAGE="https://github.com/mirage/mirage-clock"
+SRC_URI="https://github.com/mirage/mirage-clock/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+BDEPEND="dev-ml/dune-configurator"
+
+src_install() {
+ dune-install mirage-clock mirage-clock-solo5 mirage-clock-unix
+}
diff --git a/dev-ml/mmap/Manifest b/dev-ml/mmap/Manifest
new file mode 100644
index 000000000000..c8b66cf96987
--- /dev/null
+++ b/dev-ml/mmap/Manifest
@@ -0,0 +1 @@
+DIST mmap-1.2.0.tar.gz 15328 BLAKE2B d7ab07cb0883c7ca53827ad3d4402caf3beba765d6a7e5355f24fb77d6876676f0920bf19e38911b08dde222dbc5d404fa3d53d146bb20f3b807c8fb00ce968d SHA512 cef6c37953d62f2f7472147a03707d60401d92aaf4ddb2dbaa697ee4eee252f70d8068e8fe5c6a36e005d4cc738f61d2c5bea12d844f1e3a696fef2f6546d59c
diff --git a/dev-ml/mmap/metadata.xml b/dev-ml/mmap/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/mmap/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/mmap/mmap-1.2.0-r1.ebuild b/dev-ml/mmap/mmap-1.2.0-r1.ebuild
new file mode 100644
index 000000000000..b156fe62c30d
--- /dev/null
+++ b/dev-ml/mmap/mmap-1.2.0-r1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="File mapping"
+HOMEPAGE="https://github.com/mirage/mmap/"
+SRC_URI="https://github.com/mirage/mmap/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+RDEPEND="dev-ml/bigarray-compat:="
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/mtime/Manifest b/dev-ml/mtime/Manifest
new file mode 100644
index 000000000000..909bcc4cd88e
--- /dev/null
+++ b/dev-ml/mtime/Manifest
@@ -0,0 +1,4 @@
+DIST mtime-1.2.0.tbz 16272 BLAKE2B 317201f8d5e7a55636e58748ffd269db5e88aed012e8dd7ed269d1f128f8d21ed0e707679b030b9c822bac98c9b76033e8d2402171c4ee758d8c936fbeee7ee9 SHA512 0f0ed220cd0f899643930814010f8592e1f47b6dc6c4dce8eebfb17a81b0abed093a3dbf9c02490af99bf81ea640372f73b4ab88fd8ef0e0c7c66920692a8778
+DIST mtime-1.4.0.tbz 15909 BLAKE2B 3c49deaf72d3873c8447f4a6d8ce89d55f3df60df108132ec078d81702a6fb9d532266efdf5290fe396d57a84de2d1912b48ad92f84db6d573d977492407b95b SHA512 0492fa5f5187b909fe2b0550363c7dcb8cffef963d51072272ef3d876b51e1ddf8de4c4e221cffb0144658fccf6a0dc584a5c8094a4b2208156e43bad5b269d4
+DIST mtime-2.0.0.tbz 16284 BLAKE2B de653a8ce5d53c53520f755f706d7eea8c13a53b0dcd27146d19b273b03bbc1582c77698f8e7b2148b4d1a3af63a37698978547945b06814fe9333c963619c08 SHA512 2ebec45218901c08f73420aa3318c506f155b6c0df713e9856682e59d3246696821ea477ce3682af0bf4cafd0491b1d66904f8c0256e2cf831e93a0aea322f04
+DIST mtime-2.1.0.tbz 15370 BLAKE2B f5bde0bab808fccfbb25fb93c2d02bb1ddf63505e46f2e34c127f9c8ad6a905436d6cfc7bea28bf0688d9f4adfde92cda9fdfdeb96c548314dddd9f01331b8ad SHA512 a6619f1a3f1a5b32b7a9a067b939f94e6c66244eb90762d41f2cb1c9af852dd7d270fedb20e2b9b61875d52ba46e24af6ebf5950d1284b0b75b2fd2c380d9af3
diff --git a/dev-ml/mtime/metadata.xml b/dev-ml/mtime/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/mtime/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/mtime/mtime-1.2.0.ebuild b/dev-ml/mtime/mtime-1.2.0.ebuild
new file mode 100644
index 000000000000..70153205a2bd
--- /dev/null
+++ b/dev-ml/mtime/mtime-1.2.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit opam
+
+DESCRIPTION="OCaml module to access monotonic wall-clock time"
+HOMEPAGE="https://erratique.ch/software/mtime https://github.com/dbuenzli/mtime"
+SRC_URI="https://erratique.ch/software/mtime/releases/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="dev-lang/ocaml:=[ocamlopt]"
+DEPEND="${RDEPEND}
+ dev-ml/topkg
+ dev-ml/ocamlbuild
+ dev-ml/findlib"
+
+src_compile() {
+ ocaml pkg/pkg.ml build \
+ --with-js_of_ocaml false \
+ --tests $(usex test true false) \
+ || die
+}
+
+src_test() {
+ ocaml pkg/pkg.ml test || die
+}
diff --git a/dev-ml/mtime/mtime-1.4.0.ebuild b/dev-ml/mtime/mtime-1.4.0.ebuild
new file mode 100644
index 000000000000..77f795ddaa20
--- /dev/null
+++ b/dev-ml/mtime/mtime-1.4.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit edo opam
+
+DESCRIPTION="OCaml module to access monotonic wall-clock time"
+HOMEPAGE="https://erratique.ch/software/mtime https://github.com/dbuenzli/mtime"
+SRC_URI="https://erratique.ch/software/mtime/releases/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="dev-lang/ocaml:=[ocamlopt]"
+DEPEND="${RDEPEND}
+ dev-ml/topkg
+ dev-ml/ocamlbuild
+ dev-ml/findlib"
+
+src_compile() {
+ edo ocaml pkg/pkg.ml build \
+ --tests $(usex test true false)
+}
+
+src_test() {
+ edo ocaml pkg/pkg.ml test
+}
diff --git a/dev-ml/mtime/mtime-2.0.0.ebuild b/dev-ml/mtime/mtime-2.0.0.ebuild
new file mode 100644
index 000000000000..56655aef9d3f
--- /dev/null
+++ b/dev-ml/mtime/mtime-2.0.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit edo opam
+
+DESCRIPTION="OCaml module to access monotonic wall-clock time"
+HOMEPAGE="https://erratique.ch/software/mtime/
+ https://github.com/dbuenzli/mtime/"
+SRC_URI="https://erratique.ch/software/mtime/releases/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="dev-lang/ocaml:=[ocamlopt]"
+DEPEND="
+ ${RDEPEND}
+ dev-ml/topkg
+ dev-ml/ocamlbuild
+ dev-ml/findlib
+"
+
+src_compile() {
+ edo ocaml pkg/pkg.ml build \
+ --tests $(usex test true false)
+}
+
+src_test() {
+ edo ocaml pkg/pkg.ml test
+}
diff --git a/dev-ml/mtime/mtime-2.1.0.ebuild b/dev-ml/mtime/mtime-2.1.0.ebuild
new file mode 100644
index 000000000000..a7fd6824b6bb
--- /dev/null
+++ b/dev-ml/mtime/mtime-2.1.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit edo opam
+
+DESCRIPTION="OCaml module to access monotonic wall-clock time"
+HOMEPAGE="https://erratique.ch/software/mtime/
+ https://github.com/dbuenzli/mtime/"
+SRC_URI="https://erratique.ch/software/mtime/releases/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="dev-lang/ocaml:=[ocamlopt]"
+DEPEND="
+ ${RDEPEND}
+ dev-ml/topkg
+ dev-ml/ocamlbuild
+ dev-ml/findlib
+"
+
+src_compile() {
+ edo ocaml pkg/pkg.ml build \
+ --tests $(usex test true false)
+}
+
+src_test() {
+ edo ocaml pkg/pkg.ml test
+}
diff --git a/dev-ml/num/Manifest b/dev-ml/num/Manifest
new file mode 100644
index 000000000000..5b66a8797dcb
--- /dev/null
+++ b/dev-ml/num/Manifest
@@ -0,0 +1,2 @@
+DIST num-1.5.tar.gz 67633 BLAKE2B 848dc8174bcdc5756ab036f9ec9cc9f6727d7d8e1079bd1c37611c7cc73939ce5cead4ba6acf4b6a1789640e824afc78faa43e24825e1f4cca37e3a76946e4f1 SHA512 110dd01140c1c96f5f067aa824bb63f74a26411dcaa65aaf04cb6c44b116ca02aaab9505f431c66964388ce4a31d86da5928b4c0e5557800e834de80bed46495
+DIST num-1.6.tar.gz 67748 BLAKE2B cd1a714c39971233c9fd085457fb4706874c75d2046d6225ea6b7bf192010ee95d31ddbb021ffe640c6e492bb426a8df1c41752ffa462faeb6518a53070230ec SHA512 5cb32dfa9a9f0ad375bfd89079e9b1422979f3c089f61ef2300ad9cc64fb1fc25ed1f86b0267eb017f12ae41a574a959df5bfa39ab22c2be2f1ac84c3c671bdf
diff --git a/dev-ml/num/files/num-1.6-META-directory.patch b/dev-ml/num/files/num-1.6-META-directory.patch
new file mode 100644
index 000000000000..b7f32bcd7b15
--- /dev/null
+++ b/dev-ml/num/files/num-1.6-META-directory.patch
@@ -0,0 +1,10 @@
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -48,6 +48,7 @@ META.num:
+ @echo 'version = "$(VERSION)"' >> $@
+ @echo 'description = "Arbitrary-precision rational arithmetic"' >> $@
+ @echo 'package "core" (' >> $@
++ @echo ' directory = ".."' >> $@
+ @echo ' version = "$(VERSION)"' >> $@
+ @echo ' browse_interfaces = ""' >> $@
+ @echo ' archive(byte) = "nums.cma"' >> $@
diff --git a/dev-ml/num/files/num-1.6-META.patch b/dev-ml/num/files/num-1.6-META.patch
new file mode 100644
index 000000000000..b10462c9ced4
--- /dev/null
+++ b/dev-ml/num/files/num-1.6-META.patch
@@ -0,0 +1,14 @@
+--- a/src/Makefile 2025-08-24 20:37:54.276261621 +0200
++++ b/src/Makefile 2025-08-24 20:34:04.708721094 +0200
+@@ -156,9 +156,9 @@
+
+ install: num-top-install
+ $(INSTALL_DIR) $(DESTDIR)$(STDLIBDIR)
+- cp META.num META
++ mv META.num META
+ $(OCAMLFIND) install num META
+- rm -f META
++ mv META META.num
+ $(INSTALL_DATA) $(TOINSTALL) $(DESTDIR)$(STDLIBDIR)
+ ifeq "$(NATDYNLINK)" "true"
+ $(INSTALL_DLL) $(TOINSTALL_CMXS) $(DESTDIR)$(STDLIBDIR)
diff --git a/dev-ml/num/metadata.xml b/dev-ml/num/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/num/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/num/num-1.5.ebuild b/dev-ml/num/num-1.5.ebuild
new file mode 100644
index 000000000000..f6c686a37703
--- /dev/null
+++ b/dev-ml/num/num-1.5.ebuild
@@ -0,0 +1,50 @@
+# Copyright 2020-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Not using dune for now, bug #775119
+inherit findlib
+
+DESCRIPTION="Library for arbitrary-precision integer and rational arithmetic"
+HOMEPAGE="https://github.com/ocaml/num"
+SRC_URI="https://github.com/ocaml/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+RDEPEND="dev-lang/ocaml:=[ocamlopt?]"
+BDEPEND="${RDEPEND}"
+DEPEND="dev-ml/findlib:=[ocamlopt?]"
+
+src_compile() {
+ emake CFLAGS="${CFLAGS}" \
+ NATDYNLINK="$(usex ocamlopt true false)" \
+ NATIVE_COMPILER="$(usex ocamlopt true false)" \
+ -C src num_top.ml
+ emake CFLAGS="${CFLAGS}" \
+ NATDYNLINK="$(usex ocamlopt true false)" \
+ NATIVE_COMPILER="$(usex ocamlopt true false)"
+}
+
+src_test() {
+ # Override needed to not use dune
+ emake test
+}
+
+src_install() {
+ # OCaml generates textrels on 32-bit arches
+ if use arm || use ppc || use x86 ; then
+ export QA_TEXTRELS='.*'
+ fi
+ findlib_src_install \
+ NATDYNLINK="$(usex ocamlopt true false)" \
+ NATIVE_COMPILER="$(usex ocamlopt true false)"
+
+ if has_version ">=dev-ml/findlib-1.9" ; then
+ # See bug #803275
+ rm "${ED}/usr/$(get_libdir)/ocaml/num-top/META" || die
+ fi
+}
diff --git a/dev-ml/num/num-1.6-r1.ebuild b/dev-ml/num/num-1.6-r1.ebuild
new file mode 100644
index 000000000000..92e86e553ad8
--- /dev/null
+++ b/dev-ml/num/num-1.6-r1.ebuild
@@ -0,0 +1,51 @@
+# Copyright 2020-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Not using dune for now, bug #775119
+inherit findlib
+
+DESCRIPTION="Library for arbitrary-precision integer and rational arithmetic"
+HOMEPAGE="https://github.com/ocaml/num"
+SRC_URI="https://github.com/ocaml/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt"
+
+PATCHES=(
+ "${FILESDIR}/num-1.6-META-directory.patch"
+ "${FILESDIR}/num-1.6-META.patch"
+)
+
+src_compile() {
+ emake CFLAGS="${CFLAGS}" \
+ NATDYNLINK="$(usex ocamlopt true false)" \
+ NATIVE_COMPILER="$(usex ocamlopt true false)" \
+ -C src num_top.ml
+ emake CFLAGS="${CFLAGS}" \
+ NATDYNLINK="$(usex ocamlopt true false)" \
+ NATIVE_COMPILER="$(usex ocamlopt true false)"
+}
+
+src_test() {
+ # Override needed to not use dune
+ emake test
+}
+
+src_install() {
+ # OCaml generates textrels on 32-bit arches
+ if use arm || use ppc || use x86 ; then
+ export QA_TEXTRELS='.*'
+ fi
+ findlib_src_install \
+ NATDYNLINK="$(usex ocamlopt true false)" \
+ NATIVE_COMPILER="$(usex ocamlopt true false)"
+
+ if has_version ">=dev-ml/findlib-1.9" ; then
+ # See bug #803275
+ rm "${ED}/usr/$(get_libdir)/ocaml/num-top/META" || die
+ fi
+}
diff --git a/dev-ml/ocaml-augeas/Manifest b/dev-ml/ocaml-augeas/Manifest
new file mode 100644
index 000000000000..d68bd91cd260
--- /dev/null
+++ b/dev-ml/ocaml-augeas/Manifest
@@ -0,0 +1,2 @@
+DIST ocaml-augeas-0.5.tar.gz 59908 BLAKE2B f9f51afa0aec82e95d7bd81811e93e10587f1f2c1905338c0bbe47de61d983c24c0e5ab77aff1ca319834bf2199040a482b453177fa3c774e24ab72c3a534c14 SHA512 dfbad89790c6b5ada0e1239d002cb61a56a15350b2687d0987e0c61108d905e0c03756c08db7a3121eac3966fbeed86500e6f3c3c416cea2b974d9f50b8adabf
+DIST ocaml-augeas-0.6.tar.gz 65180 BLAKE2B d9959e1fbf5ceafabeb76e697abc405c31cffc4e085138613fa067b6e5a482e1fb9fe28b24d90b819cd9531e09d46e6dc0babf1c63dce3170a217631d6eb2487 SHA512 e747f5c09d3821b41d98e3f12c8dfe9bb13a69d6ccaaf954f4bb33e8e4d9d62603ae26fe9f93f10b2705872526b1863a1c20e0c8a53858fdf60f8cb8cbf50b7a
diff --git a/dev-ml/ocaml-augeas/files/ocaml-augeas-0.6-flags.patch b/dev-ml/ocaml-augeas/files/ocaml-augeas-0.6-flags.patch
new file mode 100644
index 000000000000..931324e5046d
--- /dev/null
+++ b/dev-ml/ocaml-augeas/files/ocaml-augeas-0.6-flags.patch
@@ -0,0 +1,21 @@
+http://git.annexia.org/?p=ocaml-augeas.git;a=patch;h=56c0602e972f1fae336198eb9587d71f1e36daff
+
+From 56c0602e972f1fae336198eb9587d71f1e36daff Mon Sep 17 00:00:00 2001
+From: "Richard W.M. Jones" <rjones@redhat.com>
+Date: Tue, 20 Aug 2019 15:06:57 +0100
+Subject: [PATCH] Use ocamlopt -g option.
+
+Originally from Fedora.
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -34,8 +34,8 @@ LIBS = @AUGEAS_LIBS@ @LIBXML2_LIBS@ @LIBS@
+
+ OCAMLCFLAGS = -g
+ OCAMLCPACKAGES =
+-OCAMLOPTFLAGS =
+-OCAMLOPTPACKAGES =
++OCAMLOPTFLAGS = $(OCAMLCFLAGS)
++OCAMLOPTPACKAGES = $(OCAMLCPACKAGES)
+
+ OCAMLDOCFLAGS = -html -sort
+
diff --git a/dev-ml/ocaml-augeas/files/ocaml-augeas-0.6-ocaml-4.09.patch b/dev-ml/ocaml-augeas/files/ocaml-augeas-0.6-ocaml-4.09.patch
new file mode 100644
index 000000000000..937f1bb9c799
--- /dev/null
+++ b/dev-ml/ocaml-augeas/files/ocaml-augeas-0.6-ocaml-4.09.patch
@@ -0,0 +1,28 @@
+http://git.annexia.org/?p=ocaml-augeas.git;a=commit;h=1cf5aef99b26a46529ca797547c0b49627fffe78
+https://bugs.gentoo.org/750209
+
+From 1cf5aef99b26a46529ca797547c0b49627fffe78 Mon Sep 17 00:00:00 2001
+From: "Richard W.M. Jones" <rjones@redhat.com>
+Date: Sat, 7 Dec 2019 11:08:54 +0000
+Subject: [PATCH] caml_named_value returns const value pointer in OCaml 4.09+
+
+--- a/augeas-c.c
++++ b/augeas-c.c
+@@ -86,7 +86,7 @@ static const int error_map_len = sizeof error_map / sizeof error_map[0];
+ static void
+ raise_error_and_maybe_close (augeas_t t, const char *msg, bool close_handle)
+ {
+- value *exn = caml_named_value ("Augeas.Error");
++ const value *exn = caml_named_value ("Augeas.Error");
+ value args[5];
+ const int code = aug_error (t);
+ const char *aug_err_msg;
+@@ -132,7 +132,7 @@ raise_error_and_maybe_close (augeas_t t, const char *msg, bool close_handle)
+ static void
+ raise_init_error (const char *msg)
+ {
+- value *exn = caml_named_value ("Augeas.Error");
++ const value *exn = caml_named_value ("Augeas.Error");
+ value args[5];
+
+ args[0] = caml_alloc (1, 0);
diff --git a/dev-ml/ocaml-augeas/metadata.xml b/dev-ml/ocaml-augeas/metadata.xml
new file mode 100644
index 000000000000..7f3282a55f41
--- /dev/null
+++ b/dev-ml/ocaml-augeas/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>prometheanfire@gentoo.org</email>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocaml-augeas/ocaml-augeas-0.5.ebuild b/dev-ml/ocaml-augeas/ocaml-augeas-0.5.ebuild
new file mode 100644
index 000000000000..589285f4c39f
--- /dev/null
+++ b/dev-ml/ocaml-augeas/ocaml-augeas-0.5.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit findlib
+
+DESCRIPTION="Ocaml bindings for Augeas"
+HOMEPAGE="https://augeas.net/"
+#SRC_URI="https://augeas.net/download/ocaml/${P}.tar.gz"
+SRC_URI="https://people.redhat.com/~rjones/augeas/files/${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+DEPEND="app-admin/augeas
+ dev-ml/ocaml-autoconf
+ dev-ml/findlib
+ dev-lang/ocaml[ocamlopt]"
+RDEPEND="${DEPEND}"
+
+src_install() {
+ findlib_src_install
+}
diff --git a/dev-ml/ocaml-augeas/ocaml-augeas-0.6-r2.ebuild b/dev-ml/ocaml-augeas/ocaml-augeas-0.6-r2.ebuild
new file mode 100644
index 000000000000..65f06ffd8d48
--- /dev/null
+++ b/dev-ml/ocaml-augeas/ocaml-augeas-0.6-r2.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dot-a findlib
+
+DESCRIPTION="Ocaml bindings for Augeas"
+HOMEPAGE="https://augeas.net/"
+#SRC_URI="https://augeas.net/download/ocaml/${P}.tar.gz"
+SRC_URI="https://people.redhat.com/~rjones/augeas/files/${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+DEPEND="
+ app-admin/augeas
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ dev-ml/findlib
+ dev-ml/ocaml-autoconf
+ dev-lang/ocaml[ocamlopt]
+"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-flags.patch
+ "${FILESDIR}"/${P}-ocaml-4.09.patch
+)
+
+src_configure() {
+ lto-guarantee-fat
+ default
+}
+
+src_compile() {
+ emake -j1
+}
+
+src_install() {
+ findlib_src_install
+ strip-lto-bytecode
+}
diff --git a/dev-ml/ocaml-autoconf/Manifest b/dev-ml/ocaml-autoconf/Manifest
new file mode 100644
index 000000000000..49d535a89364
--- /dev/null
+++ b/dev-ml/ocaml-autoconf/Manifest
@@ -0,0 +1 @@
+DIST ocaml-autoconf-1.1.tar.gz 10987 BLAKE2B 830a5f5055866054fe251a5e67aad51985b047c1fa8f233453cea95cbc2a41c76e89bc1cf61c56562b0f2880fd6a40695358aea8c36a13df89f7f7ece2309e54 SHA512 ee99766df98b003a3caf33d1109fb0e0c068cecd16a4ea77f39adab910df3198981de45302bdedf17d9ae6b4801a1c45ce5a5f47860d789ba06027910aeea3a5
diff --git a/dev-ml/ocaml-autoconf/metadata.xml b/dev-ml/ocaml-autoconf/metadata.xml
new file mode 100644
index 000000000000..5f33304011d5
--- /dev/null
+++ b/dev-ml/ocaml-autoconf/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocaml-autoconf/ocaml-autoconf-1.1-r1.ebuild b/dev-ml/ocaml-autoconf/ocaml-autoconf-1.1-r1.ebuild
new file mode 100644
index 000000000000..a69cc73edf6b
--- /dev/null
+++ b/dev-ml/ocaml-autoconf/ocaml-autoconf-1.1-r1.ebuild
@@ -0,0 +1,17 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="autoconf macros to support configuration of OCaml programs and libraries"
+HOMEPAGE="http://ocaml-autoconf.forge.ocamlcore.org/"
+SRC_URI="http://forge.ocamlcore.org/frs/download.php/282/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 x86"
+
+src_install() {
+ emake DESTDIR="${D}" prefix="/usr" install
+ dodoc README
+}
diff --git a/dev-ml/ocaml-base64/Manifest b/dev-ml/ocaml-base64/Manifest
new file mode 100644
index 000000000000..32d5faed1638
--- /dev/null
+++ b/dev-ml/ocaml-base64/Manifest
@@ -0,0 +1,3 @@
+DIST ocaml-base64-3.5.0.tar.gz 18888 BLAKE2B e35d6331f163a066169455ea3dac304cedd7ca47fac0a2cbda26b8bd9620b4e49e144d5a06a8a2c6085501e531b2be98f6b24002880d83d6d57025ee055e0887 SHA512 a3886701943a9b165a74e45f66c3d8279b381927774217f5e042494811bc17a08f8933292335d4b76f01c6b1d3c496b4cfca650faa5848ddbf6150ac87386038
+DIST ocaml-base64-3.5.1.tar.gz 18986 BLAKE2B 797ace8ad35099dd56871564862804a492551b580f46d561abce8a18812296e3f3629f1845007660c388291cf3d420144dfdce556ccf5c50e0b169efd680d586 SHA512 d1d4e2403cf4f58bfe87150c7cc444a431f0ac53ee9fc85a4d64983e2d85f99e0bd35b9267231b1a40eaf5e4312797460dd1f6dcfc38e3b391e3dfe746878125
+DIST ocaml-base64-3.5.2.tar.gz 18911 BLAKE2B e6fe883538c12e2b848f6518eb75d316c1c09535df5ebe4b7838eb191dfc62625ccb5badbae3005a5ad18732306f182160b4811396305e132df892fc43d92346 SHA512 123d9f75e44ac07199d47e282c9d50dbc695ea88f9957820abfe39cbbab893699347ae75a71429dd468332a6c3a173937c43744d5212e1785e720c1820b954ec
diff --git a/dev-ml/ocaml-base64/metadata.xml b/dev-ml/ocaml-base64/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ocaml-base64/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocaml-base64/ocaml-base64-3.5.0.ebuild b/dev-ml/ocaml-base64/ocaml-base64-3.5.0.ebuild
new file mode 100644
index 000000000000..95622eefd12b
--- /dev/null
+++ b/dev-ml/ocaml-base64/ocaml-base64-3.5.0.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DUNE_PKG_NAME="base64"
+inherit dune
+
+DESCRIPTION="Library for radix-64 representation (de)coding"
+HOMEPAGE="https://github.com/mirage/ocaml-base64"
+SRC_URI="https://github.com/mirage/ocaml-base64/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+DEPEND="test? ( dev-ml/rresult dev-ml/bos dev-ml/alcotest )"
diff --git a/dev-ml/ocaml-base64/ocaml-base64-3.5.1.ebuild b/dev-ml/ocaml-base64/ocaml-base64-3.5.1.ebuild
new file mode 100644
index 000000000000..7802eb2e1c36
--- /dev/null
+++ b/dev-ml/ocaml-base64/ocaml-base64-3.5.1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DUNE_PKG_NAME="base64"
+inherit dune
+
+DESCRIPTION="Library for radix-64 representation (de)coding"
+HOMEPAGE="https://github.com/mirage/ocaml-base64"
+SRC_URI="https://github.com/mirage/ocaml-base64/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 ~riscv x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+DEPEND="test? ( dev-ml/rresult dev-ml/bos dev-ml/alcotest )"
diff --git a/dev-ml/ocaml-base64/ocaml-base64-3.5.2.ebuild b/dev-ml/ocaml-base64/ocaml-base64-3.5.2.ebuild
new file mode 100644
index 000000000000..9f405725c24f
--- /dev/null
+++ b/dev-ml/ocaml-base64/ocaml-base64-3.5.2.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DUNE_PKG_NAME="base64"
+inherit dune
+
+DESCRIPTION="Library for radix-64 representation (de)coding"
+HOMEPAGE="https://github.com/mirage/ocaml-base64"
+SRC_URI="https://github.com/mirage/ocaml-base64/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+DEPEND="test? ( dev-ml/rresult dev-ml/bos dev-ml/alcotest )"
diff --git a/dev-ml/ocaml-compiler-libs/Manifest b/dev-ml/ocaml-compiler-libs/Manifest
new file mode 100644
index 000000000000..2b03304ae31f
--- /dev/null
+++ b/dev-ml/ocaml-compiler-libs/Manifest
@@ -0,0 +1,3 @@
+DIST ocaml-compiler-libs-0.12.3.tar.gz 4982 BLAKE2B 83432cbb2707964f025b294a84cdcce77137156e409d85ce8615dd6e9a26ad085cd5de178ebeb7520cd95b19a15b3cfbf7ef9567d165b55e07850a231b68371c SHA512 748ae11fe4cedb12d153ef2e712a9899f6a7ab4a35ddb7c95c0ae25af979c3edf274046745dddb2253fc06be41d5b0029f11a5a823a17d1ee680ffb29c4bdc89
+DIST ocaml-compiler-libs-0.12.4.tar.gz 5435 BLAKE2B 2c7b3f79315945d094dd4102da748dda55265bdd36753606ec03eef6a39eb385b84e7bfd0f43a04583271bf7c53b15481e9dcbb48c362d472bb3f740ec48853a SHA512 cf08e8d4bf25fff26a16a05036f08247176f4845d9d9ada85944c3fa89b6df9a5092d7a1025415a3b2ce00dd45b544cc82247648cf3952be2304e5d9ebab121d
+DIST ocaml-compiler-libs-0.17.0.tar.gz 5006 BLAKE2B c5f5f3e257167fad012135a76a82d6c2609a7ba6956f2380c8d19fc5f8360a2110b1cfcec9eecbe779c5c155d3b593791a084f588c6c105246adf30e2d1a1d63 SHA512 c5cd418b0eb74e00c3f63235754bbdb3a3328ac743d6ae885424d8c50b4edaa7068572e689cb3456d222793283927f2984a1ff840b1bc3817f810b5314faf897
diff --git a/dev-ml/ocaml-compiler-libs/metadata.xml b/dev-ml/ocaml-compiler-libs/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ocaml-compiler-libs/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocaml-compiler-libs/ocaml-compiler-libs-0.12.3-r2.ebuild b/dev-ml/ocaml-compiler-libs/ocaml-compiler-libs-0.12.3-r2.ebuild
new file mode 100644
index 000000000000..9592659c2a9f
--- /dev/null
+++ b/dev-ml/ocaml-compiler-libs/ocaml-compiler-libs-0.12.3-r2.ebuild
@@ -0,0 +1,17 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="Repackage the OCaml compiler libs so they do not expose everything at toplevel"
+HOMEPAGE="https://github.com/janestreet/ocaml-compiler-libs"
+SRC_URI="https://github.com/janestreet/ocaml-compiler-libs/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 x86"
+IUSE="+ocamlopt"
+
+RDEPEND="<dev-lang/ocaml-5"
diff --git a/dev-ml/ocaml-compiler-libs/ocaml-compiler-libs-0.12.4-r2.ebuild b/dev-ml/ocaml-compiler-libs/ocaml-compiler-libs-0.12.4-r2.ebuild
new file mode 100644
index 000000000000..ec7d5ce7925a
--- /dev/null
+++ b/dev-ml/ocaml-compiler-libs/ocaml-compiler-libs-0.12.4-r2.ebuild
@@ -0,0 +1,17 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="Repackage the OCaml compiler libs so they do not expose everything at toplevel"
+HOMEPAGE="https://github.com/janestreet/ocaml-compiler-libs"
+SRC_URI="https://github.com/janestreet/ocaml-compiler-libs/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+RDEPEND="<dev-lang/ocaml-5"
diff --git a/dev-ml/ocaml-compiler-libs/ocaml-compiler-libs-0.17.0.ebuild b/dev-ml/ocaml-compiler-libs/ocaml-compiler-libs-0.17.0.ebuild
new file mode 100644
index 000000000000..f273051c7a1f
--- /dev/null
+++ b/dev-ml/ocaml-compiler-libs/ocaml-compiler-libs-0.17.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Repackage the OCaml compiler libs so they do not expose everything at toplevel"
+HOMEPAGE="https://github.com/janestreet/ocaml-compiler-libs"
+SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt"
+
+BDEPEND="
+ >=dev-ml/dune-3.11
+ >=dev-lang/ocaml-5.2.0
+"
diff --git a/dev-ml/ocaml-crunch/Manifest b/dev-ml/ocaml-crunch/Manifest
new file mode 100644
index 000000000000..21489f3e68d8
--- /dev/null
+++ b/dev-ml/ocaml-crunch/Manifest
@@ -0,0 +1,2 @@
+DIST ocaml-crunch-3.3.1.tar.gz 60602 BLAKE2B 8218c8ca3e0791c5e2857fae4f11b9f9bd1d6687f3b21812762de8fb11c523eceb2bb3470c637509466963bd3c7df5edc6075e79ed900449c03b7fce2b771991 SHA512 9e3fb95d9b592c6463a8c4743419bd100b06727404310089f308705b38a0d3eaa06f58eeaf8b9feef2ec506e4d7035481b3c39b38374d6c1f24903e93aec660b
+DIST ocaml-crunch-4.0.0.tar.gz 60613 BLAKE2B 31ab7464a3d63f2082d76cf225cd4abdb5266afed9857926463a02cf326ced4d65c7ab53e9c4c608b5a03b68426883837dfed8aa19774d507c203cc2ec1a7548 SHA512 1a7763c14f38dacb49c809e99c0523a6b7968bf116ea68067cb0cbfa3d2efbcb9b6411836be6baf0cc9fcc3b57fd18634f5e635455c8183bbcfcb5b6a4b2a61c
diff --git a/dev-ml/ocaml-crunch/metadata.xml b/dev-ml/ocaml-crunch/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ocaml-crunch/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocaml-crunch/ocaml-crunch-3.3.1.ebuild b/dev-ml/ocaml-crunch/ocaml-crunch-3.3.1.ebuild
new file mode 100644
index 000000000000..02a2c8bbce48
--- /dev/null
+++ b/dev-ml/ocaml-crunch/ocaml-crunch-3.3.1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+DUNE_PKG_NAME=crunch
+inherit dune
+
+DESCRIPTION="Convert a filesystem into a static OCaml module"
+HOMEPAGE="https://github.com/mirage/ocaml-crunch"
+SRC_URI="https://github.com/mirage/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+DEPEND="
+ dev-ml/cmdliner:=[ocamlopt?]
+ dev-ml/ptime:=[ocamlopt?]
+"
+RDEPEND="${DEPEND}"
+BDEPEND=">=dev-ml/dune-2.5"
diff --git a/dev-ml/ocaml-crunch/ocaml-crunch-4.0.0.ebuild b/dev-ml/ocaml-crunch/ocaml-crunch-4.0.0.ebuild
new file mode 100644
index 000000000000..5b638d195fc3
--- /dev/null
+++ b/dev-ml/ocaml-crunch/ocaml-crunch-4.0.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2024-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+DUNE_PKG_NAME=crunch
+inherit dune
+
+DESCRIPTION="Convert a filesystem into a static OCaml module"
+HOMEPAGE="https://github.com/mirage/ocaml-crunch"
+SRC_URI="https://github.com/mirage/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+DEPEND="
+ dev-ml/cmdliner:=[ocamlopt?]
+ dev-ml/ptime:=[ocamlopt?]
+"
+RDEPEND="${DEPEND}"
+BDEPEND=">=dev-ml/dune-2.5"
diff --git a/dev-ml/ocaml-ctypes/Manifest b/dev-ml/ocaml-ctypes/Manifest
new file mode 100644
index 000000000000..4cf79bd17888
--- /dev/null
+++ b/dev-ml/ocaml-ctypes/Manifest
@@ -0,0 +1,2 @@
+DIST ocaml-ctypes-0.23.0.tar.gz 200133 BLAKE2B c079c64584a2293ee0ef3d3a2d08472728ff3891b65773a97c23af0039dd4693b3c909d969ac006c976bad9af8b2743dfa03acddb8ed74f2405e60ef1cdb0f40 SHA512 0c287cd3162d092b37bd6d4b24c196d41c93b792c4aa77938fde60f5dbc7eedde588097493a645af9bffc0ed722eadd0fa90e04b04d5e36e78e6467ae9e4baf8
+DIST ocaml-ctypes-0.24.0.tar.gz 200058 BLAKE2B 1d376c2937195edd0b2a89e0b8e5d58485039c9d546fd668de2562c3b62c42d8be023b171430ced6aacdbe066bfda8013d12be401b75f6d57bc9a792ccac90a5 SHA512 0fa640f00e2960a8ceae3bb9835c5318d3718e748f40adc3f0a50dcb9b38a696de2442f2e75a6ce2356bab7e7eb5edea5486a757e553c17207191a49ceaa307d
diff --git a/dev-ml/ocaml-ctypes/metadata.xml b/dev-ml/ocaml-ctypes/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ocaml-ctypes/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocaml-ctypes/ocaml-ctypes-0.23.0.ebuild b/dev-ml/ocaml-ctypes/ocaml-ctypes-0.23.0.ebuild
new file mode 100644
index 000000000000..fb45356a2a36
--- /dev/null
+++ b/dev-ml/ocaml-ctypes/ocaml-ctypes-0.23.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DUNE_PKG_NAME=ctypes
+inherit dune
+
+DESCRIPTION="Library for binding to C libraries using pure OCaml"
+HOMEPAGE="https://github.com/yallop/ocaml-ctypes/"
+SRC_URI="https://github.com/yallop/ocaml-ctypes/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-libs/libffi-3.3_rc0:=
+ dev-ml/bigarray-compat:=
+ dev-ml/integers:=
+ dev-ml/dune-configurator:=
+"
+DEPEND="${RDEPEND}
+ test? ( dev-ml/ounit2 dev-ml/lwt )"
+REQUIRED_USE="ocamlopt"
+
+src_install() {
+ dune-install ctypes ctypes-foreign
+}
diff --git a/dev-ml/ocaml-ctypes/ocaml-ctypes-0.24.0.ebuild b/dev-ml/ocaml-ctypes/ocaml-ctypes-0.24.0.ebuild
new file mode 100644
index 000000000000..03e53126e1af
--- /dev/null
+++ b/dev-ml/ocaml-ctypes/ocaml-ctypes-0.24.0.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DUNE_PKG_NAME=ctypes
+inherit dune
+
+DESCRIPTION="Library for binding to C libraries using pure OCaml"
+HOMEPAGE="https://github.com/yallop/ocaml-ctypes/"
+SRC_URI="https://github.com/yallop/ocaml-ctypes/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-libs/libffi-3.3_rc0:=
+ dev-ml/integers:=
+ dev-ml/dune-configurator:=
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ dev-ml/ounit2
+ dev-ml/lwt
+ )
+"
+REQUIRED_USE="ocamlopt"
+
+src_install() {
+ dune-install ctypes ctypes-foreign
+}
diff --git a/dev-ml/ocaml-doc/Manifest b/dev-ml/ocaml-doc/Manifest
new file mode 100644
index 000000000000..490aeca43b98
--- /dev/null
+++ b/dev-ml/ocaml-doc/Manifest
@@ -0,0 +1 @@
+DIST ocaml-4.05-refman-html.tar.gz 882419 BLAKE2B 01ecd83c4d517a98c11564303bd31806fdd75c71f4492e25a71568941b3fb0b527944399fdd375a690557cf718c98f522577de37a946a5dfebf363d88962c944 SHA512 84688b06e61904345bc961d7244a74427025879c8e7365073887d76a560e5a373227d75c9f645f7bc16adbd05ea6a58918738beb13b5001cedc6b8289ed70bde
diff --git a/dev-ml/ocaml-doc/metadata.xml b/dev-ml/ocaml-doc/metadata.xml
new file mode 100644
index 000000000000..5f33304011d5
--- /dev/null
+++ b/dev-ml/ocaml-doc/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocaml-doc/ocaml-doc-4.05.ebuild b/dev-ml/ocaml-doc/ocaml-doc-4.05.ebuild
new file mode 100644
index 000000000000..b15602118ee4
--- /dev/null
+++ b/dev-ml/ocaml-doc/ocaml-doc-4.05.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="Ocaml reference manual (html)"
+HOMEPAGE="https://caml.inria.fr/pub/docs/manual-ocaml/"
+SRC_URI="https://caml.inria.fr/pub/distrib/ocaml-${PV}/ocaml-${PV}-refman-html.tar.gz"
+S="${WORKDIR}"/htmlman
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~ppc x86"
+
+src_install() {
+ docinto html
+ dodoc -r *
+}
+
+pkg_postinst() {
+ elog "This manual is available online at https://caml.inria.fr/pub/docs/manual-ocaml/"
+}
diff --git a/dev-ml/ocaml-expat/Manifest b/dev-ml/ocaml-expat/Manifest
new file mode 100644
index 000000000000..95aaf6ed4d51
--- /dev/null
+++ b/dev-ml/ocaml-expat/Manifest
@@ -0,0 +1 @@
+DIST ocaml-expat-1.3.0.tar.gz 58331 BLAKE2B 4d56dd1354a31095afada7e4b0ccc9d1eb7fae4ed45f579d6b2eeb9366df7c0f5ae58680d4e917185bbce2e5e7c957f266cb4e89b7eb1e943f0fb9f68c28f94d SHA512 72a59c982179ebc2cbd4c0659ec81c1c7422de78f9fff4bd9feebda8739d3a50d2840bb5f058e075dd63a2d1af35727e04315361febca3af6c8605ee52e27498
diff --git a/dev-ml/ocaml-expat/files/ocaml-expat-1.1.0-cc.patch b/dev-ml/ocaml-expat/files/ocaml-expat-1.1.0-cc.patch
new file mode 100644
index 000000000000..724d9935baac
--- /dev/null
+++ b/dev-ml/ocaml-expat/files/ocaml-expat-1.1.0-cc.patch
@@ -0,0 +1,11 @@
+--- a/Makefile 2022-01-23 19:29:56.516323939 +0100
++++ b/Makefile 2022-01-23 19:30:07.289143969 +0100
+@@ -41,7 +41,7 @@
+ allopt: $(OPT_TARGETS)
+
+ depend: *.c *.ml *.mli
+- gcc -I $(OCAMLDIR) -MM *.c > depend
++ $(CC) -I $(OCAMLDIR) -MM *.c > depend
+ $(OCAMLDEP) *.mli *.ml >> depend
+
+ ## Library creation
diff --git a/dev-ml/ocaml-expat/files/ounit2.patch b/dev-ml/ocaml-expat/files/ounit2.patch
new file mode 100644
index 000000000000..5cbcc4e12b98
--- /dev/null
+++ b/dev-ml/ocaml-expat/files/ounit2.patch
@@ -0,0 +1,17 @@
+Index: ocaml-expat-1.1.0/Makefile
+===================================================================
+--- ocaml-expat-1.1.0.orig/Makefile
++++ ocaml-expat-1.1.0/Makefile
+@@ -85,10 +85,10 @@ test: unittest
+ testopt: unittest.opt
+ ./unittest.opt
+ unittest: all unittest.ml
+- $(OCAMLFIND) ocamlc -o unittest -package oUnit -ccopt -L. -linkpkg \
++ $(OCAMLFIND) ocamlc -o unittest -package ounit2 -ccopt -L. -linkpkg \
+ $(ARCHIVE) unittest.ml
+ unittest.opt: allopt unittest.ml
+- $(OCAMLFIND) ocamlopt -o unittest.opt -package oUnit -ccopt -L. -linkpkg \
++ $(OCAMLFIND) ocamlopt -o unittest.opt -package ounit2 -ccopt -L. -linkpkg \
+ $(XARCHIVE) unittest.ml
+
+ ## Cleaning up
diff --git a/dev-ml/ocaml-expat/metadata.xml b/dev-ml/ocaml-expat/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ocaml-expat/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocaml-expat/ocaml-expat-1.3.0.ebuild b/dev-ml/ocaml-expat/ocaml-expat-1.3.0.ebuild
new file mode 100644
index 000000000000..0ef61122e622
--- /dev/null
+++ b/dev-ml/ocaml-expat/ocaml-expat-1.3.0.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit findlib
+
+IUSE="doc +ocamlopt test"
+RESTRICT="!test? ( test )"
+
+DESCRIPTION="OCaml bindings for expat"
+SRC_URI="https://github.com/whitequark/ocaml-expat/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+HOMEPAGE="https://github.com/whitequark/ocaml-expat"
+
+RDEPEND="dev-libs/expat
+ >=dev-lang/ocaml-4.14.1:=[ocamlopt?]"
+
+DEPEND="${RDEPEND}
+ test? ( dev-ml/ounit2 )"
+
+SLOT="0/${PV}"
+LICENSE="MIT"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+PATCHES=(
+ "${FILESDIR}/ounit2.patch"
+ "${FILESDIR}/${PN}-1.1.0-cc.patch"
+)
+
+src_compile() {
+ emake depend
+ emake all
+ if use ocamlopt; then
+ emake allopt
+ fi
+ if use doc; then
+ emake doc
+ fi
+}
+
+src_test() {
+ emake test
+ if use ocamlopt; then
+ emake testopt
+ fi
+}
+src_install() {
+ findlib_src_preinst
+ emake install
+
+ if use doc ; then
+ docinto html
+ dodoc -r doc/*
+ fi
+ dodoc README
+}
diff --git a/dev-ml/ocaml-fileutils/Manifest b/dev-ml/ocaml-fileutils/Manifest
new file mode 100644
index 000000000000..1f390b53986b
--- /dev/null
+++ b/dev-ml/ocaml-fileutils/Manifest
@@ -0,0 +1,3 @@
+DIST ocaml-fileutils-0.6.3.tar.bz2 43157 BLAKE2B a9adf17d028abd664dbdec3fefa301a6b502941a6da4ef9c3ef02b876f187d224e404f6a9ffb5460035ba475154c60109a5218cb8b9bb36153ca791f8d218e7d SHA512 2c5e75b894e9f5e3b003d61977a87f5c6964a89d844949eedc55f97c5875cc52052182420bbb4e73925d306479c66400df74e4adfccc5b2102347d13e99505cf
+DIST ocaml-fileutils-0.6.4.tar.bz2 43144 BLAKE2B e0024b93c17d11c9c3068da3141c7676bf70feb21fc886d79f793396194f6d5052be887734decd29fbd524d127e0b8afcd41790c9f378e000fcb92cd73e0a2ce SHA512 7053f8d92655d5631f1ec61ab7f9e3f6e3afedbe435038858dd9a026b9c769c6182afaa436491a398e7c4513b384a609e016718e030855996b2d9d54b461bd19
+DIST ocaml-fileutils-0.6.6.tar.bz2 43979 BLAKE2B 2b0ad5ccaddec79a741a7e3cb3eb362eee47c094d8e40b5e0a0b0ca3bfdc4eca9d0e385e720f9e170751ea430d8a5634cd6be3ae8516e3b76325d8faae909613 SHA512 ecc38b1577ab108bd24d1e9f0e83596254e542eefb37020dedcff7ca0109e562411cbb9806fbc6f88f4166569bf061a444971388c26950ec02dfc48b35daed90
diff --git a/dev-ml/ocaml-fileutils/files/ocaml-fileutils-0.6.4-dune.patch b/dev-ml/ocaml-fileutils/files/ocaml-fileutils-0.6.4-dune.patch
new file mode 100644
index 000000000000..5a0eb479bdbc
--- /dev/null
+++ b/dev-ml/ocaml-fileutils/files/ocaml-fileutils-0.6.4-dune.patch
@@ -0,0 +1,8 @@
+--- a/src/lib/fileutils/dune
++++ b/src/lib/fileutils/dune
+@@ -30,4 +30,4 @@
+ fileUtilWHICH
+ unixPath
+ win32Path)
+- (libraries unix seq stdlib-shims))
++ (libraries unix stdlib-shims))
diff --git a/dev-ml/ocaml-fileutils/metadata.xml b/dev-ml/ocaml-fileutils/metadata.xml
new file mode 100644
index 000000000000..c5607cd409f6
--- /dev/null
+++ b/dev-ml/ocaml-fileutils/metadata.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <longdescription>
+ POSIX-like file manipulation functions inspired by
+ GNU coreutils and filename manipulation functions
+ for OCaml.
+ </longdescription>
+ <maintainer type="person" proxied="yes">
+ <email>rkitover@gmail.com</email>
+ <name>Rafael Kitover</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <use>
+ <flag name="ocamlopt">
+ Whether the OCaml native code compiler is used. Must be set globally and
+ match <pkg>dev-lang/ocaml</pkg>.
+ </flag>
+ </use>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocaml-fileutils/ocaml-fileutils-0.6.3-r1.ebuild b/dev-ml/ocaml-fileutils/ocaml-fileutils-0.6.3-r1.ebuild
new file mode 100644
index 000000000000..47ef18bc401e
--- /dev/null
+++ b/dev-ml/ocaml-fileutils/ocaml-fileutils-0.6.3-r1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DUNE_PKG_NAME="fileutils"
+
+inherit dune
+
+DESCRIPTION="Pure OCaml functions to manipulate real file (POSIX like) and filename"
+HOMEPAGE="https://github.com/gildor478/ocaml-fileutils"
+SRC_URI="https://github.com/gildor478/${PN}/releases/download/v${PV}/${DUNE_PKG_NAME}-v${PV}.tbz -> ${P}.tar.bz2"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0"
+KEYWORDS="amd64 ~x86"
+IUSE="+ocamlopt"
+
+DEPEND=">=dev-ml/ounit2-2.0.0
+ >=dev-ml/stdlib-shims-0.2.0"
+RDEPEND="${DEPEND}"
+
+DOCS=( "README.md" "CHANGES.md" "LICENSE.txt" )
+
+S="${WORKDIR}/${DUNE_PKG_NAME}-v${PV}"
+
+src_prepare() {
+ default
+
+ # Port to dev-ml/ounit2
+ sed -i -e 's/oUnit/ounit2/' test/dune || die
+}
diff --git a/dev-ml/ocaml-fileutils/ocaml-fileutils-0.6.4-r1.ebuild b/dev-ml/ocaml-fileutils/ocaml-fileutils-0.6.4-r1.ebuild
new file mode 100644
index 000000000000..6e899ef261b7
--- /dev/null
+++ b/dev-ml/ocaml-fileutils/ocaml-fileutils-0.6.4-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DUNE_PKG_NAME=fileutils
+
+inherit dune
+
+DESCRIPTION="Pure OCaml functions to manipulate real file (POSIX like) and filename"
+HOMEPAGE="https://github.com/gildor478/ocaml-fileutils"
+SRC_URI="https://github.com/gildor478/${PN}/releases/download/v${PV}/${DUNE_PKG_NAME}-${PV}.tbz -> ${P}.tar.bz2"
+S="${WORKDIR}"/${DUNE_PKG_NAME}-${PV}
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0"
+KEYWORDS="amd64 ~ppc64 ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+DEPEND="dev-ml/stdlib-shims:="
+RDEPEND="${DEPEND}"
+BDEPEND="test? ( dev-ml/ounit2 )"
+
+PATCHES=( "${FILESDIR}"/${P}-dune.patch )
+
+DOCS=( CHANGES.md LICENSE.txt README.md )
diff --git a/dev-ml/ocaml-fileutils/ocaml-fileutils-0.6.6.ebuild b/dev-ml/ocaml-fileutils/ocaml-fileutils-0.6.6.ebuild
new file mode 100644
index 000000000000..b62068b944e3
--- /dev/null
+++ b/dev-ml/ocaml-fileutils/ocaml-fileutils-0.6.6.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DUNE_PKG_NAME=fileutils
+
+inherit dune
+
+DESCRIPTION="Pure OCaml functions to manipulate real file (POSIX like) and filename"
+HOMEPAGE="https://github.com/gildor478/ocaml-fileutils"
+SRC_URI="https://github.com/gildor478/${PN}/releases/download/v${PV}/${DUNE_PKG_NAME}-${PV}.tbz -> ${P}.tar.bz2"
+S="${WORKDIR}"/${DUNE_PKG_NAME}-${PV}
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0"
+KEYWORDS="amd64 ~ppc64 ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+DEPEND="dev-ml/stdlib-shims:="
+RDEPEND="${DEPEND}"
+BDEPEND="test? ( dev-ml/ounit2 )"
+
+DOCS=( CHANGES.md LICENSE.txt README.md )
diff --git a/dev-ml/ocaml-gettext-camomile/Manifest b/dev-ml/ocaml-gettext-camomile/Manifest
new file mode 100644
index 000000000000..839e7295801b
--- /dev/null
+++ b/dev-ml/ocaml-gettext-camomile/Manifest
@@ -0,0 +1 @@
+DIST ocaml-gettext-0.4.2.tar.gz 110249 BLAKE2B 54a25ba9f8fb20194fdfaf651586222fab68f927ebfa711812f7c9a387ff40c19e1bf3f63124127356b32b0ca0be2c5ff4e1cdfaf5f3afe690b90c0ca96c470d SHA512 fb89be8d8d9e0ed9327b81a0c81c884ff3f1a97e46b475ef8084abded5c84a256de05d5aa0f42be94f43ab438276a4506af726b6950e4161359a9616fb5832ec
diff --git a/dev-ml/ocaml-gettext-camomile/metadata.xml b/dev-ml/ocaml-gettext-camomile/metadata.xml
new file mode 100644
index 000000000000..ff00953f26ba
--- /dev/null
+++ b/dev-ml/ocaml-gettext-camomile/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>rkitover@gmail.com</email>
+ <name>Rafael Kitover</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <use>
+ <flag name="ocamlopt">
+ Whether the OCaml native code compiler is used. Must be set globally and
+ match <pkg>dev-lang/ocaml</pkg>.
+ </flag>
+ </use>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocaml-gettext-camomile/ocaml-gettext-camomile-0.4.2-r1.ebuild b/dev-ml/ocaml-gettext-camomile/ocaml-gettext-camomile-0.4.2-r1.ebuild
new file mode 100644
index 000000000000..a9d71a8d2edf
--- /dev/null
+++ b/dev-ml/ocaml-gettext-camomile/ocaml-gettext-camomile-0.4.2-r1.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PN=${PN/-camomile/}
+MY_P=${P/-camomile/}
+DUNE_PKG_NAME="gettext-camomile"
+inherit dune
+
+DESCRIPTION="Support for internationalization of OCaml programs using the Camomile library"
+HOMEPAGE="https://github.com/gildor478/ocaml-gettext"
+SRC_URI="https://github.com/gildor478/ocaml-gettext/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="amd64"
+IUSE="+ocamlopt test"
+RESTRICT="test" # Tests fail
+
+BDEPEND="
+ >=dev-ml/cppo-1.6.6
+ dev-ml/dune-configurator
+"
+RDEPEND="
+ dev-ml/base:=
+ <dev-ml/camomile-2.0.0:=[ocamlopt]
+ dev-ml/ocaml-gettext:=
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ dev-ml/ounit2[ocamlopt=]
+ dev-ml/ocaml-fileutils
+ )
+"
+
+src_prepare() {
+ default
+
+ # Port to dev-ml/ounit2
+ sed -i -e 's/oUnit/ounit2/' test/{,common,test-camomile,test-stub}/dune || die
+}
diff --git a/dev-ml/ocaml-gettext-stub/Manifest b/dev-ml/ocaml-gettext-stub/Manifest
new file mode 100644
index 000000000000..f30813322ac8
--- /dev/null
+++ b/dev-ml/ocaml-gettext-stub/Manifest
@@ -0,0 +1,2 @@
+DIST ocaml-gettext-0.4.2.1.tar.gz 110349 BLAKE2B 8156d4962838ec752d17844e50f332c03e0de966b7f15a18f740039a5cc7faf4b42733129353f0bb24b9922d61dce078e77f64356a1c587d9f80d8a65cab602d SHA512 659e3b4891ec7bc17f33de072d5625df62e1d522e70ccb912969c0b87145d7d44e20b8547c6513065ca4b87e314b31f4cf8057543d2c9b40f8ee2227df5d1e67
+DIST ocaml-gettext-0.4.2.tar.gz 110249 BLAKE2B 54a25ba9f8fb20194fdfaf651586222fab68f927ebfa711812f7c9a387ff40c19e1bf3f63124127356b32b0ca0be2c5ff4e1cdfaf5f3afe690b90c0ca96c470d SHA512 fb89be8d8d9e0ed9327b81a0c81c884ff3f1a97e46b475ef8084abded5c84a256de05d5aa0f42be94f43ab438276a4506af726b6950e4161359a9616fb5832ec
diff --git a/dev-ml/ocaml-gettext-stub/metadata.xml b/dev-ml/ocaml-gettext-stub/metadata.xml
new file mode 100644
index 000000000000..ff00953f26ba
--- /dev/null
+++ b/dev-ml/ocaml-gettext-stub/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>rkitover@gmail.com</email>
+ <name>Rafael Kitover</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <use>
+ <flag name="ocamlopt">
+ Whether the OCaml native code compiler is used. Must be set globally and
+ match <pkg>dev-lang/ocaml</pkg>.
+ </flag>
+ </use>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocaml-gettext-stub/ocaml-gettext-stub-0.4.2-r2.ebuild b/dev-ml/ocaml-gettext-stub/ocaml-gettext-stub-0.4.2-r2.ebuild
new file mode 100644
index 000000000000..eb6ff0d4a386
--- /dev/null
+++ b/dev-ml/ocaml-gettext-stub/ocaml-gettext-stub-0.4.2-r2.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PN=${PN/-stub/}
+MY_P=${P/-stub/}
+
+DUNE_PKG_NAME="gettext-stub"
+
+inherit dune
+
+DESCRIPTION="Support for internationalization of OCaml programs using native gettext library"
+HOMEPAGE="https://github.com/gildor478/ocaml-gettext"
+SRC_URI="https://github.com/gildor478/ocaml-gettext/archive/v${PV}.tar.gz
+ -> ${MY_P}.tar.gz"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="amd64 ~ppc64"
+IUSE="+ocamlopt test"
+RESTRICT="test" # Tests fail.
+
+RDEPEND="
+ dev-ml/base:=
+ dev-ml/ocaml-gettext:=
+ !<dev-ml/ocaml-gettext-0.4.2
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ >=dev-ml/cppo-1.6.6
+ dev-ml/dune-configurator
+ test? (
+ dev-ml/ocaml-fileutils
+ dev-ml/ounit2[ocamlopt=]
+ )
+"
+
+src_prepare() {
+ default
+
+ # Remove dependency on camomile (see
+ # https://github.com/gildor478/ocaml-gettext/issues/14)
+ rm -r src/lib/gettext-camomile || die
+ rm -r test/test-camomile || die
+
+ # Port to dev-ml/ounit2
+ sed -i -e 's/oUnit/ounit2/' test/{,common,test-stub}/dune || die
+}
diff --git a/dev-ml/ocaml-gettext-stub/ocaml-gettext-stub-0.4.2.1.ebuild b/dev-ml/ocaml-gettext-stub/ocaml-gettext-stub-0.4.2.1.ebuild
new file mode 100644
index 000000000000..f592818b0a3b
--- /dev/null
+++ b/dev-ml/ocaml-gettext-stub/ocaml-gettext-stub-0.4.2.1.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PN=${PN/-stub/}
+MY_P=${P/-stub/}
+
+DUNE_PKG_NAME="gettext-stub"
+
+inherit dune
+comId=d566551bc2e2f5e6e61d24e05d314ff57eaea6bf
+
+DESCRIPTION="Support for internationalization of OCaml programs using native gettext library"
+HOMEPAGE="https://github.com/gildor478/ocaml-gettext"
+SRC_URI="https://github.com/gildor478/ocaml-gettext/archive/${comId}.tar.gz
+ -> ${MY_P}.tar.gz"
+S="${WORKDIR}"/${MY_PN}-${comId}
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~ppc64"
+IUSE="+ocamlopt test"
+RESTRICT="test" # Tests fail.
+
+RDEPEND="
+ >=dev-lang/ocaml-4.14.0:=[ocamlopt?]
+ ~dev-ml/ocaml-gettext-${PV}:=
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ >=dev-ml/dune-configurator-3.17.0
+ test? (
+ >=dev-ml/ocaml-fileutils-0.6.6
+ dev-ml/ounit2[ocamlopt=]
+ )
+"
+
+src_compile() {
+ dune-compile ${DUNE_PKG_NAME}
+}
diff --git a/dev-ml/ocaml-gettext/Manifest b/dev-ml/ocaml-gettext/Manifest
new file mode 100644
index 000000000000..f30813322ac8
--- /dev/null
+++ b/dev-ml/ocaml-gettext/Manifest
@@ -0,0 +1,2 @@
+DIST ocaml-gettext-0.4.2.1.tar.gz 110349 BLAKE2B 8156d4962838ec752d17844e50f332c03e0de966b7f15a18f740039a5cc7faf4b42733129353f0bb24b9922d61dce078e77f64356a1c587d9f80d8a65cab602d SHA512 659e3b4891ec7bc17f33de072d5625df62e1d522e70ccb912969c0b87145d7d44e20b8547c6513065ca4b87e314b31f4cf8057543d2c9b40f8ee2227df5d1e67
+DIST ocaml-gettext-0.4.2.tar.gz 110249 BLAKE2B 54a25ba9f8fb20194fdfaf651586222fab68f927ebfa711812f7c9a387ff40c19e1bf3f63124127356b32b0ca0be2c5ff4e1cdfaf5f3afe690b90c0ca96c470d SHA512 fb89be8d8d9e0ed9327b81a0c81c884ff3f1a97e46b475ef8084abded5c84a256de05d5aa0f42be94f43ab438276a4506af726b6950e4161359a9616fb5832ec
diff --git a/dev-ml/ocaml-gettext/files/ocaml-gettext-ocaml-5.4.patch b/dev-ml/ocaml-gettext/files/ocaml-gettext-ocaml-5.4.patch
new file mode 100644
index 000000000000..7a7c806b0d76
--- /dev/null
+++ b/dev-ml/ocaml-gettext/files/ocaml-gettext-ocaml-5.4.patch
@@ -0,0 +1,18 @@
+From 5d521981e39dcaeada6bbe7b15c5432d6de5d33c Mon Sep 17 00:00:00 2001
+From: "Richard W.M. Jones" <rjones@redhat.com>
+Date: Wed, 15 Oct 2025 09:24:18 +0100
+Subject: [PATCH] xgettext: Fix type for OCaml 5.4
+
+Fixes: https://github.com/gildor478/ocaml-gettext/issues/40
+Signed-off-by: Richard W.M. Jones <rjones@redhat.com>
+--- a/src/bin/ocaml-xgettext/xgettext.ml
++++ b/src/bin/ocaml-xgettext/xgettext.ml
+@@ -112,7 +112,7 @@ let rec is_like lid = function
+ | [] -> false
+ | func :: functions -> (
+ match lid with
+- | (Lident f | Ldot (_, f)) when f = func -> true
++ | (Lident f | Ldot (_, {txt = f; _})) when f = func -> true
+ | _ -> is_like lid functions )
+
+ let visit_expr (iterator : Ast_iterator.iterator) expr =
diff --git a/dev-ml/ocaml-gettext/metadata.xml b/dev-ml/ocaml-gettext/metadata.xml
new file mode 100644
index 000000000000..ff00953f26ba
--- /dev/null
+++ b/dev-ml/ocaml-gettext/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>rkitover@gmail.com</email>
+ <name>Rafael Kitover</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <use>
+ <flag name="ocamlopt">
+ Whether the OCaml native code compiler is used. Must be set globally and
+ match <pkg>dev-lang/ocaml</pkg>.
+ </flag>
+ </use>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocaml-gettext/ocaml-gettext-0.4.2-r2.ebuild b/dev-ml/ocaml-gettext/ocaml-gettext-0.4.2-r2.ebuild
new file mode 100644
index 000000000000..f465c89828e4
--- /dev/null
+++ b/dev-ml/ocaml-gettext/ocaml-gettext-0.4.2-r2.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DUNE_PKG_NAME="gettext"
+inherit dune
+
+DESCRIPTION="Provides support for internationalization of OCaml program"
+HOMEPAGE="https://github.com/gildor478/ocaml-gettext"
+SRC_URI="https://github.com/gildor478/ocaml-gettext/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="amd64 ~ppc64 ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="test" # Tests fail
+
+BDEPEND="
+ >=dev-ml/cppo-1.6.6
+ dev-ml/dune-configurator
+"
+
+RDEPEND="
+ dev-ml/base:=
+ >=dev-ml/ocaml-fileutils-0.4.0:=[ocamlopt=]
+ sys-devel/gettext
+ <dev-lang/ocaml-5
+"
+DEPEND="
+ ${RDEPEND}
+ test? ( dev-ml/ounit2[ocamlopt=] )
+"
+
+src_prepare() {
+ default
+
+ # Remove dependency on camomile (see
+ # https://github.com/gildor478/ocaml-gettext/issues/14)
+ rm -r src/lib/gettext-camomile || die
+ rm -r test/test-camomile || die
+
+ # Port to dev-ml/ounit2
+ sed -i -e 's/oUnit/ounit2/' test/{,common,test-stub}/dune || die
+}
diff --git a/dev-ml/ocaml-gettext/ocaml-gettext-0.4.2.1.ebuild b/dev-ml/ocaml-gettext/ocaml-gettext-0.4.2.1.ebuild
new file mode 100644
index 000000000000..869d68580071
--- /dev/null
+++ b/dev-ml/ocaml-gettext/ocaml-gettext-0.4.2.1.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DUNE_PKG_NAME="gettext"
+inherit dune
+comId=d566551bc2e2f5e6e61d24e05d314ff57eaea6bf
+
+DESCRIPTION="Provides support for internationalization of OCaml program"
+HOMEPAGE="https://github.com/gildor478/ocaml-gettext"
+SRC_URI="https://github.com/gildor478/ocaml-gettext/archive/${comId}.tar.gz
+ -> ${P}.tar.gz"
+
+S="${WORKDIR}"/${PN}-${comId}
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~ppc64 ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="test" # Tests fail
+
+RDEPEND="
+ >=dev-lang/ocaml-4.14.0:=[ocamlopt?]
+ dev-ml/base:=
+ >=dev-ml/ocaml-fileutils-0.6.6:=[ocamlopt=]
+ sys-devel/gettext
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ >=dev-ml/cppo-1.8.0
+ test? ( dev-ml/ounit2[ocamlopt=] )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-ocaml-5.4.patch
+)
+
+src_compile() {
+ dune-compile ${DUNE_PKG_NAME}
+}
diff --git a/dev-ml/ocaml-hashcons/Manifest b/dev-ml/ocaml-hashcons/Manifest
new file mode 100644
index 000000000000..45655278b828
--- /dev/null
+++ b/dev-ml/ocaml-hashcons/Manifest
@@ -0,0 +1 @@
+DIST ocaml-hashcons-1.3.tar.gz 19495 BLAKE2B 0d29a529fb1d6953e7294e3992e6f41c094e8b4ea607ed4f2f0d97c558b2c9a6e8703de0aca06727b845ad3f3989ef99c634e248f221c95fbffc2321cd73e961 SHA512 fd194d48a3231e72ca8bf3d324e5e1f6442d965da9149973a1763cf70aa82398805fa00648bdd12de3d3daada8e90bdc575c73886f949b5183e79bea75beadc8
diff --git a/dev-ml/ocaml-hashcons/metadata.xml b/dev-ml/ocaml-hashcons/metadata.xml
new file mode 100644
index 000000000000..5f33304011d5
--- /dev/null
+++ b/dev-ml/ocaml-hashcons/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocaml-hashcons/ocaml-hashcons-1.3.ebuild b/dev-ml/ocaml-hashcons/ocaml-hashcons-1.3.ebuild
new file mode 100644
index 000000000000..e059ea1b1938
--- /dev/null
+++ b/dev-ml/ocaml-hashcons/ocaml-hashcons-1.3.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools findlib
+
+DESCRIPTION="OCaml hash-consing library"
+HOMEPAGE="https://github.com/backtracking/ocaml-hashcons"
+SRC_URI="https://github.com/backtracking/ocaml-hashcons/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="~amd64"
+IUSE="+ocamlopt"
+
+RDEPEND="dev-lang/ocaml:=[ocamlopt?]"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ default
+
+ eautoreconf
+
+ sed -i -e 's/$(OCAMLFIND) remove/#/' Makefile.in || die
+}
+
+src_compile() {
+ if use ocamlopt; then
+ emake opt byte
+ else
+ emake byte
+ fi
+}
+
+src_install() {
+ local destdir=$(ocamlfind printconf destdir || die)
+ dodir ${destdir}/hashcons
+
+ emake \
+ DESTDIR="-destdir ${D}"/${destdir}/ \
+ $(usex ocamlopt install-opt install-byte)
+
+ dodoc README.md CHANGES
+}
diff --git a/dev-ml/ocaml-inifiles/Manifest b/dev-ml/ocaml-inifiles/Manifest
new file mode 100644
index 000000000000..b1ede1dc79ec
--- /dev/null
+++ b/dev-ml/ocaml-inifiles/Manifest
@@ -0,0 +1 @@
+DIST ocaml-inifiles_1.2.orig.tar.gz 11642 BLAKE2B 9970a5df9290c0532ad54eb8df6737f2e22385d5de6defd9681f115e2c0c62217e56dbf3bde91424e3a75f56d6e00daa698e2029ae457cb55a3495a8b2144490 SHA512 d57016e338caade7ceff416b698ad320da7e5ef376430d5bca9115ca0abc219a8072c9fddc8c8388c0b7ed404801e5158827d86577be49658611bd830e8814ef
diff --git a/dev-ml/ocaml-inifiles/files/ocaml-inifiles-1.2-inifiles.ml.patch b/dev-ml/ocaml-inifiles/files/ocaml-inifiles-1.2-inifiles.ml.patch
new file mode 100644
index 000000000000..66c463a579b5
--- /dev/null
+++ b/dev-ml/ocaml-inifiles/files/ocaml-inifiles-1.2-inifiles.ml.patch
@@ -0,0 +1,20 @@
+--- a/inifiles.ml
++++ b/inifiles.ml
+@@ -50,7 +50,7 @@
+ struct
+ type t = string
+ let compare (x:t) (y:t) =
+- String.compare (String.lowercase x) (String.lowercase y)
++ String.compare (String.lowercase_ascii x) (String.lowercase_ascii y)
+ end
+
+ module Strset = Set.Make(Ordstr)
+@@ -257,7 +257,7 @@
+ func
+ initial
+ (List.rev_map
+- (new inifile)
++ (fun x -> new inifile x)
+ (List.filter
+ check_file
+ (List.rev_map
diff --git a/dev-ml/ocaml-inifiles/files/ocaml-inifiles-1.2-shuffle.patch b/dev-ml/ocaml-inifiles/files/ocaml-inifiles-1.2-shuffle.patch
new file mode 100644
index 000000000000..49a4626e0901
--- /dev/null
+++ b/dev-ml/ocaml-inifiles/files/ocaml-inifiles-1.2-shuffle.patch
@@ -0,0 +1,8 @@
+--- a/OCamlMakefile 2023-01-26 08:33:13.101689847 +0100
++++ b/OCamlMakefile 2023-01-26 08:34:59.133050720 +0100
+@@ -1117,3 +1117,5 @@
+ .PHONY: nobackup
+ nobackup:
+ rm -f *.bak *~ *.dup
++
++inilexer.cmi : parseini.cmo
diff --git a/dev-ml/ocaml-inifiles/metadata.xml b/dev-ml/ocaml-inifiles/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ocaml-inifiles/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocaml-inifiles/ocaml-inifiles-1.2.ebuild b/dev-ml/ocaml-inifiles/ocaml-inifiles-1.2.ebuild
new file mode 100644
index 000000000000..7611ae6b219e
--- /dev/null
+++ b/dev-ml/ocaml-inifiles/ocaml-inifiles-1.2.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit findlib
+
+DESCRIPTION="A small OCaml library to read and write .ini files"
+HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
+SRC_URI="http://archive.ubuntu.com/ubuntu/pool/universe/o/${PN}/${PN}_${PV}.orig.tar.gz"
+S="${WORKDIR}/inifiles-${PV}"
+
+LICENSE="LGPL-2.1+"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
+
+RDEPEND="dev-ml/pcre-ocaml:="
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-inifiles.ml.patch
+ "${FILESDIR}"/${P}-shuffle.patch
+)
+
+src_compile() {
+ emake -j1
+ use ocamlopt && emake -j1 opt
+}
+
+src_install() {
+ findlib_src_install
+}
diff --git a/dev-ml/ocaml-markdown/Manifest b/dev-ml/ocaml-markdown/Manifest
new file mode 100644
index 000000000000..f6e2e3192ecf
--- /dev/null
+++ b/dev-ml/ocaml-markdown/Manifest
@@ -0,0 +1 @@
+DIST ocaml-markdown-0.2.1.gh.tar.gz 9192 BLAKE2B 07839e6a5966a73c300432f8b6b8340ce54045cb2e08e962c7029a5caa74756d6dc302c37f34f16f06f936373a110a2316e84f2f0263556d52ba04c4799c5250 SHA512 48aa7332f04cf880046e2647c99a6ff60b026cf9e3130173713f431ebb68b3d394dd83290e5e4f9359faa1381115798548d85c7b4b3b121afcbbb78b8b757fa3
diff --git a/dev-ml/ocaml-markdown/metadata.xml b/dev-ml/ocaml-markdown/metadata.xml
new file mode 100644
index 000000000000..935672eeae3e
--- /dev/null
+++ b/dev-ml/ocaml-markdown/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/gildor478/ocaml-markdown/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocaml-markdown/ocaml-markdown-0.2.1.ebuild b/dev-ml/ocaml-markdown/ocaml-markdown-0.2.1.ebuild
new file mode 100644
index 000000000000..93d50693e526
--- /dev/null
+++ b/dev-ml/ocaml-markdown/ocaml-markdown-0.2.1.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DUNE_PKG_NAME="markdown"
+
+inherit dune
+
+DESCRIPTION="Markdown parser and printer in OCaml"
+HOMEPAGE="https://github.com/gildor478/ocaml-markdown/"
+
+if [[ "${PV}" == *9999* ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/gildor478/${PN}"
+else
+ SRC_URI="https://github.com/gildor478/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz"
+
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-ml/batteries-2.10:=
+ >=dev-ml/tyxml-4.3:=
+"
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ test? (
+ >=dev-ml/ounit2-2.0.8
+ )
+"
+
+DOCS=( CHANGES.md README.md )
+
+src_install() {
+ dune_src_install
+ einstalldocs
+}
diff --git a/dev-ml/ocaml-migrate-parsetree/Manifest b/dev-ml/ocaml-migrate-parsetree/Manifest
new file mode 100644
index 000000000000..a93d84875890
--- /dev/null
+++ b/dev-ml/ocaml-migrate-parsetree/Manifest
@@ -0,0 +1,4 @@
+DIST ocaml-migrate-parsetree-2.1.0.tar.gz 169358 BLAKE2B 072ba6e1a879d5e308e7b40c55c323f353cd2187c8884bce25bffd35d7f5e64f2aa7070ae2766c1e41ef47ffbbf44218fdc8b823dbb33c6c11f0e262cd94ab83 SHA512 0fd9dc9ae9a4c0b50f100958c0df6d9bb33a4d3c2e4d9572aae52d4e7393c1432deca9f5812dbccc637150b1a8f58eabb433e87baf08c79af9e1ff3c58509a32
+DIST ocaml-migrate-parsetree-2.2.0.tar.gz 188265 BLAKE2B a551ab1abd9db751d5300cd6c570e2072fa8d242c6a58c9b84387b177211081f6747526ae787ad51817bd63162c3fed61cbd1e3af083a49a524c0e38c69546e1 SHA512 7c1eec4b1d66d6d7df685684b054d8e98de6d4bafb6601116affc9f05fa89fb098824005891f0002e12c2d83ade734cffde2070792db8c9bc2d79825b86b45c1
+DIST ocaml-migrate-parsetree-2.3.0.tar.gz 206750 BLAKE2B 47ffdf83d8329a5dc715f4d43f5440ee05bc88d2ebd1e7a11b8c45a2b1de64be77b2d0905f46a594fa84ca62785c64472b2b8bc1ee37440fca9b8dd5a56dbcc5 SHA512 f2000939eee0b2eac93d059292b0bc13aa809c9fe5e54b1e0bf412e41921647e9bc71ef23e0c6fba70e481891ece5a65763743932c69bf278a1036c437313219
+DIST ocaml-migrate-parsetree-2.4.0.tar.gz 207332 BLAKE2B cb8cae9eb30c09803944aae428cb0b5f8a52fdcb168beca956071507f9b3739664ee7fd99f823ca900ed61283422344ecebd96d1f526b76e6d334e3149e7e995 SHA512 9fb4fd69cc3eb64110127f9622cbb88ff1db3ecf45dc49377095d57c40ae2302b8e6928eda7e09b6e63f1820823c974ec479a8fa14b2a3f7da877faef0ca0414
diff --git a/dev-ml/ocaml-migrate-parsetree/metadata.xml b/dev-ml/ocaml-migrate-parsetree/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ocaml-migrate-parsetree/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocaml-migrate-parsetree/ocaml-migrate-parsetree-2.1.0.ebuild b/dev-ml/ocaml-migrate-parsetree/ocaml-migrate-parsetree-2.1.0.ebuild
new file mode 100644
index 000000000000..f6e2d4b55f61
--- /dev/null
+++ b/dev-ml/ocaml-migrate-parsetree/ocaml-migrate-parsetree-2.1.0.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="Convert OCaml parsetrees between different major versions"
+HOMEPAGE="https://github.com/let-def/ocaml-migrate-parsetree"
+SRC_URI="https://github.com/let-def/ocaml-migrate-parsetree/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+DEPEND="test? ( dev-ml/cinaps )"
diff --git a/dev-ml/ocaml-migrate-parsetree/ocaml-migrate-parsetree-2.2.0.ebuild b/dev-ml/ocaml-migrate-parsetree/ocaml-migrate-parsetree-2.2.0.ebuild
new file mode 100644
index 000000000000..fbf5d71d0151
--- /dev/null
+++ b/dev-ml/ocaml-migrate-parsetree/ocaml-migrate-parsetree-2.2.0.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="Convert OCaml parsetrees between different major versions"
+HOMEPAGE="https://github.com/let-def/ocaml-migrate-parsetree"
+SRC_URI="https://github.com/let-def/ocaml-migrate-parsetree/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test ) strip"
+
+DEPEND="test? ( dev-ml/cinaps )"
+BDEPEND=">=dev-ml/dune-2.3"
diff --git a/dev-ml/ocaml-migrate-parsetree/ocaml-migrate-parsetree-2.3.0-r1.ebuild b/dev-ml/ocaml-migrate-parsetree/ocaml-migrate-parsetree-2.3.0-r1.ebuild
new file mode 100644
index 000000000000..00665c508d52
--- /dev/null
+++ b/dev-ml/ocaml-migrate-parsetree/ocaml-migrate-parsetree-2.3.0-r1.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="Convert OCaml parsetrees between different major versions"
+HOMEPAGE="https://github.com/let-def/ocaml-migrate-parsetree"
+SRC_URI="https://github.com/let-def/ocaml-migrate-parsetree/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test ) strip"
+
+RDEPEND="<dev-lang/ocaml-4.15"
+DEPEND="test? ( dev-ml/cinaps )"
+BDEPEND=">=dev-ml/dune-2.3"
diff --git a/dev-ml/ocaml-migrate-parsetree/ocaml-migrate-parsetree-2.4.0-r1.ebuild b/dev-ml/ocaml-migrate-parsetree/ocaml-migrate-parsetree-2.4.0-r1.ebuild
new file mode 100644
index 000000000000..3e4246ed05b3
--- /dev/null
+++ b/dev-ml/ocaml-migrate-parsetree/ocaml-migrate-parsetree-2.4.0-r1.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Convert OCaml parsetrees between different major versions"
+HOMEPAGE="https://github.com/let-def/ocaml-migrate-parsetree/"
+SRC_URI="https://github.com/let-def/ocaml-migrate-parsetree/archive/${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test ) strip"
+
+RDEPEND="<dev-lang/ocaml-5"
+DEPEND="test? ( dev-ml/cinaps )"
+BDEPEND=">=dev-ml/dune-2.3"
diff --git a/dev-ml/ocaml-process/Manifest b/dev-ml/ocaml-process/Manifest
new file mode 100644
index 000000000000..03a2a410140d
--- /dev/null
+++ b/dev-ml/ocaml-process/Manifest
@@ -0,0 +1 @@
+DIST ocaml-process-0.2.1.tar.gz 5904 BLAKE2B 90a03e53e79adae559bbdcf4717db53d5e79cf22a22e7d6daad4c123a8b275f7b984ed40b7132653c31bb9b1d7c39c1918e0455597f70103ddb18b89ecf00d9a SHA512 0ca352a273797218e1785e1f6ed024448461cefeb54f143574230c844747a81355b97dd19fe9ddfe31d1a69c03dccf895fadc086f61a3d7a9f5397538432db92
diff --git a/dev-ml/ocaml-process/metadata.xml b/dev-ml/ocaml-process/metadata.xml
new file mode 100644
index 000000000000..1f65005f5fa0
--- /dev/null
+++ b/dev-ml/ocaml-process/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/dsheets/ocaml-process/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocaml-process/ocaml-process-0.2.1-r1.ebuild b/dev-ml/ocaml-process/ocaml-process-0.2.1-r1.ebuild
new file mode 100644
index 000000000000..14bb568133ff
--- /dev/null
+++ b/dev-ml/ocaml-process/ocaml-process-0.2.1-r1.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit findlib
+
+DESCRIPTION="Easy process control for OCaml"
+HOMEPAGE="https://github.com/dsheets/ocaml-process"
+SRC_URI="https://github.com/dsheets/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ dev-ml/ocamlbuild
+ test? ( dev-ml/alcotest )
+"
+
+src_compile() {
+ exts=.cma
+ use ocamlopt && exts+=' .cmx .cmxa'
+ export pkgs
+ emake TARGETS="${exts}"
+}
+
+src_test() {
+ emake -j1 TARGETS="${exts}" test
+}
+
+src_install() {
+ local archives=''
+ use ocamlopt && archives='_build/lib/process.a'
+ findlib_src_install TARGETS="${exts}" ARCHIVES="${archives}"
+}
diff --git a/dev-ml/ocaml-sha/Manifest b/dev-ml/ocaml-sha/Manifest
new file mode 100644
index 000000000000..046f52c7dfb3
--- /dev/null
+++ b/dev-ml/ocaml-sha/Manifest
@@ -0,0 +1,3 @@
+DIST ocaml-sha-1.15.1.tar.gz 15972 BLAKE2B c80fe4ba9a216fb88b0ca4cdf4f467450ad7225c9aa8fbb7389c85b8372de0a965683dc4a674c82ae4c2801b9f6a83777fbd3bfe5deb68af3d5e9193c058c9d9 SHA512 25af4f3fff6d5126e5e3b5f4dff4d6cc48396ffea48da186450236825bbb79110c7918a2bfa1c77dfaee9570965f9052d87c513d9f9da01208d95962b12cfd1c
+DIST ocaml-sha-1.15.2.tar.gz 15700 BLAKE2B 7504d4302d54d94f6b8143efce6487dbc95c4f909baef515a85a7a6f7adcc5cff94225ae9231770193025312a82384b738e47001f1b6975cd39f4d21b8f6a162 SHA512 7ea47377747ef4c36791c4ed9ff88fe138ee14d012cc3f7b41fcc28776e57ea54c5ee5cc033adc6288177ed834afb73c44e60cfff01f1be28492a992f97a1d06
+DIST sha-1.15.4.tbz 17759 BLAKE2B 24ca05f6228aa3fce3bd4d0478115f7664569b6d1a3049298d4c4255b4e9ff0e91ac1d957236331fef275466744d539721251d9bfaf6790f55f438223e761581 SHA512 dbb31b523ba0bace023bc1b0558a8f572a0ec20fb3f19f783935be755cd161e09aba352eda2bcf7c4e5ab838c7f874cfbfaed9debf0813df25d9dbe7b9314fdf
diff --git a/dev-ml/ocaml-sha/metadata.xml b/dev-ml/ocaml-sha/metadata.xml
new file mode 100644
index 000000000000..39ab3a648b99
--- /dev/null
+++ b/dev-ml/ocaml-sha/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <longdescription>
+ This is the binding for SHA interface code in OCaml. Offering the same
+ interface than the MD5 digest included in the OCaml standard library.
+ It's currently providing SHA1, SHA256 and SHA512 hash functions.
+ </longdescription>
+ <upstream>
+ <bugs-to>https://github.com/djs55/ocaml-sha/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocaml-sha/ocaml-sha-1.15.1.ebuild b/dev-ml/ocaml-sha/ocaml-sha-1.15.1.ebuild
new file mode 100644
index 000000000000..d6ab5623b0f4
--- /dev/null
+++ b/dev-ml/ocaml-sha/ocaml-sha-1.15.1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DUNE_PKG_NAME="sha"
+
+inherit dune
+
+DESCRIPTION="Binding to the SHA cryptographic functions"
+HOMEPAGE="https://github.com/djs55/ocaml-sha"
+SRC_URI="https://github.com/djs55/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="dev-ml/stdlib-shims:="
+DEPEND="${RDEPEND}"
+BDEPEND="test? ( dev-ml/ounit2 )"
diff --git a/dev-ml/ocaml-sha/ocaml-sha-1.15.2.ebuild b/dev-ml/ocaml-sha/ocaml-sha-1.15.2.ebuild
new file mode 100644
index 000000000000..dca25b58d530
--- /dev/null
+++ b/dev-ml/ocaml-sha/ocaml-sha-1.15.2.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DUNE_PKG_NAME=sha
+
+inherit dune
+
+DESCRIPTION="Binding to the SHA cryptographic functions"
+HOMEPAGE="https://github.com/djs55/ocaml-sha/"
+SRC_URI="https://github.com/djs55/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="dev-ml/stdlib-shims:="
+DEPEND="${RDEPEND}"
+BDEPEND="test? ( dev-ml/ounit2 )"
diff --git a/dev-ml/ocaml-sha/ocaml-sha-1.15.4.ebuild b/dev-ml/ocaml-sha/ocaml-sha-1.15.4.ebuild
new file mode 100644
index 000000000000..17aade8400a7
--- /dev/null
+++ b/dev-ml/ocaml-sha/ocaml-sha-1.15.4.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DUNE_PKG_NAME=sha
+
+inherit dune
+
+MYP=sha-${PV}
+DESCRIPTION="Binding to the SHA cryptographic functions"
+HOMEPAGE="https://github.com/djs55/ocaml-sha/"
+SRC_URI="https://github.com/djs55/${PN}/releases/download/v${PV}/${MYP}.tbz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="dev-ml/stdlib-shims:="
+DEPEND="${RDEPEND}"
+BDEPEND="test? ( dev-ml/ounit2 )"
+
+S="${WORKDIR}"/${MYP}
diff --git a/dev-ml/ocaml-sqlite3/Manifest b/dev-ml/ocaml-sqlite3/Manifest
new file mode 100644
index 000000000000..0ee70a05130b
--- /dev/null
+++ b/dev-ml/ocaml-sqlite3/Manifest
@@ -0,0 +1 @@
+DIST ocaml-sqlite3-5.0.2.tar.gz 33077 BLAKE2B 3f34a930477880326179a3014575db49bd9d614d90bdea98fc14af83287b889c6e02b8375dd5817c5139fe51706d83b332e148ccc084e46abf6b06ec9015a7c8 SHA512 330ac34490cbe004e9b950d7bbded2728b6a938179f3a19fb0043075c6d9a4e14fd82acea6c5787c84f2634d80017644bf988fd00b7dbd1374142771485cffd0
diff --git a/dev-ml/ocaml-sqlite3/metadata.xml b/dev-ml/ocaml-sqlite3/metadata.xml
new file mode 100644
index 000000000000..5f33304011d5
--- /dev/null
+++ b/dev-ml/ocaml-sqlite3/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocaml-sqlite3/ocaml-sqlite3-5.0.2.ebuild b/dev-ml/ocaml-sqlite3/ocaml-sqlite3-5.0.2.ebuild
new file mode 100644
index 000000000000..9c9e393e7533
--- /dev/null
+++ b/dev-ml/ocaml-sqlite3/ocaml-sqlite3-5.0.2.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DUNE_PKG_NAME="sqlite3"
+inherit dune
+
+DESCRIPTION="SQLite3 bindings for OCaml"
+HOMEPAGE="http://mmottl.github.io/sqlite3-ocaml/"
+SRC_URI="https://github.com/mmottl/sqlite3-ocaml/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/sqlite3-ocaml-${PV}"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND=">=dev-db/sqlite-3.3.3"
+BDEPEND="
+ >=dev-lang/ocaml-4.06
+ dev-ml/dune-configurator
+"
+DEPEND="${RDEPEND}
+ test? (
+ dev-ml/ppx_inline_test
+ )
+"
diff --git a/dev-ml/ocaml-ssl/Manifest b/dev-ml/ocaml-ssl/Manifest
new file mode 100644
index 000000000000..4ee5c4065475
--- /dev/null
+++ b/dev-ml/ocaml-ssl/Manifest
@@ -0,0 +1,2 @@
+DIST ocaml-ssl-0.5.13.tar.gz 40604 BLAKE2B 289f631e360581ddfe2fa6572d1b8883853e65c438542593f5f0be5c23b1c8056c10fe6397ba8df577ebf7a9e22cbe4723d8fccabeb373de3efebee310293653 SHA512 ca1106642cb536672dba00ff4421ade2293de6f79c94a47df27520ce6f2ff4555f8e9794736afe4ce37e131a518658d0f8c57f3b106b0187216db1a461f99867
+DIST ocaml-ssl-0.7.0.tar.gz 56102 BLAKE2B b3e41eb91c3948dcd2396de0fee0b737e40a5ca076942908e6801e8ae333174ccc6068f201e69cab88989233407f3e1a690bf4635b304f89637a0460dd80d926 SHA512 969c4d64828449a49bdef26ca5f8faa72d2fe2a2304ccbf589a3ff097c2bf8ae9eb83ae1c90216f6b4d6f359e462ea47e0106a7386e26848d14910138fcb07f8
diff --git a/dev-ml/ocaml-ssl/metadata.xml b/dev-ml/ocaml-ssl/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ocaml-ssl/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocaml-ssl/ocaml-ssl-0.5.13-r1.ebuild b/dev-ml/ocaml-ssl/ocaml-ssl-0.5.13-r1.ebuild
new file mode 100644
index 000000000000..387f4c4d1548
--- /dev/null
+++ b/dev-ml/ocaml-ssl/ocaml-ssl-0.5.13-r1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DUNE_PKG_NAME=ssl
+
+inherit dune
+
+DESCRIPTION="OCaml bindings for OpenSSL"
+HOMEPAGE="https://github.com/savonet/ocaml-ssl"
+SRC_URI="https://github.com/savonet/ocaml-ssl/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+DEPEND="dev-libs/openssl:0="
+RDEPEND="${DEPEND}"
+BDEPEND="
+ dev-ml/dune-configurator
+ test? ( dev-ml/alcotest )
+"
+
+src_install() {
+ dune_src_install
+
+ dodoc CHANGES.md README.md
+}
diff --git a/dev-ml/ocaml-ssl/ocaml-ssl-0.7.0.ebuild b/dev-ml/ocaml-ssl/ocaml-ssl-0.7.0.ebuild
new file mode 100644
index 000000000000..6c472e89e69e
--- /dev/null
+++ b/dev-ml/ocaml-ssl/ocaml-ssl-0.7.0.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DUNE_PKG_NAME=ssl
+
+inherit dune
+
+DESCRIPTION="OCaml bindings for OpenSSL"
+HOMEPAGE="https://github.com/savonet/ocaml-ssl"
+
+if [[ ${PV} == *9999* ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/savonet/${PN}.git"
+else
+ SRC_URI="https://github.com/savonet/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+ KEYWORDS="amd64 arm arm64 ~ppc x86"
+fi
+
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-libs/openssl:0=
+ dev-lang/ocaml
+"
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ dev-ml/dune-configurator
+ test? ( dev-ml/alcotest )
+"
+
+DOCS=( CHANGES.md README.md )
+
+src_install() {
+ dune_src_install
+
+ einstalldocs
+}
diff --git a/dev-ml/ocaml-stdint/Manifest b/dev-ml/ocaml-stdint/Manifest
new file mode 100644
index 000000000000..4fbf6e2ea438
--- /dev/null
+++ b/dev-ml/ocaml-stdint/Manifest
@@ -0,0 +1,2 @@
+DIST ocaml-stdint-0.7.0.tar.gz 34507 BLAKE2B d06768911798a6a3736b68395fc5ca2d53288fe0056953ed189938b10aeeb9469511fc1ece39e49c403954f4bd88034d63ec53d7e8b63d8e8c41ff0761ccb2e6 SHA512 5e0c4164cb1f55a63f0928f5c1868cc2bba61d356b63cc20cb6b066fd09824eb99d6d1fd577f52678155d6744a591fdd8377b4c44bbe015918462f4576b43529
+DIST ocaml-stdint-0.7.2.tar.gz 35444 BLAKE2B 2b6536b65304eb3c0f10fa30a4a0f41c46a0ebb936b6ba250cff4d8313a40145701f6cc0b3915437d1ff36f6c9fa6636801b6564c2695a03ac7c0dc7840dfa92 SHA512 facfa95c1ed1c7dbbda6ff9c4e72423269eccac106e8670ff988f5d32635e5e5a1f3cb8a61b15cdf0aeabbeb7ceb1159de67fbc4b4f54611e74e8e39d0ad98c3
diff --git a/dev-ml/ocaml-stdint/metadata.xml b/dev-ml/ocaml-stdint/metadata.xml
new file mode 100644
index 000000000000..e6837a8cce0b
--- /dev/null
+++ b/dev-ml/ocaml-stdint/metadata.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <longdescription>
+ The stdint library provides signed and unsigned integer types of various
+ fixed widths: 8, 16, 24, 32, 40, 48, 56, 64 and 128 bit.
+ This interface is similar to Int32 and Int64 from the base library but
+ provides more functions and constants like arithmetic and bit-wise
+ operations, constants like maximum and minimum values, infix operators
+ conversion to and from every other integer type (including int, float and
+ nativeint), parsing from and conversion to readable strings (binary, octal,
+ decimal, hexademical), conversion to and from buffers in both big endian
+ and little endian byte order.
+ </longdescription>
+ <upstream>
+ <bugs-to>https://github.com/andrenth/ocaml-stdint/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocaml-stdint/ocaml-stdint-0.7.0.ebuild b/dev-ml/ocaml-stdint/ocaml-stdint-0.7.0.ebuild
new file mode 100644
index 000000000000..1dcb81d9a5d7
--- /dev/null
+++ b/dev-ml/ocaml-stdint/ocaml-stdint-0.7.0.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DUNE_PKG_NAME="stdint"
+
+inherit dune
+
+DESCRIPTION="Signed and unsigned integer types having specified widths"
+HOMEPAGE="https://github.com/andrenth/ocaml-stdint"
+SRC_URI="https://github.com/andrenth/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test" # some tests fails
diff --git a/dev-ml/ocaml-stdint/ocaml-stdint-0.7.2-r1.ebuild b/dev-ml/ocaml-stdint/ocaml-stdint-0.7.2-r1.ebuild
new file mode 100644
index 000000000000..ef16ff625fd4
--- /dev/null
+++ b/dev-ml/ocaml-stdint/ocaml-stdint-0.7.2-r1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DUNE_PKG_NAME="stdint"
+
+inherit dune
+
+DESCRIPTION="Signed and unsigned integer types having specified widths"
+HOMEPAGE="https://github.com/andrenth/ocaml-stdint"
+SRC_URI="https://github.com/andrenth/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test" # some tests fails
+BDEPEND=">=dev-ml/dune-3"
diff --git a/dev-ml/ocaml_intrinsics/Manifest b/dev-ml/ocaml_intrinsics/Manifest
new file mode 100644
index 000000000000..ee8c3650544e
--- /dev/null
+++ b/dev-ml/ocaml_intrinsics/Manifest
@@ -0,0 +1 @@
+DIST ocaml_intrinsics-0.16.0.tar.gz 35876 BLAKE2B fc9ead65244efe96ea130426265acb2cccc08105e53383ddfd7117bca461e28095f213f22dddafc1e3f6490ad2b4f0d4e9129a8dcf8dc207269ca83eb889acee SHA512 86bf6ac7cb1da5de03224cc053e174ec22af766b6c5ab4ca1fde3c028405858cb97feeae6968d9054a7d6994491b9f2cdb8e198ee837ad4242f9cd812873ceaa
diff --git a/dev-ml/ocaml_intrinsics/metadata.xml b/dev-ml/ocaml_intrinsics/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ocaml_intrinsics/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocaml_intrinsics/ocaml_intrinsics-0.16.0.ebuild b/dev-ml/ocaml_intrinsics/ocaml_intrinsics-0.16.0.ebuild
new file mode 100644
index 000000000000..84133bbf2c78
--- /dev/null
+++ b/dev-ml/ocaml_intrinsics/ocaml_intrinsics-0.16.0.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Invoke amd64 instructions (such as clz, popcnt, rdtsc, rdpmc)"
+HOMEPAGE="https://github.com/janestreet/ocaml_intrinsics/"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 ~riscv x86"
+IUSE="+ocamlopt cpu_flags_x86_sse4_2"
+RESTRICT="test"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/dune-configurator:=
+"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ local supported_arch=false
+
+ if use amd64 || use x86; then
+ # On x86/amd64, we MUST have sse4_2 support for these stubs
+ use cpu_flags_x86_sse4_2 && supported_arch=true
+ elif use arm || use arm64; then
+ supported_arch=true
+ fi
+
+ # If not a supported configuration, strip the stubs from the build
+ if ! ${supported_arch}; then
+ sed -i -e 's: crc_stubs::' src/dune || die
+ fi
+
+ default
+}
diff --git a/dev-ml/ocaml_intrinsics_kernel/Manifest b/dev-ml/ocaml_intrinsics_kernel/Manifest
new file mode 100644
index 000000000000..94942c4705a8
--- /dev/null
+++ b/dev-ml/ocaml_intrinsics_kernel/Manifest
@@ -0,0 +1 @@
+DIST ocaml_intrinsics_kernel-0.17.0.tar.gz 11929 BLAKE2B eacf460acb0df8728347efe6f2c271a4f6e055b4a22638834d7742a9e07b172d822cd37cf7417782adfb079c17214889b86d882e50b91e4496f38eaa70953b64 SHA512 e197202f6af364caf864efda5d7496416c30bdc3ade9bf0e81e17014f1a046daee21897fc9d47fc4fa44408b1466cf8cff38831b5df45468f3f4a15723d75aac
diff --git a/dev-ml/ocaml_intrinsics_kernel/metadata.xml b/dev-ml/ocaml_intrinsics_kernel/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ocaml_intrinsics_kernel/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocaml_intrinsics_kernel/ocaml_intrinsics_kernel-0.17.0.ebuild b/dev-ml/ocaml_intrinsics_kernel/ocaml_intrinsics_kernel-0.17.0.ebuild
new file mode 100644
index 000000000000..d2ee4ceb8b90
--- /dev/null
+++ b/dev-ml/ocaml_intrinsics_kernel/ocaml_intrinsics_kernel-0.17.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Functions to invoke amd64 instructions (such as cmov, min/maxsd, popcnt)"
+HOMEPAGE="https://github.com/janestreet/ocaml_intrinsics_kernel/"
+SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+BDEPEND="
+ >=dev-ml/dune-3.11
+ >=dev-lang/ocaml-4.12
+"
diff --git a/dev-ml/ocamlbuild/Manifest b/dev-ml/ocamlbuild/Manifest
new file mode 100644
index 000000000000..3ac915a2da33
--- /dev/null
+++ b/dev-ml/ocamlbuild/Manifest
@@ -0,0 +1,2 @@
+DIST ocamlbuild-0.15.0.tar.gz 201971 BLAKE2B 34c35c48d446d9c5297a9eabf6d4f134fbfdf01aad4eff15804ad7ecd9068527a70c2d9820ce3f7dba41aa88dda215e82074ad0c66df048c512afd60884ec7fd SHA512 c8311a9a78491bf759eb27153d6ba4692d27cd935759a145f96a8ba8f3c2e97cef54e7d654ed1c2c07c74f60482a4fef5224e26d0f04450e69cdcb9418c762d3
+DIST ocamlbuild-0.16.1.tar.gz 202416 BLAKE2B ffd0dbe8421e3ec5eabb3e6ee3844c3ad22d77d4eb0d5e34dd7a8be722b78c146fc5762c16047b7050d9ce547815a58cec6091a15e783e157b1d38c2c3787b5f SHA512 e918b9a0081f271e507c7a4f4d5d5a7cdf818ca51c52acec1bac85ddad5f6cad078cb3c568252fbcf5401c2d75323ed8f50fdd881bda1c9632840320408393ae
diff --git a/dev-ml/ocamlbuild/files/ocamlbuild-0.15.0-test.patch b/dev-ml/ocamlbuild/files/ocamlbuild-0.15.0-test.patch
new file mode 100644
index 000000000000..db02dd5de732
--- /dev/null
+++ b/dev-ml/ocamlbuild/files/ocamlbuild-0.15.0-test.patch
@@ -0,0 +1,37 @@
+From c70704cc301cfd826cc3950f26af674b3b3bfab4 Mon Sep 17 00:00:00 2001
+From: Hugo Heuzard <hugo.heuzard@gmail.com>
+Date: Mon, 10 Mar 2025 10:53:27 +0100
+Subject: [PATCH] Testsuite: fix for OCaml 5.3
+
+---
+ testsuite/internal.ml | 10 +++++++++-
+ 1 file changed, 9 insertions(+), 1 deletion(-)
+
+diff --git a/testsuite/internal.ml b/testsuite/internal.ml
+index 0b9ac319..eb221cb1 100644
+--- a/testsuite/internal.ml
++++ b/testsuite/internal.ml
+@@ -314,7 +314,7 @@ Error: This expression has type int but an expression was expected of type
+ unit
+ because it is in the left-hand side of a sequence
+ Command exited with code 2.|}
+-else
++else if Sys.ocaml_version < "5.3.0" then
+ {|File "hello.ml", line 1, characters 9-10:
+ 1 | let () = 1; ()
+ ^
+@@ -322,6 +322,14 @@ Error: This expression has type "int" but an expression was expected of type
+ "unit"
+ because it is in the left-hand side of a sequence
+ Command exited with code 2.|}
++else
++{|File "hello.ml", line 1, characters 9-10:
++1 | let () = 1; ()
++ ^
++Error: The constant "1" has type "int" but an expression was expected of type
++ "unit"
++ because it is in the left-hand side of a sequence
++Command exited with code 2.|}
+ )
+ ~targets:("hello.byte",[]) ();;
+
diff --git a/dev-ml/ocamlbuild/metadata.xml b/dev-ml/ocamlbuild/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ocamlbuild/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocamlbuild/ocamlbuild-0.15.0.ebuild b/dev-ml/ocamlbuild/ocamlbuild-0.15.0.ebuild
new file mode 100644
index 000000000000..fe485aff348e
--- /dev/null
+++ b/dev-ml/ocamlbuild/ocamlbuild-0.15.0.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Generic build tool with built-in rules for building OCaml library and programs"
+HOMEPAGE="https://github.com/ocaml/ocamlbuild"
+SRC_URI="https://github.com/ocaml/ocamlbuild/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~hppa ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+RDEPEND="dev-lang/ocaml:=[ocamlopt?]"
+DEPEND="${RDEPEND}
+ dev-ml/findlib"
+
+QA_FLAGS_IGNORED='.*'
+
+PATCHES=( "${FILESDIR}"/${P}-test.patch )
+
+src_prepare() {
+ sed -i \
+ -e "/package_exists/s:camlp4.macro:xxxxxx:" \
+ -e "/package_exists/s:menhirLib:xxxxxx:" \
+ testsuite/external.ml || die
+ default
+}
+
+src_configure() {
+ emake -f configure.make Makefile.config \
+ PREFIX="${EPREFIX}/usr" \
+ BINDIR="${EPREFIX}/usr/bin" \
+ LIBDIR="$(ocamlc -where)" \
+ OCAML_NATIVE=$(usex ocamlopt true false) \
+ OCAML_NATIVE_TOOLS=$(usex ocamlopt true false) \
+ NATDYNLINK=$(usex ocamlopt true false)
+}
+
+src_compile() {
+ emake src/ocamlbuild_config.cmo
+ default
+}
+
+src_install() {
+ # OCaml generates textrels on 32-bit arches
+ if use arm || use ppc || use x86 ; then
+ export QA_TEXTRELS='.*'
+ fi
+ emake CHECK_IF_PREINSTALLED=false DESTDIR="${D}" install
+ dodoc Changes
+}
+
+src_test() {
+ emake -j1 test
+}
diff --git a/dev-ml/ocamlbuild/ocamlbuild-0.16.1.ebuild b/dev-ml/ocamlbuild/ocamlbuild-0.16.1.ebuild
new file mode 100644
index 000000000000..f392294c801a
--- /dev/null
+++ b/dev-ml/ocamlbuild/ocamlbuild-0.16.1.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Generic build tool with built-in rules for building OCaml library and programs"
+HOMEPAGE="https://github.com/ocaml/ocamlbuild"
+SRC_URI="https://github.com/ocaml/ocamlbuild/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt"
+
+RDEPEND="dev-lang/ocaml:=[ocamlopt?]"
+DEPEND="${RDEPEND}
+ dev-ml/findlib"
+
+QA_FLAGS_IGNORED='.*'
+
+PATCHES=( "${FILESDIR}"/${PN}-0.15.0-test.patch )
+
+src_prepare() {
+ sed -i \
+ -e "/package_exists/s:camlp4.macro:xxxxxx:" \
+ -e "/package_exists/s:menhirLib:xxxxxx:" \
+ testsuite/external.ml || die
+ default
+}
+
+src_configure() {
+ emake -f configure.make Makefile.config \
+ PREFIX="${EPREFIX}/usr" \
+ BINDIR="${EPREFIX}/usr/bin" \
+ LIBDIR="$(ocamlc -where)" \
+ OCAML_NATIVE=$(usex ocamlopt true false) \
+ OCAML_NATIVE_TOOLS=$(usex ocamlopt true false) \
+ NATDYNLINK=$(usex ocamlopt true false)
+}
+
+src_compile() {
+ emake src/ocamlbuild_config.cmo
+ default
+}
+
+src_install() {
+ # OCaml generates textrels on 32-bit arches
+ if use arm || use ppc || use x86 ; then
+ export QA_TEXTRELS='.*'
+ fi
+ emake CHECK_IF_PREINSTALLED=false DESTDIR="${D}" install
+ dodoc Changes
+}
+
+src_test() {
+ emake -j1 test
+}
diff --git a/dev-ml/ocamlfuse/Manifest b/dev-ml/ocamlfuse/Manifest
new file mode 100644
index 000000000000..4d8e5a1546a8
--- /dev/null
+++ b/dev-ml/ocamlfuse/Manifest
@@ -0,0 +1 @@
+DIST ocamlfuse-2.7.1_p11.tar.gz 24403 BLAKE2B 5ea9c3680b857f438439a4ac67992d2524edf60ff98e6bb2783fcb72f63978daa8eb840ba5ff9ab687c30f72991f9f3a96b12800014e4e8408000b1ee5927e78 SHA512 e77bc2bcb77d2f17183c1de6113bd7e4d888f60c6ceacc326e4b03ccfef6f1608b1feef58ed7f6e16fe22d645714c40140580bb19ae52dab11ce62e94dfdd1fa
diff --git a/dev-ml/ocamlfuse/metadata.xml b/dev-ml/ocamlfuse/metadata.xml
new file mode 100644
index 000000000000..1dd437ed7704
--- /dev/null
+++ b/dev-ml/ocamlfuse/metadata.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <longdescription lang="en">This is a binding to FUSE for the OCaml programming language, enabling
+you to write multithreaded filesystems in the OCaml language. It has
+been designed with simplicity as a goal, as you can see by looking at
+example/fusexmp.ml. Efficiency has also been a separate goal. The
+Bigarray library is used for read and writes, allowing the library to
+do zero-copy in OCaml land.</longdescription>
+ <upstream>
+ <bugs-to>https://github.com/astrada/ocamlfuse/issues</bugs-to>
+ <maintainer>
+ <name>Alessandro Strada</name>
+ <email>alessandro.strada@gmail.com</email>
+ </maintainer>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocamlfuse/ocamlfuse-2.7.1_p11.ebuild b/dev-ml/ocamlfuse/ocamlfuse-2.7.1_p11.ebuild
new file mode 100644
index 000000000000..bdb100f6ada5
--- /dev/null
+++ b/dev-ml/ocamlfuse/ocamlfuse-2.7.1_p11.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune toolchain-funcs
+
+MYPV="${PV/_p/_cvs}"
+
+DESCRIPTION="OCaml binding for fuse"
+HOMEPAGE="
+ https://sourceforge.net/projects/ocamlfuse/
+ https://github.com/astrada/ocamlfuse
+ https://opam.ocaml.org/packages/ocamlfuse
+"
+SRC_URI="https://github.com/astrada/${PN}/archive/v${MYPV}.tar.gz -> ${PF}.tar.gz"
+S="${WORKDIR}/${PN}-${MYPV}"
+
+LICENSE="GPL-2"
+SLOT="0/${PV}"
+KEYWORDS="~amd64"
+IUSE="ocamlopt"
+
+RDEPEND="
+ dev-ml/camlidl:=
+ sys-fs/fuse:0
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-ml/dune-configurator
+ dev-ml/opam
+"
+
+src_compile() {
+ tc-export CPP
+ dune_src_compile
+}
diff --git a/dev-ml/ocamlgraph/Manifest b/dev-ml/ocamlgraph/Manifest
new file mode 100644
index 000000000000..e137953b3dbc
--- /dev/null
+++ b/dev-ml/ocamlgraph/Manifest
@@ -0,0 +1,2 @@
+DIST ocamlgraph-2.1.0.tbz 311740 BLAKE2B 938def0cfce8ad5c2d47058bf533715cf9359d25ea968ceeb2959cb968e08a9acf442e21cd16c1e93df1919177c01105c1139c71be6e53c6e1b22aa511e2619f SHA512 8ee77bc1ef27bef41171b5718a73342dca8adc4b4592ff835038cd21e8c91152a0f9500b4034f664d1db7a09dab1efcc3be5d7c59260d6b33710b82a1fb2f196
+DIST ocamlgraph-2.2.0.tbz 317929 BLAKE2B 3bf0f5da1a4495f31ea6350bba3a2d58ec8e32670358beab57dd32a9025cdd6dae4c2a9bb013c12f9d868c99e80914e6e7fcd0db7e32aa60d169b207876bcd82 SHA512 257cdd5fb90337b3e3682cade1269c1d181f3124e569a731909f49bbfbe581ab529ac401472fb9ef57166ac34d8ebadfa6a32c93665f38f5a335982d5e5dc0e1
diff --git a/dev-ml/ocamlgraph/metadata.xml b/dev-ml/ocamlgraph/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ocamlgraph/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocamlgraph/ocamlgraph-2.1.0.ebuild b/dev-ml/ocamlgraph/ocamlgraph-2.1.0.ebuild
new file mode 100644
index 000000000000..fab08f3f97fd
--- /dev/null
+++ b/dev-ml/ocamlgraph/ocamlgraph-2.1.0.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="O'Caml Graph library"
+HOMEPAGE="http://ocamlgraph.lri.fr/index.en.html"
+SRC_URI="https://github.com/backtracking/${PN}/releases/download/${PV}/${P}.tbz"
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+RDEPEND="
+ dev-ml/stdlib-shims:=[ocamlopt?]
+ dev-ml/graphics:=[ocamlopt?]"
+DEPEND="${RDEPEND}"
+IUSE="+ocamlopt"
+
+src_compile() {
+ dune-compile ocamlgraph
+}
diff --git a/dev-ml/ocamlgraph/ocamlgraph-2.2.0.ebuild b/dev-ml/ocamlgraph/ocamlgraph-2.2.0.ebuild
new file mode 100644
index 000000000000..181d0f5f30e3
--- /dev/null
+++ b/dev-ml/ocamlgraph/ocamlgraph-2.2.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="O'Caml Graph library"
+HOMEPAGE="http://ocamlgraph.lri.fr/index.en.html"
+SRC_URI="https://github.com/backtracking/${PN}/releases/download/${PV}/${P}.tbz"
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+RDEPEND="
+ dev-ml/graphics:=[ocamlopt?]"
+DEPEND="${RDEPEND}"
+IUSE="+ocamlopt"
+
+src_compile() {
+ dune-compile ocamlgraph
+}
diff --git a/dev-ml/ocamlnet/Manifest b/dev-ml/ocamlnet/Manifest
new file mode 100644
index 000000000000..f8c4e062ea07
--- /dev/null
+++ b/dev-ml/ocamlnet/Manifest
@@ -0,0 +1,2 @@
+DIST ocamlnet-4.1.8.tar.gz 4620065 BLAKE2B 8f84ce4d79de5f4a1f26d4e45f68327042b0adc22717e56eeaca03ee6371e9251c01e8736d3afe5c00a1c65ef0286d56a04c57e80377402bb19ff87955ae98d9 SHA512 e238235968b9546c60568a38e68e354378d30e7137973332dcb10da21fa775ab7b367889fc51f5bd7cb00e51582834cafe2a0c4706b0bc77a44d4571a6f22815
+DIST ocamlnet-4.1.9.tar.gz 4628747 BLAKE2B 40e41edee79ba5957d297506cdf1b907adc8d44a33f25f25b8b1a18487f5ec379fb328c86d6283f7da7cedd8d35b80809e1cd5224522d51afa3e5f2402ac8663 SHA512 a251724deb35e756c81d2d3ac836d413b659acdce6c0acf479a4fca48934ab62ad399a884197d00dbb7e7558132a56be1c8efd553c0a644d329418272f809a46
diff --git a/dev-ml/ocamlnet/files/ocamlnet-4.1.9-int_missing.patch b/dev-ml/ocamlnet/files/ocamlnet-4.1.9-int_missing.patch
new file mode 100644
index 000000000000..65acbc24aded
--- /dev/null
+++ b/dev-ml/ocamlnet/files/ocamlnet-4.1.9-int_missing.patch
@@ -0,0 +1,20 @@
+--- a/configure 2025-04-12 18:33:58.152657365 +0200
++++ b/configure 2025-04-12 18:34:13.302476934 +0200
+@@ -829,7 +829,7 @@
+ cat <<EOF >tmp/t.c
+ #include "tcl.h"
+
+-main () {
++int main () {
+ }
+ EOF
+
+@@ -849,7 +849,7 @@
+ #include <stdio.h>
+ #include "tcl.h"
+
+-do_something () {
++int do_something () {
+ void (*x)(int);
+ x = Tcl_Exit;
+ exit(0);
diff --git a/dev-ml/ocamlnet/files/ocamlnet-4.1.9-noWhich.patch b/dev-ml/ocamlnet/files/ocamlnet-4.1.9-noWhich.patch
new file mode 100644
index 000000000000..9baed9842292
--- /dev/null
+++ b/dev-ml/ocamlnet/files/ocamlnet-4.1.9-noWhich.patch
@@ -0,0 +1,16 @@
+--- a/configure 2024-10-23 21:15:13.597333850 +0200
++++ b/configure 2024-10-23 21:15:34.527082731 +0200
+@@ -1106,11 +1106,11 @@
+ printf "%s" "Checking for make utility... "
+ if [ -z "$MAKE" ]
+ then
+- if which gmake >/dev/null
++ if command -v gmake >/dev/null
+ then
+ make=gmake
+ else
+- if which make >/dev/null
++ if command -v make >/dev/null
+ then
+ make=make
+ fi
diff --git a/dev-ml/ocamlnet/files/ocamlnet-4.1.9-shuffle.patch b/dev-ml/ocamlnet/files/ocamlnet-4.1.9-shuffle.patch
new file mode 100644
index 000000000000..6b7026faf1e0
--- /dev/null
+++ b/dev-ml/ocamlnet/files/ocamlnet-4.1.9-shuffle.patch
@@ -0,0 +1,11 @@
+--- a/Makefile.rules 2023-01-20 22:52:47.530898157 +0100
++++ b/Makefile.rules 2023-01-20 22:53:09.370565670 +0100
+@@ -210,7 +210,7 @@
+ # Set NODEP to "@true" in order to disable "depend".
+
+ depend: $(DEP_FILES)
+- $(NODEP) $(OCAMLDEP) *.ml *.mli >$@ || { rm -f $@; exit 1; }
++ $(NODEP) $(OCAMLDEP) -ml-synonym .mll *.ml *.mli >$@ || { rm -f $@; exit 1; }
+
+ .PHONY: clean
+ clean:: genclean
diff --git a/dev-ml/ocamlnet/files/ocamlnet-4.1.9-unboundLexer.patch b/dev-ml/ocamlnet/files/ocamlnet-4.1.9-unboundLexer.patch
new file mode 100644
index 000000000000..416df217c035
--- /dev/null
+++ b/dev-ml/ocamlnet/files/ocamlnet-4.1.9-unboundLexer.patch
@@ -0,0 +1,10 @@
+--- a/src/rpc-generator/Makefile 2022-12-22 08:32:49.839794123 +0100
++++ b/src/rpc-generator/Makefile 2022-12-22 08:34:48.185817182 +0100
+@@ -31,4 +31,7 @@
+ rpcgen-packlist:
+ echo $(BINDIR)/ocamlrpcgen >rpcgen-packlist
+
++main.cmo: lexer.cmo
++lexer.cmo: parser.cmo
++
+ include depend
diff --git a/dev-ml/ocamlnet/metadata.xml b/dev-ml/ocamlnet/metadata.xml
new file mode 100644
index 000000000000..615bed0984c2
--- /dev/null
+++ b/dev-ml/ocamlnet/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <use>
+ <flag name="httpd">Enables net-httpd web server component</flag>
+ <flag name="zip">Enables netzip support to read/write gzip data using object channels</flag>
+ </use>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocamlnet/ocamlnet-4.1.8-r2.ebuild b/dev-ml/ocamlnet/ocamlnet-4.1.8-r2.ebuild
new file mode 100644
index 000000000000..e79e1f7d0784
--- /dev/null
+++ b/dev-ml/ocamlnet/ocamlnet-4.1.8-r2.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit findlib toolchain-funcs
+
+MY_P=${P/_beta/test}
+DESCRIPTION="Modules for OCaml application-level Internet protocols"
+HOMEPAGE="http://projects.camlcity.org/projects/ocamlnet.html"
+SRC_URI="http://download.camlcity.org/download/${MY_P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="ZLIB GPL-2+"
+SLOT="0/${PV}"
+KEYWORDS="amd64 ~ppc x86"
+IUSE="kerberos tk httpd +ocamlopt +pcre ssl zip"
+RESTRICT="installsources strip"
+
+# the auth-dh compile flag has been disabled as well, since it depends on
+# ocaml-cryptgps, which is not available.
+
+BDEPEND="
+ dev-ml/cppo
+ virtual/pkgconfig
+"
+RDEPEND="
+ >=dev-ml/findlib-1.0
+ <dev-lang/ocaml-5:=[ocamlopt?]
+ pcre? ( >=dev-ml/pcre-ocaml-5:= )
+ tk? ( dev-ml/labltk:= )
+ ssl? ( net-libs/gnutls:= )
+ kerberos? ( virtual/krb5 )
+ zip? ( dev-ml/camlzip:= )
+"
+DEPEND="${RDEPEND}"
+
+ocamlnet_use_with() {
+ if use $1; then
+ echo "-with-$2"
+ else
+ echo "-without-$2"
+ fi
+}
+
+ocamlnet_use_enable() {
+ if use $1; then
+ echo "-enable-$2"
+ else
+ echo "-disable-$2"
+ fi
+}
+
+src_configure() {
+ ./configure \
+ -bindir /usr/bin \
+ -datadir /usr/share/${PN} \
+ $(ocamlnet_use_enable ssl gnutls) \
+ $(ocamlnet_use_enable kerberos gssapi) \
+ $(ocamlnet_use_enable pcre pcre) \
+ $(ocamlnet_use_enable tk tcl) \
+ $(ocamlnet_use_enable zip zip) \
+ $(ocamlnet_use_with httpd nethttpd) \
+ -cpp "$(tc-getPROG CPP cpp)" \
+ -equeue-tcl-libs -ltcl \
+ || die "Error: econf failed!"
+}
+
+src_compile() {
+ emake -j1 all
+ if use ocamlopt; then
+ emake -j1 opt
+ fi
+}
+
+src_install() {
+ findlib_src_install
+}
diff --git a/dev-ml/ocamlnet/ocamlnet-4.1.9-r2.ebuild b/dev-ml/ocamlnet/ocamlnet-4.1.9-r2.ebuild
new file mode 100644
index 000000000000..80076c06e44f
--- /dev/null
+++ b/dev-ml/ocamlnet/ocamlnet-4.1.9-r2.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit findlib toolchain-funcs
+
+MY_P=${P/_beta/test}
+DESCRIPTION="Modules for OCaml application-level Internet protocols"
+HOMEPAGE="http://projects.camlcity.org/projects/ocamlnet.html"
+SRC_URI="http://download.camlcity.org/download/${MY_P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="ZLIB GPL-2+"
+SLOT="0/${PV}"
+KEYWORDS="amd64 ~ppc x86"
+IUSE="kerberos tk httpd +ocamlopt +pcre ssl zip"
+RESTRICT="installsources strip"
+
+# the auth-dh compile flag has been disabled as well, since it depends on
+# ocaml-cryptgps, which is not available.
+
+BDEPEND="
+ dev-ml/cppo
+ virtual/pkgconfig
+"
+RDEPEND="
+ >=dev-ml/findlib-1.0
+ <dev-lang/ocaml-5:=[ocamlopt?]
+ pcre? ( >=dev-ml/pcre-ocaml-5:= )
+ tk? ( dev-ml/labltk:= )
+ ssl? ( net-libs/gnutls:= )
+ kerberos? ( virtual/krb5 )
+ zip? ( dev-ml/camlzip:= )
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-unboundLexer.patch
+ "${FILESDIR}"/${P}-shuffle.patch
+ "${FILESDIR}"/${P}-noWhich.patch
+ "${FILESDIR}"/${P}-int_missing.patch
+)
+
+ocamlnet_use_with() {
+ if use $1; then
+ echo "-with-$2"
+ else
+ echo "-without-$2"
+ fi
+}
+
+ocamlnet_use_enable() {
+ if use $1; then
+ echo "-enable-$2"
+ else
+ echo "-disable-$2"
+ fi
+}
+
+src_prepare() {
+ sed -i \
+ -e "s:^version.*$:version=${PV}:" \
+ configure \
+ || die
+ default
+}
+
+src_configure() {
+ ./configure \
+ -bindir /usr/bin \
+ -datadir /usr/share/${PN} \
+ $(ocamlnet_use_enable ssl gnutls) \
+ $(ocamlnet_use_enable kerberos gssapi) \
+ $(ocamlnet_use_enable pcre pcre) \
+ $(ocamlnet_use_enable tk tcl) \
+ $(ocamlnet_use_enable zip zip) \
+ $(ocamlnet_use_with httpd nethttpd) \
+ -cpp "$(tc-getPROG CPP cpp)" \
+ -equeue-tcl-libs -ltcl \
+ || die "Error: econf failed!"
+}
+
+src_compile() {
+ emake -j1 all
+ if use ocamlopt; then
+ emake -j1 opt
+ fi
+}
+
+src_install() {
+ findlib_src_install
+}
diff --git a/dev-ml/ocamlsdl/Manifest b/dev-ml/ocamlsdl/Manifest
new file mode 100644
index 000000000000..80f100117be8
--- /dev/null
+++ b/dev-ml/ocamlsdl/Manifest
@@ -0,0 +1 @@
+DIST ocamlsdl-0.9.1.tar.gz 226085 BLAKE2B 30ee2f12cdc83344d3a8a9d1e187415b30d5ea83cfed4ac4709a0b4350e386961123e9504fc94a2b5643bb161c65d065298e3d6d8904cb55ab5436d243dfe588 SHA512 8be444a3a4d1b56919c7a28fb607cbd33446f8cf30de3768a9926f23f86690d98ebb8ce6f2fb28c167ea76ac138b670283c5c93d72ea2565aa49a0dc92de181a
diff --git a/dev-ml/ocamlsdl/files/ocamlsdl-0.9.1-fix-ocaml-4.09.0-compilation.patch b/dev-ml/ocamlsdl/files/ocamlsdl-0.9.1-fix-ocaml-4.09.0-compilation.patch
new file mode 100644
index 000000000000..d8085a8289bc
--- /dev/null
+++ b/dev-ml/ocamlsdl/files/ocamlsdl-0.9.1-fix-ocaml-4.09.0-compilation.patch
@@ -0,0 +1,28 @@
+https://sources.debian.org/patches/ocamlsdl/0.9.1-3/0002-Fix-compilation-with-OCaml-4.08.0.patch/
+From: Stephane Glondu <steph@glondu.net>
+Date: Fri, 6 Sep 2019 09:35:32 +0200
+Subject: Fix compilation with OCaml 4.08.0
+
+---
+ src/sdlmouse.ml | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/sdlmouse.ml b/src/sdlmouse.ml
+index 5d3120b..39cc58d 100644
+--- a/src/sdlmouse.ml
++++ b/src/sdlmouse.ml
+@@ -49,12 +49,12 @@ external cursor_data : cursor -> cursor_data
+ = "ml_SDL_Cursor_data"
+
+ let string_of_bits x =
+- let s = String.make 8 ' ' in
++ let s = Bytes.make 8 ' ' in
+ for i=0 to 7 do
+ if x land (1 lsl i) <> 0
+ then s.[7-i] <- '@'
+ done ;
+- s
++ Bytes.to_string s
+
+ let pprint_cursor c =
+ let { data = data ; mask = mask } = cursor_data c in
diff --git a/dev-ml/ocamlsdl/files/ocamlsdl-0.9.1-ocamlopt.patch b/dev-ml/ocamlsdl/files/ocamlsdl-0.9.1-ocamlopt.patch
new file mode 100644
index 000000000000..603654dceffa
--- /dev/null
+++ b/dev-ml/ocamlsdl/files/ocamlsdl-0.9.1-ocamlopt.patch
@@ -0,0 +1,22 @@
+Index: ocamlsdl-0.9.1/src/Makefile
+===================================================================
+--- ocamlsdl-0.9.1.orig/src/Makefile
++++ ocamlsdl-0.9.1/src/Makefile
+@@ -17,7 +17,7 @@ gfx_MODULES = sdlgfx
+
+ TARGETS = sdl.cma $(patsubst %,sdl%.cma,$(PARTS))
+ TARGETS += libsdlstub.$(A) $(patsubst %,libsdl%stub.$(A),$(PARTS))
+-ifdef OCAMLOPT
++ifneq ($(OCAMLOPT),no)
+ TARGETS += sdl.cmxa $(patsubst %,sdl%.cmxa,$(PARTS))
+ endif
+
+@@ -87,7 +87,7 @@ ifdef OCAMLFIND
+ install-findlib :
+ $(OCAMLFIND) install sdl ../META \
+ *.cma lib*.$(A) *.cmi *.mli \
+- $(if $(OCAMLOPT),*.cmxa sdl*.$(A) *.cmx) \
++ $(if $(filter-out $(OCAMLOPT),no),*.cmxa sdl*.$(A) *.cmx) \
+ $(if $(OCAMLMKLIB),dll*.so)
+ ifeq ($(PLATFORM),Apple)
+ $(RANLIB) $$($(OCAMLFIND) printconf destdir)/sdl/*.$(A)
diff --git a/dev-ml/ocamlsdl/metadata.xml b/dev-ml/ocamlsdl/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ocamlsdl/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocamlsdl/ocamlsdl-0.9.1-r1.ebuild b/dev-ml/ocamlsdl/ocamlsdl-0.9.1-r1.ebuild
new file mode 100644
index 000000000000..3cb93607525a
--- /dev/null
+++ b/dev-ml/ocamlsdl/ocamlsdl-0.9.1-r1.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit findlib
+
+DESCRIPTION="OCaml SDL Bindings"
+HOMEPAGE="http://ocamlsdl.sourceforge.net"
+SRC_URI="https://downloads.sourceforge.net/ocamlsdl/${P}.tar.gz"
+LICENSE="LGPL-2"
+
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~ppc x86"
+IUSE="doc +ocamlopt opengl truetype" #noimage nomixer
+
+RDEPEND="
+ <dev-lang/ocaml-5:=[ocamlopt=]
+ >=media-libs/libsdl-1.2
+ opengl? ( >=dev-ml/lablgl-0.98:= )
+ >=media-libs/sdl-mixer-1.2
+ >=media-libs/sdl-image-1.2
+ truetype? ( >=media-libs/sdl-ttf-2.0 )
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-0.9.1-ocamlopt.patch"
+ "${FILESDIR}/${PN}-0.9.1-fix-ocaml-4.09.0-compilation.patch"
+)
+
+src_configure() {
+ myconf=""
+ if use opengl; then
+ destdir=$(ocamlfind printconf destdir)
+ lablgldir=$(find ${destdir} -name "lablgl" -or -name "lablGL")
+ if [ -z "${lablgldir}" ]; then
+ destdir=$(ocamlc -where)
+ lablgldir=$(find ${destdir} -name "lablgl" -or -name "lablGL")
+ fi
+
+ if [ ! -z "${lablgldir}" ]; then
+ myconf="--with-lablgldir=${lablgldir}"
+ fi
+ fi
+
+ #use noimage && myconf="${myconf} --without-sdl-image"
+ #use nomixer && myconf="${myconf} --without-sdl-mixer"
+
+ econf \
+ $myconf \
+ $(use_enable truetype sdl-ttf)
+ if ! use opengl; then
+ sed -i \
+ -e 's:LABLGLDIR:FALSE:' \
+ src/Makefile \
+ || die
+ fi
+}
+
+src_install() {
+ findlib_src_install
+
+ dodoc AUTHORS NEWS README
+ doinfo doc/*.info*
+
+ if use doc; then
+ docinto html
+ dodoc doc/html/*
+ fi
+}
diff --git a/dev-ml/ocamlweb/Manifest b/dev-ml/ocamlweb/Manifest
new file mode 100644
index 000000000000..dfe53991c1d9
--- /dev/null
+++ b/dev-ml/ocamlweb/Manifest
@@ -0,0 +1 @@
+DIST ocamlweb-1.41.tar.gz 141844 BLAKE2B b89b20bdc8b99d34069b2e32a6bd8c9684e294fba667a4b74080b34f37c6d90432c61e71e27f4f1772cda8a26891655bd99a21defa584f4a1c68ae1e0d58d454 SHA512 7a6403f8b0de3feeef9657e8aff10e6f1fe29edc400ce3f11c6435d6350314423fb74e192e4275a9ad47170019d6a960daf74f245539f0f3f2a6072cc7195442
diff --git a/dev-ml/ocamlweb/files/ocamlweb-1.41-ocaml-4.08.0.patch b/dev-ml/ocamlweb/files/ocamlweb-1.41-ocaml-4.08.0.patch
new file mode 100644
index 000000000000..b8da9e02b032
--- /dev/null
+++ b/dev-ml/ocamlweb/files/ocamlweb-1.41-ocaml-4.08.0.patch
@@ -0,0 +1,53 @@
+From: Stephane Glondu <steph@glondu.net>
+Date: Fri, 6 Sep 2019 09:53:22 +0200
+Subject: Fix compilation with OCaml 4.08.0
+
+---
+ web.ml | 18 ++++++++++--------
+ 1 file changed, 10 insertions(+), 8 deletions(-)
+
+diff --git a/web.ml b/web.ml
+index 7dc1470..6f9ca51 100644
+--- a/web.ml
++++ b/web.ml
+@@ -247,14 +247,16 @@ let norm_string s =
+
+ let alpha_string s1 s2 =
+ match what_is_first_char s1, what_is_first_char s2 with
+- | Symbol, Symbol -> s1 < s2
+- | Symbol, _ -> true
+- | _, Symbol -> false
+- | _,_ -> norm_string s1 < norm_string s2
++ | Symbol, Symbol -> compare s1 s2
++ | Symbol, _ -> -1
++ | _, Symbol -> 1
++ | _,_ -> compare (norm_string s1) (norm_string s2)
++
++let ( ++ ) c1 c2 =
++ if c1 = 0 then c2 else c1
+
+ let order_entry e1 e2 =
+- (alpha_string e1.e_name e2.e_name) ||
+- (e1.e_name = e2.e_name && e1.e_type < e2.e_type)
++ alpha_string e1.e_name e2.e_name ++ compare e1.e_type e2.e_type
+
+ (*s The following function collects all the index entries and sort them
+ using [alpha_string], returning a list. *)
+@@ -264,7 +266,7 @@ module Idset = Set.Make(struct type t = index_entry let compare = compare end)
+ let all_entries () =
+ let s = Idmap.fold (fun x _ s -> Idset.add x s) !used Idset.empty in
+ let s = Idmap.fold (fun x _ s -> Idset.add x s) !defined s in
+- Sort.list order_entry (Idset.elements s)
++ List.sort order_entry (Idset.elements s)
+
+
+ (*s When we are in \LaTeX\ style, an index entry only consists in two lists
+@@ -324,7 +326,7 @@ let list_in_table id t =
+ try
+ let l = Whereset.elements (Idmap.find id t) in
+ let l = map_succeed_nf find_where l in
+- let l = Sort.list (fun x x' -> snd x < snd x') l in
++ let l = List.sort (fun x x' -> compare (snd x) (snd x')) l in
+ uniquize l
+ with Not_found ->
+ []
diff --git a/dev-ml/ocamlweb/files/ocamlweb-1.41-strip.patch b/dev-ml/ocamlweb/files/ocamlweb-1.41-strip.patch
new file mode 100644
index 000000000000..1cb407a4a51e
--- /dev/null
+++ b/dev-ml/ocamlweb/files/ocamlweb-1.41-strip.patch
@@ -0,0 +1,17 @@
+--- ocamlweb-1.41-orig/Makefile.in 2019-01-25 20:54:14.000000000 +1100
++++ ocamlweb-1.41/Makefile.in 2020-10-12 19:49:20.490860201 +1100
+@@ -61,14 +61,12 @@
+
+ ocamlweb: $(CAML_CMX) $(CAMLLEX_CMX) $(CMX)
+ $(CAMLCOPT) $(OPTFLAGS) -o $@ -I +compiler-libs ocamloptcomp.cmxa $(CAML_CMX) $(CAMLLEX_CMX) $(CMX)
+- strip ocamlweb
+
+ ocamlweb.byte: $(CAML_CMO) $(CAMLLEX_CMO) $(CMO)
+ $(CAMLC) $(BYTEFLAGS) -o $@ $(CAML_CMO) $(CAMLLEX_CMO) $(CMO)
+
+ ocamlweb.static: $(CAML_CMX) $(CAMLLEX_CMX) $(CMX)
+ $(CAMLCOPT) $(OPTFLAGS) -cclib -static -o $@ $(CAML_CMX) $(CAMLLEX_CMX) $(CMX)
+- strip $@
+
+ debug: $(CAML_CMO) $(CAMLLEX_CMO) $(CMO)
+ $(CAMLC) $(BYTEFLAGS) -o ocamlweb-debug $(CAML_CMO) $(CAMLLEX_CMO) $(CMO)
diff --git a/dev-ml/ocamlweb/metadata.xml b/dev-ml/ocamlweb/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ocamlweb/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocamlweb/ocamlweb-1.41-r2.ebuild b/dev-ml/ocamlweb/ocamlweb-1.41-r2.ebuild
new file mode 100644
index 000000000000..71e8467a476b
--- /dev/null
+++ b/dev-ml/ocamlweb/ocamlweb-1.41-r2.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit latex-package
+
+DESCRIPTION="O'Caml literate programming tool"
+HOMEPAGE="https://www.lri.fr/~filliatr/ocamlweb/"
+SRC_URI="https://www.lri.fr/~filliatr/ftp/ocamlweb/${P}.tar.gz"
+
+LICENSE="LGPL-2"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 x86"
+IUSE="test"
+
+RESTRICT="!test? ( test )"
+
+DEPEND="<dev-lang/ocaml-5:=
+ virtual/latex-base
+ dev-texlive/texlive-latexextra"
+RDEPEND="${DEPEND}"
+BDEPEND="test? ( dev-tex/hevea )"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-1.41-strip.patch"
+ "${FILESDIR}/${PN}-1.41-ocaml-4.08.0.patch"
+)
+
+QA_FLAGS_IGNORED=/usr/bin/ocamlweb
+
+src_compile() {
+ default
+}
+
+src_install() {
+ emake UPDATETEX="" prefix="${D}/usr" MANDIR="${D}/usr/share/man" BASETEXDIR="${D}/${TEXMF}" install
+ dodoc README CHANGES
+}
diff --git a/dev-ml/ocplib-endian/Manifest b/dev-ml/ocplib-endian/Manifest
new file mode 100644
index 000000000000..2c8040fa1750
--- /dev/null
+++ b/dev-ml/ocplib-endian/Manifest
@@ -0,0 +1,2 @@
+DIST ocplib-endian-1.1.tar.gz 17544 BLAKE2B 62e4b1cb998ac00fd3cfd7178939b6c9f8c1bebe7c0dc072fbb45b79172cb07f4466e5f1e6e93b41e3fb8c3df8020d2033eb24abfec4906d3ad003fa22bdcd27 SHA512 39351c666d1394770696fa89ac62f7c137ad1697d99888bfba2cc8de2c61df05dd8b3aa327c117bf38f3e29e081026d2c575c5ad0022bde92b3d43aba577d3f9
+DIST ocplib-endian-1.2.tar.gz 18061 BLAKE2B 25354888f80ec4d09b9605f293b121dd66d365a461d2e40d9c3d41afa56303562d5db03a469469c1d59d304dd0d47657381c2f42b9e4935005c2ce85fbd5b80a SHA512 2e70be5f3d6e377485c60664a0e235c3b9b24a8d6b6a03895d092c6e40d53810bfe1f292ee69e5181ce6daa8a582bfe3d59f3af889f417134f658812be5b8b85
diff --git a/dev-ml/ocplib-endian/metadata.xml b/dev-ml/ocplib-endian/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ocplib-endian/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocplib-endian/ocplib-endian-1.1-r1.ebuild b/dev-ml/ocplib-endian/ocplib-endian-1.1-r1.ebuild
new file mode 100644
index 000000000000..36f30adca481
--- /dev/null
+++ b/dev-ml/ocplib-endian/ocplib-endian-1.1-r1.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="Functions to read and write int16/32/64 from strings, bytes, and bigarrays"
+HOMEPAGE="https://github.com/OCamlPro/ocplib-endian"
+SRC_URI="https://github.com/OCamlPro/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 x86"
+IUSE="+ocamlopt"
+
+# 2 of 70 tests fail
+RESTRICT="test"
+
+BDEPEND=">=dev-ml/cppo-1.6.6"
diff --git a/dev-ml/ocplib-endian/ocplib-endian-1.2.ebuild b/dev-ml/ocplib-endian/ocplib-endian-1.2.ebuild
new file mode 100644
index 000000000000..7e02940b59a7
--- /dev/null
+++ b/dev-ml/ocplib-endian/ocplib-endian-1.2.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="Functions to read and write int16/32/64 from strings, bytes, and bigarrays"
+HOMEPAGE="https://github.com/OCamlPro/ocplib-endian"
+SRC_URI="https://github.com/OCamlPro/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+# 2 of 70 tests fail
+RESTRICT="test"
+
+BDEPEND=">=dev-ml/cppo-1.6.6"
diff --git a/dev-ml/ocplib-simplex/Manifest b/dev-ml/ocplib-simplex/Manifest
new file mode 100644
index 000000000000..07d5c85d3e63
--- /dev/null
+++ b/dev-ml/ocplib-simplex/Manifest
@@ -0,0 +1,2 @@
+DIST ocplib-simplex-0.4.1.tar.gz 31955 BLAKE2B bddcf1f83dfd64fd7da3564cbb3fcb9f8e50ad4106ec03b6881315edd6106bb2f691dbe8f288121c351fa7e861fdddb9a818ce4527ab960a9c7109af49d97761 SHA512 6436a904f4e0ec4efa13592185764b58142296816855562d9c2c6d360b64ab554bbd95314976e0462fbb2ed145f8915fd9c2f63f7bae66063efb4c51f74f3edb
+DIST ocplib-simplex-0.5.1.tar.gz 34208 BLAKE2B 713283c7ed3a938e9751ebc0cf9cccee4cda17f34e3e11fcab8835f452180389ef9af1a2d1b0cdaf6e3a9ffe4330eb96eeefe713ea542d16bd3aa8f8bf0b986a SHA512 652535875ce4f21a46381847539dbc7aba80e7d374856034f8526413f6705b84cc9758a8433a67d852e864080b4e82a79834e493a7665541680aefbd1a8da3fc
diff --git a/dev-ml/ocplib-simplex/files/ocplib-simplex-0.4-flags.patch b/dev-ml/ocplib-simplex/files/ocplib-simplex-0.4-flags.patch
new file mode 100644
index 000000000000..ac76488238d4
--- /dev/null
+++ b/dev-ml/ocplib-simplex/files/ocplib-simplex-0.4-flags.patch
@@ -0,0 +1,48 @@
+--- a/Makefile.in 2020-06-13 22:27:11.971906805 +0200
++++ b/Makefile.in 2020-06-13 22:28:14.193938195 +0200
+@@ -73,19 +73,19 @@
+ opt: src/$(LIBNAME).cma src/$(LIBNAME).cmxa src/$(LIBNAME).cmxs
+
+ src/$(LIBNAME).cma: src/$(LIBNAME).cmo
+- $(OCAMLC) -a $(BFLAGS_LIGHT) -o $@ $^
++ $(OCAMLC) -a $(BFLAGS_LIGHT) -ccopt "$(CFLAGS)" -o $@ $^
+
+ src/$(LIBNAME).cmxa: src/$(LIBNAME).cmx
+- $(OCAMLOPT) -a $(OFLAGS_LIGHT) -o $@ $^
++ $(OCAMLOPT) -a $(OFLAGS_LIGHT) -ccopt "$(CFLAGS)" -o $@ $^
+
+ src/$(LIBNAME).cmxs: src/$(LIBNAME).cmx
+- $(OCAMLOPT) -shared $(OFLAGS_LIGHT) -o $@ $^
++ $(OCAMLOPT) -shared $(OFLAGS_LIGHT) -ccopt "$(CFLAGS)" -cclib "$(LDFLAGS)" -o $@ $^
+
+ src/$(LIBNAME).cmo: $(CMO) # src/$(LIBNAME).cmi
+- $(OCAMLC) $(BFLAGS_LIGHT) -pack -o src/$(LIBNAME).cmo $^
++ $(OCAMLC) $(BFLAGS_LIGHT) -ccopt "$(CFLAGS)" -pack -o src/$(LIBNAME).cmo $^
+
+ src/$(LIBNAME).cmx: $(CMX) # src/$(LIBNAME).cmi
+- $(OCAMLOPT) $(OFLAGS_LIGHT) -pack -o src/$(LIBNAME).cmx $^
++ $(OCAMLOPT) $(OFLAGS_LIGHT) -pack -ccopt "$(CFLAGS)" -o src/$(LIBNAME).cmx $^
+
+ src/extSigs.ml: src/extSigs.mli
+ cp src/extSigs.mli src/extSigs.ml
+@@ -125,16 +125,16 @@
+ .SUFFIXES: .mli .ml .cmi .cmo .cmx .mll .mly .tex .dvi .ps .html
+
+ .mli.cmi:
+- $(OCAMLC) -c $(BFLAGS) $<
++ $(OCAMLC) -c $(BFLAGS) -ccopt "$(CFLAGS)" $<
+
+ .ml.cmo:
+- $(OCAMLC) -c $(BFLAGS) $<
++ $(OCAMLC) -c $(BFLAGS) -ccopt "$(CFLAGS)" $<
+
+ .ml.o:
+- $(OCAMLOPT) -c $(OFLAGS) $<
++ $(OCAMLOPT) -c $(OFLAGS) -ccopt "$(CFLAGS)" $<
+
+ .ml.cmx:
+- $(OCAMLOPT) -c $(OFLAGS) $<
++ $(OCAMLOPT) -c $(OFLAGS) -ccopt "$(CFLAGS)" $<
+
+ .mll.ml:
+ $(OCAMLLEX) $< > /dev/null
diff --git a/dev-ml/ocplib-simplex/metadata.xml b/dev-ml/ocplib-simplex/metadata.xml
new file mode 100644
index 000000000000..96f8309f1733
--- /dev/null
+++ b/dev-ml/ocplib-simplex/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <longdescription lang="en">
+ A library implementing a simplex algorithm, in a functional style,
+ for solving systems of linear inequalities
+ </longdescription>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocplib-simplex/ocplib-simplex-0.4.1.ebuild b/dev-ml/ocplib-simplex/ocplib-simplex-0.4.1.ebuild
new file mode 100644
index 000000000000..e55a92a17ae3
--- /dev/null
+++ b/dev-ml/ocplib-simplex/ocplib-simplex-0.4.1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools findlib
+
+DESCRIPTION="A library implementing a simplex algorithm"
+HOMEPAGE="https://github.com/OCamlPro-Iguernlala/ocplib-simplex"
+SRC_URI="https://github.com/OCamlPro-Iguernlala/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0"
+KEYWORDS="amd64 ~arm64"
+
+DOCS=( CHANGES.md README.md extra/simplex_invariants.txt extra/TODO.txt )
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.4-flags.patch
+)
+
+src_prepare() {
+ default
+ mv configure.{in,ac} || die
+ sed -i -e "s:configure.in:configure.ac:g" \
+ Makefile.in || die
+ sed -i \
+ -e "s:which ocamlfind:type -P ocamlfind:" \
+ configure.ac || die
+ eautoreconf
+}
+
+src_install() {
+ findlib_src_install LIBDIR="${D}"/usr/"$(get_libdir)"/ocaml
+}
diff --git a/dev-ml/ocplib-simplex/ocplib-simplex-0.5.1.ebuild b/dev-ml/ocplib-simplex/ocplib-simplex-0.5.1.ebuild
new file mode 100644
index 000000000000..bfeb80795c87
--- /dev/null
+++ b/dev-ml/ocplib-simplex/ocplib-simplex-0.5.1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="A library implementing a simplex algorithm"
+HOMEPAGE="https://github.com/OCamlPro-Iguernlala/ocplib-simplex"
+SRC_URI="https://github.com/OCamlPro-Iguernlala/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0"
+KEYWORDS="amd64 ~arm64"
+IUSE="ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-ml/findlib:=[ocamlopt?]
+ dev-ml/logs:=[ocamlopt?]
+"
+BDEPEND="test? ( dev-ml/zarith )"
+
+DOCS=( CHANGES.md README.md extra/simplex_invariants.txt extra/TODO.txt )
diff --git a/dev-ml/octavius/Manifest b/dev-ml/octavius/Manifest
new file mode 100644
index 000000000000..a4df8983ebf2
--- /dev/null
+++ b/dev-ml/octavius/Manifest
@@ -0,0 +1 @@
+DIST octavius-1.2.2.tar.gz 14910 BLAKE2B ad2c6cc274e205918276ed8ab58032ce3f5fb5d564c1ad7cc33c2d73accf1952e972899bd872b9bcb190fcfa223ee4de7f74fbeba44720b3fe78725d1d4d2561 SHA512 57e40f0bd03599bf0b14d85b29bef2214f9b9393917c0a65acf60cf028fe028a730a804f3c0101fee1378cacd4feb7a4f2df3c8411ceeb6bb34d47f849b7a55e
diff --git a/dev-ml/octavius/metadata.xml b/dev-ml/octavius/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/octavius/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/octavius/octavius-1.2.2.ebuild b/dev-ml/octavius/octavius-1.2.2.ebuild
new file mode 100644
index 000000000000..00dffc12cb9b
--- /dev/null
+++ b/dev-ml/octavius/octavius-1.2.2.ebuild
@@ -0,0 +1,15 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="ocamldoc comment syntax parser"
+HOMEPAGE="https://github.com/ocaml-doc/octavius"
+SRC_URI="https://github.com/ocaml-doc/octavius/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
diff --git a/dev-ml/ocurl/Manifest b/dev-ml/ocurl/Manifest
new file mode 100644
index 000000000000..4bc3d1319a6a
--- /dev/null
+++ b/dev-ml/ocurl/Manifest
@@ -0,0 +1,2 @@
+DIST ocurl-0.9.1.tar.gz 111393 BLAKE2B 83ec8f5e2e83b5cc519683556ca97818a092a80f41305394cc04088371c1179f256dee3d8a8e80597837fb156299698450c70ca00f1ec336ace46b02b84bb51e SHA512 f4acb596f213ce57e749c9805225330b532e17718f3b228745b438cd1fe6d89b37e56d401a11c329107729dd0e6bdd4a425d547f9a83dabe32edbf18aca585b5
+DIST ocurl-0.9.2.tar.gz 116659 BLAKE2B 3947cd82343cc9246c930f8fc89f7899f41a06f41358b5a014fbd05f5c85e70eb3df8c10690e62bd76d345c5738fdab63a936deed53fde0c8a3b040c5890129f SHA512 de9b06a2a4cbf804b6c947ef1011a75f45e3effbc29db054a9b72453920a0f554baa06d06b2a36eeee33090df7f9eb35280404237e2e3be219fb2dc98fe2bc82
diff --git a/dev-ml/ocurl/metadata.xml b/dev-ml/ocurl/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ocurl/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ocurl/ocurl-0.9.1-r1.ebuild b/dev-ml/ocurl/ocurl-0.9.1-r1.ebuild
new file mode 100644
index 000000000000..6f15a69b5ea8
--- /dev/null
+++ b/dev-ml/ocurl/ocurl-0.9.1-r1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit findlib
+
+DESCRIPTION="OCaml interface to the libcurl library"
+HOMEPAGE="https://forge.ocamlcore.org/projects/ocurl/ https://github.com/ygrek/ocurl"
+LICENSE="MIT"
+SRC_URI="https://github.com/ygrek/ocurl/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+SLOT="0/${PV}"
+IUSE="examples +ocamlopt"
+
+BDEPEND="virtual/pkgconfig"
+RDEPEND=">=net-misc/curl-7.9.8
+ dev-ml/lwt:=
+ dev-ml/camlp4:="
+DEPEND="${RDEPEND}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 x86"
+
+src_compile() {
+ emake -j1 all
+}
+
+src_install() {
+ findlib_src_install
+ dodoc CHANGES.txt README.md
+ if use examples; then
+ dodoc -r examples
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+}
diff --git a/dev-ml/ocurl/ocurl-0.9.2-r2.ebuild b/dev-ml/ocurl/ocurl-0.9.2-r2.ebuild
new file mode 100644
index 000000000000..9e7596d46c56
--- /dev/null
+++ b/dev-ml/ocurl/ocurl-0.9.2-r2.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dot-a findlib
+
+DESCRIPTION="OCaml interface to the libcurl library"
+HOMEPAGE="https://forge.ocamlcore.org/projects/ocurl/ https://github.com/ygrek/ocurl"
+SRC_URI="https://github.com/ygrek/ocurl/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="examples +ocamlopt"
+
+RDEPEND="net-misc/curl
+ dev-ml/lwt:=[ocamlopt?]
+ dev-ml/ocplib-endian:=[ocamlopt?]"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+src_configure() {
+ lto-guarantee-fat
+ default
+}
+
+src_compile() {
+ emake -j1 all
+}
+
+src_install() {
+ findlib_src_install
+
+ dodoc CHANGES.txt README.md
+
+ if use examples; then
+ dodoc -r examples
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+ strip-lto-bytecode
+}
diff --git a/dev-ml/odoc/Manifest b/dev-ml/odoc/Manifest
new file mode 100644
index 000000000000..c3de3cfad765
--- /dev/null
+++ b/dev-ml/odoc/Manifest
@@ -0,0 +1,3 @@
+DIST odoc-2.4.3.tbz 1764166 BLAKE2B b9de37c767e9c17367a0105afda75803c75e2b40c6c40c4bd63f99b503d0686224e74523c4c2f3214220d019fc6890df56c7e599d2b402f0c3e212178eea486e SHA512 e78faa68c726db3034c12f0cbf76efb87e73f03430a734f82eeea4fb8813e5ebb8ad176012ed20cc1d56a874c601489ca3f02c929474f925eec6d51ce6bdb856
+DIST odoc-2.4.4.tbz 1764509 BLAKE2B 2fd12fc56057dae91eabf9006fb8b299e3e05d9ff74d51be2457fa3c8972b5e5059c10731a80d6c5c4c8eb76b0130617254b33c1fd3b7bdbc473306c16a0ed44 SHA512 d5b1e6786c9cb371cb207da91728336a4746c8f3f07d817bb8259b32404445cd99ba2455ad51cbaffedf98e24cec68743fb7b02ad44643b1718d3d875b5580ee
+DIST odoc-3.1.0.tbz 1966856 BLAKE2B cd7255cfc27aead5d2a2403be67ca41e580e7920491d686fa7dcb19dee3e79c64f4672cc745154457a42eb8623793ee52846cc2a0a93d470d9a7e6b05bd7798c SHA512 f78318d0a16164a9cd16ee02f611c2e00d32b772fe38e992d6db6ec94b1c00cd9c377fbfe64031b8f245e57b2f3aac9364108327e7f1693533ddcff94c476e05
diff --git a/dev-ml/odoc/metadata.xml b/dev-ml/odoc/metadata.xml
new file mode 100644
index 000000000000..6e8e1b5feb7c
--- /dev/null
+++ b/dev-ml/odoc/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <longdescription>
+ Odoc is a documentation generator for OCaml. It reads doc comments,
+ delimited with (** ... *), and outputs HTML
+ </longdescription>
+ <upstream>
+ <bugs-to>https://github.com/ocaml/odoc/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/odoc/odoc-2.4.3-r1.ebuild b/dev-ml/odoc/odoc-2.4.3-r1.ebuild
new file mode 100644
index 000000000000..52520401ed6c
--- /dev/null
+++ b/dev-ml/odoc/odoc-2.4.3-r1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="OCaml documentation generator"
+HOMEPAGE="http://github.com/ocaml/odoc/"
+SRC_URI="https://github.com/ocaml/${PN}/releases/download/${PV}/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="+ocamlopt test"
+RESTRICT="test"
+
+RDEPEND="
+ <dev-lang/ocaml-5.3
+ dev-ml/astring:=
+ dev-ml/camlp-streams:=[ocamlopt?]
+ dev-ml/cmdliner:=[ocamlopt?]
+ !dev-ml/odoc-parser
+ dev-ml/fmt:=[ocamlopt?]
+ dev-ml/fpath:=
+ dev-ml/ocaml-crunch:=[ocamlopt?]
+ dev-ml/result:=[ocamlopt?]
+ dev-ml/tyxml:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}
+ dev-ml/cppo:=[ocamlopt?]
+"
+BDEPEND=">=dev-ml/dune-3.7"
+
+src_compile() {
+ dune-compile ${PN} odoc-parser
+}
diff --git a/dev-ml/odoc/odoc-2.4.4.ebuild b/dev-ml/odoc/odoc-2.4.4.ebuild
new file mode 100644
index 000000000000..4018948e7302
--- /dev/null
+++ b/dev-ml/odoc/odoc-2.4.4.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="OCaml documentation generator"
+HOMEPAGE="http://github.com/ocaml/odoc/"
+SRC_URI="https://github.com/ocaml/${PN}/releases/download/${PV}/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="+ocamlopt test"
+RESTRICT="test"
+
+RDEPEND="
+ dev-ml/astring:=
+ dev-ml/camlp-streams:=[ocamlopt?]
+ dev-ml/cmdliner:=[ocamlopt?]
+ !dev-ml/odoc-parser
+ dev-ml/fmt:=[ocamlopt?]
+ dev-ml/fpath:=
+ dev-ml/ocaml-crunch:=[ocamlopt?]
+ dev-ml/result:=[ocamlopt?]
+ dev-ml/tyxml:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}
+ dev-ml/cppo:=[ocamlopt?]
+"
+BDEPEND=">=dev-ml/dune-3.7"
+
+src_compile() {
+ dune-compile ${PN} odoc-parser
+}
diff --git a/dev-ml/odoc/odoc-3.1.0.ebuild b/dev-ml/odoc/odoc-3.1.0.ebuild
new file mode 100644
index 000000000000..4018948e7302
--- /dev/null
+++ b/dev-ml/odoc/odoc-3.1.0.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="OCaml documentation generator"
+HOMEPAGE="http://github.com/ocaml/odoc/"
+SRC_URI="https://github.com/ocaml/${PN}/releases/download/${PV}/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="+ocamlopt test"
+RESTRICT="test"
+
+RDEPEND="
+ dev-ml/astring:=
+ dev-ml/camlp-streams:=[ocamlopt?]
+ dev-ml/cmdliner:=[ocamlopt?]
+ !dev-ml/odoc-parser
+ dev-ml/fmt:=[ocamlopt?]
+ dev-ml/fpath:=
+ dev-ml/ocaml-crunch:=[ocamlopt?]
+ dev-ml/result:=[ocamlopt?]
+ dev-ml/tyxml:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}
+ dev-ml/cppo:=[ocamlopt?]
+"
+BDEPEND=">=dev-ml/dune-3.7"
+
+src_compile() {
+ dune-compile ${PN} odoc-parser
+}
diff --git a/dev-ml/opam-0install-cudf/Manifest b/dev-ml/opam-0install-cudf/Manifest
new file mode 100644
index 000000000000..07d60554cdb0
--- /dev/null
+++ b/dev-ml/opam-0install-cudf/Manifest
@@ -0,0 +1 @@
+DIST opam-0install-cudf-0.5.0.tar.gz 9327 BLAKE2B 705e0bcdd8311e5c330f37e5b05ccb02fa73e42603d0c574480c54101fb746a5d5b61176811dff9eaf09bac370f064dfb8a9ada8f4912586a79e7fccefd122ad SHA512 83c0372168d612ef80548ab7fb021a92cdc39e13a77d87c5af5fd21eb515389b624d09c24d500e9ac33b3fc10d17c9869f160f8771f9c8f545b0453b9a0fd4df
diff --git a/dev-ml/opam-0install-cudf/metadata.xml b/dev-ml/opam-0install-cudf/metadata.xml
new file mode 100644
index 000000000000..779216e19d4e
--- /dev/null
+++ b/dev-ml/opam-0install-cudf/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <longdescription lang="en">
+ 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.
+ </longdescription>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/opam-0install-cudf/opam-0install-cudf-0.5.0-r2.ebuild b/dev-ml/opam-0install-cudf/opam-0install-cudf-0.5.0-r2.ebuild
new file mode 100644
index 000000000000..7da1695bf781
--- /dev/null
+++ b/dev-ml/opam-0install-cudf/opam-0install-cudf-0.5.0-r2.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Opam solver using 0install backend using the CUDF interface"
+HOMEPAGE="https://github.com/ocaml-opam/opam-0install-cudf"
+SRC_URI="https://github.com/ocaml-opam/${PN}/releases/download/v${PV}/${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-ml/0install:=[ocamlopt?]
+ dev-ml/cudf:=[ocamlopt?]
+ dev-ml/extlib:=[ocamlopt?]
+"
+BDEPEND="test? ( dev-ml/alcotest )"
+
+src_configure() {
+ :
+}
diff --git a/dev-ml/opam-common/Manifest b/dev-ml/opam-common/Manifest
new file mode 100644
index 000000000000..02e76e3faca0
--- /dev/null
+++ b/dev-ml/opam-common/Manifest
@@ -0,0 +1,4 @@
+DIST opam-2.2.1.tar.gz 1089671 BLAKE2B cd6a97c8c19d7866205b49f95bf4215d986b3ad8b5d1fe5c5fd52db9b8b9e0cff8559d478e18d99d89816bbf830910f182e4c1e80719ac29a3cd5c8299450a21 SHA512 17d7d83b9de118332c121b9d3aa2e48f62a6270ea23e730a536b0f4ff060df85238c7c4ab53a89bcc3b3193d52d14358831bd9bed30a4ac699e44e4c3003b8b0
+DIST opam-2.3.0.tar.gz 1128521 BLAKE2B 1567dbf9f2a944f2399820a1007a0d0943c54e158a5c371421ede0b59a84dfbcef4a5b8e259d74e053e6ae094a89bf6e4ec8686a076c9216f1c7a9136e3958ed SHA512 596d7b28f0cf9613dc7637aaeac45cc45f411a13286fea1cc81aeb0630c4f8a6dc2095d50db73229a255a3da3d9a08fe0993355a7fc64d3b16fd712789ff5f6e
+DIST opam-2.4.1.tar.gz 1191951 BLAKE2B 21c6e5e59741699233be0375e7357ab4f8178f2e80bb347f460ac6e53b7fe3ff63dbfb21aeab6dda51ad937b30050d2eeb55e8b3bd6cacbea9f23fd8321a4646 SHA512 ee1656715f7e03c36ed9aa0a158033bbdb977d3e9017efa0ceddcd7b073e9b587eb6340ddf1916d9da197c7f48766e569221e6d8e43314bf761326329e4be0a6
+DIST opam-2.5.1.tar.gz 1277085 BLAKE2B ce0b3224549144adcd9bb1a185b117a14a4ab3247e33dd882382ff5e1adae14a21acc28fb97a14577e464588d95369f4104663875151574c201819bc472b40ff SHA512 213f65253e12db5e64ece137db48eb031acb683ac3c0ecd3c02d1127a55777ef2d47298ebdffcdbb8c55a3a08ab0ec0a675698b05d72a3fd1649c89af8fdd150
diff --git a/dev-ml/opam-common/files/fix-dotinstall-escape.patch b/dev-ml/opam-common/files/fix-dotinstall-escape.patch
new file mode 100644
index 000000000000..1481bddf18a0
--- /dev/null
+++ b/dev-ml/opam-common/files/fix-dotinstall-escape.patch
@@ -0,0 +1,22 @@
+diff --git a/src/format/opamFile.ml b/src/format/opamFile.ml
+index c1c0a3f1dff..dd85ff45bc0 100644
+--- a/src/format/opamFile.ml
++++ b/src/format/opamFile.ml
+@@ -3728,8 +3728,15 @@ module Dot_installSyntax = struct
+ Pp.V.map_list ~depth:1 @@ Pp.V.map_option
+ (Pp.V.string -| pp_optional)
+ (Pp.opt @@
+- Pp.singleton -| Pp.V.string -|
+- Pp.of_module "rel-filename" (module OpamFilename.Base))
++ Pp.singleton -| Pp.V.string -| Pp.pp ~name:"rel-filename"
++ (fun ~pos s ->
++ if OpamFilename.might_escape ~sep:`Unspecified s then
++ Pp.bad_format ~pos "%s references its parent directory." s
++ else if Filename.is_relative s then
++ OpamFilename.Base.of_string s
++ else
++ Pp.bad_format ~pos "%s is an absolute filename." s)
++ OpamFilename.Base.to_string)
+ in
+ let pp_misc =
+ Pp.V.map_list ~depth:1 @@ Pp.V.map_option
diff --git a/dev-ml/opam-common/metadata.xml b/dev-ml/opam-common/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/opam-common/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/opam-common/opam-common-2.2.1.ebuild b/dev-ml/opam-common/opam-common-2.2.1.ebuild
new file mode 100644
index 000000000000..b5af9d195bfb
--- /dev/null
+++ b/dev-ml/opam-common/opam-common-2.2.1.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Core libraries for opam"
+HOMEPAGE="https://opam.ocaml.org/ https://github.com/ocaml/opam"
+SRC_URI="https://github.com/ocaml/opam/archive/${PV/_/-}.tar.gz -> opam-${PV}.tar.gz"
+S="${WORKDIR}/opam-${PV}"
+
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test" #sandbox not working
+
+RDEPEND="
+ dev-ml/jsonm:=[ocamlopt?]
+ dev-ml/ocamlgraph:=[ocamlopt?]
+ dev-ml/ocaml-sha:=[ocamlopt?]
+ dev-ml/opam-file-format:=[ocamlopt?]
+ dev-ml/re:=[ocamlopt?]
+ dev-ml/stdlib-shims:=[ocamlopt?]
+ dev-ml/swhid_core:=[ocamlopt?]
+ dev-ml/uchar:=[ocamlopt?]
+ dev-ml/uutf:=[ocamlopt?]
+ !<dev-ml/opam-2.2
+"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-ml/findlib"
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile opam-core opam-format
+}
+
+src_install() {
+ dune-install opam-core opam-format
+}
diff --git a/dev-ml/opam-common/opam-common-2.3.0-r1.ebuild b/dev-ml/opam-common/opam-common-2.3.0-r1.ebuild
new file mode 100644
index 000000000000..c13e6af14549
--- /dev/null
+++ b/dev-ml/opam-common/opam-common-2.3.0-r1.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Core libraries for opam"
+HOMEPAGE="https://opam.ocaml.org/ https://github.com/ocaml/opam"
+SRC_URI="https://github.com/ocaml/opam/archive/${PV/_/-}.tar.gz -> opam-${PV}.tar.gz"
+S="${WORKDIR}/opam-${PV}"
+
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test" #sandbox not working
+
+RDEPEND="
+ dev-ml/jsonm:=[ocamlopt?]
+ dev-ml/ocamlgraph:=[ocamlopt?]
+ dev-ml/ocaml-sha:=[ocamlopt?]
+ >=dev-ml/opam-file-format-2.1.4:=[ocamlopt?]
+ dev-ml/re:=[ocamlopt?]
+ dev-ml/stdlib-shims:=[ocamlopt?]
+ dev-ml/swhid_core:=[ocamlopt?]
+ dev-ml/uchar:=[ocamlopt?]
+ dev-ml/uutf:=[ocamlopt?]
+ !<dev-ml/opam-2.2
+"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-ml/findlib"
+
+PATCHES=( "${FILESDIR}"/fix-dotinstall-escape.patch )
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile opam-core opam-format
+}
+
+src_install() {
+ dune-install opam-core opam-format
+}
diff --git a/dev-ml/opam-common/opam-common-2.4.1.ebuild b/dev-ml/opam-common/opam-common-2.4.1.ebuild
new file mode 100644
index 000000000000..00ea02202c86
--- /dev/null
+++ b/dev-ml/opam-common/opam-common-2.4.1.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Core libraries for opam"
+HOMEPAGE="https://opam.ocaml.org/ https://github.com/ocaml/opam"
+SRC_URI="https://github.com/ocaml/opam/archive/${PV/_/-}.tar.gz -> opam-${PV}.tar.gz"
+S="${WORKDIR}/opam-${PV}"
+
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test" #sandbox not working
+
+RDEPEND="
+ dev-ml/jsonm:=[ocamlopt?]
+ dev-ml/ocamlgraph:=[ocamlopt?]
+ dev-ml/ocaml-sha:=[ocamlopt?]
+ >=dev-ml/opam-file-format-2.1.4:=[ocamlopt?]
+ dev-ml/patch:=[ocamlopt?]
+ dev-ml/re:=[ocamlopt?]
+ dev-ml/stdlib-shims:=[ocamlopt?]
+ dev-ml/swhid_core:=[ocamlopt?]
+ dev-ml/uchar:=[ocamlopt?]
+ dev-ml/uutf:=[ocamlopt?]
+ !<dev-ml/opam-2.2
+"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-ml/findlib"
+
+PATCHES=( "${FILESDIR}"/fix-dotinstall-escape.patch )
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile opam-core opam-format
+}
+
+src_install() {
+ dune-install opam-core opam-format
+}
diff --git a/dev-ml/opam-common/opam-common-2.5.1.ebuild b/dev-ml/opam-common/opam-common-2.5.1.ebuild
new file mode 100644
index 000000000000..2541abfea78a
--- /dev/null
+++ b/dev-ml/opam-common/opam-common-2.5.1.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Core libraries for opam"
+HOMEPAGE="https://opam.ocaml.org/ https://github.com/ocaml/opam"
+SRC_URI="https://github.com/ocaml/opam/archive/${PV/_/-}.tar.gz -> opam-${PV}.tar.gz"
+S="${WORKDIR}/opam-${PV}"
+
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test" #sandbox not working
+
+RDEPEND="
+ dev-ml/jsonm:=[ocamlopt?]
+ dev-ml/ocamlgraph:=[ocamlopt?]
+ dev-ml/ocaml-sha:=[ocamlopt?]
+ >=dev-ml/opam-file-format-2.1.4:=[ocamlopt?]
+ dev-ml/patch:=[ocamlopt?]
+ dev-ml/re:=[ocamlopt?]
+ dev-ml/stdlib-shims:=[ocamlopt?]
+ dev-ml/swhid_core:=[ocamlopt?]
+ dev-ml/uchar:=[ocamlopt?]
+ dev-ml/uutf:=[ocamlopt?]
+ !<dev-ml/opam-2.2
+"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-ml/findlib"
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile opam-core opam-format
+}
+
+src_install() {
+ dune-install opam-core opam-format
+}
diff --git a/dev-ml/opam-file-format/Manifest b/dev-ml/opam-file-format/Manifest
new file mode 100644
index 000000000000..e3f855e7cb29
--- /dev/null
+++ b/dev-ml/opam-file-format/Manifest
@@ -0,0 +1,4 @@
+DIST opam-file-format-2.1.3.tar.gz 36255 BLAKE2B eabd343d1ebb5708e57a125cf6f15105e263d0cc0885717df58249313de77cf1063efa2fc0f9b92d67a83649f3bdd8fa65c13077ca4b3814182ec750701570a1 SHA512 90da53a2b19eb97c17ec71d3ac00969863ef3458f421189413b3ec2d96f8822da9fba51ef95f55064bbb17f1729104a1fe4fed1d61d5006568b53165f0c6931f
+DIST opam-file-format-2.1.5.tar.gz 36682 BLAKE2B 3766497f930db4f72e2c7968684b53038846dfd5ef609846b455dcc946d7f6b71a843fc684ba4b16c8e06176d57089d56d9d333423349491f9a4d7d947a0a9dc SHA512 9bb9daa31877e1555b75c6d91566bceee175397f37bf8359ffce3cac16a72f48543d6ff5a03e8bf42aef6e1e499b3a2ce6054b00356a937214848b6b87c2315f
+DIST opam-file-format-2.1.6.tar.gz 36809 BLAKE2B 0e6356d0515b1af6e11fbc3ba3c5c594f101c112b7bb9228a79ed1fc6042e2b363ba95605a387b571b6bd16bd57ac416aa7703f0298c8e21851ba278ff47f0bd SHA512 89148dceacc523bcd3b65ecc60cbef2270a9618f7d97c5655060adef5c99986fa37910c9622d328a6371a0409a371158cec919f5100cf6d85110cd7cfdf2bb85
+DIST opam-file-format-2.2.0.tar.gz 32131 BLAKE2B 9478931af8d0c7b544bd5e205af8b40630b5c0413dc7dcfd720f776a23706ac0893bbff98673c3a9c2662e52b033598e1855236762400c09c5313bb35f42ebec SHA512 7eaf256346420d4f58a35e3a2b6c56587dfb093b1bd83be17dec819039ddfc95ec18ff0526feeede310707e752c017147e66c8cbb8b9ba6fb1198007aa9ddcf8
diff --git a/dev-ml/opam-file-format/metadata.xml b/dev-ml/opam-file-format/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/opam-file-format/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/opam-file-format/opam-file-format-2.1.3.ebuild b/dev-ml/opam-file-format/opam-file-format-2.1.3.ebuild
new file mode 100644
index 000000000000..9ab5be37d47c
--- /dev/null
+++ b/dev-ml/opam-file-format/opam-file-format-2.1.3.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+MY_PV="${PV/_beta/-beta}"
+MY_PV="${MY_PV/_rc/-rc}"
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+DESCRIPTION="Parser and printer for the opam file syntax"
+HOMEPAGE="https://github.com/ocaml/opam-file-format"
+SRC_URI="https://github.com/ocaml/opam-file-format/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+DEPEND="test? ( dev-ml/alcotest )"
diff --git a/dev-ml/opam-file-format/opam-file-format-2.1.5.ebuild b/dev-ml/opam-file-format/opam-file-format-2.1.5.ebuild
new file mode 100644
index 000000000000..5895e88e651a
--- /dev/null
+++ b/dev-ml/opam-file-format/opam-file-format-2.1.5.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+MY_PV="${PV/_beta/-beta}"
+MY_PV="${MY_PV/_rc/-rc}"
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+DESCRIPTION="Parser and printer for the opam file syntax"
+HOMEPAGE="https://github.com/ocaml/opam-file-format"
+SRC_URI="https://github.com/ocaml/opam-file-format/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+DEPEND="test? ( dev-ml/alcotest )"
diff --git a/dev-ml/opam-file-format/opam-file-format-2.1.6.ebuild b/dev-ml/opam-file-format/opam-file-format-2.1.6.ebuild
new file mode 100644
index 000000000000..755741a3fae9
--- /dev/null
+++ b/dev-ml/opam-file-format/opam-file-format-2.1.6.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+MY_PV="${PV/_beta/-beta}"
+MY_PV="${MY_PV/_rc/-rc}"
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+DESCRIPTION="Parser and printer for the opam file syntax"
+HOMEPAGE="https://github.com/ocaml/opam-file-format"
+SRC_URI="https://github.com/ocaml/opam-file-format/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 ~riscv x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+DEPEND="test? ( dev-ml/alcotest )"
diff --git a/dev-ml/opam-file-format/opam-file-format-2.2.0-r1.ebuild b/dev-ml/opam-file-format/opam-file-format-2.2.0-r1.ebuild
new file mode 100644
index 000000000000..4acae84a5b35
--- /dev/null
+++ b/dev-ml/opam-file-format/opam-file-format-2.2.0-r1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+MY_PV="${PV/_beta/-beta}"
+MY_PV="${MY_PV/_rc/-rc}"
+
+DESCRIPTION="Parser and printer for the opam file syntax"
+HOMEPAGE="https://github.com/ocaml/opam-file-format"
+SRC_URI="https://github.com/ocaml/opam-file-format/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
+
+S="${WORKDIR}/${PN}-${MY_PV}"
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="dev-ml/menhir:=[ocamlopt?]"
+DEPEND="${RDEPEND}"
+BDEPEND="test? ( dev-ml/alcotest )"
diff --git a/dev-ml/opam-installer/Manifest b/dev-ml/opam-installer/Manifest
new file mode 100644
index 000000000000..8cb11fd2ec5b
--- /dev/null
+++ b/dev-ml/opam-installer/Manifest
@@ -0,0 +1,5 @@
+DIST opam-2.2.1.tar.gz 1089671 BLAKE2B cd6a97c8c19d7866205b49f95bf4215d986b3ad8b5d1fe5c5fd52db9b8b9e0cff8559d478e18d99d89816bbf830910f182e4c1e80719ac29a3cd5c8299450a21 SHA512 17d7d83b9de118332c121b9d3aa2e48f62a6270ea23e730a536b0f4ff060df85238c7c4ab53a89bcc3b3193d52d14358831bd9bed30a4ac699e44e4c3003b8b0
+DIST opam-2.3.0.tar.gz 1128521 BLAKE2B 1567dbf9f2a944f2399820a1007a0d0943c54e158a5c371421ede0b59a84dfbcef4a5b8e259d74e053e6ae094a89bf6e4ec8686a076c9216f1c7a9136e3958ed SHA512 596d7b28f0cf9613dc7637aaeac45cc45f411a13286fea1cc81aeb0630c4f8a6dc2095d50db73229a255a3da3d9a08fe0993355a7fc64d3b16fd712789ff5f6e
+DIST opam-2.4.1.tar.gz 1191951 BLAKE2B 21c6e5e59741699233be0375e7357ab4f8178f2e80bb347f460ac6e53b7fe3ff63dbfb21aeab6dda51ad937b30050d2eeb55e8b3bd6cacbea9f23fd8321a4646 SHA512 ee1656715f7e03c36ed9aa0a158033bbdb977d3e9017efa0ceddcd7b073e9b587eb6340ddf1916d9da197c7f48766e569221e6d8e43314bf761326329e4be0a6
+DIST opam-2.5.1.tar.gz 1277085 BLAKE2B ce0b3224549144adcd9bb1a185b117a14a4ab3247e33dd882382ff5e1adae14a21acc28fb97a14577e464588d95369f4104663875151574c201819bc472b40ff SHA512 213f65253e12db5e64ece137db48eb031acb683ac3c0ecd3c02d1127a55777ef2d47298ebdffcdbb8c55a3a08ab0ec0a675698b05d72a3fd1649c89af8fdd150
+DIST opam-full-2.1.6.tar.gz 11704198 BLAKE2B 20e74551760cadf1d911e72c34502e1e7e62003f8ebc83f3b9cb46c712e13fb5f85f41421cc74b051c2e348e0c0a17f4ea34bf655f7ec48cfcdab1e0d8a57a11 SHA512 2bb24db05dc39d6e8294c10b5a6bb2dd8f675a4d56e1dc9a2e9bc576f54d14a1709005219c25586df9382897ab7ba5ea0636765410f01c06958ec59be9f14b4c
diff --git a/dev-ml/opam-installer/metadata.xml b/dev-ml/opam-installer/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/opam-installer/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/opam-installer/opam-installer-2.1.6.ebuild b/dev-ml/opam-installer/opam-installer-2.1.6.ebuild
new file mode 100644
index 000000000000..930678168270
--- /dev/null
+++ b/dev-ml/opam-installer/opam-installer-2.1.6.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# We are opam
+OPAM_INSTALLER_DEP=" "
+OPAM_SKIP_VALIDATION=yes
+inherit dune
+
+DESCRIPTION="Core installer for opam packages"
+HOMEPAGE="https://opam.ocaml.org/ https://github.com/ocaml/opam"
+SRC_URI="https://github.com/ocaml/opam/releases/download/${PV}/opam-full-${PV}.tar.gz"
+S="${WORKDIR}/opam-full-${PV/_/-}"
+OPAM_INSTALLER="${S}/_build/install/default/bin/opam-installer"
+
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+RESTRICT="test" # sandbox not working
+
+RDEPEND="
+ dev-ml/cmdliner:=[ocamlopt?]
+ ~dev-ml/opam-${PV}:=[ocamlopt?]
+ dev-ml/dose3:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}
+ dev-ml/findlib"
+
+src_configure() {
+ econf \
+ --prefix="${EPREFIX}/usr" \
+ --with-mccs \
+ --docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ --mandir="${EPREFIX}/usr/share/man"
+}
+
+src_compile() {
+ dune-compile ${PN}
+}
diff --git a/dev-ml/opam-installer/opam-installer-2.2.1-r1.ebuild b/dev-ml/opam-installer/opam-installer-2.2.1-r1.ebuild
new file mode 100644
index 000000000000..de01941a57fa
--- /dev/null
+++ b/dev-ml/opam-installer/opam-installer-2.2.1-r1.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Core installer for opam packages"
+HOMEPAGE="https://opam.ocaml.org/ https://github.com/ocaml/opam"
+SRC_URI="https://github.com/ocaml/opam/releases/download/${PV}/opam-${PV}.tar.gz"
+S="${WORKDIR}/opam-${PV/_/-}"
+
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test" # sandbox not working
+
+RDEPEND="
+ <dev-ml/cmdliner-2.0.0:=[ocamlopt?]
+ dev-ml/jsonm:=[ocamlopt?]
+ dev-ml/ocamlgraph:=[ocamlopt?]
+ dev-ml/ocaml-sha:=[ocamlopt?]
+ ~dev-ml/opam-common-${PV}:=[ocamlopt?]
+ dev-ml/opam-file-format:=[ocamlopt?]
+ dev-ml/re:=[ocamlopt?]
+ dev-ml/swhid_core:=[ocamlopt?]
+ dev-ml/stdlib-shims:=[ocamlopt?]
+ dev-ml/uchar:=[ocamlopt?]
+ dev-ml/uutf:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-ml/findlib"
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile ${PN}
+}
+
+src_install() {
+ dune-install ${PN}
+ mv "${ED}"/usr/share/doc/${PF}/${PN}/* \
+ "${ED}"/usr/share/doc/${PF} || die
+}
diff --git a/dev-ml/opam-installer/opam-installer-2.3.0.ebuild b/dev-ml/opam-installer/opam-installer-2.3.0.ebuild
new file mode 100644
index 000000000000..b3c525343bd8
--- /dev/null
+++ b/dev-ml/opam-installer/opam-installer-2.3.0.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Core installer for opam packages"
+HOMEPAGE="https://opam.ocaml.org/ https://github.com/ocaml/opam"
+SRC_URI="https://github.com/ocaml/opam/releases/download/${PV}/opam-${PV}.tar.gz"
+S="${WORKDIR}/opam-${PV/_/-}"
+
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test" # sandbox not working
+
+RDEPEND="
+ <dev-ml/cmdliner-2.0.0:=[ocamlopt?]
+ dev-ml/jsonm:=[ocamlopt?]
+ dev-ml/ocamlgraph:=[ocamlopt?]
+ dev-ml/ocaml-sha:=[ocamlopt?]
+ ~dev-ml/opam-common-${PV}:=[ocamlopt?]
+ dev-ml/opam-file-format:=[ocamlopt?]
+ dev-ml/re:=[ocamlopt?]
+ dev-ml/swhid_core:=[ocamlopt?]
+ dev-ml/stdlib-shims:=[ocamlopt?]
+ dev-ml/uchar:=[ocamlopt?]
+ dev-ml/uutf:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-ml/findlib"
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile ${PN}
+}
+
+src_install() {
+ dune-install ${PN}
+ mv "${ED}"/usr/share/doc/${PF}/${PN}/* \
+ "${ED}"/usr/share/doc/${PF} || die
+}
diff --git a/dev-ml/opam-installer/opam-installer-2.4.1.ebuild b/dev-ml/opam-installer/opam-installer-2.4.1.ebuild
new file mode 100644
index 000000000000..7ca848dc3a1b
--- /dev/null
+++ b/dev-ml/opam-installer/opam-installer-2.4.1.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Core installer for opam packages"
+HOMEPAGE="https://opam.ocaml.org/ https://github.com/ocaml/opam"
+SRC_URI="https://github.com/ocaml/opam/releases/download/${PV}/opam-${PV}.tar.gz"
+S="${WORKDIR}/opam-${PV/_/-}"
+
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test" # sandbox not working
+
+RDEPEND="
+ <dev-ml/cmdliner-2.0.0:=[ocamlopt?]
+ dev-ml/jsonm:=[ocamlopt?]
+ dev-ml/ocamlgraph:=[ocamlopt?]
+ dev-ml/ocaml-sha:=[ocamlopt?]
+ ~dev-ml/opam-common-${PV}:=[ocamlopt?]
+ dev-ml/opam-file-format:=[ocamlopt?]
+ dev-ml/re:=[ocamlopt?]
+ dev-ml/swhid_core:=[ocamlopt?]
+ dev-ml/stdlib-shims:=[ocamlopt?]
+ dev-ml/uchar:=[ocamlopt?]
+ dev-ml/uutf:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-ml/findlib"
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile ${PN}
+}
+
+src_install() {
+ dune-install ${PN}
+ mv "${ED}"/usr/share/doc/${PF}/${PN}/* \
+ "${ED}"/usr/share/doc/${PF} || die
+}
diff --git a/dev-ml/opam-installer/opam-installer-2.5.1.ebuild b/dev-ml/opam-installer/opam-installer-2.5.1.ebuild
new file mode 100644
index 000000000000..1682578a12b0
--- /dev/null
+++ b/dev-ml/opam-installer/opam-installer-2.5.1.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Core installer for opam packages"
+HOMEPAGE="https://opam.ocaml.org/ https://github.com/ocaml/opam"
+SRC_URI="https://github.com/ocaml/opam/releases/download/${PV}/opam-${PV}.tar.gz"
+S="${WORKDIR}/opam-${PV/_/-}"
+
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test" # sandbox not working
+
+RDEPEND="
+ <dev-ml/cmdliner-2.0.0:=[ocamlopt?]
+ dev-ml/jsonm:=[ocamlopt?]
+ dev-ml/ocamlgraph:=[ocamlopt?]
+ dev-ml/ocaml-sha:=[ocamlopt?]
+ ~dev-ml/opam-common-${PV}:=[ocamlopt?]
+ dev-ml/opam-file-format:=[ocamlopt?]
+ dev-ml/re:=[ocamlopt?]
+ dev-ml/swhid_core:=[ocamlopt?]
+ dev-ml/stdlib-shims:=[ocamlopt?]
+ dev-ml/uchar:=[ocamlopt?]
+ dev-ml/uutf:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-ml/findlib"
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile ${PN}
+}
+
+src_install() {
+ dune-install ${PN}
+ mv "${ED}"/usr/share/doc/${PF}/${PN}/* \
+ "${ED}"/usr/share/doc/${PF} || die
+}
diff --git a/dev-ml/opam/Manifest b/dev-ml/opam/Manifest
new file mode 100644
index 000000000000..56834a78e4e4
--- /dev/null
+++ b/dev-ml/opam/Manifest
@@ -0,0 +1,5 @@
+DIST opam-2.1.6.tar.gz 837526 BLAKE2B 1ee60691f4fcc1011f461505942f00ff5f5cc0f0bbfc97edb8e4c676d1e4cd28fed8b49ef341af51a750848be3110713cc97e93a9e63999e4b92e7c7f68d743e SHA512 f75d81b4eb19ef6603e7a2a18e1a281ea6f5eea47b820ae888593102db5b98ded5b593b176e70235611b63a07f4a406a57fe016386f4e921f51b55eb62b9864d
+DIST opam-2.2.1.tar.gz 1089671 BLAKE2B cd6a97c8c19d7866205b49f95bf4215d986b3ad8b5d1fe5c5fd52db9b8b9e0cff8559d478e18d99d89816bbf830910f182e4c1e80719ac29a3cd5c8299450a21 SHA512 17d7d83b9de118332c121b9d3aa2e48f62a6270ea23e730a536b0f4ff060df85238c7c4ab53a89bcc3b3193d52d14358831bd9bed30a4ac699e44e4c3003b8b0
+DIST opam-2.3.0.tar.gz 1128521 BLAKE2B 1567dbf9f2a944f2399820a1007a0d0943c54e158a5c371421ede0b59a84dfbcef4a5b8e259d74e053e6ae094a89bf6e4ec8686a076c9216f1c7a9136e3958ed SHA512 596d7b28f0cf9613dc7637aaeac45cc45f411a13286fea1cc81aeb0630c4f8a6dc2095d50db73229a255a3da3d9a08fe0993355a7fc64d3b16fd712789ff5f6e
+DIST opam-2.4.1.tar.gz 1191951 BLAKE2B 21c6e5e59741699233be0375e7357ab4f8178f2e80bb347f460ac6e53b7fe3ff63dbfb21aeab6dda51ad937b30050d2eeb55e8b3bd6cacbea9f23fd8321a4646 SHA512 ee1656715f7e03c36ed9aa0a158033bbdb977d3e9017efa0ceddcd7b073e9b587eb6340ddf1916d9da197c7f48766e569221e6d8e43314bf761326329e4be0a6
+DIST opam-2.5.1.tar.gz 1277085 BLAKE2B ce0b3224549144adcd9bb1a185b117a14a4ab3247e33dd882382ff5e1adae14a21acc28fb97a14577e464588d95369f4104663875151574c201819bc472b40ff SHA512 213f65253e12db5e64ece137db48eb031acb683ac3c0ecd3c02d1127a55777ef2d47298ebdffcdbb8c55a3a08ab0ec0a675698b05d72a3fd1649c89af8fdd150
diff --git a/dev-ml/opam/metadata.xml b/dev-ml/opam/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/opam/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/opam/opam-2.1.6-r1.ebuild b/dev-ml/opam/opam-2.1.6-r1.ebuild
new file mode 100644
index 000000000000..82f58c9b7f2d
--- /dev/null
+++ b/dev-ml/opam/opam-2.1.6-r1.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DUNE_PKG_NAME="opam opam-core opam-format"
+inherit dune
+
+DESCRIPTION="A source-based package manager for OCaml"
+HOMEPAGE="http://opam.ocaml.org/"
+SRC_URI="https://github.com/ocaml/opam/archive/${PV/_/-}.tar.gz -> opam-${PV}.tar.gz"
+S="${WORKDIR}/opam-${PV/_/-}"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+RESTRICT="test" #see bugs 838658
+
+RDEPEND="
+ <dev-ml/cmdliner-2.0.0:=[ocamlopt?]
+ dev-ml/cudf:=[ocamlopt?]
+ dev-ml/dose3:=[ocamlopt?]
+ dev-ml/extlib:=[ocamlopt?]
+ >=dev-ml/mccs-1.1.17:=[ocamlopt?]
+ dev-ml/ocamlgraph:=[ocamlopt?]
+ !dev-ml/opam-client
+ !dev-ml/opam-core
+ dev-ml/opam-file-format:=[ocamlopt?]
+ !dev-ml/opam-format
+ !dev-ml/opam-state
+ !dev-ml/opam-solver
+ !dev-ml/opam-repository
+ dev-ml/re:=[ocamlopt?]
+ sys-apps/bubblewrap
+"
+DEPEND="${RDEPEND}
+ dev-ml/cppo"
+
+src_prepare() {
+ default
+
+ cat <<- EOF >> "${S}/dune"
+ (env
+ (dev
+ (flags (:standard -warn-error -3-9-33)))
+ (release
+ (flags (:standard -warn-error -3-9-33))))
+ EOF
+}
+
+src_compile() {
+ dune-compile opam-solver opam-repository opam-state opam-client ${DUNE_PKG_NAME}
+}
diff --git a/dev-ml/opam/opam-2.2.1-r1.ebuild b/dev-ml/opam/opam-2.2.1-r1.ebuild
new file mode 100644
index 000000000000..f54806f9021b
--- /dev/null
+++ b/dev-ml/opam/opam-2.2.1-r1.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DUNE_PKG_NAME="opam"
+inherit dune
+
+DESCRIPTION="A source-based package manager for OCaml"
+HOMEPAGE="http://opam.ocaml.org/"
+SRC_URI="https://github.com/ocaml/opam/archive/${PV/_/-}.tar.gz -> opam-${PV}.tar.gz"
+S="${WORKDIR}/opam-${PV/_/-}"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test" #see bugs 838658
+
+RDEPEND="
+ dev-ml/0install:=[ocamlopt?]
+ <dev-ml/cmdliner-2:=[ocamlopt?]
+ dev-ml/cudf:=[ocamlopt?]
+ dev-ml/dose3:=[ocamlopt?]
+ dev-ml/extlib:=[ocamlopt?]
+ dev-ml/jsonm:=[ocamlopt?]
+ dev-ml/ocaml-base64:=[ocamlopt?]
+ dev-ml/ocamlgraph:=[ocamlopt?]
+ dev-ml/ocaml-sha:=[ocamlopt?]
+ dev-ml/opam-0install-cudf:=[ocamlopt?]
+ dev-ml/opam-common:=[ocamlopt?]
+ dev-ml/opam-file-format:=[ocamlopt?]
+ dev-ml/re:=[ocamlopt?]
+ dev-ml/spdx_licenses:=[ocamlopt?]
+ dev-ml/stdlib-shims:=[ocamlopt?]
+ dev-ml/swhid_core:=[ocamlopt?]
+ dev-ml/uchar:=[ocamlopt?]
+ dev-ml/uutf:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-ml/findlib"
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile opam-solver opam-repository opam-state opam-client ${DUNE_PKG_NAME}
+}
+
+src_install() {
+ dune_src_install
+ mv "${ED}"/usr/share/doc/${PF}/${PN}/* \
+ "${ED}"/usr/share/doc/${PF} || die
+}
diff --git a/dev-ml/opam/opam-2.3.0.ebuild b/dev-ml/opam/opam-2.3.0.ebuild
new file mode 100644
index 000000000000..ac7c1ba187a8
--- /dev/null
+++ b/dev-ml/opam/opam-2.3.0.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DUNE_PKG_NAME="opam"
+inherit dune
+
+DESCRIPTION="A source-based package manager for OCaml"
+HOMEPAGE="http://opam.ocaml.org/"
+SRC_URI="https://github.com/ocaml/opam/archive/${PV/_/-}.tar.gz -> opam-${PV}.tar.gz"
+S="${WORKDIR}/opam-${PV/_/-}"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test" #see bugs 838658
+
+RDEPEND="
+ dev-ml/0install:=[ocamlopt?]
+ <dev-ml/cmdliner-2:=[ocamlopt?]
+ dev-ml/cudf:=[ocamlopt?]
+ dev-ml/dose3:=[ocamlopt?]
+ dev-ml/extlib:=[ocamlopt?]
+ dev-ml/jsonm:=[ocamlopt?]
+ dev-ml/ocaml-base64:=[ocamlopt?]
+ dev-ml/ocamlgraph:=[ocamlopt?]
+ dev-ml/ocaml-sha:=[ocamlopt?]
+ dev-ml/opam-0install-cudf:=[ocamlopt?]
+ =dev-ml/opam-common-2.3*:=[ocamlopt?]
+ dev-ml/opam-file-format:=[ocamlopt?]
+ dev-ml/re:=[ocamlopt?]
+ dev-ml/spdx_licenses:=[ocamlopt?]
+ dev-ml/stdlib-shims:=[ocamlopt?]
+ dev-ml/swhid_core:=[ocamlopt?]
+ dev-ml/uchar:=[ocamlopt?]
+ dev-ml/uutf:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-ml/findlib"
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile opam-solver opam-repository opam-state opam-client ${DUNE_PKG_NAME}
+}
+
+src_install() {
+ dune_src_install
+ mv "${ED}"/usr/share/doc/${PF}/${PN}/* \
+ "${ED}"/usr/share/doc/${PF} || die
+}
diff --git a/dev-ml/opam/opam-2.4.1.ebuild b/dev-ml/opam/opam-2.4.1.ebuild
new file mode 100644
index 000000000000..662eb50d7a86
--- /dev/null
+++ b/dev-ml/opam/opam-2.4.1.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DUNE_PKG_NAME="opam"
+inherit dune
+
+DESCRIPTION="A source-based package manager for OCaml"
+HOMEPAGE="http://opam.ocaml.org/"
+SRC_URI="https://github.com/ocaml/opam/archive/${PV/_/-}.tar.gz -> opam-${PV}.tar.gz"
+S="${WORKDIR}/opam-${PV/_/-}"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test" #see bugs 838658
+
+RDEPEND="
+ dev-ml/0install:=[ocamlopt?]
+ <dev-ml/cmdliner-2:=[ocamlopt?]
+ dev-ml/cudf:=[ocamlopt?]
+ dev-ml/dose3:=[ocamlopt?]
+ dev-ml/extlib:=[ocamlopt?]
+ dev-ml/jsonm:=[ocamlopt?]
+ dev-ml/ocaml-base64:=[ocamlopt?]
+ dev-ml/ocamlgraph:=[ocamlopt?]
+ dev-ml/ocaml-sha:=[ocamlopt?]
+ dev-ml/opam-0install-cudf:=[ocamlopt?]
+ ~dev-ml/opam-common-${PV}:=[ocamlopt?]
+ dev-ml/opam-file-format:=[ocamlopt?]
+ dev-ml/re:=[ocamlopt?]
+ dev-ml/spdx_licenses:=[ocamlopt?]
+ dev-ml/stdlib-shims:=[ocamlopt?]
+ dev-ml/swhid_core:=[ocamlopt?]
+ dev-ml/uchar:=[ocamlopt?]
+ dev-ml/uutf:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-ml/findlib"
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile opam-solver opam-repository opam-state opam-client ${DUNE_PKG_NAME}
+}
+
+src_install() {
+ dune_src_install
+ mv "${ED}"/usr/share/doc/${PF}/${PN}/* \
+ "${ED}"/usr/share/doc/${PF} || die
+}
diff --git a/dev-ml/opam/opam-2.5.1.ebuild b/dev-ml/opam/opam-2.5.1.ebuild
new file mode 100644
index 000000000000..819bbe3ec383
--- /dev/null
+++ b/dev-ml/opam/opam-2.5.1.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DUNE_PKG_NAME="opam"
+inherit dune
+
+DESCRIPTION="A source-based package manager for OCaml"
+HOMEPAGE="http://opam.ocaml.org/"
+SRC_URI="https://github.com/ocaml/opam/archive/${PV/_/-}.tar.gz -> opam-${PV}.tar.gz"
+S="${WORKDIR}/opam-${PV/_/-}"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test" #see bugs 838658
+
+RDEPEND="
+ dev-ml/0install:=[ocamlopt?]
+ <dev-ml/cmdliner-2:=[ocamlopt?]
+ dev-ml/cudf:=[ocamlopt?]
+ dev-ml/dose3:=[ocamlopt?]
+ dev-ml/extlib:=[ocamlopt?]
+ dev-ml/jsonm:=[ocamlopt?]
+ dev-ml/ocaml-base64:=[ocamlopt?]
+ dev-ml/ocamlgraph:=[ocamlopt?]
+ dev-ml/ocaml-sha:=[ocamlopt?]
+ dev-ml/opam-0install-cudf:=[ocamlopt?]
+ ~dev-ml/opam-common-${PV}:=[ocamlopt?]
+ dev-ml/opam-file-format:=[ocamlopt?]
+ dev-ml/re:=[ocamlopt?]
+ dev-ml/spdx_licenses:=[ocamlopt?]
+ dev-ml/stdlib-shims:=[ocamlopt?]
+ dev-ml/swhid_core:=[ocamlopt?]
+ dev-ml/uchar:=[ocamlopt?]
+ dev-ml/uutf:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-ml/findlib"
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile opam-solver opam-repository opam-state opam-client ${DUNE_PKG_NAME}
+}
+
+src_install() {
+ dune_src_install
+ mv "${ED}"/usr/share/doc/${PF}/${PN}/* \
+ "${ED}"/usr/share/doc/${PF} || die
+}
diff --git a/dev-ml/ounit2/Manifest b/dev-ml/ounit2/Manifest
new file mode 100644
index 000000000000..04db66dd1f95
--- /dev/null
+++ b/dev-ml/ounit2/Manifest
@@ -0,0 +1,2 @@
+DIST ounit2-2.2.6.tar.gz 69910 BLAKE2B 7833738e94990c7e67d27665e994c9e3c1505dcb45e2faaba58ef7de9eccc8fc19437fa983da058b1fa2c464e74d90a4eec22380ebfa01ae5e5a9616faf6ada3 SHA512 4d808866dc4f9de6493a17910fafb2452398aef45cb29add54ed25e15a10ec7715bdd52d40190f618e77fe351d8bb67fbe12c1df6a6736c501792a57f6b3768a
+DIST ounit2-2.2.7.tar.gz 69771 BLAKE2B 6fb43eccf33a02d3fbbbec1fd00b2901ae69bb55e9c94790ebcfed68f676bc0a9a573f4e03edc8c542e195b68c77deae0426c884ea81ceef1149548f6b760673 SHA512 b2cefed53127f724c099391eefe1bce3b43cad5d6b629b5f1e9446b58892639de758f5dbcbd5efb6c409ce77ed01d06693989a3ba909cf79c36c2554c1473396
diff --git a/dev-ml/ounit2/files/ounit2-2.2.6-dune.patch b/dev-ml/ounit2/files/ounit2-2.2.6-dune.patch
new file mode 100644
index 000000000000..9ef29326f6d0
--- /dev/null
+++ b/dev-ml/ounit2/files/ounit2-2.2.6-dune.patch
@@ -0,0 +1,19 @@
+--- a/src/lib/ounit2/dune
++++ b/src/lib/ounit2/dune
+@@ -2,7 +2,7 @@
+ (name oUnit)
+ (public_name ounit2)
+ (wrapped false)
+- (libraries unix seq ounit2.advanced))
++ (libraries unix ounit2.advanced))
+
+ (documentation
+ (package ounit2)
+--- a/src/lib/ounit2/advanced/dune
++++ b/src/lib/ounit2/advanced/dune
+@@ -7,4 +7,4 @@
+ (name oUnitAdvanced)
+ (public_name ounit2.advanced)
+ (wrapped false)
+- (libraries unix bytes seq stdlib-shims))
++ (libraries unix bytes stdlib-shims))
diff --git a/dev-ml/ounit2/files/ounit2-2.2.7-dune.patch b/dev-ml/ounit2/files/ounit2-2.2.7-dune.patch
new file mode 100644
index 000000000000..845d7e9e4574
--- /dev/null
+++ b/dev-ml/ounit2/files/ounit2-2.2.7-dune.patch
@@ -0,0 +1,19 @@
+--- a/src/lib/ounit2/dune
++++ b/src/lib/ounit2/dune
+@@ -2,7 +2,7 @@
+ (name oUnit)
+ (public_name ounit2)
+ (wrapped false)
+- (libraries unix seq ounit2.advanced))
++ (libraries unix ounit2.advanced))
+
+ (documentation
+ (package ounit2)
+--- a/src/lib/ounit2/advanced/dune
++++ b/src/lib/ounit2/advanced/dune
+@@ -11,4 +11,4 @@
+ (name oUnitAdvanced)
+ (public_name ounit2.advanced)
+ (wrapped false)
+- (libraries unix seq stdlib-shims))
++ (libraries unix stdlib-shims))
diff --git a/dev-ml/ounit2/metadata.xml b/dev-ml/ounit2/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ounit2/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ounit2/ounit2-2.2.6.ebuild b/dev-ml/ounit2/ounit2-2.2.6.ebuild
new file mode 100644
index 000000000000..e5cb1eba4a95
--- /dev/null
+++ b/dev-ml/ounit2/ounit2-2.2.6.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Unit testing framework for OCaml"
+HOMEPAGE="https://github.com/gildor478/ounit"
+SRC_URI="https://github.com/gildor478/ounit/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/ounit-${PV}"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ dev-ml/lwt:=
+ dev-ml/stdlib-shims:=
+"
+RDEPEND="${DEPEND}"
+
+PATCHES=( "${FILESDIR}"/${P}-dune.patch )
+
+src_install() {
+ dune-install ${PN} ${PN}-lwt
+}
diff --git a/dev-ml/ounit2/ounit2-2.2.7-r1.ebuild b/dev-ml/ounit2/ounit2-2.2.7-r1.ebuild
new file mode 100644
index 000000000000..bdddc585f018
--- /dev/null
+++ b/dev-ml/ounit2/ounit2-2.2.7-r1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Unit testing framework for OCaml"
+HOMEPAGE="https://github.com/gildor478/ounit"
+SRC_URI="https://github.com/gildor478/ounit/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/ounit-${PV}"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ dev-ml/lwt:=
+ dev-ml/stdlib-shims:=
+"
+RDEPEND="${DEPEND}"
+BDEPEND=">=dev-ml/dune-3"
+
+PATCHES=( "${FILESDIR}/${PN}-2.2.7-dune.patch" )
+
+src_install() {
+ dune-install ${PN} ${PN}-lwt
+}
diff --git a/dev-ml/parmap/Manifest b/dev-ml/parmap/Manifest
new file mode 100644
index 000000000000..8609d5f06ca8
--- /dev/null
+++ b/dev-ml/parmap/Manifest
@@ -0,0 +1 @@
+DIST parmap-1.2.5.tar.gz 49144 BLAKE2B 6e6c5c7dcfd1e7af4b921bc8795b2a23f0fd5e01f6ce91665bbbc5e1f9e19f0b7eaee0361b3450d4a9823744c97c6f6ef28f8c8f1f65fad80f2a0a30dc07b740 SHA512 668e969a598cdb587597c7cabf7e299cfb4e3cc4cd229edf1888977f19bd5cdf169d39f5a6d923644bcd83f1ce1a3cfbd3a4e55ff59513736a9dc740a16b49d1
diff --git a/dev-ml/parmap/metadata.xml b/dev-ml/parmap/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/parmap/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/parmap/parmap-1.2.5.ebuild b/dev-ml/parmap/parmap-1.2.5.ebuild
new file mode 100644
index 000000000000..ccce5ee0b2df
--- /dev/null
+++ b/dev-ml/parmap/parmap-1.2.5.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+MY_PV="${PV/_/-}"
+DESCRIPTION="Library to exploit multicore architectures for OCaml programs"
+HOMEPAGE="https://www.dicosmo.org/code/parmap/"
+SRC_URI="https://github.com/rdicosmo/parmap/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-${MY_PV/+/-}"
+
+LICENSE="LGPL-2-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+BDEPEND="dev-ml/dune-configurator:="
diff --git a/dev-ml/parsexp/Manifest b/dev-ml/parsexp/Manifest
new file mode 100644
index 000000000000..0f652cda2e57
--- /dev/null
+++ b/dev-ml/parsexp/Manifest
@@ -0,0 +1,2 @@
+DIST parsexp-0.16.0.tar.gz 56904 BLAKE2B 3ead4215242a6f5edd8babbb64ef68dc0a9e230a26b77209f7864eae048b62f4970ce1b50cb6ac1e21df0ada8d49917ae6df0e6c10fce5fe5313c2b4d661517e SHA512 54a59c12ef9cafe69f5dab79d51a7115205f0becef97db1d0051cb50c3ff004a56e43e9607a3869e4928f8653df5a2b9e3366e4ac0d8d7483752fa5287352791
+DIST parsexp-0.17.0.tar.gz 58505 BLAKE2B 8ef9d71707f76aaade8a21f42282461f3ad3ba3f3b25eadda4708177857b702372a4d11b89c6e8c0c739244b4d3a46008d90d15a1b2f5f353801c04b58d08158 SHA512 9d7c85cda4f1acd8681d6c5ba3baead59a4a3c9bedcec91edb2b6814d98caaabb3830f5ef7da30ba698871be913d1411b617c2a593c7f475ce06cf7b73943d5a
diff --git a/dev-ml/parsexp/metadata.xml b/dev-ml/parsexp/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/parsexp/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/parsexp/parsexp-0.16.0.ebuild b/dev-ml/parsexp/parsexp-0.16.0.ebuild
new file mode 100644
index 000000000000..18139c9647a3
--- /dev/null
+++ b/dev-ml/parsexp/parsexp-0.16.0.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="S-expression parsing library"
+HOMEPAGE="https://github.com/janestreet/parsexp"
+SRC_URI="https://github.com/janestreet/parsexp/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+RDEPEND="dev-ml/base:${SLOT}"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/parsexp/parsexp-0.17.0.ebuild b/dev-ml/parsexp/parsexp-0.17.0.ebuild
new file mode 100644
index 000000000000..957b3741f83e
--- /dev/null
+++ b/dev-ml/parsexp/parsexp-0.17.0.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="S-expression parsing library"
+HOMEPAGE="https://github.com/janestreet/parsexp"
+SRC_URI="https://github.com/janestreet/parsexp/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ dev-ml/sexplib0:${SLOT}[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/patch/Manifest b/dev-ml/patch/Manifest
new file mode 100644
index 000000000000..7d9e92c696dc
--- /dev/null
+++ b/dev-ml/patch/Manifest
@@ -0,0 +1,2 @@
+DIST patch-3.0.1.tar.gz 28358 BLAKE2B 0fdb7b9ed5b767ae56c438c2fa4decbc88da94ecb3989a0ac0d2938ce4bdb88045da6dec42454a46da6cfc3c547a842b30e28e663620132cc3a7cbdd1695120a SHA512 c8898796df0fbe93e2501c919ecfd3f49f18ad29a29711b5797dc34604261ff275967f81f35fc1d41c4a9a08a6d88ea6a60496f2e40f40268cc6a316a9e4ba7d
+DIST patch-3.1.0.tar.gz 29935 BLAKE2B d9e26bd1004723ec1e8ec3bb7ab09fd12321d88a7ebc33efb6b5a0ecad4e2cd45959f99966b203316ffae60a4b423b04f0e8243826b0e55eaf2e8d5110fb1b05 SHA512 3fdcecb325b0000e1c5cecb49c56c2cf007df76f7de9ce90119ebfc2975c962aed06ee43b249f9f539a85568f57d0ffaa704c721561021612f95ca69fb8ceffd
diff --git a/dev-ml/patch/metadata.xml b/dev-ml/patch/metadata.xml
new file mode 100644
index 000000000000..5776af620fe6
--- /dev/null
+++ b/dev-ml/patch/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/hannesm/patch/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/patch/patch-3.0.1.ebuild b/dev-ml/patch/patch-3.0.1.ebuild
new file mode 100644
index 000000000000..5bed8a29661b
--- /dev/null
+++ b/dev-ml/patch/patch-3.0.1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Patch library purely in OCaml"
+HOMEPAGE="https://github.com/hannesm/patch/"
+
+if [[ "${PV}" == *9999* ]] ; then
+ inherit git-r3
+
+ EGIT_REPO_URI="https://github.com/hannesm/${PN}"
+else
+ SRC_URI="https://github.com/hannesm/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ test? (
+ dev-ml/alcotest
+ )
+"
diff --git a/dev-ml/patch/patch-3.1.0.ebuild b/dev-ml/patch/patch-3.1.0.ebuild
new file mode 100644
index 000000000000..e0d2e9f401bc
--- /dev/null
+++ b/dev-ml/patch/patch-3.1.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Patch library purely in OCaml"
+HOMEPAGE="https://github.com/hannesm/patch/"
+
+SRC_URI="https://github.com/hannesm/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ test? (
+ dev-ml/alcotest
+ )
+"
diff --git a/dev-ml/patience_diff/Manifest b/dev-ml/patience_diff/Manifest
new file mode 100644
index 000000000000..6c3149f0035a
--- /dev/null
+++ b/dev-ml/patience_diff/Manifest
@@ -0,0 +1,2 @@
+DIST patience_diff-0.16.0.tar.gz 22756 BLAKE2B 99f6d72359138732d2c523d0a14811925293e298e9090d276ad3fceda1793fa05f27e01c7c9e0084a1ea41fdb069142a687ddd614850b56f7b8536a0dc3f0649 SHA512 de3726e3d5df3bccb168ed600d3965f69e97eadce27022438660a6ea6ee87075268cc9bf8105ab35a049600408ddc780fd362fed4bbcfa69d36512463e0c37b1
+DIST patience_diff-0.17.0.tar.gz 24963 BLAKE2B 2e8e6240d2c5f7abc45dd605bb8bc850ed5fc43dcec5794837ac1973571ab9c3a283603080afb64326a969b470eaf2d5f2fdfdee52db41fa5f1640866b6a74a9 SHA512 e448fb843eb622532de89f964823261e9f9ddb0119ad6a311ac744a21fbfff4b6bc8cc0fae051431aa3a507b39f43f45614dd8d9703e1a693de95e1909a57f13
diff --git a/dev-ml/patience_diff/metadata.xml b/dev-ml/patience_diff/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/patience_diff/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/patience_diff/patience_diff-0.16.0.ebuild b/dev-ml/patience_diff/patience_diff-0.16.0.ebuild
new file mode 100644
index 000000000000..e9f71f8e2b56
--- /dev/null
+++ b/dev-ml/patience_diff/patience_diff-0.16.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Tool and library implementing patience diff"
+HOMEPAGE="https://github.com/janestreet/patience_diff"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~riscv"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/base:${SLOT}[ocamlopt?]
+ dev-ml/core:${SLOT}[ocamlopt?]
+ dev-ml/ppx_jane:${SLOT}[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/patience_diff/patience_diff-0.17.0-r1.ebuild b/dev-ml/patience_diff/patience_diff-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..334b3b6c0a69
--- /dev/null
+++ b/dev-ml/patience_diff/patience_diff-0.17.0-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Tool and library implementing patience diff"
+HOMEPAGE="https://github.com/janestreet/patience_diff"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/core-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_jane-${JSM}:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}
+ >=dev-ml/dune-3.11"
diff --git a/dev-ml/pcre-ocaml/Manifest b/dev-ml/pcre-ocaml/Manifest
new file mode 100644
index 000000000000..4a367867e66e
--- /dev/null
+++ b/dev-ml/pcre-ocaml/Manifest
@@ -0,0 +1,2 @@
+DIST pcre-ocaml-7.4.6.tbz 41027 BLAKE2B 1faecd96cb6f7af248e8ace7409a49131f5c654320f8ac432fd4aff602d0c4187733419e9cc73ca52cf0a3e5b725afa9357fe9ec191bf1ca42d4dc47a36e45b7 SHA512 a356c78dc19d3b3741d1fa0277c4fb0cb545f12499165526fae80a0ff8a7b1f1e6e5e916b16f8336bcec3661de811686b814fe4afc677965fec7a63d4fc53b1f
+DIST pcre-ocaml-7.5.0.tbz 41158 BLAKE2B 6bd16345bd915c236d727daeb5862c2aff677c394f10b4d040ce46003255f3fd5589801979cdd77c20d8ba4fceb443467cf8f38a379a86fc59ca513e69aa1b79 SHA512 be60f13ddb6bbfe20e30ca5d92434d85e1d1371479e1e2c725588af83fcc9366ed0435021b6a800c20336ac521f2134c767420136438684656a44ac1f9924be4
diff --git a/dev-ml/pcre-ocaml/metadata.xml b/dev-ml/pcre-ocaml/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/pcre-ocaml/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/pcre-ocaml/pcre-ocaml-7.4.6-r2.ebuild b/dev-ml/pcre-ocaml/pcre-ocaml-7.4.6-r2.ebuild
new file mode 100644
index 000000000000..eb6393216324
--- /dev/null
+++ b/dev-ml/pcre-ocaml/pcre-ocaml-7.4.6-r2.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="Perl Compatibility Regular Expressions for O'Caml"
+HOMEPAGE="http://mmottl.github.io/pcre-ocaml/ https://github.com/mmottl/pcre-ocaml"
+SRC_URI="https://github.com/mmottl/pcre-ocaml/releases/download/${PV}/pcre-${PV}.tbz -> ${P}.tbz"
+S="${WORKDIR}/pcre-${PV}"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+IUSE="examples +ocamlopt"
+SLOT="0/${PV}"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc ~riscv x86"
+
+BDEPEND="dev-ml/dune-configurator"
+RDEPEND=">=dev-libs/libpcre-4.5
+ dev-ml/stdio:="
+DEPEND="${RDEPEND}"
+
+src_install() {
+ dune_src_install pcre
+
+ if use examples ; then
+ dodoc -r examples
+ fi
+}
diff --git a/dev-ml/pcre-ocaml/pcre-ocaml-7.5.0.ebuild b/dev-ml/pcre-ocaml/pcre-ocaml-7.5.0.ebuild
new file mode 100644
index 000000000000..87e08e3e7767
--- /dev/null
+++ b/dev-ml/pcre-ocaml/pcre-ocaml-7.5.0.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="Perl Compatibility Regular Expressions for O'Caml"
+HOMEPAGE="http://mmottl.github.io/pcre-ocaml/ https://github.com/mmottl/pcre-ocaml"
+SRC_URI="https://github.com/mmottl/pcre-ocaml/releases/download/${PV}/pcre-${PV}.tbz -> ${P}.tbz"
+S="${WORKDIR}/pcre-${PV}"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+IUSE="examples +ocamlopt"
+SLOT="0/${PV}"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+
+BDEPEND="dev-ml/dune-configurator"
+RDEPEND=">=dev-libs/libpcre-4.5
+ dev-ml/stdio:=
+ >=dev-lang/ocaml-4.12"
+DEPEND="${RDEPEND}"
+
+src_install() {
+ dune_src_install pcre
+
+ if use examples ; then
+ dodoc -r examples
+ fi
+}
diff --git a/dev-ml/pcre2-ocaml/Manifest b/dev-ml/pcre2-ocaml/Manifest
new file mode 100644
index 000000000000..52b3d46cac93
--- /dev/null
+++ b/dev-ml/pcre2-ocaml/Manifest
@@ -0,0 +1 @@
+DIST pcre2-ocaml-8.0.3.tar.gz 44400 BLAKE2B d3a7b01af49f81d59c89d8a96b4f32da1baecae388bed29a6c53f050b66f381aa22ba7245be1a4480a649ecce97e924efe5f91938029ea838cc18c2cfb31ee43 SHA512 614bd7d44460ea7c35a61dcff14546e16eb7bbb959be02cf77463d4448c01e2462f10656ca8b1f21fead752a148ce94943de99dff8106a50eef1468e1d2f99f9
diff --git a/dev-ml/pcre2-ocaml/metadata.xml b/dev-ml/pcre2-ocaml/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/pcre2-ocaml/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/pcre2-ocaml/pcre2-ocaml-8.0.3-r1.ebuild b/dev-ml/pcre2-ocaml/pcre2-ocaml-8.0.3-r1.ebuild
new file mode 100644
index 000000000000..dc9bbbdf97fb
--- /dev/null
+++ b/dev-ml/pcre2-ocaml/pcre2-ocaml-8.0.3-r1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DUNE_PKG_NAME=pcre2
+inherit dune
+
+DESCRIPTION="OCaml bindings to PCRE (Perl Compatibility Regular Expressions)"
+HOMEPAGE="https://github.com/camlp5/pcre2-ocaml"
+SRC_URI="https://github.com/camlp5/${PN}/archive/refs/tags/${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-libs/libpcre2:=
+ dev-ml/dune-configurator:=[ocamlopt?]
+"
+BDEPEND="test? ( dev-ml/ounit2 )"
diff --git a/dev-ml/pp/Manifest b/dev-ml/pp/Manifest
new file mode 100644
index 000000000000..3e7712d9bcb3
--- /dev/null
+++ b/dev-ml/pp/Manifest
@@ -0,0 +1 @@
+DIST pp-2.0.0.tbz 11585 BLAKE2B f1b9965c1bd455b7f421facfddd2e639c64d659f6090db342d3f2d8a21e1528373b65307f633732b1fbb07c4d0d9ff91fbedcaaf0f1e9895c8b4227d4432d93e SHA512 78cb68f35c0b975dd1e91bd83d5e33bcec1ee642431585d55864c483c70a032755dfcf21ec5697691e7e7554381ddb580639fd149e28ba6f74d04d2ee43d360d
diff --git a/dev-ml/pp/metadata.xml b/dev-ml/pp/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/pp/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/pp/pp-2.0.0.ebuild b/dev-ml/pp/pp-2.0.0.ebuild
new file mode 100644
index 000000000000..3fb76ea320ea
--- /dev/null
+++ b/dev-ml/pp/pp-2.0.0.ebuild
@@ -0,0 +1,18 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Pretty-printing library"
+HOMEPAGE="https://github.com/ocaml-dune/pp"
+SRC_URI="https://github.com/ocaml-dune/pp/releases/download/${PV}/${P}.tbz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="test? ( dev-ml/ppx_expect )"
diff --git a/dev-ml/pprint/Manifest b/dev-ml/pprint/Manifest
new file mode 100644
index 000000000000..a7079d6c6975
--- /dev/null
+++ b/dev-ml/pprint/Manifest
@@ -0,0 +1,2 @@
+DIST pprint-20220103.tar.gz 47809 BLAKE2B c581370be13f45d2d97a9fe7a6f7e81fc033a33a2f1740dcc808ce388356554506c00393efb05937b5833ae19fbf01c1fc9d013024d11724ef323110925bce88 SHA512 1c4d85e529414dc2d52602fae7e44ca036d2d35e9ce1906fd88b0f8a8d0ba1527042b0e5117fdeb51237b2311020a711065a917cc158b63e2ac932c97fa28406
+DIST pprint-20230830.tar.gz 52012 BLAKE2B c5ece9c608c04c3556fa2b6c98392d086de0e94395d1791184858c723634df1a15983f03eced0789386e56b5ef4e9a8f790396a577397a9ceeff8f76a2657c44 SHA512 7c58275cf9951283cf5051c2cf4c98084e8d562a8172a6379d9831a8fc95c9a19fc06710350217da2ea90fd2b17994142b10d1a9f8dab17b2bbf3e47e76c9f5f
diff --git a/dev-ml/pprint/metadata.xml b/dev-ml/pprint/metadata.xml
new file mode 100644
index 000000000000..619df7b38348
--- /dev/null
+++ b/dev-ml/pprint/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <longdescription>
+ This library offers a set of combinators for building so-called documents
+ as well as an efficient engine for converting documents to a textual,
+ fixed-width format. The engine takes care of indentation and line breaks,
+ while respecting the constraints imposed by the structure of the document
+ and by the text width.
+ </longdescription>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/pprint/pprint-20220103.ebuild b/dev-ml/pprint/pprint-20220103.ebuild
new file mode 100644
index 000000000000..1b02c9dd5c4e
--- /dev/null
+++ b/dev-ml/pprint/pprint-20220103.ebuild
@@ -0,0 +1,15 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="A pretty-printing combinator library and rendering engine"
+HOMEPAGE="https://github.com/fpottier/pprint/"
+SRC_URI="https://github.com/fpottier/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2 LGPL-2-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
diff --git a/dev-ml/pprint/pprint-20230830.ebuild b/dev-ml/pprint/pprint-20230830.ebuild
new file mode 100644
index 000000000000..cf47b0f5dfd8
--- /dev/null
+++ b/dev-ml/pprint/pprint-20230830.ebuild
@@ -0,0 +1,15 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="A pretty-printing combinator library and rendering engine"
+HOMEPAGE="https://github.com/fpottier/pprint/"
+SRC_URI="https://github.com/fpottier/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2 LGPL-2-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
diff --git a/dev-ml/ppx_assert/Manifest b/dev-ml/ppx_assert/Manifest
new file mode 100644
index 000000000000..7a973044da13
--- /dev/null
+++ b/dev-ml/ppx_assert/Manifest
@@ -0,0 +1,2 @@
+DIST ppx_assert-0.16.0.tar.gz 7419 BLAKE2B 21090724f4fec89cd6dc87a409dc181e0cc816c24beb82b330f9471e7d20aeb0cab61c105d61251706180af2be3d93cf46dbd78d0af2b2ce9cbb57bd8134774e SHA512 cceddea9172535ca72990fabe455b503a28a5b7519dc635ba1e6e3aff9d0c5f71a794f3ce05466165bab843b7385c23b0d879917d15589ad9b9592718dd46063
+DIST ppx_assert-0.17.0.tar.gz 7495 BLAKE2B 26195d4829fb954539446591d52848fa5f0c2a30fcf9a6f73da2e7c5bbf2f147ac9a4a94859f0a6b901562ebe18daf57ddec7d3409001896e8d77ab63c885799 SHA512 373e590946f06cad142a5951ebaf33e0a8194b7f017f25bf721abeb77185710dc813737d47a44d3d4985a3e4e6111102c7ecef5c7424026d98c13957553f7f87
diff --git a/dev-ml/ppx_assert/metadata.xml b/dev-ml/ppx_assert/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_assert/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_assert/ppx_assert-0.16.0.ebuild b/dev-ml/ppx_assert/ppx_assert-0.16.0.ebuild
new file mode 100644
index 000000000000..60a6b9e34404
--- /dev/null
+++ b/dev-ml/ppx_assert/ppx_assert-0.16.0.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Assert-like extension nodes that raise useful errors on failure"
+HOMEPAGE="https://github.com/janestreet/ppx_assert"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ >=dev-ml/ppxlib-0.28:=
+ dev-ml/ppx_cold:${SLOT}
+ dev-ml/ppx_compare:${SLOT}
+ dev-ml/ppx_here:${SLOT}
+ dev-ml/ppx_sexp_conv:${SLOT}
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/ppx_assert/ppx_assert-0.17.0-r1.ebuild b/dev-ml/ppx_assert/ppx_assert-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..6092a80b781d
--- /dev/null
+++ b/dev-ml/ppx_assert/ppx_assert-0.17.0-r1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Assert-like extension nodes that raise useful errors on failure"
+HOMEPAGE="https://github.com/janestreet/ppx_assert"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_cold-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_compare-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_here-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_sexp_conv-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_base/Manifest b/dev-ml/ppx_base/Manifest
new file mode 100644
index 000000000000..d7ac69117e60
--- /dev/null
+++ b/dev-ml/ppx_base/Manifest
@@ -0,0 +1,2 @@
+DIST ppx_base-0.16.0.tar.gz 2996 BLAKE2B 963c1966caa53fe4e626c111069a199846436e488d7c05a2323e8e726af09a5aaf5df5f2ef81a3736bc2215d8118351a413a3b3b1714361f44c1f0f3febb8af7 SHA512 110b03434f0ef7c82b8728c60ac03f56ec0bc2a292d9cc39bbca0102a976c34fb4a18311a7a1ff6755f7f61c2aa677d0413da36635f98336cc59eef962b8abb3
+DIST ppx_base-0.17.0.tar.gz 3047 BLAKE2B 9f18ed75e332ca6ef548da02962a7b75cad8bebb62fff6d9a56642a9a4c4c847051e4d6d7088fcfd363069d8af68765a098d40c3bbed7b77c54cf446f70ff045 SHA512 71b239ec07b56f2e2b2a3e488600909dd44251e4a32624244a3ca89627fb5ca34bce7d1f01862e92b54b4fe15d0e02cab2b273f4f180e5a4f23ef69fd86570bc
diff --git a/dev-ml/ppx_base/metadata.xml b/dev-ml/ppx_base/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_base/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_base/ppx_base-0.16.0-r1.ebuild b/dev-ml/ppx_base/ppx_base-0.16.0-r1.ebuild
new file mode 100644
index 000000000000..a50a6d0d28f9
--- /dev/null
+++ b/dev-ml/ppx_base/ppx_base-0.16.0-r1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Base set of ppx rewriters"
+HOMEPAGE="https://github.com/janestreet/ppx_base"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/ppx_cold:${SLOT}
+ dev-ml/ppx_globalize:${SLOT}
+ dev-ml/ppx_enumerate:${SLOT}
+ dev-ml/ppx_hash:${SLOT}
+ dev-ml/ppx_sexp_conv:${SLOT}
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/ppx_base/ppx_base-0.17.0.ebuild b/dev-ml/ppx_base/ppx_base-0.17.0.ebuild
new file mode 100644
index 000000000000..d2e4e300b1d7
--- /dev/null
+++ b/dev-ml/ppx_base/ppx_base-0.17.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Base set of ppx rewriters"
+HOMEPAGE="https://github.com/janestreet/ppx_base"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ dev-ml/ppx_cold:${SLOT}[ocamlopt?]
+ dev-ml/ppx_compare:${SLOT}[ocamlopt?]
+ dev-ml/ppx_enumerate:${SLOT}[ocamlopt?]
+ dev-ml/ppx_globalize:${SLOT}[ocamlopt?]
+ dev-ml/ppx_hash:${SLOT}[ocamlopt?]
+ dev-ml/ppx_sexp_conv:${SLOT}[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_bench/Manifest b/dev-ml/ppx_bench/Manifest
new file mode 100644
index 000000000000..1bd05b8dfeb0
--- /dev/null
+++ b/dev-ml/ppx_bench/Manifest
@@ -0,0 +1,3 @@
+DIST ppx_bench-0.16.0.tar.gz 9555 BLAKE2B f215f21f4c1d4d23c86bbaaf4feb7ec3d21a1041d1072b9aec98a16f6cbec6cd2e6e067e8e44c90d5eb9aedc331092400f578aff40cc18a4eea22df1d7f432c2 SHA512 4644d7088647bffa24e380dcf52adfc4034fccddc0f3e75112c71542d6a4515904d465f15789705ac1861d267fab52af2791dc0a2ddedf83585c5f62c0f18aed
+DIST ppx_bench-0.17.0.tar.gz 9636 BLAKE2B 8a8d3f6b6f898b88b6af68e8f4049f27ccaa9ee8ea0843399df9ddc4c2b0ea6d1026619ddfc12518bb736c90e0fbbba135fb1ef245763f3b768f5f829e398e16 SHA512 665cbaf302a8afb30616d00e7948220bbf3f189496379fbcbbc6b7430ddc4ab10d6c856595bbd37882db413c91eb4e59d242be88f4ac36f9c157f88897a93e5f
+DIST ppx_bench-0.17.1.tar.gz 9650 BLAKE2B 240d65f0b090c4a8ca1938aeb0e34c1a6926fa2fbb0452582ab1b5de2a17a798f67ab404c3f1cd9a9d5edde0b6a70a520f94563005f1b43639dd08f31d15b536 SHA512 7492c19b408709368f5a1ed020bea2c439ff562f765cd706637dbfb7ecdfc33478f9dd814fcf195292bf634769ae95f8b89b5b33b714e0fd6248f0754e1d37a4
diff --git a/dev-ml/ppx_bench/metadata.xml b/dev-ml/ppx_bench/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_bench/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_bench/ppx_bench-0.16.0.ebuild b/dev-ml/ppx_bench/ppx_bench-0.16.0.ebuild
new file mode 100644
index 000000000000..caad634bd82f
--- /dev/null
+++ b/dev-ml/ppx_bench/ppx_bench-0.16.0.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Syntax extension for writing in-line benchmarks in ocaml code"
+HOMEPAGE="https://github.com/janestreet/ppx_bench"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/ppx_inline_test:${SLOT}
+ >=dev-ml/ppxlib-0.28.0:=
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/ppx_bench/ppx_bench-0.17.0-r1.ebuild b/dev-ml/ppx_bench/ppx_bench-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..5d1a92c1cbb3
--- /dev/null
+++ b/dev-ml/ppx_bench/ppx_bench-0.17.0-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Syntax extension for writing in-line benchmarks in ocaml code"
+HOMEPAGE="https://github.com/janestreet/ppx_bench"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/ppx_inline_test-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+ <dev-ml/ppxlib-0.36.0
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_bench/ppx_bench-0.17.1.ebuild b/dev-ml/ppx_bench/ppx_bench-0.17.1.ebuild
new file mode 100644
index 000000000000..a6cc9385373b
--- /dev/null
+++ b/dev-ml/ppx_bench/ppx_bench-0.17.1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Syntax extension for writing in-line benchmarks in ocaml code"
+HOMEPAGE="https://github.com/janestreet/ppx_bench"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/ppx_inline_test-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.36.0:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_bin_prot/Manifest b/dev-ml/ppx_bin_prot/Manifest
new file mode 100644
index 000000000000..4acc8667b6d3
--- /dev/null
+++ b/dev-ml/ppx_bin_prot/Manifest
@@ -0,0 +1,3 @@
+DIST ppx_bin_prot-0.16.0.tar.gz 37632 BLAKE2B 48597b32da8b41dc5c9027d8dccff099055b9efdd7510c5f89c4d74f51e2fe6150e800ed5fbcc44f818deed5843e5bd485403ef7ec1e09ddec8d2b328e1dc8ad SHA512 b6e4f1a1ea1dfcfb2c23f34b0842097ad85535a22a767b2f47aa3a5812a112a60768c7b94bfce2602721f165b8ffec1e5282e83a008b2c6684bb102093467f3c
+DIST ppx_bin_prot-0.17.0.tar.gz 39491 BLAKE2B f74d2517266a4d59ad72110bd86585201753ef776f5c43b81d6c8bbeca1a3c239432262fc35b0a4ee7ec460dede997957278dbdd79f2e7ccbdcee75431f07a87 SHA512 4017dcd4405cb0882cc6398ea7ed3ffd8ed628c6c515f51b4cea16183a9a39b4b8eb8c33eb84f07abe72261b5b140149dc92a88192995fc9d9adb84047a804db
+DIST ppx_bin_prot-0.17.1.tar.gz 39491 BLAKE2B 6364305d05da7a47a89b46372ae53d750158d49c963919e8ec19020dfaf40e3a85a067b83ef7375d290385b573924acadefc920b577f891f548eee6c8d85fcbf SHA512 b5fd4b5718a1486b3f6e5c3ae424a254e30776499ed1d64df7679b7d3f30c1155cfeff0abe29b1426a3b0b58a7bb1bb9fdfb04076bcd6be8ce093c882bae8bf7
diff --git a/dev-ml/ppx_bin_prot/metadata.xml b/dev-ml/ppx_bin_prot/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_bin_prot/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_bin_prot/ppx_bin_prot-0.16.0.ebuild b/dev-ml/ppx_bin_prot/ppx_bin_prot-0.16.0.ebuild
new file mode 100644
index 000000000000..08f0261e0f94
--- /dev/null
+++ b/dev-ml/ppx_bin_prot/ppx_bin_prot-0.16.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Generation of bin_prot readers and writers from types"
+HOMEPAGE="https://github.com/janestreet/ppx_bin_prot"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/bin_prot:${SLOT}
+ dev-ml/ppx_here:${SLOT}
+ >=dev-ml/ppxlib-0.28.0:=
+"
+DEPEND="${RDEPEND}
+ test? (
+ dev-ml/ppx_jane
+ )"
diff --git a/dev-ml/ppx_bin_prot/ppx_bin_prot-0.17.0-r2.ebuild b/dev-ml/ppx_bin_prot/ppx_bin_prot-0.17.0-r2.ebuild
new file mode 100644
index 000000000000..fc120c18f10e
--- /dev/null
+++ b/dev-ml/ppx_bin_prot/ppx_bin_prot-0.17.0-r2.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Generation of bin_prot readers and writers from types"
+HOMEPAGE="https://github.com/janestreet/ppx_bin_prot"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/bin_prot-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_here-${JSM}:=[ocamlopt?]
+ =dev-ml/ppxlib_jane-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+ <dev-ml/ppxlib-0.36.0
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11
+ test? (
+ dev-ml/ppx_jane
+ )
+"
diff --git a/dev-ml/ppx_bin_prot/ppx_bin_prot-0.17.1.ebuild b/dev-ml/ppx_bin_prot/ppx_bin_prot-0.17.1.ebuild
new file mode 100644
index 000000000000..c058073448d5
--- /dev/null
+++ b/dev-ml/ppx_bin_prot/ppx_bin_prot-0.17.1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Generation of bin_prot readers and writers from types"
+HOMEPAGE="https://github.com/janestreet/ppx_bin_prot"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/bin_prot-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_here-${JSM}:=[ocamlopt?]
+ =dev-ml/ppxlib_jane-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.36.0:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11
+ test? (
+ dev-ml/ppx_jane
+ dev-ml/core
+ )
+"
diff --git a/dev-ml/ppx_blob/Manifest b/dev-ml/ppx_blob/Manifest
new file mode 100644
index 000000000000..4e8810b1f134
--- /dev/null
+++ b/dev-ml/ppx_blob/Manifest
@@ -0,0 +1,3 @@
+DIST ppx_blob-0.7.2.tbz 3155 BLAKE2B 86262f4ef91dde30bbfc466dd0404c0f4825156097d0b019b180332e8f7d91630660f568193f8e8e184d3db07ec9dbc007e888f8dcb6874e2c04a077e8477a16 SHA512 d1701f640ce3dda2e2f0dce7d3f4a6b33ddfdaf793a9beab73e4f9ac93b2912adb7bb3b7fd1800bab258302aef0f0cdefb1e20ee62e6d882b25f0a64eae390a3
+DIST ppx_blob-0.8.0.tbz 5505 BLAKE2B b0e22578abf518d9f2812b7b31664878361259c3d03604e45f01460dfbc8491aeeeca5485f151f3e66f53d2365bf25d61a275326565a7ceaafd9d195a29ef64a SHA512 bcbd58f7b0505063eaf4799792696f633a11ee734ce57d75b8f24b53d05fafbda8330bbf577a1d7a6149bb936b535216ae83574c1d40a61434e8d3bc6b6fd973
+DIST ppx_blob-0.9.0.tbz 6037 BLAKE2B c21ae191560c6cc75fb911d56aaa3770fdfc9bcd452de97c444224dc4316ebaaf75540483af63013ac05556275d0d52f863a1472885e5eee4e887d258ad9bebd SHA512 bad11f8ffbec82a04bb5f90e7548a7ad9ac4bf7e9b733815f6c956d7e0002fb258c52783ded847ab09fe3cd60e5eac2901fccaefd4fd4f885f20942d0ef66fea
diff --git a/dev-ml/ppx_blob/metadata.xml b/dev-ml/ppx_blob/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_blob/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_blob/ppx_blob-0.7.2.ebuild b/dev-ml/ppx_blob/ppx_blob-0.7.2.ebuild
new file mode 100644
index 000000000000..ab64c574d3ab
--- /dev/null
+++ b/dev-ml/ppx_blob/ppx_blob-0.7.2.ebuild
@@ -0,0 +1,20 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Include a file as a string at compile time"
+HOMEPAGE="https://github.com/johnwhitington/ppx_blob"
+SRC_URI="https://github.com/johnwhitington/${PN}/releases/download/${PV}/${P}.tbz"
+
+LICENSE="Unlicense"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+DEPEND="dev-ml/ppxlib:="
+RDEPEND="${DEPEND}"
+BDEPEND="test? ( dev-ml/alcotest )"
diff --git a/dev-ml/ppx_blob/ppx_blob-0.8.0.ebuild b/dev-ml/ppx_blob/ppx_blob-0.8.0.ebuild
new file mode 100644
index 000000000000..4a531dc3b3d7
--- /dev/null
+++ b/dev-ml/ppx_blob/ppx_blob-0.8.0.ebuild
@@ -0,0 +1,20 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Include a file as a string at compile time"
+HOMEPAGE="https://github.com/johnwhitington/ppx_blob"
+SRC_URI="https://github.com/johnwhitington/${PN}/releases/download/${PV}/${P}.tbz"
+
+LICENSE="Unlicense"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+DEPEND="dev-ml/ppxlib:=[ocamlopt?]"
+RDEPEND="${DEPEND}"
+BDEPEND="test? ( dev-ml/alcotest )"
diff --git a/dev-ml/ppx_blob/ppx_blob-0.9.0.ebuild b/dev-ml/ppx_blob/ppx_blob-0.9.0.ebuild
new file mode 100644
index 000000000000..a30345ae9929
--- /dev/null
+++ b/dev-ml/ppx_blob/ppx_blob-0.9.0.ebuild
@@ -0,0 +1,20 @@
+# Copyright 2023-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Include a file as a string at compile time"
+HOMEPAGE="https://github.com/johnwhitington/ppx_blob"
+SRC_URI="https://github.com/johnwhitington/${PN}/releases/download/${PV}/${P}.tbz"
+
+LICENSE="Unlicense"
+SLOT="0"
+KEYWORDS="amd64 ~arm64 x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+DEPEND="dev-ml/ppxlib:=[ocamlopt?]"
+RDEPEND="${DEPEND}"
+BDEPEND="test? ( dev-ml/alcotest )"
diff --git a/dev-ml/ppx_cold/Manifest b/dev-ml/ppx_cold/Manifest
new file mode 100644
index 000000000000..8bba2c4a97d8
--- /dev/null
+++ b/dev-ml/ppx_cold/Manifest
@@ -0,0 +1,2 @@
+DIST ppx_cold-0.16.0.tar.gz 3814 BLAKE2B fc75c4a32e9d8c3175e6a05f1f03d9c475eed7949fca4ad71ac21a4da881840b1c74133417d3354ecb3cbd7fe6b5a57238ef6d2dc97816f2f6659ea7b08bc7f4 SHA512 816358747bf4e4d92b6d5fa7bc31691897f6fb88336000a5e40b86250911b2efa203f6465d77b24f0147312bfd779de49822c5ea7a2a87df49d754b8c6e30821
+DIST ppx_cold-0.17.0.tar.gz 3763 BLAKE2B 549c86b0452779380046c6167e048a302924cb1d2fff90577be2c52244b40c89eb0036214a4ad85b1bc9b658e6a31cccebe11d62d3b94728f63a0725e61d97aa SHA512 d9ab24c7a11d0113d893f6c34986763fe56b7dd7c3e924dd3751224518fe199cb52fac26f5eb86fa58716bd7f5190ebd7f00d0e32df3f4d033b4fc88af1c1266
diff --git a/dev-ml/ppx_cold/metadata.xml b/dev-ml/ppx_cold/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_cold/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_cold/ppx_cold-0.16.0.ebuild b/dev-ml/ppx_cold/ppx_cold-0.16.0.ebuild
new file mode 100644
index 000000000000..d51ebdb25ab3
--- /dev/null
+++ b/dev-ml/ppx_cold/ppx_cold-0.16.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Expands [@cold] into [@inline never][@specialise never][@local never]"
+HOMEPAGE="https://github.com/janestreet/ppx_cold"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/base:${SLOT}
+ dev-ml/findlib:=
+ >=dev-ml/ppxlib-0.28.0:=
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/ppx_cold/ppx_cold-0.17.0-r1.ebuild b/dev-ml/ppx_cold/ppx_cold-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..91248d3a7b16
--- /dev/null
+++ b/dev-ml/ppx_cold/ppx_cold-0.17.0-r1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Expands [@cold] into [@inline never][@specialise never][@local never]"
+HOMEPAGE="https://github.com/janestreet/ppx_cold"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+DEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+"
+RDEPEND="${DEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_compare/Manifest b/dev-ml/ppx_compare/Manifest
new file mode 100644
index 000000000000..9813f84fabc2
--- /dev/null
+++ b/dev-ml/ppx_compare/Manifest
@@ -0,0 +1,2 @@
+DIST ppx_compare-0.16.0.tar.gz 14041 BLAKE2B 7f6eaaafa75e49e09cef26b2e6579fd9cd18a67e4b73fe727cca0988bf062eda2f4c11424ee449ad6d82923d8f08ffbeda0f1e05e2a940f7360c64beeb03d98e SHA512 8acbb52a841012fc81efa0f8c1df4d8f0595bddbaf723aed4702d0f7917552ac4c08f6b971c1aaf765460a512f2fca46fe8bbe14fb1b021a3fe3be4181bdb030
+DIST ppx_compare-0.17.0.tar.gz 16468 BLAKE2B 0285ff34946bff29f1b1fd17d0318e255e1959268352167cac25622e8d8ce8b13ec1e5dc6cd8af963289bf33a847d22b391c8f32ddbdc0f5bc7fe62fcbc81c03 SHA512 1854dd86ea43ec1076c3de9001eefea5dd936bfa9a91dd1ce577caf1fb558db6455450043190b62bad449b9d7f4c6ad97aaa25c0032d19f776cc68610ba86210
diff --git a/dev-ml/ppx_compare/metadata.xml b/dev-ml/ppx_compare/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_compare/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_compare/ppx_compare-0.16.0.ebuild b/dev-ml/ppx_compare/ppx_compare-0.16.0.ebuild
new file mode 100644
index 000000000000..b678c70e7983
--- /dev/null
+++ b/dev-ml/ppx_compare/ppx_compare-0.16.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Generation of comparison functions from types"
+HOMEPAGE="https://github.com/janestreet/ppx_compare"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/base:${SLOT}
+ dev-ml/findlib:=
+ >=dev-ml/ppxlib-0.28.0:=
+"
+
+RDEPEND="${DEPEND}"
+
+# Error: No rule found for test/comparelib_test__Check_optims.o
+RESTRICT=test
diff --git a/dev-ml/ppx_compare/ppx_compare-0.17.0-r1.ebuild b/dev-ml/ppx_compare/ppx_compare-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..d67cbb18ca62
--- /dev/null
+++ b/dev-ml/ppx_compare/ppx_compare-0.17.0-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Generation of comparison functions from types"
+HOMEPAGE="https://github.com/janestreet/ppx_compare"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+ =dev-ml/ppxlib_jane-${JSM}:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_custom_printf/Manifest b/dev-ml/ppx_custom_printf/Manifest
new file mode 100644
index 000000000000..6a03922755f4
--- /dev/null
+++ b/dev-ml/ppx_custom_printf/Manifest
@@ -0,0 +1,2 @@
+DIST ppx_custom_printf-0.16.0.tar.gz 9729 BLAKE2B a527652e9f5ecc2f64f48e77c6d05c8b27e49a01d78132986943c86e6123de673cf34c019b25a9882c9acaeab88302c15d819e80adc09422b42f2d6a6f6975a5 SHA512 9fc09f5434ca41681f2c8c749aa0c3bae051ee3645e820e0e8a16ab0c1ab630b0c9b0af86ef282eade7020635a066729abb9b7d8d91c1667b9e9f1770131f8b7
+DIST ppx_custom_printf-0.17.0.tar.gz 9776 BLAKE2B a447fb5ed5762f64d2e249555d5f5e6b6375474769fd57539bae61d172f660780d5321f4cfef51445340a644b42532fbcdb8ee23979e753c949d05b07d603ec3 SHA512 ecd12da39b4390c3f46244b7a58c75f082b8b5c21fb0ca4f2058808b6b2afa8707b307b0e01f0513cc14217d376e01c2863735fbcd56c5f08010442d75d219f5
diff --git a/dev-ml/ppx_custom_printf/metadata.xml b/dev-ml/ppx_custom_printf/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_custom_printf/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_custom_printf/ppx_custom_printf-0.16.0.ebuild b/dev-ml/ppx_custom_printf/ppx_custom_printf-0.16.0.ebuild
new file mode 100644
index 000000000000..7b416d5fb2fb
--- /dev/null
+++ b/dev-ml/ppx_custom_printf/ppx_custom_printf-0.16.0.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Printf-style format-strings for user-defined string conversion"
+HOMEPAGE="https://github.com/janestreet/ppx_custom_printf"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/ppx_sexp_conv:${SLOT}
+ >=dev-ml/ppxlib-0.28.0:=
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/ppx_custom_printf/ppx_custom_printf-0.17.0-r1.ebuild b/dev-ml/ppx_custom_printf/ppx_custom_printf-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..d700fc64ac5b
--- /dev/null
+++ b/dev-ml/ppx_custom_printf/ppx_custom_printf-0.17.0-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Printf-style format-strings for user-defined string conversion"
+HOMEPAGE="https://github.com/janestreet/ppx_custom_printf"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_sexp_conv-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_derivers/Manifest b/dev-ml/ppx_derivers/Manifest
new file mode 100644
index 000000000000..c32965ea09d7
--- /dev/null
+++ b/dev-ml/ppx_derivers/Manifest
@@ -0,0 +1 @@
+DIST ppx_derivers-1.2.1.tar.gz 2530 BLAKE2B d0a8a214e93908cfff1d418fe1b729a7ca502fb6dc983d3a837f6846aec891627457df72a610736d929c83622202bd5a00451c1c24510a642b4c133ce60416b8 SHA512 ef0796fe2592e653d34ba01d206d4b507429882a2aaadcb89c7f807c33a417f2871b0c94ade5c92aefd9487daa582e19d88ad5a5eaa631e8162ae12f4a0756c6
diff --git a/dev-ml/ppx_derivers/metadata.xml b/dev-ml/ppx_derivers/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_derivers/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_derivers/ppx_derivers-1.2.1.ebuild b/dev-ml/ppx_derivers/ppx_derivers-1.2.1.ebuild
new file mode 100644
index 000000000000..b584f81c57a5
--- /dev/null
+++ b/dev-ml/ppx_derivers/ppx_derivers-1.2.1.ebuild
@@ -0,0 +1,15 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="Shared [@@deriving] plugin registry"
+HOMEPAGE="https://github.com/diml/ppx_derivers"
+SRC_URI="https://github.com/diml/ppx_derivers/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
diff --git a/dev-ml/ppx_deriving/Manifest b/dev-ml/ppx_deriving/Manifest
new file mode 100644
index 000000000000..46966f87f1ae
--- /dev/null
+++ b/dev-ml/ppx_deriving/Manifest
@@ -0,0 +1,4 @@
+DIST ppx_deriving-5.2.1.tar.gz 46148 BLAKE2B 75c5f95841e4e54d5a58221c27d4a904347fb2b20ff0189bbe99bcc200eefd4abb94a476a120b6c6c7d0eba3b2233054875868a71064d032815cc8907919371d SHA512 01d2eb920f3375960a9228138ccb5f2af49bfba1111894795c24b3c37d5a021d6bc95e9de1d867c35d03645334300ccc89f1fca0cb75007ec62e5620f328e078
+DIST ppx_deriving-6.0.3.tar.gz 48541 BLAKE2B cd3a846ea5ca2b62407f60ce82bf19a7cfdd8329292cb7238c636ab921dcf6ac98936131cdd3a6315f9bf0462961dcf539efc5568954a829be2566ef180672d4 SHA512 8d58d7f003f135107d8c8eb236259a64b4b7ffcfa3193e51e87a55bdd4c56b0f0e97885050f45e27268f47a2d37a4a813dbe9517171eaae34375c3e0447fa0b1
+DIST ppx_deriving-6.1.0.tar.gz 48732 BLAKE2B fae4e30c3f9f98a10810ee1373d96598836eebc0b07a8121ace6a2328eb46c2b6d04523b204cf4757de9bde46edf516a5e16a8fc1c0dc514af742ecd144a18db SHA512 98c70df73aa53e7f7c74a8373cefa3d4a33cc49e69eb4c1bef132a3547cdb1d5469b2913e8ccbd28aeaa339fda7ceb1b131a67e6aad9257b005a6cb0d7180a11
+DIST ppx_deriving-6.1.1.tar.gz 48740 BLAKE2B 6e6ef6b2ace6413de9f40420075148737738ad6834164ae037c851ff4b7b7511ecbce4068228898d69a5fb0b32081e376fbd52e278c9c38fd8d3080f28c12c67 SHA512 f14950904b78cc8146792723445e02ea730749a11bb20734ae6491d0966da9e6d0b85375cb80efae55de3ee2c06cebf23c977880eb9258d095659772e260cc08
diff --git a/dev-ml/ppx_deriving/metadata.xml b/dev-ml/ppx_deriving/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_deriving/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_deriving/ppx_deriving-5.2.1-r2.ebuild b/dev-ml/ppx_deriving/ppx_deriving-5.2.1-r2.ebuild
new file mode 100644
index 000000000000..8224d1d361af
--- /dev/null
+++ b/dev-ml/ppx_deriving/ppx_deriving-5.2.1-r2.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="Type-driven code generation for OCaml"
+HOMEPAGE="https://github.com/ocaml-ppx/ppx_deriving"
+SRC_URI="https://github.com/ocaml-ppx/ppx_deriving/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="amd64 ~arm arm64 ~ppc ~ppc64 x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-ml/ppx_tools:=[ocamlopt?]
+ dev-ml/ocaml-migrate-parsetree:=[ocamlopt?]
+ dev-ml/ppx_derivers:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.20.0:=[ocamlopt?]
+ dev-ml/findlib:=[ocamlopt?]
+ dev-ml/result:=[ocamlopt?]
+ dev-ml/sexplib0:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}
+ dev-ml/cppo[ocamlopt?]
+ test? ( dev-ml/ounit2 )"
diff --git a/dev-ml/ppx_deriving/ppx_deriving-6.0.3-r1.ebuild b/dev-ml/ppx_deriving/ppx_deriving-6.0.3-r1.ebuild
new file mode 100644
index 000000000000..2b2d47a218a1
--- /dev/null
+++ b/dev-ml/ppx_deriving/ppx_deriving-6.0.3-r1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Type-driven code generation for OCaml"
+HOMEPAGE="https://github.com/ocaml-ppx/ppx_deriving"
+SRC_URI="https://github.com/ocaml-ppx/ppx_deriving/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-ml/findlib:=[ocamlopt?]
+ dev-ml/ppx_derivers:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.0:=[ocamlopt?]
+ <dev-ml/ppxlib-0.36
+"
+DEPEND="${RDEPEND}
+ dev-ml/cppo[ocamlopt?]
+ test? ( dev-ml/ounit2 )"
diff --git a/dev-ml/ppx_deriving/ppx_deriving-6.1.0.ebuild b/dev-ml/ppx_deriving/ppx_deriving-6.1.0.ebuild
new file mode 100644
index 000000000000..411b025999a1
--- /dev/null
+++ b/dev-ml/ppx_deriving/ppx_deriving-6.1.0.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Type-driven code generation for OCaml"
+HOMEPAGE="https://github.com/ocaml-ppx/ppx_deriving"
+SRC_URI="https://github.com/ocaml-ppx/ppx_deriving/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-ml/findlib:=[ocamlopt?]
+ dev-ml/ppx_derivers:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.36.0:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}
+ dev-ml/cppo[ocamlopt?]
+ test? ( dev-ml/ounit2 )"
diff --git a/dev-ml/ppx_deriving/ppx_deriving-6.1.1.ebuild b/dev-ml/ppx_deriving/ppx_deriving-6.1.1.ebuild
new file mode 100644
index 000000000000..820c328bb5c3
--- /dev/null
+++ b/dev-ml/ppx_deriving/ppx_deriving-6.1.1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Type-driven code generation for OCaml"
+HOMEPAGE="https://github.com/ocaml-ppx/ppx_deriving"
+SRC_URI="https://github.com/ocaml-ppx/ppx_deriving/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-ml/findlib:=[ocamlopt?]
+ dev-ml/ppx_derivers:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.36.0:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}
+ dev-ml/cppo[ocamlopt?]
+ test? ( dev-ml/ounit2 )"
diff --git a/dev-ml/ppx_deriving_yojson/Manifest b/dev-ml/ppx_deriving_yojson/Manifest
new file mode 100644
index 000000000000..bf1ea48c83f6
--- /dev/null
+++ b/dev-ml/ppx_deriving_yojson/Manifest
@@ -0,0 +1,2 @@
+DIST ppx_deriving_yojson-3.10.0.gh.tar.gz 21122 BLAKE2B 129be748970c2c0bf991cc4281464c0cf84d173ee89fc7a5b7c787f2f85dae3a7fb8891a6cad87086d161a1116ea7a2fbeeef181160e017a07c6561354d19290 SHA512 a3233fb7c93be0cbd5d787aef05a21b0ea8d860b6908451faf16418cb07059495cfabef3e32ba644528c67b31963df67cef4e2b1e8df72071c6bf09cf7eb5bfa
+DIST ppx_deriving_yojson-3.9.0.tar.gz 20979 BLAKE2B 4182701c4346a2820f6f27abf11f457d4c24dcff7c2ef55e234331126b38ae39d84a98fba6f0c12dc854c50216054cf3ab45e0d1d36b62654b5ce1dcc6eac3be SHA512 a046aabe09175638ca8cea5907bfd4b4a057e0be181008dae3dd0bd32a23808fa815d820e7ca98c2e15a4f8ef2a1f66cd421aced6c68fd6a3cf7e31c261d81da
diff --git a/dev-ml/ppx_deriving_yojson/metadata.xml b/dev-ml/ppx_deriving_yojson/metadata.xml
new file mode 100644
index 000000000000..9fc37462fa7d
--- /dev/null
+++ b/dev-ml/ppx_deriving_yojson/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/ocaml-ppx/ppx_deriving_yojson/issues</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_deriving_yojson/ppx_deriving_yojson-3.10.0.ebuild b/dev-ml/ppx_deriving_yojson/ppx_deriving_yojson-3.10.0.ebuild
new file mode 100644
index 000000000000..297fb2c10fef
--- /dev/null
+++ b/dev-ml/ppx_deriving_yojson/ppx_deriving_yojson-3.10.0.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="JSON codec generator for OCaml"
+HOMEPAGE="https://github.com/ocaml-ppx/ppx_deriving_yojson/"
+
+if [[ "${PV}" == *9999* ]] ; then
+ inherit git-r3
+
+ EGIT_REPO_URI="https://github.com/ocaml-ppx/${PN}"
+else
+ SRC_URI="https://github.com/ocaml-ppx/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz"
+
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+IUSE="+ocamlopt test"
+# RESTRICT="!test? ( test )"
+RESTRICT="test"
+
+RDEPEND="
+ dev-ml/ppx_deriving:=[ocamlopt?]
+ dev-ml/ppxlib:=[ocamlopt?]
+ dev-ml/yojson:=[ocamlopt?]
+"
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ test? ( dev-ml/ounit2 )
+"
+
+src_prepare() {
+ # One test file, this one fails:
+ echo "" > ./src_test/test_ppx_yojson.ml || die
+
+ default
+}
diff --git a/dev-ml/ppx_deriving_yojson/ppx_deriving_yojson-3.9.0.ebuild b/dev-ml/ppx_deriving_yojson/ppx_deriving_yojson-3.9.0.ebuild
new file mode 100644
index 000000000000..8faeb0f644f0
--- /dev/null
+++ b/dev-ml/ppx_deriving_yojson/ppx_deriving_yojson-3.9.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="JSON codec generator for OCaml"
+HOMEPAGE="https://github.com/ocaml-ppx/ppx_deriving_yojson/"
+SRC_URI="https://github.com/ocaml-ppx/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-ml/ppxlib-0.30.0:=[ocamlopt?]
+ dev-ml/ppx_deriving:=[ocamlopt?]
+ dev-ml/yojson:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="test? ( dev-ml/ounit2 )"
diff --git a/dev-ml/ppx_diff/Manifest b/dev-ml/ppx_diff/Manifest
new file mode 100644
index 000000000000..3ab67bddc5a8
--- /dev/null
+++ b/dev-ml/ppx_diff/Manifest
@@ -0,0 +1,2 @@
+DIST ppx_diff-0.17.0.tar.gz 51242 BLAKE2B 0ff71cade9b94b9a4352958c5d288d910676cc43524bf060b25a0d63ed75ac9b8241ecfeae7f928806269a0fbe961ddc6f60388bd134bc609bebd12971ce13e6 SHA512 63c66108d38e37e1568dd2055e2b90ada633d3a6795144fd9c75cce9dc11edff4df61c19d4845f2b14aae3c732186a7d3b0b7e0591cbfa8c46a440f5c323e6ab
+DIST ppx_diff-0.17.1.tar.gz 51247 BLAKE2B 46c6a461bd8dfd046ff61aa54ea4e5909e59f4abe8871934384668c419fe654fd8ca89cd168d456bc8a0db7d3e974e7b4f05c48ccee44652251dde89a445c887 SHA512 5848274cb0c5acd1ee3f29318e6111c5fef4b357aeda78120e0370067b9b23f62bb57e1e0be948c3af385b5900a3e0fb657f26dd4fe7ee95cd7002b9d8b68547
diff --git a/dev-ml/ppx_diff/metadata.xml b/dev-ml/ppx_diff/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_diff/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_diff/ppx_diff-0.17.0-r2.ebuild b/dev-ml/ppx_diff/ppx_diff-0.17.0-r2.ebuild
new file mode 100644
index 000000000000..34cff13dc613
--- /dev/null
+++ b/dev-ml/ppx_diff/ppx_diff-0.17.0-r2.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2024-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="A PPX rewriter that genreates the implementation of [Ldiffable.S]"
+HOMEPAGE="https://github.com/janestreet/ppx_diff"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/gel-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_compare-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_enumerate-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_jane-${JSM}:=[ocamlopt?]
+ =dev-ml/ppxlib_jane-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+ <dev-ml/ppxlib-0.36.0
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_diff/ppx_diff-0.17.1.ebuild b/dev-ml/ppx_diff/ppx_diff-0.17.1.ebuild
new file mode 100644
index 000000000000..2e14c64f07f7
--- /dev/null
+++ b/dev-ml/ppx_diff/ppx_diff-0.17.1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2024-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="A PPX rewriter that genreates the implementation of [Ldiffable.S]"
+HOMEPAGE="https://github.com/janestreet/ppx_diff"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/gel-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_compare-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_enumerate-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_jane-${JSM}:=[ocamlopt?]
+ =dev-ml/ppxlib_jane-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.36.0:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_disable_unused_warnings/Manifest b/dev-ml/ppx_disable_unused_warnings/Manifest
new file mode 100644
index 000000000000..50c7fab28f8c
--- /dev/null
+++ b/dev-ml/ppx_disable_unused_warnings/Manifest
@@ -0,0 +1,2 @@
+DIST ppx_disable_unused_warnings-0.16.0.tar.gz 4004 BLAKE2B df63aaf68f0d9ee2e756b8f5c1df358d7f5ec9f00b7545a8f9911c2e73e7cadb4ce66d1b95705437e8c608e692edc67c9f17e4b10f659a47754365028f31f69b SHA512 43831260baf4d9602da6a26503ac6db50517965c1788941610c4ca5ca4f7fb6cf8381a8fe4669cc3355502a7ff9f42baf35e8ddb2e7ed71a018d9ef16a1d9d77
+DIST ppx_disable_unused_warnings-0.17.0.tar.gz 4028 BLAKE2B d9f370a2e32b936996b60f2565b04cff88971a88cd60d40fa35ec0b0f00ba6f2b7ae603668f28b94275459291db555696d27265682b131af02d7f7d7372223df SHA512 6b734f08c1dce45c2b009fd34276556b538af3c6941d3b686816f21a19377b005d3ac752fe4153aae11eedc28b7bd83af2aa81af5a767c2b59ff6183b5718c2a
diff --git a/dev-ml/ppx_disable_unused_warnings/metadata.xml b/dev-ml/ppx_disable_unused_warnings/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_disable_unused_warnings/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_disable_unused_warnings/ppx_disable_unused_warnings-0.16.0.ebuild b/dev-ml/ppx_disable_unused_warnings/ppx_disable_unused_warnings-0.16.0.ebuild
new file mode 100644
index 000000000000..86b002684f42
--- /dev/null
+++ b/dev-ml/ppx_disable_unused_warnings/ppx_disable_unused_warnings-0.16.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Expands [@disable_unused_warnings]"
+HOMEPAGE="https://github.com/janestreet/ppx_disable_unused_warnings"
+SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ dev-ml/base:${SLOT}
+ >=dev-ml/ppxlib-0.28.0:="
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/ppx_disable_unused_warnings/ppx_disable_unused_warnings-0.17.0-r1.ebuild b/dev-ml/ppx_disable_unused_warnings/ppx_disable_unused_warnings-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..7d82214dc5b6
--- /dev/null
+++ b/dev-ml/ppx_disable_unused_warnings/ppx_disable_unused_warnings-0.17.0-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2022-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Expands [@disable_unused_warnings]"
+HOMEPAGE="https://github.com/janestreet/ppx_disable_unused_warnings"
+SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_enumerate/Manifest b/dev-ml/ppx_enumerate/Manifest
new file mode 100644
index 000000000000..4caa479f6526
--- /dev/null
+++ b/dev-ml/ppx_enumerate/Manifest
@@ -0,0 +1,2 @@
+DIST ppx_enumerate-0.16.0.tar.gz 9414 BLAKE2B 87230f95eaf547a55c3ea3ca833dc532cfe1fd9245964de0e21e181317c964cd20c5fc20f9498e43ccaea4459ef074a1b52b3989590713ba4a7886c364bb4676 SHA512 8a5b79bd7bee7b746ade8a0f9ab1397f12e911a61582df344e78630ef64184f73415041b73699668e6b06b682c5f3f4f7b894bce0cd4aa7d122157f86d4c4af8
+DIST ppx_enumerate-0.17.0.tar.gz 9667 BLAKE2B f77001b77ed17a5b2c2414b29f08310b6ae26ac0fc1af11a834f62f930b4824d9b5fd7e65391d044a81103473df8e2d12c59a0b117e56f16347dd474cc2045aa SHA512 33cb909b2c810e3b78350e49bdcb5d804a934a504a29960c27b8df1ba58c7a74ccbabbf8fced424cd8b820ac33be37eacfdc0e85a3777a825963498d01045f9f
diff --git a/dev-ml/ppx_enumerate/metadata.xml b/dev-ml/ppx_enumerate/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_enumerate/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_enumerate/ppx_enumerate-0.16.0.ebuild b/dev-ml/ppx_enumerate/ppx_enumerate-0.16.0.ebuild
new file mode 100644
index 000000000000..04d3a9b1df1e
--- /dev/null
+++ b/dev-ml/ppx_enumerate/ppx_enumerate-0.16.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Generate a list containing all values of a finite type"
+HOMEPAGE="https://github.com/janestreet/ppx_enumerate"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/base:${SLOT}
+ dev-ml/findlib:=
+ >=dev-ml/ppxlib-0.28.0:=
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/ppx_enumerate/ppx_enumerate-0.17.0-r1.ebuild b/dev-ml/ppx_enumerate/ppx_enumerate-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..abebebdcd3ad
--- /dev/null
+++ b/dev-ml/ppx_enumerate/ppx_enumerate-0.17.0-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Generate a list containing all values of a finite type"
+HOMEPAGE="https://github.com/janestreet/ppx_enumerate"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+ =dev-ml/ppxlib_jane-${JSM}:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_expect/Manifest b/dev-ml/ppx_expect/Manifest
new file mode 100644
index 000000000000..8d365662e655
--- /dev/null
+++ b/dev-ml/ppx_expect/Manifest
@@ -0,0 +1,3 @@
+DIST ppx_expect-0.16.0.tar.gz 48460 BLAKE2B c4e9eecd689c1d0f79183020e634636ca340b16638fb0b76e5a7e89e08626d4cc88bd981533184ed7b81b8d34a0d302ff68920414472c084d5a969e45b6e791e SHA512 fdc8cb76afc9c9b436cbf8627b0c6543ae64fc51e92bf25db99ace10646aef3be3d1a3659dedb3e888494ab4e380e387b92557a584fa3e1eca79e19751a0b950
+DIST ppx_expect-0.17.2.tar.gz 58430 BLAKE2B 4f9937cfd52f966ea8cfbd5626e315f12e3a461df1a2e840d185515a5b11789c3ee9b19778850254b9bc7e2b8b114f694d48f73f498c123f8d2a7d3c30a17736 SHA512 c6394522da7f1e03df5d2f62766aa8534c09a12efff7908cc1215b06959e6eeaa2cb85514cd5def1582db66455ed922024387f28b84b4412aed4879ea905c38a
+DIST ppx_expect-0.17.3.tar.gz 58454 BLAKE2B 8a92dd674b864826c9094ed8be44343c8c1c14b0bc29c0a4e6a400094a126ff5097493677b31d9465c0afee46623e07832d5704423a540e3e0fb4582677c0d53 SHA512 d26364f2c7c0a3d83e5ecc144f77875a00887853c72c03e0122d658acb4d1cb4c6d77fabc1222d775663db74f0345be2a33518dffac9feef57ece5e9e40dc709
diff --git a/dev-ml/ppx_expect/metadata.xml b/dev-ml/ppx_expect/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_expect/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_expect/ppx_expect-0.16.0.ebuild b/dev-ml/ppx_expect/ppx_expect-0.16.0.ebuild
new file mode 100644
index 000000000000..ee385277a6c6
--- /dev/null
+++ b/dev-ml/ppx_expect/ppx_expect-0.16.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Cram like framework for OCaml"
+HOMEPAGE="https://github.com/janestreet/ppx_expect"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+# https://bugs.gentoo.org/749291#c2
+RESTRICT="test"
+
+RDEPEND="
+ >=dev-ml/ppxlib-0.28.0:=
+ >=dev-ml/re-1.8.0:=
+ dev-ml/base:${SLOT}
+ dev-ml/ppx_here:${SLOT}
+ dev-ml/ppx_inline_test:${SLOT}
+ dev-ml/stdio:${SLOT}
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/ppx_expect/ppx_expect-0.17.2-r2.ebuild b/dev-ml/ppx_expect/ppx_expect-0.17.2-r2.ebuild
new file mode 100644
index 000000000000..331bfe4eadb6
--- /dev/null
+++ b/dev-ml/ppx_expect/ppx_expect-0.17.2-r2.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Cram like framework for OCaml"
+HOMEPAGE="https://github.com/janestreet/ppx_expect"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+# https://bugs.gentoo.org/749291#c2
+RESTRICT="test"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_base-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_here-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_inline_test-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+ <dev-ml/ppxlib-0.36.0
+ =dev-ml/stdio-${JSM}:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_expect/ppx_expect-0.17.3.ebuild b/dev-ml/ppx_expect/ppx_expect-0.17.3.ebuild
new file mode 100644
index 000000000000..7dd3f867dab4
--- /dev/null
+++ b/dev-ml/ppx_expect/ppx_expect-0.17.3.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Cram like framework for OCaml"
+HOMEPAGE="https://github.com/janestreet/ppx_expect"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64"
+IUSE="+ocamlopt"
+# https://bugs.gentoo.org/749291#c2
+RESTRICT="test"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_base-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_here-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_inline_test-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.36.0:=[ocamlopt?]
+ =dev-ml/stdio-${JSM}:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_fields_conv/Manifest b/dev-ml/ppx_fields_conv/Manifest
new file mode 100644
index 000000000000..e466816e643f
--- /dev/null
+++ b/dev-ml/ppx_fields_conv/Manifest
@@ -0,0 +1,2 @@
+DIST ppx_fields_conv-0.16.0.tar.gz 21481 BLAKE2B a3a19b935b457fba0aebbe308ee3452df7d698073c1d15fb0e7948f19a64c0d6d5f358d35979e16eaafd220413c1865c22d6dbe197ab6623d30050d72f55b3da SHA512 14bd27628f653aca239c82b528af1dea65446d56ecd2e30c4d9d2f8555854c45e7a0c5c4f6230de7abe3869fe2c8be569b26d6c217296c607c6e8b336a4af575
+DIST ppx_fields_conv-0.17.0.tar.gz 23727 BLAKE2B 752b63c1766e831780748e61835494f4837f890ad627ab673dad033b55fb159b6350c4022a92a69c8ad372f10ad89840f8ffb7a3832a8f19badabe8ecfab6869 SHA512 82e782b7472b1b9ee0325698772357af0f75c8a9b65b3731b01bc7ad75f49a423d28c46bd34376f876b713db0d7d105b56125ccd82dbbd24b1eef42359fc255d
diff --git a/dev-ml/ppx_fields_conv/metadata.xml b/dev-ml/ppx_fields_conv/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_fields_conv/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_fields_conv/ppx_fields_conv-0.16.0.ebuild b/dev-ml/ppx_fields_conv/ppx_fields_conv-0.16.0.ebuild
new file mode 100644
index 000000000000..7ef8ffb08062
--- /dev/null
+++ b/dev-ml/ppx_fields_conv/ppx_fields_conv-0.16.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Generation of accessor and iteration functions for ocaml records"
+HOMEPAGE="https://github.com/janestreet/ppx_fields_conv"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/base:${SLOT}
+ dev-ml/fieldslib:${SLOT}
+ >=dev-ml/ppxlib-0.28.0:=
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/ppx_fields_conv/ppx_fields_conv-0.17.0-r1.ebuild b/dev-ml/ppx_fields_conv/ppx_fields_conv-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..09723cca4bf8
--- /dev/null
+++ b/dev-ml/ppx_fields_conv/ppx_fields_conv-0.17.0-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Generation of accessor and iteration functions for ocaml records"
+HOMEPAGE="https://github.com/janestreet/ppx_fields_conv"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/fieldslib-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_fixed_literal/Manifest b/dev-ml/ppx_fixed_literal/Manifest
new file mode 100644
index 000000000000..653e985f492e
--- /dev/null
+++ b/dev-ml/ppx_fixed_literal/Manifest
@@ -0,0 +1,2 @@
+DIST ppx_fixed_literal-0.16.0.tar.gz 3679 BLAKE2B de5a474feba17ae3942cce33a42b0634c4d144e9721c9ef0cf53afd0c286043b71c2d281f3ed440c6d089f68e4566a75c636625945faaeeb06fb0ba88509a14a SHA512 9d83d578fb34b3fb2c5351c3934d5f35e509f66a72ba75126a44362b7e4de07c4d43a33b4eb8630999a7010410a8300c7740cc79bf16609ce1144ad90fc38751
+DIST ppx_fixed_literal-0.17.0.tar.gz 3720 BLAKE2B c0530e93e396d79a4220d9a727876c02b5168c20cf1627751e1ed3fb588074f0344b9900b9d5376b15bc607c162b17ea7511a22b8974a0ae58262fb220f313f0 SHA512 9a4b0e6d599d1b98ec07491b92be84acbe4bd6e7163bf03255dab148c3138cb86b480bbf16a479ae1a93fffdcabe25da43c55b269de0ac636a4ca97ed04fe165
diff --git a/dev-ml/ppx_fixed_literal/metadata.xml b/dev-ml/ppx_fixed_literal/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_fixed_literal/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_fixed_literal/ppx_fixed_literal-0.16.0.ebuild b/dev-ml/ppx_fixed_literal/ppx_fixed_literal-0.16.0.ebuild
new file mode 100644
index 000000000000..95ee065e78f9
--- /dev/null
+++ b/dev-ml/ppx_fixed_literal/ppx_fixed_literal-0.16.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Simpler notation for fixed point literals"
+HOMEPAGE="https://github.com/janestreet/ppx_fixed_literal"
+SRC_URI="https://github.com/janestreet/ppx_fixed_literal/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ dev-ml/base:${SLOT}
+ dev-ml/findlib:=
+ >=dev-ml/ppxlib-0.28.0:=
+ >=dev-ml/ocaml-compiler-libs-0.11.0:=
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/ppx_fixed_literal/ppx_fixed_literal-0.17.0-r1.ebuild b/dev-ml/ppx_fixed_literal/ppx_fixed_literal-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..5f4f917a839e
--- /dev/null
+++ b/dev-ml/ppx_fixed_literal/ppx_fixed_literal-0.17.0-r1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Simpler notation for fixed point literals"
+HOMEPAGE="https://github.com/janestreet/ppx_fixed_literal"
+SRC_URI="https://github.com/janestreet/ppx_fixed_literal/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_globalize/Manifest b/dev-ml/ppx_globalize/Manifest
new file mode 100644
index 000000000000..2dc4ab993bf9
--- /dev/null
+++ b/dev-ml/ppx_globalize/Manifest
@@ -0,0 +1,3 @@
+DIST ppx_globalize-0.16.0.tar.gz 8328 BLAKE2B e8ba1a500fc244d53d07dbe90df6b18f3088c9496d309002a177725e1990b8108c6972dd2b45caeecdbad62c466e73ee3ae944701dec489c2613a8b71ea88787 SHA512 76618dc1cc436c437e7911a2b793233f9bdd559dc37419df6f94143548bcfe09a0f29eafc3a36e97a5f8fb886aa94ca641f10f56078a8558f642a2cf564e4c75
+DIST ppx_globalize-0.17.0.tar.gz 8736 BLAKE2B 8b849b260ef3527cc3db9a35cabb46c08b5f4c3fa9eaa204a807fc7e12407241d5edf9f834fecd6304c3e271a573edbeba3a6fe60c482e84173f14bf4060a7b3 SHA512 5bfb7905e32b3af90f33e27ad418af11cfd90626ebc46a29215827b0cd4ef1fcc6ff59ce7d676eaca03f86fd11b4adf14c8c998be4de993aee0f23f7ffdf1e17
+DIST ppx_globalize-0.17.2.tar.gz 8750 BLAKE2B c30de96b912869169699b2ee12c82922016acff79934a9f921c9fb5cbfdeaa05ad7bc6f18fa1f58207f2faad8fe4c30e24670817357ddd96befbdf3db58bc367 SHA512 9eb4908e8cd92ed79a73fb82a70d9f68fcdeec58e7b2e4e37b536716f4bf4f31866376cb1102cb44e62a40b4ead3c6d5d448872a62803ebb3ea7284c9d082b4a
diff --git a/dev-ml/ppx_globalize/metadata.xml b/dev-ml/ppx_globalize/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_globalize/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_globalize/ppx_globalize-0.16.0.ebuild b/dev-ml/ppx_globalize/ppx_globalize-0.16.0.ebuild
new file mode 100644
index 000000000000..ca8ee3510da9
--- /dev/null
+++ b/dev-ml/ppx_globalize/ppx_globalize-0.16.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Generates functions to copy local values to the global heap"
+HOMEPAGE="https://github.com/janestreet/ppx_globalize"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/base:${SLOT}
+ >=dev-ml/ppxlib-0.28:=
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/ppx_globalize/ppx_globalize-0.17.0-r2.ebuild b/dev-ml/ppx_globalize/ppx_globalize-0.17.0-r2.ebuild
new file mode 100644
index 000000000000..f4f26e790a9d
--- /dev/null
+++ b/dev-ml/ppx_globalize/ppx_globalize-0.17.0-r2.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Generates functions to copy local values to the global heap"
+HOMEPAGE="https://github.com/janestreet/ppx_globalize"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+ <dev-ml/ppxlib-0.36.0
+ =dev-ml/ppxlib_jane-${JSM}:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_globalize/ppx_globalize-0.17.2.ebuild b/dev-ml/ppx_globalize/ppx_globalize-0.17.2.ebuild
new file mode 100644
index 000000000000..1ecc5be2b76d
--- /dev/null
+++ b/dev-ml/ppx_globalize/ppx_globalize-0.17.2.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Generates functions to copy local values to the global heap"
+HOMEPAGE="https://github.com/janestreet/ppx_globalize"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.36.0:=[ocamlopt?]
+ =dev-ml/ppxlib_jane-${JSM}:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_hash/Manifest b/dev-ml/ppx_hash/Manifest
new file mode 100644
index 000000000000..9140bdbf379f
--- /dev/null
+++ b/dev-ml/ppx_hash/Manifest
@@ -0,0 +1,2 @@
+DIST ppx_hash-0.16.0.tar.gz 28660 BLAKE2B 8cd12ae26beb6a6828ebb1ebd5d3168d37e9b0dc61feca742a9cee0e992e9be84b9a7b1f32e708e68d4644a3cd6dc29c6d302ae780efcd466731624821dd0238 SHA512 b06f67fa0550a40a96fd02e1b65240470a014fcf6f6d4f0f21f77d2d7f2eaba3b86faef462d329b416f9e6234f287ac3a3c72875cbac53b0532d8ab82c0199e7
+DIST ppx_hash-0.17.0.tar.gz 29329 BLAKE2B afb0798249684589d724f1ca078189794ba60cb150946b3390e2069b3077280600622ab7070c85544ef0fc4d2031113f63ded037b67a02d358173abe9d0f3a59 SHA512 d3af529bc4d9ad43dd5941742f0a7f89f9573b5b9088bea70e2789bd74a13a30185edd450f687772d7b0cfbc66586031a5bf8114538c3151c283813ca6a105b8
diff --git a/dev-ml/ppx_hash/metadata.xml b/dev-ml/ppx_hash/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_hash/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_hash/ppx_hash-0.16.0.ebuild b/dev-ml/ppx_hash/ppx_hash-0.16.0.ebuild
new file mode 100644
index 000000000000..f42acd5e079b
--- /dev/null
+++ b/dev-ml/ppx_hash/ppx_hash-0.16.0.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="PPX rewriter that generates hash functions from type expressions and definitions"
+HOMEPAGE="https://github.com/janestreet/ppx_hash"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ dev-ml/ppx_sexp_conv:${SLOT}
+ dev-ml/ppx_compare:${SLOT}
+ >=dev-ml/ppxlib-0.28:=
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/ppx_hash/ppx_hash-0.17.0-r1.ebuild b/dev-ml/ppx_hash/ppx_hash-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..f6ae09ea40d4
--- /dev/null
+++ b/dev-ml/ppx_hash/ppx_hash-0.17.0-r1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="PPX rewriter that generates hash functions from type expressions and definitions"
+HOMEPAGE="https://github.com/janestreet/ppx_hash"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_compare-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_sexp_conv-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+ =dev-ml/ppxlib_jane-${JSM}:=[ocamlopt?]
+ =dev-ml/sexplib0-${JSM}:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_here/Manifest b/dev-ml/ppx_here/Manifest
new file mode 100644
index 000000000000..dc117c2d1b23
--- /dev/null
+++ b/dev-ml/ppx_here/Manifest
@@ -0,0 +1,2 @@
+DIST ppx_here-0.16.0.tar.gz 5034 BLAKE2B 6bd768d87b838677e471964b290e1779da0b041f2f45f20d6fc9b77e1032dc313b49ab5faf9e613e4491b402ec0351281693dde92af342d67f286d0667ad3503 SHA512 8729ad57caaf512de4735a3017272d052f322be0847f051ab17bc687ce54f24c398dde8e6ffa10126e035750ec5268e9ce1ee678da7588b718144239fcc90bc8
+DIST ppx_here-0.17.0.tar.gz 5138 BLAKE2B bbfc83ed262d216343729675c13a7b4902dc726b8faca0f4dc042263e7eafbb6f05c4c347310cf690f4c07d65d6683a7b2ed6a46e30edc53ec13ecea5a5b59f5 SHA512 fa6c14ee69c728268222161099c1f89963979d000fbccdaf7493efa9e25d30f1697448e7a3f2257ca98eeb9cab02e6bdcf8ceac5eefa0dd6c1c24f9fe4c826eb
diff --git a/dev-ml/ppx_here/metadata.xml b/dev-ml/ppx_here/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_here/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_here/ppx_here-0.16.0.ebuild b/dev-ml/ppx_here/ppx_here-0.16.0.ebuild
new file mode 100644
index 000000000000..044a48b6f0b1
--- /dev/null
+++ b/dev-ml/ppx_here/ppx_here-0.16.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Expands [%here] into its location"
+HOMEPAGE="https://github.com/janestreet/ppx_here"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/base:${SLOT}
+ dev-ml/findlib:=
+ >=dev-ml/ppxlib-0.28.0:=
+ >=dev-ml/ocaml-compiler-libs-0.11.0:=
+"
+RDEPEND="${DEPEND}"
+
+# Error: No rule found for test/dummy.ml.pp
+RESTRICT=test
diff --git a/dev-ml/ppx_here/ppx_here-0.17.0-r1.ebuild b/dev-ml/ppx_here/ppx_here-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..19933083dfca
--- /dev/null
+++ b/dev-ml/ppx_here/ppx_here-0.17.0-r1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Expands [%here] into its location"
+HOMEPAGE="https://github.com/janestreet/ppx_here"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
+
+# Error: No rule found for test/dummy.ml.pp
+RESTRICT=test
diff --git a/dev-ml/ppx_ignore_instrumentation/Manifest b/dev-ml/ppx_ignore_instrumentation/Manifest
new file mode 100644
index 000000000000..3786649cc503
--- /dev/null
+++ b/dev-ml/ppx_ignore_instrumentation/Manifest
@@ -0,0 +1,3 @@
+DIST ppx_ignore_instrumentation-0.15.0.tar.gz 3679 BLAKE2B 3537d4336a2299e277fcf1e58690233a9e1ecd94c80d144376bef90b45b3c2c94a8eaf5e5ba2b90b12d8f4e3afc257461c4732a2fadba8aa91c7f35ff036fb0f SHA512 ec411cb7a191fcb36f9a29f8ff3839db6f4031e30fa3444896a07235950ca04562a701b3bc7bc5df95e3ff82cfe8996be75bd5dce4bcce8a491898df1bffc50d
+DIST ppx_ignore_instrumentation-0.16.0.tar.gz 3712 BLAKE2B f7d4bb193fd1296b2bc9e3ea12133bd71a63dbf85dff8049f9d779db338a5725df12e005fc021584b98d0e09b2d69bf0198537ef69356a1a46eeeaee5c4b0f2e SHA512 3ec3a706b2c0d8d170860d2a6fb24f6f95dc7d1b28e88d292f536302ef005158d76e4c586721f924e3c7c5098981e3d9569e28300dabaf0348585b56c62bb245
+DIST ppx_ignore_instrumentation-0.17.0.tar.gz 3737 BLAKE2B 0502380f0d26f740f8f2bebeb1dd16087e6f10041468fb805e4d5062cf0dd0583278b5f5ba75c834f40a90735c9c723f70a1fa479836819bd0cc60e969ec45fb SHA512 a1904bb5788e4a3cb9e110cf9cb8c49d4ae383b03927f580e4b61a77f036c404982811df2e85290ee66c2a0556b4ca6ecd6d78bd3ffb3bd7c90796c34d48d5fa
diff --git a/dev-ml/ppx_ignore_instrumentation/metadata.xml b/dev-ml/ppx_ignore_instrumentation/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_ignore_instrumentation/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_ignore_instrumentation/ppx_ignore_instrumentation-0.15.0-r1.ebuild b/dev-ml/ppx_ignore_instrumentation/ppx_ignore_instrumentation-0.15.0-r1.ebuild
new file mode 100644
index 000000000000..37888b721950
--- /dev/null
+++ b/dev-ml/ppx_ignore_instrumentation/ppx_ignore_instrumentation-0.15.0-r1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit dune
+
+DESCRIPTION="Ignore Jane Street specific instrumentation extensions"
+HOMEPAGE="https://github.com/janestreet/ppx_ignore_instrumentation"
+SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND=">=dev-ml/ppxlib-0.23.0:="
+RDEPEND="${DEPEND}"
+BDEPEND=""
diff --git a/dev-ml/ppx_ignore_instrumentation/ppx_ignore_instrumentation-0.16.0.ebuild b/dev-ml/ppx_ignore_instrumentation/ppx_ignore_instrumentation-0.16.0.ebuild
new file mode 100644
index 000000000000..7be975f4fed2
--- /dev/null
+++ b/dev-ml/ppx_ignore_instrumentation/ppx_ignore_instrumentation-0.16.0.ebuild
@@ -0,0 +1,19 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit dune
+
+DESCRIPTION="Ignore Jane Street specific instrumentation extensions"
+HOMEPAGE="https://github.com/janestreet/ppx_ignore_instrumentation"
+SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND=">=dev-ml/ppxlib-0.28.0:="
+RDEPEND="${DEPEND}"
+BDEPEND=""
diff --git a/dev-ml/ppx_ignore_instrumentation/ppx_ignore_instrumentation-0.17.0.ebuild b/dev-ml/ppx_ignore_instrumentation/ppx_ignore_instrumentation-0.17.0.ebuild
new file mode 100644
index 000000000000..7f918624284e
--- /dev/null
+++ b/dev-ml/ppx_ignore_instrumentation/ppx_ignore_instrumentation-0.17.0.ebuild
@@ -0,0 +1,20 @@
+# Copyright 2022-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Ignore Jane Street specific instrumentation extensions"
+HOMEPAGE="https://github.com/janestreet/ppx_ignore_instrumentation"
+SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+RDEPEND=">=dev-ml/ppxlib-0.32.1:=[ocamlopt?]"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_import/Manifest b/dev-ml/ppx_import/Manifest
new file mode 100644
index 000000000000..1987cf2611f1
--- /dev/null
+++ b/dev-ml/ppx_import/Manifest
@@ -0,0 +1,4 @@
+DIST ppx_import-1.10.0.tar.gz 13927 BLAKE2B d036b730dd9c7b5be9fcbf175103ec6f1e2a14111575135a9cfaf935b936165418b34a4b0a37e0d112b7fbc1315526ce21a9db5bebbd99e1898c4a3c245dcf94 SHA512 7d4aeab6512014b5a16fdcc4d26ac29cc22223e18c7ab26e26f9fdd5bcd625c22aa9ff2e6c2106f45408316eaaf755437979961d97139da5973026038c210935
+DIST ppx_import-1.11.0.tar.gz 14018 BLAKE2B 4a1265d1364c51bc18351f964a0f6ffcaca4d866389479583353282f939f11001096b815a80c5d7f8b326a9987cd46cb7a897ca02b84458666bc54f2b350bffb SHA512 e8ba55fa89a1ca546107238c1141d4df1b371418fe901f1172458ba5b2b50160e9a9650f38639bc633e183494c4d728e9ccf3ec6ded5a7bd9cc923bd806a1156
+DIST ppx_import-1.12.0.tar.gz 14378 BLAKE2B 0163f1e08417511b050baaf1816388a8be089502356d808263062cfe2da3678ecd02bdbdb58ae37d6a95b07a157e7442c0bb4d992599ab3709a87c924fea530e SHA512 793f5f2571bb38d8353b572684c0bee8a00aca8edefbe2969018db485fb828828418ec4881772c6342486de50f55119d247c89abdb6058c844d3a982b6f2bfd2
+DIST ppx_import-1.9.1.tar.gz 13820 BLAKE2B 295796041ecad89c95bd6a6fe14a9d9bb969f7d984388cca5181c31b8358affeb92a4d200bb9e11449a0216995a8477b809acf251b049e8331eea9e6bb918cb7 SHA512 37bd54bc477b91a3aa4b2433a9817c6d939f1e4a1d950b83b05964d22540296582cec6513a0959fd036f738dbd6ef9df13430183b8bdaa9425c7640a5fddf4b3
diff --git a/dev-ml/ppx_import/files/ppx_import-dune-ounit2.patch b/dev-ml/ppx_import/files/ppx_import-dune-ounit2.patch
new file mode 100644
index 000000000000..ac164dc0d11d
--- /dev/null
+++ b/dev-ml/ppx_import/files/ppx_import-dune-ounit2.patch
@@ -0,0 +1,9 @@
+index 3ec5810..b2d8d6d 100644
+--- a/src_test/ppx_deriving/dune
++++ b/src_test/ppx_deriving/dune
+@@ -2,4 +2,4 @@
+ (name test_ppx_import)
+ (preprocess
+ (staged_pps ppx_import ppx_deriving.show))
+- (libraries compiler-libs.common oUnit))
++ (libraries compiler-libs.common ounit2))
diff --git a/dev-ml/ppx_import/metadata.xml b/dev-ml/ppx_import/metadata.xml
new file mode 100644
index 000000000000..c07302d90c29
--- /dev/null
+++ b/dev-ml/ppx_import/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <upstream>
+ <changelog>https://github.com/ocaml-ppx/ppx_import/releases/</changelog>
+ <bugs-to>https://github.com/ocaml-ppx/ppx_import/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_import/ppx_import-1.10.0-r1.ebuild b/dev-ml/ppx_import/ppx_import-1.10.0-r1.ebuild
new file mode 100644
index 000000000000..89420ed90291
--- /dev/null
+++ b/dev-ml/ppx_import/ppx_import-1.10.0-r1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="A syntax extension for importing declarations from interface files"
+HOMEPAGE="https://github.com/ocaml-ppx/ppx_import/"
+SRC_URI="https://github.com/ocaml-ppx/${PN}/archive/${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="amd64 x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-ml/ppxlib-0.26:=
+ <dev-ml/ppxlib-0.32
+ <dev-lang/ocaml-5.2
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ dev-ml/ounit2
+ dev-ml/ppx_deriving
+ dev-ml/ppx_sexp_conv
+ )
+"
+
+PATCHES=( "${FILESDIR}"/${PN}-dune-ounit2.patch )
diff --git a/dev-ml/ppx_import/ppx_import-1.11.0-r1.ebuild b/dev-ml/ppx_import/ppx_import-1.11.0-r1.ebuild
new file mode 100644
index 000000000000..1707f58701ff
--- /dev/null
+++ b/dev-ml/ppx_import/ppx_import-1.11.0-r1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="A syntax extension for importing declarations from interface files"
+HOMEPAGE="https://github.com/ocaml-ppx/ppx_import/"
+SRC_URI="https://github.com/ocaml-ppx/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm64 x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-ml/ppxlib-0.26:=
+ <dev-lang/ocaml-5.4
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ dev-ml/ounit2
+ dev-ml/ppx_deriving
+ dev-ml/ppx_sexp_conv
+ )
+"
+
+PATCHES=( "${FILESDIR}"/${PN}-dune-ounit2.patch )
diff --git a/dev-ml/ppx_import/ppx_import-1.12.0.ebuild b/dev-ml/ppx_import/ppx_import-1.12.0.ebuild
new file mode 100644
index 000000000000..2349b1825a08
--- /dev/null
+++ b/dev-ml/ppx_import/ppx_import-1.12.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="A syntax extension for importing declarations from interface files"
+HOMEPAGE="https://github.com/ocaml-ppx/ppx_import/"
+SRC_URI="https://github.com/ocaml-ppx/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-ml/ppxlib-0.34:=
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ dev-ml/ounit2
+ dev-ml/ppx_deriving
+ dev-ml/ppx_sexp_conv
+ )
+"
+
+PATCHES=( "${FILESDIR}"/${PN}-dune-ounit2.patch )
diff --git a/dev-ml/ppx_import/ppx_import-1.9.1-r2.ebuild b/dev-ml/ppx_import/ppx_import-1.9.1-r2.ebuild
new file mode 100644
index 000000000000..274c26600e2b
--- /dev/null
+++ b/dev-ml/ppx_import/ppx_import-1.9.1-r2.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="A syntax extension for importing declarations from interface files"
+HOMEPAGE="https://github.com/ocaml-ppx/ppx_import/"
+SRC_URI="https://github.com/ocaml-ppx/${PN}/archive/${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-ml/ppxlib-0.24:=
+ <dev-ml/ppxlib-0.26
+ <dev-lang/ocaml-5.4
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ dev-ml/ounit2
+ dev-ml/ppx_deriving
+ dev-ml/ppx_sexp_conv
+ )
+"
+
+PATCHES=( "${FILESDIR}"/${PN}-dune-ounit2.patch )
diff --git a/dev-ml/ppx_inline_test/Manifest b/dev-ml/ppx_inline_test/Manifest
new file mode 100644
index 000000000000..d60ffc49ce32
--- /dev/null
+++ b/dev-ml/ppx_inline_test/Manifest
@@ -0,0 +1,3 @@
+DIST ppx_inline_test-0.16.0.tar.gz 21926 BLAKE2B 634bfb8966b73c65a609b6581fb9e2ca725d5471bbd9aa011b913e7ed9acab9a87cc1fd5d0d63f7dc691756dd958115932fe40857866f0a4a92136e282224c25 SHA512 d3004a8a37f5fc3570fd14e6f6407158996942a9ec17ef1e5b88f8985f553e4a476c2bc91b1226e5da3937e796b034b66d32934197227a35bcb03875ffc4e73e
+DIST ppx_inline_test-0.17.0.tar.gz 24968 BLAKE2B 886829ae6ca97cfc4df7590bd43382760d10234c09e0fc6dcef65a3e74f0ab5e1a280d750d62904d95627946bacff3c03f9b4efcf7a241ea29979821e77852f9 SHA512 ada7b14b1ee6b1845411792ced8e7f2ccd0ea1fd38975df89a81d714ba9e139177ab14126fba41e1d7e2753110349fccb6d5233c695fd741618033ce1cac8bf8
+DIST ppx_inline_test-0.17.1.tar.gz 24988 BLAKE2B 67362e1ecf20c35fb74cc25eea17ba48a3933b18d4e218e5e47c3498baad7d28d6ee257e9e5a662d33e893838c13da199a342f18eaf35c2c58af8b6beac5f839 SHA512 e5c2dc8e519bbdadb5b1472ee5c5d08c547395e46c294962f1ac830461bb2d30d16894395ba95866713a099ef3565d83e67dda48d6ed26b55ad7cb36a8f7f6aa
diff --git a/dev-ml/ppx_inline_test/metadata.xml b/dev-ml/ppx_inline_test/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_inline_test/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_inline_test/ppx_inline_test-0.16.0.ebuild b/dev-ml/ppx_inline_test/ppx_inline_test-0.16.0.ebuild
new file mode 100644
index 000000000000..9304da96b0c2
--- /dev/null
+++ b/dev-ml/ppx_inline_test/ppx_inline_test-0.16.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Syntax extension for writing in-line tests in ocaml code"
+HOMEPAGE="https://github.com/janestreet/ppx_inline_test"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+# https://bugs.gentoo.org/749291#c2
+RESTRICT="test"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/base:${SLOT}
+ >=dev-ml/ppxlib-0.28.0:=
+ dev-ml/time_now:${SLOT}
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/ppx_inline_test/ppx_inline_test-0.17.0-r2.ebuild b/dev-ml/ppx_inline_test/ppx_inline_test-0.17.0-r2.ebuild
new file mode 100644
index 000000000000..d88b0d1b58c2
--- /dev/null
+++ b/dev-ml/ppx_inline_test/ppx_inline_test-0.17.0-r2.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Syntax extension for writing in-line tests in ocaml code"
+HOMEPAGE="https://github.com/janestreet/ppx_inline_test"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+ <dev-ml/ppxlib-0.36.0
+ =dev-ml/time_now-${JSM}:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_inline_test/ppx_inline_test-0.17.1.ebuild b/dev-ml/ppx_inline_test/ppx_inline_test-0.17.1.ebuild
new file mode 100644
index 000000000000..47f0ea92db34
--- /dev/null
+++ b/dev-ml/ppx_inline_test/ppx_inline_test-0.17.1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Syntax extension for writing in-line tests in ocaml code"
+HOMEPAGE="https://github.com/janestreet/ppx_inline_test"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.36.0:=[ocamlopt?]
+ =dev-ml/time_now-${JSM}:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_jane/Manifest b/dev-ml/ppx_jane/Manifest
new file mode 100644
index 000000000000..122cba443cf9
--- /dev/null
+++ b/dev-ml/ppx_jane/Manifest
@@ -0,0 +1,2 @@
+DIST ppx_jane-0.16.0.tar.gz 4688 BLAKE2B 46d2b4c6c7924fc6ff2bf4cae2171dd022a1ef51d8354c5393884a121cbeda001157650843c4409a22491a16445d36e374fe159cb826839e2b2a6950c0606d2c SHA512 8bb5997eb33a2f8ef7ec88d5a31c03828cc6f7070641463ad5af318b865fe8638b1affa359db07e8880364598b43ad19621882cf4c3311e38cf0638a59271652
+DIST ppx_jane-0.17.0.tar.gz 4497 BLAKE2B cfa5f81e444fa98f89ed1c7488db7d91473266326b9820b5c0647f09930dd6694d2d5d0b5e23640ac42a6d7df2902ce748337444c2758fff1b8c8d3a204d1e20 SHA512 5992b017f49b642eee31a7ae921e49d06f0dd88f20062cb8fbdc64910f839a7e86ce9128e9baf48a5fb9e3bc2c0fb044434a5a532bf7d7afbc41687f320c6b23
diff --git a/dev-ml/ppx_jane/metadata.xml b/dev-ml/ppx_jane/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_jane/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_jane/ppx_jane-0.16.0-r1.ebuild b/dev-ml/ppx_jane/ppx_jane-0.16.0-r1.ebuild
new file mode 100644
index 000000000000..693ebbfc1650
--- /dev/null
+++ b/dev-ml/ppx_jane/ppx_jane-0.16.0-r1.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Standard Jane Street ppx rewriters"
+HOMEPAGE="https://github.com/janestreet/ppx_jane"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ dev-ml/base_quickcheck:${SLOT}
+ dev-ml/ppx_assert:${SLOT}
+ dev-ml/ppx_base:${SLOT}
+ dev-ml/ppx_bench:${SLOT}
+ dev-ml/ppx_bin_prot:${SLOT}
+ dev-ml/ppx_compare:=
+ dev-ml/ppx_disable_unused_warnings:${SLOT}
+ dev-ml/ppx_expect:${SLOT}
+ dev-ml/ppx_fields_conv:${SLOT}
+ dev-ml/ppx_fixed_literal:${SLOT}
+ dev-ml/ppx_ignore_instrumentation:${SLOT}
+ dev-ml/ppx_inline_test:${SLOT}
+ dev-ml/ppx_log:${SLOT}
+ dev-ml/ppx_module_timer:${SLOT}
+ dev-ml/ppx_optional:${SLOT}
+ dev-ml/ppx_pipebang:${SLOT}
+ dev-ml/ppx_stable:${SLOT}
+ dev-ml/ppx_string:${SLOT}
+ dev-ml/ppx_tydi:${SLOT}
+ dev-ml/ppx_typerep_conv:${SLOT}
+ >=dev-ml/ppxlib-0.28.0:=
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/ppx_jane/ppx_jane-0.17.0.ebuild b/dev-ml/ppx_jane/ppx_jane-0.17.0.ebuild
new file mode 100644
index 000000000000..237f12580ed4
--- /dev/null
+++ b/dev-ml/ppx_jane/ppx_jane-0.17.0.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Standard Jane Street ppx rewriters"
+HOMEPAGE="https://github.com/janestreet/ppx_jane"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ dev-ml/base_quickcheck:${SLOT}[ocamlopt?]
+ dev-ml/ppx_assert:${SLOT}[ocamlopt?]
+ dev-ml/ppx_base:${SLOT}[ocamlopt?]
+ dev-ml/ppx_bench:${SLOT}[ocamlopt?]
+ dev-ml/ppx_bin_prot:${SLOT}[ocamlopt?]
+ dev-ml/ppx_custom_printf:=[ocamlopt?]
+ dev-ml/ppx_disable_unused_warnings:${SLOT}[ocamlopt?]
+ dev-ml/ppx_expect:${SLOT}[ocamlopt?]
+ dev-ml/ppx_fields_conv:${SLOT}[ocamlopt?]
+ dev-ml/ppx_fixed_literal:${SLOT}[ocamlopt?]
+ dev-ml/ppx_here:${SLOT}[ocamlopt?]
+ dev-ml/ppx_ignore_instrumentation:${SLOT}[ocamlopt?]
+ dev-ml/ppx_inline_test:${SLOT}[ocamlopt?]
+ dev-ml/ppx_let:${SLOT}[ocamlopt?]
+ dev-ml/ppx_log:${SLOT}[ocamlopt?]
+ dev-ml/ppx_module_timer:${SLOT}[ocamlopt?]
+ dev-ml/ppx_optional:${SLOT}[ocamlopt?]
+ dev-ml/ppx_pipebang:${SLOT}[ocamlopt?]
+ dev-ml/ppx_sexp_message:${SLOT}[ocamlopt?]
+ dev-ml/ppx_sexp_value:${SLOT}[ocamlopt?]
+ dev-ml/ppx_stable:${SLOT}[ocamlopt?]
+ dev-ml/ppx_stable_witness:${SLOT}[ocamlopt?]
+ dev-ml/ppx_string:${SLOT}
+ dev-ml/ppx_string_conv:${SLOT}
+ dev-ml/ppx_tydi:${SLOT}
+ dev-ml/ppx_typerep_conv:${SLOT}
+ dev-ml/ppx_variants_conv:${SLOT}
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_js_style/Manifest b/dev-ml/ppx_js_style/Manifest
new file mode 100644
index 000000000000..2d656aee9114
--- /dev/null
+++ b/dev-ml/ppx_js_style/Manifest
@@ -0,0 +1,3 @@
+DIST ppx_js_style-0.16.0.tar.gz 10782 BLAKE2B f8d2cf691792240bb88094e3f3e09a82d2f947ac0fc2dafbf99351943e069cb237fcf17c45d1d097f3d78bafe4ef286acc931578180695cd7c237f4f45ddf7e8 SHA512 5a77fb8d8f7f4713a30d202d8edc16f11509cc9a6b4fb54609c774bb78f0dc1bb22d7064b5a2ea0c080aea32b626acae7a20af8e16913607c01e285134bead2d
+DIST ppx_js_style-0.17.0.tar.gz 10758 BLAKE2B db3710441f75cfa0e9af4589bd061896cdc384d5abcf255e46ea67846df0c18290257b5fb17e57790ad8bc8543832ca95be425e918aa8a5175440236ee0fecaa SHA512 e5abb24b5a445a1f8e30ade007f2b44e7f0dd0151b2a902943f056d338d8dbb9c17f614e270797f6fe52362a24b4fb56787ba891e5aadec673afde5c46dbd8a5
+DIST ppx_js_style-0.17.1.tar.gz 10758 BLAKE2B 4de7c22c5c85f0ec337ec62ee23b1e526471cb7bd1d53340c992a1fc784ce28db3c4fc5f31bdfaa569ba40e3d166a448176609546dee150e4aadd852b8bd35ec SHA512 7df4fb48935eaa505be37689cf01c2ae87ede67847e7574357d291a6d1a03fda4da589d9b6d2233992fbf8aaad5e2ad07e197b1e6aa6a92622347aa552fb7fcf
diff --git a/dev-ml/ppx_js_style/metadata.xml b/dev-ml/ppx_js_style/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_js_style/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_js_style/ppx_js_style-0.16.0-r1.ebuild b/dev-ml/ppx_js_style/ppx_js_style-0.16.0-r1.ebuild
new file mode 100644
index 000000000000..74ec32f1abd2
--- /dev/null
+++ b/dev-ml/ppx_js_style/ppx_js_style-0.16.0-r1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Code style checker for Jane Street Packages"
+HOMEPAGE="https://github.com/janestreet/ppx_js_style"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ dev-ml/findlib:=
+ dev-ml/octavius:=
+ >=dev-ml/ppxlib-0.28.0:=
+ <dev-ml/ppxlib-0.36
+ >=dev-ml/ocaml-compiler-libs-0.11.0:=
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/ppx_js_style/ppx_js_style-0.17.0-r2.ebuild b/dev-ml/ppx_js_style/ppx_js_style-0.17.0-r2.ebuild
new file mode 100644
index 000000000000..bc7794fcdee7
--- /dev/null
+++ b/dev-ml/ppx_js_style/ppx_js_style-0.17.0-r2.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Code style checker for Jane Street Packages"
+HOMEPAGE="https://github.com/janestreet/ppx_js_style"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ dev-ml/octavius:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.28.0:=[ocamlopt?]
+ <dev-ml/ppxlib-0.36.0
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_js_style/ppx_js_style-0.17.1.ebuild b/dev-ml/ppx_js_style/ppx_js_style-0.17.1.ebuild
new file mode 100644
index 000000000000..8d2b25f86823
--- /dev/null
+++ b/dev-ml/ppx_js_style/ppx_js_style-0.17.1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Code style checker for Jane Street Packages"
+HOMEPAGE="https://github.com/janestreet/ppx_js_style"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5.3.0
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ dev-ml/octavius:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.36.0:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/ppx_let/Manifest b/dev-ml/ppx_let/Manifest
new file mode 100644
index 000000000000..2bd7d6bd2193
--- /dev/null
+++ b/dev-ml/ppx_let/Manifest
@@ -0,0 +1,3 @@
+DIST ppx_let-0.16.0.tar.gz 15460 BLAKE2B 8cc4adb4fae276a11df36d91690ae9fa609ac923b971afe783102fc854f212dce58826d1e743e2e2a349c278ca103e80cbb203fa18dbea21adb7c6849b0c8132 SHA512 d81c98f4f87c2af2f8121ce42bd5de8910ff4d588eb1bc3a18a9594c070f261b7c7a173bb86a5fbcd67d09ad8ba436df9a210577ac05c6a98625a0bc553fb4ad
+DIST ppx_let-0.17.0.tar.gz 15707 BLAKE2B 7e6c333a2b53a6633a79745885008b5984ccf84304f03d720c609647a0bc4c12028a72fa3a521cbce62ff36def634fc9af6d8b04bed52bf616dcaecbbde759aa SHA512 182821192082abd40635d45df7ff4a7bd5654298109c4a315e2689983a7ec3f07df834a54c5be7b6259564b974b4feb473762d80d0f3be2a5b2d0d967dc758bd
+DIST ppx_let-0.17.1.tar.gz 15718 BLAKE2B 97033783010f90f3b9d649fcfed93f52d8dcd0d3e354e6dca8e0be0803affe489695a4eb0464b1ced5778bf0732f21c4590217392051003dd0eedb6cc23625a1 SHA512 bd08d0bc7f37dff97a1500fdd145e978e9693382c5ac11305751a60d11f0ecea4afc319920c804f5e7b8ebadde365c31564851a14c41e9cac2956fc7b5a71a9d
diff --git a/dev-ml/ppx_let/metadata.xml b/dev-ml/ppx_let/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_let/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_let/ppx_let-0.16.0-r1.ebuild b/dev-ml/ppx_let/ppx_let-0.16.0-r1.ebuild
new file mode 100644
index 000000000000..6c61fd04aba6
--- /dev/null
+++ b/dev-ml/ppx_let/ppx_let-0.16.0-r1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Monadic let-bindings"
+HOMEPAGE="https://github.com/janestreet/ppx_let"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ dev-ml/findlib:=
+ >=dev-ml/ocaml-compiler-libs-0.11.0:=
+ =dev-ml/ppx_here-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.28.0:=[ocamlopt?]
+ <dev-ml/ppxlib-0.36.0
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/ppx_let/ppx_let-0.17.0-r2.ebuild b/dev-ml/ppx_let/ppx_let-0.17.0-r2.ebuild
new file mode 100644
index 000000000000..d5d34f21c41e
--- /dev/null
+++ b/dev-ml/ppx_let/ppx_let-0.17.0-r2.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Monadic let-bindings"
+HOMEPAGE="https://github.com/janestreet/ppx_let"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_here-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+ <dev-ml/ppxlib-0.36.0
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_let/ppx_let-0.17.1.ebuild b/dev-ml/ppx_let/ppx_let-0.17.1.ebuild
new file mode 100644
index 000000000000..c9ceed039bb8
--- /dev/null
+++ b/dev-ml/ppx_let/ppx_let-0.17.1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Monadic let-bindings"
+HOMEPAGE="https://github.com/janestreet/ppx_let"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_here-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.36.0:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_log/Manifest b/dev-ml/ppx_log/Manifest
new file mode 100644
index 000000000000..d33bb6c405e6
--- /dev/null
+++ b/dev-ml/ppx_log/Manifest
@@ -0,0 +1,2 @@
+DIST ppx_log-0.16.0.tar.gz 6706 BLAKE2B 7da65372fb1ad0f25023f1236634a1cb790f8ab3098a250ea1fac6056213973b02efac54c659c5dc950b2daf64673b761f6af91976bee3781f18f8e62c7c8d3f SHA512 6560720e4c329d8859850f06aa9c80f9446f361221ce57223ee2872944928079898bb644bf762d4907673368a18857390346a94d450ba4d2787abac77dea9e87
+DIST ppx_log-0.17.0.tar.gz 37668 BLAKE2B 357b9ea6743e887d2b156a4374bd88d4bf598ea85ca3d3391155b15dab2e8d0aeaddfd6745e5e46f53588e0065456ee4e06a5cfe3c049e7e78771d487b1fce56 SHA512 9944bf182bc2a9ac02e278f00b73f75bc5a899ca71e42fce3a813b6ca8c3a8e16a159b1756cbf506996b287193b503a53ec80cf524c44a1fbbdcb44c456efd6f
diff --git a/dev-ml/ppx_log/metadata.xml b/dev-ml/ppx_log/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_log/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_log/ppx_log-0.16.0.ebuild b/dev-ml/ppx_log/ppx_log-0.16.0.ebuild
new file mode 100644
index 000000000000..f4d94bd5ef03
--- /dev/null
+++ b/dev-ml/ppx_log/ppx_log-0.16.0.ebuild
@@ -0,0 +1,25 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit dune
+
+DESCRIPTION="Lazily rendering log messages"
+HOMEPAGE="https://github.com/janestreet/ppx_log"
+SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/base:${SLOT}
+ dev-ml/ppx_sexp_message:${SLOT}
+ dev-ml/sexplib:${SLOT}
+ >=dev-ml/ppxlib-0.28.0:=
+"
+RDEPEND="${DEPEND}"
+BDEPEND=""
diff --git a/dev-ml/ppx_log/ppx_log-0.17.0-r1.ebuild b/dev-ml/ppx_log/ppx_log-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..92b1eda22430
--- /dev/null
+++ b/dev-ml/ppx_log/ppx_log-0.17.0-r1.ebuild
@@ -0,0 +1,41 @@
+# Copyright 2023-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Lazily rendering log messages"
+HOMEPAGE="https://github.com/janestreet/ppx_log"
+SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_compare-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_enumerate-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_expect-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_fields_conv-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_here-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_let-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_sexp_conv-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_sexp_message-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_sexp_value-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_string-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_variants_conv-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+ =dev-ml/sexplib-${JSM}:=[ocamlopt?]
+ =dev-ml/stdio-${JSM}:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_module_timer/Manifest b/dev-ml/ppx_module_timer/Manifest
new file mode 100644
index 000000000000..77de32a85557
--- /dev/null
+++ b/dev-ml/ppx_module_timer/Manifest
@@ -0,0 +1,2 @@
+DIST ppx_module_timer-0.16.0.tar.gz 7281 BLAKE2B 3be0d87198cb15c7a95b8b72648a8e986c6ef83dd173538931f8fc9426bc6bf384c76f62dea7440d637caa40548e19832da07c32528c46c3eca10d354a0a98a7 SHA512 6125aec05e91bb11d1b41fc4fb9a1030561403c7f27ea9d9512a6050da4cfdc796cfe3acb1d96e5333f65b6beab6f5b16b044529ccc6e99e90c019923adf85d9
+DIST ppx_module_timer-0.17.0.tar.gz 7315 BLAKE2B c960f023a94cd8f48be6fb4bd5ae6c07ab244d25fee9a279888679b7c60a0188e64ec0f999106b84abd4e5b78ce5267c8bdf6e4e63b17f4de07d3b363879b226 SHA512 205506db24d42340cf0a1b6c5c58cfc96835c15b4948ca30aa87d237010569ab9cd23792f12ac4dc5402e8ed681038a39db99ca0eb4117cc91794266fc3b32d4
diff --git a/dev-ml/ppx_module_timer/metadata.xml b/dev-ml/ppx_module_timer/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_module_timer/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_module_timer/ppx_module_timer-0.16.0.ebuild b/dev-ml/ppx_module_timer/ppx_module_timer-0.16.0.ebuild
new file mode 100644
index 000000000000..ae5b3460587f
--- /dev/null
+++ b/dev-ml/ppx_module_timer/ppx_module_timer-0.16.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Ppx rewriter that records top-level module startup times"
+HOMEPAGE="https://github.com/janestreet/ppx_module_timer"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/time_now:${SLOT}
+ >=dev-ml/ppxlib-0.28.0:=
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/ppx_module_timer/ppx_module_timer-0.17.0-r1.ebuild b/dev-ml/ppx_module_timer/ppx_module_timer-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..06762001bd74
--- /dev/null
+++ b/dev-ml/ppx_module_timer/ppx_module_timer-0.17.0-r1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Ppx rewriter that records top-level module startup times"
+HOMEPAGE="https://github.com/janestreet/ppx_module_timer"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_base-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+ =dev-ml/stdio-${JSM}:=[ocamlopt?]
+ =dev-ml/time_now-${JSM}:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_optcomp/Manifest b/dev-ml/ppx_optcomp/Manifest
new file mode 100644
index 000000000000..3fb50217f433
--- /dev/null
+++ b/dev-ml/ppx_optcomp/Manifest
@@ -0,0 +1,3 @@
+DIST ppx_optcomp-0.16.0.tar.gz 16789 BLAKE2B 102c9daa01a9fbda926d0ce11546bb7a5a9520f00a57e504e88da383ed793498f23bd6de672f55116d2844a9e474d9a0c3471e7438e91c7019d6384acb40252d SHA512 8a10136a16423723a8cd1414ebad2c2029e8d28c563ce884eaceb85a363df7f019a08cee6194f7dbbc0290666909dbd9557d2900a8ce055ac57069364c785806
+DIST ppx_optcomp-0.17.0.tar.gz 16754 BLAKE2B e4f483d0ebcc12f9d9232a482b2733a59c709e3a19a976c0a820b1d57d9b9c852198272bd808a8bcdc4b3e7d1ede9c6c61c5c49c0b838ae35e024150f5c2fbd7 SHA512 be874b4a1082c256c856838c55db19de1854b8a330a572c699ce537acef0ded8994ece2170b41c4e2760a4b0e19e4a9c6df46ea7e7e6c3e412f150deb198bbc4
+DIST ppx_optcomp-0.17.1.tar.gz 16785 BLAKE2B e0a46af0a1ee8bc41c3564af3fd78feb00d4713eaf53d8bb967e23105c387e89c10224cad26aa2cc7c6ac67694cf65cc38ec5003f1e2dc9835d7f74320d5f861 SHA512 2e7c41f168c004cf3be1cd768a5406c61af135c0b084ffdfc39555b4be8c21a227c56cffbfb66de8dc3de35f735277d330f3cc6762e6ba8708deebb78f9fd49b
diff --git a/dev-ml/ppx_optcomp/metadata.xml b/dev-ml/ppx_optcomp/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_optcomp/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_optcomp/ppx_optcomp-0.16.0.ebuild b/dev-ml/ppx_optcomp/ppx_optcomp-0.16.0.ebuild
new file mode 100644
index 000000000000..8cf2de8049f0
--- /dev/null
+++ b/dev-ml/ppx_optcomp/ppx_optcomp-0.16.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="Optional compilation for OCaml"
+HOMEPAGE="https://github.com/janestreet/ppx_optcomp"
+SRC_URI="https://github.com/janestreet/ppx_optcomp/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ dev-ml/base:${SLOT}
+ dev-ml/findlib:=
+ dev-ml/stdio:${SLOT}
+ >=dev-ml/ppxlib-0.28.0:=
+ >=dev-ml/ocaml-compiler-libs-0.11.0:=
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/ppx_optcomp/ppx_optcomp-0.17.0-r2.ebuild b/dev-ml/ppx_optcomp/ppx_optcomp-0.17.0-r2.ebuild
new file mode 100644
index 000000000000..e5aa8e2b7c1f
--- /dev/null
+++ b/dev-ml/ppx_optcomp/ppx_optcomp-0.17.0-r2.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Optional compilation for OCaml"
+HOMEPAGE="https://github.com/janestreet/ppx_optcomp"
+SRC_URI="https://github.com/janestreet/ppx_optcomp/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+ <dev-ml/ppxlib-0.36.0
+ =dev-ml/stdio-${JSM}:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_optcomp/ppx_optcomp-0.17.1.ebuild b/dev-ml/ppx_optcomp/ppx_optcomp-0.17.1.ebuild
new file mode 100644
index 000000000000..2199157f5185
--- /dev/null
+++ b/dev-ml/ppx_optcomp/ppx_optcomp-0.17.1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Optional compilation for OCaml"
+HOMEPAGE="https://github.com/janestreet/ppx_optcomp"
+SRC_URI="https://github.com/janestreet/ppx_optcomp/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.36.0:=[ocamlopt?]
+ =dev-ml/stdio-${JSM}:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_optional/Manifest b/dev-ml/ppx_optional/Manifest
new file mode 100644
index 000000000000..e1e72c33bee7
--- /dev/null
+++ b/dev-ml/ppx_optional/Manifest
@@ -0,0 +1,2 @@
+DIST ppx_optional-0.16.0.tar.gz 8333 BLAKE2B 1e977c8c06a9db1247d17a4795d7cd849ca6280b2a2367de3ffe7071f18a88d2e0afc1dbbed3e8b1a01b454623e730d2b7b8e4d378ed0e55df016ecc36c8a4cc SHA512 07e812d46aef13e835dfc31e4eab17c656ad98e85843337d8f9361038c78bbcfceedaa64774784ffd84cb11e58c142e6c9bfab6d6c31eddf86b0e860f9a315a5
+DIST ppx_optional-0.17.0.tar.gz 10620 BLAKE2B a03d469bf38c0d6fc8ef1a395ae83f16c07b95135f12a6d19c9a88628833f3d38df44746c364f006f75b212c35f70a8b449bc6a16547e26d2627e0e59435fe23 SHA512 62ae21deabfb4f9bc967c1405057277e909a53de8ddcc2a12b0f170ad9abd2bda9c0fd208cf9d0d1ede6186ff8972519ef8b9bab26f10fac26bcc8ba1034d947
diff --git a/dev-ml/ppx_optional/metadata.xml b/dev-ml/ppx_optional/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_optional/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_optional/ppx_optional-0.16.0.ebuild b/dev-ml/ppx_optional/ppx_optional-0.16.0.ebuild
new file mode 100644
index 000000000000..9ec5848c09bd
--- /dev/null
+++ b/dev-ml/ppx_optional/ppx_optional-0.16.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Pattern matching on flat options"
+HOMEPAGE="https://github.com/janestreet/ppx_optional"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/base:${SLOT}
+ >=dev-ml/ppxlib-0.28.0:=
+ dev-ml/result:=
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/ppx_optional/ppx_optional-0.17.0-r1.ebuild b/dev-ml/ppx_optional/ppx_optional-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..2d88f4f8e036
--- /dev/null
+++ b/dev-ml/ppx_optional/ppx_optional-0.17.0-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Pattern matching on flat options"
+HOMEPAGE="https://github.com/janestreet/ppx_optional"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+ =dev-ml/ppxlib_jane-${JSM}:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_pipebang/Manifest b/dev-ml/ppx_pipebang/Manifest
new file mode 100644
index 000000000000..e644738af651
--- /dev/null
+++ b/dev-ml/ppx_pipebang/Manifest
@@ -0,0 +1,3 @@
+DIST ppx_pipebang-0.15.0.tar.gz 3759 BLAKE2B 6d2a45a4b803a777dcf055acccbea3e54a86458d01032efd01d204cf3426b496b9d91047216c11a424ef5e7ff92fc729d1ef8fb616f807c21f512be52013665a SHA512 778dae2cd6176f9ce18f20486e16f6f76e9137095759b29ddc10fee15d8a21f51fff94245c4a750ae68cd75edbd06b9cad6ff1b56aacb38ac9e6d7d71c0bf701
+DIST ppx_pipebang-0.16.0.tar.gz 3755 BLAKE2B 2aa33958dd9b6abdaed4d38c7d627fa3cd1b0328bc01fc3eb8761ef9d60f9ba26b8be17975712d91c177fcf8c20e17da69c49ff676b2946a783e3674e30597c1 SHA512 b333d189c2705b3c7175af5636bd63c38ed434b3828227c7db8d2cb0fe9bd4caa05975d5d28d8fb4d61656bd3d7a15e2db2b36a1672107c1557c5012c19cb445
+DIST ppx_pipebang-0.17.0.tar.gz 3844 BLAKE2B 339014da374a108675b4efbf1c81b9c30ad811b291061cfc601f34c89baa3042d6e47713b475dab00aeb24edef9c3d76c7243d2c121839dc94360942cbce96cb SHA512 b8ca1cbd407227e749938ffb4ed4b6f9c1a17012ac34a30cbb73d4fd3ac025d1687f9449e7060950c03500dfc9df5037d147d5c06818a30a97febaa460e315f9
diff --git a/dev-ml/ppx_pipebang/metadata.xml b/dev-ml/ppx_pipebang/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_pipebang/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_pipebang/ppx_pipebang-0.15.0-r1.ebuild b/dev-ml/ppx_pipebang/ppx_pipebang-0.15.0-r1.ebuild
new file mode 100644
index 000000000000..9720dcaf0bbe
--- /dev/null
+++ b/dev-ml/ppx_pipebang/ppx_pipebang-0.15.0-r1.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="A ppx rewriter that inlines reverse application operators |> and |!"
+HOMEPAGE="https://github.com/janestreet/ppx_pipebang"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-ml/ppxlib-0.23.0:=
+ >=dev-ml/ocaml-compiler-libs-0.11.0:=
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/ppx_pipebang/ppx_pipebang-0.16.0.ebuild b/dev-ml/ppx_pipebang/ppx_pipebang-0.16.0.ebuild
new file mode 100644
index 000000000000..4b9a75f33394
--- /dev/null
+++ b/dev-ml/ppx_pipebang/ppx_pipebang-0.16.0.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="A ppx rewriter that inlines reverse application operators |> and |!"
+HOMEPAGE="https://github.com/janestreet/ppx_pipebang"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ >=dev-ml/ppxlib-0.28.0:=
+ >=dev-ml/ocaml-compiler-libs-0.11.0:=
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/ppx_pipebang/ppx_pipebang-0.17.0.ebuild b/dev-ml/ppx_pipebang/ppx_pipebang-0.17.0.ebuild
new file mode 100644
index 000000000000..052be2bdd383
--- /dev/null
+++ b/dev-ml/ppx_pipebang/ppx_pipebang-0.17.0.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="A ppx rewriter that inlines reverse application operators |> and |!"
+HOMEPAGE="https://github.com/janestreet/ppx_pipebang"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_sexp_conv/Manifest b/dev-ml/ppx_sexp_conv/Manifest
new file mode 100644
index 000000000000..35636f60c5a0
--- /dev/null
+++ b/dev-ml/ppx_sexp_conv/Manifest
@@ -0,0 +1,3 @@
+DIST ppx_sexp_conv-0.16.0.tar.gz 66918 BLAKE2B 7f7f4bd9c3178d80b0b813204e8abbc2791a519951793ed99df62988b91fc90e3616565a2c1b629a80a05814b7cb06f491109e079b70aba9a1606552a2a8e19f SHA512 ceacd17683c8e739d2e5eaabb585c01615a11b18c1bef7df85b48820885d344cbae94c1351a6a2522e016a1bd41fc3997928d6b2b2169aeda72ea6626eb1f7a0
+DIST ppx_sexp_conv-0.17.0.tar.gz 68281 BLAKE2B e4ce4df4becd93b2f5ccd7e356042e59acbe8ce334e163fafb2f984725688a52162719a82caa2cfd47bf00262ac6067abdaa3d057e0abddb9b624e0a6ae1776d SHA512 1e4ac88a62988933473837362522d29ef0bb258b4ffde256fb322d53411e2455e9a5b7fb2ba92f5036ffd88a084867d45d1628e6cd9bf36468d6e1e6e4694afe
+DIST ppx_sexp_conv-0.17.1.tar.gz 68305 BLAKE2B a66d8487e7a19009fda6687a8a112906a79245f3f2a70f76c7e1fbde91f7337af7ac57f2ed2ff1001f788ab9782df89c87b337bcd88348756327abd4fb6dc149 SHA512 036582cbcd49aad0737bbbdf5f680192e55a9f3051c8dece439a6c6ea989b59077c88130d833b01a38d990e563f7dde9f5be7e1cd0ffaaf59bd913d6fbd63bb3
diff --git a/dev-ml/ppx_sexp_conv/metadata.xml b/dev-ml/ppx_sexp_conv/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_sexp_conv/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_sexp_conv/ppx_sexp_conv-0.16.0-r2.ebuild b/dev-ml/ppx_sexp_conv/ppx_sexp_conv-0.16.0-r2.ebuild
new file mode 100644
index 000000000000..c78ff0022c93
--- /dev/null
+++ b/dev-ml/ppx_sexp_conv/ppx_sexp_conv-0.16.0-r2.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Support Library for type-driven code generators"
+HOMEPAGE="https://github.com/janestreet/ppx_sexp_conv"
+SRC_URI="https://github.com/janestreet/ppx_sexp_conv/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+# Upper bound on ppxlib for bug #769536
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/base:${SLOT}[ocamlopt?]
+ dev-ml/findlib:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.28:=[ocamlopt?]
+ <dev-ml/ppxlib-0.36.0
+ dev-ml/ocaml-compiler-libs:=[ocamlopt?]
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/ppx_sexp_conv/ppx_sexp_conv-0.17.0-r2.ebuild b/dev-ml/ppx_sexp_conv/ppx_sexp_conv-0.17.0-r2.ebuild
new file mode 100644
index 000000000000..ca806df3d606
--- /dev/null
+++ b/dev-ml/ppx_sexp_conv/ppx_sexp_conv-0.17.0-r2.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Support Library for type-driven code generators"
+HOMEPAGE="https://github.com/janestreet/ppx_sexp_conv"
+SRC_URI="https://github.com/janestreet/ppx_sexp_conv/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+ <dev-ml/ppxlib-0.36.0
+ =dev-ml/ppxlib_jane-${JSM}:=[ocamlopt?]
+ =dev-ml/sexplib0-${JSM}:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_sexp_conv/ppx_sexp_conv-0.17.1.ebuild b/dev-ml/ppx_sexp_conv/ppx_sexp_conv-0.17.1.ebuild
new file mode 100644
index 000000000000..ef18d5d3d57e
--- /dev/null
+++ b/dev-ml/ppx_sexp_conv/ppx_sexp_conv-0.17.1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Support Library for type-driven code generators"
+HOMEPAGE="https://github.com/janestreet/ppx_sexp_conv"
+SRC_URI="https://github.com/janestreet/ppx_sexp_conv/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.36.0:=[ocamlopt?]
+ =dev-ml/ppxlib_jane-${JSM}:=[ocamlopt?]
+ =dev-ml/sexplib0-${JSM}:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_sexp_message/Manifest b/dev-ml/ppx_sexp_message/Manifest
new file mode 100644
index 000000000000..71eb3ed212a3
--- /dev/null
+++ b/dev-ml/ppx_sexp_message/Manifest
@@ -0,0 +1,2 @@
+DIST ppx_sexp_message-0.16.0.tar.gz 8435 BLAKE2B 00d0b3a9c8090630968f864b968ea891988416f390f29ffc2037ac7673598283500e4dbd0471039f3d4d61f57c3f177b764eb7715ac393ea4a14c1e27c308b97 SHA512 2442d9d2e46bcfce17e7d017865dcf52daa5fd62500981f3d97a37373799a5b9abd6c52b4e8f720cc2df419b2d2450258e0bd78fe8e12090805e1c8e37d62285
+DIST ppx_sexp_message-0.17.0.tar.gz 8720 BLAKE2B b2e256e9a7513003db7bfa9d3f3f9f75f87d635403eecd399932becc05f23533e504f9c81a9daf6ce2de5d48228c79226cdbe0da45fb36750e70caa0a842834b SHA512 50f5abd8223f1f7e2a9208b69dd79776ffb7aca6d9714dd9d5703ccc7f8b83e5a77b406f54f87ca15989a5baf7cd6253cfdb95e6c7b580e03d5bf41e709c6cfc
diff --git a/dev-ml/ppx_sexp_message/metadata.xml b/dev-ml/ppx_sexp_message/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_sexp_message/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_sexp_message/ppx_sexp_message-0.16.0.ebuild b/dev-ml/ppx_sexp_message/ppx_sexp_message-0.16.0.ebuild
new file mode 100644
index 000000000000..13d8a9e957e7
--- /dev/null
+++ b/dev-ml/ppx_sexp_message/ppx_sexp_message-0.16.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="A ppx rewriter for easy construction of s-expressions"
+HOMEPAGE="https://github.com/janestreet/ppx_sexp_message"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/ppx_here:${SLOT}
+ dev-ml/ppx_sexp_conv:${SLOT}
+ >=dev-ml/ppxlib-0.28.0:=
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/ppx_sexp_message/ppx_sexp_message-0.17.0-r1.ebuild b/dev-ml/ppx_sexp_message/ppx_sexp_message-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..555244266faf
--- /dev/null
+++ b/dev-ml/ppx_sexp_message/ppx_sexp_message-0.17.0-r1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="A ppx rewriter for easy construction of s-expressions"
+HOMEPAGE="https://github.com/janestreet/ppx_sexp_message"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_here-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_sexp_conv-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_sexp_value/Manifest b/dev-ml/ppx_sexp_value/Manifest
new file mode 100644
index 000000000000..ce4657549b35
--- /dev/null
+++ b/dev-ml/ppx_sexp_value/Manifest
@@ -0,0 +1,2 @@
+DIST ppx_sexp_value-0.16.0.tar.gz 8460 BLAKE2B b8d616e9c2d9a1f86a0727c4f05f630fee705b8fea5add83d71b94a5c63905c198c69dd5ac3676cbf8c6f8ebdbc2bfbae01ec1d0936eb13137b1107f3d1aed28 SHA512 f38c6045dc9d5136fcfaad00039fb7f0caf34ca1fb2031145fedb0b5d4c39b13c58c8d744ca77ebe291526b9f0b995d6f0d0f4cd18136b92e1125fb30e2ae2bd
+DIST ppx_sexp_value-0.17.0.tar.gz 8486 BLAKE2B b36d6c2af4cfc8eba8327e209d10e783fed0c852e161269826810c95626db675fbd1ae9f00934b5c15994f2d7241872c3cf18bc8b26aeaf4b54c4c410ec27188 SHA512 d90549f7d0cad885943e1fe8b54a38ca1f5e3f720814679648f346af59aa278066ef5dc4cde3f33dd27cf8242183f90945b889f07c84ecd92e2c7b8faa457429
diff --git a/dev-ml/ppx_sexp_value/metadata.xml b/dev-ml/ppx_sexp_value/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_sexp_value/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_sexp_value/ppx_sexp_value-0.16.0.ebuild b/dev-ml/ppx_sexp_value/ppx_sexp_value-0.16.0.ebuild
new file mode 100644
index 000000000000..f87fb86a0093
--- /dev/null
+++ b/dev-ml/ppx_sexp_value/ppx_sexp_value-0.16.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Standard library for ppx rewriters"
+HOMEPAGE="https://github.com/janestreet/ppx_sexp_value"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/ppx_here:${SLOT}
+ dev-ml/ppx_sexp_conv:${SLOT}
+ >=dev-ml/ppxlib-0.28.0:=
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/ppx_sexp_value/ppx_sexp_value-0.17.0-r1.ebuild b/dev-ml/ppx_sexp_value/ppx_sexp_value-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..815198bf2269
--- /dev/null
+++ b/dev-ml/ppx_sexp_value/ppx_sexp_value-0.17.0-r1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Standard library for ppx rewriters"
+HOMEPAGE="https://github.com/janestreet/ppx_sexp_value"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_here-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_sexp_conv-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_stable/Manifest b/dev-ml/ppx_stable/Manifest
new file mode 100644
index 000000000000..670d71725846
--- /dev/null
+++ b/dev-ml/ppx_stable/Manifest
@@ -0,0 +1,3 @@
+DIST ppx_stable-0.16.0.tar.gz 18298 BLAKE2B 3308ecc99f3c5a6c9b5a270f04effc62dfdb52116b91255eb0383e3244a2710124a211a81d52954ee5ac94251f84847d12787dd79b7c3d96a68d1bd4abf52458 SHA512 bbc40494718d99228e194f766be75c67a657cb50fe6090d05ba30606be40406c93323b64ae3d2400ab6a1563c3e9fa04c2ba82da7db47b7c1cfec103f75d19cb
+DIST ppx_stable-0.17.0.tar.gz 24850 BLAKE2B 7197c96be025f61cfec88b9157f03dc76b38099d18b81f884352ca5f4cbc8cac2bf42d3a37dcda974dbfc73aacbc83a68eb158c5d7dea6a637e603057d2dc728 SHA512 1e13b874e803f16e175ebd61928d1486586974067f54f40de196bc300df347a5ac83841c214c024d98196e0d5a1e443a9d9c52f14fc04571826099b292ba6113
+DIST ppx_stable-0.17.1.tar.gz 24861 BLAKE2B 5e5d5300e4e6be36e980af98e4692181e1d45f35dcbb17d7a679293766e33e58d084946f4e1722f716b1c6d5253d3ca461e762abeb16fde00b6fe2506dbda0de SHA512 aff081814ac95dc4ebcaa275ccd6fb4e6d7de5de4ef3fc6a633debeeae213136d46c526fb8dc33896542dcde0319957d04308f4a5b8012342fc6a9ccfb5dc072
diff --git a/dev-ml/ppx_stable/metadata.xml b/dev-ml/ppx_stable/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_stable/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_stable/ppx_stable-0.16.0.ebuild b/dev-ml/ppx_stable/ppx_stable-0.16.0.ebuild
new file mode 100644
index 000000000000..a780f7b8e8cf
--- /dev/null
+++ b/dev-ml/ppx_stable/ppx_stable-0.16.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Stable types conversions generator"
+HOMEPAGE="https://github.com/janestreet/ppx_stable"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/base:${SLOT}
+ >=dev-ml/ppxlib-0.28.0:=
+ >=dev-ml/ocaml-compiler-libs-0.11.0:=
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/ppx_stable/ppx_stable-0.17.0-r2.ebuild b/dev-ml/ppx_stable/ppx_stable-0.17.0-r2.ebuild
new file mode 100644
index 000000000000..75a4dd929706
--- /dev/null
+++ b/dev-ml/ppx_stable/ppx_stable-0.17.0-r2.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Stable types conversions generator"
+HOMEPAGE="https://github.com/janestreet/ppx_stable"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+ <dev-ml/ppxlib-0.36.0
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_stable/ppx_stable-0.17.1.ebuild b/dev-ml/ppx_stable/ppx_stable-0.17.1.ebuild
new file mode 100644
index 000000000000..d1dee17b2b60
--- /dev/null
+++ b/dev-ml/ppx_stable/ppx_stable-0.17.1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Stable types conversions generator"
+HOMEPAGE="https://github.com/janestreet/ppx_stable"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.36.0:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_stable_witness/Manifest b/dev-ml/ppx_stable_witness/Manifest
new file mode 100644
index 000000000000..1aa1b2f7bab6
--- /dev/null
+++ b/dev-ml/ppx_stable_witness/Manifest
@@ -0,0 +1,2 @@
+DIST ppx_stable_witness-0.16.0.tar.gz 7641 BLAKE2B 45bbdb187c1dd9dcf1a3d51fe932bc7e93d7b23f40203e065fd5ba6f4bc4d418c241bd1c9550c09c78638865a3f17b22dead0e22bd8c04037d99691f8dbf6a1b SHA512 386688f6b9bed1fa481030f881b124681c18a49c8a1933233a7cd90dff5ddb4f1739cfb2d1c5262b2e7c2c2e593c9f141af6565a5596547c1770e19e2422ea36
+DIST ppx_stable_witness-0.17.0.tar.gz 7625 BLAKE2B 6bce85ffbf42f85a8084da54bc5b78512bc834492dcf21a5379d8a89dcc80240de407a7e6e8d67e2661663c8c6bc68adc54ab5e8092e3984f2aec4b78a40490b SHA512 df004ae0bdab636da3b5743e19885e03f84a21058e86294fce3ea124a6588a3de549dd3237ab8362cb8a17387d7a0b9fb077973722664d6e83364f4487b89e95
diff --git a/dev-ml/ppx_stable_witness/metadata.xml b/dev-ml/ppx_stable_witness/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_stable_witness/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_stable_witness/ppx_stable_witness-0.16.0.ebuild b/dev-ml/ppx_stable_witness/ppx_stable_witness-0.16.0.ebuild
new file mode 100644
index 000000000000..dfa515c46acf
--- /dev/null
+++ b/dev-ml/ppx_stable_witness/ppx_stable_witness-0.16.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Ppx extension for deriving a witness that a type is intended to be stable"
+HOMEPAGE="https://github.com/janestreet/ppx_stable_witness"
+SRC_URI="https://github.com/janestreet/ppx_stable_witness/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/base:${SLOT}
+ >=dev-ml/ppxlib-0.28:=
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/ppx_stable_witness/ppx_stable_witness-0.17.0-r1.ebuild b/dev-ml/ppx_stable_witness/ppx_stable_witness-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..af14d6905a7d
--- /dev/null
+++ b/dev-ml/ppx_stable_witness/ppx_stable_witness-0.17.0-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Ppx extension for deriving a witness that a type is intended to be stable"
+HOMEPAGE="https://github.com/janestreet/ppx_stable_witness"
+SRC_URI="https://github.com/janestreet/ppx_stable_witness/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_string/Manifest b/dev-ml/ppx_string/Manifest
new file mode 100644
index 000000000000..0b81e0b7f643
--- /dev/null
+++ b/dev-ml/ppx_string/Manifest
@@ -0,0 +1,2 @@
+DIST ppx_string-0.16.0.tar.gz 6105 BLAKE2B a23f81846562accd1bed9df7bc491a8b9c94751f8432fc0909106d0dc0160ed848ce5181e67e34273b05a627ef3ada6770c98eafac8d1c790272eaa8d77d9ac5 SHA512 b1310551e1548fee5b99e64635139189139791f2ea2da93a4751b04c78a5519c5f3833c515d93a25e9d7aa23945414cbe690e5cd3f34630cdca4819c3d8ec1bc
+DIST ppx_string-0.17.0.tar.gz 7812 BLAKE2B 9cce35c53a9b51b20d5ff54b693956d3eaa1c18cae501ccd115de01fba17ff09afa3dff8e571c8bd5148bf2f4cb6c621c575eca09b4a2f879edd49a6b93df952 SHA512 29b6412584af1ca33fb601d4ce9bdaee1d766725e76064acc9334468b07a754b6716700f3abb27d5d3e9de361667e6b6b76cfbd3c94fe74f0b32e22f93e8b263
diff --git a/dev-ml/ppx_string/metadata.xml b/dev-ml/ppx_string/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_string/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_string/ppx_string-0.16.0.ebuild b/dev-ml/ppx_string/ppx_string-0.16.0.ebuild
new file mode 100644
index 000000000000..7c8c57626a04
--- /dev/null
+++ b/dev-ml/ppx_string/ppx_string-0.16.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Ppx extension for string interpolation"
+HOMEPAGE="https://github.com/janestreet/ppx_string"
+SRC_URI="https://github.com/janestreet/ppx_string/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/ppx_base:${SLOT}
+ dev-ml/stdio:${SLOT}
+ >=dev-ml/ppxlib-0.28.0:=
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/ppx_string/ppx_string-0.17.0-r1.ebuild b/dev-ml/ppx_string/ppx_string-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..616f365fa4d5
--- /dev/null
+++ b/dev-ml/ppx_string/ppx_string-0.17.0-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Ppx extension for string interpolation"
+HOMEPAGE="https://github.com/janestreet/ppx_string"
+SRC_URI="https://github.com/janestreet/ppx_string/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_base-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_string_conv/Manifest b/dev-ml/ppx_string_conv/Manifest
new file mode 100644
index 000000000000..de2bb87a944a
--- /dev/null
+++ b/dev-ml/ppx_string_conv/Manifest
@@ -0,0 +1 @@
+DIST ppx_string_conv-0.17.0.tar.gz 10083 BLAKE2B 5db1a9edfb3c7dfc3c7d58f61d98f946a9071b25f2b506e2cc5963bf4af60633d9ef22bdc2cf5d639195fdaeb56d4882a1d7ed9d041afcd8f96f29e3924117ee SHA512 c77259e2988824ad48d9ba010b3dc392bf8acd7b876329a8201b723428bbb86b9147ca007f7c72c9ab52aec239d5d8e0d62cd4f39bcd88edfa417f0cd8b512df
diff --git a/dev-ml/ppx_string_conv/metadata.xml b/dev-ml/ppx_string_conv/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_string_conv/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_string_conv/ppx_string_conv-0.17.0-r1.ebuild b/dev-ml/ppx_string_conv/ppx_string_conv-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..f8c1b02b3842
--- /dev/null
+++ b/dev-ml/ppx_string_conv/ppx_string_conv-0.17.0-r1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Ppx extension for generating of_string & to_string"
+HOMEPAGE="https://github.com/janestreet/ppx_string_conv"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/capitalization-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_let-${JSM}:=[ocamlopt?]
+ =dev-ml/ppx_string-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_tools/Manifest b/dev-ml/ppx_tools/Manifest
new file mode 100644
index 000000000000..ede7834465c8
--- /dev/null
+++ b/dev-ml/ppx_tools/Manifest
@@ -0,0 +1 @@
+DIST ppx_tools-6.6.tar.gz 19265 BLAKE2B f4f89eeb314ad76c0337ed9c782ff2bf1473172a30ced4616ee35f34f8b25dd16aa0331fab48afd891a54eaf58599ed4c6730d4dd3ea7e462d967d8279b487c8 SHA512 7bbb9a8d9aaa68c54048fde383f7ba2499ac53bbc2d7e3ba907de342ea48ffded69acc2e4ca4c38c2b2b1004b5e004230988a36ad34a4b5361c2a3ad1f858a53
diff --git a/dev-ml/ppx_tools/metadata.xml b/dev-ml/ppx_tools/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_tools/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_tools/ppx_tools-6.6-r1.ebuild b/dev-ml/ppx_tools/ppx_tools-6.6-r1.ebuild
new file mode 100644
index 000000000000..a58223e94180
--- /dev/null
+++ b/dev-ml/ppx_tools/ppx_tools-6.6-r1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+MY_PV=$(ver_rs 2 '+')
+DESCRIPTION="Tools for authors of ppx rewriters"
+HOMEPAGE="https://github.com/alainfrisch/ppx_tools"
+SRC_URI="https://github.com/alainfrisch/ppx_tools/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-$(ver_rs 2 '-')"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="amd64 ~arm arm64 ~ppc ~ppc64 x86"
+IUSE="+ocamlopt"
+
+RDEPEND="<dev-lang/ocaml-5"
+BDEPEND="
+ dev-ml/cppo
+"
diff --git a/dev-ml/ppx_tydi/Manifest b/dev-ml/ppx_tydi/Manifest
new file mode 100644
index 000000000000..58c851b0228f
--- /dev/null
+++ b/dev-ml/ppx_tydi/Manifest
@@ -0,0 +1,3 @@
+DIST ppx_tydi-0.16.0.tar.gz 4583 BLAKE2B b0390da844dacdbe0492dcf9141ae4356ed8b08af328b51a8f6bd7190b58dd4590606f2375338ce5f799ed140b4652e400c5e68ea2dee8a939a464fe9d681513 SHA512 83e72699901af6dfb786f1f0a381f4a2eec6c5d51c98ec2ab76f0f107d87da7c406278a9e71c09fc7a43b8cd19cd97f87f3ba7adea2efe55fb882cd65b81d60b
+DIST ppx_tydi-0.17.0.tar.gz 4620 BLAKE2B dd2a9070723373e0100a8124f627e739557e178251a8531539c30d40db4afd9b2f40e00b92733362614866b3c9ca8d7f5424d7da3a294c9f2a83eda206ceadb6 SHA512 f853b367116c45a26b5b87c2f42b487a8786cdbbf6861da902a0305e4eb386b8b0a838f0b1d9058bee8f2a94e83c622424734646e78406f38cfd5d3f26da4569
+DIST ppx_tydi-0.17.1.tar.gz 4628 BLAKE2B 8f7cb408b1dc03be136a3a02f4974bdf5083cd7023cce3171828e0f091cd982a6e778fba8c3c8d58980d28d1f2df8c3e3a7a146dd568551adf318d06f7b87759 SHA512 f4af5b32a537cb72ffc6a331f73e90eb650e6116ca130d785eda78fb9de5764a1d990ff6929fd6fb695bfeb35d2685f4b35c344125208733b08953ca13410cc5
diff --git a/dev-ml/ppx_tydi/metadata.xml b/dev-ml/ppx_tydi/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_tydi/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_tydi/ppx_tydi-0.16.0.ebuild b/dev-ml/ppx_tydi/ppx_tydi-0.16.0.ebuild
new file mode 100644
index 000000000000..c22db3ebd6b7
--- /dev/null
+++ b/dev-ml/ppx_tydi/ppx_tydi-0.16.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Let expressions, inferring pattern type from expression"
+HOMEPAGE="https://github.com/janestreet/ppx_tydi"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/base:${SLOT}
+ >=dev-ml/ppxlib-0.28:=
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/ppx_tydi/ppx_tydi-0.17.0-r2.ebuild b/dev-ml/ppx_tydi/ppx_tydi-0.17.0-r2.ebuild
new file mode 100644
index 000000000000..489a6712f1ce
--- /dev/null
+++ b/dev-ml/ppx_tydi/ppx_tydi-0.17.0-r2.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Let expressions, inferring pattern type from expression"
+HOMEPAGE="https://github.com/janestreet/ppx_tydi"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+ <dev-ml/ppxlib-0.36.0
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_tydi/ppx_tydi-0.17.1.ebuild b/dev-ml/ppx_tydi/ppx_tydi-0.17.1.ebuild
new file mode 100644
index 000000000000..9f4a0631802c
--- /dev/null
+++ b/dev-ml/ppx_tydi/ppx_tydi-0.17.1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Let expressions, inferring pattern type from expression"
+HOMEPAGE="https://github.com/janestreet/ppx_tydi"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.36.0:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_typerep_conv/Manifest b/dev-ml/ppx_typerep_conv/Manifest
new file mode 100644
index 000000000000..1850da96ff5e
--- /dev/null
+++ b/dev-ml/ppx_typerep_conv/Manifest
@@ -0,0 +1,3 @@
+DIST ppx_typerep_conv-0.16.0.tar.gz 9421 BLAKE2B dbef20e205e550ab4ef16cf0e53bb47567b922297818a944a3fb6cd07eee90c6184d9cd33d7fc2e67b47fd371c95410f7022a8e140c9946c1c7502bb2a433d0c SHA512 842f3caeb22b7d1feb1de9f599ffe2474365704e7ce9c05366b9714bcbf165791eda8b16d420a3a64ccc8ea44a9b2178ffddaa8e3ad005c6536c3559f2da295a
+DIST ppx_typerep_conv-0.17.0.tar.gz 9462 BLAKE2B 61f7c0d203a0838874086023cfa94223e0388b0baff5c51d4074b88c4687ce6c55e663f309e8aec7ac49cec9dfd10407f3e8cc2c0c0dffe074ebcd8ac7309222 SHA512 9051905d3fd042f6f4bec5653c249f4a164b636b8f53db67d9a25bcf7b230befd1a0477b16c50f5d9c766bc52f3317a28a929fe8fc725514377925df7ce8da88
+DIST ppx_typerep_conv-0.17.1.tar.gz 9459 BLAKE2B 8b843fe1b4453d146c91e17f463c87491be9dc7b3db44eb55c52eecc5d609f554dc75ab0288dea31a996f6842a9e56c9d6946ae6f859220849d142ac1b961421 SHA512 8184722762d1e848b16f5409ecf478d0e60fadac590fba1d9355bd7efa09c25e4b87cdc0d117a77386b8da6fcf2bf13c7cf6150f3090686e354a2354ad52e1c5
diff --git a/dev-ml/ppx_typerep_conv/metadata.xml b/dev-ml/ppx_typerep_conv/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_typerep_conv/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_typerep_conv/ppx_typerep_conv-0.16.0.ebuild b/dev-ml/ppx_typerep_conv/ppx_typerep_conv-0.16.0.ebuild
new file mode 100644
index 000000000000..5c03edbb4ab6
--- /dev/null
+++ b/dev-ml/ppx_typerep_conv/ppx_typerep_conv-0.16.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Generation of runtime types from type declarations"
+HOMEPAGE="https://github.com/janestreet/ppx_typerep_conv"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/typerep:${SLOT}
+ >=dev-ml/ppxlib-0.28.0:=
+ >=dev-ml/ocaml-compiler-libs-0.11.0:=
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/ppx_typerep_conv/ppx_typerep_conv-0.17.0-r2.ebuild b/dev-ml/ppx_typerep_conv/ppx_typerep_conv-0.17.0-r2.ebuild
new file mode 100644
index 000000000000..9139b47fdc29
--- /dev/null
+++ b/dev-ml/ppx_typerep_conv/ppx_typerep_conv-0.17.0-r2.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Generation of runtime types from type declarations"
+HOMEPAGE="https://github.com/janestreet/ppx_typerep_conv"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/typerep-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+ <dev-ml/ppxlib-0.36.0
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_typerep_conv/ppx_typerep_conv-0.17.1.ebuild b/dev-ml/ppx_typerep_conv/ppx_typerep_conv-0.17.1.ebuild
new file mode 100644
index 000000000000..d426d3d4e1b6
--- /dev/null
+++ b/dev-ml/ppx_typerep_conv/ppx_typerep_conv-0.17.1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Generation of runtime types from type declarations"
+HOMEPAGE="https://github.com/janestreet/ppx_typerep_conv"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)*
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}:=[ocamlopt?]
+ =dev-ml/typerep-${JSM}:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.36.0:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_variants_conv/Manifest b/dev-ml/ppx_variants_conv/Manifest
new file mode 100644
index 000000000000..56e06cc4a70f
--- /dev/null
+++ b/dev-ml/ppx_variants_conv/Manifest
@@ -0,0 +1,3 @@
+DIST ppx_variants_conv-0.16.0.tar.gz 12331 BLAKE2B d8b454b1d489dede40ea0d43f6d9f8ee30784b975ac388f0c05c3d4778690a102ee8105d888edec0fe899906c8b7e3d083eb6ff0b79d5ee85b5af57ecada0495 SHA512 56a4e1da5cc855549e59adcbe25dfc175c7c2bd989f0b984182e2c7d35d5fa19829b38cbbd64104f22dfe06b4460f20ad66e922a553061cabde3d73473cdf33a
+DIST ppx_variants_conv-0.17.0.tar.gz 12377 BLAKE2B 15fb5b071aa785682433100cd225a840f708411d4cbb63ffc4fa6541b9f6cf5804b03aa9e9c6c106a0cfe2e69da7d805c316d9ea88fdd1a2336d50dc48cca70c SHA512 5b0e414b10e1911048090ddf208e9eaecb1fadb0b2665c0cd69883d260f2fb4f3d0ccebd051c4f2caadf4c4c18dcb46d4880560acbe297c4fff65c582c756d3c
+DIST ppx_variants_conv-0.17.1.tar.gz 12379 BLAKE2B c2e2f68af20ef3dd1d33fa5bc86b82e4f47991124307410285f0951dda317efad5d028794c21975e87911d63427a9970ae10992e505fa46390e16e2185736b00 SHA512 23c9866b2f07e8e55fb7c19bbddbd1c424410fcb590c2b5039b0d194274fd5cfe6a58da55db83cfaddc698c00e42cad95756f49ef0f3d3163fd5f362ebd5e25a
diff --git a/dev-ml/ppx_variants_conv/metadata.xml b/dev-ml/ppx_variants_conv/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppx_variants_conv/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_variants_conv/ppx_variants_conv-0.16.0-r1.ebuild b/dev-ml/ppx_variants_conv/ppx_variants_conv-0.16.0-r1.ebuild
new file mode 100644
index 000000000000..c578fd188d5d
--- /dev/null
+++ b/dev-ml/ppx_variants_conv/ppx_variants_conv-0.16.0-r1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Generation of accessor and iteration functions for ocaml variant types"
+HOMEPAGE="https://github.com/janestreet/ppx_variants_conv"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/variantslib:${SLOT}
+ >=dev-ml/ppxlib-0.28.0:=
+ <dev-ml/ppxlib-0.36.0
+ >=dev-ml/ocaml-compiler-libs-0.11.0:=
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/ppx_variants_conv/ppx_variants_conv-0.17.0-r2.ebuild b/dev-ml/ppx_variants_conv/ppx_variants_conv-0.17.0-r2.ebuild
new file mode 100644
index 000000000000..8891eb0a4903
--- /dev/null
+++ b/dev-ml/ppx_variants_conv/ppx_variants_conv-0.17.0-r2.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Generation of accessor and iteration functions for ocaml variant types"
+HOMEPAGE="https://github.com/janestreet/ppx_variants_conv"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}*:=[ocamlopt?]
+ =dev-ml/variantslib-${JSM}*:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+ <dev-ml/ppxlib-0.36.0
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_variants_conv/ppx_variants_conv-0.17.1.ebuild b/dev-ml/ppx_variants_conv/ppx_variants_conv-0.17.1.ebuild
new file mode 100644
index 000000000000..4c72ffff63e4
--- /dev/null
+++ b/dev-ml/ppx_variants_conv/ppx_variants_conv-0.17.1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Generation of accessor and iteration functions for ocaml variant types"
+HOMEPAGE="https://github.com/janestreet/ppx_variants_conv"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}*:=[ocamlopt?]
+ =dev-ml/variantslib-${JSM}*:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.36.0:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND=">=dev-ml/dune-3.11"
diff --git a/dev-ml/ppx_yojson_conv_lib/Manifest b/dev-ml/ppx_yojson_conv_lib/Manifest
new file mode 100644
index 000000000000..f3b267784958
--- /dev/null
+++ b/dev-ml/ppx_yojson_conv_lib/Manifest
@@ -0,0 +1 @@
+DIST ppx_yojson_conv_lib-0.17.0.gh.tar.gz 7370 BLAKE2B a9acbbee702eb670e6e4258bb91144337b4da7ad336e8c3b8b2b9995a8de26ebc8376aea356fed6c3c1111307c27161c87aed116669f282f4f91501493652d79 SHA512 a14fb7fc41ab9a27bf74582617d26b1d3e3e959a05b1f3848180d58480da33390f16d2da276a1adfa2865913f21866d35bfa747330b288b7d37780d43afed954
diff --git a/dev-ml/ppx_yojson_conv_lib/metadata.xml b/dev-ml/ppx_yojson_conv_lib/metadata.xml
new file mode 100644
index 000000000000..8e9216a5fce9
--- /dev/null
+++ b/dev-ml/ppx_yojson_conv_lib/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/janestreet/ppx_yojson_conv_lib/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppx_yojson_conv_lib/ppx_yojson_conv_lib-0.17.0.ebuild b/dev-ml/ppx_yojson_conv_lib/ppx_yojson_conv_lib-0.17.0.ebuild
new file mode 100644
index 000000000000..5f6d51dced29
--- /dev/null
+++ b/dev-ml/ppx_yojson_conv_lib/ppx_yojson_conv_lib-0.17.0.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Runtime lib for ppx_yojson_conv"
+HOMEPAGE="https://github.com/janestreet/ppx_yojson_conv_lib/"
+
+if [[ "${PV}" == *9999* ]] ; then
+ inherit git-r3
+
+ EGIT_REPO_URI="https://github.com/janestreet/${PN}"
+else
+ SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz"
+
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-5.1.0
+ >=dev-ml/yojson-1.7.0:=
+"
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ >=dev-ml/dune-3.11.0
+"
diff --git a/dev-ml/ppxlib/Manifest b/dev-ml/ppxlib/Manifest
new file mode 100644
index 000000000000..1b23489abff5
--- /dev/null
+++ b/dev-ml/ppxlib/Manifest
@@ -0,0 +1,6 @@
+DIST ppxlib-0.22.2.tar.gz 202895 BLAKE2B 41d2c2e698846e5dfeb4158966b65dd29b253645b0286d0eab5a9dfb0e684b8b43f17a32b23023198d2c4e50e836705d2c965ea74ef337c5b0cf6aecd6fa4167 SHA512 3a83693551f11965b219a9caa4eaffbf358ea1311e05a38bfd531b8ad225d6571d86db7282e1d5bdc09775f2ba47791c03351402720cf5c2adefc52926d498e4
+DIST ppxlib-0.24.0.tar.gz 390297 BLAKE2B 7d8972b766cc8104a4d43aebc79e927e51cba114ad678837bfa1b8f009e2437df948c6cd3461db58ef247145e629d3bb11dff58dc5feadefce8152c77b056dfa SHA512 2f6a94c90fd17cea00f3294fde5742637d4758b9f43a021d667f2b09be326954efe22bb188ccf6a7205338ffc75fe096cbe2a075b125e3ced9f829a06ad2f496
+DIST ppxlib-0.30.0.tar.gz 573753 BLAKE2B f16ba3b01288a535ebf7842d8b9379061cc86cb1bad7841540855508d7d9c10c27e63456d68a16a2408a6eee5cffe82c3c0202ad7894b9fabad8194136762e30 SHA512 a7310c5c0fe76c72984bc6a27648bf12ac83222c029b91a7abf8be13f1950f84de4b24e28f2bb50a6a65c16c9a6bb8c4d3d0596c4b5f7f5bedba87f8ca55a810
+DIST ppxlib-0.33.0.tar.gz 638136 BLAKE2B a4b8b82912d6ea83104be05bc8784b4666c3749e906b4c52406f90924afafd2358bfbf2c6d715c02b6c55a539264c8f9655c1c44b7dfd239f63e6012bfa497cb SHA512 8437ed1e7616deb371b50a4ca11cb3d50a294a722b64d7732808321d312aa212d9433bedc4a66ea3a4ebbfeed1ab6f739470b99a01991ac56279cea151b2ded8
+DIST ppxlib-0.36.2.tar.gz 606501 BLAKE2B 38bea599c038103a966824582248b26b31b4c24347dd76ece3819cd4cc23f49218e8b47aaaf4783d9fa8d74437b03c9b320e9d8a13c712c0d13cd75f7270b1a2 SHA512 69556f6101ffc0699ab844092b438d1bcc1427f46b860454bb59f92010e920eb8d454b8aab970fd3fc1ff6a5487b9538b3969fc6f2377f2913fd0461181aaa4a
+DIST ppxlib-0.37.0.gh.tar.gz 637682 BLAKE2B c1d1f3bed43e04377d094c758c751a887b280fdd3c7139392b0855672714f0e76de6fff566e8cc98ec5972b4228c7bfb46af580dec182dbe202b7b5bd55e420b SHA512 e19728f3eaa1db8f85c64301f9c41e71a276c52e6347e87bdec71ae1d9ae5b564ca64e400c27feeaffb81c12e71d4e1b002c73a5087513e5120009f5651b85e6
diff --git a/dev-ml/ppxlib/metadata.xml b/dev-ml/ppxlib/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppxlib/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppxlib/ppxlib-0.22.2-r4.ebuild b/dev-ml/ppxlib/ppxlib-0.22.2-r4.ebuild
new file mode 100644
index 000000000000..b303e11a6738
--- /dev/null
+++ b/dev-ml/ppxlib/ppxlib-0.22.2-r4.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+# Note that new "major" versions may change which OCaml version they support
+# See:
+# https://github.com/ocaml-ppx/ppxlib/issues/243
+# https://github.com/ocaml-ppx/ppxlib/issues/232
+
+DESCRIPTION="Base library and tools for ppx rewriters"
+HOMEPAGE="https://github.com/ocaml-ppx/ppxlib"
+SRC_URI="https://github.com/ocaml-ppx/ppxlib/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-ml/ocaml-compiler-libs-0.11.0:=[ocamlopt?]
+ >=dev-ml/ocaml-migrate-parsetree-2.2.0:=[ocamlopt?]
+ dev-ml/sexplib0:=[ocamlopt?]
+ dev-ml/stdlib-shims:=[ocamlopt?]
+ >=dev-ml/ppx_derivers-1.2.1:=[ocamlopt?]
+ <dev-lang/ocaml-5
+"
+DEPEND="${RDEPEND}
+ test? (
+ dev-ml/findlib:=[ocamlopt?]
+ >=dev-ml/base-0.11.0:=[ocamlopt?]
+ dev-ml/cinaps:=
+ dev-ml/re:=
+ >=dev-ml/stdio-0.11.0:=[ocamlopt?]
+ )
+"
+BDEPEND=">=dev-ml/dune-2.8"
+
+src_install() {
+ dune_src_install
+
+ # Clashes with dev-libs/nss[utils], accidentally installed upstream
+ # https://github.com/ocaml-ppx/ppxlib/issues/224
+ rm "${ED}"/usr/bin/pp || die
+}
diff --git a/dev-ml/ppxlib/ppxlib-0.24.0-r2.ebuild b/dev-ml/ppxlib/ppxlib-0.24.0-r2.ebuild
new file mode 100644
index 000000000000..9c9eb99f2700
--- /dev/null
+++ b/dev-ml/ppxlib/ppxlib-0.24.0-r2.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+# Note that new "major" versions may change which OCaml version they support
+# See:
+# https://github.com/ocaml-ppx/ppxlib/issues/243
+# https://github.com/ocaml-ppx/ppxlib/issues/232
+
+DESCRIPTION="Base library and tools for ppx rewriters"
+HOMEPAGE="https://github.com/ocaml-ppx/ppxlib"
+SRC_URI="https://github.com/ocaml-ppx/ppxlib/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-ml/ocaml-compiler-libs-0.11.0:=[ocamlopt?]
+ >=dev-ml/ocaml-migrate-parsetree-2.2.0:=[ocamlopt?]
+ dev-ml/sexplib0:=[ocamlopt?]
+ dev-ml/stdlib-shims:=[ocamlopt?]
+ >=dev-ml/ppx_derivers-1.2.1:=[ocamlopt?]
+ <dev-lang/ocaml-5
+"
+DEPEND="${RDEPEND}
+ test? (
+ dev-ml/findlib:=[ocamlopt?]
+ >=dev-ml/base-0.11.0:=[ocamlopt?]
+ dev-ml/cinaps:=
+ dev-ml/re:=
+ >=dev-ml/stdio-0.11.0:=[ocamlopt?]
+ )
+"
+BDEPEND=">=dev-ml/dune-2.8"
diff --git a/dev-ml/ppxlib/ppxlib-0.30.0-r2.ebuild b/dev-ml/ppxlib/ppxlib-0.30.0-r2.ebuild
new file mode 100644
index 000000000000..332c7ff99c67
--- /dev/null
+++ b/dev-ml/ppxlib/ppxlib-0.30.0-r2.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+# Note that new "major" versions may change which OCaml version they support
+# See:
+# https://github.com/ocaml-ppx/ppxlib/issues/243
+# https://github.com/ocaml-ppx/ppxlib/issues/232
+
+DESCRIPTION="Base library and tools for ppx rewriters"
+HOMEPAGE="https://github.com/ocaml-ppx/ppxlib"
+SRC_URI="https://github.com/ocaml-ppx/ppxlib/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-ml/ocaml-compiler-libs-0.11.0:=[ocamlopt?]
+ >=dev-ml/ocaml-migrate-parsetree-2.2.0:=[ocamlopt?]
+ dev-ml/sexplib0:=[ocamlopt?]
+ dev-ml/stdlib-shims:=[ocamlopt?]
+ >=dev-ml/ppx_derivers-1.2.1:=[ocamlopt?]
+ <dev-lang/ocaml-5
+"
+DEPEND="${RDEPEND}
+ test? (
+ dev-ml/findlib:=[ocamlopt?]
+ >=dev-ml/base-0.11.0:=[ocamlopt?]
+ dev-ml/cinaps:=
+ dev-ml/re:=
+ >=dev-ml/stdio-0.11.0:=[ocamlopt?]
+ )
+"
+BDEPEND=">=dev-ml/dune-2.8"
diff --git a/dev-ml/ppxlib/ppxlib-0.33.0-r2.ebuild b/dev-ml/ppxlib/ppxlib-0.33.0-r2.ebuild
new file mode 100644
index 000000000000..7e8791288859
--- /dev/null
+++ b/dev-ml/ppxlib/ppxlib-0.33.0-r2.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+# Note that new "major" versions may change which OCaml version they support
+# See:
+# https://github.com/ocaml-ppx/ppxlib/issues/243
+# https://github.com/ocaml-ppx/ppxlib/issues/232
+
+DESCRIPTION="Base library and tools for ppx rewriters"
+HOMEPAGE="https://github.com/ocaml-ppx/ppxlib"
+SRC_URI="https://github.com/ocaml-ppx/ppxlib/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt test"
+RESTRICT="test"
+
+# Jane Street Minor
+JSM=0.17
+
+# It also works with ocaml >= 4 but tests are to be fixed
+RDEPEND="
+ <dev-lang/ocaml-5.3:=
+ >=dev-ml/ocaml-compiler-libs-0.17:=[ocamlopt?]
+ dev-ml/ppx_derivers:=[ocamlopt?]
+ =dev-ml/sexplib0-${JSM}*:=[ocamlopt?]
+ dev-ml/stdlib-shims:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ >=dev-ml/dune-3.11
+ test? (
+ =dev-ml/base-${JSM}*:=[ocamlopt?]
+ dev-ml/cinaps
+ >=dev-ml/findlib-1.9.6[ocamlopt?]
+ dev-ml/re
+ )
+"
diff --git a/dev-ml/ppxlib/ppxlib-0.36.2-r1.ebuild b/dev-ml/ppxlib/ppxlib-0.36.2-r1.ebuild
new file mode 100644
index 000000000000..e8c28617bd40
--- /dev/null
+++ b/dev-ml/ppxlib/ppxlib-0.36.2-r1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+# Note that new "major" versions may change which OCaml version they support
+# See:
+# https://github.com/ocaml-ppx/ppxlib/issues/243
+# https://github.com/ocaml-ppx/ppxlib/issues/232
+
+DESCRIPTION="Base library and tools for ppx rewriters"
+HOMEPAGE="https://github.com/ocaml-ppx/ppxlib"
+SRC_URI="https://github.com/ocaml-ppx/ppxlib/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="test" # Test works only with ocaml >= 5
+
+RDEPEND="
+ <dev-lang/ocaml-5.4
+ dev-ml/ocaml-compiler-libs:=[ocamlopt?]
+ dev-ml/ppx_derivers:=[ocamlopt?]
+ dev-ml/sexplib0:=[ocamlopt?]
+ dev-ml/stdlib-shims:=[ocamlopt?]
+ dev-ml/cmdliner:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ >=dev-ml/dune-3.8
+"
diff --git a/dev-ml/ppxlib/ppxlib-0.37.0-r1.ebuild b/dev-ml/ppxlib/ppxlib-0.37.0-r1.ebuild
new file mode 100644
index 000000000000..c9922273c92b
--- /dev/null
+++ b/dev-ml/ppxlib/ppxlib-0.37.0-r1.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+# Note that new "major" versions may change which OCaml version they support
+# See:
+# https://github.com/ocaml-ppx/ppxlib/issues/243
+# https://github.com/ocaml-ppx/ppxlib/issues/232
+
+DESCRIPTION="Base library and tools for ppx rewriters"
+HOMEPAGE="https://github.com/ocaml-ppx/ppxlib"
+
+if [[ "${PV}" == *9999* ]] ; then
+ inherit git-r3
+
+ EGIT_REPO_URI="https://github.com/ocaml-ppx"
+else
+ SRC_URI="https://github.com/ocaml-ppx/ppxlib/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz"
+
+ KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+fi
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+IUSE="+ocamlopt test"
+RESTRICT="test"
+
+RDEPEND="
+ dev-ml/cmdliner:=[ocamlopt?]
+ dev-ml/ocaml-compiler-libs:=[ocamlopt?]
+ dev-ml/ppx_derivers:=[ocamlopt?]
+ dev-ml/sexplib0:=[ocamlopt?]
+ dev-ml/stdlib-shims:=[ocamlopt?]
+ dev-ml/yojson:=[ocamlopt?]
+"
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ >=dev-ml/dune-3.8
+"
diff --git a/dev-ml/ppxlib_jane/Manifest b/dev-ml/ppxlib_jane/Manifest
new file mode 100644
index 000000000000..8bc2383c7ce0
--- /dev/null
+++ b/dev-ml/ppxlib_jane/Manifest
@@ -0,0 +1,2 @@
+DIST ppxlib_jane-0.17.2.tar.gz 46492 BLAKE2B 6bad78b03c1769d21f62acbf1c88e1a1e41db11bb942b8286d0ea195f3b6272f64203572d151b7a6b13d916a0a79ffa7a51bd2bec3fca31f6c3dad9ee827a628 SHA512 342e034d44d14958869e643befb0e749d4de3ca0040891ab51592e2583bc5bb827bdaa5bd06966ac536151d160997aef79baa090247d1649a6b5849a359744d8
+DIST ppxlib_jane-0.17.4.tar.gz 42650 BLAKE2B 67da586b173350032d322aef8b1823b22a98a89cc8917c5e6d577af46b57cd869b5f2d4d9354762b73c374a190706555507e82a2ff465aa05cd8cc0da028cf40 SHA512 e2931de633d9dcce2ca121e1cf117e159af4ccc52a7e420c328021da0145b6b90194e4545f97afe9cd032c04c6bc2563faa2d852ad45b041b014c688153799d6
diff --git a/dev-ml/ppxlib_jane/metadata.xml b/dev-ml/ppxlib_jane/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/ppxlib_jane/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ppxlib_jane/ppxlib_jane-0.17.2-r2.ebuild b/dev-ml/ppxlib_jane/ppxlib_jane-0.17.2-r2.ebuild
new file mode 100644
index 000000000000..1882f418e512
--- /dev/null
+++ b/dev-ml/ppxlib_jane/ppxlib_jane-0.17.2-r2.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2024-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Utilities for working with Jane Street AST constructs"
+HOMEPAGE="https://github.com/janestreet/ppxlib_jane"
+SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-5.3
+ dev-ml/stdlib-shims:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.32.1:=[ocamlopt?]
+ <dev-ml/ppxlib-0.36.0
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/ppxlib_jane/ppxlib_jane-0.17.4-r1.ebuild b/dev-ml/ppxlib_jane/ppxlib_jane-0.17.4-r1.ebuild
new file mode 100644
index 000000000000..e3600ccbef0f
--- /dev/null
+++ b/dev-ml/ppxlib_jane/ppxlib_jane-0.17.4-r1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2024-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Utilities for working with Jane Street AST constructs"
+HOMEPAGE="https://github.com/janestreet/ppxlib_jane"
+SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-5.3
+ dev-ml/stdlib-shims:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.36.0:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/protocol_version_header/Manifest b/dev-ml/protocol_version_header/Manifest
new file mode 100644
index 000000000000..57be568cf335
--- /dev/null
+++ b/dev-ml/protocol_version_header/Manifest
@@ -0,0 +1,2 @@
+DIST protocol_version_header-0.16.0.tar.gz 9189 BLAKE2B d61ebb49e15d47e76fc01911a6c9e5fcacb05bbee39cc5e40557c8882226edb8d2b78eed0c23a14e9241961511412f44f5522d146851ee0e3ace85b9f1b20838 SHA512 ac11dd81f4afb47ad670919e2b3ea49a7e05d193e45369f145711b2266fc54c8eea180cba285effecdc2a59e1cff65c59acd182fa3d88191e9813855dea370c7
+DIST protocol_version_header-0.17.0.tar.gz 9374 BLAKE2B cff78b7fa842b2642a6b3f997cab8072868c51898a920792ba644dfdbadb28933b663d71ed7c6ddfc586b65b0cd9c1b90f554c82a2742435d39ed025e286f1c3 SHA512 593fe348fa9aad953d0adc208fa77e7384fb58ea9e69d4dd7d8fba6c51001e77f5d22a2dc6c4501fcea46d290520ad2c6d301d8c9d8232cf4281b767e4de8de7
diff --git a/dev-ml/protocol_version_header/metadata.xml b/dev-ml/protocol_version_header/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/protocol_version_header/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/protocol_version_header/protocol_version_header-0.16.0.ebuild b/dev-ml/protocol_version_header/protocol_version_header-0.16.0.ebuild
new file mode 100644
index 000000000000..4e0e370c2c4a
--- /dev/null
+++ b/dev-ml/protocol_version_header/protocol_version_header-0.16.0.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Protocol aware version negotiation for OCaml"
+HOMEPAGE="https://github.com/janestreet/protocol_version_header"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/core:${SLOT}
+ dev-ml/ppx_jane:${SLOT}
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/protocol_version_header/protocol_version_header-0.17.0.ebuild b/dev-ml/protocol_version_header/protocol_version_header-0.17.0.ebuild
new file mode 100644
index 000000000000..6aa3610c9773
--- /dev/null
+++ b/dev-ml/protocol_version_header/protocol_version_header-0.17.0.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Protocol aware version negotiation for OCaml"
+HOMEPAGE="https://github.com/janestreet/protocol_version_header"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ dev-ml/core:${SLOT}[ocamlopt?]
+ dev-ml/ppx_jane:${SLOT}[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/ptime/Manifest b/dev-ml/ptime/Manifest
new file mode 100644
index 000000000000..86279efee603
--- /dev/null
+++ b/dev-ml/ptime/Manifest
@@ -0,0 +1,2 @@
+DIST ptime-1.1.0.tbz 34641 BLAKE2B b4e4991921d348ffcaf9b3a6c822b5e668f0dfad804a2be56e0f1ce2ef775a892312b545d0d098c9c74c1ab6725ddcd63aa2424571f61107fe4f945c03de35b2 SHA512 309b8383f61b58840e58a82802ec8fbc61b7cc95a4590d38ad427e484cbaaf66f03fa8e6484b5b6855468a87e745aed103bf6f1041ec05062230a9fa5fb86cc6
+DIST ptime-1.2.0.tbz 30885 BLAKE2B 45b4f980fbd44af49c3e26a6cc94b7a6ccbaafb0ea72cd7b75f6864d7bfe002a84230d74368a6f1c33b894cd08faf4151559012678b60c91fe463f9cb833499e SHA512 b0c3240dd9e777a5e60b5269eb2e312fc644d29ef55e257d2f2538c03bf62274173ed36e13858c44d2dbee8fe375c9c483e705706e4aa5b3b5c4609ca6324a5c
diff --git a/dev-ml/ptime/metadata.xml b/dev-ml/ptime/metadata.xml
new file mode 100644
index 000000000000..291a0e3adbe9
--- /dev/null
+++ b/dev-ml/ptime/metadata.xml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <longdescription lang="en">Ptime has platform independent POSIX time support in pure OCaml. It
+provides a type to represent a well-defined range of POSIX timestamps
+with picosecond precision, conversion with date-time values,
+conversion with [RFC 3339 timestamps][rfc3339] and pretty printing to
+a human-readable, locale-independent representation.
+
+The additional Ptime_clock library provides access to a system POSIX
+clock and to the system's current time zone offset.
+
+Ptime is not a calendar library.
+
+Ptime has no dependency. Ptime_clock depends on your system library or
+JavaScript runtime system. Ptime and its libraries are distributed
+under the ISC license.
+
+[rfc3339]: http://tools.ietf.org/html/rfc3339
+
+Home page: http://erratique.ch/software/ptime</longdescription>
+ <upstream>
+ <doc>https://erratique.ch/software/ptime/doc/</doc>
+ <bugs-to>https://github.com/dbuenzli/ptime/issues</bugs-to>
+ <maintainer>
+ <name>Daniel Bünzli</name>
+ <email>daniel.buenzli@erratique.ch</email>
+ </maintainer>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ptime/ptime-1.1.0.ebuild b/dev-ml/ptime/ptime-1.1.0.ebuild
new file mode 100644
index 000000000000..491270a410c5
--- /dev/null
+++ b/dev-ml/ptime/ptime-1.1.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit opam findlib
+
+DESCRIPTION="POSIX time for OCaml"
+HOMEPAGE="
+ https://erratique.ch/software/ptime
+ https://github.com/dbuenzli/ptime
+ https://opam.ocaml.org/packages/ptime/
+"
+SRC_URI="https://erratique.ch/software/ptime/releases/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="~amd64"
+
+RDEPEND=""
+DEPEND="
+ ${RDEPEND}
+ dev-ml/topkg
+"
+BDEPEND="dev-ml/ocamlbuild"
+
+OPAM_FILE=opam
+
+src_compile() {
+ ocaml pkg/pkg.ml build || die
+}
diff --git a/dev-ml/ptime/ptime-1.2.0.ebuild b/dev-ml/ptime/ptime-1.2.0.ebuild
new file mode 100644
index 000000000000..82cca9a16c21
--- /dev/null
+++ b/dev-ml/ptime/ptime-1.2.0.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit opam findlib
+
+DESCRIPTION="POSIX time for OCaml"
+HOMEPAGE="
+ https://erratique.ch/software/ptime
+ https://github.com/dbuenzli/ptime
+ https://opam.ocaml.org/packages/ptime/
+"
+SRC_URI="https://erratique.ch/software/ptime/releases/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="~amd64"
+
+DEPEND="
+ dev-ml/topkg
+"
+BDEPEND="dev-ml/ocamlbuild"
+
+OPAM_FILE=opam
+
+src_compile() {
+ ocaml pkg/pkg.ml build || die
+}
diff --git a/dev-ml/ptmap/Manifest b/dev-ml/ptmap/Manifest
new file mode 100644
index 000000000000..1aebb081fb26
--- /dev/null
+++ b/dev-ml/ptmap/Manifest
@@ -0,0 +1 @@
+DIST ptmap-2.0.5.tar.gz 15121 BLAKE2B a81d205df6d0d276b4919577eb0fcfe9c33ad9a188c462df74b72722f43153bda84fd23880945d16e0f332041f67869ab708f5a925a689cf1ddb22dc0b9a6d28 SHA512 6815ee977cb9a4c5088af8dfb7d8055c8d35870ceb4e95f658fbdc50405495bea75a8755442dc6f7345d2e9021c3b96d14883603759baf267feced9cd5ba5202
diff --git a/dev-ml/ptmap/files/ptmap-2.0.5-dune.patch b/dev-ml/ptmap/files/ptmap-2.0.5-dune.patch
new file mode 100644
index 000000000000..b13122884adb
--- /dev/null
+++ b/dev-ml/ptmap/files/ptmap-2.0.5-dune.patch
@@ -0,0 +1,11 @@
+--- a/dune
++++ b/dune
+@@ -1,7 +1,6 @@
+ (library
+ (public_name ptmap)
+- (modules ptmap)
+- (libraries seq))
++ (modules ptmap))
+
+ (test
+ (name test)
diff --git a/dev-ml/ptmap/metadata.xml b/dev-ml/ptmap/metadata.xml
new file mode 100644
index 000000000000..d13c705b3ea4
--- /dev/null
+++ b/dev-ml/ptmap/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/backtracking/ptmap/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/ptmap/ptmap-2.0.5-r2.ebuild b/dev-ml/ptmap/ptmap-2.0.5-r2.ebuild
new file mode 100644
index 000000000000..52b7e86dcfff
--- /dev/null
+++ b/dev-ml/ptmap/ptmap-2.0.5-r2.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Maps of integers implemented as Patricia trees"
+HOMEPAGE="https://github.com/backtracking/ptmap/"
+SRC_URI="https://github.com/backtracking/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ dev-ml/stdlib-shims:=
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=( "${FILESDIR}"/${P}-dune.patch )
diff --git a/dev-ml/qcheck/Manifest b/dev-ml/qcheck/Manifest
new file mode 100644
index 000000000000..c9ade6e133ca
--- /dev/null
+++ b/dev-ml/qcheck/Manifest
@@ -0,0 +1,4 @@
+DIST qcheck-0.22.tar.gz 229755 BLAKE2B f7a2a377b0798fba1f3049cd6e8a313f5f0e3c35bb599c5e61eb819fff5f20aa63718454a104e0d378fa5cbd9b5d712741b0e8edbf68b403e4c649bb8a517810 SHA512 2bc273d73b9732564eadb78a2ab390b85c6f9ffb7ba46d3ec8725384631f199e17937740264c550ef4f06df62ffe655f2be19259f8f4cf4c2e81010a9c1a19e3
+DIST qcheck-0.26.tar.gz 257351 BLAKE2B 0e17717b665c78104f414bab6b509b945a42f8545d63d137a5047d4d62c4745a45cbf2ad6695989fadc19c8e792732c82bb5dc205e10be64c2296ea3081460ae SHA512 6f4749df32629b2a64034f7a8d07079b8d3d628cc402c52bbdbd7e287ca20adf8e8133f91d79e75d8402100715a1138d62904b2d9c1d1595602d5206e0862305
+DIST qcheck-0.27.tar.gz 264834 BLAKE2B ec1aaf2190ed5450b0233f75829e1cb09a2149d25165707468c59cc14afe7f5434eb3e515b390982c36e0646b030e5921366d47b3788c788bc9320e7ee539633 SHA512 8269cd3f4f73f9b62292c0288b430092ae0572682c167dc31d6837cbc833b8a5db66448768f8b88994ae94385c45cda489edcbdd4674f230b2e62527b1b744ac
+DIST qcheck-0.91.tar.gz 280926 BLAKE2B 9ad5a67eb4f40f7b69549af0e18115c27efe85e811b8b530155697dd366c9b93a6db2b9f36553e858baf16e51f6b8951ce3f74675658e5f7b602f7a44ea275e8 SHA512 3baa8c04a43db0497891394208c8a6184d603e4fe0ad9d15fddf666e7a628597210874ca85c96022b69c11a99fdd43bbbf0e6211e34ed7d1dea7b1c95bd54316
diff --git a/dev-ml/qcheck/metadata.xml b/dev-ml/qcheck/metadata.xml
new file mode 100644
index 000000000000..cda46884b910
--- /dev/null
+++ b/dev-ml/qcheck/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/c-cube/qcheck/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/qcheck/qcheck-0.22.ebuild b/dev-ml/qcheck/qcheck-0.22.ebuild
new file mode 100644
index 000000000000..f0f80603f44a
--- /dev/null
+++ b/dev-ml/qcheck/qcheck-0.22.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="QuickCheck inspired property-based testing for OCaml"
+HOMEPAGE="https://github.com/c-cube/qcheck"
+SRC_URI="https://github.com/c-cube/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm64 x86"
+IUSE="+ocamlopt"
+RESTRICT="test" # tests fail
+
+RDEPEND="
+ dev-ml/alcotest:=[ocamlopt?]
+ dev-ml/ounit2:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+
+src_install() {
+ # "ppx_deriving_qcheck" does not install but only "ppx_pbt" depends on it
+ local i
+ for i in qcheck qcheck-alcotest qcheck-core qcheck-ounit ; do
+ dune_src_install ${i}
+ done
+
+ einstalldocs
+}
+
+src_test() {
+ emake test
+}
diff --git a/dev-ml/qcheck/qcheck-0.26.ebuild b/dev-ml/qcheck/qcheck-0.26.ebuild
new file mode 100644
index 000000000000..35d5bcbec554
--- /dev/null
+++ b/dev-ml/qcheck/qcheck-0.26.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="QuickCheck inspired property-based testing for OCaml"
+HOMEPAGE="https://github.com/c-cube/qcheck"
+SRC_URI="https://github.com/c-cube/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test" # tests fail
+
+RDEPEND="
+ dev-ml/alcotest:=[ocamlopt?]
+ dev-ml/ounit2:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+
+src_install() {
+ # "ppx_deriving_qcheck" does not install but only "ppx_pbt" depends on it
+ local i
+ for i in qcheck qcheck-alcotest qcheck-core qcheck-ounit ; do
+ dune_src_install ${i}
+ done
+
+ einstalldocs
+}
+
+src_test() {
+ emake test
+}
diff --git a/dev-ml/qcheck/qcheck-0.27.ebuild b/dev-ml/qcheck/qcheck-0.27.ebuild
new file mode 100644
index 000000000000..8a3101a99983
--- /dev/null
+++ b/dev-ml/qcheck/qcheck-0.27.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="QuickCheck inspired property-based testing for OCaml"
+HOMEPAGE="https://github.com/c-cube/qcheck"
+SRC_URI="https://github.com/c-cube/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="+ocamlopt"
+RESTRICT="test" # tests fail
+
+RDEPEND="
+ dev-ml/alcotest:=[ocamlopt?]
+ dev-ml/ounit2:=[ocamlopt?]
+ dev-ml/ppxlib:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+
+src_install() {
+ # "ppx_deriving_qcheck" does not install but only "ppx_pbt" depends on it
+ local i
+ for i in qcheck qcheck-alcotest qcheck-core qcheck-ounit ; do
+ dune_src_install ${i}
+ done
+
+ einstalldocs
+}
+
+src_test() {
+ emake test
+}
diff --git a/dev-ml/qcheck/qcheck-0.91.ebuild b/dev-ml/qcheck/qcheck-0.91.ebuild
new file mode 100644
index 000000000000..981546431d8d
--- /dev/null
+++ b/dev-ml/qcheck/qcheck-0.91.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="QuickCheck inspired property-based testing for OCaml"
+HOMEPAGE="https://github.com/c-cube/qcheck"
+SRC_URI="https://github.com/c-cube/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ dev-ml/alcotest:=[ocamlopt?]
+ dev-ml/ounit2:=[ocamlopt?]
+ >=dev-ml/ppxlib-0.36.0:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+
+src_install() {
+ # "ppx_deriving_qcheck" does not install but only "ppx_pbt" depends on it
+ local i
+ for i in qcheck qcheck-alcotest qcheck-core qcheck-ounit ; do
+ dune_src_install ${i}
+ done
+
+ einstalldocs
+}
+
+src_test() {
+ # Introduced in alcotest 1.8.0, some tests rely on pretty-printed
+ # alcotest output
+ local -x ALCOTEST_COLUMNS=80
+ emake test
+}
diff --git a/dev-ml/qtest/Manifest b/dev-ml/qtest/Manifest
new file mode 100644
index 000000000000..b960b3cded24
--- /dev/null
+++ b/dev-ml/qtest/Manifest
@@ -0,0 +1 @@
+DIST qtest-2.11.2.tar.gz 46386 BLAKE2B e11008531e23313caf461a48573f734dcfa7670538f74ef4406e35b2f1f1d620fdd7cefcca1470e0b911cec5d00da43d8a97fe76bd47bf6fc05d5a207788a607 SHA512 3edb8471b29c9eb2f6ba11b157abf7ca43ef965d4b1500aaaf1acaeb261972a61c9b104887ada6ca63dc85e06b1d27e34f391885b2fbeb7ea5646323d3be08d0
diff --git a/dev-ml/qtest/metadata.xml b/dev-ml/qtest/metadata.xml
new file mode 100644
index 000000000000..2359306310a7
--- /dev/null
+++ b/dev-ml/qtest/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/vincent-hugot/qtest/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/qtest/qtest-2.11.2.ebuild b/dev-ml/qtest/qtest-2.11.2.ebuild
new file mode 100644
index 000000000000..dea2722d2d36
--- /dev/null
+++ b/dev-ml/qtest/qtest-2.11.2.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="Inline (Unit) Tests for OCaml"
+HOMEPAGE="https://github.com/vincent-hugot/qtest"
+SRC_URI="https://github.com/vincent-hugot/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ dev-ml/ounit2:=
+ dev-ml/qcheck:=
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/re/Manifest b/dev-ml/re/Manifest
new file mode 100644
index 000000000000..76b451b4b420
--- /dev/null
+++ b/dev-ml/re/Manifest
@@ -0,0 +1,5 @@
+DIST ocaml-re-1.11.0.tar.gz 93319 BLAKE2B ccfba746e39d379c862576372694b9ce27f365996cad6c041b14e0a39514663cfb9bf32319ec67207cc5c8a65cd6278d0e111d2f15508bda54f7e0d89d528e8d SHA512 92096672833defba1b92b23bc4ce78cffb2501a21aca0dee264da1c8f35b5995154108d5f47318b9e37933537144359a742dce7825734c68dbd7d3d8ad4bc5b1
+DIST ocaml-re-1.12.0.tar.gz 91945 BLAKE2B 2694ae75589484570d7eff17cf76e9cd6ac1869c4579964fa6a335d9d43dc3f5127141ea285661e9f16d706c8e8d5a861de566e9e0ae4e602de5c6fb29a3f4df SHA512 679a23d86e9ee21f2c451623b04e990beeedabdd5e6c460827292044804f7f7790c3c6a918c02cd6723a3885a7acf3c349b7529c6d4d7e03b9bc53767a3b7ae4
+DIST ocaml-re-1.13.0.tar.gz 98675 BLAKE2B dd5a2dabdb73d5c5079cc36b7d82ea829b25fcd19625098b14de6c78abe4e4e1832f35865b3ab76cc8d09c5d59ad697f5086bddc58b0963716c965d22d3cbcae SHA512 f6105787f318cfda72e4dedda085d44d6e95ca1ca98d2a3d0d4b877464c8aa50c816fd1592d9e23e7493b67734b7362748c17fe490cf31e2dba2c07381cd0b2a
+DIST ocaml-re-1.13.3.gh.tar.gz 98392 BLAKE2B 931ed420b211f69411969ac920815390a5f8f6ed1a190cf33adff3a7c942af303b47ee0e8b82f80e175b3812c395aa85a585d0026e9341279adc9fe9640d35ab SHA512 868960c89d3ab9264c883b9e2dac911ad6c3625df0b18e240dd2467051a5477de40abce691a0c76af91c7cda39ecf1e6275e58f2271657092b039d3ad3d066e0
+DIST ocaml-re-1.14.0.gh.tar.gz 110936 BLAKE2B 4a56bb894126eb8be1b123aba7a95c261a353ad70f237ef1083a81d9db4b8fecbafa7d0b7df7233a621bc8311b584d67112170108d65408f1827b4b7cb52cd7d SHA512 cd2cc39f951ca6b7be631bbb5531ed13bc040e629842671bf6fef3911b20ef1653fa9a1f0aa23b094d252cffc9a9efe7ffca69e50d362ab935bc0cc447548124
diff --git a/dev-ml/re/files/ounit2.patch b/dev-ml/re/files/ounit2.patch
new file mode 100644
index 000000000000..1210491bc142
--- /dev/null
+++ b/dev-ml/re/files/ounit2.patch
@@ -0,0 +1,11 @@
+Index: ocaml-re-1.9.0/lib_test/fort_unit/dune
+===================================================================
+--- ocaml-re-1.9.0.orig/lib_test/fort_unit/dune
++++ ocaml-re-1.9.0/lib_test/fort_unit/dune
+@@ -3,4 +3,4 @@
+ (library
+ (name fort_unit)
+ (wrapped false)
+- (libraries re oUnit))
+\ No newline at end of file
++ (libraries re ounit2))
diff --git a/dev-ml/re/files/re-1.13.0-noSeq.patch b/dev-ml/re/files/re-1.13.0-noSeq.patch
new file mode 100644
index 000000000000..07171df838ed
--- /dev/null
+++ b/dev-ml/re/files/re-1.13.0-noSeq.patch
@@ -0,0 +1,9 @@
+--- a/lib_test/expect/dune 2024-11-02 16:53:56.144246101 +0100
++++ b/lib_test/expect/dune 2024-11-02 16:54:33.130770522 +0100
+@@ -20,5 +20,5 @@
+ private_re
+ (library
+ (name re_private)
+- (libraries seq))
++ )
+ (copy_files %{project_root}/lib/*.{ml,mli}))
diff --git a/dev-ml/re/metadata.xml b/dev-ml/re/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/re/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/re/re-1.11.0-r1.ebuild b/dev-ml/re/re-1.11.0-r1.ebuild
new file mode 100644
index 000000000000..95df91f8f22c
--- /dev/null
+++ b/dev-ml/re/re-1.11.0-r1.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Regular expression library for OCaml"
+HOMEPAGE="https://github.com/ocaml/ocaml-re"
+
+if [[ "${PV}" == *9999* ]] ; then
+ inherit git-r3
+
+ EGIT_REPO_URI="https://github.com/ocaml/ocaml-re.git"
+else
+ SRC_URI="https://github.com/ocaml/ocaml-re/archive/${PV}.tar.gz
+ -> ocaml-${P}.tar.gz"
+ S="${WORKDIR}/ocaml-${P}"
+
+ KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+fi
+
+LICENSE="LGPL-2-with-linking-exception"
+SLOT="0/${PV}"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ !<dev-ml/seq-0.3
+"
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ test? ( dev-ml/ounit2 )
+"
+
+PATCHES=( "${FILESDIR}/ounit2.patch" )
+
+src_prepare() {
+ default
+
+ sed -i lib/dune -e "/(libraries seq)/d" || die
+}
diff --git a/dev-ml/re/re-1.12.0.ebuild b/dev-ml/re/re-1.12.0.ebuild
new file mode 100644
index 000000000000..045394dd3ea7
--- /dev/null
+++ b/dev-ml/re/re-1.12.0.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Regular expression library for OCaml"
+HOMEPAGE="https://github.com/ocaml/ocaml-re"
+
+if [[ "${PV}" == *9999* ]] ; then
+ inherit git-r3
+
+ EGIT_REPO_URI="https://github.com/ocaml/ocaml-re.git"
+else
+ SRC_URI="https://github.com/ocaml/ocaml-re/archive/${PV}.tar.gz
+ -> ocaml-${P}.tar.gz"
+ S="${WORKDIR}/ocaml-${P}"
+
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+fi
+
+LICENSE="LGPL-2-with-linking-exception"
+SLOT="0/${PV}"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ !<dev-ml/seq-0.3
+ >=dev-lang/ocaml-4.12
+"
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ test? ( dev-ml/ounit2 )
+"
+
+src_prepare() {
+ default
+
+ sed -i lib/dune -e "/(libraries seq)/d" || die
+}
diff --git a/dev-ml/re/re-1.13.0-r2.ebuild b/dev-ml/re/re-1.13.0-r2.ebuild
new file mode 100644
index 000000000000..585a98ca1f0b
--- /dev/null
+++ b/dev-ml/re/re-1.13.0-r2.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Regular expression library for OCaml"
+HOMEPAGE="https://github.com/ocaml/ocaml-re"
+
+if [[ "${PV}" == *9999* ]] ; then
+ inherit git-r3
+
+ EGIT_REPO_URI="https://github.com/ocaml/ocaml-re.git"
+else
+ SRC_URI="https://github.com/ocaml/ocaml-re/archive/${PV}.tar.gz
+ -> ocaml-${P}.tar.gz"
+ S="${WORKDIR}/ocaml-${P}"
+
+ KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+fi
+
+LICENSE="LGPL-2-with-linking-exception"
+SLOT="0/${PV}"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.12
+"
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ >=dev-ml/dune-3.12
+ test? (
+ dev-ml/ounit2
+ dev-ml/ppx_expect
+ )
+"
+
+PATCHES=( "${FILESDIR}"/${P}-noSeq.patch )
+
+src_prepare() {
+ default
+
+ sed -i lib/dune -e "/(libraries seq)/d" || die
+}
diff --git a/dev-ml/re/re-1.13.3-r2.ebuild b/dev-ml/re/re-1.13.3-r2.ebuild
new file mode 100644
index 000000000000..0f09f8adc825
--- /dev/null
+++ b/dev-ml/re/re-1.13.3-r2.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Regular expression library for OCaml"
+HOMEPAGE="https://github.com/ocaml/ocaml-re/"
+
+if [[ "${PV}" == *9999* ]] ; then
+ inherit git-r3
+
+ EGIT_REPO_URI="https://github.com/ocaml/ocaml-re.git"
+else
+ SRC_URI="https://github.com/ocaml/ocaml-re/archive/${PV}.tar.gz
+ -> ocaml-${P}.gh.tar.gz"
+ S="${WORKDIR}/ocaml-${P}"
+
+ KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+fi
+
+LICENSE="LGPL-2-with-linking-exception"
+SLOT="0/${PV}"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.14
+"
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ >=dev-ml/dune-3.12
+ test? (
+ dev-ml/ounit2
+ dev-ml/ppx_expect
+ )
+"
+
+PATCHES=( "${FILESDIR}/${PN}-1.13.0-noSeq.patch" )
+
+src_prepare() {
+ default
+
+ sed -i lib/dune -e "/(libraries seq)/d" || die
+
+ # "expect" tests fail.
+ rm -r lib_test/expect || die
+}
diff --git a/dev-ml/re/re-1.14.0.ebuild b/dev-ml/re/re-1.14.0.ebuild
new file mode 100644
index 000000000000..12a9d1ed7ab6
--- /dev/null
+++ b/dev-ml/re/re-1.14.0.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Regular expression library for OCaml"
+HOMEPAGE="https://github.com/ocaml/ocaml-re/"
+
+if [[ "${PV}" == *9999* ]] ; then
+ inherit git-r3
+
+ EGIT_REPO_URI="https://github.com/ocaml/ocaml-re.git"
+else
+ SRC_URI="https://github.com/ocaml/ocaml-re/archive/${PV}.tar.gz
+ -> ocaml-${P}.gh.tar.gz"
+ S="${WORKDIR}/ocaml-${P}"
+
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+fi
+
+LICENSE="LGPL-2-with-linking-exception"
+SLOT="0/${PV}"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.13
+"
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ >=dev-ml/dune-3.17
+ test? (
+ dev-ml/ounit2
+ dev-ml/ppx_expect
+ )
+"
+
+src_prepare() {
+ default
+
+ # "expect" tests fail.
+ rm -r lib_test/expect || die
+}
diff --git a/dev-ml/react/Manifest b/dev-ml/react/Manifest
new file mode 100644
index 000000000000..6d81d5467abc
--- /dev/null
+++ b/dev-ml/react/Manifest
@@ -0,0 +1 @@
+DIST react-1.2.2.tbz 40013 BLAKE2B 302f480cf2cc88fc8a97b262d41809ed4fe904d3ea4cdec8ba80a8bdc99b3ffc1c9f19cf853c3d40587a34ba7608734e60ede5b756479676af95f9470e1badac SHA512 18cdd544d484222ba02db6bd9351571516532e7a1c107b59bbe39193837298f5c745eab6754f8bc6ff125b387be7018c6d6e6ac99f91925a5e4f53af688522b1
diff --git a/dev-ml/react/metadata.xml b/dev-ml/react/metadata.xml
new file mode 100644
index 000000000000..0b46c2322eb6
--- /dev/null
+++ b/dev-ml/react/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <longdescription lang="en">
+ React is an OCaml module for functional reactive programming (FRP). It
+ provides support to program with time varying values : applicative events
+ and signals. React doesn't define any primitive event or signal, this lets
+ the client chooses the concrete timeline. React is made of a single,
+ independent, module and distributed under the new BSD license. Given an
+ absolute notion of time Rtime helps you to manage a timeline and provides
+ time stamp events, delayed events and delayed signals.
+ </longdescription>
+ <upstream>
+ <bugs-to>https://github.com/dbuenzli/react/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/react/react-1.2.2-r1.ebuild b/dev-ml/react/react-1.2.2-r1.ebuild
new file mode 100644
index 000000000000..d00b8889f92b
--- /dev/null
+++ b/dev-ml/react/react-1.2.2-r1.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit opam
+
+DESCRIPTION="OCaml module for functional reactive programming"
+HOMEPAGE="http://erratique.ch/software/react https://github.com/dbuenzli/react"
+
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/dbuenzli/react.git"
+else
+ SRC_URI="http://erratique.ch/software/react/releases/${P}.tbz"
+ KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+fi
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND=""
+DEPEND="${RDEPEND}
+ dev-ml/findlib
+ >=dev-ml/topkg-0.9
+"
+
+src_compile() {
+ ocaml pkg/pkg.ml build \
+ --tests $(usex test 'true' 'false') \
+ || die
+}
+
+src_test() {
+ ocaml pkg/pkg.ml test || die
+}
diff --git a/dev-ml/reactiveData/Manifest b/dev-ml/reactiveData/Manifest
new file mode 100644
index 000000000000..163fa96fabc5
--- /dev/null
+++ b/dev-ml/reactiveData/Manifest
@@ -0,0 +1 @@
+DIST reactiveData-0.2.1.tar.gz 21219 BLAKE2B f3b1c4a4007fc3aefbc34d64ba5ffba5216aee675796719fde11c3c970a431cffbd6dccb35c8cc0192fcc68c7f80f06da91b1000d50ee9f3116efd6febc7e242 SHA512 e4dad870fd1f669566394d9c2ab52665a3d27f6b2dd3807dba245d89ca90eda08b98b266fb0795bcfa5cb4ffed7a86aa719f8db5c316b0d920ee3c342493d029
diff --git a/dev-ml/reactiveData/metadata.xml b/dev-ml/reactiveData/metadata.xml
new file mode 100644
index 000000000000..5f33304011d5
--- /dev/null
+++ b/dev-ml/reactiveData/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/reactiveData/reactiveData-0.2.1.ebuild b/dev-ml/reactiveData/reactiveData-0.2.1.ebuild
new file mode 100644
index 000000000000..f016dcff52af
--- /dev/null
+++ b/dev-ml/reactiveData/reactiveData-0.2.1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit opam
+
+DESCRIPTION="Functional reactive programming with incremental changes in data structures"
+HOMEPAGE="https://github.com/ocsigen/reactiveData"
+
+if [[ "${PV#9999}" != "${PV}" ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/ocsigen/reactiveData"
+else
+ SRC_URI="https://github.com/ocsigen/reactiveData/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64"
+fi
+
+LICENSE="LGPL-3-with-linking-exception"
+SLOT="0/${PV}"
+IUSE="+ocamlopt"
+
+RDEPEND="dev-ml/react:="
+DEPEND="${RDEPEND}
+ dev-ml/findlib
+ dev-ml/ocamlbuild
+"
+
+src_compile() {
+ ocaml pkg/build.ml \
+ native=$(usex ocamlopt true false) \
+ native-dynlink=$(usex ocamlopt true false) \
+ || die
+}
diff --git a/dev-ml/reason/Manifest b/dev-ml/reason/Manifest
new file mode 100644
index 000000000000..6f59ea3d0974
--- /dev/null
+++ b/dev-ml/reason/Manifest
@@ -0,0 +1 @@
+DIST reason-3.17.3.gh.tar.gz 630096 BLAKE2B c7bf06a3f7db9c28678c3272af28ca243d8f5abf0df8b31982c77e787134af2df9080459c94dc3b80e9cfb14c26346622b43efd0cbe644943426b5438b02f2df SHA512 8d7ab79e392d657de894383a3aa86bd142ebdc6a6ef98d5cb9fe09425b250ce59507aa2fe4780a0c581e92d23c9b9de6929da85bd066027a441f63558a6ad1cf
diff --git a/dev-ml/reason/metadata.xml b/dev-ml/reason/metadata.xml
new file mode 100644
index 000000000000..18dce2eedd92
--- /dev/null
+++ b/dev-ml/reason/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <longdescription>
+ Reason provides a new ES6-inspired syntax for OCaml. It's also the umbrella
+ project for a set of tools for the OCaml and JavaScript ecosystems.
+ </longdescription>
+ <upstream>
+ <bugs-to>https://github.com/reasonml/reason/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/reason/reason-3.17.3.ebuild b/dev-ml/reason/reason-3.17.3.ebuild
new file mode 100644
index 000000000000..631c03881454
--- /dev/null
+++ b/dev-ml/reason/reason-3.17.3.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Simple, fast & type safe language that leverages JavaScript and OCaml"
+HOMEPAGE="https://reasonml.github.io/
+ https://github.com/reasonml/reason/"
+
+if [[ "${PV}" == *9999* ]] ; then
+ inherit git-r3
+
+ EGIT_REPO_URI="https://github.com/reasonml/${PN}"
+else
+ SRC_URI="https://github.com/reasonml/${PN}/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz"
+
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ dev-ml/cppo:=[ocamlopt?]
+ dev-ml/dune-build-info:=[ocamlopt?]
+ dev-ml/fix:=[ocamlopt?]
+ dev-ml/menhir:=[ocamlopt?]
+ dev-ml/merlin-extend:=[ocamlopt?]
+ dev-ml/ppx_derivers:=[ocamlopt?]
+ dev-ml/ppxlib:=[ocamlopt?]
+ dev-ml/utop:=[ocamlopt?]
+"
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ dev-ml/findlib
+"
+
+src_install() {
+ dune-install reason rtop
+ dodoc ./*.md ./docs/*.md
+}
diff --git a/dev-ml/record_builder/Manifest b/dev-ml/record_builder/Manifest
new file mode 100644
index 000000000000..658680b43aba
--- /dev/null
+++ b/dev-ml/record_builder/Manifest
@@ -0,0 +1 @@
+DIST record_builder-0.17.0.tar.gz 7013 BLAKE2B 77676ca83e8946968f3dd2ed96a64d5dc6f23e34a9e9efdaaac2566e8deb29d8ebfe134c7048691973158d4e14e44afb89693621c21d81bcae616b71eafd42cc SHA512 a094e3b7bf7ef94af43b1ee8cdae635009fe7f2de141150af8fe9d7374df1f8da3f160084fc613836f29bf6bb857e8529414ec87948812483d85c1e9e65bf6af
diff --git a/dev-ml/record_builder/metadata.xml b/dev-ml/record_builder/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/record_builder/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/record_builder/record_builder-0.17.0-r2.ebuild b/dev-ml/record_builder/record_builder-0.17.0-r2.ebuild
new file mode 100644
index 000000000000..92c8d4aebed9
--- /dev/null
+++ b/dev-ml/record_builder/record_builder-0.17.0-r2.ebuild
@@ -0,0 +1,25 @@
+# Copyright 2025-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit dune
+
+DESCRIPTION="A library which provides traversal of records with an applicative"
+HOMEPAGE="https://github.com/janestreet/record_builder"
+SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}*:=[ocamlopt?]
+ =dev-ml/ppx_jane-${JSM}*:=[ocamlopt]
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/result/Manifest b/dev-ml/result/Manifest
new file mode 100644
index 000000000000..c58245657aa8
--- /dev/null
+++ b/dev-ml/result/Manifest
@@ -0,0 +1 @@
+DIST result-1.5.tar.gz 2291 BLAKE2B 76010676aa806fac3766e9ba70b770b3bd01347b1365892beba4c33415d0942a9368f0437ee5a8339b355b939d1625b2fa9c8ad4cf774007637eb51f4b20f11b SHA512 5ca3aab3b46bff7f4fa4517b5d823de196d7a97a8b94a8e416a5e237061482f4d0030c6a339291d5aa8f68020ee11aed743b730970105a2303e6a93d26ca676a
diff --git a/dev-ml/result/metadata.xml b/dev-ml/result/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/result/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/result/result-1.5.ebuild b/dev-ml/result/result-1.5.ebuild
new file mode 100644
index 000000000000..2acf2ed0de59
--- /dev/null
+++ b/dev-ml/result/result-1.5.ebuild
@@ -0,0 +1,15 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="Compat result type"
+HOMEPAGE="https://github.com/janestreet/result"
+SRC_URI="https://github.com/janestreet/result/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
diff --git a/dev-ml/rresult/Manifest b/dev-ml/rresult/Manifest
new file mode 100644
index 000000000000..1dcf2484e40b
--- /dev/null
+++ b/dev-ml/rresult/Manifest
@@ -0,0 +1 @@
+DIST rresult-0.7.0.tbz 8506 BLAKE2B 0ddb2c2d126e11094d8f92555c6d29fd103cff0393558a9522ad0b58f58159a7eed050976bfeb47969a6c7528c29b8352fa80114ed1684bd5415b2d6b0a30fb1 SHA512 f1bb631c986996388e9686d49d5ae4d8aaf14034f6865c62a88fb58c48ce19ad2eb785327d69ca27c032f835984e0bd2efd969b415438628a31f3e84ec4551d3
diff --git a/dev-ml/rresult/metadata.xml b/dev-ml/rresult/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/rresult/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/rresult/rresult-0.7.0.ebuild b/dev-ml/rresult/rresult-0.7.0.ebuild
new file mode 100644
index 000000000000..14f22b410d34
--- /dev/null
+++ b/dev-ml/rresult/rresult-0.7.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit opam
+
+DESCRIPTION="Result value combinators for OCaml"
+HOMEPAGE="https://erratique.ch/software/rresult https://github.com/dbuenzli/rresult"
+SRC_URI="https://erratique.ch/software/rresult/releases/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+
+RDEPEND="dev-ml/result:="
+DEPEND="${RDEPEND}"
+BDEPEND="dev-ml/topkg
+ dev-ml/ocamlbuild"
+
+src_compile() {
+ ocaml pkg/pkg.ml build || die
+}
diff --git a/dev-ml/sedlex/Manifest b/dev-ml/sedlex/Manifest
new file mode 100644
index 000000000000..287008bc6a83
--- /dev/null
+++ b/dev-ml/sedlex/Manifest
@@ -0,0 +1,3 @@
+DIST sedlex-3.3.tar.gz 128967 BLAKE2B aab0e15246dbdd5eb442be930483bf3b8950a13189b0175d9c1af90f1a42cff1b39337284dd69e10b06fd94b7889e749faad0d97279675482dc776621d12e686 SHA512 791b172b59256cb77df1bbd9e3136aa79e65bcb3df1f64bbe10933d624bad59a7d8b358c35abd07c267b89a3feb01f935e927ffc4fe9c6eb2ac6637cfa9b42cd
+DIST sedlex-3.6.tar.gz 141746 BLAKE2B 38dbff064865e00be58571689ddb5171abe0f8f61e659cdb10a713ac7a3db97d08e4330c6d3ddabd7934f96d300d26f776c52861a5c1cdc5e7ad0e2df1aabc92 SHA512 f3062175e9914b692426ddad215efe2d8f3d269a648f1faf86771d56452d8dbd7edb040409773a19e77bd21e4143281dff94a6800ddb7d5fb50170ab5616c63b
+DIST sedlex-3.7.tar.gz 143594 BLAKE2B 35b0a7873170822edb7a1046c4d7b7a87ded862f799d4c71f7c5fc86407e75e35749a355c94ecd4e1c5636dfacd3b1a42fb80e48bd87d19d8f4733f56019c358 SHA512 053bceea4944309705e6b8014381711a2c4f7f0ab235cd239e2d2f5a2dbd3efe1b1c2d533631a8545dacf563cdb5b7469fe53982ef79ace270ee8a4a471f1fe2
diff --git a/dev-ml/sedlex/metadata.xml b/dev-ml/sedlex/metadata.xml
new file mode 100644
index 000000000000..cda8bb0a5aa1
--- /dev/null
+++ b/dev-ml/sedlex/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <longdescription>
+ sedlex is a lexer generator for OCaml. It is similar to ocamllex, but
+ supports Unicode. Unlike ocamllex, sedlex allows lexer specifications
+ within regular OCaml source files. Lexing specific constructs are provided
+ via a ppx syntax extension.
+ </longdescription>
+ <upstream>
+ <bugs-to>https://github.com/ocaml-community/sedlex/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/sedlex/sedlex-3.3-r1.ebuild b/dev-ml/sedlex/sedlex-3.3-r1.ebuild
new file mode 100644
index 000000000000..938625e9d63f
--- /dev/null
+++ b/dev-ml/sedlex/sedlex-3.3-r1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Using "--for-release-of-packages" skips the regeneration of "unicode.ml" file
+# (using curl), see "src_compile" and "src_test" and "dune-release".
+DUNE_PKG_NAME=${PN}
+
+inherit dune
+
+DESCRIPTION="An OCaml lexer generator for Unicode"
+HOMEPAGE="https://github.com/ocaml-community/sedlex/"
+SRC_URI="https://github.com/ocaml-community/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="amd64 ~arm ~arm64 ~riscv x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ dev-ml/gen:=
+ >=dev-ml/ppxlib-0.26:=[ocamlopt?]
+ <dev-ml/ppxlib-0.36.0
+"
+RDEPEND="${DEPEND}"
+BDEPEND="test? ( dev-ml/ppx_expect )"
+
+src_compile() {
+ dune-compile ${DUNE_PKG_NAME}
+}
+
+src_test() {
+ dune-test ${DUNE_PKG_NAME}
+}
diff --git a/dev-ml/sedlex/sedlex-3.6.ebuild b/dev-ml/sedlex/sedlex-3.6.ebuild
new file mode 100644
index 000000000000..ac1e332e2882
--- /dev/null
+++ b/dev-ml/sedlex/sedlex-3.6.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Using "--for-release-of-packages" skips the regeneration of "unicode.ml" file
+# (using curl), see "src_compile" and "src_test" and "dune-release".
+DUNE_PKG_NAME=${PN}
+
+inherit dune
+
+DESCRIPTION="An OCaml lexer generator for Unicode"
+HOMEPAGE="https://github.com/ocaml-community/sedlex/"
+SRC_URI="https://github.com/ocaml-community/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ dev-ml/gen:=
+ >=dev-ml/ppxlib-0.26:=[ocamlopt?]
+"
+RDEPEND="${DEPEND}"
+BDEPEND="test? ( dev-ml/ppx_expect )"
+
+src_compile() {
+ dune-compile ${DUNE_PKG_NAME}
+}
+
+src_test() {
+ dune-test ${DUNE_PKG_NAME}
+}
diff --git a/dev-ml/sedlex/sedlex-3.7.ebuild b/dev-ml/sedlex/sedlex-3.7.ebuild
new file mode 100644
index 000000000000..ac1e332e2882
--- /dev/null
+++ b/dev-ml/sedlex/sedlex-3.7.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Using "--for-release-of-packages" skips the regeneration of "unicode.ml" file
+# (using curl), see "src_compile" and "src_test" and "dune-release".
+DUNE_PKG_NAME=${PN}
+
+inherit dune
+
+DESCRIPTION="An OCaml lexer generator for Unicode"
+HOMEPAGE="https://github.com/ocaml-community/sedlex/"
+SRC_URI="https://github.com/ocaml-community/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ dev-ml/gen:=
+ >=dev-ml/ppxlib-0.26:=[ocamlopt?]
+"
+RDEPEND="${DEPEND}"
+BDEPEND="test? ( dev-ml/ppx_expect )"
+
+src_compile() {
+ dune-compile ${DUNE_PKG_NAME}
+}
+
+src_test() {
+ dune-test ${DUNE_PKG_NAME}
+}
diff --git a/dev-ml/seq/Manifest b/dev-ml/seq/Manifest
new file mode 100644
index 000000000000..18c663bab1dc
--- /dev/null
+++ b/dev-ml/seq/Manifest
@@ -0,0 +1 @@
+DIST seq-0.3.1.tar.gz 12290 BLAKE2B 997550614086e54394710168af388cb0d393a85584bfbe2327a16abee58e59a6ca161152f6874657896bb30a77049397e72b1d93d721a1a0cdd99614140c640d SHA512 06ce767d3ec1532f8a2421d033f4d9dc5c08c9a27574754d456c31a71ecb9a3c33857591b7d24f85492dce679cd0da8c8985c9fb1a5b5a7f8588d90056b663b8
diff --git a/dev-ml/seq/metadata.xml b/dev-ml/seq/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/seq/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/seq/seq-0.3.1-r1.ebuild b/dev-ml/seq/seq-0.3.1-r1.ebuild
new file mode 100644
index 000000000000..b37f39131d59
--- /dev/null
+++ b/dev-ml/seq/seq-0.3.1-r1.ebuild
@@ -0,0 +1,15 @@
+# Copyright 2020-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Compatibility package for the standard OCaml iterator type"
+HOMEPAGE="https://github.com/c-cube/seq"
+SRC_URI="https://github.com/c-cube/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
diff --git a/dev-ml/sexp_pretty/Manifest b/dev-ml/sexp_pretty/Manifest
new file mode 100644
index 000000000000..02127ce1621e
--- /dev/null
+++ b/dev-ml/sexp_pretty/Manifest
@@ -0,0 +1,2 @@
+DIST sexp_pretty-0.16.0.tar.gz 22557 BLAKE2B e44dbaaf18ffe8899ae636271110cccfeeb61e0284b321ee0d9865e0a8805df4a50540b526988c7f8f0d42092a036421b1e53122c6d22fb38d7ad4295c1055c8 SHA512 531c71dc77abfe9d088eb6213ae9d6563d9a6e1db58a710974120ece6465e192aab4ede6e36e12b6a386bbcfcfa497d5f7a5ac250ea54bdf641cbd597ffc96b6
+DIST sexp_pretty-0.17.0.tar.gz 22605 BLAKE2B 8c25bea835821b4a0b32e9e522e42f992f871c9a07d49caf872c6da11ce36cb9cf156e48c38076ece138b76349ab2e0870f421bd278e399a2ef7cae9df4fb3b9 SHA512 df2f9f9d434332c63d73be601907096d42d39f3cbcad401eaa0b20e234ea5ca7fa2b0f7c14c420022cb20f9f2a758d9111ed7d3d49f9a245d89d9d92d608a64f
diff --git a/dev-ml/sexp_pretty/metadata.xml b/dev-ml/sexp_pretty/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/sexp_pretty/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/sexp_pretty/sexp_pretty-0.16.0.ebuild b/dev-ml/sexp_pretty/sexp_pretty-0.16.0.ebuild
new file mode 100644
index 000000000000..1f854f6f581b
--- /dev/null
+++ b/dev-ml/sexp_pretty/sexp_pretty-0.16.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="S-expression pretty-printer"
+HOMEPAGE="https://github.com/janestreet/sexp_pretty"
+SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/ppxlib:=
+ dev-ml/ppx_base:${SLOT}
+ dev-ml/ppx_enumerate:=
+ dev-ml/ppx_hash:=
+ dev-ml/re:=
+ dev-ml/sexplib:${SLOT}
+"
+RDEPEND="${DEPEND}"
+BDEPEND=""
diff --git a/dev-ml/sexp_pretty/sexp_pretty-0.17.0-r2.ebuild b/dev-ml/sexp_pretty/sexp_pretty-0.17.0-r2.ebuild
new file mode 100644
index 000000000000..4e4cf5bbafcf
--- /dev/null
+++ b/dev-ml/sexp_pretty/sexp_pretty-0.17.0-r2.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2023-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="S-expression pretty-printer"
+HOMEPAGE="https://github.com/janestreet/sexp_pretty"
+SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}*:=[ocamlopt?]
+ =dev-ml/ppx_base-${JSM}*:=[ocamlopt?]
+ =dev-ml/sexplib-${JSM}*:=[ocamlopt?]
+ dev-ml/re:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/sexplib/Manifest b/dev-ml/sexplib/Manifest
new file mode 100644
index 000000000000..c95d488459d8
--- /dev/null
+++ b/dev-ml/sexplib/Manifest
@@ -0,0 +1,2 @@
+DIST sexplib-0.16.0.tar.gz 55015 BLAKE2B 3d4157cfc0e5906a351c0a04380582895544f95c9ad88e576764967c46614c0553b606064eab75a8561c59a9fcb353ae695f743e0eda1a61a4c66a57b24f51e3 SHA512 f924d92ddf11f12be51073a3dfca45486d90b05533f29804518ee86b93386b8ff8d7e692c71d77b11347b78e9f6f6dcf7d79b71540efe54b013fa09b3bab414a
+DIST sexplib-0.17.0.tar.gz 55490 BLAKE2B feff6594ce144e1f25efec60009874210e71ba19fff5edffe46e25510a73a235ce28333888c2bc6839c5cffb901a70b2463853b4ca02cf93d89aaa6a15f154b7 SHA512 3e9dafebd197de64cdd0b77ef27c4c75d2b879b8accd5e24a3b56c2b599be9ddfe007cc170ff7bbaaf51a1b96e58dd9c0a7af046bf96978a60a24eedf0e8b6c4
diff --git a/dev-ml/sexplib/metadata.xml b/dev-ml/sexplib/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/sexplib/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/sexplib/sexplib-0.16.0-r1.ebuild b/dev-ml/sexplib/sexplib-0.16.0-r1.ebuild
new file mode 100644
index 000000000000..027abe72b428
--- /dev/null
+++ b/dev-ml/sexplib/sexplib-0.16.0-r1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Library for automated conversion of OCaml-values to and from S-expressions"
+HOMEPAGE="https://github.com/janestreet/sexplib"
+SRC_URI="https://github.com/janestreet/sexplib/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ =dev-ml/sexplib0-0.16*:=[ocamlopt?]
+ dev-ml/base:${SLOT}[ocamlopt?]
+ dev-ml/num:=[ocamlopt?]
+ dev-ml/parsexp:${SLOT}[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/sexplib/sexplib-0.17.0-r1.ebuild b/dev-ml/sexplib/sexplib-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..97298e5639a2
--- /dev/null
+++ b/dev-ml/sexplib/sexplib-0.17.0-r1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Library for automated conversion of OCaml-values to and from S-expressions"
+HOMEPAGE="https://github.com/janestreet/sexplib"
+SRC_URI="https://github.com/janestreet/sexplib/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ dev-ml/parsexp:${SLOT}[ocamlopt?]
+ dev-ml/sexplib0:${SLOT}[ocamlopt?]
+ dev-ml/num:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/sexplib0/Manifest b/dev-ml/sexplib0/Manifest
new file mode 100644
index 000000000000..47812e595d9d
--- /dev/null
+++ b/dev-ml/sexplib0/Manifest
@@ -0,0 +1,4 @@
+DIST sexplib0-0.15.0.tar.gz 16706 BLAKE2B 154b8f3cb48dd6f13e7ed9679a8ecde6ae57a7a0d70f50c214f088f377d52b1c00b5d7545f9949fd4d17f21ffb9187981b0d009b063c48d252926fdd7a49307f SHA512 ae44c3724b8f7bf8a19bbb10464a21d74b662c77ba3937bab6ca9709843ee2ae7da44432d6dbf4f744cabc3e369b5d2fc89c16e372c3cb77e55077b5efda3041
+DIST sexplib0-0.15.1.tar.gz 16106 BLAKE2B ab994e151166860c85d646cd759031f668577f2ff97e86b9a949f510220fc84dc80d7c41c91c2ba5e5946c8c4d95d3bb469f2669d919068a05ac5c4fdc4a8f59 SHA512 3f15e011b180cccd96882b6b3d3922c13622151713080261a9646d8df896635a6a85e2df6a5d332784678d0d1cae7eccb190769ac4d9bd68b040bc3b41362056
+DIST sexplib0-0.16.0.tar.gz 22171 BLAKE2B a280ce73278acd4c16a5f063ef90a7406edec0d32f3b17c3821c1e5cb32c8c2c8b9843ae0068b9b453815de737323b1ab2a995fd600cbe19aae78bd7307b49c8 SHA512 ec95e2858df80f22be58493221d83ffff7d56c47910aeb5769101678b85da65bd29d785519fc2d5a4bb8ce30067a924fae6d8f733a6a26113423e955e2f516b8
+DIST sexplib0-0.17.0.tar.gz 23052 BLAKE2B b9b975395ed3e60a94f9067b9bf9ad2cb4be2e937ec0bc6d0ba6b82e51d5146af7a224051bcfeda3e738a5c81ab2f732d9bbde55bb2e5b647f46d5b505996891 SHA512 ad387e40789fe70a11473db7e85fe017b801592624414e9030730b2e92ea08f98095fb6e9236430f33c801605ebee0a2a6284e0f618a26a7da4599d4fd9d395d
diff --git a/dev-ml/sexplib0/metadata.xml b/dev-ml/sexplib0/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/sexplib0/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/sexplib0/sexplib0-0.15.0-r2.ebuild b/dev-ml/sexplib0/sexplib0-0.15.0-r2.ebuild
new file mode 100644
index 000000000000..fbbc5f687795
--- /dev/null
+++ b/dev-ml/sexplib0/sexplib0-0.15.0-r2.ebuild
@@ -0,0 +1,16 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Library for automated conversion of OCaml-values to and from S-expressions"
+HOMEPAGE="https://github.com/janestreet/sexplib0"
+SRC_URI="https://github.com/janestreet/sexplib0/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt"
diff --git a/dev-ml/sexplib0/sexplib0-0.15.1-r1.ebuild b/dev-ml/sexplib0/sexplib0-0.15.1-r1.ebuild
new file mode 100644
index 000000000000..95ae8ae86b8e
--- /dev/null
+++ b/dev-ml/sexplib0/sexplib0-0.15.1-r1.ebuild
@@ -0,0 +1,16 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Library for automated conversion of OCaml-values to and from S-expressions"
+HOMEPAGE="https://github.com/janestreet/sexplib0"
+SRC_URI="https://github.com/janestreet/sexplib0/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
diff --git a/dev-ml/sexplib0/sexplib0-0.16.0.ebuild b/dev-ml/sexplib0/sexplib0-0.16.0.ebuild
new file mode 100644
index 000000000000..009e6920e981
--- /dev/null
+++ b/dev-ml/sexplib0/sexplib0-0.16.0.ebuild
@@ -0,0 +1,16 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Library for automated conversion of OCaml-values to and from S-expressions"
+HOMEPAGE="https://github.com/janestreet/sexplib0"
+SRC_URI="https://github.com/janestreet/sexplib0/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
diff --git a/dev-ml/sexplib0/sexplib0-0.17.0-r2.ebuild b/dev-ml/sexplib0/sexplib0-0.17.0-r2.ebuild
new file mode 100644
index 000000000000..4c1150459300
--- /dev/null
+++ b/dev-ml/sexplib0/sexplib0-0.17.0-r2.ebuild
@@ -0,0 +1,16 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Library for automated conversion of OCaml-values to and from S-expressions"
+HOMEPAGE="https://github.com/janestreet/sexplib0"
+SRC_URI="https://github.com/janestreet/sexplib0/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt"
diff --git a/dev-ml/spawn/Manifest b/dev-ml/spawn/Manifest
new file mode 100644
index 000000000000..40fe956a7222
--- /dev/null
+++ b/dev-ml/spawn/Manifest
@@ -0,0 +1,4 @@
+DIST spawn-0.13.0.tar.gz 13048 BLAKE2B f64815c99b3ee7a0e4a18c33012df658e57d7973101ced83aa509c2dfa6455b59b110cc61477da0750305fb8b81ed4a1436a6a7418313185644ea531745a80da SHA512 897ffec4a4c15c819e4429f6b71427005d6b40df6039e6c7f0b1ca4b4e35b24304dc56e27ce88bd81f5b61f936444f5d6e80ea14483991067aa6ee072f4a90dc
+DIST spawn-0.15.0.tar.gz 15808 BLAKE2B 72c29c012c3aa700b345e6c5b5a5b8bed4576c721cd9fa435c652e0605cc88bb545247e5a8284b7603e22ca5ab27d36042c6d8020742fc5e9e7b762167a9f864 SHA512 3a775b57a73efee6adbc30b32fa779f27d11c7008a46f90fdb9da6288533e2d83fc49dbcd770c087f2e4560c5586ff72a9a2985d8929955773cc10d83f126013
+DIST spawn-0.15.1.tar.gz 15861 BLAKE2B 95478f0f575688ba66dc69229463c6cf029c39e6edf8cead2d38dfa0fc01bacf85d63f09d6d084d96a2537c55b02184ce69166be12628a8046c7e007222f648c SHA512 efdb31d5ec5ea36d0bc80224d4ee04e46ce3428d1662870e6cebece92bc313d6eebee378802c0c059dd6e0cafea515308c31b7dfaf04a098eb4566583c1e9ed4
+DIST spawn-0.17.0.tar.gz 18629 BLAKE2B 07e62ff3dba88132ab1ed1aeab168f6860e0cf50aa2fe6e6f07e495f07d4d1e237c017fd98ce93a613b7e43943d9edb98c51fabb3ad81a2ab1f10903d58f53a2 SHA512 929a45b87fa1066bfa768c51665ef475f6ecd4733f9dee2821d7d11d0161cc621d85aa1cec716840e58802e9eea8d0884b52e5e6989702b1999cc7ef7fb813e2
diff --git a/dev-ml/spawn/metadata.xml b/dev-ml/spawn/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/spawn/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/spawn/spawn-0.13.0.ebuild b/dev-ml/spawn/spawn-0.13.0.ebuild
new file mode 100644
index 000000000000..441c200bb3e4
--- /dev/null
+++ b/dev-ml/spawn/spawn-0.13.0.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="Spawning sub-processes"
+HOMEPAGE="https://github.com/janestreet/spawn"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="test? ( dev-ml/ppx_expect )"
diff --git a/dev-ml/spawn/spawn-0.15.0-r1.ebuild b/dev-ml/spawn/spawn-0.15.0-r1.ebuild
new file mode 100644
index 000000000000..14f286a60e35
--- /dev/null
+++ b/dev-ml/spawn/spawn-0.15.0-r1.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="Spawning sub-processes"
+HOMEPAGE="https://github.com/janestreet/spawn"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="test? ( dev-ml/ppx_expect )"
diff --git a/dev-ml/spawn/spawn-0.15.1.ebuild b/dev-ml/spawn/spawn-0.15.1.ebuild
new file mode 100644
index 000000000000..1072baea7264
--- /dev/null
+++ b/dev-ml/spawn/spawn-0.15.1.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Spawning sub-processes"
+HOMEPAGE="https://github.com/janestreet/spawn"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="test? ( dev-ml/ppx_expect )"
diff --git a/dev-ml/spawn/spawn-0.17.0.ebuild b/dev-ml/spawn/spawn-0.17.0.ebuild
new file mode 100644
index 000000000000..a5956b926e0d
--- /dev/null
+++ b/dev-ml/spawn/spawn-0.17.0.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Spawning sub-processes"
+HOMEPAGE="https://github.com/janestreet/spawn"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="test? ( dev-ml/ppx_expect )"
diff --git a/dev-ml/spdx_licenses/Manifest b/dev-ml/spdx_licenses/Manifest
new file mode 100644
index 000000000000..c3bde0d85fe2
--- /dev/null
+++ b/dev-ml/spdx_licenses/Manifest
@@ -0,0 +1,2 @@
+DIST spdx_licenses-1.2.0.tar.gz 34387 BLAKE2B 7b381a98df0412993a8ee79a0ec4f99ce82da9be8eb47ab1c591b6110e9839782ca5a9775d7a24d0850d6cd215eb68cee0ae1d2ceecb3406b5699bc9a2c4e350 SHA512 188cb1fd9be76dfc9e26f155a0062ce000a3798e12e2208634db03f54ca7ebb9b3b16787114233f36e2a69bcba08572790c4931790e39590b13d48306b37931c
+DIST spdx_licenses-1.4.0.tar.gz 53220 BLAKE2B 05badac25f9c97c2c41edfc726bff60bd1c87fb3d7f63dd28f36dec8fbd057f2b18da5f922ece90f8a3e9cd7ae7416fcb231c35b3fd9729db8ba869aa43f1c64 SHA512 959d45f29292e1a43d567330e289aa0250331972e02c96d6f838a757bb045e3d03d024de80b6e765810c538f854ab9b245548f90081b1d182c43e1cd0d6f9167
diff --git a/dev-ml/spdx_licenses/metadata.xml b/dev-ml/spdx_licenses/metadata.xml
new file mode 100644
index 000000000000..f5a3041c194e
--- /dev/null
+++ b/dev-ml/spdx_licenses/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <longdescription lang="en">
+ An OCaml library aiming to provide an up-to-date and strict SPDX
+ License Expression parser. It implements the format described in:
+ https://spdx.github.io/spdx-spec/appendix-IV-SPDX-license-expressions/
+ See https://spdx.org/licenses/ for more details.
+ </longdescription>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/spdx_licenses/spdx_licenses-1.2.0.ebuild b/dev-ml/spdx_licenses/spdx_licenses-1.2.0.ebuild
new file mode 100644
index 000000000000..991c3fab8a20
--- /dev/null
+++ b/dev-ml/spdx_licenses/spdx_licenses-1.2.0.ebuild
@@ -0,0 +1,20 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="A library providing a strict SPDX License Expression parser"
+HOMEPAGE="https://github.com/kit-ty-kate/spdx_licenses"
+SRC_URI="https://github.com/kit-ty-kate/${PN}/releases/download/v${PV}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+
+IUSE="+ocamlopt test"
+
+BDEPEND="test? ( dev-ml/alcotest )"
+
+RESTRICT="!test? ( test )"
diff --git a/dev-ml/spdx_licenses/spdx_licenses-1.4.0.ebuild b/dev-ml/spdx_licenses/spdx_licenses-1.4.0.ebuild
new file mode 100644
index 000000000000..c551a7f69cec
--- /dev/null
+++ b/dev-ml/spdx_licenses/spdx_licenses-1.4.0.ebuild
@@ -0,0 +1,20 @@
+# Copyright 2024-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="A library providing a strict SPDX License Expression parser"
+HOMEPAGE="https://github.com/kit-ty-kate/spdx_licenses"
+SRC_URI="https://github.com/kit-ty-kate/${PN}/releases/download/v${PV}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+
+IUSE="+ocamlopt test"
+
+BDEPEND="test? ( dev-ml/alcotest )"
+
+RESTRICT="!test? ( test )"
diff --git a/dev-ml/splittable_random/Manifest b/dev-ml/splittable_random/Manifest
new file mode 100644
index 000000000000..9c938a7d484e
--- /dev/null
+++ b/dev-ml/splittable_random/Manifest
@@ -0,0 +1,2 @@
+DIST splittable_random-0.16.0.tar.gz 9978 BLAKE2B 55c351cd36fc7f41a3abcdad1ca81bd8da67e8d0eadb8d28306e42de9990cfb00b8c7812e7a15c3ffb447c9180347395e403de38740344baf54e48760fbc9f91 SHA512 eeb58de6cf8ee6fda61997ad06e9a3d807eb4e296320b2fcb17bf2ce41dc9ca4dc75ff1caf257dcbb94bd6f205ea2f9b1e2d91a42cf4ee34964ba91f8a0bebd3
+DIST splittable_random-0.17.0.tar.gz 10190 BLAKE2B 46b498628c187410f58f6537d6711e3e75c05fb06b1acda74cb0a11ad0c1bf62db1b2bd75033101b3dd07eca379dc5e97c92d792784995a6593ac19bad610f8f SHA512 e6cefc751f6eb350278ada1bdd38252c29c6829efb8bd754804491fbc7e77a4ddee9c7eb1097082f7069c95efbee3e7d1e81bde0745f0d0d3a3517512344b0b4
diff --git a/dev-ml/splittable_random/metadata.xml b/dev-ml/splittable_random/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/splittable_random/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/splittable_random/splittable_random-0.16.0.ebuild b/dev-ml/splittable_random/splittable_random-0.16.0.ebuild
new file mode 100644
index 000000000000..cf17a5969e1e
--- /dev/null
+++ b/dev-ml/splittable_random/splittable_random-0.16.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="PRNG that can be split into independent streams"
+HOMEPAGE="https://github.com/janestreet/splittable_random"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/ppx_assert:${SLOT}
+ dev-ml/ppx_bench:${SLOT}
+ dev-ml/ppx_compare:=
+ dev-ml/ppx_here:=
+ dev-ml/ppx_inline_test:${SLOT}
+ dev-ml/ppx_sexp_message:${SLOT}
+ dev-ml/ppx_sexp_conv:=
+ dev-ml/ppxlib:=
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/splittable_random/splittable_random-0.17.0-r2.ebuild b/dev-ml/splittable_random/splittable_random-0.17.0-r2.ebuild
new file mode 100644
index 000000000000..57e8383f12e6
--- /dev/null
+++ b/dev-ml/splittable_random/splittable_random-0.17.0-r2.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="PRNG that can be split into independent streams"
+HOMEPAGE="https://github.com/janestreet/splittable_random"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}*:=[ocamlopt?]
+ =dev-ml/ppx_assert-${JSM}*:=[ocamlopt?]
+ =dev-ml/ppx_bench-${JSM}*:=[ocamlopt?]
+ =dev-ml/ppx_inline_test-${JSM}*:=[ocamlopt?]
+ =dev-ml/ppx_sexp_message-${JSM}*:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/stdcompat/Manifest b/dev-ml/stdcompat/Manifest
new file mode 100644
index 000000000000..1f6cbf84c99e
--- /dev/null
+++ b/dev-ml/stdcompat/Manifest
@@ -0,0 +1,2 @@
+DIST stdcompat-19.tar.gz 530511 BLAKE2B 4af97c355b98f63366d647a4a375bde43ffbf959a2c02132ab57457db4213b8f98a972bf99667dd53603b28235b4f853470c2117270ce42c6aa579a21dd148fb SHA512 25582731170f2f80eed281c48af4904d1d00ef88a38d1b17853395c19a326d7b11e42c17b69f639402c467ff6f9b83a2e9d4dbab7255ac25d466b85a55674bd0
+DIST stdcompat-21.1.tar.gz 624974 BLAKE2B b351696f0aed268cd067e20a7d0917a5580399b43e5de3e60fce0ab30a8093cd1808eda610d5a20eb721033f77c45f9b5c8dabc6d55862b023c363b212a505e8 SHA512 b3d93d200aa57a193459c143fafa97b7e96cbed3043ef8c7a2bc359ed385ff7d1ec03561cdab1f28e80055dc1c0bd7647bba827c6300b85a1d1c66a539626189
diff --git a/dev-ml/stdcompat/metadata.xml b/dev-ml/stdcompat/metadata.xml
new file mode 100644
index 000000000000..cabee5511d3b
--- /dev/null
+++ b/dev-ml/stdcompat/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <longdescription lang="en">
+ Compatibility module for OCaml standard library allowing programs
+ to use some recent additions to the OCaml standard library while
+ preserving the ability to be compiled on former versions of OCaml.
+ </longdescription>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/stdcompat/stdcompat-19-r2.ebuild b/dev-ml/stdcompat/stdcompat-19-r2.ebuild
new file mode 100644
index 000000000000..fd7184f8ab04
--- /dev/null
+++ b/dev-ml/stdcompat/stdcompat-19-r2.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2022-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="Compatibility module for OCaml standard library"
+HOMEPAGE="https://github.com/thierry-martinez/stdcompat"
+SRC_URI="https://github.com/thierry-martinez/stdcompat/releases/download/v${PV}/${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+
+DEPEND="<dev-lang/ocaml-5:=[ocamlopt]
+ dev-ml/result:=[ocamlopt]
+ dev-ml/uchar:=[ocamlopt]"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ dev-ml/dune
+ dev-ml/findlib[ocamlopt]"
+
+# Do not complain about CFLAGS etc since ml projects do not use them.
+QA_FLAGS_IGNORED='.*'
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure () {
+ econf --libdir="${EPREFIX}"/usr/$(get_libdir)/ocaml
+}
diff --git a/dev-ml/stdcompat/stdcompat-21.1-r1.ebuild b/dev-ml/stdcompat/stdcompat-21.1-r1.ebuild
new file mode 100644
index 000000000000..a138ca862d10
--- /dev/null
+++ b/dev-ml/stdcompat/stdcompat-21.1-r1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2022-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="Compatibility module for OCaml standard library"
+HOMEPAGE="https://github.com/ocamllibs/stdcompat"
+SRC_URI="https://github.com/ocamllibs/stdcompat/archive/refs/tags/${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+
+DEPEND=">=dev-lang/ocaml-4.11:=[ocamlopt]
+ <dev-lang/ocaml-5.4
+ dev-ml/result:=[ocamlopt]
+ dev-ml/uchar:=[ocamlopt]"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ dev-ml/dune
+ dev-ml/findlib[ocamlopt]"
+
+# Do not complain about CFLAGS etc since ml projects do not use them.
+QA_FLAGS_IGNORED='.*'
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure () {
+ econf --libdir="${EPREFIX}"/usr/$(get_libdir)/ocaml
+}
diff --git a/dev-ml/stdio/Manifest b/dev-ml/stdio/Manifest
new file mode 100644
index 000000000000..8d6d2956f5b2
--- /dev/null
+++ b/dev-ml/stdio/Manifest
@@ -0,0 +1,2 @@
+DIST stdio-0.16.0.tar.gz 7836 BLAKE2B 05f1d26d9d67996d6221ef1f1c8053afb4c53efbc8b9c75c83b72a4ca18e255d0df540461ad85e6bb0cbe8458bd09bf0029b3983ae498f91c1ae7cf9c85535d2 SHA512 fab88e4a869a88566e0f7143bec45db9572f40dc0e9528b6993edc75fbbdace46593912386c417b317daaa1fd07d4212a4e40e5afae0e682b61f4093b423f3a8
+DIST stdio-0.17.0.tar.gz 7982 BLAKE2B a99203015c3372cf29fb100fefccfa1c03ec0ff0d339b49308e228ddaa6aa22875f7d39d8aadf03912f83314c3df6b5e1f730101f5b1a29b18fd6666422ad345 SHA512 53fd4a46ed1e26970d1d0087ad6f3fb8d4518b38bec1a4fab3bb3258a17260f0c4a6df339bfbda8b3e97be030c88fbe7354f2fa611048fdb22edbe9a7a5152b7
diff --git a/dev-ml/stdio/metadata.xml b/dev-ml/stdio/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/stdio/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/stdio/stdio-0.16.0.ebuild b/dev-ml/stdio/stdio-0.16.0.ebuild
new file mode 100644
index 000000000000..6b693d3dab58
--- /dev/null
+++ b/dev-ml/stdio/stdio-0.16.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Standard IO Library for OCaml"
+HOMEPAGE="https://github.com/janestreet/stdio"
+SRC_URI="https://github.com/janestreet/stdio/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/base:${SLOT}
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/stdio/stdio-0.17.0-r2.ebuild b/dev-ml/stdio/stdio-0.17.0-r2.ebuild
new file mode 100644
index 000000000000..4bc58541a64d
--- /dev/null
+++ b/dev-ml/stdio/stdio-0.17.0-r2.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Standard IO Library for OCaml"
+HOMEPAGE="https://github.com/janestreet/stdio"
+SRC_URI="https://github.com/janestreet/stdio/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}*:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/stdlib-shims/Manifest b/dev-ml/stdlib-shims/Manifest
new file mode 100644
index 000000000000..303277e49620
--- /dev/null
+++ b/dev-ml/stdlib-shims/Manifest
@@ -0,0 +1,2 @@
+DIST stdlib-shims-0.2.0.tbz 15980 BLAKE2B 4d83b8642a4bccc9f090c0a2f23a4d2f16bbf2ec686ab41e357f5f544d659e82f10cba85f9d578c939a2a874d0006b7fd17846bb8ffe1b6fc7cb760e4aa33db1 SHA512 19e8d8e004583e94ce060d3598c886dae1c24dd79dfd177aab4bd2865846f668a83071f087d9371393f226c14c90042eb2ec76619654c655995aeff9d4765621
+DIST stdlib-shims-0.3.0.tbz 10163 BLAKE2B 442f07a9b80fb915a0254ba814227798c838f9fa4c6e9a94c4b99c22ca25844f121de235cb758707179275da9200cd45cbb6e68392b0217af97c6e1bb04a13a3 SHA512 1151d7edc8923516e9a36995a3f8938d323aaade759ad349ed15d6d8501db61ffbe63277e97c4d86149cf371306ac23df0f581ec7e02611f58335126e1870980
diff --git a/dev-ml/stdlib-shims/metadata.xml b/dev-ml/stdlib-shims/metadata.xml
new file mode 100644
index 000000000000..0c2042faa88f
--- /dev/null
+++ b/dev-ml/stdlib-shims/metadata.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <longdescription>
+ Compatibility library for OCaml compilers before 4.08 to allow calling
+ Pervasives module functions on Stdlib, which is the API in newer compilers.
+ Does not add newer Stdlib functions.
+ </longdescription>
+ <maintainer type="person" proxied="yes">
+ <email>rkitover@gmail.com</email>
+ <name>Rafael Kitover</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <use>
+ <flag name="ocamlopt">
+ Whether the OCaml native code compiler is used. Must be set globally and
+ match <pkg>dev-lang/ocaml</pkg>.
+ </flag>
+ </use>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/stdlib-shims/stdlib-shims-0.2.0.ebuild b/dev-ml/stdlib-shims/stdlib-shims-0.2.0.ebuild
new file mode 100644
index 000000000000..91bbbcc943c2
--- /dev/null
+++ b/dev-ml/stdlib-shims/stdlib-shims-0.2.0.ebuild
@@ -0,0 +1,17 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="Pure OCaml library that allows replacing Pervasives with Stdlib before 4.08"
+HOMEPAGE="https://github.com/ocaml/stdlib-shims"
+SRC_URI="https://github.com/ocaml/${PN}/releases/download/${PV}/${P}.tbz"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 x86"
+IUSE="+ocamlopt"
+
+DOCS=( "README.md" "CHANGES.md" "LICENSE" )
diff --git a/dev-ml/stdlib-shims/stdlib-shims-0.3.0.ebuild b/dev-ml/stdlib-shims/stdlib-shims-0.3.0.ebuild
new file mode 100644
index 000000000000..8ef89b963ab2
--- /dev/null
+++ b/dev-ml/stdlib-shims/stdlib-shims-0.3.0.ebuild
@@ -0,0 +1,17 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="Pure OCaml library that allows replacing Pervasives with Stdlib before 4.08"
+HOMEPAGE="https://github.com/ocaml/stdlib-shims"
+SRC_URI="https://github.com/ocaml/${PN}/releases/download/${PV}/${P}.tbz"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DOCS=( "README.md" "CHANGES.md" "LICENSE" )
diff --git a/dev-ml/stringext/Manifest b/dev-ml/stringext/Manifest
new file mode 100644
index 000000000000..ab07bcc50926
--- /dev/null
+++ b/dev-ml/stringext/Manifest
@@ -0,0 +1 @@
+DIST stringext-1.6.0.tbz 7445 BLAKE2B eff21ad94b68818681cb4be32f6c978dd027aaeec6b04b1d100890dc5a382af35e94f689e7c9bc3779001eb21e6fbe7d2c933dcf6146686a3e1793648f797680 SHA512 d8ebe40f42b598a9bd99f1ef4b00ba93458385a4accd121af66a0bf3b3f8d7135f576740adf1a43081dd409977c2219fd4bdbb5b3d1308890d301d553ed49900
diff --git a/dev-ml/stringext/metadata.xml b/dev-ml/stringext/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/stringext/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/stringext/stringext-1.6.0.ebuild b/dev-ml/stringext/stringext-1.6.0.ebuild
new file mode 100644
index 000000000000..e9fe9abd2f8b
--- /dev/null
+++ b/dev-ml/stringext/stringext-1.6.0.ebuild
@@ -0,0 +1,22 @@
+# Copyright 2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit dune
+
+DESCRIPTION="Extra string functions for OCaml"
+HOMEPAGE="https://github.com/rgrinberg/stringext"
+SRC_URI="https://github.com/rgrinberg/${PN}/releases/download/${PV}/${P}.tbz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 arm64 x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="test? ( dev-ml/qcheck )"
+
+src_prepare() {
+ sed -i -e 's:oUnit:ounit2:' lib_test/dune || die
+ default
+}
diff --git a/dev-ml/swhid_core/Manifest b/dev-ml/swhid_core/Manifest
new file mode 100644
index 000000000000..7718d6ed2fcb
--- /dev/null
+++ b/dev-ml/swhid_core/Manifest
@@ -0,0 +1 @@
+DIST swhid_core-0.1.tar.gz 46118 BLAKE2B 3594b9cd8c71bf4fa9f05e63a45d17af7c3c0d7e6339c357c0f79a7e2a6b558b068478038de9ef4b370c5935489a1ad9f21824a56f0e971a0a1e0a00412368e1 SHA512 ec72cc946c662dc8230f4ef8c85bb41df56c3f46bc49276feca434199cd482f11901be902fc5c243244866d4a167474f18245f83ad0b0cf46eb35406ad1f1b5c
diff --git a/dev-ml/swhid_core/metadata.xml b/dev-ml/swhid_core/metadata.xml
new file mode 100644
index 000000000000..46ac66b448cf
--- /dev/null
+++ b/dev-ml/swhid_core/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <longdescription lang="en">
+ swhid_core is an OCaml library to with with Software Heritage
+ persistent identifiers (swhids).
+ </longdescription>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/swhid_core/swhid_core-0.1.ebuild b/dev-ml/swhid_core/swhid_core-0.1.ebuild
new file mode 100644
index 000000000000..a11feca2f8a5
--- /dev/null
+++ b/dev-ml/swhid_core/swhid_core-0.1.ebuild
@@ -0,0 +1,16 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit dune
+
+DESCRIPTION="OCaml library to work with swhids"
+HOMEPAGE="https://github.com/ocamlpro/swhid_core"
+SRC_URI="https://github.com/OCamlPro/${PN}/archive/refs/tags/${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+
+IUSE="+ocamlopt"
diff --git a/dev-ml/textutils/Manifest b/dev-ml/textutils/Manifest
new file mode 100644
index 000000000000..39a314869084
--- /dev/null
+++ b/dev-ml/textutils/Manifest
@@ -0,0 +1,2 @@
+DIST textutils-0.16.0.tar.gz 15746 BLAKE2B fa77379886f1eed61d68be5ec33826cefa403e2f32aadde76934d7fbcba335f41257c7db339a7c671d1b6f784585eea580592419c736f10d4f8a643ac6688352 SHA512 860448856cf99388a7c297271c59450d3ebef38fcc0826986f0add442cd633528f4e2b6a4babee567c250716e3fa9535c024550e58d0a082f6677a6378d99760
+DIST textutils-0.17.0.tar.gz 17310 BLAKE2B e124050bb628964d1a064f8914952def2f58fd826f404a293e675c8e50eb31d198061df31a78e5c864601078c36bbad7c04400ff98d67cf51289990a7bea940f SHA512 ad43ae73246922c5c17bd6cdd5e7a20621175422b221ee9a6ba0b1930bd18fa47244fd256069110a9ea4eecd2763b304266b0bad21651527e7cca4042bc6643b
diff --git a/dev-ml/textutils/metadata.xml b/dev-ml/textutils/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/textutils/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/textutils/textutils-0.16.0.ebuild b/dev-ml/textutils/textutils-0.16.0.ebuild
new file mode 100644
index 000000000000..d332adf15d32
--- /dev/null
+++ b/dev-ml/textutils/textutils-0.16.0.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Text output utilities"
+HOMEPAGE="https://github.com/janestreet/textutils"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/core:${SLOT}
+ dev-ml/core_kernel:${SLOT}
+ dev-ml/core_unix:${SLOT}
+ dev-ml/ppx_jane:${SLOT}
+ dev-ml/textutils_kernel:${SLOT}
+ >=dev-ml/uutf-1.0.2:=
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/textutils/textutils-0.17.0-r1.ebuild b/dev-ml/textutils/textutils-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..32b993c6e4de
--- /dev/null
+++ b/dev-ml/textutils/textutils-0.17.0-r1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Text output utilities"
+HOMEPAGE="https://github.com/janestreet/textutils"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ dev-ml/core:${SLOT}[ocamlopt?]
+ dev-ml/core_kernel:${SLOT}[ocamlopt?]
+ dev-ml/core_unix:${SLOT}[ocamlopt?]
+ dev-ml/ppx_jane:${SLOT}[ocamlopt?]
+ >=dev-ml/uutf-1.0.2:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/textutils_kernel/Manifest b/dev-ml/textutils_kernel/Manifest
new file mode 100644
index 000000000000..30b16d07150e
--- /dev/null
+++ b/dev-ml/textutils_kernel/Manifest
@@ -0,0 +1,2 @@
+DIST textutils_kernel-0.16.0.tar.gz 19413 BLAKE2B 3201a051215fdcd38d3f132d8de07712065397a2f534ada3de5e427c40a85deec29fda7a940dff7e5d3dc57dc0acd1f0c6bb9ec1c32f27f6e0b0904540b00a7d SHA512 ea3323c3070ab531484c9ad7ca579fd25a3f9c96ef2a7aebdd824f4de027759d29d52039018a98fdc250159ec566b9c38638d3da7c44df490540076a0c11352f
+DIST textutils_kernel-0.17.0.tar.gz 19590 BLAKE2B d2522b69e098afe1577eece8a78a1df203bf979ee1d0dd90d5f93854c3768b2da237e2a8f40ff3870bd85dee3d23310f924431340d41f9c4a7c509b9fabcde1f SHA512 692c5f37ee4cf9beb28ea64ef018426a6761377552bba42b839f9dc9420adf950fa8cab4939ccbe138a2ecf71625f96a653b513f640bb90498f331d93edb3fe9
diff --git a/dev-ml/textutils_kernel/metadata.xml b/dev-ml/textutils_kernel/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/textutils_kernel/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/textutils_kernel/textutils_kernel-0.16.0.ebuild b/dev-ml/textutils_kernel/textutils_kernel-0.16.0.ebuild
new file mode 100644
index 000000000000..1d51bb5b7213
--- /dev/null
+++ b/dev-ml/textutils_kernel/textutils_kernel-0.16.0.ebuild
@@ -0,0 +1,25 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Text output utilities"
+HOMEPAGE="https://github.com/janestreet/textutils_kernel"
+SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/core:${SLOT}
+ dev-ml/ppx_jane:${SLOT}
+ >=dev-ml/uutf-1.0.2:=
+"
+RDEPEND="${DEPEND}"
+BDEPEND=""
diff --git a/dev-ml/textutils_kernel/textutils_kernel-0.17.0-r1.ebuild b/dev-ml/textutils_kernel/textutils_kernel-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..497fdc1a261c
--- /dev/null
+++ b/dev-ml/textutils_kernel/textutils_kernel-0.17.0-r1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2022-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Text output utilities"
+HOMEPAGE="https://github.com/janestreet/textutils_kernel"
+SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-5
+ dev-ml/core:${SLOT}[ocamlopt?]
+ dev-ml/ppx_jane:${SLOT}[ocamlopt?]
+ >=dev-ml/uutf-1.0.2:=[ocamlopt?]
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/time_now/Manifest b/dev-ml/time_now/Manifest
new file mode 100644
index 000000000000..57f489a7e082
--- /dev/null
+++ b/dev-ml/time_now/Manifest
@@ -0,0 +1,2 @@
+DIST time_now-0.16.0.tar.gz 3729 BLAKE2B df7569be37f608bd3f466dc8da96357d42c7bf48f299dd90543222213bdfad7e40f89f368e7dd5e0c2ee53f2b59d43650bd3006ade9bdfde1261cda26d4c306c SHA512 59c380bc89ac5185e344ef051180270bad62ccc7ad60aec4279aba5f71bae8dae6ac29136a6ca85ad7b24e204615fd84cd7db0901b6550de490e8992301c0ac2
+DIST time_now-0.17.0.tar.gz 4717 BLAKE2B 49f9af322194582c37961ac4f386a757e317563461e0a04c141bcb1abcc3b4f5d4a7f49f5d5aec0580db19c38d980de9e5ad8d3b1e4d573e12a7476e99bbb260 SHA512 d8d4682566b09799d68136ccfe4fb7475136ce62f8b8c63f7ec73b7f1a2dc7ebf0a4466a98cd09094e4c64376f4be233d1de997368c7d37777598e1b30860992
diff --git a/dev-ml/time_now/metadata.xml b/dev-ml/time_now/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/time_now/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/time_now/time_now-0.16.0.ebuild b/dev-ml/time_now/time_now-0.16.0.ebuild
new file mode 100644
index 000000000000..924c2c83fa18
--- /dev/null
+++ b/dev-ml/time_now/time_now-0.16.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Reports the current time"
+HOMEPAGE="https://github.com/janestreet/time_now"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/base:${SLOT}
+ dev-ml/jane-street-headers:${SLOT}
+ dev-ml/jst-config:${SLOT}
+ dev-ml/ppx_base:${SLOT}
+ dev-ml/ppx_enumerate:=
+ dev-ml/ppx_hash:=
+ dev-ml/ppx_optcomp:${SLOT}
+ dev-ml/stdio:=
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-ml/time_now/time_now-0.17.0-r2.ebuild b/dev-ml/time_now/time_now-0.17.0-r2.ebuild
new file mode 100644
index 000000000000..bbec8a37c3a0
--- /dev/null
+++ b/dev-ml/time_now/time_now-0.17.0-r2.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Reports the current time"
+HOMEPAGE="https://github.com/janestreet/time_now"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}*:=[ocamlopt?]
+ =dev-ml/jane-street-headers-${JSM}*:=[ocamlopt?]
+ =dev-ml/jst-config-${JSM}*:=[ocamlopt?]
+ =dev-ml/ppx_base-${JSM}*:=[ocamlopt?]
+ =dev-ml/ppx_optcomp-${JSM}*:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/timezone/Manifest b/dev-ml/timezone/Manifest
new file mode 100644
index 000000000000..27972c9b032f
--- /dev/null
+++ b/dev-ml/timezone/Manifest
@@ -0,0 +1,2 @@
+DIST timezone-0.16.0.tar.gz 9881 BLAKE2B 839cc11605bf8e9215c6629918b5a9423f3f5d67cb896f3b277707dc22e3570c9dd7f264aa0baa43aaace94500cde47915cd20b2fddf04c87bda445714691438 SHA512 d01f9d0b0cca379a6741d0af35e39860d97e620cd2a064d5498b724319a88e8088bdad5df52b2972a234b59678d99821edce4400c889d98857023a8c54149889
+DIST timezone-0.17.0.tar.gz 10007 BLAKE2B 64bf7ebc1d06c224637c33a63f6b402aeecdafc3c627ef91e52241178d8312a39dc7821e6acd578993b5fa203465e62b60f0765b9bd82728c9334763dc76e4e6 SHA512 fdea08d3f8ccec16836ef556c6c719b3dde71cf7061b908518a6dec0d91b9151cc0c85a08b7ba3bdd40a5eaee1d921fa5fcf0d11117d0345d087ef4ab6d4bf73
diff --git a/dev-ml/timezone/metadata.xml b/dev-ml/timezone/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/timezone/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/timezone/timezone-0.16.0-r1.ebuild b/dev-ml/timezone/timezone-0.16.0-r1.ebuild
new file mode 100644
index 000000000000..62801442514b
--- /dev/null
+++ b/dev-ml/timezone/timezone-0.16.0-r1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Time-zone handling for OCaml"
+HOMEPAGE="https://github.com/janestreet/timezone"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/core:${SLOT}
+ dev-ml/ppx_jane:${SLOT}
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/timezone/timezone-0.17.0-r1.ebuild b/dev-ml/timezone/timezone-0.17.0-r1.ebuild
new file mode 100644
index 000000000000..5d6c76acf8d2
--- /dev/null
+++ b/dev-ml/timezone/timezone-0.17.0-r1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Time-zone handling for OCaml"
+HOMEPAGE="https://github.com/janestreet/timezone"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ dev-ml/core:${SLOT}[ocamlopt?]
+ dev-ml/ppx_jane:${SLOT}[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/tiny_httpd/Manifest b/dev-ml/tiny_httpd/Manifest
new file mode 100644
index 000000000000..1a0d60209937
--- /dev/null
+++ b/dev-ml/tiny_httpd/Manifest
@@ -0,0 +1,3 @@
+DIST tiny_httpd-0.16.tar.gz 66034 BLAKE2B 5bbbe87f48b19c2c8519d4c109e2b9eaef0ca5c42f77acdad8f6a216a23f59a68121d03d1ab95762999cb0f7089e0eee36ac0ed11151bbb72d4b9c5ab4314500 SHA512 fea483b931c1431117f7a1d3244749f856982e440d20b64a8d7c6fd841398eec3c7f91afaece707b5a35c0b332a06dde6464337aa1ac7b757f7952047981b130
+DIST tiny_httpd-0.17.0.tar.gz 93730 BLAKE2B f5764bbc224ef3e0f2eaf25771935149ec86f38cdac8e19cc7114d361948f54d3fbbd2c3729a3e3043131b6c7461f6a00ac0d51d409672a242826fe9e1e849a5 SHA512 a891b7920c8b92f1c800e7add57bf1dea20bec3e364af66ea5dda5e46abd9d10dfe4d026a8d76c127761f63a9563df35473bd8df2e8b4f5ed692f7f6a3570f64
+DIST tiny_httpd-0.19.tar.gz 100938 BLAKE2B 01fb06b20627cce48af81db2e5a306e8881d59786580587c3247da4c18786767582269f998a129c3c7688509cfd7fd256589ff509e29240151423a2f572d7575 SHA512 3e8441396bfbeedd2ba44bfb4b759290506ffb58b7bd02fdbbedf6aa8e8975118422c6c9c45643c0ff4b29ede290f596bddcddb35071d2a11b62be82320227e0
diff --git a/dev-ml/tiny_httpd/files/tiny_httpd-0.16-noseq.patch b/dev-ml/tiny_httpd/files/tiny_httpd-0.16-noseq.patch
new file mode 100644
index 000000000000..8862a3361dc9
--- /dev/null
+++ b/dev-ml/tiny_httpd/files/tiny_httpd-0.16-noseq.patch
@@ -0,0 +1,11 @@
+--- a/src/dune 2024-07-01 18:38:15.116581859 +0200
++++ b/src/dune 2024-07-01 18:38:21.807507542 +0200
+@@ -1,7 +1,7 @@
+ (library
+ (name tiny_httpd)
+ (public_name tiny_httpd)
+- (libraries threads seq unix
++ (libraries threads unix
+ (select Tiny_httpd_log.ml from
+ (logs -> Tiny_httpd_log.logs.ml)
+ (-> Tiny_httpd_log.default.ml)))
diff --git a/dev-ml/tiny_httpd/files/tiny_httpd-0.17.0-noseq.patch b/dev-ml/tiny_httpd/files/tiny_httpd-0.17.0-noseq.patch
new file mode 100644
index 000000000000..7c05632bf0e3
--- /dev/null
+++ b/dev-ml/tiny_httpd/files/tiny_httpd-0.17.0-noseq.patch
@@ -0,0 +1,31 @@
+--- a/src/dune 2024-10-20 18:15:24.137632115 +0200
++++ b/src/dune 2024-10-20 18:15:39.144450132 +0200
+@@ -2,5 +2,5 @@
+ (name tiny_httpd)
+ (public_name tiny_httpd)
+ (flags :standard -open Tiny_httpd_core)
+- (libraries threads seq unix hmap tiny_httpd.core tiny_httpd.html
++ (libraries threads unix hmap tiny_httpd.core tiny_httpd.html
+ tiny_httpd.unix))
+--- a/src/core/dune 2024-10-21 12:06:33.365496763 +0200
++++ b/src/core/dune 2024-10-21 12:06:48.673307538 +0200
+@@ -3,7 +3,7 @@
+ (name tiny_httpd_core)
+ (public_name tiny_httpd.core)
+ (private_modules parse_ common_)
+- (libraries threads seq hmap iostream
++ (libraries threads hmap iostream
+ (select log.ml from
+ (logs -> log.logs.ml)
+ (-> log.default.ml))))
+--- a/src/html/dune 2024-10-21 12:07:25.727849443 +0200
++++ b/src/html/dune 2024-10-21 12:07:39.004685307 +0200
+@@ -4,7 +4,7 @@
+ (name tiny_httpd_html)
+ (public_name tiny_httpd.html)
+ (flags :standard -open Tiny_httpd_core)
+- (libraries seq tiny_httpd.core))
++ (libraries tiny_httpd.core))
+
+ (rule
+ (targets html_.ml)
diff --git a/dev-ml/tiny_httpd/files/tiny_httpd-0.19-noseq.patch b/dev-ml/tiny_httpd/files/tiny_httpd-0.19-noseq.patch
new file mode 100644
index 000000000000..47b19279154e
--- /dev/null
+++ b/dev-ml/tiny_httpd/files/tiny_httpd-0.19-noseq.patch
@@ -0,0 +1,31 @@
+--- a/src/dune 2024-10-20 18:15:24.137632115 +0200
++++ b/src/dune 2024-10-20 18:15:39.144450132 +0200
+@@ -4,7 +4,6 @@
+ (flags :standard -open Tiny_httpd_core)
+ (libraries
+ threads
+- seq
+ unix
+ hmap
+ (re_export tiny_httpd.core)
+--- a/src/core/dune 2024-10-21 12:06:33.365496763 +0200
++++ b/src/core/dune 2024-10-21 12:06:48.673307538 +0200
+@@ -4,7 +4,6 @@
+ (private_modules parse_ common_)
+ (libraries
+ threads
+- seq
+ hmap
+ iostream
+ (select
+--- a/src/html/dune 2024-10-21 12:07:25.727849443 +0200
++++ b/src/html/dune 2024-10-21 12:07:39.004685307 +0200
+@@ -2,7 +2,7 @@
+ (name tiny_httpd_html)
+ (public_name tiny_httpd.html)
+ (flags :standard -open Tiny_httpd_core)
+- (libraries seq tiny_httpd.core))
++ (libraries tiny_httpd.core))
+
+ (rule
+ (targets html_.ml)
diff --git a/dev-ml/tiny_httpd/metadata.xml b/dev-ml/tiny_httpd/metadata.xml
new file mode 100644
index 000000000000..c9e2678cfddf
--- /dev/null
+++ b/dev-ml/tiny_httpd/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <use>
+ <flag name="camlzip">Interface to camlzip for tiny_httpd</flag>
+ </use>
+ <upstream>
+ <doc>https://c-cube.github.io/tiny_httpd/</doc>
+ <bugs-to>https://github.com/c-cube/tiny_httpd/issues</bugs-to>
+ <maintainer>
+ <name>Simon Cruanes</name>
+ <email>simon.cruanes.2007@m4x.org</email>
+ </maintainer>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/tiny_httpd/tiny_httpd-0.16-r1.ebuild b/dev-ml/tiny_httpd/tiny_httpd-0.16-r1.ebuild
new file mode 100644
index 000000000000..0da592d250da
--- /dev/null
+++ b/dev-ml/tiny_httpd/tiny_httpd-0.16-r1.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune multiprocessing
+
+DESCRIPTION="Minimal HTTP server with a small request router"
+HOMEPAGE="
+ https://github.com/c-cube/tiny_httpd
+ https://opam.ocaml.org/packages/tiny_httpd
+"
+SRC_URI="https://github.com/c-cube/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64"
+IUSE="camlzip ocamlopt test"
+
+RDEPEND="
+ dev-ml/logs:=[ocamlopt?]
+ dev-ml/result:=[ocamlopt?]
+ camlzip? ( >=dev-ml/camlzip-1.06:=[ocamlopt?] )
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ dev-ml/qtest
+ dev-ml/ounit2
+ dev-ml/ptime
+ dev-ml/qcheck
+ net-misc/curl
+ )
+"
+
+RESTRICT="!test? ( test )"
+REQUIRED_USE="test? ( camlzip )"
+
+PATCHES=( "${FILESDIR}"/${P}-noseq.patch )
+
+src_compile() {
+ local pkgs="tiny_httpd"
+ use camlzip && pkgs="${pkgs},tiny_httpd_camlzip"
+ dune build -p "${pkgs}" -j $(get_makeopts_jobs) || die
+}
+
+src_install() {
+ dune_src_install tiny_httpd
+ use camlzip && dune_src_install "tiny_httpd_camlzip"
+}
diff --git a/dev-ml/tiny_httpd/tiny_httpd-0.17.0.ebuild b/dev-ml/tiny_httpd/tiny_httpd-0.17.0.ebuild
new file mode 100644
index 000000000000..8c30da07f97c
--- /dev/null
+++ b/dev-ml/tiny_httpd/tiny_httpd-0.17.0.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune multiprocessing
+
+DESCRIPTION="Minimal HTTP server with a small request router"
+HOMEPAGE="
+ https://github.com/c-cube/tiny_httpd
+ https://opam.ocaml.org/packages/tiny_httpd
+"
+SRC_URI="https://github.com/c-cube/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64"
+IUSE="camlzip ocamlopt test"
+
+RDEPEND="
+ dev-ml/hmap:=
+ dev-ml/iostream:=[ocamlopt?]
+ dev-ml/logs:=[ocamlopt?]
+ dev-ml/result:=[ocamlopt?]
+ camlzip? ( >=dev-ml/camlzip-1.06:=[ocamlopt?] )
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ dev-ml/qtest
+ dev-ml/ounit2
+ dev-ml/ptime
+ dev-ml/qcheck
+ net-misc/curl
+ )
+"
+
+RESTRICT="!test? ( test )"
+REQUIRED_USE="test? ( camlzip )"
+
+PATCHES=( "${FILESDIR}"/${P}-noseq.patch )
+
+src_compile() {
+ local pkgs="tiny_httpd"
+ use camlzip && pkgs="${pkgs},tiny_httpd_camlzip"
+ dune build -p "${pkgs}" -j $(get_makeopts_jobs) || die
+}
+
+src_install() {
+ dune_src_install tiny_httpd
+ use camlzip && dune_src_install "tiny_httpd_camlzip"
+}
diff --git a/dev-ml/tiny_httpd/tiny_httpd-0.19.ebuild b/dev-ml/tiny_httpd/tiny_httpd-0.19.ebuild
new file mode 100644
index 000000000000..8c30da07f97c
--- /dev/null
+++ b/dev-ml/tiny_httpd/tiny_httpd-0.19.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune multiprocessing
+
+DESCRIPTION="Minimal HTTP server with a small request router"
+HOMEPAGE="
+ https://github.com/c-cube/tiny_httpd
+ https://opam.ocaml.org/packages/tiny_httpd
+"
+SRC_URI="https://github.com/c-cube/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64"
+IUSE="camlzip ocamlopt test"
+
+RDEPEND="
+ dev-ml/hmap:=
+ dev-ml/iostream:=[ocamlopt?]
+ dev-ml/logs:=[ocamlopt?]
+ dev-ml/result:=[ocamlopt?]
+ camlzip? ( >=dev-ml/camlzip-1.06:=[ocamlopt?] )
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ dev-ml/qtest
+ dev-ml/ounit2
+ dev-ml/ptime
+ dev-ml/qcheck
+ net-misc/curl
+ )
+"
+
+RESTRICT="!test? ( test )"
+REQUIRED_USE="test? ( camlzip )"
+
+PATCHES=( "${FILESDIR}"/${P}-noseq.patch )
+
+src_compile() {
+ local pkgs="tiny_httpd"
+ use camlzip && pkgs="${pkgs},tiny_httpd_camlzip"
+ dune build -p "${pkgs}" -j $(get_makeopts_jobs) || die
+}
+
+src_install() {
+ dune_src_install tiny_httpd
+ use camlzip && dune_src_install "tiny_httpd_camlzip"
+}
diff --git a/dev-ml/topkg/Manifest b/dev-ml/topkg/Manifest
new file mode 100644
index 000000000000..251023a51ae1
--- /dev/null
+++ b/dev-ml/topkg/Manifest
@@ -0,0 +1,4 @@
+DIST topkg-1.0.7.tar.gz 123763 BLAKE2B e049b745651261d4167f01523c21018c2fa9e2c8d64f5f6dd5b469f85a293a83a89f00686cefb35f3529056f8023caf28e06ea3284c36c9213c3f5f303849794 SHA512 0f64f6c303592eb04c809d2922549cf25311c90c5ac6c33b70767c47eb31a8dc8296ddedead70c091fc16c30fc7fdf972ba92c7d9e4867afa07dcc1eceaee49f
+DIST topkg-1.0.8.tar.gz 121209 BLAKE2B b87997d1739106a9c617f79f76834dbdb63160cac983774e0844271cb11103d81eebb93810fc2190b4612a1232008031039ac79a624e8f28afebc46dae35a64d SHA512 8d8f08d94a009d13627ebc19e9a778244bf0c2646694c9509b992575f9318db6917f00e6c4bc11f179d899d566cea24b9b09828da2ed6323fc7ffd9e25b395a6
+DIST topkg-1.1.0.tar.gz 121524 BLAKE2B 488b2f810858e33f8d3d21bc73ec82b16df07bc771ed5f322001a9290335d181653a677d03290f2fbf8e5a3fc5c880f27521721e5ce9664a4a8e7eba5059afa3 SHA512 587c3ca9fa7aed81c6387d00eca768f28f0c5b1669517651e8e3415397ba4e719c2f2469e086ae47be053c6ad1f5b0072a4f4922875463d6d8a9d3b6a141c1af
+DIST topkg-1.1.1.tar.gz 121701 BLAKE2B f785664518abb9b5e8056fda0065108720139b213f80b159ef2c5a42b15368369a7a166bec16721c0fb0f432b223ba4ca1aabd8bd768d11861669b02f9328fe6 SHA512 0630155371dbd32f806a0150d03bd80fa7ae400cf15965da709d8eb460163ee085c0fd4a6496eaebef00f30660dc912943714ce9f0b174a86209c9bbc872a095
diff --git a/dev-ml/topkg/metadata.xml b/dev-ml/topkg/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/topkg/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/topkg/topkg-1.0.7.ebuild b/dev-ml/topkg/topkg-1.0.7.ebuild
new file mode 100644
index 000000000000..31d7521572fc
--- /dev/null
+++ b/dev-ml/topkg/topkg-1.0.7.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit findlib
+
+DESCRIPTION="The transitory OCaml software packager"
+HOMEPAGE="http://erratique.ch/software/topkg https://github.com/dbuenzli/topkg"
+SRC_URI="https://github.com/dbuenzli/topkg/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+RDEPEND="dev-ml/result:=
+ dev-ml/ocamlbuild:=
+ dev-ml/findlib:=
+ dev-lang/ocaml:=[ocamlopt?]"
+DEPEND="${RDEPEND}"
+
+src_compile() {
+ ocaml pkg/pkg.ml build --pkg-name ${PN} || die
+}
+
+src_install() {
+ # Can't use opam-installer here as it is an opam dep...
+ findlib_src_preinst
+
+ local nativelibs
+ if use ocamlopt; then
+ nativelibs=$(echo _build/src/${PN}*.cm{x,xa,xs,ti} _build/src/${PN}.a)
+ fi
+
+ ocamlfind install ${PN} _build/pkg/META _build/src/${PN}.mli _build/src/${PN}.cm{a,i} ${nativelibs} || die
+ dodoc CHANGES.md DEVEL.md README.md
+}
diff --git a/dev-ml/topkg/topkg-1.0.8.ebuild b/dev-ml/topkg/topkg-1.0.8.ebuild
new file mode 100644
index 000000000000..2b12a40f5c7d
--- /dev/null
+++ b/dev-ml/topkg/topkg-1.0.8.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit findlib
+
+DESCRIPTION="The transitory OCaml software packager"
+HOMEPAGE="http://erratique.ch/software/topkg https://github.com/dbuenzli/topkg"
+SRC_URI="https://github.com/dbuenzli/topkg/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt"
+
+RDEPEND="dev-ml/result:=
+ dev-ml/ocamlbuild:=
+ dev-ml/findlib:=
+ dev-lang/ocaml:=[ocamlopt?]"
+DEPEND="${RDEPEND}"
+
+src_compile() {
+ ocaml pkg/pkg.ml build --pkg-name ${PN} || die
+}
+
+src_install() {
+ # Can't use opam-installer here as it is an opam dep...
+ findlib_src_preinst
+
+ local nativelibs
+ if use ocamlopt; then
+ nativelibs=$(echo _build/src/${PN}*.cm{x,xa,xs,ti} _build/src/${PN}.a)
+ fi
+
+ ocamlfind install ${PN} _build/pkg/META _build/src/${PN}.mli _build/src/${PN}.cm{a,i} ${nativelibs} || die
+ dodoc CHANGES.md DEVEL.md README.md
+}
diff --git a/dev-ml/topkg/topkg-1.1.0.ebuild b/dev-ml/topkg/topkg-1.1.0.ebuild
new file mode 100644
index 000000000000..2b12a40f5c7d
--- /dev/null
+++ b/dev-ml/topkg/topkg-1.1.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit findlib
+
+DESCRIPTION="The transitory OCaml software packager"
+HOMEPAGE="http://erratique.ch/software/topkg https://github.com/dbuenzli/topkg"
+SRC_URI="https://github.com/dbuenzli/topkg/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt"
+
+RDEPEND="dev-ml/result:=
+ dev-ml/ocamlbuild:=
+ dev-ml/findlib:=
+ dev-lang/ocaml:=[ocamlopt?]"
+DEPEND="${RDEPEND}"
+
+src_compile() {
+ ocaml pkg/pkg.ml build --pkg-name ${PN} || die
+}
+
+src_install() {
+ # Can't use opam-installer here as it is an opam dep...
+ findlib_src_preinst
+
+ local nativelibs
+ if use ocamlopt; then
+ nativelibs=$(echo _build/src/${PN}*.cm{x,xa,xs,ti} _build/src/${PN}.a)
+ fi
+
+ ocamlfind install ${PN} _build/pkg/META _build/src/${PN}.mli _build/src/${PN}.cm{a,i} ${nativelibs} || die
+ dodoc CHANGES.md DEVEL.md README.md
+}
diff --git a/dev-ml/topkg/topkg-1.1.1.ebuild b/dev-ml/topkg/topkg-1.1.1.ebuild
new file mode 100644
index 000000000000..2b12a40f5c7d
--- /dev/null
+++ b/dev-ml/topkg/topkg-1.1.1.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit findlib
+
+DESCRIPTION="The transitory OCaml software packager"
+HOMEPAGE="http://erratique.ch/software/topkg https://github.com/dbuenzli/topkg"
+SRC_URI="https://github.com/dbuenzli/topkg/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt"
+
+RDEPEND="dev-ml/result:=
+ dev-ml/ocamlbuild:=
+ dev-ml/findlib:=
+ dev-lang/ocaml:=[ocamlopt?]"
+DEPEND="${RDEPEND}"
+
+src_compile() {
+ ocaml pkg/pkg.ml build --pkg-name ${PN} || die
+}
+
+src_install() {
+ # Can't use opam-installer here as it is an opam dep...
+ findlib_src_preinst
+
+ local nativelibs
+ if use ocamlopt; then
+ nativelibs=$(echo _build/src/${PN}*.cm{x,xa,xs,ti} _build/src/${PN}.a)
+ fi
+
+ ocamlfind install ${PN} _build/pkg/META _build/src/${PN}.mli _build/src/${PN}.cm{a,i} ${nativelibs} || die
+ dodoc CHANGES.md DEVEL.md README.md
+}
diff --git a/dev-ml/trie/Manifest b/dev-ml/trie/Manifest
new file mode 100644
index 000000000000..fab19ddf825d
--- /dev/null
+++ b/dev-ml/trie/Manifest
@@ -0,0 +1 @@
+DIST trie-1.0.0.tar.gz 2399 BLAKE2B 3f58dbe33686baca2290a413b7d069b8d97ec69546217cefbb6404877b1fec129824da66fbbd6774e069285960ad9dc12380ecd828135ea50d86caa951e0df8b SHA512 1921a42486a0a221e546507287cbf28ccae5462abe55817269517b7b92e19f35031f2d0fba2b1890b97236d6fff11be9d76ade317ae1dfa1089bd4740a46786f
diff --git a/dev-ml/trie/metadata.xml b/dev-ml/trie/metadata.xml
new file mode 100644
index 000000000000..726e43acd4ff
--- /dev/null
+++ b/dev-ml/trie/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/kandu/trie/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/trie/trie-1.0.0.ebuild b/dev-ml/trie/trie-1.0.0.ebuild
new file mode 100644
index 000000000000..d8539a79670d
--- /dev/null
+++ b/dev-ml/trie/trie-1.0.0.ebuild
@@ -0,0 +1,15 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="Strict impure trie tree"
+HOMEPAGE="https://github.com/kandu/trie"
+SRC_URI="https://github.com/kandu/trie/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt"
diff --git a/dev-ml/typerep/Manifest b/dev-ml/typerep/Manifest
new file mode 100644
index 000000000000..2bba726bb0ff
--- /dev/null
+++ b/dev-ml/typerep/Manifest
@@ -0,0 +1,2 @@
+DIST typerep-0.16.0.tar.gz 23002 BLAKE2B d0ec7176b8354a2734b13317f2084eaac154a46567f2286ed33702908afcbe7ceeacbf15cc6fe6fb03ceae4f975d32ff4eeaafe05477abbf11849a0a70e61dd9 SHA512 1a93552b3ba83d0b1fee155a083cf929949089372dc21419a62a0f3ef0ea0171b6294833e3ff06cc718e2cfd761072f1c835f5026a17bb3fb17a0dfc7a23718e
+DIST typerep-0.17.1.tar.gz 23072 BLAKE2B 2d904f1416c34631fe583343095639148dc2454aec3a08590ce41b3702dee935ef958cd3b8aa0b1d90ad0d345c1ee350cc5a36657469469b2107f2a7b9c52bc2 SHA512 e81434ced58ab1cf3cb61d0e2c2106d81c81fe040130cfe07bb79dc3dcc834b1f51dec0faf50e06ccf8cac831e39f31a2ff4ca3dabef7bbaa61f85f13d7f44f5
diff --git a/dev-ml/typerep/metadata.xml b/dev-ml/typerep/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/typerep/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/typerep/typerep-0.16.0-r1.ebuild b/dev-ml/typerep/typerep-0.16.0-r1.ebuild
new file mode 100644
index 000000000000..ee7cd26d8555
--- /dev/null
+++ b/dev-ml/typerep/typerep-0.16.0-r1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Library for creating runtime representation of OCaml types"
+HOMEPAGE="https://github.com/janestreet/typerep"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+DEPEND="dev-ml/base:${SLOT}"
+RDEPEND="${DEPEND}"
+BDEPEND="<dev-lang/ocaml-5"
diff --git a/dev-ml/typerep/typerep-0.17.1-r2.ebuild b/dev-ml/typerep/typerep-0.17.1-r2.ebuild
new file mode 100644
index 000000000000..bca06a5a9a23
--- /dev/null
+++ b/dev-ml/typerep/typerep-0.17.1-r2.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Library for creating runtime representation of OCaml types"
+HOMEPAGE="https://github.com/janestreet/typerep"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}*:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/tyxml/Manifest b/dev-ml/tyxml/Manifest
new file mode 100644
index 000000000000..9103509238d2
--- /dev/null
+++ b/dev-ml/tyxml/Manifest
@@ -0,0 +1,3 @@
+DIST tyxml-4.5.0.tbz 102918 BLAKE2B 28c5f827e6969ce9557a86c976e6925716f30759607a11c027c9c6a63c6078437c84ec565d03a91775223fbb9bef97f7acc0c0bb5677205c7e0af7be601b6e26 SHA512 772535441b09c393d53c27152e65f404a0a541aa0cea1bda899a8d751ab64d1729237e583618c3ff33d75e3865d53503d1ea413c6bbc8c68c413347efd1709b3
+DIST tyxml-4.6.0.tbz 107055 BLAKE2B 51785927d3279ffcab940d42ff4de9a7d797ab7abf78bff80914db0355cb9f2f074310371d55abcb601595b461b718af8837c05fe6beca9b4988010526b6b5ff SHA512 69750eeaf467014282087bf9628f3278f3e5f00f4c7400358750d208664cfc3f79a5cba16767d2935e53477d1a6862fe08c5b801b69052ec12e09d1a93a5e9b4
+DIST tyxml-4.6.0_p20260130.gh.tar.gz 130024 BLAKE2B 28a0454f109dd4f18e934172012fb633e13ad6009c3413a2a1242ef7f57e638aa771f2cdc61dad41d045ea28f4996f51450f7d144211c5ba79135b913fd7cd38 SHA512 26ff9d1af569fe3184eb352fb639a2bf597d83a93b2caabf4c2a7df9a64cd2cbcfac5d3641ccd62ae8798794c9452ffe41d0c58e254750f19e12a7de3be9c665
diff --git a/dev-ml/tyxml/files/tyxml-4.5.0-gentoo.patch b/dev-ml/tyxml/files/tyxml-4.5.0-gentoo.patch
new file mode 100644
index 000000000000..276b7dbc6f10
--- /dev/null
+++ b/dev-ml/tyxml/files/tyxml-4.5.0-gentoo.patch
@@ -0,0 +1,11 @@
+--- a/lib/dune 2022-12-20 22:46:07.612173538 +0100
++++ b/lib/dune 2022-12-20 22:46:17.811016202 +0100
+@@ -5,7 +5,7 @@
+ (modules_without_implementation
+ Xml_sigs Html_sigs Svg_sigs Html_types Svg_types)
+ (synopsis "Statically correct HTML and SVG documents (Functor version)")
+- (libraries uutf re seq)
++ (libraries uutf re)
+ (flags (:standard
+ -safe-string))
+ )
diff --git a/dev-ml/tyxml/metadata.xml b/dev-ml/tyxml/metadata.xml
new file mode 100644
index 000000000000..76883b7f128b
--- /dev/null
+++ b/dev-ml/tyxml/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <longdescription>
+ TyXML provides a set of convenient combinators that uses the OCaml
+ type system to ensure the validity of the generated documents. TyXML
+ can be used with any representation of HTML and SVG: the textual one,
+ provided directly by this package, or DOM trees (js_of_ocaml-tyxml)
+ virtual DOM (virtual-dom) and reactive or replicated trees (eliom).
+ You can also create your own representation and use it to instantiate
+ a new set of combinators.
+ </longdescription>
+ <upstream>
+ <bugs-to>https://github.com/ocsigen/tyxml/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/tyxml/tyxml-4.5.0.ebuild b/dev-ml/tyxml/tyxml-4.5.0.ebuild
new file mode 100644
index 000000000000..192acf0b7965
--- /dev/null
+++ b/dev-ml/tyxml/tyxml-4.5.0.ebuild
@@ -0,0 +1,29 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="A library for building correct HTML and SVG documents"
+HOMEPAGE="https://github.com/ocsigen/tyxml"
+SRC_URI="https://github.com/ocsigen/${PN}/releases/download/${PV}/${P}.tbz"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-ml/markup:=
+ dev-ml/ppxlib:=
+ dev-ml/uutf:=
+ dev-ml/re:="
+DEPEND="${RDEPEND}"
+BDEPEND="test? (
+ dev-ml/alcotest
+ dev-ml/reason
+)"
+
+PATCHES=( "${FILESDIR}"/${P}-gentoo.patch )
diff --git a/dev-ml/tyxml/tyxml-4.6.0.ebuild b/dev-ml/tyxml/tyxml-4.6.0.ebuild
new file mode 100644
index 000000000000..0064acfb4d31
--- /dev/null
+++ b/dev-ml/tyxml/tyxml-4.6.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="A library for building correct HTML and SVG documents"
+HOMEPAGE="https://github.com/ocsigen/tyxml/"
+SRC_URI="https://github.com/ocsigen/${PN}/releases/download/${PV}/${P}.tbz"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-ml/markup:=
+ dev-ml/ppxlib:=
+ dev-ml/uutf:=
+ dev-ml/re:=
+"
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ test? (
+ dev-ml/alcotest
+ dev-ml/reason
+ )
+"
+
+PATCHES=( "${FILESDIR}"/${PN}-4.5.0-gentoo.patch )
diff --git a/dev-ml/tyxml/tyxml-4.6.0_p20260130.ebuild b/dev-ml/tyxml/tyxml-4.6.0_p20260130.ebuild
new file mode 100644
index 000000000000..5a18941cc49d
--- /dev/null
+++ b/dev-ml/tyxml/tyxml-4.6.0_p20260130.ebuild
@@ -0,0 +1,46 @@
+# Copyright 2022-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+[[ ${PV} == *p20260130 ]] && COMMIT=8d351d6176eeb99f71b7d5d66975593117cba7f1
+
+inherit dune
+
+DESCRIPTION="A library for building correct HTML and SVG documents"
+HOMEPAGE="https://github.com/ocsigen/tyxml/"
+
+if [[ "${PV}" == *9999* ]] ; then
+ inherit git-r3
+
+ EGIT_REPO_URI="https://github.com/ocsigen/${PN}"
+else
+ SRC_URI="https://github.com/ocsigen/${PN}/archive/${COMMIT}.tar.gz
+ -> ${P}.gh.tar.gz"
+ S="${WORKDIR}/${PN}-${COMMIT}"
+
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-ml/markup:=
+ dev-ml/ppxlib:=
+ dev-ml/uutf:=
+ dev-ml/re:=
+"
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ test? (
+ dev-ml/alcotest
+ dev-ml/reason
+ )
+"
+
+PATCHES=( "${FILESDIR}"/${PN}-4.5.0-gentoo.patch )
diff --git a/dev-ml/uchar/Manifest b/dev-ml/uchar/Manifest
new file mode 100644
index 000000000000..d3de1b489c67
--- /dev/null
+++ b/dev-ml/uchar/Manifest
@@ -0,0 +1 @@
+DIST uchar-0.0.2.tar.gz 21815 BLAKE2B aede9d42ac2d9ccaa7af2f40799916f30cef0d6e292b7909b5131b5d28c979362b7624a88cec8ba2e7bed1dcada60d8e512ed70d2a02dafcf4ad701c60f6faa6 SHA512 487a9706cf9dfc9b9c94442a51766cc211687d6ebcb4dd3c94d09cb1ed6d7fd61e966e91a4121fe2d1681b2fd6bfee9079d3bccccdb6d65ba2111524ab5dd1bc
diff --git a/dev-ml/uchar/metadata.xml b/dev-ml/uchar/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/uchar/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/uchar/uchar-0.0.2-r1.ebuild b/dev-ml/uchar/uchar-0.0.2-r1.ebuild
new file mode 100644
index 000000000000..d1de236f885c
--- /dev/null
+++ b/dev-ml/uchar/uchar-0.0.2-r1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit edo findlib
+
+DESCRIPTION="Uchar compatibility library"
+HOMEPAGE="https://github.com/ocaml/uchar"
+SRC_URI="https://github.com/ocaml/uchar/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+BDEPEND="dev-ml/ocamlbuild"
+
+# This is mostly a compat wrapper for older ocaml versions we don't support. No
+# need to test it, plus it fails when installing for the first time:
+# https://bugs.gentoo.org/show_bug.cgi?id=624144
+RESTRICT="test"
+
+src_compile() {
+ edo ocaml pkg/build.ml \
+ "native=$(usex ocamlopt true false)" \
+ "native-dynlink=$(usex ocamlopt true false)"
+}
+
+src_test() {
+ edo ocamlbuild -X src -use-ocamlfind -pkg uchar test/testpkg.native
+}
+
+src_install() {
+ # Can't use opam-installer here as it is an opam dep...
+ findlib_src_preinst
+
+ mv _build/pkg/META{.empty,} || die
+ ocamlfind install ${PN} _build/pkg/META || die
+
+ dodoc README.md CHANGES.md
+}
diff --git a/dev-ml/unidecode/Manifest b/dev-ml/unidecode/Manifest
new file mode 100644
index 000000000000..892a54afe5f9
--- /dev/null
+++ b/dev-ml/unidecode/Manifest
@@ -0,0 +1 @@
+DIST unidecode-0.4.0.tar.gz 20571 BLAKE2B 864888e1f3db1a784f847f49584fcb6da93ad30066b8ea5764395b25d3d86c47749a98d13771107dbd6c68dacb2ff4e6e2cb9370e8adb35d84e8149b93122ccd SHA512 a411685ddb1d52585251eff3e2cd56fc9b4e91dcfceff424d7cfd5f721be73561d7a8e9223ecaeeda6178b02e5f6df74d50a49d4ce61d72a7d3fa1e8aefe5cf3
diff --git a/dev-ml/unidecode/files/unidecode-0.4.0-test.patch b/dev-ml/unidecode/files/unidecode-0.4.0-test.patch
new file mode 100644
index 000000000000..039de4e1b564
--- /dev/null
+++ b/dev-ml/unidecode/files/unidecode-0.4.0-test.patch
@@ -0,0 +1,8 @@
+--- a/test/test_data.ml 2021-01-10 22:20:26.800309802 +0100
++++ b/test/test_data.ml 2021-01-10 22:20:36.290138477 +0100
+@@ -46,4 +46,4 @@
+ Norvegi, Finland, Estoni, Latvi, Litva, Pol'cho, Belarous', OUkraina, \
+ Gurji, Azerbaidjan, Kazakhstan, KHitad, Mongol, KHoito Solongos geһen \
+ arban durben gurenuudte khile zourydag, mun ouһaar ANOU-ai Alyaska \
+- mojotoi bolon YApon oulastai khile negetei. "
++ mojotoi bolon YApon oulastai khile negetei."
diff --git a/dev-ml/unidecode/metadata.xml b/dev-ml/unidecode/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/unidecode/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/unidecode/unidecode-0.4.0.ebuild b/dev-ml/unidecode/unidecode-0.4.0.ebuild
new file mode 100644
index 000000000000..9d29160111a3
--- /dev/null
+++ b/dev-ml/unidecode/unidecode-0.4.0.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2019-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit dune
+
+DESCRIPTION="Convert unicode strings into its ASCII representation"
+HOMEPAGE="https://github.com/geneweb/unidecode"
+SRC_URI="https://github.com/geneweb/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm64 x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+DEPEND="test? ( dev-ml/ounit2 )"
+
+PATCHES=( "${FILESDIR}"/${P}-test.patch )
+
+src_install() {
+ dune_src_install
+ mv "${D}"/usr/bin/unidecode{,-gw} || die
+}
diff --git a/dev-ml/uopt/Manifest b/dev-ml/uopt/Manifest
new file mode 100644
index 000000000000..4e83cef130a4
--- /dev/null
+++ b/dev-ml/uopt/Manifest
@@ -0,0 +1 @@
+DIST uopt-0.17.0.tar.gz 5880 BLAKE2B d1e18fafad21ad98d7d5a7f2c39121c6b097a3f295616a6ebc33c438452f2c35e1d6040a5bf893d3d4e889e3783283f36c7571b3b676f5dd81517b2a2ede49a3 SHA512 ccee93d326f3ceb9d844b3470f27d7f1eb7fd20818be564557293373c544ac2dc6d1db48f1972f5525a11c7976711eb903dd4be0afd17c9b0118dc62be193811
diff --git a/dev-ml/uopt/metadata.xml b/dev-ml/uopt/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/uopt/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/uopt/uopt-0.17.0-r2.ebuild b/dev-ml/uopt/uopt-0.17.0-r2.ebuild
new file mode 100644
index 000000000000..3fdc86078f13
--- /dev/null
+++ b/dev-ml/uopt/uopt-0.17.0-r2.ebuild
@@ -0,0 +1,25 @@
+# Copyright 2024-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="An [option]-like type that incurs no allocation"
+HOMEPAGE="https://github.com/janestreet/uopt"
+SRC_URI="https://github.com/janestreet/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}*:=[ocamlopt?]
+ =dev-ml/ppx_jane-${JSM}*:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/uri/Manifest b/dev-ml/uri/Manifest
new file mode 100644
index 000000000000..941ddeea5253
--- /dev/null
+++ b/dev-ml/uri/Manifest
@@ -0,0 +1 @@
+DIST uri-4.4.0.tbz 202806 BLAKE2B 2ccd320d594995ceb820afe733faaabddd4cff4e3b84842a37b754816be1dbf1c5cbaa2aaaabe68621b61e104d68eb44fbcaa1ec691b14b86a49ce8c82b97fc5 SHA512 88374143e0d8aaf6d40aa3cbd7593f9832e9c9727738c6e651498125150c83d5646e13b5737d5c3e81484dd041127f67f8acea13fdc0300ac4e46107559f8ae2
diff --git a/dev-ml/uri/metadata.xml b/dev-ml/uri/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/uri/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/uri/uri-4.4.0-r1.ebuild b/dev-ml/uri/uri-4.4.0-r1.ebuild
new file mode 100644
index 000000000000..bd12b14ac2af
--- /dev/null
+++ b/dev-ml/uri/uri-4.4.0-r1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit dune
+
+DESCRIPTION="An RFC3986 URI/URL parsing library"
+HOMEPAGE="https://github.com/mirage/ocaml-uri"
+SRC_URI="https://github.com/mirage/ocaml-uri/releases/download/v${PV}/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="amd64 arm64 x86"
+IUSE="+ocamlopt"
+RESTRICT="test"
+
+RDEPEND="
+ dev-ml/angstrom:=[ocamlopt?]
+ dev-ml/core_bench:=[ocamlopt?]
+ dev-ml/core_unix:=[ocamlopt?]
+ dev-ml/stringext:=[ocamlopt?]
+ dev-ml/textutils:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/utop/Manifest b/dev-ml/utop/Manifest
new file mode 100644
index 000000000000..8b3fc3190a52
--- /dev/null
+++ b/dev-ml/utop/Manifest
@@ -0,0 +1,2 @@
+DIST utop-2.16.0.tar.gz 419311 BLAKE2B cbba69b7d90e25250f1a47a2cef6863ac59bc38ab2fe27c5108dcd0e9e36757a5e4368bd918cd444fcc48163e181521814c39e67cd47116f3bbbfea32af90f32 SHA512 0f6a7a85e9bbb442b217f5c28228c65fc63bafa033d178b696d461a200ef52d0d6c4f9b4ef04337e24dcd88bcf246f8163bd4851baa35a9c9e8de3aaee4d062d
+DIST utop-2.17.0.gh.tar.gz 421273 BLAKE2B 8b882f30d6d2af3e83269d17fa49204caba15dfab4800f434ab01bafe8ee1ae8c5ca4b05fd51b6f06f2e936764b4dee67d246816b05cb908998741d4d56aa625 SHA512 0d4665f72379ef7d294517a3e3cd4e6facb109a59faa6df71fa7f9837664771a919639f035ddc41f51a60cfd4fc03c911d87c20b943a601e0abc3a1248140eab
diff --git a/dev-ml/utop/files/50utop-gentoo.el b/dev-ml/utop/files/50utop-gentoo.el
new file mode 100644
index 000000000000..958c8398e602
--- /dev/null
+++ b/dev-ml/utop/files/50utop-gentoo.el
@@ -0,0 +1,3 @@
+(add-to-list 'load-path "@SITELISP@")
+(autoload 'utop "utop"
+ "A universal toplevel for OCaml." t)
diff --git a/dev-ml/utop/metadata.xml b/dev-ml/utop/metadata.xml
new file mode 100644
index 000000000000..c48d894fa5bd
--- /dev/null
+++ b/dev-ml/utop/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <longdescription>
+ utop is an improved toplevel (i.e., Read-Eval-Print Loop or REPL) for
+ OCaml. It can run in a terminal or in Emacs. It supports line edition,
+ history, real-time and context sensitive completion, colors, and more.
+ It integrates with the Tuareg mode in Emacs.
+ </longdescription>
+ <upstream>
+ <bugs-to>https://github.com/ocaml-community/utop/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/utop/utop-2.16.0.ebuild b/dev-ml/utop/utop-2.16.0.ebuild
new file mode 100644
index 000000000000..f4048a3fddf3
--- /dev/null
+++ b/dev-ml/utop/utop-2.16.0.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune elisp-common
+
+DESCRIPTION="Universal toplevel for OCaml"
+HOMEPAGE="https://github.com/ocaml-community/utop"
+SRC_URI="https://github.com/ocaml-community/utop/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="emacs +ocamlopt test"
+
+ELISP_DEPEND="
+ emacs? (
+ >=app-editors/emacs-24:*
+ >=app-emacs/tuareg-mode-2.2.0
+ )
+"
+DEPEND="
+ dev-ml/lambda-term:=[ocamlopt?]
+ dev-ml/logs:=[ocamlopt?]
+ dev-ml/lwt:=[ocamlopt?]
+ dev-ml/react:=
+ dev-ml/xdg:=[ocamlopt?]
+ dev-ml/zed:=[ocamlopt?]
+"
+RDEPEND="
+ ${DEPEND}
+ ${ELISP_DEPEND}
+"
+BDEPEND="
+ dev-ml/cppo
+ dev-ml/findlib
+ ${ELISP_DEPEND}
+ test? ( dev-ml/alcotest )
+"
+
+RESTRICT="!test? ( test )"
+
+SITEFILE="50${PN}-gentoo.el"
+
+src_compile() {
+ dune_src_compile
+
+ use emacs &&
+ BYTECOMPFLAGS="-L src/top" elisp-compile src/top/*.el
+}
+
+src_install() {
+ dune_src_install
+
+ if use emacs ; then
+ elisp-install ${PN} src/top/*.el{,c}
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+ fi
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/dev-ml/utop/utop-2.17.0.ebuild b/dev-ml/utop/utop-2.17.0.ebuild
new file mode 100644
index 000000000000..690ec1cc9466
--- /dev/null
+++ b/dev-ml/utop/utop-2.17.0.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune elisp-common
+
+DESCRIPTION="Universal toplevel for OCaml"
+HOMEPAGE="https://github.com/ocaml-community/utop"
+
+if [[ "${PV}" == *9999* ]] ; then
+ inherit git-r3
+
+ EGIT_REPO_URI="https://github.com/ocaml-community/${PN}"
+else
+ SRC_URI="https://github.com/ocaml-community/${PN}/archive/refs/tags/${PV}.tar.gz
+ -> ${P}.gh.tar.gz"
+
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+IUSE="emacs +ocamlopt test"
+RESTRICT="!test? ( test )"
+
+ELISP_DEPEND="
+ emacs? (
+ >=app-editors/emacs-24:*
+ >=app-emacs/tuareg-mode-2.2.0
+ )
+"
+DEPEND="
+ dev-ml/lambda-term:=[ocamlopt?]
+ dev-ml/logs:=[ocamlopt?]
+ dev-ml/lwt:=[ocamlopt?]
+ dev-ml/react:=
+ dev-ml/xdg:=[ocamlopt?]
+ dev-ml/zed:=[ocamlopt?]
+"
+RDEPEND="
+ ${DEPEND}
+ ${ELISP_DEPEND}
+"
+BDEPEND="
+ dev-ml/cppo
+ dev-ml/findlib
+ ${ELISP_DEPEND}
+ test? ( dev-ml/alcotest )
+"
+
+SITEFILE="50${PN}-gentoo.el"
+
+src_compile() {
+ dune_src_compile
+
+ if use emacs ; then
+ local BYTECOMPFLAGS="-L src/top"
+ elisp-compile src/top/*.el
+ fi
+}
+
+src_install() {
+ dune_src_install
+
+ if use emacs ; then
+ elisp-install ${PN} src/top/*.el{,c}
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+ fi
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/dev-ml/uucp/Manifest b/dev-ml/uucp/Manifest
new file mode 100644
index 000000000000..ee58f0769859
--- /dev/null
+++ b/dev-ml/uucp/Manifest
@@ -0,0 +1,2 @@
+DIST uucp-16.0.0.tbz 509732 BLAKE2B a9618c15c7460d350707c34b0413fc472999dd2b597f543564e3d26db13d03c28288ea37ba10046d514a5508e6c2050f0a8504033d35be65bb3c0143fc91e120 SHA512 5c06d8cadb2b011b1e4ac52e14732044f6ab8e9c11e1184950ff8629b26bd173f1264247623a635b8aa4033e287bfe42d709994f19a3d79f7cbfd20158aa4992
+DIST uucp-17.0.0.tbz 516263 BLAKE2B f29fb762002c14b86486d574438d064183b03c4f42d7d5853764ce1b708ab456af54ef4fa3748272d1e3e57048248ac3a9a7971a86e5a1f07c467204e72c2ca6 SHA512 c2b5c883c2ed1ee8e7bc9102339dfbca5940e68cd2af59a10abc827fb64c91ad03f85cfc12d4c79605c10e9b3a90743267af8b069143fefeeff6658ec8ed843f
diff --git a/dev-ml/uucp/metadata.xml b/dev-ml/uucp/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/uucp/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/uucp/uucp-16.0.0.ebuild b/dev-ml/uucp/uucp-16.0.0.ebuild
new file mode 100644
index 000000000000..ee7844146298
--- /dev/null
+++ b/dev-ml/uucp/uucp-16.0.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2019-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit opam
+
+DESCRIPTION="Unicode character properties for OCaml"
+HOMEPAGE="https://erratique.ch/software/uucp https://github.com/dbuenzli/uucp"
+SRC_URI="https://erratique.ch/software/uucp/releases/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm64 x86"
+
+DEPEND="
+ dev-ml/topkg
+ dev-ml/findlib
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ dev-ml/ocamlbuild
+"
+
+OPAM_FILE="opam"
+
+src_compile() {
+ ocaml pkg/pkg.ml build \
+ --with-uunf false \
+ --with-cmdliner true \
+ || die "failed to run the pkg/pkg.ml ocaml compilation script"
+}
diff --git a/dev-ml/uucp/uucp-17.0.0.ebuild b/dev-ml/uucp/uucp-17.0.0.ebuild
new file mode 100644
index 000000000000..631bc68a4922
--- /dev/null
+++ b/dev-ml/uucp/uucp-17.0.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2019-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit opam
+
+DESCRIPTION="Unicode character properties for OCaml"
+HOMEPAGE="https://erratique.ch/software/uucp https://github.com/dbuenzli/uucp"
+SRC_URI="https://erratique.ch/software/uucp/releases/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+DEPEND="
+ dev-ml/topkg
+ dev-ml/findlib
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ dev-ml/ocamlbuild
+"
+
+OPAM_FILE="opam"
+
+src_compile() {
+ ocaml pkg/pkg.ml build \
+ --with-uunf false \
+ --with-cmdliner true \
+ || die "failed to run the pkg/pkg.ml ocaml compilation script"
+}
diff --git a/dev-ml/uuidm/Manifest b/dev-ml/uuidm/Manifest
new file mode 100644
index 000000000000..999fd58b06cb
--- /dev/null
+++ b/dev-ml/uuidm/Manifest
@@ -0,0 +1,4 @@
+DIST uuidm-0.9.10.tar.gz 14203 BLAKE2B 55f1ccca49d0020f28b5d271fc403d93bccf375dd9372ac1f8e8f1fe24aaaf3707e94a5250fc1269c4cf35428c5d2ebd093f1d7c5f3c53ce5f45ec28bfcf8e41 SHA512 a898397e99226e21138b37399483a7924864dae00707e148653f6a42fe293e2a9ac8ac66d11176dec3b5b316ebf07e2e0d90068de90bec51946e6812b6b41aab
+DIST uuidm-0.9.7.tar.gz 9258 BLAKE2B 37867ee562fcf5c44e0f40df53707a5066d74c185037049b4b4034326e1efa93543d518f6c9d5d27e9663f18d824f951d27952c844e1169d951abb7b91caeebb SHA512 7048e467bbd9eefd19ca057caadcc8f634d4eae7642665a84df88f726df3fb849085613d75a485272b0d0e19c9041c560a8c864e780dbed29ff68e3cfa8ba3d4
+DIST uuidm-0.9.8.tar.gz 10079 BLAKE2B d441380dc3a4e326f777b2f9ed313cf3c27213ca5e1a02197fff40e3422df12a3451badf732b3dfae00eb8feb9fc72c137c9d5b0c20f7df4c17494d903e1b65c SHA512 af3ca7faa7eba04c4078ddc43eee6cd8a1e210127e18d1d97fbdd00b98729caab0b52a6a05c090061e05656ef321c5e07bab13113e656c5c8b5285f193f070a8
+DIST uuidm-0.9.9.tar.gz 14007 BLAKE2B 815197aae4f3ae47b70b33a13d73ae6e4461722f93dcb3baf83096837c3f075fa5297bc92edd07fd3b6be743bb29d72482228d8da7301f6bbd65c6325db736cb SHA512 432e95fa8167403794db63eb116f7c3695cb680b4b6141dd11f490a3b566bc4f736b2741ad55d40c040f2ec7515b91d0ada4618d1e7689d6e4f270ac57153f13
diff --git a/dev-ml/uuidm/metadata.xml b/dev-ml/uuidm/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/uuidm/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/uuidm/uuidm-0.9.10.ebuild b/dev-ml/uuidm/uuidm-0.9.10.ebuild
new file mode 100644
index 000000000000..236a7e470587
--- /dev/null
+++ b/dev-ml/uuidm/uuidm-0.9.10.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit opam
+
+DESCRIPTION="Universally unique identifiers (UUIDs) for OCaml"
+HOMEPAGE="https://github.com/dbuenzli/uuidm/"
+SRC_URI="https://github.com/dbuenzli/uuidm/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt"
+
+BDEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/findlib[ocamlopt=]
+ dev-ml/ocamlbuild[ocamlopt=]
+ dev-ml/topkg
+"
+
+src_compile() {
+ ocaml pkg/pkg.ml build || die
+}
diff --git a/dev-ml/uuidm/uuidm-0.9.7.ebuild b/dev-ml/uuidm/uuidm-0.9.7.ebuild
new file mode 100644
index 000000000000..0b5f822012b1
--- /dev/null
+++ b/dev-ml/uuidm/uuidm-0.9.7.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit opam
+
+DESCRIPTION="Universally unique identifiers (UUIDs) for OCaml"
+HOMEPAGE="https://github.com/dbuenzli/uuidm"
+SRC_URI="https://github.com/dbuenzli/uuidm/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+BDEPEND="
+ dev-ml/findlib[ocamlopt=]
+ dev-ml/ocamlbuild[ocamlopt=]
+ dev-ml/topkg
+"
+
+src_compile() {
+ ocaml pkg/pkg.ml build || die
+}
diff --git a/dev-ml/uuidm/uuidm-0.9.8.ebuild b/dev-ml/uuidm/uuidm-0.9.8.ebuild
new file mode 100644
index 000000000000..e4f14dcb3397
--- /dev/null
+++ b/dev-ml/uuidm/uuidm-0.9.8.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit opam
+
+DESCRIPTION="Universally unique identifiers (UUIDs) for OCaml"
+HOMEPAGE="https://github.com/dbuenzli/uuidm/"
+SRC_URI="https://github.com/dbuenzli/uuidm/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+BDEPEND="
+ dev-ml/findlib[ocamlopt=]
+ dev-ml/ocamlbuild[ocamlopt=]
+ dev-ml/topkg
+"
+
+src_compile() {
+ ocaml pkg/pkg.ml build || die
+}
diff --git a/dev-ml/uuidm/uuidm-0.9.9.ebuild b/dev-ml/uuidm/uuidm-0.9.9.ebuild
new file mode 100644
index 000000000000..d09999e9f6dc
--- /dev/null
+++ b/dev-ml/uuidm/uuidm-0.9.9.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit opam
+
+DESCRIPTION="Universally unique identifiers (UUIDs) for OCaml"
+HOMEPAGE="https://github.com/dbuenzli/uuidm/"
+SRC_URI="https://github.com/dbuenzli/uuidm/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="+ocamlopt"
+
+BDEPEND="
+ dev-ml/findlib[ocamlopt=]
+ dev-ml/ocamlbuild[ocamlopt=]
+ dev-ml/topkg
+"
+
+src_compile() {
+ ocaml pkg/pkg.ml build || die
+}
diff --git a/dev-ml/uunf/Manifest b/dev-ml/uunf/Manifest
new file mode 100644
index 000000000000..477ff147f838
--- /dev/null
+++ b/dev-ml/uunf/Manifest
@@ -0,0 +1,3 @@
+DIST uunf-15.1.0.tbz 43837 BLAKE2B 1af584fd25f1a1c0f15ba999ab11f155c607fdb54b208094d5586a274b54a823dab94a655ae0d80f6f75b90e1ef42d36295dc03dfb82d4c91fd9b6230689cb11 SHA512 1df1edbcb37da80e6d96eedd5e01c43c81275eca727a53d91a777d01f30cf0b964968c7be1d943e574e40ad4acb75c86e42976b3048dacb2c798b38475d0a6d0
+DIST uunf-16.0.0.tbz 44311 BLAKE2B 568801f6c2732f83cb9463a1de24a205380305980da8fd9d09463ddb0f5d070a90044416387de30c1ebd1801e64034beee5296013305558f123cc38f351b1f37 SHA512 55e6aa2c0190667467744991839ae1024aa539fc94d9b8dcbaf8fdefed4f77a274acd22f79354b48b4a7582f308dbaadf14991ffee0c2aaf6e16f8efd538b756
+DIST uunf-17.0.0.tbz 44269 BLAKE2B 92a77e86347c629f1312aebe081e15c263b94e7da754bb96b150ff0a403965b58ce361672f531dd607ab929b6ea6a55e487cceac8b563b552ac404d696d358d8 SHA512 1ec4d7229bb473ab2dd146ec732c8c70f357f73211e71d32625cd2410a35766e684bbeb1bd4e186b7403d4af8d597d46b7ccf58b23ae95aac32a96c0b4321691
diff --git a/dev-ml/uunf/metadata.xml b/dev-ml/uunf/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/uunf/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/uunf/uunf-15.1.0-r1.ebuild b/dev-ml/uunf/uunf-15.1.0-r1.ebuild
new file mode 100644
index 000000000000..fcbb6d3d29fa
--- /dev/null
+++ b/dev-ml/uunf/uunf-15.1.0-r1.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2019-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit opam
+
+DESCRIPTION="Unicode text normalization"
+HOMEPAGE="https://erratique.ch/software/uunf https://github.com/dbuenzli/uunf"
+SRC_URI="https://erratique.ch/software/uunf/releases/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="amd64 x86"
+
+DEPEND="
+ dev-ml/cmdliner:=
+ dev-ml/topkg:=
+ dev-ml/uchar:=
+ dev-ml/uutf:=
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ dev-ml/findlib
+"
+
+OPAM_FILE="opam"
+
+src_compile() {
+ # Increase stack limit to 11GiB to avoid stack overflow error.
+ # bug #798270
+ ulimit -s 11530000
+
+ ocaml pkg/pkg.ml build \
+ || die "failed to run the pkg/pkg.ml ocaml compilation script"
+}
diff --git a/dev-ml/uunf/uunf-16.0.0.ebuild b/dev-ml/uunf/uunf-16.0.0.ebuild
new file mode 100644
index 000000000000..837662bfbc17
--- /dev/null
+++ b/dev-ml/uunf/uunf-16.0.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2019-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit opam
+
+DESCRIPTION="Unicode text normalization"
+HOMEPAGE="https://erratique.ch/software/uunf https://github.com/dbuenzli/uunf"
+SRC_URI="https://erratique.ch/software/uunf/releases/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 arm64 ~x86"
+
+DEPEND="
+ dev-ml/cmdliner:=
+ dev-ml/topkg:=
+ dev-ml/uchar:=
+ dev-ml/uutf:=
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ dev-ml/findlib
+"
+
+OPAM_FILE="opam"
+
+src_compile() {
+ # Increase stack limit to 11GiB to avoid stack overflow error.
+ # bug #798270
+ ulimit -s 11530000
+
+ ocaml pkg/pkg.ml build \
+ || die "failed to run the pkg/pkg.ml ocaml compilation script"
+}
diff --git a/dev-ml/uunf/uunf-17.0.0.ebuild b/dev-ml/uunf/uunf-17.0.0.ebuild
new file mode 100644
index 000000000000..ec8395619fda
--- /dev/null
+++ b/dev-ml/uunf/uunf-17.0.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2019-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit opam
+
+DESCRIPTION="Unicode text normalization"
+HOMEPAGE="https://erratique.ch/software/uunf https://github.com/dbuenzli/uunf"
+SRC_URI="https://erratique.ch/software/uunf/releases/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+DEPEND="
+ dev-ml/cmdliner:=
+ >=dev-ml/topkg-1.1.0:=
+ dev-ml/uchar:=
+ dev-ml/uutf:=
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ dev-ml/findlib
+"
+
+OPAM_FILE="opam"
+
+src_compile() {
+ # Increase stack limit to 11GiB to avoid stack overflow error.
+ # bug #798270
+ ulimit -s 11530000
+
+ ocaml pkg/pkg.ml build \
+ || die "failed to run the pkg/pkg.ml ocaml compilation script"
+}
diff --git a/dev-ml/uuseg/Manifest b/dev-ml/uuseg/Manifest
new file mode 100644
index 000000000000..cd2a5ae4987f
--- /dev/null
+++ b/dev-ml/uuseg/Manifest
@@ -0,0 +1,3 @@
+DIST uuseg-15.0.0.tar.gz 25540 BLAKE2B 4ee1512bde79aab4777395d3ccfb8fe76c97ba7e93b722acd7c36acac432a44a9eade512ea45a0204a1d947a60e3d61773de05890d64d7afac4b1965d1493bb3 SHA512 c117868d52ca8f5de3104b0ea25ea011c19cefd53018c4d9bdf900185d04f74c097b7f129b75366a8da905a79dac3cbf8e6c66ff6c20fee1c2e42b9cdd6a9fa6
+DIST uuseg-16.0.0.tar.gz 25725 BLAKE2B 17fda7018037a82fc053424aa499bda7c476a6575993bc2b37d87da1e1c0d203900f206308617ae8f080f6db978c7cc3fd87f344de8841f28df41b067291de5f SHA512 89a91eb83407daea72f664e093adf338e18b5b1f8ea030eecef49ae1ccfd660bf38f86edf74a0907a33540dfc12acfaafd038f894a74718cabe009a0177e58ce
+DIST uuseg-17.0.0.tar.gz 26444 BLAKE2B c54adef4411e041a9a454f75a1d41b54706165ed75d93ed963d1b3cf774c8a9fafdd9e486ad5fc9e87d762414e7720eeb22c407a0c953dae6370daef27fc6e01 SHA512 5b05410076916e56b677afb24294e814cdc15cc6f2bfba1ef2e23322ff412936b3c7522e7bd4c21be1db017f4fd4b7aa39368ea13ecf8e0b907022b3c1d3dfe2
diff --git a/dev-ml/uuseg/metadata.xml b/dev-ml/uuseg/metadata.xml
new file mode 100644
index 000000000000..3f23f71e6310
--- /dev/null
+++ b/dev-ml/uuseg/metadata.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <longdescription>
+ Uuseg is an OCaml library for segmenting Unicode text. It implements the
+ locale independent Unicode text segmentation algorithms to detect grapheme
+ cluster, word and sentence boundaries and the Unicode line breaking
+ algorithm to detect line break opportunities. The library is independent
+ from any IO mechanism or Unicode text data structure and it can process
+ text without a complete in-memory representation. Uuseg depends on Uucp and
+ optionally on Uutf for support on OCaml UTF-X encoded strings. It is
+ distributed under the ISC license.
+ </longdescription>
+ <upstream>
+ <bugs-to>https://github.com/dbuenzli/uuseg/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/uuseg/uuseg-15.0.0.ebuild b/dev-ml/uuseg/uuseg-15.0.0.ebuild
new file mode 100644
index 000000000000..d3dd9d062ae2
--- /dev/null
+++ b/dev-ml/uuseg/uuseg-15.0.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit opam
+
+DESCRIPTION="Unicode text segmentation for OCaml"
+HOMEPAGE="https://erratique.ch/software/uuseg/
+ https://github.com/dbuenzli/uuseg/"
+SRC_URI="https://github.com/dbuenzli/uuseg/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-ml/cmdliner:=
+ dev-ml/uucp:=
+ dev-ml/uutf:=
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-ml/ocamlbuild
+ dev-ml/findlib
+ dev-ml/topkg
+"
+
+src_compile() {
+ ocaml pkg/pkg.ml build --tests $(usex test true false) || die
+}
+
+src_test() {
+ ocaml pkg/pkg.ml test || die
+}
diff --git a/dev-ml/uuseg/uuseg-16.0.0.ebuild b/dev-ml/uuseg/uuseg-16.0.0.ebuild
new file mode 100644
index 000000000000..21daa1c5d3d2
--- /dev/null
+++ b/dev-ml/uuseg/uuseg-16.0.0.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit opam
+
+DESCRIPTION="Unicode text segmentation for OCaml"
+HOMEPAGE="https://erratique.ch/software/uuseg/
+ https://github.com/dbuenzli/uuseg/"
+SRC_URI="https://github.com/dbuenzli/uuseg/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="test"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.14:=
+ dev-ml/cmdliner:=[ocamlopt?]
+ dev-ml/uucp:=
+ dev-ml/uutf:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-ml/ocamlbuild
+ dev-ml/findlib
+ dev-ml/topkg
+"
+
+src_compile() {
+ ocaml pkg/pkg.ml build --tests $(usex test true false) || die
+}
+
+src_test() {
+ ocaml pkg/pkg.ml test || die
+}
diff --git a/dev-ml/uuseg/uuseg-17.0.0.ebuild b/dev-ml/uuseg/uuseg-17.0.0.ebuild
new file mode 100644
index 000000000000..87c1946c7382
--- /dev/null
+++ b/dev-ml/uuseg/uuseg-17.0.0.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit opam
+
+DESCRIPTION="Unicode text segmentation for OCaml"
+HOMEPAGE="https://erratique.ch/software/uuseg/
+ https://github.com/dbuenzli/uuseg/"
+SRC_URI="https://github.com/dbuenzli/uuseg/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="test"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.14:=
+ dev-ml/cmdliner:=[ocamlopt?]
+ =dev-ml/uucp-17*:=
+ dev-ml/uutf:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-ml/ocamlbuild
+ dev-ml/findlib
+ dev-ml/topkg
+"
+
+src_compile() {
+ ocaml pkg/pkg.ml build --tests $(usex test true false) || die
+}
+
+src_test() {
+ ocaml pkg/pkg.ml test || die
+}
diff --git a/dev-ml/uutf/Manifest b/dev-ml/uutf/Manifest
new file mode 100644
index 000000000000..ef26e1fa90f2
--- /dev/null
+++ b/dev-ml/uutf/Manifest
@@ -0,0 +1,2 @@
+DIST uutf-1.0.3.tbz 23363 BLAKE2B fe35596a3c3590df38f34219ac577d34c0899c006087cb015e971002fff0d193d7fdc281d0bc3abe2fd440e7da11cc27d10b0356f9eb73e1a2c647fd0b672bf6 SHA512 50cc4486021da46fb08156e9daec0d57b4ca469b07309c508d5a9a41e9dbcf1f32dec2ed7be027326544453dcaf9c2534919395fd826dc7768efc6cc4bfcc9f8
+DIST uutf-1.0.4.tbz 23013 BLAKE2B ba49056d05f98d804aebd3d4ea81f32a21995ea565aa86efd1ee82c997a61c00a135e42817af14787a3d908f5962a7b2238244ba12ffd8ada7835e63048dff78 SHA512 e35f408bc971cd8da3077e6c3321e0d8f4eb569898e0e219fde62dae78fbd0a0095cb7f036287656f6a1b346584f7b9f0c6dec0a5a092180da36e43247027598
diff --git a/dev-ml/uutf/metadata.xml b/dev-ml/uutf/metadata.xml
new file mode 100644
index 000000000000..d4b89db524ac
--- /dev/null
+++ b/dev-ml/uutf/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <use>
+ <flag name="utftrip">Builds and install the utftrip executable: Among other things, reads unicode on stdin and rewrites it on stdout.</flag>
+ </use>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/uutf/uutf-1.0.3-r2.ebuild b/dev-ml/uutf/uutf-1.0.3-r2.ebuild
new file mode 100644
index 000000000000..a6106eb6bec0
--- /dev/null
+++ b/dev-ml/uutf/uutf-1.0.3-r2.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit findlib
+
+DESCRIPTION="Non-blocking streaming Unicode codec for OCaml"
+HOMEPAGE="https://erratique.ch/software/uutf"
+SRC_URI="https://erratique.ch/software/uutf/releases/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="doc utftrip +ocamlopt test"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="utftrip? ( ocamlopt )"
+
+RDEPEND="
+ dev-ml/uchar:=
+ utftrip? ( <dev-ml/cmdliner-2.0.0:=[ocamlopt?] )"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-ml/ocamlbuild
+ dev-ml/topkg
+ test? ( dev-ml/cmdliner[ocamlopt?] )"
+
+DOCS=( CHANGES.md README.md )
+
+src_compile() {
+ ocaml pkg/pkg.ml build \
+ --with-cmdliner "$(usex utftrip true false)" \
+ --tests "$(usex test true false)" \
+ || die
+}
+
+src_test() {
+ if use ocamlopt ; then
+ pushd _build/test || die
+ ./test.native || die
+ # Rebuild to avoid mismatches between installed files, bug #604674
+ popd || die
+ ocaml pkg/pkg.ml build \
+ --with-cmdliner "$(usex utftrip true false)" \
+ || die
+ else
+ ewarn "Sorry, ${PN} tests require native support (ocamlopt)"
+ fi
+}
+
+src_install() {
+ # Can't use opam-installer here as it is an opam dep...
+ findlib_src_preinst
+ local nativelibs=""
+
+ use ocamlopt &&
+ nativelibs="$(echo _build/src/uutf.cm{x,xa,xs} _build/src/uutf.a)"
+ ocamlfind install uutf _build/pkg/META _build/src/uutf.mli _build/src/uutf.cm{a,i} ${nativelibs} || die
+ use utftrip &&
+ newbin _build/test/utftrip.$(usex ocamlopt native byte) utftrip
+
+ einstalldocs
+ if use doc ; then
+ docinto html
+ dodoc -r doc/*
+ fi
+}
diff --git a/dev-ml/uutf/uutf-1.0.4-r1.ebuild b/dev-ml/uutf/uutf-1.0.4-r1.ebuild
new file mode 100644
index 000000000000..a1671a840ccd
--- /dev/null
+++ b/dev-ml/uutf/uutf-1.0.4-r1.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit findlib
+
+DESCRIPTION="Non-blocking streaming Unicode codec for OCaml"
+HOMEPAGE="https://erratique.ch/software/uutf"
+SRC_URI="https://erratique.ch/software/uutf/releases/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="doc +ocamlopt"
+RESTRICT="test"
+
+RDEPEND="dev-ml/uchar:=[ocamlopt?]"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-ml/ocamlbuild
+ dev-ml/cmdliner
+ dev-ml/topkg"
+
+DOCS=( CHANGES.md README.md )
+
+src_compile() {
+ ocaml pkg/pkg.ml build || die
+}
+
+src_install() {
+ # Can't use opam-installer here as it is an opam dep...
+ findlib_src_preinst
+ local nativelibs=""
+
+ use ocamlopt &&
+ nativelibs="$(echo _build/src/uutf.cm{x,xa,xs} _build/src/uutf.a)"
+ ocamlfind install uutf _build/pkg/META _build/src/uutf.mli _build/src/uutf.cm{a,i} ${nativelibs} || die
+
+ einstalldocs
+ if use doc ; then
+ docinto html
+ dodoc -r doc/*
+ fi
+}
diff --git a/dev-ml/variantslib/Manifest b/dev-ml/variantslib/Manifest
new file mode 100644
index 000000000000..72a50c04a21a
--- /dev/null
+++ b/dev-ml/variantslib/Manifest
@@ -0,0 +1,2 @@
+DIST variantslib-0.16.0.tar.gz 2982 BLAKE2B 201c96a87391930292df170e7fc6d6e113e8cb652e20acc341dad4a3608849ec60827497905efdbfa8cd86d783681236ddbc3ef73e67d019a244c13802073af4 SHA512 c20cedbf6599b66028d77a5ce0d54a8fa1d2b8302344a434f9714ebd4714b159df143966bc480852e8ac54b44bd59f66646ba614419ea7cffa6710228e7a6fd6
+DIST variantslib-0.17.0.tar.gz 3014 BLAKE2B 33bd75495e23aa0d1f07a35e4a5de37e9485c3ceb00196e3884d7e93baca1588198f8f886ee5407632ccafda1aaa1ed1def05422a58cb6e66e7a31b0518a164d SHA512 16a73b8d497f0143d28a2bd4ec435e8c0ac16e7cdfe738c394430aeba3d3a0f01ce46bc9e899686bbff98124000dcf4e410aee65f112005e3048e8303dda5b65
diff --git a/dev-ml/variantslib/metadata.xml b/dev-ml/variantslib/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/variantslib/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/variantslib/variantslib-0.16.0.ebuild b/dev-ml/variantslib/variantslib-0.16.0.ebuild
new file mode 100644
index 000000000000..b5a481973b6b
--- /dev/null
+++ b/dev-ml/variantslib/variantslib-0.16.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="OCaml variants as first class values"
+HOMEPAGE="https://github.com/janestreet/variantslib"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
+
+RDEPEND="
+ >=dev-lang/ocaml-4.14
+ dev-ml/base:${SLOT}
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/variantslib/variantslib-0.17.0-r2.ebuild b/dev-ml/variantslib/variantslib-0.17.0-r2.ebuild
new file mode 100644
index 000000000000..bcc0e98f8cf2
--- /dev/null
+++ b/dev-ml/variantslib/variantslib-0.17.0-r2.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="OCaml variants as first class values"
+HOMEPAGE="https://github.com/janestreet/variantslib"
+SRC_URI="https://github.com/janestreet/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~riscv"
+IUSE="+ocamlopt"
+
+# Jane Street Minor
+JSM=$(ver_cut 1-2)
+
+RDEPEND="
+ >=dev-lang/ocaml-5
+ =dev-ml/base-${JSM}*:=[ocamlopt?]
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-ml/xdg/Manifest b/dev-ml/xdg/Manifest
new file mode 100644
index 000000000000..a61a7455ef59
--- /dev/null
+++ b/dev-ml/xdg/Manifest
@@ -0,0 +1,2 @@
+DIST dune-3.20.2.tar.gz 3051854 BLAKE2B ce0ff1b7503d0b3bc72fc9c7e1c167c33cf071257066117c16ad24d2d2aeb9c3a84dccd2e24132eb3a95c6f0ee254810e8b1a9f39e8dc81752a97948be8438c3 SHA512 efb4376e03a3e760ee230c22ba8ac788623382437d9e3551fdd6bacdca1c6aa2db90246feb011d3d0e7ba3afa47161ebd06c80cfb24e357a82f7764bf003e355
+DIST dune-3.21.1.tar.gz 3431470 BLAKE2B cb0a155fff9e4c81438f31770856ab4a7107d78f5cca128aa675bb11ff62c66d4cffb4fb22e4a4f9eda8e9ec088cbf827b66a6511bd179a427bf16778cd42a0c SHA512 a304fc6bb854c3a1d5b86b3d3a942e140387ae82e52be240289ef89413d6e6017bc6869363aba3898d6a6be1cb31f4fe8b9264c735c87a1e18cad82a26054acb
diff --git a/dev-ml/xdg/metadata.xml b/dev-ml/xdg/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/xdg/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/xdg/xdg-3.20.2.ebuild b/dev-ml/xdg/xdg-3.20.2.ebuild
new file mode 100644
index 000000000000..82965ab9ab46
--- /dev/null
+++ b/dev-ml/xdg/xdg-3.20.2.ebuild
@@ -0,0 +1,40 @@
+# Copyright 2022-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="XDG Base Directory Specification"
+HOMEPAGE="https://github.com/ocaml/dune/"
+
+if [[ "${PV}" == *9999* ]] ; then
+ inherit git-r3
+
+ EGIT_REPO_URI="https://github.com/ocaml/dune.git"
+else
+ SRC_URI="https://github.com/ocaml/dune/archive/${PV}.tar.gz
+ -> dune-${PV}.tar.gz"
+ S="${WORKDIR}/dune-${PV}"
+
+ KEYWORDS="amd64 ~arm arm64 ~ppc ppc64 ~riscv x86"
+fi
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+IUSE="+ocamlopt"
+
+# This is a part of dune, running tests would run them for dune, not this lib.
+RESTRICT="test"
+
+BDEPEND="
+ >=dev-ml/dune-3.20
+"
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile "${PN}"
+}
diff --git a/dev-ml/xdg/xdg-3.21.1.ebuild b/dev-ml/xdg/xdg-3.21.1.ebuild
new file mode 100644
index 000000000000..1b772311e4cc
--- /dev/null
+++ b/dev-ml/xdg/xdg-3.21.1.ebuild
@@ -0,0 +1,40 @@
+# Copyright 2022-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="XDG Base Directory Specification"
+HOMEPAGE="https://github.com/ocaml/dune/"
+
+if [[ "${PV}" == *9999* ]] ; then
+ inherit git-r3
+
+ EGIT_REPO_URI="https://github.com/ocaml/dune.git"
+else
+ SRC_URI="https://github.com/ocaml/dune/archive/${PV}.tar.gz
+ -> dune-${PV}.tar.gz"
+ S="${WORKDIR}/dune-${PV}"
+
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+fi
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+IUSE="+ocamlopt"
+
+# This is a part of dune, running tests would run them for dune, not this lib.
+RESTRICT="test"
+
+BDEPEND="
+ >=dev-ml/dune-3.21
+"
+
+src_configure() {
+ :
+}
+
+src_compile() {
+ dune-compile "${PN}"
+}
diff --git a/dev-ml/xml-light/Manifest b/dev-ml/xml-light/Manifest
new file mode 100644
index 000000000000..94ad73c51e01
--- /dev/null
+++ b/dev-ml/xml-light/Manifest
@@ -0,0 +1 @@
+DIST xml-light-2.5.tar.gz 18212 BLAKE2B 94174b0bed12b77647044de5552e3e6bbdbd8aa1c9e4683709d4a51227fd54bbd426de9a0c894ddc73271eefa763dfbc8df75a23b654fc6c681b49826ab082a9 SHA512 95d9d8ede370a9d82ecea08c717ef35f8df56907724596149af29b21871dd9942a4d5742d1fa16d63d4735d65d5529627d26f7bc703249a7f2f62e5479d72310
diff --git a/dev-ml/xml-light/metadata.xml b/dev-ml/xml-light/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/xml-light/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/xml-light/xml-light-2.5.ebuild b/dev-ml/xml-light/xml-light-2.5.ebuild
new file mode 100644
index 000000000000..359303fb8c2b
--- /dev/null
+++ b/dev-ml/xml-light/xml-light-2.5.ebuild
@@ -0,0 +1,15 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Minimal Xml parser and printer for OCaml"
+HOMEPAGE="https://github.com/ncannasse/xml-light"
+SRC_URI="https://github.com/ncannasse/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0/${PV}"
+KEYWORDS="amd64 arm arm64 ~ppc ppc64 ~riscv x86"
+IUSE="+ocamlopt"
diff --git a/dev-ml/xmlm/Manifest b/dev-ml/xmlm/Manifest
new file mode 100644
index 000000000000..fa2717989f7c
--- /dev/null
+++ b/dev-ml/xmlm/Manifest
@@ -0,0 +1 @@
+DIST xmlm-1.4.0.tbz 26122 BLAKE2B dcc75836199eeca49967c4245b793b612c3ac83677dc4185d956437af63802759cc99190ad3ad036227706b4ecd4af938ed76d2f049b1273e81bf13b79e6316b SHA512 69f6112e6466952256d670fe1751fe4ae79e20d50f018ece1709eb2240cb1b00968ac7cee110771e0617a38ebc1cdb43e9d146471ce66ac1b176e4a1660531eb
diff --git a/dev-ml/xmlm/metadata.xml b/dev-ml/xmlm/metadata.xml
new file mode 100644
index 000000000000..da26efd50a0e
--- /dev/null
+++ b/dev-ml/xmlm/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <longdescription lang="en">
+ Xmlm is a streaming codec to decode and encode the XML data format.
+ It can process XML documents without a complete in-memory
+ representation of the data.
+ Xmlm is made of a single independent module and distributed under the
+ ISC license.
+ </longdescription>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/xmlm/xmlm-1.4.0.ebuild b/dev-ml/xmlm/xmlm-1.4.0.ebuild
new file mode 100644
index 000000000000..77dfa81698f0
--- /dev/null
+++ b/dev-ml/xmlm/xmlm-1.4.0.ebuild
@@ -0,0 +1,22 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit opam
+
+DESCRIPTION="Streaming XML codec for OCaml"
+HOMEPAGE="https://erratique.ch/software/xmlm"
+SRC_URI="https://erratique.ch/software/${PN}/releases/${P}.tbz"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+
+DEPEND="${RDEPEND}
+ dev-ml/topkg
+ dev-ml/ocamlbuild
+ dev-ml/findlib"
+
+src_compile() {
+ ocaml pkg/pkg.ml build || die
+}
diff --git a/dev-ml/yojson/Manifest b/dev-ml/yojson/Manifest
new file mode 100644
index 000000000000..d6b44a7ba603
--- /dev/null
+++ b/dev-ml/yojson/Manifest
@@ -0,0 +1,2 @@
+DIST yojson-2.2.2.tar.gz 58638 BLAKE2B b1e9e0375b57ad6a112aba25adda15cfc176ac44017c2dc686e5bfd3d32ed7c06c8bb1a97378f49b71f25b4949c836e3be5a72b06bfff76d96acd2b840ee43b9 SHA512 d1fdaa5345a37bb4ed203e8ec842bc8e91e88001de63c6e9539ef9c9f54b861af67de7d1169eb76879bab1a3b5b758dbc6deb1eea9cb6831bbbfba228b5bb4a3
+DIST yojson-3.0.0.gh.tar.gz 56689 BLAKE2B 716a7b1c7a8d219b6c216ba9ef2671375a5d6ce5a9c8f1f94db5681aeaabc8e9654eca8230b536301c2d761bb104e955b11f592bcb9094c0b87f89e64f2e767e SHA512 fb0cd16ac5d99196a341f8c9c80cccaafc0a5c04530d4024164f99dfe042f8050de5146e2ccf85316f13bf0533fe9def99627d7259725c0657d28bdc1914775a
diff --git a/dev-ml/yojson/files/yojson-2.1.1-dune-seq.patch b/dev-ml/yojson/files/yojson-2.1.1-dune-seq.patch
new file mode 100644
index 000000000000..d2ad6e750eb1
--- /dev/null
+++ b/dev-ml/yojson/files/yojson-2.1.1-dune-seq.patch
@@ -0,0 +1,9 @@
+--- a/lib/dune
++++ b/lib/dune
+@@ -113,6 +113,5 @@
+ (public_name yojson)
+ (modules yojson t basic safe raw common codec lexer_utils)
+ (synopsis "JSON parsing and printing")
+- (libraries seq)
+ (flags
+ (:standard -w -27-32)))
diff --git a/dev-ml/yojson/metadata.xml b/dev-ml/yojson/metadata.xml
new file mode 100644
index 000000000000..4b7c99ab3e36
--- /dev/null
+++ b/dev-ml/yojson/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <name>François-Xavier Carton</name>
+ <email>fx.carton91@gmail.com</email>
+ </maintainer>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/mjambon/yojson/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/yojson/yojson-2.2.2-r1.ebuild b/dev-ml/yojson/yojson-2.2.2-r1.ebuild
new file mode 100644
index 000000000000..85d24863273a
--- /dev/null
+++ b/dev-ml/yojson/yojson-2.2.2-r1.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="JSON parsing and pretty-printing library for OCaml"
+HOMEPAGE="https://github.com/ocaml-community/yojson"
+SRC_URI="https://github.com/ocaml-community/${PN}/archive/${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="amd64 ~arm ~arm64 ~riscv ~x86"
+IUSE="examples +ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-ml/sedlex:=[ocamlopt?]
+ dev-ml/ppxlib:=[ocamlopt?]
+ !!<dev-ml/seq-0.3
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? ( dev-ml/alcotest )
+"
+
+PATCHES=( "${FILESDIR}/${PN}-2.1.1-dune-seq.patch" )
+
+src_prepare() {
+ default
+ # let's not build this
+ rm bench/dune yojson-bench.opam || die
+}
+
+src_install() {
+ dune_src_install
+
+ if use examples; then
+ dodoc -r examples
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+}
diff --git a/dev-ml/yojson/yojson-3.0.0.ebuild b/dev-ml/yojson/yojson-3.0.0.ebuild
new file mode 100644
index 000000000000..777a6ba6f7b8
--- /dev/null
+++ b/dev-ml/yojson/yojson-3.0.0.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="JSON parsing and pretty-printing library for OCaml"
+HOMEPAGE="https://github.com/ocaml-community/yojson/"
+
+if [[ "${PV}" == *9999* ]] ; then
+ inherit git-r3
+
+ EGIT_REPO_URI="https://github.com/ocaml-community/${PN}"
+else
+ SRC_URI="https://github.com/ocaml-community/${PN}/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz"
+
+ KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+fi
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+IUSE="examples +ocamlopt test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ test? ( dev-ml/alcotest )
+"
+
+src_prepare() {
+ default
+
+ # let's not build this
+ rm bench/dune yojson-bench.opam || die
+}
+
+src_compile() {
+ dune-compile "${PN}"
+}
+
+src_test() {
+ dune-test "${PN}"
+}
+
+src_install() {
+ dune_src_install
+
+ if use examples; then
+ dodoc -r examples
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+}
diff --git a/dev-ml/zarith/Manifest b/dev-ml/zarith/Manifest
new file mode 100644
index 000000000000..3717889c09b7
--- /dev/null
+++ b/dev-ml/zarith/Manifest
@@ -0,0 +1 @@
+DIST zarith-1.14.tar.gz 91788 BLAKE2B e00b6ed0893a7a4b53c859edc02030336f1c35405202f87741d87288819bdb6562bb3728c6950074b625ad9e5a16cc4afd39c4e0e2486ba18f1a84e49339fdd3 SHA512 8a7f3e82dfa5699c8dda54dd5398c712f3ac4fe04f5208d43d8ba198fb8152de5f91cbb59c15c0a4ba010d4dfcc79f52e405bdd0abbf2798167e9e4216bcb3dd
diff --git a/dev-ml/zarith/metadata.xml b/dev-ml/zarith/metadata.xml
new file mode 100644
index 000000000000..3a6d48cde411
--- /dev/null
+++ b/dev-ml/zarith/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/zarith/zarith-1.14.ebuild b/dev-ml/zarith/zarith-1.14.ebuild
new file mode 100644
index 000000000000..d6df146af07a
--- /dev/null
+++ b/dev-ml/zarith/zarith-1.14.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit findlib toolchain-funcs dot-a
+
+DESCRIPTION="Arithmetic and logic operations over arbitrary-precision integers"
+HOMEPAGE="https://github.com/ocaml/Zarith"
+SRC_URI="https://github.com/ocaml/Zarith/archive/release-${PV}.tar.gz -> ${P}.tar.gz"
+
+S="${WORKDIR}/Zarith-release-${PV}"
+
+LICENSE="LGPL-2.1-with-linking-exception"
+SLOT="0/${PV}"
+KEYWORDS="amd64 ~arm arm64 ~ppc x86"
+IUSE="doc +ocamlopt"
+RESTRICT="!ocamlopt? ( test )"
+
+RDEPEND="
+ dev-libs/gmp:0=
+"
+DEPEND="${RDEPEND} dev-lang/perl"
+
+DOCS=( README.md Changes )
+
+src_configure() {
+ lto-guarantee-fat
+ tc-export CC AR
+ ./configure \
+ -ocamllibdir /usr/$(get_libdir)/ocaml -gmp || die
+ sed -i \
+ -e 's|$(INSTALLDIR)|$(DESTDIR)$(INSTALLDIR)|g' \
+ project.mak || die
+}
+
+src_compile() {
+ emake -j 1 HASOCAMLOPT=$(usex ocamlopt yes no) HASDYNLINK=$(usex ocamlopt yes no) all
+ use doc && emake doc
+}
+
+src_test() {
+ emake HASOCAMLOPT=yes HASDYNLINK=yes tests
+}
+
+src_install() {
+ findlib_src_preinst
+
+ emake \
+ HASOCAMLOPT=$(usex ocamlopt yes no) \
+ HASDYNLINK=$(usex ocamlopt yes no) \
+ DESTDIR="${ED}" \
+ install
+
+ dosym zarith/libzarith.a /usr/$(get_libdir)/ocaml/libzarith.a
+
+ use doc && HTML_DOCS=( html/* )
+ einstalldocs
+ strip-lto-bytecode
+}
diff --git a/dev-ml/zed/Manifest b/dev-ml/zed/Manifest
new file mode 100644
index 000000000000..3c26e6689cf7
--- /dev/null
+++ b/dev-ml/zed/Manifest
@@ -0,0 +1 @@
+DIST zed-3.2.3.tar.gz 44745 BLAKE2B d013d1d3341f04ec7aa141abaa175d3db9e57e3966c5a8adef7efb416e7ec3ae0800f554b0d943fa55cd8bbb6bfe069e6b5d7d23d2a38bf7f1e55f7cafe52943 SHA512 637f75129550f6459417549d44bed16bdc62721d2e9e0c6bb5bfab30c5bc6478de15faece8c091b56f238375cb79a7bc176375400e543120bb31d7ea626b7c5b
diff --git a/dev-ml/zed/metadata.xml b/dev-ml/zed/metadata.xml
new file mode 100644
index 000000000000..ead9dad28836
--- /dev/null
+++ b/dev-ml/zed/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <longdescription>
+ Zed is an abstract engine for text edition. It can be used to write text
+ editors, edition widgets, readlines, ... Zed uses Camomile to fully
+ support the Unicode specification, and implements an UTF-8 encoded string
+ type with validation, and a rope datastructure to achieve efficient
+ operations on large Unicode buffers. Zed also features a regular expression
+ search on ropes. To support efficient text edition capabilities,
+ Zed provides macro recording and cursor management facilities.
+ </longdescription>
+ <upstream>
+ <bugs-to>https://github.com/ocaml-community/zed/issues/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/zed/zed-3.2.3.ebuild b/dev-ml/zed/zed-3.2.3.ebuild
new file mode 100644
index 000000000000..fdfa9f51ccfd
--- /dev/null
+++ b/dev-ml/zed/zed-3.2.3.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Abstract engine for text edition in OCaml"
+HOMEPAGE="https://github.com/ocaml-community/zed"
+SRC_URI="https://github.com/ocaml-community/zed/archive/${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-ml/react:=
+ dev-ml/result:=
+ dev-ml/uchar:=
+ dev-ml/uucp:=
+ dev-ml/uuseg:=
+ dev-ml/uutf:=
+"
+DEPEND="${RDEPEND}"
+BDEPEND="test? (
+ dev-ml/alcotest
+)"
diff --git a/dev-ml/zmq-async/Manifest b/dev-ml/zmq-async/Manifest
new file mode 100644
index 000000000000..cb55bc1e51bb
--- /dev/null
+++ b/dev-ml/zmq-async/Manifest
@@ -0,0 +1 @@
+DIST ocaml-zmq-zmq-async.tar.gz 33027 BLAKE2B 935468c29394abaac36fdea922f82b525f0cdaf35365b893a0186cc54e9b0a4e3fa25a9d8362addad52e89a3b930d36974590c481647c19a55fca8fdfef68bf3 SHA512 85d1b16f8e9d6abc24e175b7dd3574585f4d854f5355bb67797f8651eea3f0835ade03a28d5d9e8dbd5cb5573f517e271854099ee91a79835c2d84076983dff4
diff --git a/dev-ml/zmq-async/metadata.xml b/dev-ml/zmq-async/metadata.xml
new file mode 100644
index 000000000000..375be8f575b0
--- /dev/null
+++ b/dev-ml/zmq-async/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/issuu/ocaml-zmq/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/zmq-async/zmq-async-5.2.1.ebuild b/dev-ml/zmq-async/zmq-async-5.2.1.ebuild
new file mode 100644
index 000000000000..d04fd3e47721
--- /dev/null
+++ b/dev-ml/zmq-async/zmq-async-5.2.1.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Async-aware bindings to ZMQ for OCaml"
+HOMEPAGE="https://github.com/issuu/ocaml-zmq/"
+
+if [[ ${PV} == *9999* ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/issuu/ocaml-zmq.git"
+else
+ SRC_URI="https://github.com/issuu/ocaml-zmq/archive/${PV}.tar.gz
+ -> ocaml-zmq-${PN}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+S="${WORKDIR}"/ocaml-zmq-${PV}
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-ml/async_kernel:=
+ dev-ml/async_unix:=
+ dev-ml/base:=
+ dev-ml/zmq:=
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-ml/dune-configurator
+ test? ( dev-ml/ounit2 )
+"
+
+src_compile() {
+ dune-compile ${DUNE_PKG_NAME}
+}
+
+src_test() {
+ dune-test ${DUNE_PKG_NAME}
+}
diff --git a/dev-ml/zmq-lwt/Manifest b/dev-ml/zmq-lwt/Manifest
new file mode 100644
index 000000000000..df4e516c7a95
--- /dev/null
+++ b/dev-ml/zmq-lwt/Manifest
@@ -0,0 +1 @@
+DIST ocaml-zmq-5.2.1.tar.gz 33027 BLAKE2B 935468c29394abaac36fdea922f82b525f0cdaf35365b893a0186cc54e9b0a4e3fa25a9d8362addad52e89a3b930d36974590c481647c19a55fca8fdfef68bf3 SHA512 85d1b16f8e9d6abc24e175b7dd3574585f4d854f5355bb67797f8651eea3f0835ade03a28d5d9e8dbd5cb5573f517e271854099ee91a79835c2d84076983dff4
diff --git a/dev-ml/zmq-lwt/metadata.xml b/dev-ml/zmq-lwt/metadata.xml
new file mode 100644
index 000000000000..375be8f575b0
--- /dev/null
+++ b/dev-ml/zmq-lwt/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/issuu/ocaml-zmq/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/zmq-lwt/zmq-lwt-5.2.1.ebuild b/dev-ml/zmq-lwt/zmq-lwt-5.2.1.ebuild
new file mode 100644
index 000000000000..602d917191a8
--- /dev/null
+++ b/dev-ml/zmq-lwt/zmq-lwt-5.2.1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="Lwt-aware bindings to ZMQ for OCaml"
+HOMEPAGE="https://github.com/issuu/ocaml-zmq/"
+
+if [[ ${PV} == *9999* ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/issuu/ocaml-zmq.git"
+else
+ SRC_URI="https://github.com/issuu/ocaml-zmq/archive/${PV}.tar.gz
+ -> ocaml-zmq-${PV}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+S="${WORKDIR}"/ocaml-zmq-${PV}
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-ml/lwt:=
+ dev-ml/zmq:=
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-ml/dune-configurator
+ test? ( dev-ml/ounit2 )
+"
+
+src_compile() {
+ dune-compile ${DUNE_PKG_NAME}
+}
+
+src_test() {
+ dune-test ${DUNE_PKG_NAME}
+}
diff --git a/dev-ml/zmq/Manifest b/dev-ml/zmq/Manifest
new file mode 100644
index 000000000000..1ff83498af0c
--- /dev/null
+++ b/dev-ml/zmq/Manifest
@@ -0,0 +1,2 @@
+DIST ocaml-zmq-5.2.1.tar.gz 33027 BLAKE2B 935468c29394abaac36fdea922f82b525f0cdaf35365b893a0186cc54e9b0a4e3fa25a9d8362addad52e89a3b930d36974590c481647c19a55fca8fdfef68bf3 SHA512 85d1b16f8e9d6abc24e175b7dd3574585f4d854f5355bb67797f8651eea3f0835ade03a28d5d9e8dbd5cb5573f517e271854099ee91a79835c2d84076983dff4
+DIST ocaml-zmq-5.3.0.tar.gz 35119 BLAKE2B ce5a51ccbf6cab1d500adaa08dbab39fc9fe90d6c1173af7388ff8d4f7ebe11158d944368179b1d350b140baeee8b63a5bd5cafdb663b7df3f2754c10bdbf1f3 SHA512 7db98b584fb86574eb925871ffac0751d5bb17a56e6945fe10349ef9455f90f0971bac5102bd5a6fe4c7a2067ccd88b99643a2f27257b009f489e457e03d0726
diff --git a/dev-ml/zmq/metadata.xml b/dev-ml/zmq/metadata.xml
new file mode 100644
index 000000000000..375be8f575b0
--- /dev/null
+++ b/dev-ml/zmq/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>ml@gentoo.org</email>
+ <name>ML</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/issuu/ocaml-zmq/</bugs-to>
+ </upstream>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-ml/zmq/zmq-5.2.1.ebuild b/dev-ml/zmq/zmq-5.2.1.ebuild
new file mode 100644
index 000000000000..eadca769b9ce
--- /dev/null
+++ b/dev-ml/zmq/zmq-5.2.1.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="OCaml bindings for ZeroMQ 4.x"
+HOMEPAGE="https://github.com/issuu/ocaml-zmq/"
+
+if [[ ${PV} == *9999* ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/issuu/ocaml-zmq.git"
+else
+ SRC_URI="https://github.com/issuu/ocaml-zmq/archive/${PV}.tar.gz
+ -> ocaml-zmq-${PV}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+S="${WORKDIR}"/ocaml-zmq-${PV}
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ net-libs/zeromq:=
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-ml/dune-configurator
+ test? ( dev-ml/ounit2 )
+"
+
+src_compile() {
+ dune-compile ${DUNE_PKG_NAME}
+}
+
+src_test() {
+ dune-test ${DUNE_PKG_NAME}
+}
diff --git a/dev-ml/zmq/zmq-5.3.0.ebuild b/dev-ml/zmq/zmq-5.3.0.ebuild
new file mode 100644
index 000000000000..de9b7c6b4992
--- /dev/null
+++ b/dev-ml/zmq/zmq-5.3.0.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit dune
+
+DESCRIPTION="OCaml bindings for ZeroMQ 4.x"
+HOMEPAGE="https://github.com/issuu/ocaml-zmq/"
+
+if [[ ${PV} == *9999* ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/issuu/ocaml-zmq.git"
+else
+ SRC_URI="https://github.com/issuu/ocaml-zmq/archive/${PV}.tar.gz
+ -> ocaml-zmq-${PV}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+S="${WORKDIR}"/ocaml-zmq-${PV}
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+IUSE="+ocamlopt test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ net-libs/zeromq:=
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-ml/dune-configurator
+ test? ( dev-ml/ounit2 )
+"
+
+src_compile() {
+ dune-compile ${DUNE_PKG_NAME}
+}
+
+src_test() {
+ dune-test ${DUNE_PKG_NAME}
+}