Feh est un logiciel d'affichage et de manipulations d'images, léger et rapide, extrêmement configurable. Il est destiné principalement à être appelé en console, mais possède tout de même un petit menu (clic droit) pour réaliser quelques opérations sur l'image.
Il permet d'afficher des images stockées en local ou sur internet (par url).
Il permet soit d'afficher des images à l'écran, soit d'afficher un papier peint en fond d'écran.
Il vous suffit d'installer le paquet feh.
Vous pouvez trouver toutes les options en tapant man feh dans un terminal.
Pour afficher une seule image à l'écran :
feh ~/répertoire-Images/nom_de_l'image.jpg
Pour obtenir un diaporama :
feh image1 image2 image3...
ou :
feh ~/repertoire-images/
(puis faire défiler avec la molette) ou :
feh -r ~/repertoire-images/ #avec recherche dans les sous dossiers
Pour obtenir un diaporama en plein écran, changeant aléatoirement de photo toutes les 5 secondes:
feh -F -z -D 5 dossier_1 dossier_2 ... dossier_X
Ou bien obtenir des miniatures des images :
feh -i image1 image2 image3...
ou :
feh -i dossier
Ou encore obtenir des minatures cliquables des images d'un dossier (clic=agrandissement) :
feh -t dossier
Pour charger les images d'un dossier et avoir une ouverture plus rapide des images :
feh -p dossier
Pour obtenir un fond d'écran:
feh --bg-scale ~/répertoire-Images/fichier.jpg
Ou un fond d'écran aléatoire:
feh --bg-scale -z ~/répertoire-Images/
Ou encore un fond d'écran aléatoire tiré d'un répertoire et de ses sous-répertoires :
feh --bg-scale -r -z ~/répertoire-Images/
Pour lancer automatiquement feh comme gestionnaire de fonds d'écran au démarrage d'openbox, avec tirage aléatoire d'une nouvelle image à chaque démarrage, ajouter dans le fichier ~/.config/openbox/autostart la ligne:
feh --bg-scale -z -r ~/repertoire-image/ &
Si vous préférez toujours avec la même image:
feh --bg-scale ~/repertoire-image/image &
Ci-dessous 2 exemples de scripts, qui changent le papier peint à un intervalle donné. Dans les 2 cas :
wallpaper.sh &**
Voici une proposition de contenu pour deux scripts, un script très simple à mettre dans le fichier wallpaper.sh:
#!/bin/bash while : #début de la boucle sans fin do feh --bg-scale -r -z ~/Images/ #tirage aléatoire d'un papier-peint dans le répertoire /Images/ ET ses sous-répertoires sleep 60 #nombre de secondes entre 2 changements de papier-peint done #fin de la boucle sans fin
Un autre faisant la même chose, mais un peu plus complexe, avec certains contrôles :
#!/bin/bash -u #Description: Ce script requiert feh sur votre machine, il changera votre fond d'écran openbox (ou autre) automatiquement toutes les 400 secondes #Author: Millien Marc #Date: 2 mars 2008 #On vérifie l'existence du répertoire Images/Fonds if [ -d ~/Images/Wallpapers/ ] ; then cd ~/Images/Wallpapers/ #On compte le nombre de fichiers _fics=`ls | grep -E "*.(png|jpg)" | wc -l` #S'il y a plus d'un fichier c'est parti if [ ${_fics} -gt 0 ] ; then #On vérifie que le script ne tourne pas déjà _ps=`ps aux` _pid=`echo "${_ps}" | grep $0 | tr -s [:space:] | cut -d' ' -f2` _lines=`echo "${_pid}" | wc -w` if [ ${_lines} -gt 1 ]; then _pid=`echo ${_pid} | cut -d' ' -f1` echo "Un script en trop, on le kill (pid: ${_pid})" kill ${_pid} fi #Boucle de fonctionnement while true; do #On sélectionne un fichier au hasard _nombre=$RANDOM _nombre=`expr ${_nombre} % ${_fics}` if [ ${_nombre} -eq 0 ] ; then _nombre=1 fi _image=`ls | grep -E "*.(png|jpg)" | head --lines=${_nombre} | tail -1` #On affiche le fichier sleep 20 feh --bg-scale "${HOME}/Images/Wallpapers/${_image}" sleep 400 _fics=`ls | grep -E "*.(png|jpg)" | wc -l` done else echo "Veuillez placer des fichiers images dans le répertoire ${HOME}/Images/Wallpapers !" fi else echo "Veuillez créer le répertoire ${HOME}/Images/Wallpapers et y placer vos fonds d'écran !" fi
Rendez-vous dans le menu "Edition" → configuration des actions personnalisées:
feh -F %f dans l'onglet suivant choisir "dossier" comme condition.
Pour supprimer cette application, il suffit de supprimer son paquet.
man feh
dans un terminal)Contributeurs : Kanor, tshirtman, fnx, L'Africain .