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.

#226 Le 18/05/2013, à 18:09

loutch

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

RE

Voila ce que j'ai réussi à faire grâce à votre aide sur ma mageia 2 KDE

1368896484.png

Encore merci @tous et

@+

Hors ligne

#227 Le 18/05/2013, à 18:16

Didier-T

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

loutch a écrit :

RE

Voila ce que j'ai réussi à faire grâce à votre aide sur ma mageia 2 KDE

1368896484.png
Encore merci @tous et

@+

c'est pas mal du tout, en plus, tu n'a pas eut besoins de beaucoup d'aide, on peut même dire que tu la fait seul.

j'ai une petite question, pour la météo, tu utilise quoi ?

Dernière modification par Didier-T (Le 18/05/2013, à 18:22)

Hors ligne

#228 Le 18/05/2013, à 18:26

loutch

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

re

Le conky météo 6jours d'un certain Didier-T wink  Que j'ai mis à ma sauce (faudra lui demandé si tu le voit si cela ne le dérange pas) wink wink

@+

Dernière modification par loutch (Le 18/05/2013, à 18:28)

Hors ligne

#229 Le 18/05/2013, à 18:32

Didier-T

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

Je pense que sa le gène, au contraire. cool

Hors ligne

#230 Le 18/05/2013, à 18:36

loutch

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

Donc si un jour on se croise je lui offrirais  un café pour me faire pardonner lol

Hors ligne

#231 Le 19/05/2013, à 19:21

vin100vin

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

J'aimerais installer ce "slackware inspired conky" http://0x6c756b65.deviantart.com/art/sl … -207760045
Mais je ne m'en sors pas. Quelqu'un pourrait m'aider ?


Xubuntu 22.04 sur ThinkPad P14s Gen 2 // Xubuntu 22.04 LTS sur LDLC Aurore NJ5S-16-S9

Hors ligne

#232 Le 19/05/2013, à 21:03

Didier-T

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

vin100vin a écrit :

J'aimerais installer ce "slackware inspired conky" http://0x6c756b65.deviantart.com/art/sl … -207760045
Mais je ne m'en sors pas. Quelqu'un pourrait m'aider ?

salut vin100vin,
sa coince ou ?

Hors ligne

#233 Le 20/05/2013, à 08:53

ljere

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

j'ai testé le conky et tout fonctionne parfaitement
capturedcran-20052013-095104.php
il faut que tu nous en dis plus pour savoir ou ça coince


ancien PC Toshiba satellite_c670d-11 / Linux Mint 21 Vanessa
Nouveau PC ASUS TUF GAMING A17 GPU RTX 4070 CPU AMD Ryzen 9 7940HS w/ Radeon 780M Graphics / Linux Mint 21.2 Victoria / Kernel: 6.4.8-1-liquorix / Desktop: Cinnamon

Hors ligne

#234 Le 20/05/2013, à 09:03

enebre

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

Bonjour Didier,
Rien ne va plus, cpu 100% + freeze et pas de données...
Bon c'est normal, il pleut un crachin déprimant.  cool

Hors ligne

#235 Le 20/05/2013, à 09:04

Didier-T

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

tu utilise les scripts que je t'avais transmit par mail ?

Hors ligne

#236 Le 20/05/2013, à 09:40

enebre

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

Salut Didier,
Oups ! sorry
C'est ça je n'avais pas vu la pièce jointe du mail, ça fonctionne superbement bien, cool
Je me pose la question :  le lanceur peut il être fermé par un "exit" parce qu'il  apparaît dans le gestionnaire de processus et j'ai déjà vu cette commande en fin d'un .sh ?

Hors ligne

#237 Le 20/05/2013, à 09:48

Didier-T

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

en fait, si tu ferme le lanceur, quand le conky est lancé, je ne suis pas certain que le webdriver soit bien arrêté a l’arrêt du conky.
la pour tout arrêter il suffit de tuer le conky.

Hors ligne

#238 Le 20/05/2013, à 09:52

enebre

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

Je comprends et ça fonctionne impec, c'était surtout pour mon information personnelle et tu as répondu parfaitement à ce questionnement.
Un grand merci pour ce conky, ça c'est révélé plus complexe que je ne l'ai imaginé. roll

Dernière modification par enebre (Le 20/05/2013, à 09:53)

Hors ligne

#239 Le 20/05/2013, à 09:57

Didier-T

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

Et oui, les joies du java script, pour l'identification. Sinon, sa aurait été bien plus simple big_smile

Hors ligne

