Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1026 Le 24/06/2012, à 22:16

ragamatrix

Re : [Conky] Alternative à weather.com (2)

Bon j'avoue...
J'ai downgrader avec mon script "launch.sh" pour lancer mes conky au démarrage--->je n'ai pas trouver l’erreur de mon bug  "conky control"
Maintenant ça roule...
launch.sh

Hors ligne

#1027 Le 25/06/2012, à 04:55

Didier-T

Re : [Conky] Alternative à weather.com (2)

@ enebre,

peut être n'a tu pas modifié les chemins dans le fichier blinkingLED (il doit être avec les scripts)

Hors ligne

#1028 Le 25/06/2012, à 07:27

enebre

Re : [Conky] Alternative à weather.com (2)

Bonjour - Didier-T -
Je vois pas ce que je devrais modifier... J'ai fais le test en changeant la couleur et ça fonctionne correctement. Peut être avec la fonction BAT : qu'en pense tu, il n'y a pas de batterie dans le Revo, c'est un nettop.

${image ~/conky/script/images/Yellow.png -p 129, 241 -s 40x40 -f 60}${if_match ${execi 1 num=$(date +%-S);rem=$(( num % 2 ));if [ $rem -eq 0 ] ; then echo 0 ; else  echo 1 ; fi}==0}${image ~/conky/script/images/Blue.png -p 129, 241 -s 40x40 -f 60}${endif}
${image ~/conky/script/images/Blank.png -p 19, 129 -s 40x40 -f 60}${if_match ${execi 1 num=$(date +%-S);rem=$(( num % 2 ));if [ $rem -eq 0 ] ; then echo 0 ; else  echo 1 ; fi}==0}${image ~/conky/script/images/Blue.png -p 19, 129 -s 40x40 -f 60}${endif}
${image ~/conky/script/images/Blank.png -p 240, 129 -s 40x40 -f 60}${if_match ${execi 1 num=$(date +%-S);rem=$(( num % 2 ));if [ $rem -eq 0 ] ; then echo 0 ; else  echo 1 ; fi}==0}${image ~/conky/script/images/Blue.png -p 240, 129 -s 40x40 -f 60}${endif}

Bonjour - ragamatrix - Il devient vraiment génial ton conky.

Dernière modification par enebre (Le 25/06/2012, à 07:33)

Hors ligne

#1029 Le 25/06/2012, à 07:58

Phyllinux

Re : [Conky] Alternative à weather.com (2)

@ enebre :
Regarde dans l'archive que j'ai posté.
Pour le conkyrc, j'ai indiqué les lignes à mettre en commentaires (à précéder d'un '#') pour le cas où le conky est affiché sur un fixe, donc sans batterie.

@ ragamatix :
Je suis sous Voyager, donc XFCE.
J'ai bien vu dans un post précédent que tu avais le même message d'erreur de gnome-keyring. Quelle est donc la solution pour supprimer ce message ?


The ship is sinking normally...

Hors ligne

#1030 Le 25/06/2012, à 08:18

enebre

Re : [Conky] Alternative à weather.com (2)

Bonjour - Phyllinux -
J'ai déja commenté les lignes concernant la batterie dans le conkyrc, je pensais qu'il y en aurait d'autre ailleurs que je n'aurais pas trouvé.

Pour le message d'erreur de gnome-keyring, je n'ai pas vraiment d' option à te proposer, je reste aussi vigilant sur ce sujet.
Je vais retester avec le terminal pour vérifier, mais je crois que je ne l'ai plus, regarde de ce côté c'est peut être une piste capturedcran-25062012-091659.php

Pour test j'ai commenté la ligne #lua_draw_hook_pre clock_rings et le cpu à chuté de 2%

Dernière modification par enebre (Le 25/06/2012, à 08:19)

Hors ligne

#1031 Le 25/06/2012, à 09:13

Didier-T

Re : [Conky] Alternative à weather.com (2)

Bonjour à vous chronoliens,

Pour infos dans le script que j'ai modifié, ce qui est modifié est justement lié à la batterie (donc plus la peine de mettre les lignes concerné en remarque).

Hors ligne

#1032 Le 25/06/2012, à 09:34

ragamatrix

Re : [Conky] Alternative à weather.com (2)

@Didier-T
Salut,
En fait mon lancement de conkymétéo et pression ne se lancent toujours pas; que ce soit avec le script "launch" ou "conkycontrol"; hier ça fonctionnait car j'avais fermé la session et non redémarrer...Je n'arrive pas à comprendre pourquoi certains conky fonctionnent au démarrage et pas d'autres.?

Hors ligne

#1033 Le 25/06/2012, à 09:39

Didier-T

Re : [Conky] Alternative à weather.com (2)

@ ragamatrix,

ce que tu peut tenter c'est fermer tous les programme (conky compris), puis éteindre ton pc en cochant enregistrer la session en cours (ou un truc du genre).

A la prochaine extinction il ne faudra pas oublié de décoché cette option, si non tes conky ce lanceront en double.

Hors ligne

#1034 Le 25/06/2012, à 09:44

ragamatrix

Re : [Conky] Alternative à weather.com (2)

Phyllinux a écrit :

@ enebre :
Regarde dans l'archive que j'ai posté.
Pour le conkyrc, j'ai indiqué les lignes à mettre en commentaires (à précéder d'un '#') pour le cas où le conky est affiché sur un fixe, donc sans batterie.

@ ragamatix :
Je suis sous Voyager, donc XFCE.
J'ai bien vu dans un post précédent que tu avais le même message d'erreur de gnome-keyring. Quelle est donc la solution pour supprimer ce message ?

@Phyllinux
Salut,

Le problème est un peu évoqué ici (post#2) : gnome keyring...
Au lieu de le désactiver au démarrage je l'ai activé dans le menu des préférence de programmes aux démarrage dans xfce, onglet avancé(je crois que c'est la derniere ligne)et comme j'ai une session openbox dans l'autostart j'ai mis :

 /usr/bin/gnome-keyring-daemon --start --components=pkcs11 &  

J'ai maintenant plus d'erreur dans le terminal.
Peut-être cela pourra t'aiguiller.;)

Dernière modification par ragamatrix (Le 25/06/2012, à 10:10)

Hors ligne

#1035 Le 25/06/2012, à 10:12

ragamatrix

Re : [Conky] Alternative à weather.com (2)

Didier-T a écrit :

@ ragamatrix,

ce que tu peut tenter c'est fermer tous les programme (conky compris), puis éteindre ton pc en cochant enregistrer la session en cours (ou un truc du genre).

A la prochaine extinction il ne faudra pas oublié de décoché cette option, si non tes conky ce lanceront en double.

J'ai essayé cette manip-->marche pas sad Merci quand même je vais attendre 11h45 pour lancer les conkys météo lol

Hors ligne

#1036 Le 25/06/2012, à 12:21

enebre

Re : [Conky] Alternative à weather.com (2)

Depuis ce matin, le conky-météo ne démarre plus.

Je crois comprendre qu'il a besoin d'un fichier situé /tmp/utilisateur-meteo
J'ai changé un paramètre à mon voyager12.04 pour utiliser la swap à la place du /tmp donc il est possible que ce soi la cause de la panne.

" changement opéré en ": sudo leafpad /etc/sysctl.conf
" en y ajoutant la ligne ": vm.swappiness=10

- jpdipsy -
Comment dois-je rediriger ce fichier dans conky_fondinactif à la ligne 27
et question subsidiaire : est ce la seule modification à signaler ?

Dernière modification par enebre (Le 25/06/2012, à 12:25)

Hors ligne

#1037 Le 25/06/2012, à 13:07

jpdipsy

Re : [Conky] Alternative à weather.com (2)

enebre a écrit :

Depuis ce matin, le conky-météo ne démarre plus.


J'ai changé un paramètre à mon voyager12.04 pour utiliser la swap à la place du /tmp

- jpdipsy -
Comment dois-je rediriger ce fichier dans conky_fondinactif à la ligne 27
et question subsidiaire : est ce la seule modification à signaler ?

Bigre pourquoi le swap hormis si tu veux que ton disque dure arrive premier à la derniére étape du tour.
le /tmp/ en tmpfs tel qu'il est chez moi ne contient que 12MO.

${image /tmp/image-meteo-Belfort.png -n } est un lien défini dans creationmodules-fondinactif ln -f -s "$repsauv/$imagefinale.png   /tmp/$imagefinale.png"
Donc dans  creationmodules-fondinactif
1-imagefinale=tonimage
2-tu peux si tu veux définir un autre lien ln -f -s  "$repsauv/$imagefinale.png  /tonnouveaurep/$imagefinale.png" ligne 39 et 251  et puis ${image /tonnouveaurep/tonimage.png -n }

Hors ligne

#1038 Le 25/06/2012, à 13:39

enebre

Re : [Conky] Alternative à weather.com (2)

- jpdipsy -

jpdipsy a écrit :

Bigre pourquoi le swap hormis si tu veux que ton disque dure arrive premier à la dernière étape du tour

En lisant l'info, ça me semblait pas trop mal, voyant que je n'utilise que peu de ram, mais voilà mes neurones ont confondu la ram et la swap. Je remets tout en ordre, remarque j'avais un doute sur le bien fondé de la manip, voila qui clarifie les choses.

Hors ligne

#1039 Le 25/06/2012, à 13:58

Phyllinux

Re : [Conky] Alternative à weather.com (2)

@ jpdipsy :

Je continue ma migration de Ubuntu Unity à Voyager.
Jusque là, j'ai pu reprendre tous mes différents conkys et les réutiliser sous Voyager, avec une gestion du conky control vraiment très sympa et très pratique.
J'avais gardé le meilleur pour la fin : Le fond d'écran avec la météo intégrée. Et là, ça coince ! mad
Avant de me lancer dans une mise à jour de tes différents scripts, j'ai d'abord essayé de transférer telle quelle ma petite réalisation perso intégrée à xplanetFX.
Et, bien sûr, c'est pas bon !
J'ai déjà ce beau message d'erreur :

Conky: desktop window (1200003) is subwindow of root window (15d)
Conky: window type - override
Conky: drawing to created window (0x2e00001)
Conky: drawing to double buffer
    version = v4.1
    web = http://www.accuweather.com/fr/fr/marseille/170960/current-weather/170960
    Pévision Nb jours = 6
    Pévision Matin = non
    Pévision Après Midi = non
    Pévision Soirée = oui
    Pévision Nuit = oui
    Délais = 900
    Chemin de travail = /tmp
    Palier = 16
    Chemin de sauvegarde = /home/gilles/conky_Fond/Meteo-Lua/sauvegardes/
Mode = fondecran
fluxbox
cat: /home/gilles/.fluxbox/lastwallpaper: Aucun fichier ou dossier de ce type
convert: pas de délégué pour décoder ce format d'image `/tmp/marseille/170960' @ error/constitute.c/ReadImage/532.

Normal : Je regarde sur mon DD, et je n'ai pas de répertoire 'fluxbox', donc cela ne peut pas tourner comme cela.
Ensuite, j'ai commencé à regarder ton nouveau pack, et je lis :

Prise en charge de gnome-2et3 xfce fluxbox et openbox.
------- Important ------------------------------------------------------------------
Attention vous devez avoir un fond d'ecran déja installé pour ces environnements
Les fonds d'écrans dynamiques ne sont pas pris en charge

Cela signifie t'il qu'il n'y a plus de possibilité d'intégration à xplanetFX ? Si c'est le cas, cela perd beaucoup de son charme sad Car j'aimais bien avoir ma petite terre avec sa météo intégrée.
Aussi, avant que je me plonge dans tous les fichiers, peux tu me confirmer si il est possible ou non d'avoir le rendu que j'avais avant sous Voyager, avec les nouveaux (ou les anciens) scripts ?

Merci


The ship is sinking normally...

Hors ligne

#1040 Le 25/06/2012, à 15:46

enebre

Re : [Conky] Alternative à weather.com (2)

- jpdipsy -
je dois avoir déréglé quelque chose, le conky météo ne démarre plus depuis mon bidouillage de la swap.
C'est qu'ils seraient délicats les scripts de chez conky roll

─( enebre ) - ( 3.4.3-030403-generic ) - ( ~ )
└─> 
Conky: desktop window (e00003) is subwindow of root window (282)
Conky: window type - override
Conky: drawing to created window (0x4600001)
Conky: drawing to double buffer
    version = v4.1
    web = http://www.accuweather.com/fr/be/vielsalm/29360/weather-forecast/29360
    Pévision Nb jours = 6
    Pévision Matin = non
    Pévision Après Midi = non
    Pévision Soirée = oui
    Pévision Nuit = oui
    Délais = 900
    Chemin de travail = /tmp/utilisateur-meteo
    Palier = 10
    Chemin de sauvegarde = /home/enebre/conky/Meteo-Lua/sauvegardes/belfort/
    Mode = fondinactif
    creationmodule = creationmodules-fondinactif.sh
sh: 1: /tmp/utilisateur-meteo/vielsalm/29360/creationmodules-fondinactif.sh: Permission denied
Conky: Unable to load image '/tmp/image-meteo-Belfort.png'
    Mode = fondinactif
    creationmodule = creationmodules-fondinactif.sh
sh: 1: /tmp/utilisateur-meteo/vielsalm/29360/creationmodules-fondinactif.sh: Permission denied

Dernière modification par enebre (Le 25/06/2012, à 15:48)

Hors ligne

#1041 Le 25/06/2012, à 15:48

jpdipsy

Re : [Conky] Alternative à weather.com (2)

Phyllinux a écrit :

@ jpdipsy :

Je continue ma migration de Ubuntu Unity à Voyager.
Jusque là, j'ai pu reprendre tous mes différents conkys et les réutiliser sous Voyager, avec une gestion du conky control vraiment très sympa et très pratique.
J'avais gardé le meilleur pour la fin : Le fond d'écran avec la météo intégrée. Et là, ça coince ! mad
Avant de me lancer dans une mise à jour de tes différents scripts, j'ai d'abord essayé de transférer telle quelle ma petite réalisation perso intégrée à xplanetFX.
Et, bien sûr, c'est pas bon !
J'ai déjà ce beau message d'erreur :

Conky: desktop window (1200003) is subwindow of root window (15d)
Conky: window type - override
Conky: drawing to created window (0x2e00001)
Conky: drawing to double buffer
    version = v4.1
    web = http://www.accuweather.com/fr/fr/marseille/170960/current-weather/170960
    Pévision Nb jours = 6
    Pévision Matin = non
    Pévision Après Midi = non
    Pévision Soirée = oui
    Pévision Nuit = oui
    Délais = 900
    Chemin de travail = /tmp
    Palier = 16
    Chemin de sauvegarde = /home/gilles/conky_Fond/Meteo-Lua/sauvegardes/
Mode = fondecran
fluxbox
cat: /home/gilles/.fluxbox/lastwallpaper: Aucun fichier ou dossier de ce type
convert: pas de délégué pour décoder ce format d'image `/tmp/marseille/170960' @ error/constitute.c/ReadImage/532.

Normal : Je regarde sur mon DD, et je n'ai pas de répertoire 'fluxbox', donc cela ne peut pas tourner comme cela.
Ensuite, j'ai commencé à regarder ton nouveau pack, et je lis :

Prise en charge de gnome-2et3 xfce fluxbox et openbox.
------- Important ------------------------------------------------------------------
Attention vous devez avoir un fond d'ecran déja installé pour ces environnements
Les fonds d'écrans dynamiques ne sont pas pris en charge

Cela signifie t'il qu'il n'y a plus de possibilité d'intégration à xplanetFX ? Si c'est le cas, cela perd beaucoup de son charme sad Car j'aimais bien avoir ma petite terre avec sa météo intégrée.
Aussi, avant que je me plonge dans tous les fichiers, peux tu me confirmer si il est possible ou non d'avoir le rendu que j'avais avant sous Voyager, avec les nouveaux (ou les anciens) scripts ?

Merci

Comme je sent soufflé un vent de panique et la sueur froide doucement coulée le long de ton dos une image vaut mieux qu'un long discourt capture
Pour fluxbox et consort c'est seulement à la toute première init. après si tu utilise la v1 de mon pack c'est juste une concaténation des anciens scripts mise_en_forme et creationmodules rien de difficile.

Donc tu fait péter tes scripts et je t'explique

