J'ai écrit un petit script astucieux qui sélectionne une image aléatoire au redémarrage et la copie dans mon dossier personnel, en la nommant .face. Cependant, mon environnement de bureau est KDE et il semble ignorer ce fichier. J'ai essayé de copier l'image deux fois, une fois en tant que .face et une fois en tant que face.png, puis de pointer vers face.png dans les paramètres système de KDE, mais cela ne fonctionne que la première fois, puis ignore tout changement futur. Je soupçonne que KDE redimensionne et copie le fichier vers lequel je pointe dans les paramètres système vers un emplacement différent, mais je ne sais pas où.
Réponse
Trop de publicités?Ici
Test avec le Kubuntu 14.04.2 LTS
Écriture d'un script perl rapide et sale:
#!/usr/bin/perl
use strict;
use warnings;
# modules - package:perlmagick
use Image::Magick;
# Fichiers image
my @globPictures = glob "/full/path/to/image/directory/*";
# Fichier aléatoire
my $randomPicture = $globPictures[rand @globPictures];
# Icône
my $newIcon;
my $iconResolution = "64x64";
my $iconOut = "$ENV{ HOME }/.face.png";
$newIcon = Image::Magick->new;
$newIcon->Read($randomPicture);
$newIcon->Resize(geometry=>$iconResolution);
$newIcon = $newIcon->Montage(geometry=>$iconResolution, background=>'transparent');
$newIcon->Write($iconOut);
# renommer le .face.png en .face.icon
rename $iconOut,"$ENV{ HOME }/.face.icon";
Rendre le script exécutable.
Tester le script depuis konsole -> fonctionne. Le ~/.face.icon (format png - pas icône) est là et le menu KDE ainsi que les Paramètres du système KDE > Détails du compte ont l'image.
Ajouter le script au démarrage et à l'arrêt > Ajouter script; Exécuter à l'arrêt...
Déconnexion - reconnexion -> fonctionne
Déconnexion - reconnexion -> fonctionne
Semble fonctionner ici.
----réflexion ultérieure----
Test avec l'option 'Redémarrer/Éteindre l'ordinateur'.
Le script n'est pas exécuté - ancien rapport de bug : https://bugs.launchpad.net/ubuntu/+source/kde-workspace/+bug/1241870
Harald Sitter (apachelogger) a écrit le 19 octobre 2013 : #4
Peut-être que la communication entre kde-workspace et lightdm est interrompue de telle sorte que ce dernier n'attendra pas la fin de la session mais la tuera simplement lorsque l'instruction d'arrêt est reçue (qui est envoyée avant l'exécution des scripts)...
Test avec le KDM - Rendre le KDM le gestionnaire d'affichage par défaut
Test avec l'option 'Redémarrer' - Le script est exécuté.
---éditer----
Icônes d'utilisateur LightDM:
/var/lib/AccountsService/icons/[nom d'utilisateur]
Forums Kubuntu : https://www.kubuntuforums.net/showthread.php?63585-How-to-get-lightdm-to-display-user-icon-when-your-is-locked-down-private
Forums Ubuntu : http://ubuntuforums.org/showthread.php?t=1969332
AskUbuntu : Où est stockée la photo de profil de l'utilisateur dans Gnome 3?
Fonctionne ici en créant un lien symbolique de /var/lib/AccountsService/icons/[nom d'utilisateur] vers ~/.face.icon