Comment définir l’arrière-plan du bureau dans des environnements minimaux
Les environnements graphiques sous Linux peuvent être divisés en deux groupes principaux : les environnements de bureau complets tels que GNOME, KDE Plasma ou XFCE, et les gestionnaires de fenêtres minimalistes et minimalistes, tels que i3, openbox ou sway. Les premiers sont livrés avec un ensemble d’applications et d’utilitaires conçus pour bien fonctionner ensemble, tandis que les seconds sont destinés à effectuer une seule tâche (ou un peu plus) : la gestion des fenêtres. Lors de l’utilisation de ces environnements, des fonctionnalités supplémentaires doivent être mises en œuvre via des outils distincts.
Dans ce tutoriel, nous parlons de certains utilitaires que nous pouvons utiliser pour définir l’arrière-plan du bureau lors de l’utilisation d’environnements minimaux, à la fois sur les serveurs d’affichage X11 et Wayland.
Dans ce tutoriel, vous allez apprendre :
- Comment définir l’arrière-plan du bureau sur X11 en utilisant feh et azote
- Comment définir l’arrière-plan du bureau sur Wayland à l’aide de swaybg
Définition de l’arrière-plan du bureau à l’aide de Feh
Feh est une visionneuse d’images en ligne de commande, mais elle peut également être utilisée pour définir l’arrière-plan du bureau dans des environnements minimaux basés sur le serveur d’affichage X11. Feh est disponible dans les dépôts de toutes les distributions Linux les plus utilisées. Pour l’installer sur Fedora, nous pouvons utiliser la commande suivante :
$ sudo dnf install feh
Pour installer feh sur Debian, Ubuntu et dérivés, on peut utiliser apt
:
$ sudo apt install feh
Feh est également disponible dans le dépôt « Extra » d’Archlinux. Nous pouvons l’installer avec pacman
:
$ sudo pacman -S feh
Utiliser feh pour définir l’arrière-plan du bureau est assez facile : tout ce que nous avons à faire est de l’invoquer avec l’une des options --bg-*
, selon la façon dont nous voulons que l’image soit organisée. La plupart du temps, nous voulons définir l’arrière-plan en mode « remplissage », de sorte que si l’image est plus petite que l’écran, elle sera zoomée pour l’adapter, en fonction de son rapport hauteur/largeur d’origine. Pour mettre l’arrière-plan en mode « remplissage », nous exécuterions :
$ feh --bg-fill /path/to/image.png
Feh prend en charge d’autres modes d’arrière-plan : par exemple, nous pouvons utiliser --bg-center
pour centrer l’image que nous voulons utiliser comme arrière-plan, en l’entourant de bordures si elle est plus petite que l’écran, --bg-scale
qui peut être utilisé pour adapter l’image à l’écran permettant de modifier son rapport hauteur/largeur, ou --bg-tile
pour répéter l’image jusqu’à ce que toute la surface de l’écran soit couverte.
Feh prend également en charge les configurations Xinerama et multi-écrans, et accepte plusieurs fichiers comme arguments. Lorsque nous définissons l’arrière-plan du bureau avec feh fournissant une seule image comme argument, il est appliqué à tous les moniteurs disponibles. Cependant, si nous spécifions le chemin de plusieurs images, elles sont définies comme arrière-plans, dans l’ordre, sur les moniteurs respectifs : la première image est utilisée pour le moniteur 0, la seconde pour le moniteur 1, et ainsi de suite.
Les arrière-plans définis avec feh ne sont pas persistants et seront perdus lors de la déconnexion. Cependant, lorsque feh est utilisé pour définir un arrière-plan, il crée automatiquement le script exécutable ~/.fehbg
, qui peut être utilisé pour répliquer la configuration : tout ce que nous avons à faire est de faire en sorte qu’il soit exécuté lors de la connexion. La façon de procéder dépend du gestionnaire de fenêtres que nous utilisons. Lorsque vous utilisez i3, par exemple, il suffit d’ajouter la ligne suivante dans le fichier de configuration ~/.config/i3/config
:
exec --no-startup-id ~/.fehbg
Définition de l’arrière-plan à l’aide de Nitrogen
Contrairement à feh, Nitrogen est une application graphique écrite à l’aide de la boîte à outils GTK2. Tout comme feh, il peut être utilisé pour définir des arrière-plans dans des environnements minimaux et peut être installé à l’aide de notre gestionnaire de paquets de distribution préféré. Sur Fedora :
$ sudo dnf install nitrogen
Sur Debian, Ubuntu et dérivés :
$ sudo apt install nitrogen
Sur Archlinux, à la place :
$ sudo pacman -S nitrogen
Lors de la première utilisation, l’interface Nitrogen semble assez « vide » :
La première chose que nous voulons faire est de cliquer sur le bouton « Préférences », puis de sélectionner un ou plusieurs répertoires contenant des images que nous pourrions vouloir utiliser comme fonds d’écran. Nitrogen générera une vignette pour chaque image qu’il trouvera :
Pour définir une image comme arrière-plan, il suffit de sélectionner sa vignette et de cliquer sur le bouton « Appliquer ». En utilisant les menus déroulants en bas de l’interface, nous pouvons sélectionner comment l’image doit être disposée (automatique, mise à l’échelle, centrée, en mosaïque, zoomée ou remplissage zoomé) et sur quel moniteur elle doit être appliquée.
Tout comme feh, Nitrogen ne restaure pas automatiquement les arrière-plans lors de la connexion. Cependant, il stocke la configuration appliquée dans le fichier ~/.config/nitrogen/bg-saved.cfg
. Afin de réappliquer les paramètres lors de la connexion, il suffit de lancer la commande nitrogen --restore
. En s’en tenant à notre exemple i3, dans le fichier de configuration, nous écririons :
exec --no-startup-id nitrogen --restore
Définir des arrière-plans à l’aide de Swaybg
Feh et Nitrogen sont deux outils très pratiques que nous pouvons utiliser pour définir des arrière-plans de bureau lorsque nous utilisons le système de fenêtre X11, mais ils ne peuvent pas être utilisés sur Wayland. Pour définir l’arrière-plan du bureau sur les gestionnaires de fenêtres conçus pour fonctionner avec le nouveau serveur d’affichage, nous pouvons utiliser swaybg
à la place. La syntaxe à utiliser avec le programme est assez simple. Dans le cas le plus basique, nous invoquons l’utilitaire spécifiant le chemin de l’image que nous voulons utiliser comme arrière-plan comme argument de l’option -i
:
$ swaybg -i /path/to/image.png
Le mode dans lequel l’image sera disposée en arrière-plan peut être passé en argument à l’option -m
(abréviation de --mode
). Il doit s’agir d’un parmi : « étirer », « ajuster », « remplir », « centrer », « tuiler » :
$ swaybg -i /path/to/image.png -m fill
L’image et les paramètres que nous spécifions sont, par défaut, appliqués à tous les moniteurs disponibles. Nous pouvons toutefois appliquer des configurations spécifiques à chaque moniteur. Tout ce que nous avons à faire est de passer l’identifiant du moniteur en argument à l’option -o
(--output)
: tous les paramètres suivants seront appliqués uniquement à ce moniteur. En voici un exemple. Supposons que je travaille avec deux moniteurs : le premier est le natif de l’ordinateur portable, « eDP-1 », le second est un moniteur connecté via HDMI, qui est reconnu comme « HDMI-A-2 ». Pour leur appliquer un arrière-plan différent, je lancerais :
$ swaybg -o eDP-1 -i /path/to/image0.png -m fill -o HDMI-A-2 -i /path/to/image1.png -m fill
Lors du lancement de l’une des commandes utilisées dans les exemples ci-dessus dans le terminal, vous remarquerez que le processus « se bloque », il doit donc être lancé en arrière-plan : cela peut être accompli en ajoutant un '&' à la commande. Pour qu’un nouvel arrière-plan soit appliqué, une éventuelle instance existante de swaybg fonctionnant en arrière-plan doit être arrêtée. La procédure suggérée consiste à définir le nouvel arrière-plan en premier, puis à mettre fin à l’instance précédente, afin d’éviter les artefacts.
Afin de mettre fin à une instance précédente de swaybg, nous devons connaître son PID (Process ID). Lorsque nous lançons une commande de longue durée et que nous l’envoyons en arrière-plan, son PID est stocké dans la variable spéciale $ !
. Pour récupérer le PID, nous pouvons également utiliser l’utilitaire « pidof ». Tout ce que nous avons à faire est de passer le nom du programme en argument :
$ pidof swaybg
Dans mon cas, le résultat de la commande est :
82591
Pour terminer le programme, nous pouvons exécuter :
$ kill 82591
D’ailleurs, jetez un œil à ce tutoriel si vous voulez en savoir plus sur la gestion des processus sous Linux.
Conclusions
Lors de l’utilisation d’environnements graphiques minimaux sous Linux, des utilitaires spécifiques doivent être utilisés pour définir l’arrière-plan du bureau. Dans ce tutoriel, nous avons appris à utiliser feh et nitrogen pour effectuer une telle tâche lors de l’utilisation de gestionnaires de fenêtres basés sur X11, et comment utiliser swaybg lorsque vous travaillez dans des environnements minimaux basés sur le serveur d’affichage Wayland.