Comment déployer un fond d’écran sur macOS ?

Ça semble être une question idiote, mais elle est récurrente chez mes clients qui souhaitent appliquer un fond d’écran uniforme sur tous leurs postes (fond d’écran corporate comme on dit. Je ne vais pas donc vous donner ici d’explications sur comment utiliser la préférence Système Bureau et économiseur d’écrans mais plutôt vous donner des pistes sur la façon de déployer et appliquer le fond de votre choix.

Il existe plusieurs approches pour se faire. Mais commençons par le commencement…

Créer un package pour vos fonds d’écran

Tout d’abord, il faut bien se souvenir que les fonds d’écran par défaut sont situés dans /Bibliothèque/Desktop Pictures/. Si vous devez placer un nouveau fond d’écran, il faudra donc de préférence le copier dans ce dossier et pas ailleurs. Il vous faudra packager votre fond pour le déployer, et là-dessus, les méthodes ne manquent pas. Si vous devez utiliser un seul  outil de création de packages, Packages est sûrement celui qu’il vous faut (Jamf Composer est pas mal non plus, mais payant).

Une fois le package généré, vous le déployez sur vos Mac avec l’outil de votre choix. Si vous avez une solution de gestion de parc capable de déployer des packages, c’est le moment de l’exploiter !

Packages Fond Ecran

Remplacer le fond d’écran par défaut de macOS par une autre image.

C’est peut-être la méthode la plus simple, finalement : remplacer les fonds d’écran macOS par défaut par un autre fond d’écran avec le même nom. C’est une méthode qui fonctionne bien… à l’exception de Mojave, qui change un peu les règles en raison de son nouveau format de fichier. Et il est préférable de faire une copie des fonds d’écran d’origine, au cas où un utilisateur souhaiterait plutôt utiliser le fond d’écran proposé par Apple… Enfin, ça rend les choses un peu plus confuses, puisque le nom du fond d’écran affiché restera celui du fond d’écran Apple, donc par exemple sous High Sierra, il faudra choisir le fond d’écran High Sierra pour afficher le fond d’écran de l’entreprise. Pas très logique…

Déployer un fond d’écran puis l’appliquer par profil

C’est la méthode la plus efficace si vous disposez d’une solution de gestion de parc, mais elle a une limitation importante : le fond d’écran est imposé ET verrouillé pour tous vos utilisateurs. ET il faut que votre poste soit intégré dans une solution MDM (bon, ça peut se faire sans, avec un profil appliqué à la main, mais c’est clairement moins intéressant).

Pour appliquer cette méthode, il faut au préalable copier le fond d’écran à l’endroit de votre choix (par défaut, on dira dans /Bibliothèque/Desktop Pictures). Puis on utilisera un profil de configuration qui appliquera le bon réglage.

Notez qu’Apple définit deux clés :

locked : booléen, valeur TRUE ou FALSE – Verrouille le fond d’écran.

override-picture-path : string, valeur (exemple) : /Library/Desktop Pictures/supermario.jpg – Chemin du fond d’écran.

Mais en pratique, si vous définissez un chemin via le profil, quoi qu’il arrive, le fond d’écran est appliqué et on ne peut pas changer le fond. C’est moche.

En théorie on pourrait aussi jouer avec les préférences gérées (les fameux MCX bien connus des admins Mac) pour l’appliquer une seule fois, mais je n’ai pas réussi à faire un profil pour ça. Si vous avez des idées, je prends :-)

Déployer un fond d’écran par défaut avec desktoppr et outset

La méthode suivante requiert l’installation de deux outils open source en ligne de commande : desktoppr et outset.

desktoppr est un outil super simple à utiliser : vous lancez juste la ligne de commande desktoppr et le chemin d’accès du fond d’écran, et il est appliqué instantanément. Facile comme tout. Ça se télécharge par là.

Le problème : idéalement, il faudrait pouvoir le lancer une seule fois sur le poste pour définir le fond de notre choix comme fond par défaut, mais éviter que le fond d’écran soit ensuite à nouveau modifié. C’est là qu’intervient outset. Cet outil à télécharger ici permet de lancer des scripts, paquets d’installations ou profils de configuration au démarrage du Mac ou au démarrage d’une session, mais on peut l’utiliser pour lancer un élément uniquement à la première ouverture de session de l’utilisateur.

Une fois installé sur un poste, outset propose plusieurs dossiers dans /usr/local/outset/. Un seul nous intéresse ici : 

login-once : lance un script à la première ouverture de session d’un utilisateur 

Placez donc un script avec le contenu suivant :

#!/bin/bash
/usr/local/bin/desktoppr /Library/Desktop\ Pictures/MonFond.jpg
exit 0

Et enregistrez ce script dans /usr/local/outset/login-once/.

Attention : le script doit être exécutable (chmod 755 chemin/du/script par exemple).

Il semble aussi qu’il y ait un petit bug avec outset sur Mojave, pour le corriger, un coup de ligne de commande :

sudo chown -R root:admin /usr/local/outset/
sudo chmod -R 755 /usr/local/outset/

Quelques considérations techniques sur la qualité du fond d’écran

Votre fond d’écran doit être de très bonne qualité pour s’afficher sur un écran 5K maximum à l’heure actuelle, soit une définition de 5120 pixels de large sur 2880 pixels de haut.

Testez la lisibilité de votre fond d’écran avec des icônes. S’il le faut, modifiez le contraste du fond pour qu’il soit propre.

La marque de votre entreprise est peut-être importante… mais l’imposer ne doit pas se faire au détriment de la fonctionnalité. Si votre fond d’écran est trop lourd, trop chargé visuellement, il pourra être très mal perçu (surtout en environnement créatif, où les graphistes préfèrent souvent un fond gris neutre). Testez donc bien votre fond afin qu’il soit bien perçu.

Enfin, une considération plus philosophique que technique : nous passons pour certains plus de huit heures par jour sur nos satanées bécanes, et parfois, le simple fait de pouvoir mettre un fond d’écran conforme à nos passions peut suffire à embellir nos journées et à faire passer la journée un peu plus vite. Ne pensez donc pas forcément que la marque de votre entreprise prime sur le reste.

https://github.com/scriptingosx/desktoppr/releases

Comments are closed.