Dernière modification par jpdipsy (Le 25/06/2012, à 15:51)

Hors ligne

#1042 Le 25/06/2012, à 16:36

Phyllinux

Re : [Conky] Alternative à weather.com (2)

jpdipsy a écrit :

Donc tu fait péter tes scripts et je t'explique

Sauvé !!! Le grand Gourou (non, je n'ai pas dit le Kangourou) du script d'intégration de la météo dans mon fond d'écran dynamique vient d'éclairir mon ciel bien sombre (même si il fait un soleil magnifique sur Marseille, et encore 32° à l'heure actuelle) tongue

Mes scripts :
Meteo-Lua 4.1
Images-meteo-lua V2 :

-- Créé par Didier-T (forum.ubuntu-fr.org), pour jpdipsy
-- Nécessite imagemagick http://apt.ubuntu.com/p/imagemagick



require "io"
require "os"


local Version = "v2"
local conditionJour = {}
local conditionNuit = {}
local conditionMatin = {}
local conditionAM = {}
local conditionSoiree = {}
local conditionNoct = {}
local InfoJour = {}
local conditioncourante = {}
local Thermometre = {}
local ThermometresRond = {}
local init_thermo = {}
local init_thermo_res = {}
local init_rose = {}
local init_rose_raf = {}
local lunaison = {}
local Barometre = {}
local Rep, cmd, jours, matin, apresmidi, soiree, nuit, delais, r, repsauv, l, Rep_Therm, Rep_Rose, Palier, t1, MAJHold, maj1, Nb_Thermo, Rep_Lune, Rep_Barometre, Rep_ThermRond, Nb_ThermRond, palier1, palier2, palier3, palier4, mise_en_page


-- Création rose des vent par jpdipsy
function Rose(i, dp, v, nom, taille, opacite)
    local angle, couleur, f ,couleurfont
    local vitesse = "'"..v.." km/h'"
    
    if v ~= nil then
        f = tonumber(v)
    else
        f = 0
    end
    
    if f <= Palier then
        couleur = palier1
        couleurfont = palier1coulfont
    elseif f <= Palier*2 then
        couleur = palier2
        couleurfont = palier2coulfont
    elseif f <= Palier*3 then
        couleur = palier3
        couleurfont = palier3coulfont
    elseif f >= (Palier*3)+1 then
        couleur = palier4
        couleurfont = palier4coulfont
    end


    if i == "Calme" then
        angle = nil
    elseif i == "N" then
        angle = 0
    elseif i == "NNE" then
        angle = 22.5
    elseif i == "NE" then
        angle = 45
    elseif i == "ENE" then
        angle = 67.5
    elseif i == "E" then
        angle = 90
    elseif i == "ESE" then
        angle = 112.5
    elseif i == "SE" then
        angle = 135
    elseif i == "SSE" then
        angle = 157.5
    elseif i == "S" then
        angle = 180
    elseif i == "SSO" then
        angle = 202.5
    elseif i == "SO" then
        angle = 225
    elseif i == "OSO" then
        angle = 247.5
    elseif i == "O" then
        angle = 270
    elseif i == "ONO" then
        angle = 292.5
    elseif i == "NO" then
        angle = 315
    elseif i == "NNO" then
        angle = 337.5
    else
        angle = nil
    end

    if angle ~= nil then

       os.execute(' convert -background transparent '..Rep_Rose..'/'..couleur..' -rotate '..angle..' '..Rep..'/dir_rot.png && composite -compose Over  -gravity Center '..Rep..'/dir_rot.png '..Rep_Rose..'/base.png '..Rep..'/'..nom..'.png')
   --os.execute(' convert -background transparent '..Rep_Rose..'/Calme.png -rotate -'..angle..' '..Rep..'/dir_rot.png && composite -compose Over  -gravity Center '..Rep..'/dir_rot.png '..Rep_Rose..'/'..couleur..' '..Rep..'/'..nom..'.png')
    else
        os.execute(' composite -compose Over  -gravity Center '..Rep_Rose..'/Calme.png '..Rep_Rose..'/base.png '..Rep..'/'..nom..'.png')
    end
    os.execute(' convert '..Rep..'/'..nom..'.png -font '..repfonts..'/AlteHaasGroteskBold.ttf   -fill '..couleurfont..' -pointsize 40 -gravity center -annotate +0+0 '..vitesse..' '..Rep..'/'..nom..'.png && mogrify -resize '..taille..'! '..Rep..'/'..nom..'.png && composite -blend 0x'..opacite..' null: '..Rep..'/'..nom..'.png -matte '..Rep..'/'..nom..'.png')

end

-- Récupération des infos à afficher
function Recup(info)
    local num = info:match("%d+")
    if num ~= nil then
        info = string.gsub(info, num, "")
        num = tonumber(num)
    end
    info = string.gsub(info, " ", "")

    
    if info == "TempRes" then
        T1 =  conditioncourante.Tempr
    elseif info == "TempAct" then
        T1 =  conditioncourante.Temp
    elseif info == "Rose" then
        T1 =  conditioncourante.PointRosee
    elseif info == "Pression" then
        T1 =  conditioncourante.Pression
    elseif info == "Jour_Temp" then
        T1 =  conditionJour[num].Temp
    elseif info == "Jour_TempRes" then
        T1 =  conditionJour[num].TempRes
    elseif info == "Nuit_Temp" then
        T1 =  conditionNuit[num].Temp
    elseif info == "Nuit_TempRes" then
        T1 =  conditionNuit[num].TempRes
    elseif info == "Histo_Max" then
        T1 =  InfoJour[num].Histo_Max
    elseif info == "Histo_Min" then
        T1 =  InfoJour[num].Histo_Min
    elseif info == "Matin_TempMax" then
        T1 =  conditionMatin[num].TempMax
    elseif info == "Matin_TempMin" then
        T1 =  conditionMatin[num].TempMin
    elseif info == "Matin_TempMaxRes" then
        T1 =  conditionMatin[num].TempMaxR
    elseif info == "Matin_TempMinRes" then
        T1 =  conditionMatin[num].TempMinR
    elseif info == "Matin_Rose" then
        T1 =  conditionMatin[num].PointRosee
    elseif info == "AM_TempMax" then
        T1 =  conditionAM[num].TempMax
    elseif info == "AM_TempMin" then
        T1 =  conditionAM[num].TempMin
    elseif info == "AM_TempMaxRes" then
        T1 =  conditionAM[num].TempMaxR
    elseif info == "AM_TempMinRes" then
        T1 =  conditionAM[num].TempMinR
    elseif info == "AM_Rose" then
        T1 =  conditionAM[num].PointRosee
    elseif info == "Soiree_TempMax" then
        T1 =  conditionSoiree[num].TempMax
    elseif info == "Soiree_TempMin" then
        T1 =  conditionSoiree[num].TempMin
    elseif info == "Soiree_TempMaxRes" then
        T1 =  conditionSoiree[num].TempMaxR
    elseif info == "Soiree_TempMinRes" then
        T1 =  conditionSoiree[num].TempMinR
    elseif info == "Soiree_Rose" then
        T1 =  conditionSoiree[num].PointRosee
    elseif info == "Noct_TempMax" then
        T1 =  conditionNoct[num].TempMax
    elseif info == "Noct_TempMin" then
        T1 =  conditionNoct[num].TempMin
    elseif info == "Noct_TempMaxRes" then
        T1 =  conditionNoct[num].TempMaxR
    elseif info == "Noct_TempMinRes" then
        T1 =  conditionNoct[num].TempMinR
    elseif info == "Noct_Rose" then
        T1 =  conditionNoct[num].PointRosee
    end
    
    T1 = tonumber(T1)
    if T1 <= -30 then
        T1 = -30
    elseif T1 >= 50 then
        T1 = 50
    end

    return T1
    
end


-- Création thermomètre par jpdipsy
function CreaThermometre(TherNb)

    local NbPlot
    local Tbase = Thermometre[TherNb].base
    local Alcool = Thermometre[TherNb].mercure
    Alcool = string.gsub(Alcool, " ", "")
    local InfoAlcool = Recup(Thermometre[TherNb].mercure_info)
    local Plot = {}
    local InfoPlot = {}
    
    if Thermometre[TherNb].plot ~= "" then
        local PlotCherche = Thermometre[TherNb].plot
        PlotCherche = string.gsub(PlotCherche, " ", "")
        local InfoPlotCherche = Thermometre[TherNb].plot_info

        local pos1 = 0
        NbPlot = 0
        while pos1 ~= nil do
            local pos2 = string.find(PlotCherche, ",", pos1+1)
            NbPlot = NbPlot+1
            if pos2 ~= nil then
                Plot[NbPlot] = string.sub(PlotCherche, pos1+1, pos2-1)
            else
                Plot[NbPlot] = string.sub(PlotCherche, pos1+1)
            end
            pos1 = pos2
        end
    
        pos1 = 0
        NbPlot = 0
        while pos1 ~= nil do
            local pos2 = string.find(InfoPlotCherche, ",", pos1+1)
            NbPlot = NbPlot+1
            if pos2 ~= nil then
                InfoPlot[NbPlot] = Recup(string.sub(InfoPlotCherche, pos1+1, pos2-1))
            else
                InfoPlot[NbPlot] = Recup(string.sub(InfoPlotCherche, pos1+1))
            end
            pos1 = pos2
        end
    end    
    

    if InfoAlcool > -30 then
      local T1 = (InfoAlcool*5)+150
      os.execute( "convert "..Rep_Therm.."/"..Alcool.." -resize 20x"..T1.."! "..Rep.."/colonne.png  && composite -compose Over -geometry -0+108 -gravity South "..Rep.."/colonne.png "..Rep_Therm.."/"..Tbase.." "..Rep.."/Thermo"..TherNb..".png" )
    else
        os.execute( "cp "..Rep_Therm.."/"..Tbase.." "..Rep.."/Thermo"..TherNb..".png" )
    end

    if NbPlot ~= nil then
        for i = 1, NbPlot do
            T2 = InfoPlot[i]
            local pos_T2 = (T2*5) +258
            os.execute("composite -compose Over  -geometry -0+"..pos_T2.."  -gravity South   "..Rep_Therm.."/"..Plot[i].." "..Rep.."/Thermo"..TherNb..".png  "..Rep.."/Thermo"..TherNb..".png")
        end
    end
    os.execute('mogrify -resize '..Thermometre[TherNb].taille..'! '..Rep..'/Thermo'..TherNb..'.png && composite -blend 0x'..Thermometre[TherNb].opacite..' null: '..Rep..'/Thermo'..TherNb..'.png -matte '..Rep..'/Thermo'..TherNb..'.png')

end


function CreaThermometreRond(TherNb)
    local val
    os.execute(' cp '..Rep_ThermRond..'/base.png '..Rep..'/Thermorond'..TherNb..'.png')
    
    if ThermometresRond[TherNb].bleu ~= nil then
        val = Recup(ThermometresRond[TherNb].bleu)
        val = string.gsub(val, " ", "")
        cree("ind-bleu", val, TherNb)
    end
    if ThermometresRond[TherNb].rouge ~= nil then
        val = Recup(ThermometresRond[TherNb].rouge)
        val = string.gsub(val, " ", "")
        cree("ind-rouge", val, TherNb)
    end
    if ThermometresRond[TherNb].vert ~= nil then
        val = Recup(ThermometresRond[TherNb].vert)
        val = string.gsub(val, " ", "")
        cree("ind-vert", val, TherNb)
    end
    if ThermometresRond[TherNb].jaune ~= nil then
        val = Recup(ThermometresRond[TherNb].jaune)
        val = string.gsub(val, " ", "")
        cree("ind-jaune", val, TherNb)
    end
   if ThermometresRond[TherNb].blanc ~= nil then
        val = Recup(ThermometresRond[TherNb].blanc)
        val = string.gsub(val, " ", "")
        cree("ind-blanc", val, TherNb)
    end

    if ThermometresRond[TherNb].aiguille ~= nil then
        val = Recup(ThermometresRond[TherNb].aiguille)
        val = string.gsub(val, " ", "")
        cree("aiguille", val, TherNb)
    end
    os.execute('mogrify -resize '..ThermometresRond[TherNb].taille..'! '..Rep..'/Thermorond'..TherNb..'.png && composite -blend 0x'..ThermometresRond[TherNb].opacite..' null: '..Rep..'/Thermorond'..TherNb..'.png -matte '..Rep..'/Thermorond'..TherNb..'.png')

end

function cree(aiguille, angle, TherNb)
    angle = (angle*4)-40
    os.execute(' convert -background transparent '..Rep_ThermRond..'/'..aiguille..'.png -rotate '..angle..' '..Rep..'/direction_rot.png && composite -compose Over  -gravity Center '..Rep..'/direction_rot.png '..Rep..'/Thermorond'..TherNb..'.png '..Rep..'/Thermorond'..TherNb..'.png')

end


function lune()
    
    local j, h, m = Age:match("(%d+) Jours (%d+)h (%d+)m")
    if j == nil then
        j, h, m = Age:match("(%d+) Jour (%d+)h (%d+)m")
        if j == nil then
            h, m = Age:match("(%d+)h (%d+)m")
            j = 0
        end
    end
    
    local angle = ((360/42524)*((((j*24)+h)*60)+m))+180

    os.execute(' convert -background transparent '..Rep_Lune..'/indicateur.png -rotate '..angle..' '..Rep..'/indicateur_rot.png && composite -compose Over  -gravity Center '..Rep..'/indicateur_rot.png '..Rep_Lune..'/lune-base.png '..Rep..'/lune.png && mogrify -resize '..lunaison.taille..'! '..Rep..'/lune.png && composite -blend 0x'..lunaison.opacite..' null: '..Rep..'/lune.png -matte '..Rep..'/lune.png')
    
end


function Baro()
    
    local angle = ((conditioncourante.Pression-980)*4.5)-135

    ---- Aiguille
     os.execute('convert -background transparent '..Rep_Barometre..'/aiguille.png -rotate '..angle..' '..Rep..'/aiguille_rot.png && composite -compose Over  -gravity Center '..Rep..'/aiguille_rot.png '..Rep_Barometre..'/base.png '..Rep..'/Barometre.png && mogrify -resize '..Barometre.taille..'! '..Rep..'/Barometre.png && composite -blend 0x'..Barometre.opacite..' null: '..Rep..'/Barometre.png -matte '..Rep..'/Barometre.png')
    
end


-- initialisation création rose des sables
function fonc_init_rose()

    for j = 1,jours do
        init_rose[j] = {CondCour=nil, Jour=nil, Nuit=nil, Matin=nil, AM=nil, Soiree=nil, Noct=nil}
        init_rose_raf[j]= {CondCour=nil, Jour=nil, Nuit=nil, Matin=nil, AM=nil, Soiree=nil, Noct=nil}
    end
    
end


-----Affichage Barometre
function conky_Images_Barometre(p, s, f, o)

    if Barometre.taille == nil then 
        Barometre.opacite = o
        Barometre.taille = s
        Baro()
    end
    if Mode ~= "fondecran" then
        return "${image "..Rep.."/Barometre.png -p "..p.." -s "..s.." -f "..f.."}"
    else
        return Rep.."/Barometre.png "
    end
end


-----Affichage lune
function conky_Images_Lunaison(p, s, f, o)
    if lunaison.taille == nil then 
        lunaison.opacite = o
        lunaison.taille = s
        lune()
    end
    if Mode ~= "fondecran" then
        return "${image "..Rep.."/lune.png -p "..p.." -s "..s.." -f "..f.."}"
    else
        return Rep.."/lune.png "
    end
end


-----Affichage Thermometre
function conky_Images_Thermo(p, s, f, n, o)


  n = tonumber(n)
    if Thermometre[n].opacite == nil then
        Thermometre[n].opacite = o
        Thermometre[n].taille = s
    end
    if Mode ~= "fondecran" then
        return "${image "..Rep.."/Thermo"..n..".png -p "..p.." -s "..s.." -f "..f.."}"
    else
        return Rep.."/Thermo"..n..".png"
    end
end

function conky_Images_ThermoRond(p, s, f, n, o, a, b, c, d)

--p=position s=taille f=frequence de rafraichissement n=num therm o=opacité a=info 1 b=info 2 c=info 3 d=info 4
    n = tonumber(n)
    if ThermometresRond[n] == nil then
        ThermometresRond[n] = {}
        Nb_ThermRond = n
        local pos
        if a ~= nil then
            a = string.gsub(a, "-", " ")
            if string.find(a, 'a=') ~= nil then
                pos = string.find(a, '=')
                ThermometresRond[n].aiguille = string.sub(a, pos+1)
            elseif string.find(a, 'b=') ~= nil then
                pos = string.find(a, '=')
                ThermometresRond[n].bleu = string.sub(a, pos+1)
            elseif string.find(a, 'r=') ~= nil then
                pos = string.find(a, '=')
                ThermometresRond[n].rouge = string.sub(a, pos+1)
            elseif string.find(a, 'v=') ~= nil then
                pos = string.find(a, '=')
                ThermometresRond[n].vert = string.sub(a, pos+1)
        elseif string.find(a, 'j=') ~= nil then
                pos = string.find(a, '=')
                ThermometresRond[n].jaune = string.sub(a, pos+1)
        elseif string.find(a, 'w=') ~= nil then
                pos = string.find(a, '=')
                ThermometresRond[n].blanc = string.sub(a, pos+1)
            end
        end
        if b ~= nil then
            b = string.gsub(b, "-", " ")
            if string.find(b, 'a=') ~= nil then
                pos = string.find(b, '=')
                ThermometresRond[n].aiguille = string.sub(b, pos+1)
            elseif string.find(b, 'b=') ~= nil then
                pos = string.find(b, '=')
                ThermometresRond[n].bleu = string.sub(b, pos+1)
            elseif string.find(b, 'r=') ~= nil then
                pos = string.find(b, '=')
                ThermometresRond[n].rouge = string.sub(b, pos+1)
            elseif string.find(b, 'v=') ~= nil then
                pos = string.find(b, '=')
                ThermometresRond[n].vert = string.sub(b, pos+1)
        elseif string.find(b, 'j=') ~= nil then
                pos = string.find(b, '=')
                ThermometresRond[n].jaune = string.sub(b, pos+1)
        elseif string.find(b, 'w=') ~= nil then
                pos = string.find(b, '=')
                ThermometresRond[n].blanc = string.sub(b, pos+1)
            end
        end
        if c ~= nil then
            c = string.gsub(c, "-", " ")
            if string.find(c, 'a=') ~= nil then
                pos = string.find(c, '=')
                ThermometresRond[n].aiguille = string.sub(c, pos+1)
            elseif string.find(c, 'b=') ~= nil then
                pos = string.find(c, '=')
                ThermometresRond[n].bleu = string.sub(c, pos+1)
            elseif string.find(c, 'r=') ~= nil then
                pos = string.find(c, '=')
                ThermometresRond[n].rouge = string.sub(c, pos+1)
            elseif string.find(c, 'v=') ~= nil then
                pos = string.find(c, '=')
                ThermometresRond[n].vert = string.sub(c, pos+1)
        elseif string.find(c, 'j=') ~= nil then
                pos = string.find(c, '=')
                ThermometresRond[n].jaune = string.sub(c, pos+1)
        elseif string.find(c, 'w=') ~= nil then
                pos = string.find(c, '=')
                ThermometresRond[n].blanc = string.sub(c, pos+1)
            end
        end
        if d ~= nil then
            d = string.gsub(d, "-", " ")
            if string.find(d, 'a=') ~= nil then
                pos = string.find(d, '=')
                ThermometresRond[n].aiguille = string.sub(d, pos+1)
            elseif string.find(d, 'b=') ~= nil then
                pos = string.find(d, '=')
                ThermometresRond[n].bleu = string.sub(d, pos+1)
            elseif string.find(d, 'r=') ~= nil then
                pos = string.find(d, '=')
                ThermometresRond[n].rouge = string.sub(d, pos+1)
            elseif string.find(d, 'v=') ~= nil then
                pos = string.find(d, '=')
                ThermometresRond[n].vert = string.sub(d, pos+1)
        elseif string.find(a, 'j=') ~= nil then
                pos = string.find(d, '=')
                ThermometresRond[n].jaune = string.sub(d, pos+1)
        elseif string.find(d, 'w=') ~= nil then
                pos = string.find(d, '=')
                ThermometresRond[n].blanc = string.sub(d, pos+1)
            end
        end
        ThermometresRond[n].taille = s
        ThermometresRond[n].opacite = o
        CreaThermometreRond(n)
    end
    if Mode ~= "fondecran" then
        return "${image "..Rep.."/Thermorond"..n..".png -p "..p.." -s "..s.." -f "..f.."}"
    else
        return Rep.."/Thermorond"..n..".png"
    end
end


-----Affichage rose des sables
--Condition courante
function conky_Images_Rose(p, s, f, o)
    j = 1

    if init_rose[j].CondCour == nil then
        Rose(conditioncourante.VentDir, conditioncourante.VentPlein, conditioncourante.VentForce, "Rose", s, o)
        init_rose[j].CondCour = 1
    end
    if Mode ~= "fondecran" then
        return "${image "..Rep.."/Rose.png -p "..p.." -s "..s.." -f "..f.."}"
    else
        return Rep.."/Rose.png"
    end
end


--Prévision sur la journée
function conky_Images_Jour_Rose(p, s, f, j, o)
    j = tonumber(j)

    if init_rose[j].Jour == nil then
        Rose(conditionJour[j].VentDir, conditionJour[j].VentP, conditionJour[j].VentForce, "RoseJour"..j, s, o)
        init_rose[j].Jour = 1
    end
    if Mode ~= "fondecran" then
        return "${image "..Rep.."/RoseJour"..j..".png -p "..p.." -s "..s.." -f "..f.."}"
    else
        return Rep.."/RoseJour"..j..".png"
    end
end

function conky_Images_Jour_RoseR(p, s, f, j, o)
    j = tonumber(j)

    if init_rose_raf[j].Jour == nil then
        Rose(conditionJour[j].VentDir, conditionJour[j].VentP, conditionJour[j].VentRafales, "RoseJourR"..j, s, o)
        init_rose_raf[j].Jour = 1
    end
    if Mode ~= "fondecran" then
        return "${image "..Rep.."/RoseJourR"..j..".png -p "..p.." -s "..s.." -f "..f.."}"
    else
        return Rep.."/RoseJourR"..j..".png"
    end
end


--Prévision sur la nuit
function conky_Images_Nuit_Rose(p, s, f, j, o)
    j = tonumber(j)

    if init_rose[j].Nuit == nil then
        Rose(conditionNuit[j].VentDir, conditionNuit[j].VentP, conditionNuit[j].VentForce, "RoseNuit"..j, s, o)
        init_rose[j].Nuit = 1
    end
    if Mode ~= "fondecran" then
        return "${image "..Rep.."/RoseNuit"..j..".png -p "..p.." -s "..s.." -f "..f.."}"
    else
        return Rep.."/RoseNuit"..j..".png"
    end
end

function conky_Images_Nuit_RoseR(p, s, f, j, o)
    j = tonumber(j)

    if init_rose_raf[j].Nuit == nil then
        Rose(conditionNuit[j].VentDir, conditionNuit[j].VentP, conditionNuit[j].VentRafales, "RoseNuitR"..j, s, o)
        init_rose_raf[j].Nuit = 1
    end
    if Mode ~= "fondecran" then
        return "${image "..Rep.."/RoseNuitR"..j..".png -p "..p.." -s "..s.." -f "..f.."}"
    else
        return Rep.."/RoseNuitR"..j..".png"
    end
end


--Condition Matinée
function conky_Images_Matin_Rose(p, s, f, j, o)
    j = tonumber(j)

    if init_rose[j].Matin == nil then
        Rose(conditionMatin[j].VentDir, conditionMatin[j].VentP, conditionMatin[j].VentForce, "RoseMatin"..j, s, o)
        init_rose[j].Matin = 1
    end
    if Mode ~= "fondecran" then
        return "${image "..Rep.."/RoseMatin"..j..".png -p "..p.." -s "..s.." -f "..f.."}"
    else
        return Rep.."/RoseMatin"..j..".png"
    end
end


--Condition Après midi
function conky_Images_AM_Rose(p, s, f, j, o)
    j = tonumber(j)

    if init_rose[j].AM == nil then
        Rose(conditionAM[j].VentDir, conditionAM[j].VentP, conditionAM[j].VentForce, "RoseAM"..j, s, o)
        init_rose[j].AM = 1
    end
    if Mode ~= "fondecran" then
        return "${image "..Rep.."/RoseAM"..j..".png -p "..p.." -s "..s.." -f "..f.."}"
    else
        return Rep.."/RoseAM"..j..".png"
    end
end


--Condition soirée
function conky_Images_Soiree_Rose(p, s, f, j, o)
    j = tonumber(j)

    if init_rose[j].Soiree == nil then
        Rose(conditionSoiree[j].VentDir, conditionSoiree[j].VentP, conditionSoiree[j].VentForce, "RoseSoiree"..j, s, o)
        init_rose[j].Soiree = 1
    end
    if Mode ~= "fondecran" then
        return "${image "..Rep.."/RoseSoiree"..j..".png -p "..p.." -s "..s.." -f "..f.."}"
    else
        return Rep.."/RoseSoiree"..j..".png"
    end
end

--Condition Nuit
function conky_Images_Noct_Rose(p, s, f, j, o)
    j = tonumber(j)

    if init_rose[j].Noct == nil then
        Rose(conditionNoct[j].VentDir, conditionNoct[j].VentP, conditionNoct[j].VentForce, "RoseNoct"..j, s, o)
        init_rose[j].Noct = 1
    end
    if Mode ~= "fondecran" then
        return "${image "..Rep.."/RoseNoct"..j..".png -p "..p.." -s "..s.." -f "..f.."}"
    else
        return Rep.."/RoseNoct"..j..".png"
    end
end




--Récupération de données
function conky_Images_MAJ(cfg)


    local s = '${lua Meteo_etat_MAJ}'
    local MAJ = conky_parse( s )
    
    if maj1 == nil then
        init(cfg)
        maj1 = "ok"
        MAJHold = MAJ+1
    end

    
    if MAJ ~= MAJHold then

        MAJHold = MAJ
--Récupération dernière condition courante
        local file = assert(io.open(repsauv.."CondCour", "r") )
        local line = file:read()
        local i = 0
        local donee = {}
        for line in file:lines() do
            i = i+1
            donee[i] = line
        end
        local t = {"Icone", "Tempr", "Temp", "Cond", "CondMeteo1", "CondMeteo2", "CondMeteo1se", "CondMeteo2se", "VentDir", "VentPlein", "VentForce", "VentIcone", "Humidite", "PointRosee", "Pression", "Visibilite", "Date", "Ville", "CouvNuage", "Uv", "QPrec", "latitude", "longitude"}
        for i = 1,23 do
            conditioncourante[t[i]] = donee[i]
        end
        time = donee[24]
        io.close(file)
        
--Récupération prévision
        
        for j = 1,jours do
            local file = assert(io.open(repsauv.."prevision"..j, "r"))
            local line = file:read()
            local i = 0
            local donee = {}
            for line in file:lines() do
                i = i+1
                donee[i] = line
            end
            local info = {}
            local t = {"CondMeteo", "CondMeteo1", "CondMeteo2", "CondMeteo1se", "CondMeteo2se", "Temp", "TempRes", "ProbPrec", "VentDir", "VentP", "VentForce", "VentRafales", "Uv", "ProbOrage", "NivPrec", "QPluie", "QNeige", "Icone", "VentIcone", "RafalesIcone", "EVerglas"}
            conditionJour[j] = {}
            for i = 1, 21 do
                info[t[i]] = donee[i]
            end
            conditionJour[j] = info
            local info1 = {}
            t = {"CondMeteo", "CondMeteo1", "CondMeteo2", "CondMeteo1se", "CondMeteo2se", "Temp", "TempRes", "ProbPrec", "VentDir", "VentP", "VentForce", "VentRafales", "ProbOrage", "NivPrec", "QPluie", "QNeige", "Icone", "VentIcone", "RafalesIcone", "EVerglas"}
            conditionNuit[j] = {}
            for i = 22, 41 do
                info1[t[i-21]] = donee[i]
            end
            conditionNuit[j] = info1
            local info2 = {}
            t= {"Jour", "LeverSoleilH", "LeverSoleilM", "CoucherSoleilH", "CoucherSoleilM", "Histo_Max", "Histo_Min"}
            InfoJour[j] = {}
            for i = 42, 48 do
                info2[t[i-41]] = donee[i]
            end
            InfoJour[j] = info2
            io.close(file)
            
            if matin == "oui" then
                local file = assert(io.open(repsauv.."matin"..j, "r"))
                local line = file:read()
                local i = 0
                local donee = {}
                for line in file:lines() do
                    i = i+1
                    donee[i] = line
                end
                local t = {"CondMeteo", "CondMeteo1", "CondMeteo2", "CondMeteo1se", "CondMeteo2se", "TempMax", "TempMin", "TempMaxR", "TempMinR", "ProbPrec", "VentDir", "VentP", "VentForce", "QPluie", "QNeige", "Humidite", "CouvNuage", "PointRosee", "Visibilite", "Icone", "VentIcone"}
                conditionMatin[j] = {}
                local info3 = {}
                for i = 1, 21 do
                    info3[t[i]] = donee[i]
                end
                conditionMatin[j] = info3
                io.close(file)
            end

            if apresmidi == "oui" then
                local file = assert(io.open(repsauv.."ApresMidi"..j, "r"))
                local line = file:read()
                local i = 0
                local donee = {}
                for line in file:lines() do
                    i = i+1
                    donee[i] = line
                end
                local t = {"CondMeteo", "CondMeteo1", "CondMeteo2", "CondMeteo1se", "CondMeteo2se", "TempMax", "TempMin", "TempMaxR", "TempMinR", "ProbPrec", "VentDir", "VentP", "VentForce", "QPluie", "QNeige", "Humidite", "CouvNuage", "PointRosee", "Visibilite", "Icone", "VentIcone"}
                conditionAM[j] = {}
                local info3 = {}
                for i = 1, 21 do
                    info3[t[i]] = donee[i]
                end
                conditionAM[j] = info3
                io.close(file)
            end

            if soiree == "oui" then
                local file = assert(io.open(repsauv.."Soiree"..j, "r"))
                local line = file:read()
                local i = 0
                local donee = {}
                for line in file:lines() do
                    i = i+1
                    donee[i] = line
                end
                local t = {"CondMeteo", "CondMeteo1", "CondMeteo2", "CondMeteo1se", "CondMeteo2se", "TempMax", "TempMin", "TempMaxR", "TempMinR", "ProbPrec", "VentDir", "VentP", "VentForce", "QPluie", "QNeige", "Humidite", "CouvNuage", "PointRosee", "Visibilite", "Icone", "VentIcone"}
                conditionSoiree[j] = {}
                local info3 = {}
                for i = 1, 21 do
                    info3[t[i]] = donee[i]
                end
                conditionSoiree[j] = info3
                io.close(file)
            end

            if nuit == "oui" then
                local file = assert(io.open(repsauv.."Nuit"..j, "r"))
                local line = file:read()
                local i = 0
                local donee = {}
                for line in file:lines() do
                    i = i+1
                    donee[i] = line
                end
                local t = {"CondMeteo", "CondMeteo1", "CondMeteo2", "CondMeteo1se", "CondMeteo2se", "TempMax", "TempMin", "TempMaxR", "TempMinR", "ProbPrec", "VentDir", "VentP", "VentForce", "QPluie", "QNeige", "Humidite", "CouvNuage", "PointRosee", "Visibilite", "Icone", "VentIcone"}
                conditionNoct[j] = {}
                local info3 = {}
                for i = 1, 21 do
                    info3[t[i]] = donee[i]
                end
                conditionNoct[j] = info3
                io.close(file)
            end

        end

        --Récupération lunaison
        local file = assert(io.open(repsauv.."lunaison", "r"))
        local line = file:read()
        local i = 0
        local donee = {}
        for line in file:lines() do
            i = i+1
            donee[i] = line
        end
        ephemerides = donee[1]
        ephemerides1 = donee[2]
        ephemerides2 = donee[3]
        Visibilite = donee[4]
        Phases = donee[5]
        Phases1 = donee[6]
        Phases2 = donee[7]
        Noeud_lunaire = donee[8]
        Apogee = donee[9]
        Perigee = donee[10]
        Distance = donee[11]
        Age = donee[12]
        Lever_LuneHeure = donee[13]
        Lever_LuneMinute = donee[14]
        Coucher_LuneHeure = donee[15]
        Coucher_LuneMinute = donee[16]
        Eclipse_partielle = donee[17]
        Eclipse_total = donee[18]
        io.close(file)
            

        if Barometre.taille ~= nil then Baro() end
        if lunaison.taille ~= nil then lune() end
        fonc_init_rose()
        
        local i = 0
        while i ~= Nb_Thermo do
            i = i+1
            CreaThermometre(i)
        end
        i = 0
        while i ~= Nb_ThermRond do
            i = i+1
            CreaThermometreRond(i)
        end

        if Mode == "fondecran" then
            FondEcran_init()
        end

        collectgarbage()
    end            

    return ""
end



--initialisation paramètres
function init(cfg)

    local home = os.getenv("HOME")
    cfg = string.gsub(cfg, "~", home)
    cfg = string.gsub(cfg, "$HOME", home)

    Nb_Thermo = 0
    Nb_ThermRond = 0
    local Thermo = false
    local ThermRond = false

    local file = assert(io.open(cfg, "rb") )
    local line = file:read()
    for line in file:lines() do
        local pos1 = string.find(line, '#')
        if pos1 ~= nil then
            line = string.sub(line, 1, pos1-1)
        end
        pos1 = string.find(line, '=')
        if string.find(line, 'Therm=') ~= nil then
            Rep_Therm = string.sub(line, pos1+1)
        elseif string.find(line, 'repfonts=') ~= nil then
            repfonts = string.sub(line, pos1+1)
        elseif string.find(line, 'ThermRond=') ~= nil then
            Rep_ThermRond = string.sub(line, pos1+1)
        elseif string.find(line, 'Rose=') ~= nil then
            Rep_Rose = string.sub(line, pos1+1)
        elseif string.find(line, 'palier1=') ~= nil then
            palier1 = string.sub(line, pos1+1)
        elseif string.find(line, 'palier2=') ~= nil then
            palier2 = string.sub(line, pos1+1)
        elseif string.find(line, 'palier3=') ~= nil then
            palier3 = string.sub(line, pos1+1)
        elseif string.find(line, 'palier4=') ~= nil then
            palier4 = string.sub(line, pos1+1)
        elseif string.find(line, 'palier1coulfont=') ~= nil then
            palier1coulfont = string.sub(line, pos1+1)
        elseif string.find(line, 'palier2coulfont=') ~= nil then
            palier2coulfont = string.sub(line, pos1+1)
        elseif string.find(line, 'palier3coulfont=') ~= nil then
            palier3coulfont = string.sub(line, pos1+1)
        elseif string.find(line, 'palier4coulfont=') ~= nil then
            palier4coulfont = string.sub(line, pos1+1)
        elseif string.find(line, 'Lune=') ~= nil then
            Rep_Lune = string.sub(line, pos1+1)
        elseif string.find(line, 'Barometre=') ~= nil then
            Rep_Barometre = string.sub(line, pos1+1)
        elseif string.find(line, 'repmeteo=') ~= nil then
            repmeteo = string.sub(line, pos1+1)
        elseif string.find(line, 'IconesRep=') ~= nil then
            IconesRep = string.sub(line, pos1+1)
        elseif string.find(line, 'Mode=') ~= nil then
            Mode = string.sub(line, pos1+1)
        elseif string.find(line, 'MiseEnPage=') ~= nil then
            mise_en_page = string.sub(line, pos1+1)
            mise_en_page = string.gsub(mise_en_page, "~", home)
            mise_en_page = string.gsub(mise_en_page, "$HOME", home)
        end
        
        --debut thermomètre    mercure    
        if string.find(line, 'Thermometres=') ~= nil then
            Thermo = true
            Nb_Thermo = Nb_Thermo+1
            Thermometre[tonumber(Nb_Thermo)] = {}
        end
        
        if Thermo ~= false then
            if string.find(line, 'base=') ~= nil then
                Thermometre[Nb_Thermo].base = string.sub(line, pos1+1)
            elseif string.find(line, 'mercure=') ~= nil then
                Thermometre[Nb_Thermo].mercure = string.sub(line, pos1+1)
            elseif string.find(line, 'mercure_info=') ~= nil then
                local pos2 = string.find(line, '}')
                if pos2 ~= nil then
                    Thermometre[Nb_Thermo].mercure_info = string.sub(line, pos1+1, pos2-1)
                else
                    Thermometre[Nb_Thermo].mercure_info = string.sub(line, pos1+1)
                end
            elseif string.find(line, 'plot=') ~= nil then
                Thermometre[Nb_Thermo].plot = string.sub(line, pos1+1)
            elseif string.find(line, 'plot_info=') ~= nil then
                local pos2 = string.find(line, '}')
                Thermometre[Nb_Thermo].plot_info = string.sub(line, pos1+1, pos2-1)
            end
    
            pos1 = string.find(line, '}')
            if pos1 ~= nil then
                line = string.sub(line, pos1)
                if string.find(line, ',') == nil then
                    Thermo = false
                else
                    Nb_Thermo = Nb_Thermo+1
                    Thermometre[Nb_Thermo] = {}
                end
            end
        end
        --fin thermomètre

        
    end
    io.close(file)

    
    local fichier_init = conky_parse( "${lua Meteo_fichier_init}" )
    local file = assert(io.open(fichier_init, "rb") )
    local line = file:read()
    for line in file:lines() do
        local pos1 = string.find(line, '#')
        if pos1 ~= nil then
            line = string.sub(line, 1, pos1-1)
        end
        pos1 = string.find(line, '=')
        if string.find(line, 'repsauv=') ~= nil then
            repsauv = string.sub(line, pos1+1)
        elseif string.find(line, 'TempShell=') ~= nil then
            r = string.sub(line, pos1+1)
        elseif string.find(line, 'web=') ~= nil then
            cmd1 = string.sub(line, pos1+1)
        elseif string.find(line, 'periode=') ~= nil then
            jours = string.sub(line, pos1+1)
        elseif string.find(line, 'matinée=') ~= nil then
            matin = string.sub(line, pos1+1)
        elseif string.find(line, 'am=') ~= nil then
            apresmidi = string.sub(line, pos1+1)
        elseif string.find(line, 'soiree=') ~= nil then
            soiree = string.sub(line, pos1+1)
        elseif string.find(line, 'nuit=') ~= nil then
            nuit = string.sub(line, pos1+1)
        elseif string.find(line, 'Therm=') ~= nil then
            Rep_Therm = string.sub(line, pos1+1)
        elseif string.find(line, 'Rose=') ~= nil then
            Rep_Rose = string.sub(line, pos1+1)
        elseif string.find(line, 'Palier=') ~= nil then
            Palier = tonumber(string.sub(line, pos1+1))
        elseif string.find(line, 'update=') ~= nil then
            delais = string.sub(line, pos1+1)
        end
    end
    io.close(file)    
    r = string.gsub(r, "~", home)
    r = string.gsub(r, "$HOME", home)
    repsauv = string.gsub(repsauv, "~", home)
    repsauv = string.gsub(repsauv, "$HOME", home)
    repsauv = repsauv.."/"

--Création répertoire de travail
    l = cmd1:match("/(%d+)")
    if string.find(cmd1, 'forecast') ~= nil then
        pos1 = string.find(cmd1, '/weather')
        cmd = string.sub(cmd1, 0, pos1-1)
    else
        pos1 = string.find(cmd1, '/current')
        cmd = string.sub(cmd1, 0, pos1-1)
    end

    local bar, bar1
    local l1 = string.gsub(cmd, '/'..l, "" )
    local b = 1
    while bar1 == nil do
        b = b+1
        bar1 = string.find(l1, '/', -b)
    end
    l1 = string.sub(l1, bar1+1)
    Rep = r.."/"..l1.."/"..l

    MAJHold = "10"
    
    return ""
end

------------------------------------------------------------- Fond ecran --------------------------------------------------

function FondEcran_init()
print("Mode = "..Mode)
-- etat du script pour verif_fond
os.execute('echo "Maj" >'..Rep..'/statut.txt ')
-- Sauvegarde fond ecran 
os.execute(repmeteo..'/scripts/fond.ori.sh sauvegarde')
-- creation des modules externes
creation_module(mise_en_page)
-- Maj du fond d'écran    
os.execute(repmeteo..'/scripts/mise_en_forme.sh')
end

function conky_extinction()
-- remise en place fond ecran-effacement des balises
os.execute('rm -f '..Rep..'/pidfond && rm -f '..Rep..'/statut.txt && '..repmeteo..'/scripts/fond.ori.sh restauration')    
end


function mise_en_forme(x)
    local pos = string.find(x, "{{")
    local Nb = 0
    local info, pos1
    while pos ~= nil do
        Nb = Nb+1
        if Nb == 1 then
            code = string.sub(x, 0, pos-1)
        else
            code = code..string.sub(x, pos1+2, pos-1)
        end
        pos1 = string.find(x, "}}", pos+2)
        info = string.sub(x, pos+2, pos1-1)
        code = code..Recup_info(info)
        pos = string.find(x, "{{", pos1+2)
    end
    if pos1 ~= nil then
        code = code..string.sub(x, pos1+2)
    else
        code = x
    end

    return code
end


function creation_module(creationmodules)
------------copie et recuperation du fichier  

    local file = io.open(creationmodules)
    local line = file:read()
    local file1 =  io.open(repsauv.."creationmodules.sh", "w+" )
    ------------- mise en place fichier + entête 
    file1:write ("#!/bin/bash \n\n")
    ------------------------------------------------------------------------
        for line in file:lines() do
    ---------------------------------------------------------
            file1:write (mise_en_forme(line), "\n")
    ---------------------------------------------------------
        end
    ------ fermeture et ecriture
    io.close(file1)
    io.close(file)
    ------ execution du fichier bash
    os.execute('chmod +x '..repsauv..'creationmodules.sh && '..repsauv..'creationmodules.sh' )
    --os.execute('chmod +x '..repsauv..'creationmodules.sh')
end
function Recup_info(x)
    local info, pos1, pos
    pos = string.find(x, " ")
    if pos ~= nil then
        info = string.sub(x, 0, pos-1)
        pos1 = string.find(x, " ", pos+1)
    else
        info = x
    end
    if pos ~= nil then
        if pos1 ~= nil then
            arg1 = string.sub(x, pos+1, pos1-1)
            pos = string.find(x, " ", pos1+1)
        else
            arg1 = string.sub(x, pos+1)
        end
        if pos1 ~= nil then
            if pos ~= nil then
                arg2 = string.sub(x, pos1+1, pos-1)
                pos1 = string.find(x, " ", pos+1)
            else
                arg2 = string.sub(x, pos1+1)
            end
            if pos ~= nil then
                if pos1 ~= nil then
                    arg3 = string.sub(x, pos+1, pos1-1)
                    pos = string.find(x, " ", pos1+1)
                else
                    arg3 = string.sub(x, pos+1)
                end
                if pos1 ~= nil then
                    if pos ~= nil then
                        arg4 = string.sub(x, pos1+1, pos-1)
                        pos1 = string.find(x, " ", pos+1)
                    else
                        arg4 = string.sub(x, pos1+1)
                    end
                    if pos ~= nil then
                        if pos1 ~= nil then
                            arg5 = string.sub(x, pos+1, pos1-1)
                            pos = string.find(x, " ", pos1+1)
                        else
                            arg5 = string.sub(x, pos+1)
                        end
                        if pos1 ~= nil then
                            if pos ~= nil then
                                arg6 = string.sub(x, pos1+1, pos-1)
                                pos1 = string.find(x, " ", pos+1)
                            else
                                arg6 = string.sub(x, pos1+1)
                            end
                            if pos ~= nil then
                                if pos1 ~= nil then
                                    arg7 = string.sub(x, pos+1, pos1-1)
                                    pos = string.find(x, " ", pos1+1)
                                else
                                    arg7 = string.sub(x, pos+1)
                                end
                                if pos1 ~= nil then
                                    if pos ~= nil then
                                        arg8 = string.sub(x, pos1+1, pos-1)
                                        pos1 = string.find(x, " ", pos+1)
                                    else
                                        arg8 = string.sub(x, pos1+1)
                                    end
                                    if pos ~= nil then
                                        if pos1 ~= nil then
                                            arg9 = string.sub(x, pos+1, pos1-1)
                                            pos = string.find(x, " ", pos1+1)
                                        else
                                            arg9 = string.sub(x, pos+1)
                                        end
                                        if pos1 ~= nil then
                                            if pos ~= nil then
                                                arg10 = string.sub(x, pos1+1, pos-1)
                                                pos1 = string.find(x, " ", pos+1)
                                            else
                                                arg10 = string.sub(x, pos1+1)
                                            end
                                            if pos ~= nil then
                                                if pos1 ~= nil then
                                                    arg11 = string.sub(x, pos+1, pos1-1)
                                                    pos = string.find(x, " ", pos1+1)
                                                else
                                                    arg11 = string.sub(x, pos+1)
                                                end
                                            end
                                        end
                                    end
                                end
                            end
                        end
                    end
                end
            end
        end
    end
    
        
    if info == "Meteo_TempRes" then
        return conditioncourante.Tempr
    elseif info == "Meteo_TempAct" then
        return conditioncourante.Temp
    elseif info == "Meteo_CondMeteo" then
        return conditioncourante.Cond
    elseif info == "Meteo_CondMeteo1" then
        return conditioncourante.Cond1
    elseif info == "Meteo_CondMeteo2" then
        return conditioncourante.Cond2
    elseif info == "Meteo_CondMeteo1se" then
        return conditioncourante.Cond1se
    elseif info == "Meteo_CondMeteo2se" then
        return conditioncourante.Cond2se
    elseif info == "Meteo_VentDir" then
        return conditioncourante.VentDir
    elseif info == "Meteo_VentDirP" then
        return conditioncourante.VentPlein
    elseif info == "Meteo_VentForce" then
        return conditioncourante.VentForce
    elseif info == "Meteo_Humidite" then
        return conditioncourante.Humidite
    elseif info == "Meteo_Rose" then
        return conditioncourante.PointRosee
    elseif info == "Meteo_Pression" then
        return conditioncourante.Pression
    elseif info == "Meteo_Visibilite" then
        return conditioncourante.Visibilite
    elseif info == "Meteo_CouvNuage" then
        return conditioncourante.CouvNuage
    elseif info == "Meteo_Uv" then
        return conditioncourante.Uv
    elseif info == "Meteo_QPrec" then
        return conditioncourante.QPrec
    elseif info == "Meteo_IconeM" then
        if os.date("%H%M", os.time()) <= InfoJour[1].CoucherSoleilH..InfoJour[1].CoucherSoleilM and os.date("%H%M", os.time()) >= "0"..InfoJour[1].LeverSoleilH..InfoJour[1].LeverSoleilM then
            return arg1.."/jour/"..conditioncourante.Icone..".png"
        else
            return arg1.."/nuit/"..conditioncourante.Icone..".png"
        end
    elseif info == "Meteo_IconeV" then
        return arg1.."/"..conditioncourante.VentIcone
    elseif info == "Meteo_Ville" then
        return conditioncourante.Ville
    elseif info == "Meteo_latitude" then
        return conditioncourante.latitude
    elseif info == "Meteo_longitude" then
        return conditioncourante.longitude
    --prévision journée
    elseif info == "Meteo_Jour_CondMeteo" then
        return conditionJour[tonumber(arg1)].CondMeteo
    elseif info == "Meteo_Jour_CondMeteo1" then
        return conditionJour[tonumber(arg1)].CondMeteo1
    elseif info == "Meteo_Jour_CondMeteo2" then
        return conditionJour[tonumber(arg1)].CondMeteo2
    elseif info == "Meteo_Jour_CondMeteo1se" then
        return conditionJour[tonumber(arg1)].CondMeteo1se
    elseif info == "Meteo_Jour_CondMeteo2se" then
        return conditionJour[tonumber(arg1)].CondMeteo2se
    elseif info == "Meteo_Jour_Temp" then
        return conditionJour[tonumber(arg1)].Temp
    elseif info == "Meteo_Jour_TempRes" then
        return conditionJour[tonumber(arg1)].TempRes
    elseif info == "Meteo_Jour_ProbPrec" then
        return conditionJour[tonumber(arg1)].ProbPrec
    elseif info == "Meteo_Jour_VentDir" then
        return conditionJour[tonumber(arg1)].VentDir
    elseif info == "Meteo_Jour_VentDirP" then
        return conditionJour[tonumber(arg1)].VentP
    elseif info == "Meteo_Jour_VentForce" then
        return conditionJour[tonumber(arg1)].VentForce
    elseif info == "Meteo_Jour_VentRafales" then
        return conditionJour[tonumber(arg1)].VentRafales
    elseif info == "Meteo_Jour_Uv" then
        return conditionJour[tonumber(arg1)].Uv
    elseif info == "Meteo_Jour_ProbOrage" then
        return conditionJour[tonumber(arg1)].ProbOrage
    elseif info == "Meteo_Jour_NivPrec" then
        return conditionJour[tonumber(arg1)].NivPrec
    elseif info == "Meteo_Jour_QPluie" then
        return conditionJour[tonumber(arg1)].QPluie
    elseif info == "Meteo_Jour_QNeige" then
        return conditionJour[tonumber(arg1)].QNeige
    elseif info == "Meteo_Jour_EVerglas" then
        return conditionJour[tonumber(arg1)].EVerglas
    elseif info == "Meteo_Jour_IconeM" then
        return arg1.."/jour/"..conditionJour[tonumber(arg5)].Icone..".png"
    elseif info == "Meteo_Jour_IconeV" then
        return arg1.."/"..conditionJour[tonumber(arg5)].VentIcone
    elseif info == "Meteo_Jour_IconeR" then
        return arg1.."/"..conditionJour[tonumber(arg5)].RafalesIcone
    --prévision Nuit
    elseif info == "Meteo_Nuit_CondMeteo" then
        return conditionNuit[tonumber(arg1)].CondMeteo
    elseif info == "Meteo_Nuit_CondMeteo1" then
        return conditionNuit[tonumber(arg1)].CondMeteo1
    elseif info == "Meteo_Nuit_CondMeteo2" then
        return conditionNuit[tonumber(arg1)].CondMeteo2
    elseif info == "Meteo_Nuit_CondMeteo1se" then
        return conditionNuit[tonumber(arg1)].CondMeteo1se
    elseif info == "Meteo_Nuit_CondMeteo2se" then
        return conditionNuit[tonumber(arg1)].CondMeteo2se
    elseif info == "Meteo_Nuit_Temp" then
        return conditionNuit[tonumber(arg1)].Temp
    elseif info == "Meteo_Nuit_TempRes" then
        return conditionNuit[tonumber(arg1)].TempRes
    elseif info == "Meteo_Nuit_ProbPrec" then
        return conditionNuit[tonumber(arg1)].ProbPrec
    elseif info == "Meteo_Nuit_VentDir" then
        return conditionNuit[tonumber(arg1)].VentDir
    elseif info == "Meteo_Nuit_VentDirP" then
        return conditionNuit[tonumber(arg1)].VentP
    elseif info == "Meteo_Nuit_VentForce" then
        return conditionNuit[tonumber(arg1)].VentForce
    elseif info == "Meteo_Nuit_VentRafales" then
        return conditionNuit[tonumber(arg1)].VentRafales
    elseif info == "Meteo_Nuit_Uv" then
        return conditionNuit[tonumber(arg1)].Uv
    elseif info == "Meteo_Nuit_ProbOrage" then
        return conditionNuit[tonumber(arg1)].ProbOrage
    elseif info == "Meteo_Nuit_NivPrec" then
        return conditionNuit[tonumber(arg1)].NivPrec
    elseif info == "Meteo_Nuit_QPluie" then
        return conditionNuit[tonumber(arg1)].QPluie
    elseif info == "Meteo_Nuit_QNeige" then
        return conditionNuit[tonumber(arg1)].QNeige
    elseif info == "Meteo_Nuit_EVerglas" then
        return conditionNuit[tonumber(arg1)].EVerglas
    elseif info == "Meteo_Nuit_IconeM" then
        return arg1.."/nuit/"..conditionNuit[tonumber(arg5)].Icone..".png"
    elseif info == "Meteo_Nuit_IconeV" then
        return arg1.."/"..conditionNuit[tonumber(arg5)].VentIcone
    elseif info == "Meteo_Nuit_IconeR" then
        return arg1.."/"..conditionNuit[tonumber(arg5)].RafalesIcone
    ----Prévision quart de journée
    --Matin
    elseif info == "Meteo_Matin_CondMeteo " then
        return conditionMatin[tonumber(arg1)].CondMeteo
    elseif info == "Meteo_Matin_CondMeteo1" then
        return conditionMatin[tonumber(arg1)].CondMeteo1
    elseif info == "Meteo_Matin_CondMeteo2" then
        return conditionMatin[tonumber(arg1)].CondMeteo2
    elseif info == "Meteo_Matin_CondMeteo1se" then
        return conditionMatin[tonumber(arg1)].CondMeteo1se
    elseif info == "Meteo_Matin_CondMeteo2se" then
        return conditionMatin[tonumber(arg1)].CondMeteo2se
    elseif info == "Meteo_Matin_TempMax" then
        return conditionMatin[tonumber(arg1)].TempMax
    elseif info == "Meteo_Matin_TempMin" then
        return conditionMatin[tonumber(arg1)].TempMin
    elseif info == "Meteo_Matin_TempMaxRes" then
        return conditionMatin[tonumber(arg1)].TempMaxR
    elseif info == "Meteo_Matin_TempMinRes" then
        return conditionMatin[tonumber(arg1)].TempMinR
    elseif info == "Meteo_Matin_ProbPrec" then
        return conditionMatin[tonumber(arg1)].ProbPrec
    elseif info == "Meteo_Matin_VentDir" then
        return conditionMatin[tonumber(arg1)].VentDir
    elseif info == "Meteo_Matin_VentP" then
        return conditionMatin[tonumber(arg1)].VentP
    elseif info == "Meteo_Matin_VentForce" then
        return conditionMatin[tonumber(arg1)].VentForce
    elseif info == "Meteo_Matin_QPluie" then
        return conditionMatin[tonumber(arg1)].QPluie
    elseif info == "Meteo_Matin_QNeige" then
        return conditionMatin[tonumber(arg1)].QNeige
    elseif info == "Meteo_Matin_Humidite" then
        return conditionMatin[tonumber(arg1)].Humidite
    elseif info == "Meteo_Matin_CouvNuage" then
        return conditionMatin[tonumber(arg1)].CouvNuage
    elseif info == "Meteo_Matin_Rose" then
        return conditionMatin[tonumber(arg1)].PointRosee
    elseif info == "Meteo_Matin_Visibilite" then
        return conditionMatin[tonumber(arg1)].Visibilite
    elseif info == "Meteo_Matin_IconeM" then
        return arg1.."/jour/"..conditionMatin[tonumber(arg5)].Icone..".png"
    elseif info == "Meteo_Matin_IconeV" then
        return arg1.."/"..conditionMatin[tonumber(arg5)].VentIcone
    --Après midi
    elseif info == "Meteo_AM_CondMeteo " then
        return conditionAM[tonumber(arg1)].CondMeteo
    elseif info == "Meteo_AM_CondMeteo1" then
        return conditionAM[tonumber(arg1)].CondMeteo1
    elseif info == "Meteo_AM_CondMeteo2" then
        return conditionAM[tonumber(arg1)].CondMeteo2
    elseif info == "Meteo_AM_CondMeteo1se" then
        return conditionAM[tonumber(arg1)].CondMeteo1se
    elseif info == "Meteo_AM_CondMeteo2se" then
        return conditionAM[tonumber(arg1)].CondMeteo2se
    elseif info == "Meteo_AM_TempMax" then
        return conditionAM[tonumber(arg1)].TempMax
    elseif info == "Meteo_AM_TempMin" then
        return conditionAM[tonumber(arg1)].TempMin
    elseif info == "Meteo_AM_TempMaxRes" then
        return conditionAM[tonumber(arg1)].TempMaxR
    elseif info == "Meteo_AM_TempMinRes" then
        return conditionAM[tonumber(arg1)].TempMinR
    elseif info == "Meteo_AM_ProbPrec" then
        return conditionAM[tonumber(arg1)].ProbPrec
    elseif info == "Meteo_AM_VentDir" then
        return conditionAM[tonumber(arg1)].VentDir
    elseif info == "Meteo_AM_VentP" then
        return conditionAM[tonumber(arg1)].VentP
    elseif info == "Meteo_AM_VentForce" then
        return conditionAM[tonumber(arg1)].VentForce
    elseif info == "Meteo_AM_QPluie" then
        return conditionAM[tonumber(arg1)].QPluie
    elseif info == "Meteo_AM_QNeige" then
        return conditionAM[tonumber(arg1)].QNeige
    elseif info == "Meteo_AM_Humidite" then
        return conditionAM[tonumber(arg1)].Humidite
    elseif info == "Meteo_AM_CouvNuage" then
        return conditionAM[tonumber(arg1)].CouvNuage
    elseif info == "Meteo_AM_Rose" then
        return conditionAM[tonumber(arg1)].PointRosee
    elseif info == "Meteo_AM_Visibilite" then
        return conditionAM[tonumber(arg1)].Visibilite
    elseif info == "Meteo_AM_IconeM" then
        return arg1.."/jour/"..conditionAM[tonumber(arg5)].Icone..".png"
    elseif info == "Meteo_AM_IconeV" then
        return arg1.."/"..conditionAM[tonumber(arg5)].VentIcone
    --Soirée
    elseif info == "Meteo_Soiree_CondMeteo " then
        return conditionSoiree[tonumber(arg1)].CondMeteo
    elseif info == "Meteo_Soiree_CondMeteo1" then
        return conditionSoiree[tonumber(arg1)].CondMeteo1
    elseif info == "Meteo_Soiree_CondMeteo2" then
        return conditionSoiree[tonumber(arg1)].CondMeteo2
    elseif info == "Meteo_Soiree_CondMeteo1se" then
        return conditionSoiree[tonumber(arg1)].CondMeteo1se
    elseif info == "Meteo_Soiree_CondMeteo2se" then
        return conditionSoiree[tonumber(arg1)].CondMeteo2se
    elseif info == "Meteo_Soiree_TempMax" then
        return conditionSoiree[tonumber(arg1)].TempMax
    elseif info == "Meteo_Soiree_TempMin" then
        return conditionSoiree[tonumber(arg1)].TempMin
    elseif info == "Meteo_Soiree_TempMaxRes" then
        return conditionSoiree[tonumber(arg1)].TempMaxR
    elseif info == "Meteo_Soiree_TempMinRes" then
        return conditionSoiree[tonumber(arg1)].TempMinR
    elseif info == "Meteo_Soiree_ProbPrec" then
        return conditionSoiree[tonumber(arg1)].ProbPrec
    elseif info == "Meteo_Soiree_VentDir" then
        return conditionSoiree[tonumber(arg1)].VentDir
    elseif info == "Meteo_Soiree_VentP" then
        return conditionSoiree[tonumber(arg1)].VentP
    elseif info == "Meteo_Soiree_VentForce" then
        return conditionSoiree[tonumber(arg1)].VentForce
    elseif info == "Meteo_Soiree_QPluie" then
        return conditionSoiree[tonumber(arg1)].QPluie
    elseif info == "Meteo_Soiree_QNeige" then
        return conditionSoiree[tonumber(arg1)].QNeige
    elseif info == "Meteo_Soiree_Humidite" then
        return conditionSoiree[tonumber(arg1)].Humidite
    elseif info == "Meteo_Soiree_CouvNuage" then
        return conditionSoiree[tonumber(arg1)].CouvNuage
    elseif info == "Meteo_Soiree_Rose" then
        return conditionSoiree[tonumber(arg1)].PointRosee
    elseif info == "Meteo_Soiree_Visibilite" then
        return conditionSoiree[tonumber(arg1)].Visibilite
    elseif info == "Meteo_Soiree_IconeM" then
        return arg1.."/nuit/"..conditionSoiree[tonumber(arg5)].Icone..".png"
    elseif info == "Meteo_Soiree_IconeV" then
        return arg1.."/"..conditionSoiree[tonumber(arg5)].VentIcone
    --nuit
    elseif info == "Meteo_Noct_CondMeteo " then
        return conditionNoct[tonumber(arg1)].CondMeteo
    elseif info == "Meteo_Noct_CondMeteo1" then
        return conditionNoct[tonumber(arg1)].CondMeteo1
    elseif info == "Meteo_Noct_CondMeteo2" then
        return conditionNoct[tonumber(arg1)].CondMeteo2
    elseif info == "Meteo_Noct_CondMeteo1se" then
        return conditionNoct[tonumber(arg1)].CondMeteo1se
    elseif info == "Meteo_Noct_CondMeteo2se" then
        return conditionNoct[tonumber(arg1)].CondMeteo2se
    elseif info == "Meteo_Noct_TempMax" then
        return conditionNoct[tonumber(arg1)].TempMax
    elseif info == "Meteo_Noct_TempMin" then
        return conditionNoct[tonumber(arg1)].TempMin
    elseif info == "Meteo_Noct_TempMaxRes" then
        return conditionNoct[tonumber(arg1)].TempMaxR
    elseif info == "Meteo_Noct_TempMinRes" then
        return conditionNoct[tonumber(arg1)].TempMinR
    elseif info == "Meteo_Noct_ProbPrec" then
        return conditionNoct[tonumber(arg1)].ProbPrec
    elseif info == "Meteo_Noct_VentDir" then
        return conditionNoct[tonumber(arg1)].VentDir
    elseif info == "Meteo_Noct_VentP" then
        return conditionNoct[tonumber(arg1)].VentP
    elseif info == "Meteo_Noct_VentForce" then
        return conditionNoct[tonumber(arg1)].VentForce
    elseif info == "Meteo_Noct_QPluie" then
        return conditionNoct[tonumber(arg1)].QPluie
    elseif info == "Meteo_Noct_QNeige" then
        return conditionNoct[tonumber(arg1)].QNeige
    elseif info == "Meteo_Noct_Humidite" then
        return conditionNoct[tonumber(arg1)].Humidite
    elseif info == "Meteo_Noct_CouvNuage" then
        return conditionNoct[tonumber(arg1)].CouvNuage
    elseif info == "Meteo_Noct_Rose" then
        return conditionNoct[tonumber(arg1)].PointRosee
    elseif info == "Meteo_Noct_Visibilite" then
        return conditionNoct[tonumber(arg1)].Visibilite
    elseif info == "Meteo_Noct_IconeM" then
        return arg1.."/nuit/"..conditionNoct[tonumber(arg5)].Icone..".png"
    elseif info == "Meteo_Noct_IconeV" then
        return arg1.."/"..conditionNoct[tonumber(arg5)].VentIcone
    --lunaison
    elseif info == "Lune_ephemerides" then
        return ephemerides
    elseif info == "Lune_ephemerides1" then
        return ephemerides1
    elseif info == "Lune_ephemerides2" then
        return ephemerides2
    elseif info == "Lune_Visibilite" then
        return Visibilite
    elseif info == "Lune_Phases" then
        return Phases
    elseif info == "Lune_Phases1" then
        return Phases1
    elseif info == "Lune_Phases2" then
        return Phases2
    elseif info == "Lune_Noeudlunaire" then
        return Noeud_lunaire
    elseif info == "Lune_Apogee" then
        return Apogee
    elseif info == "Lune_Perigee" then
        return Perigee
    elseif info == "Lune_Distance" then
        return Distance
    elseif info == "Lune_Age" then
        return Age
    elseif info == "Lune_HLeverLune" then
        return Lever_LuneHeure
    elseif info == "Lune_MLeverLune" then
        return Lever_LuneMinute
    elseif info == "Lune_HCoucherLune" then
        return Coucher_LuneHeure
    elseif info == "Lune_MCoucherLune" then
        return Coucher_LuneMinute
    elseif info == "Lune_EclipsePartielle" then
        return Eclipse_partielle
    elseif info == "Lune_EclipseTotal" then
        return Eclipse_total
    elseif info == "Images_Barometre" then
        return conky_Images_Barometre(arg1, arg2, arg3, arg4)
    elseif info == "Images_Lunaison" then
        return conky_Images_Lunaison(arg1, arg2, arg3, arg4)
    elseif info == "Images_Thermo" then
        return conky_Images_Thermo(arg1, arg2, arg3, arg4, arg5)
    elseif info == "Images_ThermoRond" then
        return conky_Images_ThermoRond(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11)
    elseif info == "Images_Rose" then
        return conky_Images_Rose(arg1, arg2, arg3, arg4)
    elseif info == "Images_Jour_Rose" then
        return conky_Images_Jour_Rose(arg1, arg2, arg3, arg4, arg5)
    elseif info == "Images_Jour_RoseR" then
        return conky_Images_Jour_RoseR(arg1, arg2, arg3, arg4, arg5)
    elseif info == "Images_Nuit_Rose" then
        return conky_Images_Nuit_Rose(arg1, arg2, arg3, arg4, arg5)
    elseif info == "Images_Nuit_RoseR" then
        return conky_Images_Nuit_RoseR(arg1, arg2, arg3, arg4, arg5)
    elseif info == "Images_Matin_Rose" then
        return conky_Images_Matin_Rose(arg1, arg2, arg3, arg4, arg5)
    elseif info == "Images_AM_Rose" then
        return conky_Images_AM_Rose(arg1, arg2, arg3, arg4, arg5)
    elseif info == "Images_Soiree_Rose" then
        return conky_Images_Soiree_Rose(arg1, arg2, arg3, arg4, arg5)
    elseif info == "Images_Noct_Rose" then
        return conky_Images_Noct_Rose(arg1, arg2, arg3, arg4, arg5)
    else
        return conky_parse( "${lua "..x.."}" )
    end
end

creation modules :

#  exemple de creation de module pour image-Meteo-Lua
# important ceci n'est pas un fichier bash vous devez le créer en simple fichier sans extension c'est image-Meteo-Lua
# qui vous créera le fichier bash et le lancera, pour vous créer l'image dans le rep temp de votre ville
########################################################################
# Modifiez si besoin est les références à vos répertoires 
path=~/conky_Fond/Meteo-Lua

#-----------------------------------------------------

source   $path/configs/images_meteo.cfg 2>/dev/null
source   $path/configs/meteo.cfg 2>/dev/null
rep=`echo $web | cut -d / -f6-7`
repertimages=$TempShell/$rep
fondbase=$repsauv/fond-base.png
fondtravail=$repsauv/fond-travaille.png
imagetemp=$repertimages/$temp.png
nomdufichier="Données"
#-------------------------------------------------------

#Cartouche      ---------------------------------------------------------
convert -resize 36% $IconesRep/Themes/JPDipsy/Metal/Cartouches/cartouche.png $repertimages/$nomdufichier.png
#ville
#convert -resize 36% $IconesRep/Themes/JPDipsy/Divers/ville.png  $imagetemp
#composite -compose Over -gravity North -geometry +0+20  $imagetemp $repertimages/$nomdufichier.png $repertimages/$nomdufichier.png
fonte=Ubuntu-Bold

convert $repertimages/$nomdufichier.png -background transparent \
-gravity Northwest -font $fonte -pointsize  10 -fill yellow -annotate +20+4 "{{Meteo_latitude}}°N" \
-annotate +240+4 "{{Meteo_longitude}}°E" \
-gravity North -font Lobster-1.4-Regular -pointsize  36 -fill grey24 -annotate +0+5 "{{Meteo_Ville}}" \
-gravity North -font Lobster-1.4-Regular -pointsize  36 -fill yellow -annotate +1+4 "{{Meteo_Ville}}" \
-gravity North -font $fonte -pointsize  13 -fill grey24 -annotate -1+46 "{{Meteo_CondMeteo}}" \
-gravity North -font $fonte -pointsize  13 -fill goldenrod1 -annotate +0+45 "{{Meteo_CondMeteo}}" \
-gravity Northwest -font $fonte -pointsize  10 -fill black -annotate +78+63 "Couverture Nuageuse : " \
-font $fonte -pointsize  10 -fill blue -annotate +200+63 "{{Meteo_CouvNuage}} %" \
-font $fonte -pointsize  10 -fill black -annotate +58+75 "Proba. Pluie : " \
-annotate +170+75 "Qté (1H) : " \
-font $fonte -pointsize  10 -fill blue -annotate +125+75 "{{Meteo_Jour_ProbPrec 1}} %" \
-annotate +220+75 "{{Meteo_QPrec}} mm" \
-font $fonte -pointsize  10 -fill black -annotate +58+87 "Visibilité : " \
-annotate +170+87 "Indice UV : " \
-font $fonte -pointsize  10 -fill blue -annotate +115+87 "{{Meteo_Visibilite}} km" \
-annotate +225+87 "{{Meteo_Uv}} /11" \
-font $fonte -pointsize  10 -fill black -annotate +78+99 "Rafales de vent : " \
-font $fonte -pointsize  10 -fill blue -annotate +165+99 "{{Meteo_Jour_VentRafales 1}} km/h - "{{Meteo_Jour_VentDirP 1}} \
-gravity North -font $fonte -pointsize  14 -fill yellow -annotate +0+114 "Soirée" \
-gravity Northwest -font $fonte -pointsize  10 -fill white -annotate +58+130 "Proba. Pluie : " \
-annotate +170+130 "Qté (1H) : " \
-font $fonte -pointsize  10 -fill grey20 -annotate +125+130 "{{Meteo_Soiree_ProbPrec 1}} %" \
-annotate +220+130 "{{Meteo_Nuit_NivPrec 1}} mm" \
-font $fonte -pointsize  10 -fill white -annotate +80+142 "Vent" \
-annotate +190+142 "Rafales" \
-font $fonte -pointsize  10 -fill grey20 -annotate +60+154 "{{Meteo_Soiree_VentForce 1}} Km/h - "{{Meteo_Soiree_VentP 1}} \
-annotate +190+154 "{{Meteo_Nuit_VentRafales 1}} Km/h" \
-gravity Center  -font $fonte -pointsize  14 -fill lightgreen -annotate +0+57 "Maxi/Mini du jour (2011)" \
-gravity Northwest -font $fonte -pointsize  13 -fill black -annotate +80+182 "{{Meteo_Jour_Temp 1}}°" \
-gravity Northwest -font $fonte -pointsize  12 -fill white -annotate +102+182 "/" \
-annotate +192+182 "/" \
-gravity Northwest -font $fonte -pointsize  13 -fill black -annotate +110+182 "{{Meteo_Nuit_Temp 1}}°" \
-gravity Northwest -font $fonte -pointsize  13 -fill lightblue -annotate +165+182 "({{Meteo_Histo_Max 1}}°" \
-gravity Northwest -font $fonte -pointsize  13 -fill lightblue -annotate +200+182 "{{Meteo_Histo_Min 1}}°)" \
-gravity Northwest -font $fonte -pointsize  10 -fill white -annotate +40+200 "Lever Soleil : {{Meteo_HLeverSoleil 1}}h{{Meteo_MLeverSoleil 1}}" \
-annotate +166+200 "Coucher Soleil : {{Meteo_HCoucherSoleil 1}}h{{Meteo_MCoucherSoleil 1}}" \
-gravity North -fill blue -annotate -18+217 "Mise à jour à :                       Version météo.lua : " \
-gravity Northwest -fill White -annotate +103+217 "{{Meteo_Heure}}h{{Meteo_Minute}}" \
-annotate +250+217 "{{Version}}" $repertimages/$nomdufichier.png
#----------------------------------------------------------------------------------------

# cartouche des prévisions --------------------------------------------------------------
#affichage jour
j1=`date  --date '1 day' +%a`
j2=`date  --date '2 day' +%a`
j3=`date  --date '3 day' +%a`
j4=`date  --date '4 day' +%a`
j5=`date  --date '5 day' +%a`

cp $IconesRep/Themes/JPDipsy/Metal/Cartouches/vide.png $repertimages/CartPrev.png

convert $repertimages/CartPrev.png -background transparent -gravity North -font $fonte -pointsize  18 -fill yellow \
-annotate -186+50 $j1 -annotate -93+40 $j2  -annotate +0+30 $j3 -annotate +93+40 $j4 -annotate +186+50 $j5 \
-gravity North -font $fonte -pointsize  10  -fill red -annotate -186+152 "{{Meteo_Jour_ProbPrec 2}}%" \
-annotate -186+162 "{{Meteo_Nuit_ProbPrec 2}}%" \
-annotate -93+142 "{{Meteo_Jour_ProbPrec 3}}%" \
-annotate -93+152 "{{Meteo_Nuit_ProbPrec 3}}%" \
-annotate +0+132 "{{Meteo_Jour_ProbPrec 4}}%" \
-annotate +0+142 "{{Meteo_Nuit_ProbPrec 4}}%" \
-annotate +93+142 "{{Meteo_Jour_ProbPrec 5}}%" \
-annotate +93+152 "{{Meteo_Nuit_ProbPrec 5}}%" \
-annotate +186+152 "{{Meteo_Jour_ProbPrec 6}}%" \
-annotate +186+162 "{{Meteo_Nuit_ProbPrec 6}}%" \
-font $fonte -pointsize  16 -fill blue -annotate -186+130 "{{Meteo_Jour_Temp 2}}°/{{Meteo_Nuit_Temp 2}}°" -annotate -93+120 "{{Meteo_Jour_Temp 3}}°/{{Meteo_Nuit_Temp 3}}°" -annotate +0+110 "{{Meteo_Jour_Temp 4}}°/{{Meteo_Nuit_Temp 4}}°" -annotate +93+120 "{{Meteo_Jour_Temp 5}}°/{{Meteo_Nuit_Temp 5}}°" -annotate +186+130 "{{Meteo_Jour_Temp 6}}°/{{Meteo_Nuit_Temp 6}}°" \
$repertimages/CartPrev.png

#Affichage Visibilité Lune
convert /tmp/lune.png -background transparent -gravity North -font $fonte -pointsize  13 -fill blue -annotate +0+70 "Visible : {{Lune_Visibilite}} %" \
$repertimages /tmp/lune.png 

#affich condition
#jour 1
convert -background transparent -gravity North {{Meteo_Jour_IconeM $IconesRep 0,0 0x0 60 2}} -resize 36% $imagetemp
convert $imagetemp -alpha on \( +clone -flip -channel A -evaluate multiply .35 +channel   \) -append $repertimages/CartPrev.png +swap -gravity North -geometry -186+80 -composite $repertimages/CartPrev.png
#jour 2
convert -background transparent -gravity North {{Meteo_Jour_IconeM $IconesRep 0,0 0x0 60 3}}  -resize 36% $imagetemp
convert $imagetemp -alpha on \( +clone -flip -channel A -evaluate multiply .35 +channel   \) -append $repertimages/CartPrev.png +swap -gravity North -geometry -93+70 -composite $repertimages/CartPrev.png
#jour 3
convert -background transparent -gravity North {{Meteo_Jour_IconeM $IconesRep 0,0 0x0 60 4}} -resize 36% $imagetemp
convert $imagetemp -alpha on \( +clone -flip -channel A -evaluate multiply .35 +channel   \) -append $repertimages/CartPrev.png +swap -gravity North -geometry +0+60 -composite $repertimages/CartPrev.png
#jour 4
convert -background transparent -gravity North {{Meteo_Jour_IconeM $IconesRep 0,0 0x0 60 5}}  -resize 36% $imagetemp
convert $imagetemp -alpha on \( +clone -flip -channel A -evaluate multiply .35 +channel   \) -append $repertimages/CartPrev.png +swap -gravity North -geometry +93+70 -composite $repertimages/CartPrev.png
#jour 5
convert -background transparent -gravity North {{Meteo_Jour_IconeM $IconesRep 0,0 0x0 60 6}}  -resize 36% $imagetemp
convert $imagetemp -alpha on \( +clone -flip -channel A -evaluate multiply .35 +channel   \) -append $repertimages/CartPrev.png +swap -gravity North -geometry +186+80 -composite $repertimages/CartPrev.png


# pour jouer sur la transparence de l'icone réfléchie modifier la valeur de "multiply .35"
#----------------------------------------------------------------------------------------

# Creation des modules prédéfinis -------------------------------------------------------
# creation barometre
# "{{Images_Barometre 0,0 234x234 60 100}}" laissez le commentaire du début sinon bash essaierea d'interpreter
# integr icone cond courante
convert -background transparent  {{Meteo_IconeM $IconesRep 0,0 0x0 60}}  -resize 50% $imagetemp
composite -compose Over -gravity Center -geometry +0+60 $imagetemp $repertimages/Barometre.png $repertimages/Barometre.png

# creation lune
# "{{Images_Lunaison 0,0 169x169 60 100}}" laissez le commentaire du début sinon bash essaierea d'interpreter

# creation rose
# "{{Images_Rose 0,0 169x169 60 100}}"
#"{{Meteo_Jour %a_%d 2}${exec  mv ~/conky_Fond/Meteo-Lua/icones/Themes/JPDipsy/Metal/Rose-des-vents ~/conky_Fond/Meteo-Lua/icones/Themes/JPDipsy/Metal/Rose-des-vents-bak}${exec  mv ~/conky_Fond/Meteo-Lua/icones/Themes/JPDipsy/Metal/Rose-des-vents2 ~/conky_Fond/Meteo-Lua/icones/Themes/JPDipsy/Metal/Rose-des-vents}}"
# creation rose avec autre theme
# "{{Images_Jour_RoseR 0,0 112x112 60 1 100}}"
#"{{Meteo_Jour %a_%d 2}${exec  mv ~/conky_Fond/Meteo-Lua/icones/Themes/JPDipsy/Metal/Rose-des-vents ~/conky_Fond/Meteo-Lua/icones/Themes/JPDipsy/Metal/Rose-des-vents2}${exec  mv ~/conky_Fond/Meteo-Lua/icones/Themes/JPDipsy/Metal/Rose-des-vents-bak ~/conky_Fond/Meteo-Lua/icones/Themes/JPDipsy/Metal/Rose-des-vents}}"

# creation thermorond
# "{{Images_ThermoRond 0,0 234x234 60 1 100 -a=TempAct -v=TempRes -b=Nuit_Temp-1 -r=Jour_Temp-1}}" laissez le commentaire du début sinon bash essaierea d'interpreter
# integr humid -> thermo
convert  $repertimages/Thermorond1.png -background transparent \
-gravity Center -font $fonte -pointsize  16  -fill grey24 -annotate -44+1 "Min." \
-gravity Center -font $fonte -pointsize  16  -fill blue -annotate -45+0 "Min." \
-gravity Center -font $fonte -pointsize  16  -fill grey40 -annotate +46+1 "Max." \
-gravity Center -font $fonte -pointsize  16  -fill red -annotate +45+0 "Max." \
-gravity Center -font $fonte -pointsize  16  -fill green -annotate +0+27 "Res." \
-gravity Center -font $fonte -pointsize  14 -fill Blue -annotate +0+45 "Humidité : {{Meteo_Humidite}}%" $repertimages/Thermorond1.png

# creation rose rafales
 # "{{Images_Jour_RoseR 0,0 112x112 60 1 100}}" laissez le commentaire du début sinon bash essaierea d'interpreter
convert  -background transparent -font $fonte -pointsize 12 -fill Black label:'Rafales' -rotate 180 -distort Arc '100 180' $repertimages/rafales.png
composite -compose Over -gravity Center -geometry +0+30 $repertimages/rafales.png $repertimages/RoseJourR1.png $repertimages/RoseJourR1.png

Fond ori.sh : C'est là où se cache le fluxbox qui me retourne le message d'erreur

#!/bin/bash


path=`dirname $0`

source   $path/../configs/images_meteo.cfg 2>/dev/null
source   $path/../configs/meteo.cfg 2>/dev/null

rep=`echo $web | cut -d / -f6-7`

if [ -e  $TempShell/$rep/pidfond ]; then
 exit
fi 


if [[ `ps aux | grep -e "[g]nome-settings-daemon" ` ]]; then
    # gnome version
    gnomeversion=`gnome-session --version | cut -c15-15`
    environnement="gnome"
elif [[ `ps aux | grep -e "fluxbox" ` ]]; then
    environnement="fluxbox"
fi



case $environnement in
gnome)
    if [ $gnomeversion = 2 ]; then
        fondactuel=`gconftool -g  /desktop/gnome/background/picture_filename `
    else
        fondactuel=`gsettings get org.gnome.desktop.background picture-uri | sed s/.$// | cut -c9- `    
    fi
    
    ### tout premier lancement            
    if  [ ! -e $path/fondori ]; then
        # sauvegarde
        if [ $1 = "sauvegarde" ];then
              if [ $gnomeversion = 2 ]; then
                    gconftool -g  /desktop/gnome/background/picture_filename $ path >$path/fondori
              else
                gsettings get org.gnome.desktop.background picture-uri >$path/fondori
              fi
        cp -f $fondactuel $repsauv/fond-base.png  
        cp -f $fondactuel $repsauv/fond-original.png  
        cp -f $fondactuel $repsauv/fond-travaille.png
        touch $TempShell/$rep/pidfond
        exit
        fi
    fi

    #restauration
    fondori=`cat $path/fondori`

    if [ $gnomeversion = 2 ]; then
        gconftool -s -t string /desktop/gnome/background/picture_filename $fondori
    else
        gsettings set org.gnome.desktop.background picture-uri $fondori
    fi
    touch $TempShell/$rep/pidfond            
    exit
;;
fluxbox)
echo $environnement
cat ~/.fluxbox/lastwallpaper | cut -d \| -f2
;;
esac
# ----------------------------------------------------------------------------------------------------------

