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.

#1776 Le 31/03/2010, à 15:35

breakolami

Re : (3) Conky : Postez vos conkyrc ou certaines parties intéressantes

Une petite question (j'ai la flemme de tout relire)

Je suis sous KDE, pour lancer conky au démarrage j'utilise un petit script pour la transparence

#! /bin/bash
feh --bg-scale `grep 'wallpaper=' ~/.kde/share/config/plasma-desktop-appletsrc | tail --bytes=+11`
sleep 20
conky -&

Si je veux lancer plusieurs conkyrc je mets quoi ?

Ca parait un peu con comme question, désolé.


Kubuntu 23.10 sur MSI Katana 17, Intel i7 12ème génération, 1 Nvme M.2 P5 500Go, 1 Nvme M.2 P2 500Go, 16Go de mémoire, Nvidia GeForce RTX 4060
https://www.youtube.com/@ChristopheBrand

Hors ligne

#1777 Le 31/03/2010, à 16:13

chepioq

Re : (3) Conky : Postez vos conkyrc ou certaines parties intéressantes

breakolami a écrit :

Une petite question (j'ai la flemme de tout relire)

Je suis sous KDE, pour lancer conky au démarrage j'utilise un petit script pour la transparence

#! /bin/bash
feh --bg-scale `grep 'wallpaper=' ~/.kde/share/config/plasma-desktop-appletsrc | tail --bytes=+11`
sleep 20
conky -&

Si je veux lancer plusieurs conkyrc je mets quoi ?

Ca parait un peu con comme question, désolé.

tu mets ça par exemple

#! /bin/bash
feh --bg-scale `grep 'wallpaper=' ~/.kde/share/config/plasma-desktop-appletsrc | tail --bytes=+11`
sleep 20

conky -c /chemin_vers_ton_conky1 &&
conky -c /chemin_vers_ton_conky2 &&
conky -c /chemin_vers_ton_conky3 &&

Tout est dans tout et réciproquement....

Hors ligne

#1778 Le 31/03/2010, à 16:41

breakolami

Re : (3) Conky : Postez vos conkyrc ou certaines parties intéressantes

Merci c'est tout simple
Par contre ça ne fonctionne pas si je mets &&
Mais avec un seul & ça fonctionne

#! /bin/bash
feh --bg-scale `grep 'wallpaper=' ~/.kde/share/config/plasma-desktop-appletsrc | tail --bytes=+11`
sleep 20
conky -c /home/chris/.conkyrc &
conky -c /home/chris/.conkyrc2 &

Kubuntu 23.10 sur MSI Katana 17, Intel i7 12ème génération, 1 Nvme M.2 P5 500Go, 1 Nvme M.2 P2 500Go, 16Go de mémoire, Nvidia GeForce RTX 4060
https://www.youtube.com/@ChristopheBrand

Hors ligne

#1779 Le 31/03/2010, à 17:35

chepioq

Re : (3) Conky : Postez vos conkyrc ou certaines parties intéressantes

Merci c'est tout simple
Par contre ça ne fonctionne pas si je mets &&
Mais avec un seul & ça fonctionne

Tu as raison, c'est avec un seul &... et chez moi aussi.
Ma mémoire me joue des tours...


Tout est dans tout et réciproquement....

Hors ligne

#1780 Le 31/03/2010, à 19:08

chepioq

Re : (3) Conky : Postez vos conkyrc ou certaines parties intéressantes

wlourf a écrit :
chepioq a écrit :
RegisBurin a écrit :

Sans se tordre le cerveau, tu ouvres ta photo sous Gimp, tu fais une selection circulaire ou tu le souhaites, ctrl+I pour inverser la selection, ctrl+k ou ctrl+x (supprimer). Enregistres en .png (gère la transparence)...

Tadaaaa...!

Je sais transformer une photo sous gimp, mais le problème c'est que la photo, même avec un fond transparent, sera toujours de forme rectangulaire(ou carré...).
Ce que je souhaite c'est une photo ronde...

T'as bien raison, pour avoir un truc dynamique, gimp c'est pas le pied sauf si tu utilises des scripts mais ça sera gourmand.
Pour ce que tu veux, il y a un exemple , ce qui doit donner à peu près ça pour Lua :

surface = cairo_image_surface_create_from_png("/home/wlourf/test.png")
w = cairo_image_surface_get_width (surface);
h = cairo_image_surface_get_height (surface);
cw = conky_window.width
ch = conky_window.height
radius = math.min(cw,ch)/2

local cs=cairo_xlib_surface_create(conky_window.display, conky_window.drawable, conky_window.visual, cw, ch)
local cr=cairo_create(cs)
cairo_arc (cr, cw/2,ch/2, radius, 0, 2*math.pi)
cairo_clip (cr)
cairo_new_path (cr)

if h>w then 
	ratio = ch/h
else
	ratio = cw/w
end

cairo_scale (cr, ratio,ratio)
cairo_set_source_surface (cr, surface, 0, 0)
cairo_paint (cr)

cairo_surface_destroy (surface)
cairo_surface_destroy (cs)

Il te restera des ajustements à faire pour centrer tes images si celles-ci n'ont pas le même ratio que ton conky, mais le problème (enfin, c'est pas vraiment un problème), c'est que ça ne fonctionne que pour les PNG. Si tu veux travailler sur des JPG directement, il faut sans doute passer par imlib2 qui fonctionne aussi avec le Lua de conky.

Merci wlourf, j'arrive maintenant à afficher une image ronde dans une fenêtre conky, j'arrive même à faire que cette image soit plus petite que la fenêtre du conky, mais je n'arrive pas à mettre cette image ou je veux, elle est toujours en haut à gauche...
Il me manque surement les coordonnées x et y, mais je ne sais pas ou les mettre...


Tout est dans tout et réciproquement....

Hors ligne

#1781 Le 31/03/2010, à 21:31

wlourf

Re : (3) Conky : Postez vos conkyrc ou certaines parties intéressantes

@chepioq
pour déplacer ton image, juste après cette ligne :local cr=cairo_create(cs), essaye:

cairo_translate(cr,delta_x,delta_y)

Cette fonction aussi peut t'interesser : cairo_rotate(cr,angle_en_radian)
Autre solution moins élégante : enregistrer ton image en png avec cairo et l'appeler depuis le conky avec $image
il faudra nous montrer le résultat wink

Dernière modification par wlourf (Le 31/03/2010, à 21:32)

Hors ligne

#1782 Le 01/04/2010, à 15:56

JB-home

Re : (3) Conky : Postez vos conkyrc ou certaines parties intéressantes

Pour ceux que ça intéresse , j'ai trouvé un script perl, qui affiche le Nombre de mail de votre compte Facebook.

dans conky :

${texeci 60 perl /home/$USER/scripts/facebook-mail.pl $EMAIL $PASS}

( n'oubliez pas de modifier le chemin vers le script et de remplacer $EMAIL par votre mail et $PASS par votre mot de pass facebook )

facebook-mail.pl :

#!/usr/bin/perl
use strict;
use WWW::Mechanize;
use HTTP::Cookies;

my $username = @ARGV[0];
my $password = @ARGV[1];

my $mech = WWW::Mechanize->new();
$mech->cookie_jar(HTTP::Cookies->new());
$mech->post("https://login.facebook.com/login.php?m&next=http://m.facebook.com/inbox",{email=>$username,pass=>$password});
$mech->content() =~ /Inbox\s\((\d+)\)/;

print $1?("$1 New Message".($1>1?"s\n":"\n")):"0 New Messages\n";

( vous devez je pense installé 2 librairie perl pour que le script fonctionne
sudo apt-get install libtest-www-mechanize-perl libwww-mechanize-shell-perl )

source : http://kudanai.blogspot.com/2009/07/facebook-inbox-count-for-conkyothers.html

Dernière modification par z0rg> (Le 01/04/2010, à 15:57)

Hors ligne

#1783 Le 02/04/2010, à 00:59

wlourf

Re : (3) Conky : Postez vos conkyrc ou certaines parties intéressantes

@chepioq:
Je suppose que tu veux quelque chose dans ce goût là :
capturelune2.th.png
Il y a quelques ajustements à faire (les updates des différentes parties image/calendrier/horloge sont différentes) je posterai le code un peu plus tard ...

Hors ligne

#1784 Le 02/04/2010, à 10:12

fautedorthographe

Re : (3) Conky : Postez vos conkyrc ou certaines parties intéressantes

salut wlourf

j'ai une petite question!
comment faire disparaitre vos barres de couleur quand un périphérique n'est pas monter?
ou quand le wifi n'existe pas ?
merci

Dernière modification par fautedorthographe (Le 03/04/2010, à 10:28)

#1785 Le 02/04/2010, à 10:44

breakolami

Re : (3) Conky : Postez vos conkyrc ou certaines parties intéressantes

fautedorthographe a écrit :

comment faire disparaitre t'es barre de couleur quand un périphérique n'est pas monté

Pour mon disque externe j'ai utilisé  ça

${if_existing /media/Externe}  Externe :${fs_used_perc /media/Externe}% ${alignc}${color3}${fs_bar 8 /media/Externe}${color}${endif}

Et ça fonctionne, lorsque je l'allume la ligne correspondante apparait, la barre de couleur se remplit et le pourcentage s'affiche et lorsque je le démonte la ligne disparait.


Kubuntu 23.10 sur MSI Katana 17, Intel i7 12ème génération, 1 Nvme M.2 P5 500Go, 1 Nvme M.2 P2 500Go, 16Go de mémoire, Nvidia GeForce RTX 4060
https://www.youtube.com/@ChristopheBrand

Hors ligne

#1786 Le 02/04/2010, à 14:08

Piouplilou

Re : (3) Conky : Postez vos conkyrc ou certaines parties intéressantes

bonjour,

Je viens à vous car j'ai écumé tout le forum sans trouvé ma réponse. J'ai un problème avec mon conky. J'ai fais un truc de base

alignment top_left
background yes
border_width 1
cpu_avg_samples 2
default_color black
default_outline_color black
default_shade_color black
double_buffer yes
draw_borders no
draw_graph_borders yes
draw_outline no
draw_shades no
use_xft yes
xftfont DejaVu Sans Mono:size=12
gap_x 5
gap_y 5
minimum_width 500
maximum_width 500
net_avg_samples 2
no_buffers yes
out_to_console no
out_to_stderr no
extra_newline no
override_utf8_locale yes
own_window yes
own_window_class Conky
own_window_type override 
own_window_transparent yes
stippled_borders 0
update_interval 1.0
uppercase no
use_spacer none
show_graph_scale no
show_graph_range no

TEXT
$nodename - $sysname $kernel on $machine 
$hr
Uptime:$color $uptime
Frequency (in GHz):$color $freq_g
RAM Usage:$color $mem/$memmax - $memperc% ${membar 4}
Swap Usage:$color $swap/$swapmax - $swapperc% ${swapbar 4}
CPU Usage:$color $cpu% ${cpubar 4}
Processes:$color $processes  Running:$color $running_processes
$hr
File systems:
 / $color${fs_used /}/${fs_size /} ${fs_bar 6 /}
Networking:
Up:$color ${upspeed eth0}  - Down:$color ${downspeed eth0}
$hr
Name              PID   CPU%   MEM%
${top name 1} ${top pid 1} ${top cpu 1} ${top mem 1}
${top name 2} ${top pid 2} ${top cpu 2} ${top mem 2}
${top name 3} ${top pid 3} ${top cpu 3} ${top mem 3}
${top name 4} ${top pid 4} ${top cpu 4} ${top mem 4}
$hr
Fortune:
${texeci 180 fortune}

Et j'ai limité la largeur à 300px mais mon fortune est coupé quand le texte est trop long, j'aurai voulu un espèce de retour à la ligne, mais j'ai pas trouvé d'option. Comment faite vous pour vos fortunes ?

Hors ligne

#1787 Le 02/04/2010, à 14:52

chepioq

Re : (3) Conky : Postez vos conkyrc ou certaines parties intéressantes

@Piouplilou
Essayes en rajoutant:

text_buffer_size 1024

Juste après

show_graph_scale no
show_graph_range no

Si cela ne suffit pas, mets une ou deux ligne vide après:

${texeci 180 fortune}

Tout est dans tout et réciproquement....

Hors ligne

#1788 Le 02/04/2010, à 21:34

Fenouille84

Re : (3) Conky : Postez vos conkyrc ou certaines parties intéressantes

chepioq a écrit :

@Piouplilou
Essayes en rajoutant:

text_buffer_size 1024

Si cela ne suffit pas, mets une ou deux ligne vide après:

${texeci 180 fortune}

Non, sa ne résout pas le problème de retour à la ligne sa. Enfin, je pense pas... hmm

@Piouplilou
Essaye plutôt avec cette commande :

${execi 180 fortune | fold -s -w 80}

Cette commande te permet de :
  * couper la phrase en gardant les mots entiers
  * couper après 80 caractères

T'as pas regardé la doc de fortune toi !! wink

Dernière modification par Fenouille84 (Le 02/04/2010, à 21:40)


Ma page Deviant Art : conky inside ;-)
.
-- DropBox (online backup) : 2Go + 250 Mo pour vous et moi par parrainage --

Hors ligne

#1789 Le 03/04/2010, à 07:14

chepioq

Re : (3) Conky : Postez vos conkyrc ou certaines parties intéressantes

Tu as raison Fenouille84, j'avais mal interprété la question, en la relisant ta solution me semble la bonne...


Tout est dans tout et réciproquement....

Hors ligne

#1790 Le 03/04/2010, à 20:29

chepioq

Re : (3) Conky : Postez vos conkyrc ou certaines parties intéressantes

1270318385.jpg

Bonsoir tout le monde.
Avec l'aide au combien précieuse de wlourf je suis parvenu à faire ce calendrier qui affiche les phases de la lune.
Il y a un script lua pour le calendrier, largement pompé sur un calendrier de olgmen, sur ubuntu.ru, et pour l'image de la lune un petit script qui récupère l'image (mise à jour toutes les heures) sur le site de static.die.net, et qui l'affiche avec la fonction image de conky. (j'utilise conky 1.8.0)
Pour le calendrier vous pouvez changer la police d'affichage des messages et des jours (ici newpushkin et monaco, que j'ai mis dans un dossier font dans le tarball, si vous voulez les installer).