#240 Le 22/05/2013, à 19:43

Sfroumptch

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

Nouveau conky.
J'ai enfin compris comment fonctionne la semi-transparence avec gimp roll

1369248435.png

Dernière modification par Sfroumptch (Le 22/05/2013, à 19:47)


S'il n'y a pas de solution, c'est qu'il n'y a pas de problème!

Hors ligne

#241 Le 24/05/2013, à 17:24

Vaykadji

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

Un conky basique :

# temps pour fermer conky en seconde. 0 = toujours actif 
total_run_times 0

# affiche le texte sur la sortie standard
out_to_console no

# réglage de la mémoire, pour éviter le clignotement
double_buffer yes
# Soustraire les mémoires tampons de la mémoire utilisée
no_buffers yes
text_buffer_size 2048

# taux de rafraichissement de la fenêtre (en secondes)
update_interval 1

# nombre d'échantillons à utiliser pour calculer la moyenne d'utilisation
cpu_avg_samples 4
net_avg_samples 2

# taille et positon
alignment top_right
minimum_size 200 180
maximum_width 200

# écart avec le bord x=gauche ou droit y= haut ou bas
gap_x 35
gap_y 55

#  afficher les ombres
draw_shades yes
# afficher des contours
draw_outline no
# contours autour des blocs de texte
draw_borders no
# largeur du contour
border_width 0

#pour que conky tourne en arrière plan background no pour les tests
background no

# utiliser sa propre fenêtre
own_window yes
#type de fenêtre : normal(avec le cadre) / override / desktop
own_window_type override
#pseudo transparence si vous avez des icones sous le conky elle ne seront plus accessibles une fois conky activé
own_window_transparent yes

# Utiliser Xft (polices lissées etc)
use_xft yes
xftalpha 0.5
override_utf8_locale yes # force UTF8

#police a utiliser : use_xft doit être a "yes"
xftfont caviar dreams:size=8
# Tout le texte en majuscule
uppercase no

# Ajoute des espaces après certains objets pour éviter de les faire bouger.
# Fonctionne uniquement avec les polices Fixes
use_spacer right

# Couleurs
default_color FFFFFF #blanc
default_shade_color 000000 #noir
default_outline_color black


TEXT
#DATE
${voffset 8}${color FF6600}${font caviar dreams:size=16}${time %A}${font}${voffset -8}${alignr 50}${color FFFFFF}${font caviar dreams:size=38}${time %e}${font}
${color FFFFFF}${voffset -30}${color FFFFFF}${font caviar dreams:size=18}${time %b}${font}${voffset 0} ${color FFFFFF}${font caviar dreams:size=20}${time %Y}${font}${color FF6600}${hr}
#INFOS CPU-RAM-BAT
${goto 0}${voffset 35}${color FF6600}CPU ${color FFFFFF}${cpu cpu0}%${color FFFFFF}${goto 82}${memperc}%${goto 150}${color FF6600}${goto 55}RAM${goto 150}${color FFFFFF}${goto 160}${battery_percent}%${color FF6600}${goto 115}Batterie

#INFOS SYSTEME
${color FF6600}${font caviar dreams:size=8}${alignr}${nodename}
${color FF6600}${font caviar dreams:size=8}${alignr}${pre_exec cat /etc/issue.net}  $machine
${color FF6600}${font caviar dreams:size=8}${alignr}Kernel: ${kernel}

conky basique

Dernière modification par Vaykadji (Le 25/05/2013, à 11:06)

Hors ligne

#242 Le 24/05/2013, à 17:46

ljere

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

tu aurais du le mettre en entier, sinon pour l'avoir testé en avant première il fonctionne très bien wink


ancien PC Toshiba satellite_c670d-11 / Linux Mint 21 Vanessa
Nouveau PC ASUS TUF GAMING A17 GPU RTX 4070 CPU AMD Ryzen 9 7940HS w/ Radeon 780M Graphics / Linux Mint 21.2 Victoria / Kernel: 6.4.8-1-liquorix / Desktop: Cinnamon

Hors ligne

#243 Le 28/05/2013, à 10:16

ragamatrix

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

@Didier-T
Salut;
Je crois que j'ai une fuite de ressources dans un script ring.lua. Tu m'avais décrit comment annuler ce genre de problème avec un autre mais je ne retrouve pas cette réponse.
Je me rappelle seulement qu'il s'agissait de ce genre de syntaxe dans le script lua:

tolua.takeownership(matrix1)

tolua.takeownership(te)

.
Mais je ne sais pas où placer ces phrases dans ce script:
rings.lua:

