Class: XcodeInstall::Command::InstallCLITools
- Inherits:
-
XcodeInstall::Command
- Object
- CLAide::Command
- XcodeInstall::Command
- XcodeInstall::Command::InstallCLITools
- Defined in:
- lib/xcode/install/cli.rb
Instance Method Summary collapse
Methods inherited from XcodeInstall::Command
Instance Method Details
#install ⇒ Object
16 17 18 19 20 21 22 23 24 |
# File 'lib/xcode/install/cli.rb', line 16 def install cli_placeholder_file = '/tmp/.com.apple.dt.CommandLineTools.installondemand.in-progress' # create the placeholder file that's checked by CLI updates' .dist code in Apple's SUS catalog FileUtils.touch(cli_placeholder_file) # find the CLI Tools update product = `softwareupdate -l | grep "\*.*Command Line" | head -n 1 | awk -F"*" '{print $2}' | sed -e 's/^ *//' | tr -d '\n'` `softwareupdate --verbose -i "#{product}"` FileUtils.rm(cli_placeholder_file) end |
#installed? ⇒ Boolean
12 13 14 |
# File 'lib/xcode/install/cli.rb', line 12 def installed? File.exist?('/Library/Developer/CommandLineTools/usr/lib/libxcrun.dylib') end |
#run ⇒ Object
7 8 9 10 |
# File 'lib/xcode/install/cli.rb', line 7 def run fail Informative, 'Xcode CLI Tools are already installed.' if installed? install end |