We are happy to announce the first release of oui!
oui is a tool that generates multi-platform binary installers for your OCaml applications. It can generate installers for Windows, Linux and MacOS.
We hope it will help all of you out there developping applications for non OCaml developers, allowing your users to install your programs without having to install OCaml and/or opam, thus greatly simplifying their user experience.
You can install oui with the following command:
opam install oui
We made it as generic as possible to ensure it works for everyone. You invoke it as follows:
oui build oui.json install-bundle
where install-bundle is a folder containing your precompiled binaries and any files you want to install alongside them, arranged in any way you’d like.
The oui.json file is a configuration file that contains metadata and information on the installation bundle’s layout such as where to find binaries to add to the PATH or where to find manpages.
oui can also create installers for plugins, assuming the main application was either installed by a oui generated installer, or was installed following some basic rules.
The project is hosted on github: https://github.com/OCamlPro/ocaml-universal-installer
The full documentation is available here. In particular, you can find guidelines on how to use it to create installers for your dune built project here.
Please go ahead and give it a try, we’d love to hear your feedback.
We welcome external contributors so if you’d like to take part in the project, please read our CONTRIBUTING.md and jump in!
The project is still in a relatively early stage and there are some key features we’d like to add, such as streamlining the user experience for dune projects (removing the necessity to maintain a separate configuration file for the most common use cases) or support for cross-compilation/cross-platform installer generation. If those features sound interesting to you and you would like to fund their development, please reach out to contact@ocamlpro.com.
Finally, we’d like to thank our partner CEA-list who funded the initial development of oui from opam-wix and made it all possible!
Happy installing!