--[[ RINGS with SECTORS widget
	v1.1 by wlourf (07 Jan. 2011)
	this widget draws a ring with differents effects 
	http://u-scripts.blogspot.com/2010/08/rings-sectors-widgets.html
	
To call the script in a conky, use, before TEXT
	lua_load /path/to/the/script/rings.lua
	lua_draw_hook_pre main_rings
and add one line (blank or not) after TEXT


Parameters are :
3 parameters are mandatory
name		- the name of the conky variable to display,
			  for example for {$cpu cpu0}, just write name="cpu"
arg			- the argument of the above variable,
			  for example for {$cpu cpu0}, just write arg="cpu0"
		  	  arg can be a numerical value if name=""
max			- the maximum value the above variable can reach,
			  for example for {$cpu cpu0}, just write max=100
	
Optional parameters:
xc,yc		- coordinates of the center of the ring,
			  default = middle of the conky window
radius		- external radius of the ring, in pixels,
			  default = quarter of the width of the conky window
thickness	- thickness of the ring, in pixels, default = 10 pixels
start_angle	- starting angle of the ring, in degrees, value can be negative,
			  default = 0 degree
end_angle	- ending angle of the ring, in degrees,
			  value must be greater than start_angle, default = 360 degrees
sectors		- number of sectors in the ring, default = 10
gap_sectors - gap between two sectors, in pixels, default = 1 pixel
cap			- the way to close a sector, available values are
				"p" for parallel , default value 
				"r" for radial (follow the radius)
inverse_arc	- if set to true, arc will be anticlockwise, default=false
border_size	- size of the border, in pixels, default = 0 pixel i.e. no border
fill_sector	- if set to true, each sector will be completely filled,
			  default=false, this parameter is inoperate if sectors=1
background	- if set to false, background will not be drawn, default=true
foreground	- if set to false, foreground will not be drawn, default=true

Colours tables below are defined into braces :
{position in the gradient (0 to 1), colour in hexadecimal, alpha (0 to 1)}
example for a single colour table : 
{{0,0xFFAA00,1}} position parameter doesn't matter
example for a two-colours table : 
{{0,0xFFAA00,1},{1,0x00AA00,1}} or {{0.5,0xFFAA00,1},{1,0x00AA00,1}}
example for a three-colours table : 
{{0,0xFFAA00,1},{0.5,0xFF0000,1},{1,0x00AA00,1}}

bg_colour1	- colour table for background,
			  default = {{0,0x00ffff,0.1},{0.5,0x00FFFF,0.5},{1,0x00FFFF,0.1}}
fg_colour1	- colour table for foreground,
			  default = {{0,0x00FF00,0.1},{0.5,0x00FF00,1},{1,0x00FF00,0.1}}
bd_colour1	- colour table for border,
			  default = {{0,0xFFFF00,0.5},{0.5,0xFFFF00,1},{1,0xFFFF00,0.5}}			  

Seconds tables for radials gradients :
bg_colour2	- second colour table for background, default = no second colour
fg_colour2	- second colour table for foreground, default = no second colour
bd_colour2	- second colour table for border, default = no second colour

draw_me     - if set to false, text is not drawn (default = true or 1)
              it can be used with a conky string, if the string returns 1, the text is drawn :
              example : "${if_empty ${wireless_essid wlan0}}${else}1$endif",

v1.0 (08 Aug. 2010) original release
v1.1 (07 Jan. 2011) Add draw_me parameter and correct memory leaks, thanks to "Creamy Goodness"
                    text is parsed inside the function, not in the array of settings

--      This program is free software; you can redistribute it and/or modify
--      it under the terms of the GNU General Public License as published by
--      the Free Software Foundation version 3 (GPLv3)
--     
--      This program is distributed in the hope that it will be useful,
--      but WITHOUT ANY WARRANTY; without even the implied warranty of
--      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
--      GNU General Public License for more details.
--     
--      You should have received a copy of the GNU General Public License
--      along with this program; if not, write to the Free Software
--      Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
--      MA 02110-1301, USA.		

]]


require 'cairo'

