-
-
Notifications
You must be signed in to change notification settings - Fork 197
A script to setup a fresh Mac OS machine to develop with NativeScript #626
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,63 @@ | ||
# coding: utf-8 | ||
|
||
# Only the user can manually download and install Xcode from AppStore | ||
puts "Installing Xcode... Please, click 'Get' or 'Update' to install Xcode from the App Store." | ||
`open 'macappstore://itunes.apple.com/us/app/xcode/id497799835'` | ||
|
||
until `xcodebuild -version`.include? "version" do | ||
puts "Waiting for Xcode to finish installing..." | ||
sleep(30) | ||
end | ||
|
||
puts "You need to accept the Xcode license agreement to be able to use the Xcode command-line tools. (You might need to provide your password.)" | ||
`sudo xcodebuild -license` | ||
|
||
# Install all other dependencies | ||
puts "Installing Homebrew... (You might need to provide your password.)" | ||
`ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"` | ||
|
||
puts "Installing CocoaPods... This might take some time, please, be patient. (You might need to provide your password.)" | ||
system('sudo gem install cocoapods') | ||
|
||
puts "Installing Homebrew Cask... (You might need to provide your password.)" | ||
system('brew install caskroom/cask/brew-cask') | ||
|
||
puts "Installing the Java SE Development Kit... (You might need to provide your password.)" | ||
system('brew cask install java') | ||
`echo "export JAVA_HOME=$(/usr/libexec/java_home)" >> ~/.bash_profile` | ||
`echo "export ANDROID_HOME=/usr/local/opt/android-sdk" >> ~/.bash_profile` | ||
|
||
puts "Creating Homebrew formula for NativeScript." | ||
File.open("/usr/local/Library/Formula/native-script.rb", "w:utf-8") do |f| | ||
f.write DATA.read | ||
end | ||
|
||
puts "Installing NativeScript formula... This might take some time, please, be patient." | ||
system('brew install native-script') | ||
|
||
__END__ | ||
|
||
class NativeScript < Formula | ||
desc "NativeScript" | ||
homepage "https://www.nativescript.org" | ||
version "1.3.0" | ||
url "https://raw.githubusercontent.com/NativeScript/nativescript-cli/brew/setup/empty.tar.gz" | ||
sha256 "813e1b809c094d29255191c14892a32a498e2ca298abbf5ce5cb4081faa4e88f" | ||
|
||
depends_on :macos => :yosemite | ||
depends_on "pkg-config" => :build | ||
depends_on "node" | ||
depends_on "ant" | ||
depends_on "android-sdk" | ||
depends_on "gradle" | ||
|
||
def install | ||
ohai "Installing NativeScript CLI..." | ||
system "/usr/local/bin/npm install -g nativescript" | ||
|
||
ohai "Configuring your system for Android development... This might take some time, please, be patient." | ||
system "echo yes | android update sdk --filter tools,platform-tools,android-22,android-17,build-tools-22.0.1,sys-img-x86-android-22,extra-android-m2repository,extra-google-m2repository,extra-android-support --all --no-ui" | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Hm, are you installing just the SDK packages here o.O? Or are you installing a bunch of Android stuff? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. It's the later. Changed the message as suggested. |
||
|
||
ohai "The ANDROID_HOME and JAVA_HOME environment variables have been added to your .bash_profile. Restart the terminal to use them." | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. you can call "source ~/.bash_profile" and there will be no need to restart the terminal |
||
end | ||
end |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does "Launching Xcode install... Please, click..." sound better?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We are opening the AppStore to let the user install Xcode. We are not launching the Xcode installer, per se. The message was suggested by @ikoevska and I think it is appropriate in our case.