Vous pouvez télécharger ce conky ici; http://sd-1.archive-host.com/membres/up/138795649635992281/newconkytar.gz

Vous aurez bien à adapter les différents chemins à votre configuration.
Voili-voilou..
Qu'en pensez-vous?


Tout est dans tout et réciproquement....

Hors ligne

#1791 Le 03/04/2010, à 20:59

Fenouille84

Re : (3) Conky : Postez vos conkyrc ou certaines parties intéressantes

Voici une nouvelle version de mon bureau sous OpenBox smile

Screen :
eggsg.th.png

Exemple d'un conky horizontal.
C'est minimaliste, l'essentiel vital !! Rien de plus, rien de moins tongue

conkyrc1 (barre du haut)

#Fonctionnement de conky 
  total_run_times 0			#Temps en secondes ; 0 = toujours actif
  background yes			#Pour que conky tourne en arrière plan ; no = pour les tests

#Réglages système
  cpu_avg_samples 1			#Nb d'échantillons pour calculer la moyenne d'utilisation CPU
  net_avg_samples 2			#Nb d'échantillons pour calculer la moyenne d'utilisation CPU

#Mémoire
  double_buffer yes			#Éviter le clignotement
  no_buffers yes			#Soustraire les mémoires tampons de la mémoire utilisée
  text_buffer_size 1024			#Taille du cache pour le texte

