Versions concernées par le tutoriel :
- (K)Ubuntu 6.10 Edgy
Requiert Beryl avec plugin « Widget Layer » activé.
Dans la version SVN de Beryl (dépôt trevinho), un nouveau module est apparu :
Widget Layer
Le Widget Layer
Trevinho en parle ici :
http://forum.beryl-project.org/viewtopic.php?f=38&t=2554
Les raccourcis par défaut pour ce plugin sont
<Super>F9 ou le coin
Haut-Droit de l'écran (ça c'est idiot parce qu'il s'agit du raccourci par défaut pour Scale si mes souvenirs sont bons, en tous cas il vous faut reconfigurer vos raccourcis si cela ne vous convient pas).
Lorsque vous pressez <Super>F9 donc, rien ne semble se passer à part que l'écran s'assombrit.
Non, ce n'est pas un mode « économie d'énergie » :lol: c'est simplement un « layer » (un calque) prévu pour afficher des « screenlets » (ou « widgets », mais le nom choisi par le développeur est « screenlet » donc on va conserver ça).
Si l'on installe les screenlets qui vont avec, on peut obtenir ceci lorsqu'on presse <Super>F9
Installation des Screenlets
Ryx en parle ici :
http://forum.go-compiz.org/viewtopic.php?t=358
-
IMPORTANT Pour faire fonctionner les Screenlets, vous avez besoin des paquets « python-gnome2-desktop » et « python-xdg » à installer grâce à Synaptic, Adept ou apt-get/aptitude
- Téléchargez les screenlets avec ce lien (version 0.0.4 à l'heure actuelle) :
http://www.ryxperience.com/storage/screenlets-0.0.4.tar.bz2
- Désarchivez le fichier .tar.bz2 obtenu (clic droit, « Extraire », « Extraire ici »)
- Ouvrez le dossier « screenlets-0.0.4 » ainsi obtenu, et ouvrez le fichier « start-screenlets » (sans extension, c'est un script terminal) avec votre éditeur favori (clic droit, « Ouvrir avec », et sélectionnez votre éditeur « Kate » ou « gEdit » par exemple)
- Dans ce fichier, remplacez à la 3e ligne la chaîne « /home/ryx/Documents/scripts/python/screenlets/ » par « ~/.screenlets/screenlets/ »

Sauvegardez et fermez
- Ouvrez le fichier « screenlets/ControlScreenlet.py » avec votre éditeur.
À la ligne 48 remplacez « add_screenlet_as_widget = False » par « add_screenlet_as_widget = True »
À la ligne 55, remplacez « is_widget=False » par « is_widget=True »

Sauvegardez et fermez
Note : Cette opération ne devrait pas avoir lieu, il s'agit d'un bug dans la version actuelle qui empêche le contrôleur de mémoriser ses propres options.
- Remontez d'un dossier, et déplacez le dossier « screenlets-0.0.4 » dans votre dossier utilisateur. Renommez-le en « .screenlets ». Il va alors probablement disparaître, il passe en dossier caché. Vous pouvez faire apparaître les dossiers cachés avec les options de votre gestionnaire de fichiers (pour Konqueror, c'est le menu « Affichage », « Afficher les fichiers cachés ») mais si vous avez bien suivi les opérations précédentes, vous n'avez pas besoin de retourner dans ce dossier
- Pressez <Alt>F2 et entrez « ~/.screenlets/start-screenlets ». Rien ne semble se passer.
- Pressez <Super>F9, l'écran s'assombrit et apparaît le symbole « sens interdit » en noir et blanc qui apparaît en bas à gauche sur la copie d'écran ci-dessous (j'ignore le pourquoi de ce symbole).

Cliquez-droit sur ce symbole (le « Widget-Controller ») et cliquez sur « Screenlets », puis « Properties ». Dans l'onglet « Control », cochez la case « Add as "Widget" » (cette option permet de forcer tous les futurs screenlets ajoutés via le contrôleur à être en mode « Widget »).
Pour ajouter un widget : Cliquez-droit sur le contrôleur, Lorsque vous ajoutez un screenlet, pensez à faire un clic droit dessus puis « Window », « Widget » pour qu'il soit bien associé au « Widget Layer ».
Je veux que tout ça se lance au démarrage !
Tous les screenlets ajoutés par l'intermédiaire de ControlScreenlet sont conservés (fichier « ~/.screenlets.conf »), et ainsi après redémarrage lorsque vous relancez « ~/.screenlets/start-screenlets » vous les retrouvez dans le même état.
Avant de lancer le script d'initialisation des screenlets il faut impérativement que Beryl soit lancé avant, sinon vous pourrez observer des problèmes d'affichage (screenlets à moitiés apparents, c'est ce que j'observe avec mon ATI+AIGLX) corrigés dès que vous Beryl sera démarré.
kejar31 indique une bonne méthode pour ce faire :
- Ouvrez votre éditeur favori, et copiez dans un nouveau fichier ce script :
#!/bin/sh
beryl-manager
sleep 5
PWD=pwd
cd ~/.screenlets
./start-screenlets
cd $PWD
- Enregistrez ce script sous « ~/.screenlets/screenlets-beryl » et fermez votre éditeur
- Cliquez sur <Alt>F2 et entrez « chmod +x ~/.screenlets/screenlets-beryl »
- Dans vos options de démarrage,
supprimez beryl-manager et
ajoutez ~/.screenlets/screenlets-beryl.
GNOME : Menu Préférence > Session > Onglets « scripts de démarrage »
KDE : Lien dans « ~/.kde/Autostart »
Rien ne marche !
- Vérifiez que vous n'avez pas sauté une étape !
- Vérifiez que vous avez bien installé les paquets « python-gnome2-desktop » et « python-xdg »
- Ouvrez un terminal et lancez « ~/.screenlets/start-screenlets » pour voir si un message d'erreur apparaît
Note de versions (et mise à jour)
Pas de réelle homogénéité entre les versions. Pour ne pas vous perdre, quelques infos :
- Dans la version 0.0.3 le fichier de config est ~/.screenlets.conf
- Dans la version 0.0.4 le fichier de config est ~/.config/Screenlets/control.conf
Lors de la mise à jour de 0.0.3 vers 0.0.4 vous pouvez copier votre ancien fichier de config pour retrouver vos paramètres.
Dans la version 0.0.4 et inférieure, le Widget Controller est incapable d'aller chercher ses propres options dans le fichier de config. C'est pourquoi il est nécessaire d'éditer ControllerWidget.py pour avoir les bonnes options par défaut au démarrage.
Conclusion
Amis développeurs python, à vos éditeurs, on a des widgets à réaliser 😉
Je trouve que ce système remplacer avantageusement les desklets, car on y a réellement accès à n'importe quel moment sans passer par la réduction ou la transparence de toutes les fenêtres (que Beryl permet, au passage, avec <Super>F6).
Merci d'avance de m'aider à peaufiner avant qu'on en fasse une page wiki