     if fs.existsSync projNameHyph
       throw new Error "Directory #{projNameHyph} already exists"
 
-    execSync 'type lein'
-    execSync 'type pod'
-    execSync 'type watchman'
-
-    podVersion = execSync('pod --version').toString().trim()
+    exec 'type lein'
+    exec 'type pod'
+    exec 'type watchman'
+
+    podVersion = exec('pod --version', true).toString().trim()
     unless semver.satisfies podVersion, ">=#{podMinVersion}"
       throw new Error """
                       Natal requires CocoaPods #{podMinVersion} or higher (you have #{podVersion}).

                      """

    log 'Creating Leiningen project'
    execSync "lein new #{projNameHyph}", stdio: 'ignore'

    log 'Updating Leiningen project'
    process.chdir projNameHyph
    execSync "cp #{resources}project.clj project.clj"
    editSync 'project.clj', [[projNameHyphRx, projNameHyph]]
    corePath = "src/#{projNameUs}/core.clj"
    fs.unlinkSync corePath
    corePath += 's'
    execSync "cp #{resources}core.cljs #{corePath}"
    editSync corePath, [[projNameHyphRx, projNameHyph], [projNameRx, projName]]
    execSync "cp #{resources}ambly.sh start.sh"
    editSync 'start.sh', [[projNameUnderRx, projNameUs]]

    log 'Compiling ClojureScript'
    execSync 'lein cljsbuild once dev', stdio: 'ignore'

    log 'Creating React Native skeleton'
    fs.mkdirSync 'iOS'


getDeviceList = ->
  try
    exec 'xcrun instruments -s devices', true
      .toString()
      .split '\n'
      .filter (line) -> /^i/.test line
