Comment fonctionnent les mises à jour de logiciels sous OS X?

8

Je viens de passer de Linux à OS X et je m'y habitue encore.

Je sais que je devrai utiliser Homebrew car je compte sur de nombreux outils CLI. En outre, je viens de lire sur Cask, ce qui me fait me poser des questions sur une chose. Comment les logiciels (et non ceux de l'App Store) sont-ils mis à jour? De type Windows, c’est-à-dire un message indiquant une nouvelle version pour que je puisse la télécharger, ou en quelque sorte intégré au système, de sorte que je n’ai pas besoin de télécharger un nouveau fichier .dmg à chaque fois que je souhaite mettre à jour une application?

Si c'est "Windows-like", est-il préférable d'utiliser Cask pour des choses comme Firefox, VirtualBox, VLC, LibreOffice ...?

utilisateur3439894
la source
2
Si vous n'avez besoin que de commandes telles que g ++ / gcc et d'autres outils de développement, vous pouvez installer les outils de développement en ligne de commande d'Apple, en tapant simplement g ++ dans Terminal, puis accepter l'installation. Toutes les mises à jour de ces outils de développement se trouvent dans l'application App Store, sous "Mises à jour".
Flare Cat

Réponses:

8
  • Avec cask, la mise à niveau de toutes vos applications installées (celle installée avec cask) se fait avec une seule commande:

    brew cask update
    

    Il s'agit d'un moyen non officiel (basé sur la communauté) de mettre à niveau des applications et ne contient que des logiciels gratuits sur son référentiel (il n'y a aucun moyen d'acheter). Les avantages de ce mécanisme sont les suivants:

    1. C'est scriptable
    2. Il sépare les applications du système d'applications utilisateur (vos applications installées sont placées au ~/Applications/lieu de /Applications/) il est donc par utilisateur.
    3. L'installation des programmes d'installation packagés se fait en arrière-plan, ce qui évite les interactions de l'utilisateur.
    4. La désinstallation des applications est programmée par la communauté. Vous ne craignez plus les fichiers restants après la désinstallation.
    5. Il est possible d’avoir systématiquement plusieurs versions d’applications car le mécanisme utilise des liens symboliques pour la version la plus récente ou une application sélectionnée.
    6. La source des applications est conservée dans le cache afin que vous puissiez les installer et les désinstaller sans téléchargement supplémentaire.

    Les inconvénients de ce mécanisme sont les suivants:

    1. Il n'y a pas de mise à niveau différentielle. Il télécharge l’image entière de l’application (.dmg) ou le package (.pkg) et les stocke dans le cache.
    2. L'installation d'applications s'appuie sur des liens symboliques qui peuvent ne pas être idéaux (il existe deux copies d'une application et peuvent être répétées dans la liste "Ouvrir avec")
  • Il existe également un mécanisme officiel App Store (par défaut) pour la mise à niveau des applications installées avec lui-même. Il prend en charge la mise à niveau différentielle et peut mettre à niveau toutes ses applications installées en un seul clic. mais contrairement à Cask, l'exécution de la mise à niveau, de l'installation, etc. n'est pas scriptable et ne conserve pas les sources.

  • Un autre mécanisme est la vérification de la mise à niveau dans l'application qui se produit au démarrage de l'application. Il diffère de la mise à niveau de l'App Store et prend également en charge la mise à niveau différentielle.

Je pense que c’est à vous de choisir le mécanisme à utiliser pour quel type d’application, cette comparaison peut vous aider.

J'utilise Cask pour des applications non fournies dans l'App Store (comme VLC, OS X FUSE, OwnCloud, Weka, etc.) et dans l'App Store pour les applications non gratuites que j'ai achetées. Les mises à niveau intégrées ne me conviennent pas car elles ne conservent pas la source des données téléchargées.

Hamid Rohani
la source
3

Il n’existe pas de "meilleur" moyen généralement accepté de mettre à jour les applications non fournies par Apple App Store ni par Mac. Il y a beaucoup de façons, certaines utilisent les outils Linux, d'autres réinventent certaines roues, d'autres scriptent rsync / curl de la même façon que homebrew est construit sur un script de base et des recettes de paquetage ruby.

En ce qui concerne les applications qui se mettent à jour automatiquement (ou au moins, avertissant les utilisateurs finaux lorsqu'une mise à jour est disponible), certaines utilisent un cadre tel que sparkle pour vérifier les mises à jour ou programment leur propre mécanisme de vérification des mises à jour. Microsoft Office, Chrome, Firefox et de nombreuses autres applications n'ont besoin d'aucun autre mécanisme de mise à jour que l'activation du mécanisme de mise à jour automatique.

Les fûts Homebrew sont probablement mis à jour, de même que l'expérience de base de Homebrew pour les outils de ligne de commande. Je commencerais par cela, puis je poserais la question suivante si / lorsque vous avez une application spécifique à l'esprit qui ne met pas à jour vos souhaits.

Si vous gérez les Mac de manière professionnelle, il existe de nombreux frameworks pour créer des images, mettre à jour et même exécuter votre propre "app store" afin de conditionner des versions spécifiques d'applications et le processus parallèle d'Apple.

bmike
la source