#Affichage
  out_to_console no			#Affiche le texte sur la sortie standard
  update_interval 1			#Taux de rafraîchissement de la fenêtre (s)

#Fenêtre conky
  alignment top_left			#Alignement
 #---
  minimum_size 1435 10			#Taille minimum (px) ; largeur / hauteur
  maximum_width 1435			#Largeur maximum (px)
 #---
  gap_x 3				#Écart avec le bord gauche / droit
  gap_y 3				#Écart avec le bord haut / bas
 #---
  draw_shades no			#Afficher les ombres
  draw_outline no			#Afficher les contours de fenêtre
  draw_borders no			#Afficher des contours autour des blocs de texte
  border_width 1			#Largeur du contour
  border_inner_margin 1			#Largeur des marges
 #---
  own_window yes			#Utiliser sa propre fenêtre
  own_window_type override 		#Type de fenêtre ; normal / override / desktop
  own_window_transparent yes		#Pseudo transparence

#Mise en forme
  use_xft yes				#Utiliser Xft (polices lissées etc)
  xftalpha .1				#Utiliser Xft
  override_utf8_locale yes 		#Force l'UTF8
  uppercase no				#Tout le texte en majuscule
  use_spacer right				#Ajoute des espaces après certains objets (qu'avec des polices fixes)
 #---
  xftfont saxMono:size=9 		#Police par défaut
 #---
  stippled_borders 5			#Taille des pointillés

