minicoin is a vagrant-based tool developed to make building and testing of C++ and Qt code easy on different operating systems.

It extends vagrant with plugins that add commands that are particularly useful when doing more or less the same task on several platforms. For example, building your local source code on Linux, macOS, and Windows to make sure that everything compiles and that tests pass.

$ cd ~/qt/dev
$ minicoin run build --target tst_qpushbutton_check ubuntu2004 windows11 macos12

minicoin also abstracts the plumbing of configuring and provisioning machines into a declarative configuration system using YAML, e.g.

   - name: ubuntu2004
     box: generic/ubuntu2004
       - linux-desktop
       - qt-builder
   - name: opensuse15
     box: generic/opensuse15
       - linux-desktop
       - qt-builder

For documentation, see the project wiki:

Here we host freely available boxes for public cloud providers. Those boxes are designed to be used with minicoin, and while they might work with plain vagrant, they don't make much sense and will most likely not result in functional cloud instances.

In most cases, minicoin is used with VMs running locally using VirtualBox or VMware. Prepared Windows and macOS boxes for those providers are not public, but can be made available under certain circumstances. For Linux, the machines from the generic are used by default.