+ les divers petits fichiers : integration, mise en forme, verif fond.sh

Et donc, maintenant ???
Si il existe une possibilité toute simple de récupérer mon fichier creation modules pour l'intégrer facilement dans ton nouveau package de scripts, je suis preneur également. Car cela m'a pris pas mal de temps pour réussir à arriver à faire ce que je voulais (2 roses des vents différentes, intégration de la lune...)
Le Petit Gourou remercie d'avance le Grand Gourou de bien vouloir plonger ses yeux dans ces lignes de script pour retrouver mon bureau tout comme avant  big_smile

Dernière modification par Phyllinux (Le 25/06/2012, à 16:38)


The ship is sinking normally...

Hors ligne

#1043 Le 25/06/2012, à 17:13

jpdipsy

Re : [Conky] Alternative à weather.com (2)

Phyllinux a écrit :

Si il existe une possibilité toute simple de récupérer mon fichier creation modules pour l'intégrer facilement dans ton nouveau package de scripts, je suis preneur également.

C'est pour çà que je te demande juste  tes scripts "creation modules" et "mise_en_forme"que je te montre comment faire  n'essaie pas de les faire fonctionner tel quel avec la nouvelle version de images-meteo il n'utilise plus que 2 scripts fond-gestion.sh (en place de fond.ori) et verif-fond.sh  j'ai fait pas mal de corrections de bugs par rapport à la v1.