#Couleurs
  default_color FFFFFF 			#Couleur par défaut
  default_shade_color 333333		#Couleur des ombres
  default_outline_color black		#Couleur des contours
 #---
  color1 303030				#Gris foncé
  color2 1e5551				#Bleu vert
 #---
  short_units yes			#Unités courtes
  pad_percents 2			#Unité à 2 décimales


TEXT
${color1}${font openlogos:size=15}u${font}${voffset -7}${offset 5}Up:${color2}${uptime}${goto 130}${color1}| Kernel:${color2}${exec uname -r | cut -c 1-9}${color1} | CPU:${color2}${cpu cpu}% ${color1}${platform coretemp.0 temp 1}${offset -7}-${platform coretemp.1 temp 1}${offset -7}°C${color1} | RAM:${memperc}%${color1} | Swap:${swapperc}%${color1} | Cnnx:${color2}${if_existing /proc/net/route wlan0}On ${else}Off${endif}${color1} | Qlty:${if_existing /proc/net/route wlan0}${color2}${wireless_link_qual_perc wlan0}${offset -21}${else}0 ${endif}%${color1} | T.UL:${color2}${totalup wlan0}${color1} | T.DL:${color2}${totaldown wlan0}${color1} | ${hddtemp /dev/sda}${offset -7}°C${color1} | /root:${color2}${fs_free /}${color1} | /home:${color2}${fs_free /home}${color1} | /Lexar:${if_mounted /media/LEXAR}${color2}${fs_free /media/LEXAR}${else}unmnt${endif}${color1} | /Linux:${if_mounted /media/Linux}${color2}${fs_free /media/Linux}${else}unmnt${endif}${color1} | /LaCie:${if_mounted /media/LaCie_PC}${color2}${fs_free /media/LaCie_PC}${else}unmnt${endif}

conkyrc2 (calendrier et todolist)

#Fonctionnement de conky 
  total_run_times 0			#Temps en secondes ; 0 = toujours actif
  background yes			#Pour que conky tourne en arrière plan ; no = pour les tests

#Réglages système
  cpu_avg_samples 1			#Nb d'échantillons pour calculer la moyenne d'utilisation CPU
  net_avg_samples 2			#Nb d'échantillons pour calculer la moyenne d'utilisation CPU

#Mémoire
  double_buffer yes			#Éviter le clignotement
  no_buffers yes			#Soustraire les mémoires tampons de la mémoire utilisée
  text_buffer_size 1024			#Taille du cache pour le texte

#Affichage
  out_to_console no			#Affiche le texte sur la sortie standard
  update_interval 1			#Taux de rafraîchissement de la fenêtre (s)

#Fenêtre conky
  alignment top_left			#Alignement
 #---
  minimum_size 590 160			#Taille minimum (px) ; largeur / hauteur0
  maximum_width 590			#Largeur maximum (px)
 #---
  gap_x 220				#Écart avec le bord gauche / droit
  gap_y 560				#Écart avec le bord haut / bas
 #---
  draw_shades no			#Afficher les ombres
  draw_outline no			#Afficher les contours de fenêtre
  draw_borders no			#Afficher des contours autour des blocs de texte
  border_width 1			#Largeur du contour
  border_inner_margin 1			#Largeur des marges
 #---
  own_window yes			#Utiliser sa propre fenêtre
  own_window_type override		#Type de fenêtre ; normal / override / desktop
  own_window_transparent yes		#Pseudo transparence

#Mise en forme
  use_xft yes				#Utiliser Xft (polices lissées etc)
  xftalpha .1				#Utiliser Xft
  override_utf8_locale yes 		#Force l'UTF8
  uppercase no				#Tout le texte en majuscule
  use_spacer right			#Ajoute des espaces après certains objets (qu'avec des polices fixes)
 #---
  xftfont saxMono:size=9 		#Police par défaut
 #---
  stippled_borders 5			#Taille des pointillés

#Couleurs
  default_color FFFFFF 			#Couleur par défaut
  default_shade_color 333333		#Couleur des ombres
  default_outline_color black		#Couleur des contours
 #---
  color1 303030				#Gris foncé
  color2 1e5551				#Bleu vert


TEXT
${color2}${font monaco:pixelsize=11}${offset 50} ${exec date +%B\ %Y | sed 's/^.\| [a-z]/\U&/g'}
${color1}${execp JOUR=$(date +%e) ; cal | sed '1d' | sed 's/^/  /g' | sed 's/'" $JOUR"'/${color2}'" $JOUR"'${color1}/1'}${font}
${color1}${offset 260}${voffset -30}${font SpaceAge:pixelsize=18}ToDo List${hr}${font}
${voffset -12}${offset 240}${cpubar cpu5 0,16}
${execp cat ~/Ubuntu/ToDo/ToDo | fold -s -w 52 | sed 's/^/\${offset 280}/g'}

