Hi there
cool stuff.
Now the next step usually is measure that Vagrant up time, and see how much of that can be done in the base box.
When you identify those steps, and you separate the provisioning, then you can:
a - vagrant up upto the first step, vagrant package
vagrant up 2nd step and measure this time.
vagrant + virtualbox allow you package a vm, but not others
b. use packer to create a VM, or update an existing one upto the point where the first provisioning part happen.
For Virtualbox and vmware you can start on an existing VM, so you can have like a bake factory.
No need to over optimize what you got, just sharing what feels the natural path when those vagrant up start feeling slow
:)
Alvaro