PS rien n'est perdu jusqu'à que tu l'efface !

Hors ligne

#1044 Le 25/06/2012, à 17:21

Phyllinux

Re : [Conky] Alternative à weather.com (2)

Creation modules, je l'ai déjà mis sur le post précédent
mise en forme, le voilà :

#!/bin/bash
# Les données à éditer sont au minimum :
# -resize  rester en pourcentage pour le ratio des images
# le choix des images à afficher  
# le positionnement sur l'image ex : +10+40 10 pxl depuis bord gauche , 40 depuis le haut
# -gravity
#coin supérieur gauche (valeur par défaut) - Northwest
#coin supérieur droit - NorthEast
#coin inférieur gauche SouthWest
#coin inférieur droit SouthEast
#milieu du bord supérieur - North
#milieu du coté droit - East
#milieu du bord inférieur - South
#milieu du bord gauche- West
#centre - Center

# le choix des modules

# pour les possibilité de mise en forme quelques liens
#http://doc.ubuntu-fr.org/imagemagick#composite
#http://www.imagemagick.org/script/index.php
#http://www.imagemagick.org/Usage/

# pour le controle au moment de l'édition vous sauvegardez et clicquez sur votre fond original dans le gestionnaire de fond d'écran

path=`dirname $0`

source   $path/../configs/images_meteo.cfg 2>/dev/null
source   $path/../configs/meteo.cfg 2>/dev/null
rep=`echo $web | cut -d / -f6-7`
repertimages=$TempShell/$rep
fondbase=$repsauv/fond-base.png
fondtravail=$repsauv/fond-travaille.png
imagetemp=$TempShell/temp.png

