Skip to content

Commit 908e1a3

Browse files
author
Jonas Eckerström
committedOct 16, 2014
added angularjs-cordova tools
1 parent b5f4e17 commit 908e1a3

File tree

5 files changed

+101
-3
lines changed

5 files changed

+101
-3
lines changed
 

‎.bootstrap/android.sh

+57
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
#!/usr/bin/env bash
2+
3+
android_sdk="android-sdk_r23.0.2-linux.tgz"
4+
android_sdk_url="http://dl.google.com/android/${android_sdk}"
5+
intel_image="sysimg_x86-19_r01.zip"
6+
intel_image_url="http://download-software.intel.com/sites/landingpage/android/${intel_image}"
7+
android_device="Nexus S"
8+
9+
if [ ! -d "${HOME}/android-sdk-linux/" ] ; then
10+
11+
sudo apt-get -y install ant
12+
13+
echo 'export ANDROID_SDK_HOME=/vagrant/' >> ${HOME}/.bash_profile
14+
echo "export ANDROID_HOME=${HOME}/android-sdk-linux" >> ${HOME}/.bash_profile
15+
echo 'export PATH=${PATH}:${ANDROID_HOME}/platform-tools:${ANDROID_HOME}/tools' >> ${HOME}/.bash_profile
16+
17+
source ${HOME}/.bash_profile
18+
19+
mkdir -vp ${ANDROID_SDK_HOME}
20+
mkdir -vp /vagrant/.download/
21+
if [ ! -f "/vagrant/.download/${android_sdk}" ] ; then
22+
echo "downloading ${android_sdk_url}"
23+
wget --quiet "${android_sdk_url}" -P /vagrant/.download/
24+
fi
25+
26+
tar -xvzf /vagrant/.download/${android_sdk}
27+
fi
28+
29+
if [ ! -d "${ANDROID_HOME}/platforms/android-19" ] ; then
30+
sudo apt-get -y install expect
31+
32+
expect -c '
33+
set timeout -1 ;
34+
spawn android update sdk -u --all --filter platform-tool,android-19,build-tools-19.1.0
35+
expect {
36+
"Do you accept the license" { exp_send "y\r" ; exp_continue }
37+
eof
38+
}
39+
'
40+
fi
41+
42+
if [ ! -d "${ANDROID_HOME}/system-images/android-19/default/x86" ] ; then
43+
sudo apt-get -y install unzip
44+
45+
#download intel x86 android image api level 19
46+
if [ ! -f "/vagrant/.download/${intel_image}" ] ; then
47+
echo "downloading ${intel_image_url}"
48+
wget --quiet ${intel_image_url} -P /vagrant/.download/
49+
fi
50+
51+
mkdir -vp ${ANDROID_HOME}/system-images/android-19/default/
52+
unzip -o /vagrant/.download/${intel_image} -d ${ANDROID_HOME}/system-images/android-19/default/
53+
54+
if [ `android list avd | wc -l` -le 1 ] ; then
55+
android -s create avd -n default-19 -t android-19 -b default/x86 -d "${android_device}"
56+
fi
57+
fi

‎.bootstrap/bootstrap.sh

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
#!/usr/bin/env bash
2+
apt-get -y update
3+
4+
apt-get -y install git
5+
apt-get -y install vim

‎.bootstrap/npm.sh

+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
#!/usr/bin/env bash
2+
3+
if [ ! -d "${HOME}/.npm-packages" ] ; then
4+
sudo apt-get -y install python-software-properties python g++ make
5+
sudo add-apt-repository -y ppa:chris-lea/node.js
6+
sudo apt-get -y update
7+
sudo apt-get -y install nodejs
8+
9+
echo 'NPM_PACKAGES="${HOME}/.npm-packages"' >> ${HOME}/.bash_profile
10+
echo 'PATH=${PATH}:${NPM_PACKAGES}/bin' >> ${HOME}/.bash_profile
11+
echo 'NODE_PATH="${NPM_PACKAGES}/lib/node_modules:${NODE_PATH}"' >> ${HOME}/.bash_profile
12+
echo 'prefix=${HOME}/.npm-packages' >> ${HOME}/.npmrc
13+
echo 'MANPATH="$NPM_PACKAGES/share/man:$(manpath)"' >> ${HOME}/.bash_profile
14+
15+
source ${HOME}/.bash_profile
16+
17+
npm install -g bower grunt-cli yo cordova generator-angularjs-cordova
18+
#workaround for missing deps when executing cordova build
19+
npm install -g shelljs q where
20+
fi

‎.gitignore

+2-1
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
1-
/.*/
1+
/.*/
2+
!/.bootstrap

‎Vagrantfile

+17-2
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,20 @@
55
VAGRANTFILE_API_VERSION = "2"
66

77
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
8+
# SSH
9+
config.ssh.forward_agent = true
10+
config.ssh.forward_x11 = true
11+
12+
# Defines shell as the box provision
13+
config.vm.provision :shell, path: 'bootstrap.sh', privileged: true
14+
config.vm.provision :shell, path: '.bootstrap/bootstrap.sh'
15+
config.vm.provision :shell, path: '.bootstrap/android.sh', privileged: false
16+
config.vm.provision :shell, path: '.bootstrap/npm.sh', privileged: false
17+
18+
# Hack to fix the "stdin: is not a tty" bug
19+
config.ssh.shell = "bash -c 'BASH_ENV=/etc/profile exec bash'"
20+
821
config.vm.provider "virtualbox" do |vb|
9-
config.vm.provision :shell, path: 'bootstrap.sh', privileged: true
1022
vb.gui = true
1123
vb.customize ["modifyvm", :id, "--memory", "2048"]
1224
vb.customize ["modifyvm", :id, "--cpus", "2"]
@@ -15,7 +27,10 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
1527
vb.customize ["modifyvm", :id, "--ioapic", "on"]
1628
vb.customize ["modifyvm", :id, "--vram", "128"]
1729
vb.customize ["modifyvm", :id, "--hwvirtex", "on"]
18-
end
30+
31+
# Allow USB on the box
32+
vb.customize ['modifyvm', :id, '--usb', 'on']
33+
end
1934

2035
# All Vagrant configuration is done here. The most common configuration
2136
# options are documented and commented below. For a complete reference,

0 commit comments

Comments
 (0)
Please sign in to comment.