Ouvrir le menu principal

MacGeneration

Recherche

Le bac à sable de macOS peut gêner les commandes « defaults write »

Nicolas Furno

mardi 29 septembre 2020 à 09:51 • 14

macOS

Avec la généralisation du sandboxing sur macOS, on ne peut plus aussi facilement modifier les réglages cachés de certaines apps en utilisant l’outil en ligne de commande defaults write. C’est ce qu’a découvert Dan Moren de Six Colors quand il a voulu activer le menu « Debug » de Safari, en utilisant cette commande qui fonctionnait depuis des années :

defaults write com.apple.Safari IncludeInternalDebugMenu -bool true
Le menu Debug de Safari 14.

Cette commande existe pourtant toujours et elle devrait fonctionner pour activer le menu supplémentaire de Safari, un menu utile surtout aux développeurs qui doivent optimiser un site web ou comprendre pourquoi un élément ne fonctionne pas normalement dans le navigateur d’Apple. Le sandboxing et les mesures de sécurité régulièrement renforcées viennent toutefois la perturber à deux niveaux, comme le détaille le développeur Jeff Johnson.

Quand une app est mise à jour pour gérer le bac à sable de macOS, ses réglages sont déplacés de leur emplacement historique (dans le dossier ‌~/Library/Preferences) à un sous-dossier dans ‌~/Library/Containers/. Dans le cas de Safari, la transition a eu lieu l’an dernier avec Safari 13 et son fichier de préférences est désormais accessible à cet endroit : ~/Library/Containers/com.apple.Safari/Data/Library/Preferences/com.apple.Safari.plist.

En théorie, la commande default writes devrait être suffisamment maligne pour le savoir et modifier le bon fichier. Mais deux problèmes peuvent se poser : d’une part, Apple ne supprime jamais les anciens fichiers de préférences, si bien qu’il y a un doublon dans le système pour chaque app sandboxée. Il y a ainsi deux fichiers de réglages de Safari, celui indiqué précédemment et la version historique est conservée à cet autre emplacement : ~/Library/Preferences/com.apple.Safari.plist.

D’autre part, si votre application de terminal n’est pas configurée pour avoir un accès complet aux données (une nouveauté de macOS Mojave), la ligne de commande va modifier le fichier historique et non le nouveau. L’explication est simple : sans cet accès complet, le terminal ne peut pas lire ou écrire dans le dossier ‌~/Library/Containers et la ligne de commande se rabat sur l’ancien fichier qui est toujours accessible.

Pour vérifier ce paramètre, ouvrez les Préférences système, puis le panneau « Sécurité et confidentialité » et enfin l’onglet « Confidentialité ». Cliquez sur le cadenas en bas à gauche et saisissez le mot de passe de votre session, puis cliquez sur « Accès complet au disque » dans la barre de gauche et vérifiez que l’app Terminal soit dans la liste. Si ce n’est pas le cas, ajoutez-la en touchant le bouton +.

L’app Terminal doit avoir accès au disque complet pour que le bon fichier de préférences soit modifié par la ligne de commande.

Cet exemple lié à Safari met en avant un problème qui se pose de plus en plus et qui va se poser encore plus à l’avenir. Cette ligne de commande historique de macOS fonctionne toujours, mais les restrictions de sécurité de ces dernières années peuvent imposer des étapes supplémentaires à connaître pour bien l’utiliser.

Si la commande defaults write ne semble pas fonctionner, vérifiez que vous n’êtes pas dans le cas d’une app qui est passée dans le bac à sable et de l’app Terminal qui n’a pas accès à toutes les données.

Soutenez MacGeneration sur Tipeee

MacGeneration a besoin de vous

Vous pouvez nous aider en vous abonnant ou en nous laissant un pourboire

Soutenez MacGeneration sur Tipeee

Pour les retardataires : le magazine des 25 ans de MacG et son mug sont à nouveau en vente !

18:33

• 64


Tim Cook pourrait quitter Apple dès 2026 !

11:07

• 162


Apple TV trouve un nouveau canal de diffusion : la porte du frigo

11:00

• 33


Les nouveautés de Photos sur macOS Tahoe : une interface renouvelée, des outils inchangés

10:00

• 16


Sortie de veille : cinq ans plus tard, un bilan parfait pour les Mac Apple Silicon ?

08:00

• 23


Design, support lombaire et prix choc : Doro C300 de Sihoo, la chaise ergonomique à ne pas manquer ce Black Friday 📍

14/11/2025 à 22:58

• 0


Les petits colis seront soumis aux droits de douane dès 2026

14/11/2025 à 20:30

• 110


Black Friday : le pack de deux caméras euFyCam 2C compatibles HomeKit de retour à 100 €

14/11/2025 à 18:38

• 14


L’iPhone Pocket est maintenant en vente à partir de 159 €, mais il n’y en aura pas pour tout le monde 🆕

14/11/2025 à 18:38

• 117


Striiiipes transforme le logo de l’app Cartes en porte-cartes en cuir

14/11/2025 à 16:37

• 23


Astuce macOS 26 : supprimer l’icône des apps des services cloud dans la barre latérale du Finder

14/11/2025 à 16:21

• 10


Prizmo Remix, le Raccourcis des scanners qui automatise le traitement des scans

14/11/2025 à 15:22

• 6


Promo : le Mac mini M4 de base sous les 600 € ou la version 512 Go pour 743 € 🆕

14/11/2025 à 12:17

• 42


La Chine veut limiter l’accélération par défaut des voitures électriques, sans les rendre lentes pour autant

14/11/2025 à 11:20

• 127


Le MacBook Air M2 est à son prix le plus bas sur Amazon, avec 16 Go de RAM 🆕

14/11/2025 à 11:10

• 57


OpenAI ouvre la porte aux conversations de groupe avec ChatGPT

14/11/2025 à 09:50

• 8