# mise en forme image format écran
convert -resize $ecran! $repsauv/fond-base.png $repsauv/fond-base.png
##################################
# choix des modules à afficher
image1=Thermorond1
image2=Rose
image3=lune
image4=Barometre
image5=RoseJourR1
#################################
############ mise en forme ######

#Les modules tout prets affichables-----------------------------------------------------------------------

# important ---------- cette premiere image à transformer doit toujours etre :  $fondbase $fondtravail
### ------------------------------------------------------------------------------------------------------
#Barometre
composite -compose Over -gravity NorthEast -geometry +360+25  $repertimages/$image4.png  $fondbase $fondtravail

#lune
composite -compose Over -gravity NorthEast -geometry +235+195  $repertimages/$image3.png $fondtravail $fondtravail

#Thermorond1
composite -compose Over -gravity Northwest -geometry +360+25  $repertimages/$image1.png  $fondtravail $fondtravail

#Rose
composite -compose Over -gravity Northwest -geometry +235+195  $repertimages/$image2.png $fondtravail $fondtravail

#RoseR
composite -compose Over -gravity Northwest -geometry +390+300  $repertimages/$image5.png $fondtravail $fondtravail

#------------------------------------------Mise en forme  Cartouches    ---------------------------------------------------
########## integration cartouche données
composite -compose Over -gravity North -geometry +0+28 $repertimages/Données.png  $fondtravail $fondtravail
#---------------------------------------------------------------------------------------------------------------------------
########## integration cartouche prév
composite -compose Over -gravity Center -geometry +0-85 $repertimages/CartPrev.png  $fondtravail $fondtravail
#---------------------------------------------------------------------------------------------------------------------------
########## integration lune
convert -resize 75% /tmp/lune.png fichiertemp.png
composite -compose Over -gravity NorthEast -geometry +390+300 fichiertemp.png  $fondtravail $fondtravail
#---------------------------------------------------------------------------------------------------------------------------

