2 votes

script ajout de lanceurs au panneau supérieur de gnome

Pour un grand nombre de machines fonctionnant sous 12.04 avec gnome-classic. Je voudrais script ajouter des lanceurs en haut à gauche du panneau gnome.

Je sais comment les ajouter manuellement mais c'est une procédure fastidieuse.

Quelqu'un sait-il s'il est possible de script ceci ?

1voto

user.dz Points 45060
  • Juste pour rendre script plus facile, hypothèse faite :

    1. Le panneau supérieur par défaut est 'top-panel-0' a obtenu de :

      gsettings get org.gnome.gnome-panel.layout toplevel-id-list
    2. Pas beaucoup d'icônes déjà présentes dans le panneau, juste pour éviter d'écraser d'autres objets avec le même index (ex : 'object-0-9' ), obtenu à partir de :

      gsettings get org.gnome.gnome-panel.layout object-id-list

    Objectif script :

    gsettings set org.gnome.gnome-panel.object:/org/gnome/gnome-panel/layout/objects/object-0-9/ object-iid 'PanelInternalFactory::Launcher'    
    gsettings set org.gnome.gnome-panel.object:/org/gnome/gnome-panel/layout/objects/object-0-9/ toplevel-id 'top-panel-0'    
    gsettings set org.gnome.gnome-panel.object:/org/gnome/gnome-panel/layout/objects/object-0-9/ pack-type 'start'
    gsettings set org.gnome.gnome-panel.object:/org/gnome/gnome-panel/layout/objects/object-0-9/ pack-index 1
    gsettings set org.gnome.gnome-panel.launcher:/org/gnome/gnome-panel/layout/objects/object-0-9/instance-config/ location '/usr/share/applications/gedit.desktop'
    gsettings set org.gnome.gnome-panel.layout object-id-list "[`gsettings get org.gnome.gnome-panel.layout object-id-list  | awk '{ gsub("\[|\]",""); print;}'`, 'object-0-9']"
  • Pour réinitialiser/supprimer tous les lanceurs, je n'ai pas pu obtenir gsettings reset pour travailler avec des données stockées sans schéma (l'API peut ne pas le supporter), alors que dconf reset fait :

    for o in $(dconf list /org/gnome/gnome-panel/layout/objects/); do if [ ! "${o##object*}" ] ; then dconf reset -f /org/gnome/gnome-panel/layout/objects/$o; fi; done
    dconf write /org/gnome/gnome-panel/layout/object-id-list "`dconf read /org/gnome/gnome-panel/layout/object-id-list | awk '{ gsub(/(, [:\47]object-[0-9]-[0-9][:\47]|[:\47]object-[0-9]-[0-9][:\47], )*/,"");  print; }'`"

Notes :

  • Mieux vaut utiliser dconf-editor pour voir ou faire des changements rapides de touches pour les tests.
  • Utilisez le suivi des changements de dconf et de ce que fait le script :

    dconf watch /org/gnome/gnome-panel/

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X