function conky_main_rings()
-- START PARAMETERS HERE
local rings_settings={
	--line1
   
	{
	name="cpu",
	arg="%S",
	max=100,
	xc=530,
	yc=45,
	thickness=4,
	radius=18,
	sectors=100,
 	gap_sectors=0,
	bg_colour1={{0,0xFFFFFF,0.1},{0.5,0xFFFFFF,0.4},{1,0xFFFFFF,0.1}},
	fg_colour1={{0,0x00FF00,0.1},{0.5,0x00FF00,1.0},{1,0x00FF00,0.1}},
	fg_colour2={{0,0xFF0000,0.1},{0.5,0xFF0000,1.0},{1,0xFF0000,0.1}},
	},

	{
	name="memperc",
	arg="%S",
	max=100,
	xc=600,
	yc=45,
	thickness=4,
	radius=18,
	sectors=100,
	gap_sectors=0,
	start_angle=0,
	end_angle=360,
	bg_colour1={{0,0xFFFFFF,0.1},{0.5,0xFFFFFF,0.6},{1,0xFFFFFF,0.1}},
	fg_colour1={{0,0xFFFF00,0.1},{0.5,0xFFFF00,1.0},{1,0xFFFF00,0.1}},
	fg_colour2={{0,0xFF0000,0.1},{0.5,0xFF0000,1.0},{1,0xFF0000,0.1}},
	},

	{
	name="cpu",
	arg="cpu0",
	max=100,
	xc=670,
	yc=45,
	thickness=4,
	radius=18,
	sectors=100,
 	gap_sectors=0,
	bg_colour1={{0,0xFFFFFF,0.1},{0.5,0xFFFFFF,0.4},{1,0xFFFFFF,0.1}},
	fg_colour1={{0,0x00FF00,0.1},{0.5,0x00FF00,1.0},{1,0x00FF00,0.1}},
	fg_colour2={{0,0xFF0000,0.1},{0.5,0xFF0000,1.0},{1,0xFF0000,0.1}},
	},
	
	
}
--END OF PARAMETERS HERE

--main function

	--if conky_window==nil then return end
if conky_window==nil then return end
	local cs=cairo_xlib_surface_create(conky_window.display, conky_window.drawable, conky_window.visual, conky_window.width, conky_window.height)
    local cr=cairo_create(cs)
	local cr=cairo_create(cs)

	if tonumber(conky_parse('${updates}'))>3 then
		for i in pairs(rings_settings) do
			draw_ring(cr,rings_settings[i])
		end
	end

	cairo_destroy(cr)

end




