8 votes

Comment fonctionnent les mises à jour logicielles dans OS X ?

Je viens de passer de Linux à OS X et je suis encore en train de m'y habituer.

Je sais que j'aurai besoin d'utiliser Homebrew, car j'utilise de nombreux outils CLI. Par ailleurs, je viens de lire un article sur Cask, ce qui m'amène à m'interroger sur une chose. Comment les logiciels (qui ne viennent pas de l'App Store) obtiennent-ils des mises à jour ? A la manière de Windows, c'est à dire un message notifiant une nouvelle version pour que je puisse la télécharger, ou intégré d'une manière ou d'une autre au système, de sorte que je n'ai pas besoin de télécharger un nouveau .dmg à chaque fois que je veux mettre à jour une application ?

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

8voto

Hamid Rouhani Points 1421
  • Avec cask La mise à jour de toutes les applications installées (qui ont été installées avec cask) se fait à l'aide d'une seule commande :

    brew cask update

    Il s'agit d'un moyen non officiel (basé sur la communauté) de mettre à jour des applications et son dépôt ne contient que des logiciels gratuits (il n'y a pas de possibilité d'achat). Les avantages de ce mécanisme sont les suivants :

    1. Il est possible d'écrire un script
    2. Il sépare les applications système des applications utilisateur (les applications installées sont placées dans le dossier ~/Applications/ au lieu de /Applications/ ), c'est donc par utilisateur.
    3. L'installation des programmes d'installation packagés se fait en arrière-plan et ne nécessite donc pas d'interactions de la part de l'utilisateur.
    4. La désinstallation des applications est programmée par sa communauté, de sorte qu'il n'y a pas d'inquiétude à avoir quant aux 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 dernière version ou la version sélectionnée des applications.
    6. La source des applications est conservée dans le cache, ce qui vous permet de les installer et de 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. Elle télécharge l'image complète de l'application (.dmg) ou du paquetage (.pkg) et la stocke dans le cache.
    2. L'installation des applications repose sur des liens symboliques qui peuvent ne pas être idéaux (il y a deux copies d'une application et elle peut être répétée dans la liste "Ouvrir avec").
  • Il existe également un mécanisme officiel de l'App Store (par défaut) pour la mise à niveau des applications installées avec lui-même et 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, il n'est pas possible d'exécuter des scripts pour lancer la mise à niveau, l'installation, etc. et il ne conserve pas les sources.

  • Un autre mécanisme est la vérification de la mise à niveau in-app qui se produit au démarrage de l'application. Il est différent 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 quel mécanisme utiliser pour quel type d'application, cette comparaison peut vous aider.

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

3voto

Oskar Points 1242

Il n'existe pas de "meilleure" méthode généralement acceptée pour mettre à jour les applications qui ne sont pas livrées par Apple ou par le Mac App Store. Il y a de nombreuses façons, certaines utilisent des outils linux, d'autres réinventent certaines roues, d'autres font des scripts rsync/curl dans une veine similaire à la façon dont homebrew est construit sur un noyau script et des recettes de paquets ruby.

En ce qui concerne les applications qui s'actualisent d'elles-mêmes (ou du moins qui informent les utilisateurs finaux de la disponibilité d'une mise à jour), certaines utilisent un cadre comme 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 pas besoin d'un autre mécanisme de mise à jour que celui de l'auto-mise à jour.

Les Homebrew casks se mettent probablement à jour aussi bien que le core homebrew experience pour les outils de ligne de commande, donc je commencerais par cela et poserais ensuite une question complémentaire si/quand vous avez une application spécifique à l'esprit qui ne se met pas à jour selon vos désirs.

Si vous gérez des Mac de manière professionnelle, il existe de nombreux cadres permettant de créer des images, de les mettre à jour et même de gérer votre propre "magasin d'applications" afin d'emballer des versions spécifiques d'applications et de contourner le processus d'Apple.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X