site
header
Rendez-vous sur Arrakis
Le site perso d'un hacker libriste curieux crêpophile et étourdi

Par quoi remplacer xscreensaver?

Nous avons récemment eu la mauvaise surprise de recevoir un avertissement injustifié de xscreensaver. Sans parler du manque de respect que représente cette agression à l'utilisateur, la meilleure solution reste la suppression pure et simple de xscreensaver.

Plusieurs personnes vous rappeleront qu'il n'est plus nécessaire "d'économiser les écrans" récents. Mais on peut souhaiter vouloir faire défiler les photos de famille ou simplement bloquer l'écran après quelques minutes d'inactivité pour éviter des manipulations indésirées pendant la pause café.

Mais par quoi le remplacer?

Nous allons utiliser des petits outils KISS pour ça. Je vous invite à installer le paquet xautolock, qu'on lancera en début de session. Il se chargera de lancer une application après un certain temps d'inactivité. Il s'utilise ainsi pour lancer une commande après 5 minutes d'inactivité :

 xautolock -time 5 -locker commande_à_lancer
 

Voyons quelques cas :

xautolock -time 10 -locker slock
xautolock -time 5 -locker "qiv -u -s -r -d 3 -i -c -f /home/moi/Images"

Remplacez /home/moi/Images vers le dossier contenant vos photos.
(-u va chercher dans les sous-dossiers, -s lance le diaporama, -r le rend aléatoire, -d 3 change les photos toutes les 3 secondes, -i cache la barre d'information, -c lit les images en boucle, -f met en plein écran)

On enregistre le script suivant dans /home/utilisateur/scripts/diaporama. Ce script a besoin du paquet xdotool

#!/bin/sh
 # dépendance : xdotool
 
 # répertoire contenant les photos
 PHOTOS=/home/xavier/Images
 cyclope "$PHOTOS" &
 sleep 1
 xdotool search --class cyclope key --window %@ f p
 
 exit 0
 
 

On n'oublie pas de rendre le script éxécutable :

chmod +x /home/utilisateur/scripts/diaporama

Enfin, en début de session, on lance la commande suivante :

xautolock -time 10 -locker /home/utilisateur/Scripts/diaporama

Oui, cyclope n'est certainement pas le plus adapté pour cette tâche, mais vous aurez compris le principe

xautolock -time 10 -locker "vlc -f /home/moi/Vidéos/film.mp4

Je vous laisse imaginer les choses les plus folles.

Dernière astuce avant de vous laisser : vous pouvez conserver xscreensaver sans le démarrer en début de session. PAr contre, il vous est possible de lancer votre écran de veille favori en allant directement le chercher dans /usr/lib/xscreensaver. Par exemple en lançant :

/usr/lib/xscreensaver/xmatrix

On peut même les mettre en fond d'écran :

/usr/lib/xscreensaver/glmatrix -root

le 05/04/2016 à 23:02:47, Frédéric Bezies a dit :

Et les distributions qui laissent des paquets trop vieux au point que les développeurs excédés par des rapports de bugs inutiles, en viennent auyx messages d'avertissements, ça n'existe pas ?

Dans cette histoire, les torts sont partagés

le 06/04/2016 à 09:19:36, Thuban a dit :

@Frédéric Bezies : Salut! :)
Je ne vois pas de paquets trop vieux moi, seulement des paquets suffisamment éprouvés pour être considérés comme stables et fiables pour l'utilisateur.

Si un paquet n'apporte en plus aucune nouvelle fonctionnalité importante dans une version plus récente, ça ne sert à rien en plus de râler. En tout cas, pas auprès des utilisateurs, c'est vers les développeurs de la distro qu'il faut se tourner.

le 06/04/2016 à 15:15:07, louis a dit :

Salut !
# apt-get install xautolock suckless-tools
# slock
zsh: command not found: slock
# whereis slock
slock:


wtf ? Je suis sur Debian Jessie et voici mon source.list
Je peux utiliser xautolock mais sans slock !

le 06/04/2016 à 16:25:54, Mickael a dit :

Bonjour

J'imagine que le choix de slim & xscreensaver est motivé par une raison que je n'ai pas trouvé, néanmoins je me pose la question, maintenant que xscreensaver ne sera plus, pourquoi ne pas opter pour lightdm et light-locker ? et pourquoi ne pas l'avoir fait dès le départ ?

le 08/04/2016 à 21:35:50, Thuban a dit :

