J'aimerais écrire un script pour l'installation des outils de ligne de commande Xcode.
Sur Mavericks,
xcode-select --install
ouvrira une boîte de dialogue invitant l’utilisateur à s’installer, mais j’aimerais déclencher l’installation sans la boîte de dialogue, comme pour utiliser la softwareupdate
commande.
Y a-t-il un moyen de faire cela?
Modifier:
En particulier, xcode-select --install
lance une application qui télécharge et installe les outils sans demander à l'utilisateur de les télécharger manuellement ou d'avoir un compte de développeur Apple. Il semble utiliser /System/Library/CoreServices/Install Command Line Developer Tools.app
pour faire cela.
J'aimerais utiliser le même mécanisme qu'Apple, mais sans l'interface graphique. Je ne veux pas avoir à télécharger manuellement le fichier .dmg contenant les outils car cela semble fragile. Apple propose plusieurs autres outils de ligne de commande, comme softwareupdate
et install
que télécharger ou installer le logiciel directement auprès d' Apple, et je suis à la recherche de trouver la même chose pour ce type de distribution.
Réponses:
Si je pouvais demander un crédit pour celui-ci, mais je l'ai trouvé enterré dans https://github.com/chcokr/osx-init/blob/master/install.sh
Cela a fonctionné sur ma machine virtuelle sans tête 10.10 sans interface utilisateur connectée. Mises à jour appliquées pour compatibilité avec au moins 10.9-10.14
Cela suppose que vous n’avez qu’un résultat
softwareupdate -l | grep "\*.*Command Line"
: si cela renvoie plusieurs versions, vous aurez peut-être besoin d’une logique plus spécifique. (Je n'ai pas de cas de repro)une variante qui semble fonctionner (tests limités) le 10.10.10.14 (10.9 ne renvoie pas de numéro de version osx dans le nom de Cli Tools..so cela ne fonctionne pas là):
quelques exemples de résultats:
la source
rm /tmp/.com.apple.dt.CommandLineTools.installondemand.in-progress
avoir exécutésoftwareupdate -i ...
, sinon les appels suivants serontsoftwareupdate -l
affichés enCommand Line Tools ...
tant que mise à jour disponible. Cette mise à jour (supposée) ne semble pas apparaître dans l'App Store, probablement parce qu'ellesoftwareupdate -l
répertorie uniquement les mises à jour "système", pas les mises à jour d'applications.Téléchargez le package d'outils de ligne de commande à partir du site Apple Developer .
Montez le 1 DMG téléchargé :
Exécutez le programme d'installation via la ligne de commande:
Lorsque vous avez terminé, démontez le fichier DMG et supprimez le téléchargement.
Éjectez le DMG 2 .
Supprimer le DMG.
1 Au moment de la rédaction de cet article, le nom de DMG et le package téléchargés sont exacts. Toutefois, à l'avenir, le nom pourrait changer. N'oubliez pas de modifier la commande (ou utilisez la tabulation) pour renseigner la partie pertinente de la commande.
2 Si la commande ne fonctionne pas, vérifiez que le disque correspond au nom du montage (comme indiqué
mount
).la source
Une alternative est d'utiliser ce script que j'ai écrit:
https://gist.github.com/brysgo/9007731
la source
Tentative de nettoyage du style et de la logique de la réponse acceptée, en la rendant aussi indépendante de la version que possible, en utilisant
softwareupdate
au maximum sa capacité et en introduisant uneos
variable réutilisable :la source
C'est ce que j'utilise, basé en partie sur la réponse de brysgo.
update: Apple continue d’ajouter de nouvelles colonnes à la base de données d’accès; il vous suffit de spécifier des valeurs pour les 5 premières et mis à jour le code en conséquence.
la source
Quelques autres solutions peuvent être trouvées à ces réponses:
Télécharger les outils de ligne de commande XCode
Vous pouvez télécharger les packages CLTools XCode 4.x à partir de leur site de téléchargement officiel via des liens directs.
Voici un script qui automatisera le processus d’installation pour vous 1 .
Pour trouver des liens mis à jour pour les outils, vous pouvez utiliser cette commande:
[1] S'il vous plaît ne pas abuser / surcharger leurs serveurs
Vous constaterez peut-être qu'il est plus facile de se connecter d'abord au site de téléchargement pour développeurs Apple et de télécharger les derniers outils de ligne de commande disponibles sur ce site. Vous pouvez ensuite héberger le
.dmg
sur votre propre serveur de dépôt de package et pouvoir l'installer de manière fiable.dmg
sur de nombreuses machineshdiutil
sans avoir à vous connecter à developer.apple.com.À partir du 06/10/2015, le lien vers les derniers outils de ligne de commande
dmg
est le suivant:http://adcdownload.apple.com/Developer_Tools/Command_Line_Tools_OS_X_10.10_for_Xcode_6.3.2/commandlinetoolsosx10.10forxcode6.3.2.dmg
la source
dmg
et copier des parties essentielles de la réponse localement pour cette réponse.J'ai constaté que si vous installez Home Brew, les outils de ligne de commande seront automatiquement installés.
J'ai testé cela en utilisant cette image vagabonde .
Exécutez la commande suivante pour installer Homebrew , puis installez les outils de ligne de commande.
la source