#---------------------------------------------------------------------------------------------------------------------------
# sauvegarde et intégration
$path/integration.sh

Une fois que celui ci tournera correctement, je me pencherai sur les nouveaux scripts, pour essayer d'y intégrer mes modules préférés tongue


The ship is sinking normally...

Hors ligne

#1045 Le 25/06/2012, à 17:43

jpdipsy

Re : [Conky] Alternative à weather.com (2)

enebre a écrit :

- jpdipsy -
je dois avoir déréglé quelque chose, le conky météo ne démarre plus depuis mon bidouillage de la swap.
C'est qu'ils seraient délicats les scripts de chez conky roll

─( enebre ) - ( 3.4.3-030403-generic ) - ( ~ )
└─> 
Conky: desktop window (e00003) is subwindow of root window (282)
Conky: window type - override
Conky: drawing to created window (0x4600001)
Conky: drawing to double buffer
    version = v4.1
    web = http://www.accuweather.com/fr/be/vielsalm/29360/weather-forecast/29360
    Pévision Nb jours = 6
    Pévision Matin = non
    Pévision Après Midi = non
    Pévision Soirée = oui
    Pévision Nuit = oui
    Délais = 900
    Chemin de travail = /tmp/utilisateur-meteo
    Palier = 10
    Chemin de sauvegarde = /home/enebre/conky/Meteo-Lua/sauvegardes/belfort/
    Mode = fondinactif
    creationmodule = creationmodules-fondinactif.sh
