[8413f14] | 1 | # Vagrantfile to install OpenGnsys boot-tools .1 virtual environment using VirtualBox provider. |
---|
| 2 | |
---|
| 3 | VAGRANTFILE_API_VERSION = "2" |
---|
| 4 | # VM provider: Oracle VM VirtualBox. |
---|
| 5 | ENV['VAGRANT_DEFAULT_PROVIDER'] = "virtualbox" |
---|
| 6 | # Language. |
---|
| 7 | LANGUAGE = "es_ES" |
---|
| 8 | ENV['LC_ALL'] = LANGUAGE + ".UTF-8" |
---|
[b32e00f] | 9 | # Amount of virtual memory. |
---|
[8413f14] | 10 | VMMEM = 1024 |
---|
| 11 | # OpenGnsys boot-tools environment provisioning script. |
---|
| 12 | SCRIPT = <<EOT |
---|
| 13 | # Set language. |
---|
| 14 | export LANG="#{LANGUAGE}.UTF-8" |
---|
[5f4cfdc] | 15 | echo "LANG=\\\"$LANG\\\"" > /etc/default/locale |
---|
| 16 | echo "LANG=\\\"$LANG\\\"" >> /etc/environment |
---|
[8413f14] | 17 | locale-gen --lang #{LANGUAGE} |
---|
[5f4cfdc] | 18 | sed -i "s/XKBLAYOUT=.*/XKBLAYOUT=\\\"${LANG%_*}\\\"/" /etc/default/keyboard |
---|
[ebe5709] | 19 | dpkg-reconfigure -fnoninteractive console-setup |
---|
[8413f14] | 20 | # Install dependencies. |
---|
| 21 | apt-get update -y |
---|
[83d87a3] | 22 | apt-get install -y jq subversion syslinux syslinux-efi syslinux-utils |
---|
[8413f14] | 23 | # Prepare environment. |
---|
[11364a6] | 24 | groupadd opengnsys |
---|
[8413f14] | 25 | mkdir -p /opt/opengnsys/client /tmp/opengnsys_installer/opengnsys |
---|
| 26 | ln -fs /var/lib/tftpboot /opt/opengnsys |
---|
[08b7e126] | 27 | BRANCH="master" |
---|
[279c269] | 28 | svn export https://github.com/opengnsys/ogLive-Builder/branches/$BRANCH/ /tmp/opengnsys_installer/opengnsys/client/boot-tools |
---|
[8413f14] | 29 | echo "Connect to this VM, launch boot-tools generation script and follow instructions:" |
---|
| 30 | echo " sudo /tmp/opengnsys_installer/opengnsys/client/boot-tools/boottoolsgenerator.sh" |
---|
[73d2b755] | 31 | echo "Warning: this process may take a long time." |
---|
| 32 | echo "ogLive ISO file will be located in /opt/opengnsys/tftpboot/ogclient directory." |
---|
[8413f14] | 33 | EOT |
---|
| 34 | |
---|
| 35 | Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| |
---|
| 36 | |
---|
| 37 | # OpenGnsys boot-tools environment VM definition. |
---|
| 38 | config.vm.define "ogBootTools" do |bt| |
---|
| 39 | # Specific VirtualBox configuration. |
---|
| 40 | bt.vm.provider "virtualbox" do |vb| |
---|
| 41 | # VM name, memory and CPUs. |
---|
| 42 | vb.name = "ogBootTools" |
---|
| 43 | vb.memory = VMMEM |
---|
| 44 | vb.cpus = 1 |
---|
| 45 | end |
---|
| 46 | # VM base and host name. |
---|
[8ff4bd5] | 47 | bt.vm.box = "ubuntu/xenial64" |
---|
[8413f14] | 48 | bt.vm.hostname = "ogBootTools" |
---|
[11364a6] | 49 | # Comment out to disable synced folder. |
---|
| 50 | #bt.vm.synced_folder ".", "/vagrant", disabled: true |
---|
[8413f14] | 51 | # Launch provisioning script. |
---|
| 52 | bt.vm.provision "shell", inline: SCRIPT |
---|
| 53 | end |
---|
| 54 | |
---|
| 55 | end |
---|
| 56 | |
---|