@louis : Salut!
Tiens tiens, c'est étrange ça... Sur une jessie aussi, j'ai bien slock dans ce paquet :
apt-cache show suckless-tools
Package: suckless-tools
Version: 40-1+deb8u1
Installed-Size: 266
Maintainer: Ilias Tsitsimpis <i.tsitsimpis@gmail.com>
Architecture: amd64
Provides: dmenu, lsw, lsx, slock, sprop, sselp, ssid, swarp, tabbed, wmname, xssstate
Depends: libc6 (>= 2.14), libfontconfig1 (>= 2.11), libfreetype6 (>= 2.2.1), libx11-6, libxext6, libxft2 (>> 2.1.1), libxinerama1, libxrandr2, libxrender1, libxss1, zlib1g (>= 1:1.1.4)
Suggests: dwm, stterm, surf
Description-fr: Commandes simples pour gestionnaires de fenêtres minimalistes
Ce paquet fournit des commandes simples conçues pour être utilisées par un
gestionnaire de fenêtres minimaliste comme dwm, mais peuvent être utiles
dans des scripts quelque soit le gestionnaire de fenêtres utilisé.
.
−⋅dmenu⋅: menu dynamique générique pour X⋅;
−⋅lsw⋅: lister les titres de toutes les fenêtres X en cours d'exécution
vers la sortie standard, de manière similaire à ls(1)⋅;
−⋅lsx⋅: lister les fichiers exécutables dans un dossier⋅;
−⋅slock⋅: verrouillage simple de l'affichage X qui bloque la session X⋅;
−⋅sprop⋅: configurer ou obtenir les propriétés de la fenêtre X⋅;
−⋅sselp⋅: sélection simple d'affichage X qui envoie la sélection X vers
la sortie standard⋅;
−⋅ssid⋅: remplacement simple de setsid⋅;
−⋅swarp⋅: outil X simple de déformation pour déplacer le curseur de la
souris à une position donnée⋅;
−⋅tabbed⋅: interface générique simple à onglets pour les applications
sensibles à l'intégration X⋅;
−⋅wmname⋅: afficher ou paramétrer le nom de propriété de la fenêtre
source du gestionnaire de fenêtres, de manière similaire à hostname(1)⋅;
−⋅xssstate⋅: récupérer le statut de l'économiseur d'écran X.
Description-md5: d19175bb7582a6f06fe2a6daa5910d10
Homepage: http://www.suckless.org
Tag: implemented-in::c, interface::x11, role::program, scope::application,
uitoolkit::xlib, x11::application
Section: x11
Priority: optional
Filename: pool/main/s/suckless-tools/suckless-tools_40-1+deb8u1_amd64.deb
Size: 52154
MD5sum: 4b6e7c1f98cb4e6006fc61a2834f5c3f
SHA1: 8016f42b0dee53f59efac5a0324c46ab7cb1a906
SHA256: 2f6b5326a0e70faba1e475f38fbb0f4ab4bef6d15c8b437fa1837a263c03b531

Revérifie l'installation du paquet. C'est vraiment étrange. Sinon, tu peux récupérer les sources très faciles à compiler ici : http://tools.suckless.org/slock/


@Mickael : Lightdm est déjà présent par défaut sur handylinux :)
light-locker? Pourquoi pas, mais ça serait imposer un outil pour bloquer l'écran, alors que jusqu'à présent, les utilisateurs avaient xscreensaver juste pour "le fun". Si la demande arrive, on pourra l'ajouter :)

le 09/04/2016 à 23:20:10, Mickael a dit :

Désolé je pensais que slim était utilisé, j'ai sûrement mal lu (changement de lunette en "vue" :)).

Effectivement je voyais Xscreensaver pour le côté verrouillage et pas pour le "fun".
Je ne suis pas "paranoïaque" mais je trouve que la possibilité de bloquer la session par mot de passe est pratique et évite les mauvaises surprises.

J'ai eu l'occasion de tester l'outil sous Ubuntu, avec son logiciel de configuration (light-locker-settings non présent sous jessie) et il fait son office (sur une installation minimale d'ubuntu trusty avec xfce je l'avais justement préféré a Xscreensaver malgré un relatif désamour des utilisateurs d'Ubuntu mentionné sur le forum ubuntu-fr).

Merci pour la réponse et bonne continuation.

le 10/04/2016 à 09:26:57, Thuban a dit :

@Mickael : Merci pour l'aiguillage vers light-locker. C'est une proposition intéressante dont je parlerais à l'équipe handy. Tu peux aussi en parler sur le forum si tu veux :)

le 10/04/2016 à 15:14:34, louis a dit :

@louis : C'est ma connerie, j'ai pas fait apt-get update avant...

le 12/04/2016 à 16:43:21, sogal a dit :

Salut et merci pour ce billet qui contient de super exemples !

le 13/04/2016 à 00:10:42, Thuban a dit :

Pas de quoi :)