sh: 1: /tmp/utilisateur-meteo/vielsalm/29360/creationmodules-fondinactif.sh: Permission denied
Conky: Unable to load image '/tmp/image-meteo-Belfort.png'
    Mode = fondinactif
    creationmodule = creationmodules-fondinactif.sh
sh: 1: /tmp/utilisateur-meteo/vielsalm/29360/creationmodules-fondinactif.sh: Permission denied

A mon avis tu as changé d'utilisateur en copiant tous le bousin de l'un vers l'autre c'est la petite lacune de météo-lua (il faut que j'en discute avec Didier) c'est pour ça que je met la variable TempShell=/tmp/utilisateur-meteo et que je fait creer le rep par

# permet d'utiliser plusieurs utilisateurs  #
if   [ ! -d $TempShell ]; then
mkdir $TempShell
fi
dans le script qui lance le conky.
Le plus simple serait que meteo-lua crée lui-même le rep (Didier on en discute ?)
Pour ce qui t'occupe si tu utilises plusieurs utilisateurs dans chaque meteo.cfg à la variable TempShell=/tmp/     un nom différent par utilisateur
exemples :
/tmp/moi-meteo pour un
/tmp/monpapa-meteo pour l'autre
/tmp/invité-meteo etc ....


si tu es coincé arrête le conky qui lance fondinactif efface le rep /tmp/utilisateur-meteo et relance ça devrait refonctionner

Hors ligne

#1046 Le 25/06/2012, à 20:49

enebre

Re : [Conky] Alternative à weather.com (2)

- jpdipsy -
Merci pour ta réponse, malgré tout j'obtiens encore le même résultat

sh: 1: cd: can't cd to /tmp/utilisateur-meteo/vielsalm/29360
    Mode = fondinactif
    creationmodule = creationmodules-fondinactif.sh
sh: 1: /tmp/utilisateur-meteo/vielsalm/29360/creationmodules-fondinactif.sh: Permission denied
Conky: Unable to load image '/tmp/image-meteo-Belfort.png'

Pourrais-je faire un dossier dans le home à la place de /tmp/xxx-meteo
, pour contourner le problème de droit ?
J'ai essayé le pack Conky Fondecran, mais la aussi j'arrive à rien.
Bon tant pis c'est de ma faute, le dossier /tmp est fu.ké avec ma conn...rie.
C'en est fini pour moi à faire joujou avec les conkys neutral qui utilise /tmp.

Hors ligne

#1047 Le 26/06/2012, à 09:50

jpdipsy

Re : [Conky] Alternative à weather.com (2)

enebre a écrit :

- jpdipsy -
Merci pour ta réponse, malgré tout j'obtiens encore le même résultat

sh: 1: cd: can't cd to /tmp/utilisateur-meteo/vielsalm/29360
    Mode = fondinactif
    creationmodule = creationmodules-fondinactif.sh
sh: 1: /tmp/utilisateur-meteo/vielsalm/29360/creationmodules-fondinactif.sh: Permission denied
Conky: Unable to load image '/tmp/image-meteo-Belfort.png'

Pourrais-je faire un dossier dans le home à la place de /tmp/xxx-meteo
, pour contourner le problème de droit ?
J'ai essayé le pack Conky Fondecran, mais la aussi j'arrive à rien.
Bon tant pis c'est de ma faute, le dossier /tmp est fu.ké avec ma conn...rie.
C'en est fini pour moi à faire joujou avec les conkys neutral qui utilise /tmp.

Hello
On reprend depuis le début.
Le changement de  vm.swappiness=10 n'a pu en rien faire que çà déc.... cela ne sert qu'à déterminer le seuil d'utilisation de la swap.
Pour "accélérer" un peu les choses on utilise tmpfs pour /tmp Ubuntu et Voyager ne l'utilise pas par défaut pour /tmp
Pour ce faire on ajoute dans /etc/fstab             tmpfs /tmp tmpfs defaults 0 0
Au prochain redémarrage /tmp sera "monté" dans une partie de ta mémoire de façon dynamique .
- avantages : moins de fichiers sur le disque,moins d'accès disque , accès plus rapide  , éffacement des données à chaque reboot.
- désavantages : pour les petites config c'est de la mémoire en moins, éffacement des données à chaque reboot (si tu y avait mis des fichiers sur lequel tu travaillais par exemple)

Voilà pour le /tmp/ moi j'utilise tmpfs.

Pour  ton histoire dans un terminal
ls -l  /tmp/utilisateur-meteo/vielsalm/29360/creationmodules-fondinactif.sh devrait te dire à qui appartient le fichier
donc envoie le résultat de cette commande après avoir.
1- arrêté le conky
2- effacé le rep. /tmp/utilisateur-meteo
3-relancé le conky

Ps : désolé hier j'était pas dispo

Hors ligne

#1048 Le 26/06/2012, à 10:31

jpdipsy

Re : [Conky] Alternative à weather.com (2)

Phyllinux

Voilà ton creationmodules-graphique.

# creationmodules-graphique 
########################################################################
# Modifiez si besoin est les références à vos répertoires 
cheminref=~/conky_Fond/Meteo-Lua            # Modifiez si besoin  les références à votre rep conky
fichierdeconfig=images_meteo.cfg     # votre fichier de config
#-----------------------------------------------------
source  $cheminref/configs/$fichierdeconfig 2>/dev/null
source  $cheminref/configs/meteo.cfg 2>/dev/null
repville=`echo $web | cut -d / -f6-7`
repertimages=$TempShell/$repville
fondbase=$repsauv/fond-base.png
fondtravail=$repsauv/fond-travaille.png
imagetemp=$repertimages/$temp.png
imagetemp1=$repertimages/temp1.png
nomdufichier="Données"
#-------------------------------------------------------

#Cartouche      ---------------------------------------------------------
convert -resize 36% $IconesRep/Themes/JPDipsy/Metal/Cartouches/cartouche.png $repertimages/$nomdufichier.png
#ville
#convert -resize 36% $IconesRep/Themes/JPDipsy/Divers/ville.png  $imagetemp
#composite -compose Over -gravity North -geometry +0+20  $imagetemp $repertimages/$nomdufichier.png $repertimages/$nomdufichier.png
fonte=Ubuntu-Bold

convert $repertimages/$nomdufichier.png -background transparent \
-gravity Northwest -font $fonte -pointsize  10 -fill yellow -annotate +20+4 "{{Meteo_latitude}}°N" \
-annotate +240+4 "{{Meteo_longitude}}°E" \
-gravity North -font Lobster-1.4-Regular -pointsize  36 -fill grey24 -annotate +0+5 "{{Meteo_Ville}}" \
-gravity North -font Lobster-1.4-Regular -pointsize  36 -fill yellow -annotate +1+4 "{{Meteo_Ville}}" \
-gravity North -font $fonte -pointsize  13 -fill grey24 -annotate -1+46 "{{Meteo_CondMeteo}}" \
-gravity North -font $fonte -pointsize  13 -fill goldenrod1 -annotate +0+45 "{{Meteo_CondMeteo}}" \
-gravity Northwest -font $fonte -pointsize  10 -fill black -annotate +78+63 "Couverture Nuageuse : " \
-font $fonte -pointsize  10 -fill blue -annotate +200+63 "{{Meteo_CouvNuage}} %" \
-font $fonte -pointsize  10 -fill black -annotate +58+75 "Proba. Pluie : " \
-annotate +170+75 "Qté (1H) : " \
-font $fonte -pointsize  10 -fill blue -annotate +125+75 "{{Meteo_Jour_ProbPrec 1}} %" \
-annotate +220+75 "{{Meteo_QPrec}} mm" \
-font $fonte -pointsize  10 -fill black -annotate +58+87 "Visibilité : " \
-annotate +170+87 "Indice UV : " \
-font $fonte -pointsize  10 -fill blue -annotate +115+87 "{{Meteo_Visibilite}} km" \
-annotate +225+87 "{{Meteo_Uv}} /11" \
-font $fonte -pointsize  10 -fill black -annotate +78+99 "Rafales de vent : " \
-font $fonte -pointsize  10 -fill blue -annotate +165+99 "{{Meteo_Jour_VentRafales 1}} km/h - "{{Meteo_Jour_VentDirP 1}} \
-gravity North -font $fonte -pointsize  14 -fill yellow -annotate +0+114 "Soirée" \
-gravity Northwest -font $fonte -pointsize  10 -fill white -annotate +58+130 "Proba. Pluie : " \
-annotate +170+130 "Qté (1H) : " \
-font $fonte -pointsize  10 -fill grey20 -annotate +125+130 "{{Meteo_Soiree_ProbPrec 1}} %" \
-annotate +220+130 "{{Meteo_Nuit_NivPrec 1}} mm" \
-font $fonte -pointsize  10 -fill white -annotate +80+142 "Vent" \
-annotate +190+142 "Rafales" \
-font $fonte -pointsize  10 -fill grey20 -annotate +60+154 "{{Meteo_Soiree_VentForce 1}} Km/h - "{{Meteo_Soiree_VentP 1}} \
-annotate +190+154 "{{Meteo_Nuit_VentRafales 1}} Km/h" \
-gravity Center  -font $fonte -pointsize  14 -fill lightgreen -annotate +0+57 "Maxi/Mini du jour (2011)" \
-gravity Northwest -font $fonte -pointsize  13 -fill black -annotate +80+182 "{{Meteo_Jour_Temp 1}}°" \
-gravity Northwest -font $fonte -pointsize  12 -fill white -annotate +102+182 "/" \
-annotate +192+182 "/" \
-gravity Northwest -font $fonte -pointsize  13 -fill black -annotate +110+182 "{{Meteo_Nuit_Temp 1}}°" \
-gravity Northwest -font $fonte -pointsize  13 -fill lightblue -annotate +165+182 "({{Meteo_Histo_Max 1}}°" \
-gravity Northwest -font $fonte -pointsize  13 -fill lightblue -annotate +200+182 "{{Meteo_Histo_Min 1}}°)" \
-gravity Northwest -font $fonte -pointsize  10 -fill white -annotate +40+200 "Lever Soleil : {{Meteo_HLeverSoleil 1}}h{{Meteo_MLeverSoleil 1}}" \
-annotate +166+200 "Coucher Soleil : {{Meteo_HCoucherSoleil 1}}h{{Meteo_MCoucherSoleil 1}}" \
-gravity North -fill blue -annotate -18+217 "Mise à jour à :                       Version météo.lua : " \
-gravity Northwest -fill White -annotate +103+217 "{{Meteo_Heure}}h{{Meteo_Minute}}" \
-annotate +250+217 "{{Version}}" $repertimages/$nomdufichier.png
#----------------------------------------------------------------------------------------

# cartouche des prévisions --------------------------------------------------------------
#affichage jour
j1=`date  --date '1 day' +%a`
j2=`date  --date '2 day' +%a`
j3=`date  --date '3 day' +%a`
j4=`date  --date '4 day' +%a`
j5=`date  --date '5 day' +%a`

cp $IconesRep/Themes/JPDipsy/Metal/Cartouches/vide.png $repertimages/CartPrev.png

convert $repertimages/CartPrev.png -background transparent -gravity North -font $fonte -pointsize  18 -fill yellow \
-annotate -186+50 $j1 -annotate -93+40 $j2  -annotate +0+30 $j3 -annotate +93+40 $j4 -annotate +186+50 $j5 \
-gravity North -font $fonte -pointsize  10  -fill red -annotate -186+152 "{{Meteo_Jour_ProbPrec 2}}%" \
-annotate -186+162 "{{Meteo_Nuit_ProbPrec 2}}%" \
-annotate -93+142 "{{Meteo_Jour_ProbPrec 3}}%" \
-annotate -93+152 "{{Meteo_Nuit_ProbPrec 3}}%" \
-annotate +0+132 "{{Meteo_Jour_ProbPrec 4}}%" \
-annotate +0+142 "{{Meteo_Nuit_ProbPrec 4}}%" \
-annotate +93+142 "{{Meteo_Jour_ProbPrec 5}}%" \
-annotate +93+152 "{{Meteo_Nuit_ProbPrec 5}}%" \
-annotate +186+152 "{{Meteo_Jour_ProbPrec 6}}%" \
-annotate +186+162 "{{Meteo_Nuit_ProbPrec 6}}%" \
-font $fonte -pointsize  16 -fill blue -annotate -186+130 "{{Meteo_Jour_Temp 2}}°/{{Meteo_Nuit_Temp 2}}°" -annotate -93+120 "{{Meteo_Jour_Temp 3}}°/{{Meteo_Nuit_Temp 3}}°" -annotate +0+110 "{{Meteo_Jour_Temp 4}}°/{{Meteo_Nuit_Temp 4}}°" -annotate +93+120 "{{Meteo_Jour_Temp 5}}°/{{Meteo_Nuit_Temp 5}}°" -annotate +186+130 "{{Meteo_Jour_Temp 6}}°/{{Meteo_Nuit_Temp 6}}°" \
$repertimages/CartPrev.png

#Affichage Visibilité Lune
convert /tmp/lune.png -background transparent -gravity North -font $fonte -pointsize  13 -fill blue -annotate +0+70 "Visible : {{Lune_Visibilite}} %" \
$repertimages /tmp/lune.png 

#affich condition
#jour 1
convert -background transparent -gravity North {{Meteo_Jour_IconeM $IconesRep 0,0 0x0 60 2}} -resize 36% $imagetemp
convert $imagetemp -alpha on \( +clone -flip -channel A -evaluate multiply .35 +channel   \) -append $repertimages/CartPrev.png +swap -gravity North -geometry -186+80 -composite $repertimages/CartPrev.png
#jour 2
convert -background transparent -gravity North {{Meteo_Jour_IconeM $IconesRep 0,0 0x0 60 3}}  -resize 36% $imagetemp
convert $imagetemp -alpha on \( +clone -flip -channel A -evaluate multiply .35 +channel   \) -append $repertimages/CartPrev.png +swap -gravity North -geometry -93+70 -composite $repertimages/CartPrev.png
#jour 3
convert -background transparent -gravity North {{Meteo_Jour_IconeM $IconesRep 0,0 0x0 60 4}} -resize 36% $imagetemp
convert $imagetemp -alpha on \( +clone -flip -channel A -evaluate multiply .35 +channel   \) -append $repertimages/CartPrev.png +swap -gravity North -geometry +0+60 -composite $repertimages/CartPrev.png
#jour 4
convert -background transparent -gravity North {{Meteo_Jour_IconeM $IconesRep 0,0 0x0 60 5}}  -resize 36% $imagetemp
convert $imagetemp -alpha on \( +clone -flip -channel A -evaluate multiply .35 +channel   \) -append $repertimages/CartPrev.png +swap -gravity North -geometry +93+70 -composite $repertimages/CartPrev.png
#jour 5
convert -background transparent -gravity North {{Meteo_Jour_IconeM $IconesRep 0,0 0x0 60 6}}  -resize 36% $imagetemp
convert $imagetemp -alpha on \( +clone -flip -channel A -evaluate multiply .35 +channel   \) -append $repertimages/CartPrev.png +swap -gravity North -geometry +186+80 -composite $repertimages/CartPrev.png


# pour jouer sur la transparence de l'icone réfléchie modifier la valeur de "multiply .35"
#----------------------------------------------------------------------------------------

# Creation des modules prédéfinis -------------------------------------------------------
# creation barometre
# "{{Images_Barometre 0,0 234x234 60 100}}" laissez le commentaire du début sinon bash essaierea d'interpreter
# integr icone cond courante
convert -background transparent  {{Meteo_IconeM $IconesRep 0,0 0x0 60}}  -resize 50% $imagetemp
composite -compose Over -gravity Center -geometry +0+60 $imagetemp $repertimages/Barometre.png $repertimages/Barometre.png

# creation lune
# "{{Images_Lunaison 0,0 169x169 60 100}}" laissez le commentaire du début sinon bash essaierea d'interpreter

# creation rose
# "{{Images_Rose 0,0 169x169 60 100}}"
#"{{Meteo_Jour %a_%d 2}${exec  mv ~/conky_Fond/Meteo-Lua/icones/Themes/JPDipsy/Metal/Rose-des-vents ~/conky_Fond/Meteo-Lua/icones/Themes/JPDipsy/Metal/Rose-des-vents-bak}${exec  mv ~/conky_Fond/Meteo-Lua/icones/Themes/JPDipsy/Metal/Rose-des-vents2 ~/conky_Fond/Meteo-Lua/icones/Themes/JPDipsy/Metal/Rose-des-vents}}"
# creation rose avec autre theme
# "{{Images_Jour_RoseR 0,0 112x112 60 1 100}}"
#"{{Meteo_Jour %a_%d 2}${exec  mv ~/conky_Fond/Meteo-Lua/icones/Themes/JPDipsy/Metal/Rose-des-vents ~/conky_Fond/Meteo-Lua/icones/Themes/JPDipsy/Metal/Rose-des-vents2}${exec  mv ~/conky_Fond/Meteo-Lua/icones/Themes/JPDipsy/Metal/Rose-des-vents-bak ~/conky_Fond/Meteo-Lua/icones/Themes/JPDipsy/Metal/Rose-des-vents}}"

# creation thermorond
# "{{Images_ThermoRond 0,0 234x234 60 1 100 -a=TempAct -v=TempRes -b=Nuit_Temp-1 -r=Jour_Temp-1}}" laissez le commentaire du début sinon bash essaierea d'interpreter
# integr humid -> thermo
convert  $repertimages/Thermorond1.png -background transparent \
-gravity Center -font $fonte -pointsize  16  -fill grey24 -annotate -44+1 "Min." \
-gravity Center -font $fonte -pointsize  16  -fill blue -annotate -45+0 "Min." \
-gravity Center -font $fonte -pointsize  16  -fill grey40 -annotate +46+1 "Max." \
-gravity Center -font $fonte -pointsize  16  -fill red -annotate +45+0 "Max." \
-gravity Center -font $fonte -pointsize  16  -fill green -annotate +0+27 "Res." \
-gravity Center -font $fonte -pointsize  14 -fill Blue -annotate +0+45 "Humidité : {{Meteo_Humidite}}%" $repertimages/Thermorond1.png

# creation rose rafales
 # "{{Images_Jour_RoseR 0,0 112x112 60 1 100}}" laissez le commentaire du début sinon bash essaierea d'interpreter
convert  -background transparent -font $fonte -pointsize 12 -fill Black label:'Rafales' -rotate 180 -distort Arc '100 180' $repertimages/rafales.png
composite -compose Over -gravity Center -geometry +0+30 $repertimages/rafales.png $repertimages/RoseJourR1.png $repertimages/RoseJourR1.png

# mise en forme image format écran
convert -resize $ecran! $repsauv/fond-base.png $repsauv/fond-base.png
##################################
# choix des modules à afficher
image1=Thermorond1
image2=Rose
image3=lune
image4=Barometre
image5=RoseJourR1
#################################
############ mise en forme ######

#Les modules tout prets affichables-----------------------------------------------------------------------

# important ---------- cette premiere image à transformer doit toujours etre :  $fondbase $fondtravail
### ------------------------------------------------------------------------------------------------------
#Barometre
composite -compose Over -gravity NorthEast -geometry +360+25  $repertimages/$image4.png  $fondbase $fondtravail
#lune
composite -compose Over -gravity NorthEast -geometry +235+195  $repertimages/$image3.png $fondtravail $fondtravail
#Thermorond1
composite -compose Over -gravity Northwest -geometry +360+25  $repertimages/$image1.png  $fondtravail $fondtravail
#Rose
composite -compose Over -gravity Northwest -geometry +235+195  $repertimages/$image2.png $fondtravail $fondtravail
#RoseR
composite -compose Over -gravity Northwest -geometry +390+300  $repertimages/$image5.png $fondtravail $fondtravail
#------------------------------------------Mise en forme  Cartouches    ---------------------------------------------------
########## integration cartouche données
composite -compose Over -gravity North -geometry +0+28 $repertimages/Données.png  $fondtravail $fondtravail
#---------------------------------------------------------------------------------------------------------------------------
########## integration cartouche prév
composite -compose Over -gravity Center -geometry +0-85 $repertimages/CartPrev.png  $fondtravail $fondtravail
#---------------------------------------------------------------------------------------------------------------------------
########## integration lune
convert -resize 75% /tmp/lune.png fichiertemp.png
composite -compose Over -gravity NorthEast -geometry +390+300 fichiertemp.png  $fondtravail $fondtravail

explications:
########################################################################
# Modifiez si besoin est les références à vos répertoires
cheminref=~/conky_Fond/Meteo-Lua            #le chemin que tu utilises semble t'il
fichierdeconfig=images_meteo.cfg     # pour reprendre tes configs

tu  sauvegarde dans /Meteo-Lua/scripts/Modules-creation/creationmodules-graphique (renomme celui de demo avant)
adapte tes fichiers de cfg. (regarde ceux de demo)

Pour xplanetfx le conky à lancer est le même avec adaptation des chemins et fichiers
pour la verif du fond xplanetfx à "script à lancer après" ne gère pas le passage de variable à un script semble t'il donc on créer un script rendu exec. fond_meteo.sh par ex. on y met (pour toi)

#!/bin/bash

~/conky_Fond/Meteo-Lua/scripts/verif_fond.sh creationmodules-graphique

tu le met ou tu veux  et dans "script à lancer après" tu mets /ousetrouvelescript/fond_meteo.sh
Voilà

Hors ligne

#1049 Le 26/06/2012, à 10:39

enebre

Re : [Conky] Alternative à weather.com (2)

- jpdipsy - bonjour,
Pas de soucis pour hier.

J'ai retéléchargé l'archive pour être certain et l'ai relancé dans un terminal : ça donne ceci :

┌─( enebre ) - ( 3.4.3-030403-generic ) - ( ~ )
└─> killall conky
┌─( enebre ) - ( 3.4.3-030403-generic ) - ( ~ )
└─> sh -c /home/enebre/conky/meteo-mode-fondinactif.sh
WARNING: gnome-keyring:: couldn't connect to: /tmp/keyring-i0tGMA/pkcs11: No such file or directory
Conky: /home/enebre/conky/Meteo-Lua/scripts/conky_fondinactif: 7: config file error
Conky: forked to background, pid is 20756
┌─( enebre ) - ( 3.4.3-030403-generic ) - ( ~ )
└─> 
Conky: desktop window (1000003) is subwindow of root window (282)
Conky: window type - normal
Conky: drawing to created window (0x1600001)
Conky: drawing to double buffer
    version = v4.1
    web = http://www.accuweather.com/fr/be/vielsalm/29360/weather-forecast/29360
    Pévision Nb jours = 6
    Pévision Matin = non
    Pévision Après Midi = non
    Pévision Soirée = oui
    Pévision Nuit = oui
    Délais = 900
    Chemin de travail = /tmp/utilisateur-meteo
    Palier = 10
    Chemin de sauvegarde = /home/enebre/conky/Meteo-Lua/sauvegardes/belfort/
    Mode = fondinactif
    creationmodule = creationmodules-fondinactif.sh
sh: 1: /tmp/utilisateur-meteo/vielsalm/29360/creationmodules-fondinactif.sh: Permission denied
Conky: Unable to load image '/tmp/image-meteo-Belfort.png'

la commande demandée me renvoie ceci :

ls -l  /tmp/utilisateur-meteo/vielsalm/29360/creationmodules-fondinactif.sh
-rwxrwxr-x 1 enebre enebre 14845 juin  26 11:35 /tmp/utilisateur-meteo/vielsalm/29360/creationmodules-fondinactif.sh

la partie de mon fstab pour tmpfs afin de  vérifier si l'erreur est là

# Move /tmp to RAM
tmpfs /tmp tmpfs defaults,noexec,nosuid 0 0 

Dernière modification par enebre (Le 26/06/2012, à 11:17)

Hors ligne

#1050 Le 26/06/2012, à 12:34

Phyllinux

Re : [Conky] Alternative à weather.com (2)

ragamatrix a écrit :

Le problème est un peu évoqué ici (post#2) : gnome keyring...
Au lieu de le désactiver au démarrage je l'ai activé dans le menu des préférence de programmes aux démarrage dans xfce, onglet avancé(je crois que c'est la derniere ligne)et comme j'ai une session openbox dans l'autostart j'ai mis :

 /usr/bin/gnome-keyring-daemon --start --components=pkcs11 &  

J'ai maintenant plus d'erreur dans le terminal.
Peut-être cela pourra t'aiguiller.;)

Merci,

J'ai donc essayé d'activer, dans Session et Démarrage, en Démarrage Automatique :'Stockage des certificats et des clés (Trousseau de clé GNOME:composant PKCS#11)'
Et cela roule : Plus d'erreur en terminal au lancement de conky, et plus de demande de saisir mon mot de passe au lancement de Chromium big_smile


The ship is sinking normally...

Hors ligne