function draw_ring(cr, t)

	local function rgba_to_r_g_b_a(tcolour)
		local colour,alpha=tcolour[2],tcolour[3]
		return ((colour / 0x10000) % 0x100) / 255., 
			((colour / 0x100) % 0x100) / 255., (colour % 0x100) / 255., alpha
	end
			
			
	local function calc_delta(tcol1,tcol2)
		--calculate deltas P R G B A to table_colour 1

		for x = 1, #tcol1 do
			tcol1[x].dA	= 0
			tcol1[x].dP = 0
	 		tcol1[x].dR = 0
			tcol1[x].dG = 0
			tcol1[x].dB = 0
			if tcol2~=nil and #tcol1 == #tcol2 then
				local r1,g1,b1,a1 = rgba_to_r_g_b_a(tcol1[x])
				local r2,g2,b2,a2 = rgba_to_r_g_b_a(tcol2[x])
				tcol1[x].dP = (tcol2[x][1]-tcol1[x][1])/t.sectors
		 		tcol1[x].dR = (r2-r1)/t.sectors
				tcol1[x].dG = (g2-g1)/t.sectors
				tcol1[x].dB = (b2-b1)/t.sectors
				tcol1[x].dA = (a2-a1)/t.sectors		
				
			end
		end
		
		return tcol1
	end

	--check values
	local function setup(t)
		if t.name==nil and t.arg==nil then 
			print ("No input values ... use parameters 'name'" +
				" with 'arg' or only parameter 'arg' ") 
			return
		end

		if t.max==nil then
			print ("No maximum value defined, use 'max'")
			print ("for name=" .. t.name)
			print ("with arg=" .. t.arg)
			return
		end
		if t.name==nil then t.name="" end
		if t.arg==nil then t.arg="" end

		if t.xc==nil then t.xc=conky_window.width/2 end
		if t.yc==nil then t.yc=conky_window.height/2 end
		if t.thickness ==nil then t.thickness = 10 end
		if t.radius ==nil then t.radius =conky_window.width/4 end
		if t.start_angle==nil then t.start_angle =0 end
		if t.end_angle==nil then t.end_angle=360 end
		if t.bg_colour1==nil then 
			t.bg_colour1={{0,0x00ffff,0.1},{0.5,0x00FFFF,0.5},{1,0x00FFFF,0.1}}
		end
		if t.fg_colour1==nil then
			t.fg_colour1={{0,0x00FF00,0.1},{0.5,0x00FF00,1},{1,0x00FF00,0.1}}
		end
		if t.bd_colour1==nil then
			t.bd_colour1={{0,0xFFFF00,0.5},{0.5,0xFFFF00,1},{1,0xFFFF00,0.5}}
		end
		if t.sectors==nil then t.sectors=10 end
		if t.gap_sectors==nil then t.gap_sectors=1 end 
		if t.fill_sector==nil then t.fill_sector=false end
		if t.sectors==1 then t.fill_sector=false end
		if t.border_size==nil then t.border_size=0 end
		if t.cap==nil then t.cap="p" end
		--some checks
		if t.thickness>t.radius then t.thickness=t.radius*0.1 end
		t.int_radius = t.radius-t.thickness

		--check colors tables 
		for i=1, #t.bg_colour1 do 
			if #t.bg_colour1[i]~=3 then t.bg_colour1[i]={1,0xFFFFFF,0.5} end
		end
		for i=1, #t.fg_colour1 do 
			if #t.fg_colour1[i]~=3 then t.fg_colour1[i]={1,0xFF0000,1} end
		end
		for i=1, #t.bd_colour1 do 
			if #t.bd_colour1[i]~=3 then t.bd_colour1[i]={1,0xFFFF00,1} end
		end
	
		if t.bg_colour2~=nil then
			for i=1, #t.bg_colour2 do 
				if #t.bg_colour2[i]~=3 then t.bg_colour2[i]={1,0xFFFFFF,0.5} end
			end
		end
		if t.fg_colour2~=nil then
			for i=1, #t.fg_colour2 do 
				if #t.fg_colour2[i]~=3 then t.fg_colour2[i]={1,0xFF0000,1} end
			end
		end
		if t.bd_colour2~=nil then
			for i=1, #t.bd_colour2 do 
				if #t.bd_colour2[i]~=3 then t.bd_colour2[i]={1,0xFFFF00,1} end
			end
		end 	
		
		if t.start_angle>=t.end_angle then
		 local tmp_angle=t.end_angle
		 t.end_angle= t.start_angle
		 t.start_angle = tmp_angle
		 -- print ("inversed angles")
			if t.end_angle-t.start_angle>360 and t.start_angle>0 then
				t.end_angle=360+t.start_angle
				print ("reduce angles")
			end
		
			if t.end_angle+t.start_angle>360 and t.start_angle<=0 then
				t.end_angle=360+t.start_angle
				print ("reduce angles")
			end
		
			if t.int_radius<0 then t.int_radius =0 end
			if t.int_radius>t.radius then
				local tmp_radius=t.radius
				t.radius=t.int_radius
				t.int_radius=tmp_radius
				print ("inversed radius")
			end
			if t.int_radius==t.radius then
				t.int_radius=0
				print ("int radius set to 0")
			end 
		end
		
		t.fg_colour1 = calc_delta(t.fg_colour1,t.fg_colour2)
		t.bg_colour1 = calc_delta(t.bg_colour1,t.bg_colour2)
		t.bd_colour1 = calc_delta(t.bd_colour1,t.bd_colour2)
	end
	
	if t.draw_me == true then t.draw_me = nil end
	if t.draw_me ~= nil and conky_parse(tostring(t.draw_me)) ~= "1" then return end	
	--initialize table
	setup(t)
	
	--initialize cairo context
	cairo_save(cr)
	cairo_translate(cr,t.xc,t.yc)
	cairo_set_line_join (cr, CAIRO_LINE_JOIN_ROUND)
	cairo_set_line_cap (cr, CAIRO_LINE_CAP_ROUND)

	--get value
	local value = 0
	if t.name ~="" then
		value = tonumber(conky_parse(string.format('${%s %s}', t.name, t.arg)))
	else
		value = tonumber(t.arg)
	end
	if value==nil then value =0 end

	--initialize sectors
	--angle of a sector :
	local angleA = ((t.end_angle-t.start_angle)/t.sectors)*math.pi/180
	--value of a sector : 
	local valueA = t.max/t.sectors
	--first angle of a sector : 
	local lastAngle = t.start_angle*math.pi/180


	local function draw_sector(type_arc,angle0,angle,valpc, idx)
	 
		--this function draws a portion of arc
	 	--type of arc, angle0 = strating angle, angle= angle of sector,
	 	--valpc = percentage inside the sector, idx = sctor number #
	 	local tcolor
		 if type_arc=="bg" then 		--background
			 if valpc==1 then return end
		 	tcolor=t.bg_colour1
		 elseif type_arc=="fg" then	--foreground
		 	if valpc==0 then return end
		 	tcolor=t.fg_colour1
		 elseif type_arc=="bd" then	--border
		 	tcolor=t.bd_colour1
		 end 

		--angles equivalents to gap_sector
		local ext_delta=math.atan(t.gap_sectors/(2*t.radius))
		local int_delta=math.atan(t.gap_sectors/(2*t.int_radius))

		--angles of arcs
		local ext_angle=(angle-ext_delta*2)*valpc
		local int_angle=(angle-int_delta*2)*valpc

		--define colours to use for this sector
		if #tcolor==1 then 
			--plain color
			local vR,vG,vB,vA = rgba_to_r_g_b_a(tcolor[1])
			cairo_set_source_rgba(cr,vR+tcolor[1].dR*idx,
									vG+tcolor[1].dG*idx,
									vB+tcolor[1].dB*idx,
									vA+tcolor[1].dA*idx	)
		else
			--radient color
			local pat=cairo_pattern_create_radial(0,0,t.int_radius,0,0,t.radius)
			for i=1, #tcolor do
				local vP,vR,vG,vB,vA = tcolor[i][1], rgba_to_r_g_b_a(tcolor[i])
				cairo_pattern_add_color_stop_rgba (pat, 
									vP+tcolor[i].dP*idx,
									vR+tcolor[i].dR*idx,
									vG+tcolor[i].dG*idx,
									vB+tcolor[i].dB*idx,
									vA+tcolor[i].dA*idx	)
			end
			cairo_set_source (cr, pat)
			cairo_pattern_destroy(pat)
		end

		--start drawing
		 cairo_save(cr)
		--x axis is parrallel to start of sector
		cairo_rotate(cr,angle0-math.pi/2)

		local ri,re = t.int_radius ,t.radius

		--point A 
		local angle_a
	
		if t.cap == "p" then 
			angle_a = int_delta
			if t.inverse_arc and type_arc ~="bg" then
				angle_a = angle-int_angle-int_delta
			end
			if not(t.inverse_arc) and type_arc =="bg" then
				angle_a = int_delta+int_angle
			end
		else --t.cap=="r"
			angle_a = ext_delta
			if t.inverse_arc and type_arc~="bg" then
				angle_a = angle-ext_angle-ext_delta
			end
			if not(t.inverse_arc) and type_arc=="bg" then
				angle_a = ext_delta+ext_angle
			end
		end
		local ax,ay = ri*math.cos(angle_a),ri*math.sin(angle_a)


		--point B
		local angle_b = ext_delta
		if t.cap == "p" then 
			if t.inverse_arc and type_arc ~="bg" then
				angle_b = angle-ext_angle-ext_delta
			end
			if not(t.inverse_arc) and type_arc=="bg" then
				angle_b = ext_delta+ext_angle
			end
		else
			if t.inverse_arc and type_arc ~="bg" then
				angle_b = angle-ext_angle-ext_delta
			end
			if not(t.inverse_arc) and type_arc=="bg" then
				angle_b = ext_delta+ext_angle
			end
		end
		local bx,by = re*math.cos(angle_b),re*math.sin(angle_b)

		-- EXTERNAL ARC B --> C
		local b0,b1
		if t.inverse_arc then
			if type_arc=="bg" then
				b0,b1= ext_delta, angle-ext_delta-ext_angle
			else
				b0,b1= angle-ext_angle-ext_delta, angle-ext_delta
			end
		else
			if type_arc=="bg" then
				b0,b1= ext_delta+ext_angle, angle-ext_delta
			else
				b0,b1= ext_delta, ext_angle+ext_delta
			end
		end
		
		---POINT D
		local angle_c, angle_d
		if t.cap == "p" then 
			angle_d = angle-int_delta
			if t.inverse_arc and type_arc=="bg" then
				angle_d = angle-int_delta-int_angle	
			end
			if not(t.inverse_arc) and type_arc~="bg" then
				angle_d=int_delta+int_angle
			end
		else
			angle_d = angle-ext_delta
			if t.inverse_arc and type_arc=="bg" then
				angle_d =angle-ext_delta-ext_angle
			end
			if not(t.inverse_arc) and type_arc~="bg" then
				angle_d = ext_angle+ext_delta
			end
		end
		local dx,dy = ri*math.cos(angle_d),ri*math.sin(angle_d)
		
		-- INTERNAL ARC D --> A
		local d0,d1
		if t.cap=="p" then	
			if t.inverse_arc then	
				if type_arc=="bg" then
					d0,d1= angle-int_delta-int_angle,int_delta
				else
					d0,d1= angle-int_delta, angle- int_angle-int_delta
				end
			else
				if type_arc=="bg" then
					d0,d1= angle-int_delta, int_delta+int_angle
				else
					d0,d1= int_delta+int_angle, int_delta
				end
			end
		else
			if t.inverse_arc then	
				if type_arc=="bg" then	
					d0,d1= angle-ext_delta-ext_angle,ext_delta
				else
					d0,d1= angle-ext_delta, angle- ext_angle-ext_delta
				end
			else
				if type_arc=="bg" then	
					d0,d1= angle-ext_delta,ext_delta+ext_angle
				else	
					d0,d1= ext_angle+ext_delta, ext_delta
				end
			end			
		end
			
		--draw sector
		cairo_move_to(cr,ax,ay)
		cairo_line_to(cr,bx,by)
		cairo_arc(cr,0,0,re,b0,b1)
		cairo_line_to(cr,dx,dy) 
		cairo_arc_negative(cr,0,0,ri,d0,d1)
		 cairo_close_path (cr);

		--stroke or fill sector
		 if type_arc=="bd" then
		 	cairo_set_line_width(cr,t.border_size)
		 	cairo_stroke(cr)
		 else
			 cairo_fill(cr)
		 end

		 cairo_restore(cr)

	 end
	--draw sectors
	local n0,n1,n2 = 1,t.sectors,1
	if t.inverse_arc then n0,n1,n2 = t.sectors,1,-1 end
	local index = 0
	for i = n0,n1,n2 do 
		index = index +1
		local valueZ=1
		local cstA, cstB = (i-1),i
		if t.inverse_arc then cstA,cstB = (t.sectors-i), (t.sectors-i+1) end
		
		if value>valueA *cstA and value<valueA*cstB then
			if not t.fill_sector then
				valueZ = (value-valueA*cstA)/valueA
			end
		else
			if value<valueA*cstB then valueZ=0 end
		end
		
		local start_angle= lastAngle+(i-1)*angleA
		if t.foreground ~= false then 
			draw_sector("fg",start_angle,angleA,valueZ, index)
		end
		if t.background ~= false then 
			draw_sector("bg",start_angle,angleA,valueZ, i)
		end
		if t.border_size>0 then draw_sector("bd",start_angle,angleA,1, i) end
	end

	cairo_restore(cr)