Et voilà !! big_smile (Le wallpaper vient du site Deviant Art)

[avoeu]
   Bon ok, je suis actuellement en train de finaliser encore un autre bureau, donc un autre conky !!
   Mais je vais attendre un peu avant de le poster, pour éviter le double poste roll
[/avoeu]

Dernière modification par Fenouille84 (Le 03/04/2010, à 21:00)


Ma page Deviant Art : conky inside ;-)
.
-- DropBox (online backup) : 2Go + 250 Mo pour vous et moi par parrainage --

Hors ligne

#1792 Le 04/04/2010, à 14:08

JB-home

Re : (3) Conky : Postez vos conkyrc ou certaines parties intéressantes

en tout cas jolie bureau smile

Hors ligne

#1793 Le 04/04/2010, à 14:44

Fenouille84

Re : (3) Conky : Postez vos conkyrc ou certaines parties intéressantes

z0rg> a écrit :

en tout cas jolie bureau smile

Merci z0rg wink


Edit : une nouvelle version du calendrier, tous bugs corrigés !! (toute fraiche de ce matin !! big_smile)
Modifiez les offset si besoin pour la mise en page.

${color2}${font monaco:pixelsize=11}${offset 0} ${exec date +%B\ %Y | sed 's/^.\| [a-z]/\U&/g'}${color1}${offset 3}${voffset 3}${cpubar cpu6 0,80}
${color1}${execp JOUR=$(date +%e) ; cal | sed '1d' | sed 's/^/\${offset 4} /g' | sed 's/'" $JOUR"'/${color2}'" $JOUR"'${color1}/1'}${font}

Dernière modification par Fenouille84 (Le 05/04/2010, à 11:34)


Ma page Deviant Art : conky inside ;-)
.
-- DropBox (online backup) : 2Go + 250 Mo pour vous et moi par parrainage --

Hors ligne

#1794 Le 06/04/2010, à 10:26

fautedorthographe

Re : (3) Conky : Postez vos conkyrc ou certaines parties intéressantes

breakolami a écrit :
fautedorthographe a écrit :

comment faire disparaitre t'es barre de couleur quand un périphérique n'est pas monté

Pour mon disque externe j'ai utilisé  ça

${if_existing /media/Externe}  Externe :${fs_used_perc /media/Externe}% ${alignc}${color3}${fs_bar 8 /media/Externe}${color}${endif}

Et ça fonctionne, lorsque je l'allume la ligne correspondante apparait, la barre de couleur se remplit et le pourcentage s'affiche et lorsque je le démonte la ligne disparait.

salut

juste pour dire que j'ai régler mon problème de voile sur conky en ayant lus quelques page plus loin qu'il fallait que je change l'option "override" ou "normal" par "dock" mes il y a l'alignement qui ne fonctionne plus donc du coup j'ai spécifier ca place

sinon pour les barres de couleur je voudrais qu'elle diparaisse a partir du script

@Vermouth votre script ne fonctionne pas chez moi enfin presque pas
et j'ai envie d'utiliser le votre
car il m'aiguille un peu sur se que je voudrais faire avec les barres de couleur parce que apparament je vais devoir donner plusieurs position en fonction des disques qui sont démarrer ou du wifi
merci

#1795 Le 06/04/2010, à 19:37

wlourf

Re : (3) Conky : Postez vos conkyrc ou certaines parties intéressantes

chepioq a écrit :

http://pix.toile-libre.org/upload/img/1270318385.jpg

Bonsoir tout le monde.
Avec l'aide au combien précieuse de wlourf je suis parvenu à faire ce calendrier qui affiche les phases de la lune.
Il y a un script lua pour le calendrier, largement pompé sur un calendrier de olgmen, sur ubuntu.ru, et pour l'image de la lune un petit script qui récupère l'image (mise à jour toutes les heures) sur le site de static.die.net, et qui l'affiche avec la fonction image de conky. (j'utilise conky 1.8.0)
Pour le calendrier vous pouvez changer la police d'affichage des messages et des jours (ici newpushkin et monaco, que j'ai mis dans un dossier font dans le tarball, si vous voulez les installer).

Vous pouvez télécharger ce conky ici; http://sd-1.archive-host.com/membres/up/138795649635992281/newconkytar.gz

Vous aurez bien à adapter les différents chemins à votre configuration.
Voili-voilou..
Qu'en pensez-vous?

Très bien, j'en ai profité pour créer un widget pour cette lune, ainsi dans un script Lua, il suffit d'appeller le fichier moon.lua avec dofile() puis d'appeler la fonction qui dessine la lune, ce qui donne,
Pour le conky - chemins à spécifier à la fin du fichier:

# -- Conky settings -- #
background no
update_interval 2

cpu_avg_samples 2
net_avg_samples 2

override_utf8_locale yes

double_buffer yes
no_buffers yes

text_buffer_size 2048
imlib_cache_size 0

# -- Window specifications -- #

own_window yes
own_window_type normal
own_window_transparent yes
#own_window_argb_visual yes
own_window_hints undecorate,sticky,skip_taskbar,skip_pager,below
own_window_colour FFFFFF
own_window_title moon widget

border_inner_margin 0
border_outer_margin 0

minimum_size 450 550

alignment tr
gap_y 0
gap_x 0

# -- Graphics settings -- #
draw_shades no
draw_outline no
draw_borders no
draw_graph_borders no

# -- Text settings -- #
use_xft yes
xftfont Santana:size=12
xftalpha 0

uppercase no

