Univers Apple

10
Avril
2022

Gérer les mises à jours des applications Homebrew sur 10.14 et inférieur.

Publié par sky

Homebrew suit Apple pour la prise en charge des systèmes acceptés. Apple ne fournissant plus aucune mise à jour pour 10.14, les mises à jour des applications disponibles via Homebrew ne sont plus garanties pour fonctionner sur ces systèmes.

Au niveau de Homebrew, cela peut avoir un impact sur deux niveaux.

D'une part, les applications ne sont plus forcément, compatible avec notre version de macOS. Dans les faits, malgré l'obsolescence, il est toujours possible d'installer et de mettre à jour un grand nombre de paquets. Seuls quelques uns deviennent incompatibles, même si le nombre augmente à chaque version de macOS que l'on a en retard. Attention, cela concerne aussi les dépendances, il suffit qu'une dépendance ne soit plus disponible, pour que l'on ne puisse plus mettre à jour les applications parentes.

D'autres part, lorsqu'il s'agit d'une application compilée, il est parfois nécessaire de faire la compilation sur son Mac. Compiler les programmes n'est pas un problème en soit, Homebrew s'occupe tout seul de faire le nécessaire. Le soucis, c'est que la compilation d'un programme peut prendre du temps et surtout beaucoup de ressources sur votre Mac. Il peut ainsi se mettre à ventiler rapidement, car la compilation d'un programme est en général capable d'utiliser tous les coeurs, et à vitesse maximal, de votre processeur.

Le vrai soucis vient lorsque justement, une mise à jour est disponible pour l'une de nos applications, que Homebrew tente de la compiler, mais qu'il s'en suit un échec à cause de la compatibilité.

La précédente version est toujours disponible, et vous pouvez toujours l'utiliser. De ce côté là, tout va bien. Cependant, à chaque fois que vous allez faire un upgrade de vos paquets, la compilation va recommencer, et certainement de nouveau échouer. Cela va donc vous prendre de temps inutilement, mais aussi consommer de l'électricité pour rien.

Lorsqu'une compilation échoue, la solution est alors de mettre pin l'application pour qu'Homebrew n'essaie plus de la mettre à jour.

Par exemple, pour bloquer l'upgrade de ppsspp

brew pin ppsspp

Pour retrouver les applications qui ont été pin, il suffit de demander à Homebrew les paquets obsolètes

brew outdated

Voici ce que j'obtiens sur mon Mac, toujours en 10.14

ffmpeg (5.0) < 5.0.1
fontconfig (2.13.1) < 2.14.0 [pinned at 2.13.1]
gd (2.3.3_1) < 2.3.3_2
handbrake (1.4.2_1) < 1.5.1 [pinned at 1.4.2_1]
ncdu (1.16) < 2.1.1 [pinned at 1.16]
ppsspp (1.11.3) < 1.11.3_1 [pinned at 1.11.3]
qt (6.2.0) < 6.2.3_1 [pinned at 6.2.0]
qt@5 (5.15.2_1) < 5.15.3 [pinned at 5.15.2_1]

Comme vous pouvez le voir, je commence à avoir une petite liste d'application pin. Mais il y a aussi deux applications qui ne le sont pas et qui pourtant, ne sont pas à jour. Lorsque je tente d'en mettre à jour une des deux

brew upgrade gd

voici le résultat

Warning: You are using macOS 10.14.
We (and Apple) do not provide support for this old version.
You will encounter build failures with some formulae.
Please create pull requests instead of asking for help on Homebrew's GitHub,
Twitter or any other official channels. You are responsible for resolving
any issues you experience while you are running this
old version.

==> Upgrading 1 outdated package:
gd 2.3.3_1 -> 2.3.3_2
Error: You must `brew unpin fontconfig` as installing gd requires the latest version of pinned dependencies

Je reçois une erreur, car l'une des dépendances de l'application a été pin. D'ailleurs, pour les deux application gd et ffmpeg, le soucis est la même dépendance.

Bien souvent, lorsque la compilation échoue pour une application, il y a peu de chance que cela revienne. En général, un SDK plus récent est utilisé, et notre version de macOS n'est définitivement plus supportée. Cependant, il m'est déjà arrivé qu'une application redevienne compatible. C'est pour cela que lorsque je vois une application qui est pin et qui est à nouveau mise à jour, si la mise à jour m'intéresse, je la retente.

Pour cela, il faut d'abord unpin le paquet, par exemple

brew unpin ppsspp

puis réessayer la mise à jour.

brew upgrade ppsspp

Tout simplement.

Gérer Homebrew sur une version un peu ancienne de macOS est toujours possible, mais nécessite de jongler un peu selon les applications et les versions. On perd un peu de l'intérêt de Homebrew, mais n'en déplaise à Apple, tant que le Mac fonctionne, même si il a quelques années, nous pouvons encore faire des choses sympa avec.

 
Sommaire de la série
 
 
Commentaires
Aucun commentaire pour le moment.

 

Poster un commentaire
En postant sur skymac.org, je m'engage à être courtois et à ce que mon message soit pertinent avec le sujet de l'article.
En outre, j'accepte, sans condition, que mon message soit refusé et supprimé si ces règles ne sont pas appliquées.
Ouvrir le panneau de gestion des cookies
Fermer le panneau
Ce site utilise des cookies pour assurer son bon fonctionnement. Il utilise aussi des cookies issues de services tiers permettant de proposer des fonctionnalités avancées. À tout moment, vous pouvez choisir quels services vous souhaitez activer ou refuser, afin de retirer votre consentement quant à l'utilisation des cookies.
 
Personnalisation des services
Vous êtes libre de choisir quels services vous souhaitez activer. En autorisant ces services tiers, vous acceptez le dépôt et la lecture de cookies et l'utilisation de technologies de suivi nécessaires à leur bon fonctionnement. En retirant votre consentement pour certains de ces services, certaines fonctionnalités du site peuvent ne plus fonctionner.
Navigation du site  En savoir plus
Le site écrit un cookie de session permettant son bon fonctionnement et aidant à la navigation. Il ne peut être désactivé.
Utilisation : 1 cookie, enregistre l'identifiant de la session.
Durée de vie : Le cookie est présent pendant toute la session sur le site. Il devient obsolète après 24 minutes d'inactivité.
Obligatoire
Popup Média
Afficher des vidéos depuis Yoube ou Dailymotion.
 
Tout accepter Tout refuser Gérer