Advertisement
Mashudi

ionic-install.sh

Aug 16th, 2016
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 3.44 KB | None | 0 0
  1. #!/bin/bash
  2. # Ubuntu Developer Script For Ionic Framework
  3. # Created by Nic Raboy
  4. # http://www.nraboy.com
  5. # Edited for ubuntu 16.04 LTS by Muhamad Mashudi Ardi Winata
  6. # http://mashudisudonym.github.io
  7. #
  8. #
  9. # Downloads and configures the following:
  10. #
  11. #   Java JDK
  12. #   Apache Ant
  13. #   Android
  14. #   NPM
  15. #   Apache Cordova
  16. #   Ionic Framework
  17. #   Gradle
  18.  
  19. mkdir tmp
  20.  
  21. # Update all Ubuntu software repository list
  22. apt-get update
  23. # install nodejs, node, npm via package manager
  24. apt-get install nodejs nodejs-legacy npm -y
  25.  
  26. #check version npm and node
  27. npm install -g npm
  28.  
  29. NODE_V="$(node -v)"
  30. NPM_V="$(npm -v)"
  31.  
  32. echo "node version : " $NODE_V
  33. echo "npm version : " $NPM_V
  34.  
  35. HOME_PATH=$(cd ~/ && pwd)
  36. INSTALL_PATH=/opt
  37. ANDROID_SDK_PATH=/opt/android-sdk
  38. NODE_PATH=/usr/bin/node
  39. GRADLE_PATH=/opt/gradle
  40.  
  41. # x86_64 or i686
  42. LINUX_ARCH="$(lscpu | grep 'Architecture' | awk -F\: '{ print $2 }' | tr -d ' ')"
  43.  
  44. # Latest Android Linux SDK for x64 and x86 as of 16-08-2016
  45. ANDROID_SDK_X64="http://dl.google.com/android/android-sdk_r24.4.1-linux.tgz"
  46. ANDROID_SDK_X86="http://dl.google.com/android/android-sdk_r24.4.1-linux.tgz"
  47.  
  48. # Latest Gradle as of 16-08-2016
  49. GRADLE_ALL="http://services.gradle.org/distributions/gradle-2.13-all.zip"
  50.  
  51. if [ "$LINUX_ARCH" == "x86_64" ]; then
  52.     # Add i386 architecture
  53.     dpkg --add-architecture i386
  54. fi
  55.  
  56. cd ~/tmp
  57.  
  58. if [ "$LINUX_ARCH" == "x86_64" ]; then
  59.  
  60.     wget -c "$ANDROID_SDK_X64" -O "android-sdk.tgz" --no-check-certificate
  61.     wget -c "$GRADLE_ALL" -O "gradle.zip" --no-check-certificate
  62.  
  63.     tar zxf "android-sdk.tgz" -C "$INSTALL_PATH"
  64.     unzip "gradle.zip"
  65.     mv "gradle-3.0" "$INSTALL_PATH"
  66.  
  67.     cd "$INSTALL_PATH" && mv "android-sdk-linux" "android-sdk"
  68.     cd "$INSTALL_PATH" && mv "gradle-3.0" "gradle"
  69.  
  70.     # Android SDK requires some x86 architecture libraries even on x64 system
  71.     apt-get install -y libc6:i386 libgcc1:i386 libstdc++6:i386 libz1:i386
  72.  
  73. else
  74.  
  75.     wget -c "$ANDROID_SDK_X86" -O "android-sdk.tgz" --no-check-certificate
  76.     wget -c "$GRADLE_ALL" -O "gradle.zip" --no-check-certificate
  77.  
  78.     tar zxf "android-sdk.tgz" -C "$INSTALL_PATH"
  79.     unzip "gradle.zip"
  80.     mv "gradle-3.0" "$INSTALL_PATH"
  81.  
  82.     cd "$INSTALL_PATH" && mv "android-sdk-linux" "android-sdk"
  83.     cd "$INSTALL_PATH" && mv "gradle-3.0" "gradle"
  84.  
  85. fi
  86.  
  87. cd "$INSTALL_PATH" && chown root:root "android-sdk" -R
  88. cd "$INSTALL_PATH" && chmod 777 "android-sdk" -R
  89.  
  90. cd ~/
  91.  
  92. # Add Android and NPM paths to the profile to preserve settings on boot
  93. echo "export PATH=\$PATH:$ANDROID_SDK_PATH/tools" >> ".profile"
  94. echo "export PATH=\$PATH:$ANDROID_SDK_PATH/platform-tools" >> ".profile"
  95. echo "export PATH=\$PATH:$GRADLE_PATH/bin" >> ".profile"
  96.  
  97. # Add Android and NPM paths to the temporary user path to complete installation
  98. export PATH=$PATH:$ANDROID_SDK_PATH/tools
  99. export PATH=$PATH:$ANDROID_SDK_PATH/platform-tools
  100. export PATH=$PATH:$GRADLE_PATH/bin
  101.  
  102. # Install JDK and Apache Ant
  103. apt-get -y install default-jdk ant
  104.  
  105. # Set JAVA_HOME based on the default OpenJDK installed
  106. export JAVA_HOME="$(find /usr -type l -name 'default-java')"
  107. if [ "$JAVA_HOME" != "" ]; then
  108.     echo "export JAVA_HOME=$JAVA_HOME" >> ".profile"
  109. fi
  110.  
  111. # Install Apache Cordova and Ionic Framework
  112. npm install -g cordova
  113. npm install -g ionic
  114.  
  115. cd "$INSTALL_PATH" && chmod 777 "gradle" -R
  116.  
  117. # Clean up any files that were downloaded from the internet
  118. cd ~/ && rm -rf tmp
  119.  
  120. . .profile
  121.  
  122. echo "----------------------------------"
  123. echo "DONE"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement