Skip to content
Yusuke Endoh edited this page Apr 15, 2024 · 35 revisions

NOTE: The contents of this page are very likely obsolete.

Feel free to add your experience!

Vagrant

  1. Make sure Vagrant and VirtualBox are installed.
  2. Checkout the project.
  3. In its root folder create a Vagrantfile with these contents:
require_relative 'src/code-gen.rb'

Vagrant.configure("2") do |config|

  config.vm.box = "raring32"
  config.vm.box_url = "http://cloud-images.ubuntu.com/vagrant/raring/current/raring-server-cloudimg-i386-vagrant-disk1.box"

  config.vm.provision :shell, :inline => "
    echo 'golang-go golang-go/dashboard boolean true' > preseed.conf
    sudo debconf-set-selections preseed.conf
  "

  apts = CodeGen::List.reverse.flat_map {|c| c.steps.map {|step| step.apt } }
  config.vm.provision :shell, :inline => "sudo apt-get install -y #{ (apts + ["tcc"]).compact.uniq.sort.join " " }"

end
  1. Run vagrant up and the Ubuntu machine will be automatically built for you (~ 1GB download).
  2. Follow the instructions to build the project
  3. Enjoy!
Troubleshooting

Long "Waiting for VM to boot"?
-> forcefully power off the VM in the VirtualBox GUI and run "vagrant up" again.

Alternatives

Google Cloud VM

A Google Cloud VM with these settings was able to work:

  • e2-standard-16
  • 100 gb disk
  • Ubuntu 22.10

You could probably get by with 20 gb disk. You could probably get by with a smaller e2 machine. I ran sudo apt update and then ran through the 1. Install all interpreters/compilers. steps in the README, then make, and it worked!

Clone this wiki locally