Le futur de macOS, la sécurité et les problèmes qui arriveront

macOS Catalina, le prochain macOS, va amener pas mal de changements sous le capot, et dans mon cas (aka un gars qui aime bien bidouiller), c’est assez embêtant.

Je ne vais pas détailler les trucs les plus importants, mais Catalina supprime complètement le support des applications 32 bits, d’abord. C’est un double problème. Premièrement, les applications uniquement 32 bits ne fonctionneront plus. Il peut s’agit d’un vieux programme, par exemple, comme iPhoto chez Apple. Ou EyeTV (j’aime bien EyeTV). Deuxièmement, les applications qui dépendent de logiciels 32 bits ne fonctionneront plus non plus, ou seulement en partie. le cas typique va être les logiciels qui utilisent encore les frameworks de QuickTime 7 pour décoder de la vidéo ou de l’audio. Parce qu’ils disparaissent (ils sont encore et toujours en 32 bits), et donc les logiciels qui en dépendent ne fonctionneront plus. Encore une fois, on parle d’EyeTV par exemple. Oui même d’iMovie et Final Cut pour le décodage de certains codecs. En fait, pas mal de vieux codecs (et de vieux logiciels) dépendent étroitement de QuickTime 7, malheureusement.

EyeTV : Geniatech doit passer en 64 bits, abandonner QuickTime 7, réécrire les pilotes des cartes USB. Autant dire que la version 3 sera la dernière.

Pour mon usage, Catalina arrête aussi de supporter le HFS (c’est embêtant pour les vieux CD-ROM, par exemple), et le partage de fichiers en AFP devrait suivre la même voie (pour le moment, ça fonctionne encore).

Mais en regardant les vidéos de la WWDC, je suis tombé sur quelques évolutions plus gênantes pour le futur. Entendons-nous bien : plus gênante pour un utilisateur avancé qui aime bidouiller. Pour un usage normal de macOS, les modifications ne devraient pas être gênante au quotidien et améliorent la sécurité. Mais ça rend macOS de plus en plus proche d’iOS, et de mon point de vue ce n’est pas nécessairement le macOS que je voudrais.

Le premier truc qui m’inquiète un peu, j’avoue, vient de la présentation « Advances in macOS Security » (701). Elle parle du fonctionnement de Gatekeeper, des nouvelles autorisations (notamment sur l’enregistrement de l’écran), mais elle officialise un peu un truc que beaucoup de gens redoutaient : l’obligation d’utiliser du code signé sous macOS.

Gatekeeper existe depuis un moment, et il évolue peu à peu. Dans les premières versions, il étéait possible de choisir entre aucune protection, applications signées, ou Mac App Store. Avec Yosemite, la première option se désactivait périodiquement (et automatiquement). Avec Sierra, elle était cachée. Avec une prochaine version de macOS, elle devrait disparaître. La formulation indique qu’il devrait rester possible d’activer la possibilité de lancer des applications non signées, mais que par défaut macOS l’empêchera… comme iOS.

C’est franchement un problème : il deviendra impossible de développer (ou de compiler) un programme sans payer avec autre chose que Xcode (comme on me le fait remarquer, Xcode signe les programmes pour l”utilisateur), et beaucoup d’applications open source (ou pas, d’ailleurs) ne se lanceront plus. Certes, il s’agit d’une avancée au niveau de la sécurité, mais elle n’est même pas sans failles : il existe des malware signés.

Le deuxième truc qui va être énervant, directement avec macOS Catalina, va être le fait que le système sera monté en lecture seule (« What’s New in Apple Filesystems », 710). Catalina utilise APFS pour séparer un volume de données du volume contenant le système, de façon totalement transparente. Le volume contenant le système sera monté en lecture uniquement, ce qui empêchera la modification de l’OS. Intéressant pour la sécurité, encore une fois, mais pas pour les différents hacks de macOS. Actuellement, le simple fait de désactiver le SIP supprime cette fonction, mais la présentation d’Apple est très claire sur ce point : il sera impossible de le faire de façon permanente. Désactiver le SIP montera la partition en écriture jusqu’au prochain redémarrage. Et c’est tout. Elle repassera ensuite en lecture seule.

Le dernier truc qui va m’énerver, ce sont les nouveaux pilotes (« System Extensions and DriverKit », 702). Comme pour les autres, définir un nouveau format de pilotes a des avantages, et je le comprends parfaitement (surtout quand les pilotes de ma carte réseau plantent macOS). Mais je sens que ça va poser beaucoup de problèmes.


Concrètement, Apple pousse une nouvelle génération de pilotes pour certains types de périphériques : les périphériques HID (en général), les périphériques USB, les périphériques série (plus spécifiquement les adaptateurs USB vers série, en pratique) et tout ce qui est lié au réseau. Je simplifie un peu, mais en gros, si vous avez un appareil qui communique en série avec un contrôleur intégré (par exemple un Arduino), une carte réseau Thunderbolt ou USB ou un périphérique USB comme une carte TV – oui, je pense aux cartes EyeTV -, il va falloir réécrire les pilotes. Pas à très court terme (Catalina supportera encore les kext) mais à court terme tout de même : son successeur les abandonnera pour les périphériques qui entrent dans ces catégories. Très franchement, vu comment le suivi des pilotes est souvent assez mauvais sous macOS quand une nouvelle version change de petites choses – si vous avez une tablette Wacom, vous comprenez -, je pense que ça va être un cauchemar pour les utilisateurs. Et je ne vois qu’une solution pour le moment : essayer de se tourner vers des périphériques qui utilisent les pilotes natifs de macOS. Ce n’est malheureusement pas si évident : dans les cas des adaptateurs série, par exemple, Apple ne supporte nativement que les modèles de FTDI et ils sont onéreux. Même chose pour les cartes réseau : il faut espérer que les constructeurs suivront le mouvement, et c’est pas gagné.

Ma compagne ne devrait pas tiquer : elle utilise un MacBook, des applications assez modernes et elle ne bidouille pas. Mais moi, j’utilise des applications anciennes, en 32 bits et non signées, je bidouille des pilotes, j’achète du matériel pas cher pour les tests. Et je n’ai pas envie d’iOS sur mon Mac. Ou d’un semblant d’iOS sans ses avantages, d’ailleurs, vu ce que propose le Mac App Store… Pour la première fois depuis très longtemps, je suis embêté par la prochaine version de macOS et je ne sais pas vraiment ce que je vais faire quand il arrivera.