end


--[[END OF RING-SECTORS WIDGET]]  

C'est xorg qui grimpe anormalement en ressources mem et cpu ?

Hors ligne

#244 Le 28/05/2013, à 17:53

enebre

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

Salut ljere et Didier-T,
Pour la modification du petit conky-image afin qu'il ne doive pas sans cesse redimensionner les images, j'ai donc préparé toutes les images à la dimension voulue.
Ensuite je modifie votre script image comme ceci :
J'attends votre commentaire sur cette modif, je sais c'est pas grand chose à faire mais c'est une première pour moi. cool
Le plus laborieux à été de trouver les bonnes commandes pour transformer les images avec imagesmagick hmm
Ca fonctionne, le cpu est moins actif et le mini diaporama tourne smile ...mais est ce bien tongue ?

#!/bin/sh
# script pour conky image par ljere
# les variables 
#source="$HOME/.conky/conky-perso/conky-images/conky-image/images-raw/"
source="$HOME/.conky/conky-perso/conky-images/conky-image/images-raw/" # dossier ou sont les images
cible="$HOME/.conky/conky-perso/conky-images/conky-image/"  # dossier ou sera créé l'image pour être affiché par conky
# on choisi une image aléatoirement
fichier=`ls -1 $source | sort --random-sort | head -1`
mogrify -write $cible/image.jpg $source/$fichier
exit 0