default_color 000000
text_buffer_size 2048 
imlib_cache_size 0 
#--- LUA ---
lua_load ~/script/moon_cal_clock.lua 
lua_draw_hook_post main

#
TEXT
${time}
${execpi 3600 ~/scripts/moon/get_moon.sh}

Le script get_moon.sh, perso je n'utilise pas convert sur mon PC, je converti l'image directement avec le script Lua et imlib

#!/bin/sh
dir="/tmp/moon"

mkdir -p $dir
cd $dir

wget http://static.die.net/moon/576.jpg -O "$dir/moon.jpg"

Et le fichier moon_cal_clock.lua qui utilise 3 widgets différents : lune, calendrier, horloge (chemins à spécifier au début du fichier).
Perso je trouve ça beaucoup plus simple car le passage des paramètres est grandement simplifié :

dofile("/home/ll/wip/moon1.0/moon.lua")
dofile("/home/ll/wip/calendar1.4/calendar.lua")
dofile("/home/ll/wip/clock1.2/clock.lua")



function conky_main()
	if conky_window==nil then return end
	--if tonumber(conky_parse('${updates}')) <4  then return end
	local xc,yc=200,150
	local radius= 100

	display_moon("/tmp/moon/moon.jpg",
				xc,yc,radius, 	--xc,yc,radius
				10			--angle
				
	)		
	calendar_widget(xc,yc,			--xc,yc	   - coordinates of the center of the calendar, relative to top left corner of conky window
				radius,				--radius     - external radius of the calendar
				2,					--ratio_arc  - internal radius in percentage of external radius (values O to 1)
				10,					--range      - number of days to display before and after today (i.e. with range = 30 --> 60 days are displayed)
				0xCCCCFF,			--wday_color - weekday color
				0xFFFF77,			--eday_color - week-end and bank holidays defined in calendar.txt
				0xFF0000,			--dday_color - color of today
				0xFFFFFF,			--info_color - information text color (from calendar.txt)
				0.1,				--info_alpha - information text alpha (from calendar.txt)
				true,				--vgradient  - vertical gradient (both circle and dates)? (true/false)
				0,					--hgradient  - horizontal gradient for the circle? (0 to 1, 0 is the best choice for "moon like" circle )
				"Japan",			--font       - font to use
				12,					--font_size  - font-size has to be adjusted depending on the font used
				4,					--text_offset    - (>=0) for vertical align of dates, use 0 if not sure
									--, this value has to be adjusted depending on range and font_size 
				24,					--font_size_info - font_size for text info
				0,					--today_xoffset  - the offset for the date of today (can be positive/null/negative, in pixels)
				-5,					--today_yoffset  - where today will be displayed (value between -range to + range)?
				true,				--align_right    - display on right side of the circle (true/false)
				"%a %d %b", 		--date_format    - format to display dates ( ex. "%a %d %b")
									-- see http://www.lua.org/pil/22.1.html for availables formats
				220,220				--txt_x, txt_y   - coordinates of the text info
				)
					
					

	
	clock_widget(
		radius,xc,yc,							  --radius, xc, yc
		radius/5, 1.5,	0xcccccc,1,0x999999,0x000000, --h: radius, lg, color, border size, border_color, shadow_color
		radius/10,1.9,	0xcccccc,1,0x999999,0x000000, --m; the same
		1,2,	0xcccccc,1,0x999999,0xFFFF00, --s : the same
		false,							   	  --show second hand	
		-50,20,1, 							  --shadow x , y & opacity 
		1,0x000000,0x000000,3 				  --dot percent, color and shadow color and shadow length
		)
		
end

Ce script lua appelle donc 3 widgets, voici celui pour la Lune moon.lua :

--[[ MOON WIDGET by Wlourf (06 April 2010, version 1.0)

This widget display a rounded image on your cairo, 
It is designed for a Moon picture from http://static.die.net/moon/576.jpg
but can be used with any SQUARED picture

Parameters are
filename		--name of picture to use
xc,yc			--coordinates of the center moon relative to top left corner of conky window
radius			--radius of the moon
angle			--angle of rotation in degrees

]]

require 'cairo'
require 'imlib2'


function convert_moon(fileIn,fileOut,radius,angle)
	--convert moon file from jpg to png, scale it and rotate it
	local imageMoon = imlib_load_image(fileIn)
	local out_size = radius*2/radius_crop
	imlib_context_set_image(imageMoon)
	w = imlib_image_get_width();
	h = imlib_image_get_height();
	imlib_image_set_format("png")
	buffer = imlib_create_image(out_size,out_size);
	imlib_context_set_image(buffer);

    imlib_blend_image_onto_image(imageMoon, 0, 
                                               0, 0, w, h, 
                                               0,0, out_size,out_size)
                                               --radius*2/radius_crop,radius*2/radius_crop);
	rot_img=imlib_create_rotated_image(angle*math.pi/180)
	imlib_context_set_image(rot_img)  
	imlib_save_image(fileOut)
	imlib_free_image()
	
	imlib_context_set_image(buffer)
	imlib_free_image()
	imlib_context_set_image(imageMoon)
	imlib_free_image()
end

