Depuis la sortie d'OS X El Capitan, j'ai des difficultés à mettre à jour les applications tierces (hors App Store) à l'aide des fonctions de mise à jour intégrées à l'application. En général, celles-ci téléchargent automatiquement la mise à jour et vous demandent de redémarrer l'application pour l'appliquer. Parfois, cette opération s'effectue dans la barre de menu de l'application, et parfois, une fenêtre contextuelle vous demande de redémarrer l'application.
Cependant, quel que soit le nombre de fois où je redémarre l'application, la mise à jour ne sera jamais appliquée. Elle recommence donc à télécharger la mise à jour et demande à nouveau de redémarrer l'application.
Voici quelques exemples d'applications avec lesquelles j'ai des problèmes : Éditeur Atom , Slack (version Web DL), et quelques autres.
J'ai lu quelque part que pourrait être liée à la protection SIP qui a été introduite avec El Capitan, et que seuls les utilisateurs Root peuvent utiliser cette version particulière de la mise à jour automatique maintenant. Est-ce exact ?
Mon utilisateur principal n'est pas un utilisateur administrateur. Au lieu de cela, je dois invoquer l'autorisation de mon utilisateur administrateur lorsque des privilèges d'administrateur sont nécessaires. Je ne sais pas si cela a un rapport avec le problème : les mises à jour in-app ne demandent jamais les privilèges d'administrateur.
Dans cette optique, j'aimerais éviter de désactiver la protection SIP si possible.
Modifier : exemple de system.log
Malheureusement, j'ai été plus rapide que le premier commentaire ci-dessous, et contre ce conseil j'ai installé cask
. Ainsi, les applications problématiques comme Atom et Slack sont actuellement dans leur dernière version. Cependant, je semble avoir un problème similaire avec une nouvelle application appelée RealTime Board. Alors qu'Atom et Slack se mettent automatiquement à jour via le menu fichier et demandent ensuite un redémarrage, RealTime Board télécharge la mise à jour et demande un redémarrage via une pop-up. Je soupçonne donc qu'il fonctionne de la même manière que ces autres applications avec lesquelles j'ai eu des problèmes. Là encore, la mise à jour de l'application refuse de s'appliquer au redémarrage, et me demande continuellement de mettre à jour et de redémarrer via une pop-up au lancement de l'application. Je vais devoir attendre et voir comment Atom et Slack se comporteront lorsque les nouvelles versions seront disponibles. Voici la tentative de mise à jour de RealTime Board à partir de system.log
:
May 17 22:56:49 myuser ShipIt[2803]: Beginning installation
May 17 22:56:49 myuser ShipIt[2803]: Couldn't abort install and restore owned bundle to previous location file:///Applications/RealtimeBoard.app, error NSError { domain: NSPOSIXErrorDomain, code: 2, description: "No such file or directory" }
May 17 22:56:52 myuser ShipIt[2803]: Installation error: Error Domain=NSPOSIXErrorDomain Code=13 "Permission denied" UserInfo={NSLocalizedDescription=Permission denied}
May 17 22:56:52 myuser com.apple.xpc.launchd[1] (com.electron.realtimeboard.ShipIt[2803]): Service exited with abnormal code: 1
May 17 22:56:52 myuser ShipIt[2848]: Resuming installation attempt 2
May 17 22:56:52 myuser ShipIt[2848]: Couldn't abort install and restore owned bundle to previous location file:///Applications/RealtimeBoard.app, error NSError { domain: NSPOSIXErrorDomain, code: 2, description: "No such file or directory" }
May 17 22:56:54 myuser ShipIt[2848]: Installation error: Error Domain=NSPOSIXErrorDomain Code=13 "Permission denied" UserInfo={NSLocalizedDescription=Permission denied}
May 17 22:56:54 myuser com.apple.xpc.launchd[1] (com.electron.realtimeboard.ShipIt[2848]): Service exited with abnormal code: 1
May 17 22:56:54 myuser ShipIt[2857]: Resuming installation attempt 3
May 17 22:56:54 myuser ShipIt[2857]: Couldn't abort install and restore owned bundle to previous location file:///Applications/RealtimeBoard.app, error NSError { domain: NSPOSIXErrorDomain, code: 2, description: "No such file or directory" }
May 17 22:56:56 myuser com.apple.usbmuxd[114]: notice USBMuxBonjourDeviceListenerCreate: LOCKDOWN_V2_BONJOUR_SERVICE_NAME is _apple-mobdev2._tcp,8d1f07bd
May 17 22:56:57 myuser ShipIt[2857]: Installation error: Error Domain=NSPOSIXErrorDomain Code=13 "Permission denied" UserInfo={NSLocalizedDescription=Permission denied}
May 17 22:56:57 myuser syslogd[60]: ASL Sender Statistics
May 17 22:56:57 myuser com.apple.xpc.launchd[1] (com.electron.realtimeboard.ShipIt[2857]): Service exited with abnormal code: 1
May 17 22:56:57 myuser ShipIt[2877]: Too many attempts to install, aborting update
May 17 22:56:57 myuser ShipIt[2877]: Error aborting installation: Error Domain=NSPOSIXErrorDomain Code=2 "No such file or directory" UserInfo={NSLocalizedDescription=No such file or directory}
May 17 22:56:57 myuser ShipIt[2877]: Application launched at file:///Applications/RealtimeBoard.app
Je pense que le problème peut être lié à ShipIt qui, je pense, est le même système que celui utilisé par Atom pour les mises à jour.
Il existe un fil ici suggérant (de façon contestable) que le problème pourrait être lié au fait que l'utilisateur admin n'est pas le "propriétaire" de l'application. Listing chown
sur l'application révèle ceci :
drwxr-xr-x@ 3 myuser admin 102 Mar 22 13:34 RealtimeBoard.app
Je suppose que cela signifie que je suis le propriétaire de l'application.
Vous utilisez des fûts ?
NB : J'ai lu quelque chose sur Homebrew-Cask comme une alternative pour ne pas avoir à faire tout le travail manuel de mise à jour des applications non-App Store. Je n'ai jamais entendu parler de cask
avant, mais j'utilise Homebrew. Serait-ce une solution recommandable ?
1 votes
Je doute que cela ait un rapport avec le SIP. Et je vous déconseille d'essayer Cask pour installer Atom ou quoi que ce soit d'autre pour l'instant. Je recommande de résoudre ce problème d'abord. Ouvrez Console.app depuis le dossier Utilities, sélectionnez "system.log" dans la liste de gauche et entrez "atom" dans le champ de recherche en haut à droite. Si vous avez essayé de mettre à jour Atom récemment, il devrait y avoir une poignée d'entrées. Veuillez les ajouter à votre question.
0 votes
@AlistairMcMillan Merci - Malheureusement, je vous ai devancé, et j'ai déjà installé
cask
avec les dernières versions de certaines applications. J'ai ajouté un exemple desystem.log
pour l'application RealTime Board qui, je pense, connaît le même problème. Il semble que ce soit lié àShipIt
.2 votes
Je pense que cet échec est dû au fait que vous utilisez un compte non-administrateur. Ce compte ne pourra pas écrire dans le dossier /Applications, de sorte que le programme de mise à jour devrait vous demander de vous élever, mais il ne semble pas le faire. Il y a de nombreux messages en ligne où les gens disent la même chose. github.com/atom/atom/issues/2860 discuss.atom.io/t/self-updates-with-non-admin-os-x-account/3155/