Réinitialisation de l'handymenu identique au profil Prof - zoom61 - 05-11-2015
Salut,
Hier, j'ai testé l'handymenu : création, suppression... dans le profil "Super"
Et à la fin, j'ai fait une découverte, si je clique sur "Réinitialiser", je retombe sur le profil "Prof", euh, je suis en profil "Super", comment dois-je faire pour restaurer les onglets et les commandes initiales... la seule solution est de tout réinstaller ?
Cdlt.
Réinitialisation de l'handymenu identique au profil Prof - tomasi - 05-11-2015
Malheureusement c'est un défaut de la structure actuelle du handymenu, sinon il faudrait quatre handymenu différents. La structure est codée une fois et il y a un fichier conf pour chaque profil
Réinitialisation de l'handymenu identique au profil Prof - zoom61 - 05-11-2015
Merci du renseignement. Il faudrait peut-être l'indiquer que le bouton "Réinitialiser" correspond au profil Prof.
Cdlt.
Réinitialisation de l'handymenu identique au profil Prof - tomasi - 05-11-2015
Je teste quelque chose
Réinitialisation de l'handymenu identique au profil Prof - tomasi - 05-11-2015
Alors j'ai une piste :
Si dans le fichier handymenu-configuration.py
La ligne shutil.copyfile('.handymenu/.handymenu.conf', '.handymenu.conf ')
Permettrai de récupérer le fichier conf de base et de le remettre dans le dossier user en cas de reinitialisation.
Malheureusement elle copie tout le temps le fichier,
Réinitialisation de l'handymenu identique au profil Prof - tomasi - 05-11-2015
Si quelqu'un s'y connaît en python
Réinitialisation de l'handymenu identique au profil Prof - tomasi - 05-11-2015
J'ai trouvé!!!!! Excusez mon euphorie (jespere que ca va vraiment fonctionné...) cela fait deux heures que j'essaye de comprendre python
@Steph et toute peronne volontaire, pouvez vous tester cela :
créer un répertoire .handymenu dans chaque répertoire /home/user
copier les fichiers /home/user/.handymenu.conf dans les dossier /home/user/.handymenu
ouvrir le fichier /usr/share/handymenu/hm_utils.py (en root)
après (ligne 7)
ajouter la ligne Elle permet d'intégrer le module qui va gérer le copier coller
ensuite commenter les lignes 27 et 28 et ajouter la commande qui va copier le fichier /.handymenu/.handymenu.conf dans /home/user
Code : shutil.copyfile('.handymenu/.handymenu.conf' , '.handymenu.conf')
# with open(configfile, 'wb') as pkl:
# pickle.dump(hm_default_sections, pkl, pickle.HIGHEST_PROTOCOL)
Les lignes 27 et 28 faisaient en sorte que que le fichier de configuration soit réinitialisé. Dans notre cas on le remplace par celui d'origine
cela devrait permettre de garder les fichiers de conf créés par Steph et de réinitialiser sans perdre les profils utilisateurs
Réinitialisation de l'handymenu identique au profil Prof - zoom61 - 06-11-2015
Salut,
Je teste cela ce soir...
Merci d'avoir été aussi rapide à répondre... la "distribution" n'est peut-être pas au standard Debian, mais au moins le service est ultra-réactif.
Cdlt.
Réinitialisation de l'handymenu identique au profil Prof - tomasi - 06-11-2015
Merci j'attends ta confirmation.
A essayer en live quand même pour éviter tout problème sur le système.
J'ai testé hier avec 3 profils et c'était OK
Réinitialisation de l'handymenu identique au profil Prof - Steph - 06-11-2015
Bravo Tomasi! Je teste ce soir.
Réinitialisation de l'handymenu identique au profil Prof - zoom61 - 06-11-2015
Euh, j'ai ceci, et je ne vois pas trop où le mettre :
Code : ^^B]q^@(}q^A(U^Dappsq^B]q^C(}q^D(U^Ggenericq^EU^LDictionnaireq^FU^Ccmdq^GU^Hdicorimeq^HU^Dnameq $
U^_/usr/share/pixmaps/dicorime.pngq^Ku}q^L(h^EU^RMulti-Dictionnaireq^Mh^GU
goldendictq^Nh h^Mh
U!/usr/share/pixmaps/goldendict.pngq^Ou}q^P(h^EU^KConjugaisonq^Qh^GU^U/usr/bin/leconjugueurq^Rh h^Qh
U1/usr/share/leconjugueur/images/Le_Conjugueur2.pngq^Su}q^T(h^EU^KLibreOfficeq^Uh^GU^Klibreofficeq^Vh $
U^Wlibreoffice-startcenterq^Wu}q^X(h^EU^G^crireq^Yh^GU^Tlibreoffice --writerq^Zh h^Yh
U^Rlibreoffice-writerq^[u}q^\(h^EU^HTableauxq^]h^GU^Rlibreoffice --calcq^^h h^]h
U^Plibreoffice-calcq^_u}q (h^EU^KCompositionq!h^GU^Rlibreoffice --drawq"h h!h
U^Plibreoffice-drawq#u}q$(h^EU
Diaporamasq%h^GU^Ulibreoffice --impressq&h h%h
U^Slibreoffice-impressq'u}q((h^EU^DMathq)h^GU^Rlibreoffice --mathq*h h)h
U^Plibreoffice-mathq+u}q,(h^EU^PLibreOffice Baseq-h^GU^Rlibreoffice --baseq.h h-h
U^Plibreoffice-baseq/u}q0(h^EU^PAgenda Personnelq1h^GU^Dosmoq2h U^FAgendaq3h
h2u}q4(h^EU^ZPrise de notes manuscritesq5h^GU^Gxournalq6h U^GJournalq7h
h6u}q8(U^Ggenericq9U^NNavigateur Webq:U^Ccmdq;U^T/opt/firefox/firefoxq<U^Dnameq=U^VNavigateur Web Firef$
U$/usr/share/pixmaps/abuledu-aller.pngqHu}qI(h^EU^NAbulEdu ImageoqJh^GU^Pleterrier-imageoqKh hJh
U,/usr/share/leterrier-imageo/data/asmaWin.pngqLu}qM(h^EU^OLe Jeu du PenduqNh^GU
hangman_c5qOh hNh
U#/usr/share/pixmaps/hangman-icon.pngqPu}qQ(h^EU^PLe Plus long MotqRh^GU^KlongestwordqSh hRh
U'/usr/share/pixmaps/longestword-icon.pngqTu}qU(h^EU^QExercices BeaunisqVh^GU^P/usr/bin/beaunisqWh $
U:/usr/share/icons/Faenza/apps/48/accessories-dictionary.pngqXu}qY(h^EU^MFreeFrançaisqZh^GU^O/usr/bin/$
U=/usr/share/icons/Faenza/apps/48/accessories-character-map.pngq\u}q](U^Ggenericq^U^@q_U^Ccmdq`Ucenv wi$
U./usr/share/pixmaps/abuledu-anouslesnombres.pngqmu}qn(h^EU^UAbuledu Calcul-Mentalqoh^GU^Wleterrier-cal$
U?/usr/share/leterrier-calcul-mental/abuledu-calcul-mental-48.pngqru}qs(h^EU^WAbulEdu Calcul Reflechiqt$
U-/usr/share/pixmaps/abuledu-calculreflechi.pngqwu}qx(h^EU^OAbulEdu Calculsqyh^GU^Gcalculsqzh U^GCalc$
U&/usr/share/pixmaps/abuledu-calculs.pngq|u}q}(h^EU^RAbuledu Operationsq~h^GU
operationsq^?h U
Operationsq^h
U)/usr/share/pixmaps/abuledu-operations.pngq^u}q^(h^EU^YAbulEdu SuiteArithmetiqueq^h^GU^[leterrier-s$
UR/usr/share/leterrier-suitearithmetique/data/images/suitearithmetique-icone-256.pngq^u}q^(h^Ehjh^GU
contour %Uq^h U^OAbulEdu Contourq^h
hmu}q^(h^EU^NAbulEdu Suitesq^h^GU^Fsuitesq^h h^h
U%/usr/share/pixmaps/abuledu-suites.pngq^u}q^(h^EU^NAbulEdu Tierceq^h^GU^Pleterrier-tierceq^h $
U0/usr/share/icons/Faenza/apps/48/gnome-sudoku.pngq^u}q^(h^EU^LCalculatriceq^h^GU^Pgnome-calculatorq$
U^Vaccessories-calculatorq^u}q^(h^EU^VCalculette capricieuseq^h^GU leterrier-calculette-capricieuseq$
UJ/usr/share/leterrier-calculette-capricieuse/data/images/calc-cap-icone.pngq^u}q^(h^EU FreeMat$
U2/usr/share/icons/Faenza/apps/48/gnome-tetravex.pngq^u}q^(h^EU^FFubukiq^h^GU^Pleterrier-fubukiqh $
U</usr/share/leterrier-fubuki/data/images/fubuki-icone-256.pngqu}q(h^EU^ULa Course aux Nombresqh^GU^$
U*/usr/share/pixmaps/numberraceIcon64x64.pngqu}q(h^EU^PLe matou matheuxqh^GU^N/usr/bin/matouqh $
U+/usr/share/icons/Faenza/apps/48/tracker.pngqu}q(h^EU^Pleterrier-ciblerqh^Ghh hh
U6/usr/share/leterrier-cibler/data/images/cibler-256.pngqu}q(h^EU
Problèmesqh^GU problemesqh hh
U /usr/share/pixmaps/problemes.pngqu}q(h^EU^HTux Mathqh^GU^Gtuxmathqh hh
hueh U^FCalculqhBK^Au}q(h^B]q(}q(h^EU^NAbulEdu Cheminqh^GU^Fcheminqh hh
U%/usr/share/pixmaps/abuledu-chemin.pngqu}q(h^EU^PAbulEdu Symcolorqh^GU^Hsymcolorqh hh
U'/usr/share/pixmaps/abuledu-symcolor.pngqu}q(h^EU Geotortueqh^GU^U/usr/bin/geotortue.shqh $
U^]/usr/share/pixmaps/tortue.pngqu}q(h^EU^HTangramsqh^GU^Egtansqh hh
hu}q(h^EU
Labyrintheqh^GU,/usr/share/Omega/labyrinthe-linux/Labyrintheqh hh
U^^/usr/share/pixmaps/labytux.jpgqu}q(h^EU^QLabyrinthe cachéqh^GU8/usr/share/Omega/labyrinthe-cache$
U@/usr/share/Omega/labyrinthe-cache-linux/images/butterfly0000.pngqu}q(h^EU^KComparaisonqh^GU./usr/s$
U1/usr/share/Omega/comparaison-linux/images/Cat.pngqu}q(h^EU^EPilesqh^GU"/usr/share/Omega/piles-linu$
U:/usr/share/icons/Faenza/actions/48/document-properties.pngqueh U^KGéométrieqhBK^Du}q(h^B]q$
U$/usr/share/pixmaps/abuledu-mulot.pngqu}q(h^EU^HJnavigueqh^GU^T/usr/bin/jnavigue.shqh hh
U#/usr/share/pixmaps/logoJnavigue.pngqu}q(h^EU^HKLettresqh^GU^Hklettresqh hh
hu}q(h^EU PySyCacheqh^GU pysycacheqh hh
U /usr/share/pixmaps/pysycache.pngqu}q(h^EU Tux Paintqh^GU^Htuxpaintqh hh
hueh U^NClavier-DessinqhBK^Gu}q(h^B]q(}q(h^EU
Childsplayqh^GU
childsplayqh hh
childsplayqh hh
U!/usr/share/pixmaps/childsplay.pngqu}q(h^EU^YSuite éducative GComprisqh^GU^Hgcomprisqh U^HGCom$
hu}q(h^EU^GOmnituxqh^GU^P/usr/bin/omnituxqh hh
U^^/usr/share/pixmaps/omnitux.pngqu}q(h^EU pySioGameqh^GU^R/usr/bin/pysiogameqh hh
U /usr/share/pixmaps/pysiogame.pngqueh U^LCompilationsqhBK^Cu}q(h^B]r^@^A^@^@(}r^A^A^@^@(h^EU^KAtlas$
U)/usr/share/pixmaps/fcys14-indiana-tux.pngr^D^A^@^@u}r^E^A^@^@(h^EU Seamonkeyr^F^A^@^@h^GU^R/usr/bi$
U7/usr/share/seamonkey/chrome/icons/default/default48.pngr ^A^@^@u}r
^A^@^@(h^EU^GScratchr^K^A^@^@h^GU
scratch %fr^L^A^@^@h j^K^A^@^@h
U^Gscratchr^M^A^@^@u}r^N^A^@^@(h^EU
Stellariumr^O^A^@^@h^GU
stellariumr^P^A^@^@h j^O^A^@^@h
j^P^A^@^@ueh U^NDéc. du Monder^Q^A^@^@hBK^Hu}r^R^A^@^@(h^B]r^S^A^@^@(}r^T^A^@^@(h^EU^OBlobby Volley$
j^V^A^@^@u}r^W^A^@^@(h^EU^MFrozen-Bubbler^X^A^@^@h^GU^Mfrozen-bubbler^Y^A^@^@h j^X^A^@^@h
j^Y^A^@^@u}r^Z^A^@^@(h^EU^SHelp Hannah's Horser^[^A^@^@h^GU^Fhannahr^\^A^@^@h j^[^A^@^@h
U^]/usr/share/pixmaps/hannah.pngr^]^A^@^@u}r^^^A^@^@(h^EU^OMonsieur Patater^_^A^@^@h^GU
ktuberlingr ^A^@^@h j^_^A^@^@h
j ^A^@^@u}r!^A^@^@(h^EU^HMonsterzr"^A^@^@h^GU^Hmonsterzr#^A^@^@h j"^A^@^@h
U+/usr/share/games/monsterz/graphics/icon.pngr$^A^@^@u}r%^A^@^@(h^EU^ERi-lir&^A^@^@h^GU^Eri-lir'^A^@^@h$
j'^A^@^@u}r(^A^@^@(h^EU^SSeahorse Adventuresr)^A^@^@h^GU^Sseahorse-adventuresr*^A^@^@h j)^A^@^@h
U*/usr/share/pixmaps/seahorse-adventures.pngr+^A^@^@u}r,^A^@^@(h^EU^HSuperTuxr-^A^@^@h^GU^Hsupertuxr.^A$
U^_/usr/share/pixmaps/supertux.pngr/^A^@^@ueh U^DJeuxr0^A^@^@hBK^Eu}r1^A^@^@(h^B]r2^A^@^@(}r3^A^@^@(h$
U /usr/share/Jclic/icons/jclic.pngr6^A^@^@u}r7^A^@^@(h^EU^LOpen-Sankorer8^A^@^@h^GU$/usr/local/Open-San$
U)/usr/local/Open-Sankore-2.5.1/sankore.pngr:^A^@^@u}r;^A^@^@(h^EU^ZAdministration de GComprisr<^A^@^@h$
U^Mgcompris-editr?^A^@^@u}r@^A^@^@(h^EU.Exerciseur et Créateur de contenu multimédiarA^A^@^@h^GU^Ygks$
U^]/usr/share/pixmaps/ardora.pngrD^A^@^@u}rE^A^@^@(h^EU^ZConfiguration de Tux PaintrF^A^@^@h^GU^Otuxpai$
jG^A^@^@u}rI^A^@^@(h^EU^LJclic authorrJ^A^@^@h^GU^Wusr/bin/jclic-author.shrK^A^@^@h jJ^A^@^@h
U!/usr/share/Jclic/icons/author.pngrL^A^@^@u}rM^A^@^@(h^EU^FPyloterN^A^@^@h^GU^\/usr/share/pylote/pylot$
U!/usr/share/pylote/images/icon.pngrP^A^@^@u}rQ^A^@^@(h^EU^OPysycache AdminrR^A^@^@h^GU^Ppysycache -adm$
hu}rT^A^@^@(h^EU GraphismerU^A^@^@h^GU$pcmanfm menu://applications/GraphicsrV^A^@^@h jU^A^@^$
U^Uapplications-graphicsrW^A^@^@u}rX^A^@^@(h^EU^KMultimédiarY^A^@^@h^GU&pcmanfm menu://applications/Mu$
U!/usr/share/pixmaps/multimedia.pngr\^A^@^@u}r]^A^@^@(U^Ggenericr^^A^@^@h_U^Ccmdr_^A^@^@U^env wine-deve$
Réinitialisation de l'handymenu identique au profil Prof - Steph - 06-11-2015
De mon côté, pas mieux, il me dit qu'il ne trouve pas .handymenu/.handymenu.conf
J'ai essayé en mettant ~/.handymenu/.handymenu.conf => pareil
Et attention, pour moi les lignes à décommenter sont les 30 et 31.
Tu peux copier-coller tes 30 premières lignes?
Réinitialisation de l'handymenu identique au profil Prof - Steph - 06-11-2015
Par contre tant qu'on y est, pour trouver les icônes dans /usr/share/pixmaps, il semble qu 'ajouter:
sous ligne 13: hmdir="/usr/share/handymenu"
Code : pixmaps="/usr/share/pixmaps"
puis ajouter ligne 16 à primtux_icons=os.path.join(pixmaps,hmdir,"icons")
suffise.
Réinitialisation de l'handymenu identique au profil Prof - tomasi - 07-11-2015
@steph: peux tu essayer en mettant le chemin complet de l'utilisateur (p.e.. /home/super/.handymenu/.handymenu.conf)
@zoom: dou ça vient ?
Réinitialisation de l'handymenu identique au profil Prof - Steph - 07-11-2015
Je l'ai fait aussi, ça n'a pas fonctionné et j'ai résolu ce pb de chemin en le déclarant:
sous la ligne 12:
Code : configfile=os.path.expanduser('~/.handymenu.conf')
j'ai inséré
Code : configreset=os.path.expanduser('~/.handymenu/.handymenu.conf')
Puis dans ton shutil, au lieu de mettre le chemin, j'ai mis:
Code : shutil.copyfile(configreset,configfile)
Je me heurte à un autre pb: si je change la configuration, le changement n'est pas pris en compte, il revient systématiquement à la configuration d'origine.
Réinitialisation de l'handymenu identique au profil Prof - tomasi - 07-11-2015
J'ai eu ce problème mais parce-que je travaillais sur handymenu.py
Juste un détail par rapport à mon script et ce que tu as fait: j'ai mis le fichier handymenu.conf dans un répertoire caché.
Donc dans ton cas soit il ne sauvegarde rien dans le handymenu.conf soit il copie le fichier conf de base à chaque fois.
Tu peux regarder par rapport à la date de modif du fichier ?
Réinitialisation de l'handymenu identique au profil Prof - tomasi - 07-11-2015
Après j'ai modifié ce fichier en admin pas en sudo
Réinitialisation de l'handymenu identique au profil Prof - Steph - 07-11-2015
erreur de frappe ici, je l'ai bien mis dans un répertoire caché. Je recommence...
Réinitialisation de l'handymenu identique au profil Prof - Steph - 07-11-2015
Tu peux tester mon truc avec les icônes?
Réinitialisation de l'handymenu identique au profil Prof - tomasi - 07-11-2015
Je vais essayer la je n'ai pas de pc sous la main, peut-être ce soir.
Réinitialisation de l'handymenu identique au profil Prof - Steph - 07-11-2015
Mon handymenu c'est celui de la 20-10, handymenu du 25/09 et les autres du 19/10
Réinitialisation de l'handymenu identique au profil Prof - tomasi - 07-11-2015
Bon @steph je regarde ton truc dans 5 minutes. Je viens de vérifier pour l'handymenu.
Ce que j'ai fait : démarrer en live depuis primtux-liberté
démarrer utilisateur super
ouvrir terminal
su
pcmanfm
aller dans /usr/share/handymenu
clic droit sur hm_utils.py ouvrir avec leafpad
voilà le début de mon fichier après il n'y a rien de modifier
Code : #!/usr/bin/python
# -*- coding:Utf-8 -*-
# utils for handymenu
import os
import pickle
import gettext
import shutil
# options for handymenu
menuname = "HandyMenu"
configfile=os.path.expanduser('~/.handymenu.conf')
noclose=os.path.expanduser('~/.handymenu-noclose.conf')
hmdir="/usr/share/handymenu"
configcmd="python {} &".format(os.path.join(hmdir,"handymenu-configuration.py"))
primtux_icons=os.path.join(hmdir,"icons")
primtuxmenuicon=os.path.join(primtux_icons,"primtuxmenu_icon.png")
onglet_width = 12
maxonglets = 9
iconsize = 64
gettext.bindtextdomain('handymenu', '/usr/share/locale')
gettext.textdomain('handymenu')
_ = gettext.gettext
def set_default_config():
print("reset configuration")
shutil.copyfile('.handymenu/.handymenu.conf' , '.handymenu.conf')
# with open(configfile, 'wb') as pkl:
# pickle.dump(hm_default_sections, pkl, pickle.HIGHEST_PROTOCOL)
def load_config():
ensuite j'ouvre pcmanfm je crée un dossier dans /home/super qui s'appelle .handymenu
je copie le fichier /home/super/.handymenu.conf dans/home/super/.handymenu
je ferme l'handymenu si je ne l'avais pas fait
je relance l'handymenu
je vais dans la config je supprime des onglets, je ferme la config et vérifie que c'est bien pris en compte.
je retourne dans la config et fais réinitialiser . Je retrouve mes onglets de base.
Réinitialisation de l'handymenu identique au profil Prof - tomasi - 07-11-2015
@steph : dans mon cas pepit ne l'ajout de l'icone de pepit ne fonctionnera pas car c'est un jpg et pas png
Réinitialisation de l'handymenu identique au profil Prof - Steph - 07-11-2015
Là je pourrai refaire le paquet avec une icône en png. Tu peux essayer avec du png? Raconte-moi par exemple.
Réinitialisation de l'handymenu identique au profil Prof - Steph - 07-11-2015
Enfin ça marche! On va pouvoir faire un copier-coller!
|