function crop_moon(filename,xc,yc,radius)
	print ("crop moon")
	local surface = cairo_image_surface_create_from_png(filename)
	local img_w = cairo_image_surface_get_width (surface);
	
	local cw,ch = conky_window.width, conky_window.height
	local cs=cairo_xlib_surface_create(conky_window.display, conky_window.drawable, conky_window.visual, cw,ch)
	local cr=cairo_create(cs)
	cairo_translate(cr,xc-img_w/2,yc-img_w/2)
	cairo_arc (cr, img_w/2,img_w/2, radius, 0, 2*math.pi)
	cairo_clip (cr)
	cairo_new_path (cr)	
	cairo_set_source_surface (cr, surface, 0, 0)

	cairo_paint (cr)
	cairo_destroy(cr)
	cairo_surface_destroy (cs)
	cairo_surface_destroy (surface)
	
end

function display_moon(filename,xc,yc,radius,angle)
    if conky_window == nil then return end

	if tonumber(conky_parse('${updates}')) <2  then return end
	local moonpng = filename .. ".png"
	local actual_time  = os.time()
	if last_time == nil then last_time=0 end
	local actual_moon = io.open(moonpng,"r")	
	
	radius_crop = 0.90
	
	if  last_time+3600 < actual_time or last_time == 0 or actual_moon == nil then
		print ('convert moon file every hour')
		convert_moon(filename,moonpng,radius,angle)
		last_time=actual_time
	end
	crop_moon(moonpng,xc,yc,radius)
	
	io.close()
end


--[[END OF MOON WIDGET]]

function conky_main(filename)
    if conky_window == nil then return end
	display_moon(filename,
				300,300,100, 	--xc,yc,radius
				10			--angle
				
	)
end

Et voilà, c'était un peu long ...
moon2.th.png
L'horloge et le calendrier (dernières versions) sont disponibles ici :
http://dl.free.fr/oCSKZv6zG

Hors ligne

#1796 Le 06/04/2010, à 19:55

JB-home

Re : (3) Conky : Postez vos conkyrc ou certaines parties intéressantes

salut wlourf,

il y a quelques temps que je suis intéressé par ton calendrier, comment je doit procédé pour pouvoir l'afficher de cette manière --> http://picasaweb.google.com/wlourf/WheelCalendar#5426716019224309538

où de cette façon -> http://fc09.deviantart.net/fs51/f/2009/303/c/4/RadioSpace_conky_by_arpinux.png

merci

Dernière modification par z0rg> (Le 06/04/2010, à 20:16)

Hors ligne

#1797 Le 06/04/2010, à 23:51

JB-home

Re : (3) Conky : Postez vos conkyrc ou certaines parties intéressantes

Mon nouveau Bureau que je n'est pas encore terminé :

Sans conky
201004062346561440x900s.th.png

Avec conky
zdesktop.th.png

j'utilise 2fond d'écran différent, un pour conky et un autre sans, j'utilise feh à la place de nitrogen car il permet de choisir le fond d'écran en ligne de commande, pratique à intégré dans un script...

le fond d'écran d'origine --> http://fc02.deviantart.net/fs30/f/2008/115/5/0/Linux_by_PsychoNix.jpg

Dernière modification par z0rg> (Le 06/04/2010, à 23:58)

Hors ligne

#1798 Le 07/04/2010, à 08:14

wlourf

Re : (3) Conky : Postez vos conkyrc ou certaines parties intéressantes

z0rg> a écrit :

salut wlourf,

il y a quelques temps que je suis intéressé par ton calendrier, comment je doit procédé pour pouvoir l'afficher de cette manière --> http://picasaweb.google.com/wlourf/WheelCalendar#5426716019224309538

où de cette façon -> http://fc09.deviantart.net/fs51/f/2009/303/c/4/RadioSpace_conky_by_arpinux.png

merci

le deuxième lien n'est pas fait avec le calendrier à mon avis ou alors c'est trés bien customisé !
Pour afficher le calendrier "wheel" qui veut dire "roue" en vertical, c'est un peu tiré par les cheveux puisqu'à l'origine, ce n'est pas fait pour ça : pour avoir un affichage vertical, il faut avoir un cercle de rayon infini ce qui n'est pas si simple avec nos résolutions d'écran tongue

Donc, dans calendar.lua (version 1.4), il faut remplacer "local fleche = radius" par

local fleche = 0.01

Et pour appeler le calendrier, il faut utiliser ces paramètres, j'ai dû rajouter quelques calculs et j'en ai profité pour traduire les explications :

dofile("/home/ll/scripts/calendar_wheel_1.4/calendar.lua")

