Table des matières

Systemd - feh

Introduction

Installation

les prérequis : un dossier ~/.wallpaper contenant vos fonds d'écrans
le paquet feh

apt-get install feh

création du script de changement de fond d'écran

le script bash est à placer le dossier bin utilisateur (~/bin ou ~/.bin ou ~/.local/bin suivant votre configuration)

cchange-fond
#! /bin/bash
DISPLAY=:0 /usr/bin/feh --bg-max "$(find ~/.wallpaper/|shuf|head -n 1)"

et le rendre exécutable

chmod ug+x ~/.bin/cchange-fond

création du service feh-wallpaper.service

à placer dans le dossier ~/.config/systemd/user/

feh-wallpaper.service
[Unit]
Description=Random wallpaper with feh
 
[Service]
Type=oneshot
ExecStart=/home/**votre-user**/.bin/cchange-fond
 
[Install]
WantedBy=default.target

création du service feh-wallpaper.timer

à placer dans le dossier ~/.config/systemd/user/

feh-wallpaper.timer
[Unit]
Description=Random wallpaper with feh
 
[Timer]
OnUnitActiveSec=30m
Unit=feh-wallpaper.service
 
[Install]
WantedBy=default.target
OnUnitActiveSec=30m pour un changement toutes les 30 minutes. Se référer à systemd.time(7) pour adapter à vos envies

démarrage du service

activation :

systemctl --user enable feh-wallpaper.timer

démarrage

systemctl --user start feh-wallpaper.timer

vérification du status

systemctl --user status feh-wallpaper.timer
le service étant configuré pour fonctionner pour un utilisateur (user) les commandes systemctl sont lancé en console normale.
L'usage dans ce cas de l'option - -user doit être utilisé
À noté que seul le .timer est activé et démarré, c'est lui qui appellera le service feh.wallpaper.service

Références

wiki Archlinux : feh se reporter aussi aux manuels systemd
systemd(1), systemd.service(5), systemd.unit(5), systemd.timer(5), systemd.time(7),