Dernière modification par enebre (Le 28/05/2013, à 17:57)

Hors ligne

#245 Le 28/05/2013, à 18:03

Didier-T

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

ragamatrix a écrit :

@Didier-T
Salut;
Je crois que j'ai une fuite de ressources dans un script ring.lua. Tu m'avais décrit comment annuler ce genre de problème avec un autre mais je ne retrouve pas cette réponse.

...

C'est xorg qui grimpe anormalement en ressources mem et cpu ?

Ci c'est xorg qui déconne, il vas falloir attendre une mise a jour.
le script de wlourf que tu montre a déjà été optimisé pour les fuite de mémoire (c'est le cas de tous ses scripts dans leurs dernières mise a jour)

par contre, je ne comprend pas les arguments "%s" que tu as mis aux deux premiers rings hmm

Hors ligne

#246 Le 28/05/2013, à 18:05

Didier-T

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

@ enebre,

tu pourrais fournir le conky qui vas avec ce script, il y a certainement encore moyen de récupérer des ressources CPU.

En ce qui concerne le script, il va à l’essentiel, c'est très bien ainsi (enfin ce n'est que mon avis)

Dernière modification par Didier-T (Le 28/05/2013, à 18:06)

Hors ligne

#247 Le 28/05/2013, à 18:21

