From 5e02b3ee1dac927c30aca2797cfaf8da96735a01 Mon Sep 17 00:00:00 2001 From: "Kevin M. Rosenberg" Date: Mon, 15 Jun 2020 14:48:41 -0600 Subject: [PATCH] Add Vagrantfile for building on VirtualBox --- Vagrantfile | 60 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 Vagrantfile diff --git a/Vagrantfile b/Vagrantfile new file mode 100644 index 0000000..1a42661 --- /dev/null +++ b/Vagrantfile @@ -0,0 +1,60 @@ +# -*- mode: ruby -*- +# vi: set ft=ruby : + +# All Vagrant configuration is done below. The "2" in Vagrant.configure +# configures the configuration version (we support older styles for +# backwards compatibility). Please don't change it unless you know what +# you're doing. +Vagrant.configure("2") do |config| + config.vm.box = "hashicorp/bionic64" + + # Disable automatic box update checking. If you disable this, then + # boxes will only be checked for updates when the user runs + # `vagrant box outdated`. This is not recommended. + # config.vm.box_check_update = false + + # Create a forwarded port mapping which allows access to a specific port + # within the machine from a port on the host machine. In the example below, + # accessing "localhost:8080" will access port 80 on the guest machine. + # NOTE: This will enable public access to the opened port + # config.vm.network "forwarded_port", guest: 80, host: 8080 + + # Create a forwarded port mapping which allows access to a specific port + # within the machine from a port on the host machine and only allow access + # via 127.0.0.1 to disable public access + # config.vm.network "forwarded_port", guest: 80, host: 8080, host_ip: "127.0.0.1" + + # Create a private network, which allows host-only access to the machine + # using a specific IP. + # config.vm.network "private_network", ip: "192.168.33.10" + + # Create a public network, which generally matched to bridged network. + # Bridged networks make the machine appear as another physical device on + # your network. + # config.vm.network "public_network" + + config.vm.provider "virtualbox" do |vb| + # # Display the VirtualBox GUI when booting the machine + # vb.gui = true + vb.memory = "2048" + vb.cpus = "2" + end + + config.vm.provision "shell", inline: <<-SHELL + FILE=/etc/apt/preferences.d/99grub + echo "Package: /(grub-common|grub2-common|grub-pc)/ +Pin: release * +Pin-Priority: -1" > $FILE + apt-get update + apt-get dist-upgrade -y + apt-get install -yy debhelper libfftw3-dev libreadline-dev libgl1-mesa-dev libglu1-mesa-dev libwxgtk3.0-dev ctn-dev libpng-dev git + apt-get autoremove -y + rm $FILE + git clone git://git.kpe.io/ctsim.git + DIR=/home/vagrant/ctsim + cd $DIR + ./bootstrap.sh + chown -R vagrant:vagrant $DIR + SHELL + +end -- 2.34.1