Skip to content
Snippets Groups Projects
Vagrantfile 1.99 KiB

Vagrant.configure("2") do |config|
  config.vm.box = "debian/contrib-jessie64"

  config.vm.provider "virtualbox" do |v|
    v.memory = 1260
    v.cpus = 3
  end

  config.vm.provision "shell", inline: <<-SHELL
    apt-get update
    apt-get install -y curl git build-essential unzip python zipalign

    wget -O - https://deb.nodesource.com/setup_5.x | bash -
    apt-get install -y nodejs
    npm install -g --unsafe-perm bower gulp cordova@6.3.1 karma

    cd /home/vagrant
    wget -nv http://dev.dms-serwis.com.pl/misc/jdk-8u121-linux-x64.tar.gz
    tar xzf jdk-8u121-linux-x64.tar.gz
    rm -f jdk-8u121-linux-x64.tar.gz
    update-alternatives --install /usr/bin/java java /home/vagrant/jdk1.8.0_121/bin/java 100
    update-alternatives --install /usr/bin/javac javac /home/vagrant/jdk1.8.0_121/bin/javac 100
    update-alternatives --install /usr/bin/jar jar /home/vagrant/jdk1.8.0_121/bin/jar 100
    update-alternatives --install /usr/bin/jarsigner jarsigner /home/vagrant/jdk1.8.0_121/bin/jarsigner 100
    echo """
export PATH=\\$PATH:/home/vagrant/platform-tools:/home/vagrant/build-tools/25.0.1:/home/vagrant/tools
export ANDROID_HOME=/home/vagrant
""" >> /home/vagrant/.bashrc

    wget -nv http://dev.dms-serwis.com.pl/misc/tools_r25.2.3-linux.zip
    unzip tools_r25.2.3-linux.zip
    rm -f tools_r25.2.3-linux.zip
    echo y | ./tools/bin/sdkmanager "build-tools;25.0.1" "build-tools;24.0.0" "platforms;android-25" "platforms;android-24" "platforms;android-23" "platform-tools" "extras;android;m2repository" "extras;google;m2repository" "extras;google;google_play_services"

    chown -R vagrant:vagrant /home/vagrant
    chown -R vagrant:vagrant /home/vagrant/.bashrc

    # Minify
    apt-get clean
    dd if=/dev/zero of=/EMPTY bs=1M
    rm -f /EMPTY
    rm -rf /tmp/*

    # udev rules
    rm /etc/udev/rules.d/70-persistent-net.rules || true
    mkdir /etc/udev/rules.d/70-persistent-net.rules || true
    rm -rf /dev/.udev/ || true
    rm /lib/udev/rules.d/75-persistent-net-generator.rules || true

  SHELL
end