enebre

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

le conkyrc :

#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 2                     #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 512                 #Taille du cache pour le texte
  imlib_cache_size 4                    #Important pour afficher les images

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

#Fenêtre conky
  alignment tl	                        #Alignement
 #---
  minimum_size 240 150                  #Taille minimum (px) ; largeur / hauteur
  maximum_width 240                     #Largeur maximum (px)
 #---
  gap_x  260                            #Écart avec le bord gauche / droit
  gap_y   40                            #É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 0                        #Largeur du contour
  border_inner_margin 0                 #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
  own_window_argb_visual no 
  own_window_hints undecorated,below,sticky,skip_taskbar,skip_pagers

#Mise en forme
  use_xft no                            #Utiliser Xft (polices lissées etc)
  xftalpha 1                            #Utiliser Xft
  override_utf8_locale no               #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
 #---
  default_bar_size 82 3                 #Barre par défaut (longeur hauteur)
  stippled_borders 3                    #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 40CEFF                         #Bleu clair
  color2 D6D6D6                         #Argenté
  color3 AEAEBE                         #Gris
  color4 white                          #blanc
  color5 0778EC                         #bleu
 #---
  short_units yes                       #Unités courtes
  pad_percents 2                        #Unité à 2 décimales
TEXT
#${execi 30 $HOME/conky-image/image}
${execi 30 $HOME/.conky/conky-perso/conky-images/conky-image/image2} 
#${image $HOME/conky-image/image -p 0,0 -s 250x150} 
${image $HOME/.conky/conky-perso/conky-images/conky-image/image.jpg -p 0,0 -s}

Hors ligne

#248 Le 28/05/2013, à 19:58

Didier-T

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

@ enebre,

essaye donc avec ceci

je n'ai fais que deux petites modifs, déjà on laisse tranquille le cache pour les images, et on demande une mise à jour de l'image toute les minutes ( le -f 60 a la commande image). J'ai laissé le update_interval à 10 (même si je n'en vois pas l’intérêt)

#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 2                     #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 512                 #Taille du cache pour le texte
#  imlib_cache_size 4                    #Important pour afficher les images

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

#Fenêtre conky
  alignment tl	                        #Alignement
 #---
  minimum_size 240 150                  #Taille minimum (px) ; largeur / hauteur
  maximum_width 240                     #Largeur maximum (px)
 #---
  gap_x  260                            #Écart avec le bord gauche / droit
  gap_y   40                            #É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 0                        #Largeur du contour
  border_inner_margin 0                 #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
  own_window_argb_visual no 
  own_window_hints undecorated,below,sticky,skip_taskbar,skip_pagers

#Mise en forme
  use_xft no                            #Utiliser Xft (polices lissées etc)
  xftalpha 1                            #Utiliser Xft
  override_utf8_locale no               #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
 #---
  default_bar_size 82 3                 #Barre par défaut (longeur hauteur)
  stippled_borders 3                    #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 40CEFF                         #Bleu clair
  color2 D6D6D6                         #Argenté
  color3 AEAEBE                         #Gris
  color4 white                          #blanc
  color5 0778EC                         #bleu
 #---
  short_units yes                       #Unités courtes
  pad_percents 2                        #Unité à 2 décimales
TEXT
#${execi 30 $HOME/conky-image/image}
${execi 30 $HOME/.conky/conky-perso/conky-images/conky-image/image2} 
#${image $HOME/conky-image/image -p 0,0 -s 250x150} 
${image $HOME/.conky/conky-perso/conky-images/conky-image/image.jpg -p 0,0 -s -f 60}

Hors ligne

#249 Le 28/05/2013, à 20:05

enebre

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

ha ! oui, il est encore plus tranquille, superbe merci Didier

Hors ligne

#250 Le 28/05/2013, à 20:07

Didier-T

Re : [5] Conky : Postez vos conkyrc ou certaines parties intéressantes

de rien

Hors ligne