1*4882a593Smuzhiyun################################################################################ 2*4882a593Smuzhiyun# 3*4882a593Smuzhiyun# Vagrantfile 4*4882a593Smuzhiyun# 5*4882a593Smuzhiyun################################################################################ 6*4882a593Smuzhiyun 7*4882a593Smuzhiyun# Buildroot version to use 8*4882a593SmuzhiyunRELEASE='2021.11' 9*4882a593Smuzhiyun 10*4882a593Smuzhiyun### Change here for more memory/cores ### 11*4882a593SmuzhiyunVM_MEMORY=2048 12*4882a593SmuzhiyunVM_CORES=1 13*4882a593Smuzhiyun 14*4882a593SmuzhiyunVagrant.configure('2') do |config| 15*4882a593Smuzhiyun config.vm.box = 'ubuntu/bionic64' 16*4882a593Smuzhiyun 17*4882a593Smuzhiyun config.vm.provider :vmware_fusion do |v, override| 18*4882a593Smuzhiyun v.vmx['memsize'] = VM_MEMORY 19*4882a593Smuzhiyun v.vmx['numvcpus'] = VM_CORES 20*4882a593Smuzhiyun end 21*4882a593Smuzhiyun 22*4882a593Smuzhiyun config.vm.provider :virtualbox do |v, override| 23*4882a593Smuzhiyun v.memory = VM_MEMORY 24*4882a593Smuzhiyun v.cpus = VM_CORES 25*4882a593Smuzhiyun 26*4882a593Smuzhiyun required_plugins = %w( vagrant-vbguest ) 27*4882a593Smuzhiyun required_plugins.each do |plugin| 28*4882a593Smuzhiyun system "vagrant plugin install #{plugin}" unless Vagrant.has_plugin? plugin 29*4882a593Smuzhiyun end 30*4882a593Smuzhiyun end 31*4882a593Smuzhiyun 32*4882a593Smuzhiyun config.vm.provision 'shell' do |s| 33*4882a593Smuzhiyun s.inline = 'echo Setting up machine name' 34*4882a593Smuzhiyun 35*4882a593Smuzhiyun config.vm.provider :vmware_fusion do |v, override| 36*4882a593Smuzhiyun v.vmx['displayname'] = "Buildroot #{RELEASE}" 37*4882a593Smuzhiyun end 38*4882a593Smuzhiyun 39*4882a593Smuzhiyun config.vm.provider :virtualbox do |v, override| 40*4882a593Smuzhiyun v.name = "Buildroot #{RELEASE}" 41*4882a593Smuzhiyun end 42*4882a593Smuzhiyun end 43*4882a593Smuzhiyun 44*4882a593Smuzhiyun config.vm.provision 'shell', privileged: true, inline: 45*4882a593Smuzhiyun "sed -i 's|deb http://us.archive.ubuntu.com/ubuntu/|deb mirror://mirrors.ubuntu.com/mirrors.txt|g' /etc/apt/sources.list 46*4882a593Smuzhiyun dpkg --add-architecture i386 47*4882a593Smuzhiyun apt-get -q update 48*4882a593Smuzhiyun apt-get purge -q -y snapd lxcfs lxd ubuntu-core-launcher snap-confine 49*4882a593Smuzhiyun apt-get -q -y install build-essential libncurses5-dev \ 50*4882a593Smuzhiyun git bzr cvs mercurial subversion libc6:i386 unzip bc 51*4882a593Smuzhiyun apt-get -q -y autoremove 52*4882a593Smuzhiyun apt-get -q -y clean 53*4882a593Smuzhiyun update-locale LC_ALL=C" 54*4882a593Smuzhiyun 55*4882a593Smuzhiyun config.vm.provision 'shell', privileged: false, inline: 56*4882a593Smuzhiyun "echo 'Downloading and extracting buildroot #{RELEASE}' 57*4882a593Smuzhiyun wget -q -c http://buildroot.org/downloads/buildroot-#{RELEASE}.tar.gz 58*4882a593Smuzhiyun tar axf buildroot-#{RELEASE}.tar.gz" 59*4882a593Smuzhiyun 60*4882a593Smuzhiyunend 61