function conky_main()
    if conky_window==nil then return end
    local yc=conky_window.height/2
    local corde=conky_window.height
    local fleche=0.01
    local radius=(corde^2+4*fleche^2)/(8*fleche)
    local delta=10 --décalage du bord de la fenêtre conky
    local xc=-radius+delta --pour affichage à gauche, mettre align_right =false
    --local xc=radius+conky_window.width-delta --pour affichage à droite, mettre align_right =true

    calendar_widget(xc,yc,            --xc,yc       - centre du cercle, par rapport au coin en haut à gauche de la fenêtre conky
                radius,                --radius     - rayon du cercle extérieur
                1,                    --ratio_arc  - rayon du cercle intérieur, en pourcentage du cercle extérieur (valeurs de 0 à 1)
                20,                    --range      - nombre de jours à afficher avant et après aujourd'hui (si range = 30 --> 60 jours seront affichés))
                0xCCCCFF,            --wday_color - couleur d'un jour de semaine
                0xFFFF77,            --eday_color - couleur d'un samedi ou dimanche + jours fériés définis dans calendar.txt
                0xFF0000,            --dday_color - couleur d'aujourd'hui
                0xFFFFFF,            --info_color - couleur du texte d'information (lu dans calendar.txt)
                0.1,                --info_alpha - alpha du texte d'information
                true,                --vgradient  - gradient vertical (pour le cercle et les dates (true/false)
                0,                    --hgradient  - gradient horizontal pour le cercle (0 à 1, 0 est le meilleur choix pour un effet "Lune")
                "Japan",            --font       - plice à utiliser
                12,                    --font_size  - taille de la police
                4,                    --text_offset    - (>=0) pour aligner  le texte avec la hauteur des segments du cercle
                                    -- cette valeur doit être ajustée après avoir défini le range et la police
                24,                    --font_size_info - taille de la police pour le text d'info
                0,                    --today_xoffset  - décalage horizontal de la date du jour ( en pixels)
                0,                    --today_yoffset  - décalage vertical, dans le cercle, de la date du jour (valeur entre -range to + range)?
                false,                --align_right    - affichage sur le coté droit de l'écran  (true/false)
                "%a %d %b",         --date_format    - format de la date
                                    -- voir http://www.lua.org/pil/22.1.html pour les formats possibles
                220,220                --txt_x, txt_y   - coordinées du text d'info
                )
                    
        
end

Voilà, les seuls paramètres dont tu as à te soucier dans un premier temps sont yc et delta, bon courage

Hors ligne

#1799 Le 07/04/2010, à 10:10

Fenouille84

Re : (3) Conky : Postez vos conkyrc ou certaines parties intéressantes

@ z0rg
Très joli bureau !! J'étais sur que t'allais faire un truc dans ce genre !! lol
C'est réussi en tout cas !!

Et sinon, je ne suis pas d'accord avec toi :

z0rg a écrit :

j'utilise feh à la place de nitrogen car il permet de choisir le fond d'écran en ligne de commande.

Nitrogen est très bien capable de changer le fond d'écran via une ligne de commande.
Certes, il n'y a pas une commande dédiée à cette fonction, mais tout est possible tongue Il suffit de remplacer la ligne du fichier de config par la bonne.

Basiquement, en console, sa donne sa :

sed -i '/file/c file=/nom/de/ta/photo.jpg' ~/.config/nitrogen/bg-saved.cfg ; nitrogen --restore

Certes, après on peut faire un script et rajouter une interface graphique pour faire un choix d'image dans un dossier.
On peut même, si on est fou, rajouter un raccourci clavier au script... roll

Ok, j'arrête  lol tongue


Ma page Deviant Art : conky inside ;-)
.
-- DropBox (online backup) : 2Go + 250 Mo pour vous et moi par parrainage --

Hors ligne

#1800 Le 07/04/2010, à 13:22

EricG

Re : (3) Conky : Postez vos conkyrc ou certaines parties intéressantes

Bonjour,

J'ai voulu faire un conky discret, non pas un truc de ouf, non, tout simple, pour des écrans de 1680. En 1024 ça peut aller, avec une modification. Juste une petite ligne en bas ; avec des fenêtres grandes ouvertes, on peut conserver un œil dessus.

Pour ce qui est des wallpapers, j'ai trouvé un bon site, et deux exemples :

http://dreamdesktop.net/en/wallpaper/btduiwxsfjxtuljwutyauiwlsnmhiugj.htm
http://dreamdesktop.net/en/wallpaper/mnfcybcftqfwkavjmshhglfnjewrhyau.htm

Le dernier des deux est peut être mon préféré.

À cette heure-ci, mon bureau ressemble à ça :

bureaua.th.jpg

Voilà le script :

use_xft yes
xftfont Liberation Sans:style=Bold:size=8

update_interval 1
total_run_times 0
double_buffer yes
text_buffer_size 512

own_window yes
own_window_type override
own_window_transparent no
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager

minimum_size 1680 15
maximum_width 1680

default_color white
draw_shades no
draw_graph_borders yes
draw_outline no

color0 white
color1 ff8000

alignment bottom_right
gap_x 0
gap_y 0

no_buffers no
net_avg_samples 2

override_utf8_locale yes

TEXT
CPU 1 : ${color1}${cpu cpu 1} %${color0} ${goto 80}${exec expr `cat /sys/bus/platform/devices/coretemp.0/temp1_input` / 1000} °C | ${goto 116}${color0}CPU 2 : ${color1}${cpu cpu 2} %${color0} ${goto 191}${exec expr `cat /sys/bus/platform/devices/coretemp.1/temp1_input` / 1000} °C | ${goto 227}${color0}RAM : ${color1}$memperc %${color0} | ${goto 295}Proc. : ${color1}${top name 1}${color0}${goto 420}CPU${color1}${top cpu 1}${color0}${goto 482}RAM${color1}${top mem 1}${color0}${goto 534} | Root : ${color1}${fs_free_perc /} %${color0} ${goto 612}${fs_free /}${goto 652} | Home : ${color1}${fs_free_perc /home} %${color0} ${goto 734}${execi 120 hddtemp /dev/sda -n --unit=C} °C ${if_existing /proc/net/route eth0}${goto 764}| ${voffset -1}${font PizzaDude Bullets:size=8}O${font} ${color1}${upspeedf eth0} KiB/S${color0} ${GOTO 847}${upspeedgraph eth0 8,60}${goto 912} ${voffset -1}${font PizzaDude Bullets:size=8}U${font} ${color1}${downspeedf eth0} KiB/S${color0} ${GOTO 992}${downspeedgraph eth0 8,60}${goto 1060}IP : ${color1}${execi 10800 ~/.scripts/ip.sh}${color0}${endif}${alignr}${time %A} ${time %d} ${time %B} 20${time %y} | ${time %H}${time :%M}${time :%S}

Hors ligne