Opa with Vagrant

dielc edited this page Sep 25, 2014 · 7 revisions

The easiest way to develop in Opa on most platforms is to use a vagrant box. Install vagrant (and VirtualBox on some platforms).


Install vagrant and run

vagrant init mlstate/opa

The box is a linux system running in a VM that contains a pre-built Opa system with all dependencies. Once the box is created, run:

vagrant up
vagrant ssh

to start the VM and log into it.

Test your setup

Opa is installed and in user path, so you can just run

opa file.opa

to compile and run an Opa program. Note that tutorials are preinstalled in your home directory.

Note: to see the actual output in your host browser, you need to do some port forwarding in Virtual-box. Click on your machine > settings > network > port forwarding. Then add a new rule with the following information: Name: Opa, Protocol: tcp, Host port: 8080, Guest port: 8080. Leave the other fields blank. You can now see your application in your host browser on http://localhost:8080/

Host-VM interaction

If you're new to vagrant, note that the host directory is mounted under /vagrant in the VM, so you can leave Opa programs in your host and just keep a console in the VM to compile and run your apps.


If you run your application and get the following message. 1 Module missing. Please run: sudo npm install -g ursa. You might need to first need to perform these commands: sudo apt-get install nodejs and sudo apt-get install npm before you can run sudo npm install -g ursa