Contenu | Rechercher | Menus

Annonce

Si vous rencontrez des soucis à rester connecté sur le forum (ou si vous avez perdu votre mot de passe) déconnectez-vous et reconnectez-vous depuis cette page, en cochant la case "Me connecter automatiquement lors de mes prochaines visites".
Test de l'ISO d'Ubuntu francophone : nous avons besoin de testeurs pour la version francophone d'Ubuntu 14.04. Liens et informations ici.
nombre réponses : 11

#0 Re : -1 »  Postez vos scripts Lua pour Conky ! » Le 10/07/2010, à 16:30

GrindeR
Réponses : 278

Salut à tous,

cela fait déjà quelque temps que je travail sur conky, et la découverte de lua me pousse a refaire mon conky.
je m'en sors pas trop mal mais je bloque sur une chose:
comment faire un anneau pour la fonction "fs_used_perc" d'un disque non monté? comme
conky de soza971

j'ai observé sont code lua et je n'est rien de différent, mais mes anneaux pour ces disques non monté me retourne la même occupation que ma racine

2010-07-10-153712_580x190_scrot.png

settings_table = {
	{
		name='memperc',
		arg='',
		max=100,
		bg_colour=0xFFFFFF,
		bg_alpha=0.05,
		fg_colour=0x8B008B,
		fg_alpha=0.7,
		x=75, y=90,
		radius=50,
		thickness=10,
		start_angle=91,
		end_angle=270,
	},
	{
		name="execpi 8 awk '/Cached/ {print $2/1024}' /proc/meminfo | head -1",
		arg='',
		max=2048,
		bg_colour=0xFFFFFF,
		bg_alpha=0.05,
		fg_colour=0x9932CC,
		fg_alpha=0.7,
		x=75, y=90,
		radius=59,
		thickness=5,
		start_angle=91,
		end_angle=180,
	},
	{
		name="execpi 8 awk '/Buffers/ {print $2/(1024)}' /proc/meminfo",
		arg='',
		max=2048,
		bg_colour=0xFFFFFF,
		bg_alpha=0.05,
		fg_colour=0x9932CC,
		fg_alpha=0.7,
		x=75, y=90,
		radius=59,
		thickness=5,
		start_angle=181,
		end_angle=270,
	},
	{
		name='swapperc',
		arg='',
		max=100,
		bg_colour=0xFFFFFF,
		bg_alpha=0.05,
		fg_colour=0xBA55D3,
		fg_alpha=0.7,
		x=75, y=90,
		radius=65,
		thickness=5,
		start_angle=91,
		end_angle=270,
	},
	{
		name='execpi 8 sensors | grep -i "cpu temp" | cut -c 22-23',
		arg='',
		max=100,
		bg_colour=0xFFFFFF,
		bg_alpha=0.05,
		fg_colour=0xC71585,
		fg_alpha=0.7,
		x=185, y=90,
		radius=40,
		thickness=2,
		start_angle=50,
		end_angle=170,
	},
	{
		name='execpi 8 sensors | grep -i "mb Temp" | cut -c 22-23',
		arg='',
		max=100,
		bg_colour=0xFFFFFF,
		bg_alpha=0.05,
		fg_colour=0x9370DB,
		fg_alpha=0.7,
		x=185, y=90,
		radius=40,
		thickness=2,
		start_angle=-70,
		end_angle=50,
	},
	{
		name='cpu',
		arg='cpu1',
		max=100,
		bg_colour=0xFFFFFF,
		bg_alpha=0.05,
		fg_colour=0xBA55D3,
		fg_alpha=0.7,
		x=185, y=90,
		radius=45,
		thickness=5,
		start_angle=-89,
		end_angle=89,
	},
	{
		name='cpu',
		arg='cpu2',
		max=100,
		bg_colour=0xFFFFFF,
		bg_alpha=0.05,
		fg_colour=0x9932CC,
		fg_alpha=0.7,
		x=185, y=90,
		radius=51,
		thickness=5,
		start_angle=-89,
		end_angle=89,
	},
	{
		name='cpu',
		arg='cpu0',
		max=100,
		bg_colour=0xFFFFFF,
		bg_alpha=0.05,
		fg_colour=0x8B008B,
		fg_alpha=0.7,
		x=185, y=90,
		radius=60,
		thickness=10,
		start_angle=-89,
		end_angle=89,
	},
	{
		name='fs_used_perc',
		arg='/',
		max=100,
		bg_colour=0xFFFFFF,
		bg_alpha=0.05,
		fg_colour=0x8B008B,
		fg_alpha=0.7,
		x=295, y=90,
		radius=50,
		thickness=10,
		start_angle=91,
		end_angle=269,
	},
	{
		name='fs_used_perc',
		arg='/media/Ubuntu',
		max=100,
		bg_colour=0xFFFFFF,
		bg_alpha=0.05,
		fg_colour=0x9932CC,
		fg_alpha=0.7,
		x=295, y=90,
		radius=59,
		thickness=5,
		start_angle=91,
		end_angle=269,
	},
	{
		name='fs_used_perc',
		arg='/media/WIN-XP',
		max=100,
		bg_colour=0xFFFFFF,
		bg_alpha=0.05,
		fg_colour=0xBA55D3,
		fg_alpha=0.7,
		x=295, y=90,
		radius=65,
		thickness=5,
		start_angle=91,
		end_angle=269,
	},
	{
		name='fs_used_perc',
		arg='/home/grinder',
		max=100,
		bg_colour=0xFFFFFF,
		bg_alpha=0.05,
		fg_colour=0x8B008B,
		fg_alpha=0.7,
		x=405, y=90,
		radius=60,
		thickness=10,
		start_angle=-89,
		end_angle=89,
	},
}

require 'cairo'

function rgb_to_r_g_b(colour,alpha)
	return ((colour / 0x10000) % 0x100) / 255., ((colour / 0x100) % 0x100) / 255., (colour % 0x100) / 255., alpha
end

function draw_ring(cr,t,pt)
	local w,h=conky_window.width,conky_window.height

	local xc,yc,ring_r,ring_w,sa,ea=pt['x'],pt['y'],pt['radius'],pt['thickness'],pt['start_angle'],pt['end_angle']
	local bgc, bga, fgc, fga=pt['bg_colour'], pt['bg_alpha'], pt['fg_colour'], pt['fg_alpha']

	local angle_0=sa*(2*math.pi/360)-math.pi/2
	local angle_f=ea*(2*math.pi/360)-math.pi/2
	local t_arc=t*(angle_f-angle_0)

	-- Draw background ring

	cairo_arc(cr,xc,yc,ring_r,angle_0,angle_f)
	cairo_set_source_rgba(cr,rgb_to_r_g_b(bgc,bga))
	cairo_set_line_width(cr,ring_w)
	cairo_stroke(cr)

	-- Draw indicator ring

	cairo_arc(cr,xc,yc,ring_r,angle_0,angle_0+t_arc)
	cairo_set_source_rgba(cr,rgb_to_r_g_b(fgc,fga))
	cairo_stroke(cr)
end

function conky_ring_stats()
	local function setup_rings(cr,pt)
		local str=''
		local value=0

		str=string.format('${%s %s}',pt['name'],pt['arg'])
		str=conky_parse(str)

		value=tonumber(str)
		pct=value/pt['max']

		draw_ring(cr,pct,pt)
	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 updates=conky_parse('${updates}')
	update_num=tonumber(updates)

	if update_num>5 then
		for i in pairs(settings_table) do
			setup_rings(cr,settings_table[i])
		end
	end
end

#1 Re : -1 »  Postez vos scripts Lua pour Conky ! » Le 10/07/2010, à 20:02

GrindeR
Réponses : 278

je te le dis franchement j'ai pas tous compris!

Donc il faut que tu enlève ou ajoute dans settings_table les paramètres des partitions selon si elle sont monter ou non (pour celle susceptible de ne pas être monté).

j'en déduis qu'il faudrait que je rajoute un "if_mounted" quelque part dans les paramètre du dit anneaux, sauf que je viens d'éssayer plusieurs manière et sa me fait sauter tous les anneaux qui suivent dans la settings_table.
et la console me crache que lua n'arrive pas à calculer (pas étonnant)

Au mieux, tu met pas les partitions potentiellement non monté dans settings_table et tu fait un appel à setup_rings(dans conky_ring_stats) en passant le tableaux des paramètres qui faut (élément de settings_table correspondant à la partition).

ok je séche!
mais je comprend que je ne declare pas mes anneaux pour mes disques non monté dans la settings_table et que je les dessine au besoin si "monté" oui?
mais comment dans le code lua tu réalise ce test, car il faut bien testé , avant de dessiné sinon le preoblème reste le même!

en esperant que c'est clair ce coup si hmm

#2 Re : -1 »  Postez vos scripts Lua pour Conky ! » Le 11/07/2010, à 18:56

GrindeR
Réponses : 278

vous n'avez pas perdus de temps!!
j'en retiens de vos propositions plein de chose intéressante
tout particulierement le coup de

et encore, on a souvent des partitions qui sont obligatoirement montées, donc j'aurai ajouté un paramètre facultatif dans les tables : "verif" pour ne vérifier que les partitions nécessaires

maintenant j'ai essayer à la suite vos différentes propositions et je n'avais toujours pas le résultat attendus bien que tous paraissent logiques...
et la eurêka!
j'avais agrémenter mon "fstab" d'entrées pour gérer les différentes partitions supplémentaires, et donc j'avais créer les points de montages.

j'ai restaurer mon fstab d'origine et quand j'accède a la volée sur les dites partitions le point de montage ce  créer/détruit tout seul et la plus de problème!

je me sens bête du coup...

#3 Re : -1 »  Postez vos scripts Lua pour Conky ! » Le 22/07/2010, à 12:14

GrindeR
Réponses : 278

J'ai été faire un tour sur le fofo russe la où vous avez trouvés le calendrier/boussole en début de topic

ils ont faits plusieurs scripts très intéressants et je suis en train d'essayer de mixer le texte en cerle avec mon script mais ça fonctionne pas vraiment.
au début ça allais comme j'utilisais le code greffon à l'état brut, mais j'ai voulus le modifier pour pouvoir utiliser une table de paramètre et la patatras!! ça veux pas!
si on peut utiliser un table de paramètre on doit pouvoir en utiliser plusieurs, non?

le résultat en console :

grinder@Obuntu||~$
Conky: desktop window (15a) is root window
Conky: window type - desktop
Conky: drawing to created window (0x1000001)
Conky: drawing to double buffer
Conky: llua_do_call: function conky_textes_rings execution failed: /home/grinder/.conky/scripts/mod_rings.lua:354: attempt to index local 'pt' (a nil value)
Conky: llua_do_call: function conky_textes_rings execution failed: /home/grinder/.conky/scripts/mod_rings.lua:354: attempt to index local 'pt' (a nil value)

il y'a pas plus clair, j'ai un problème de déclaration, sauf que je ne comprend pas pourquoi! j'ai vérifier et revérifier toutes mes substitutions et je trouve rien qui cloche!

et le code lua

--[[
Ring Meters by londonali1010 (2009)

This script draws percentage meters as rings. It is fully customisable; all options are described in the script.

IMPORTANT: if you are using the 'cpu' function, it will cause a segmentation fault if it tries to draw a ring straight away. The if statement on line 145 uses a delay to make sure that this doesn't happen. It calculates the length of the delay by the number of updates since Conky started. Generally, a value of 5s is long enough, so if you update Conky every 1s, use update_num>5 in that if statement (the default). If you only update Conky every 2s, you should change it to update_num>3; conversely if you update Conky every 0.5s, you should use update_num>10. ALSO, if you change your Conky, is it best to use "killall conky; conky" to update it, otherwise the update_num will not be reset and you will get an error.

To call this script in Conky, use the following (assuming that you save this script to ~/scripts/rings.lua):
	lua_load ~/scripts/rings-v1.2.lua
	lua_draw_hook_pre ring_widget

Changelog:
+ v1.2 -- Added option for the ending angle of the rings (07.10.2009)
+ v1.1 -- Added options for the starting angle of the rings, and added the "max" variable, to allow for variables that output a numerical value rather than a percentage (29.09.2009)
+ v1.0 -- Original release (28.09.2009)
]]
				--[[START RINGS SETTINGS]]
rings_settings={
	-- FIRST RINGS GROUP
	{
		name='memperc', arg='',
		max=100,
		bg_colour=0xFFFFFF, bg_alpha=0.07,
		fg_colour=0x1E90FF, fg_alpha=0.5,
		x=100, y=90,
		radius=40, thickness=15,
		start_angle=-75, end_angle=115,
	},
	{
		name='swapperc', arg='',
		max=100,
		bg_colour=0xFFFFFF, bg_alpha=0.07,
		fg_colour=0x1E90FF, fg_alpha=0.5,
		x=100, y=90,
		radius=55, thickness=15,
		start_angle=-75, end_angle=115,
	},
	{
		name="execpi 8 awk '/Cached/ {print $2/1024}' /proc/meminfo | head -1", arg='',
		max=2048,
		bg_colour=0xFFFFFF, bg_alpha=0.07,
		fg_colour=0x1E90FF, fg_alpha=0.5,
		x=100, y=90,
		radius=70, thickness=15,
		start_angle=-75, end_angle=115,
	},
	{
		name="execpi 8 awk '/Buffers/ {print $2/(1024)}' /proc/meminfo", arg='',
		max=2048,
		bg_colour=0xFFFFFF, bg_alpha=0.07,
		fg_colour=0x1E90FF, fg_alpha=0.5,
		x=100, y=90,
		radius=85, thickness=15,
		start_angle=-75, end_angle=115,
	},
	-- SECOND RINGS GROUP
	{
		name='cpu', arg='cpu2',
		max=100,
		bg_colour=0xFFFFFF, bg_alpha=0.07,
		fg_colour=0x1E90FF, fg_alpha=0.5,
		x=100, y=235,
		radius=40, thickness=15,
		start_angle=-75, end_angle=115,
	},
	{
		name='cpu', arg='cpu1',
		max=100,
		bg_colour=0xFFFFFF, bg_alpha=0.07,
		fg_colour=0x1E90FF, fg_alpha=0.5,
		x=100, y=235,
		radius=55, thickness=15,
		start_angle=-75, end_angle=115,
	},
	{
		name='cpu', arg='cpu0',
		max=100,
		bg_colour=0xFFFFFF, bg_alpha=0.07,
		fg_colour=0x1E90FF, fg_alpha=0.5,
		x=100, y=235,
		radius=70, thickness=15,
		start_angle=-75, end_angle=115,
	},
	-- THIRD RINGS GROUP
	{
		name='fs_used_perc', arg='/',
		max=100,
		bg_colour=0xFFFFFF, bg_alpha=0.07,
		fg_colour=0x1E90FF, fg_alpha=0.5,
		x=100, y=388,
		radius=40, thickness=15,
		start_angle=-75, end_angle=115,
	},
	{
		name='fs_used_perc', arg='/media/disk',
		max=100,
		bg_colour=0xFFFFFF, bg_alpha=0.07,
		fg_colour=0x1E90FF, fg_alpha=0.5,
		x=100, y=388,
		radius=55, thickness=15,
		start_angle=-75, end_angle=115,
	},
	{
		name='fs_used_perc', arg='/media/WIN-XP',
		max=100,
		bg_colour=0xFFFFFF, bg_alpha=0.07,
		fg_colour=0x1E90FF, fg_alpha=0.5,
		x=100, y=388,
		radius=70, thickness=15,
		start_angle=-75, end_angle=115,
	},
	-- FOURTH RINGS GROUP
	{
		name='fs_used_perc', arg='/home/grinder',
		max=100,
		bg_colour=0xFFFFFF, bg_alpha=0.07,
		fg_colour=0x1E90FF, fg_alpha=0.5,
		x=100, y=541,
		radius=40, thickness=15,
		start_angle=-75, end_angle=115,
	},
	{
		name='fs_used_perc', arg='/media/DOCTECHINFO',
		max=100,
		bg_colour=0xFFFFFF, bg_alpha=0.07,
		fg_colour=0x1E90FF, fg_alpha=0.5,
		x=100, y=541,
		radius=55, thickness=15,
		start_angle=-75, end_angle=115,
	},
	-- FIFTH RINGS GROUP
	{
		name='downspeedf', arg='',
		max=4096,
		bg_colour=0xFFFFFF, bg_alpha=0.07,
		fg_colour=0x1E90FF, fg_alpha=0.5,
		x=100, y=694,
		radius=40, thickness=15,
		start_angle=-75, end_angle=115,
	},
	{
		name='upspeedf', arg='',
		max=8192,
		bg_colour=0xFFFFFF, bg_alpha=0.07,
		fg_colour=0x1E90FF, fg_alpha=0.5,
		x=100, y=694,
		radius=55, thickness=15,
		start_angle=-75, end_angle=115,
	},
}
					--[[END RINGS SETTINGS]]

					--[[START TEXT RINGS SETTINGS]]
textes_settings={
	-- FIRST TEXT RINGS GROUP 
	{
		preffix='Mem',
		name='memperc',
		arg='',
		suffix='%',
		font='Monospace',
		fontsize=10,
		radius=35,
		x=87.5,
		y=82,
		fg_colour=0xffffff,
		fg_alpha=1,
		angle_start=-90,
		angle_end=50,
		letterposition=0.5,
	},
	{
		preffix='Swap',
		name='swapperc',
		arg='',
		suffix='%',
		font='Monospace',
		fontsize=10,
		radius=48,
		positionx=87.5,
		positiony=82,
		fg_colour=0xffffff,
		fg_alpha=1,
		angle_start=-90,
		angle_end=50,
		letterposition=0.5,
	},
	{
		preffix='Cache',
		name='cached',
		arg='',
		suffix='',
		font='Monospace',
		fontsize=10,
		radius=61,
		x=87,5,
		y=82,
		fg_colour=0xffffff,
		fg_alpha=1,
		angle_start=-90,
		angle_end=50,
		letterposition=0.5,
	},
	{
		preffix='Buff',
		name='buffers',
		arg='',
		suffix='',
		font='Monospace',
		fontsize=10,
		radius=74,
		x=87.5,
		y=82,
		fg_colour=0xffffff,
		fg_alpha=1,
		angle_start=-90,
		angle_end=50,
		letterposition=0.5,
	},
	-- SECOND TEXT RINGS GROUP
	{
		preffix='Cpu',
		name='cpu',
		arg='cpu0',
		suffix='%',
		font='Monospace',
		fontsize=10,
		radius=61,
		x=87.5,
		y=235,
		fg_colour=0xffffff,
		fg_alpha=1,
		angle_start=-90,
		angle_end=50,
		letterposition=0.5,
	},
	{
		preffix='Core0',
		name='cpu',
		arg='cpu1',
		suffix='%',
		font='Monospace',
		fontsize=10,
		radius=48,
		x=87.5,
		y=235,
		fg_colour=0xffffff,
		fg_alpha=1,
		angle_start=-90,
		angle_end=50,
		letterposition=0.5,
	},

	{
		preffix='Core1',
		name='cpu',
		arg='cpu2',
		suffix='%',
		font='Monospace',
		fontsize=10,
		radius=35,
		x=87.5,
		y=235,
		fg_colour=0xffffff,
		fg_alpha=1,
		start=-90,
		angle_end=50,
		letterposition=0.5,
	},
	-- THIRD TEXT RINGS GROUP
	{
		preffix='FileSys',
		name='fs_used_perc',
		arg='/',
		suffix='%',
		font='Monospace',
		fontsize=10,
		radius=75,
		x=87.5,
		y=300,
		fg_colour=0xffffff,
		fg_alpha=1,
		angle_start=-90,
		angle_end=50,
		letterposition=0.5,
	},
}
					--[[END TEXT RINGS SETTINGS]]
require 'cairo'

function rgb_to_r_g_b(colour,alpha)
	return ((colour / 0x10000) % 0x100) / 255., ((colour / 0x100) % 0x100) / 255., (colour % 0x100) / 255., alpha
end

-- ----------------------------------------------------------------------
			--[[ START RING WIDGET ]]

function draw_ring(cr,t,pt)

	local xc, yc, ring_r, ring_w, sa, ea=pt['x'],pt['y'],pt['radius'],pt['thickness'],pt['start_angle'],pt['end_angle']
	local bgc, bga, fgc, fga=pt['bg_colour'],pt['bg_alpha'],pt['fg_colour'],pt['fg_alpha']

	local angle_0=sa*(2*math.pi/360)-math.pi/2
	local angle_f=ea*(2*math.pi/360)-math.pi/2
	local t_arc=t*(angle_f-angle_0)
	-- Draw background ring
	cairo_arc(cr,xc,yc,ring_r,angle_0,angle_f)
	cairo_set_source_rgba(cr,rgb_to_r_g_b(bgc,bga))
	cairo_set_line_cap (cr, CAIRO_LINE_CAP_ROUND)
	cairo_set_line_width(cr,ring_w)
	cairo_stroke(cr)
	-- Draw indicator ring
	cairo_arc(cr,xc,yc,ring_r,angle_0,angle_0+t_arc)
	cairo_set_source_rgba(cr,rgb_to_r_g_b(fgc,fga))
	cairo_stroke(cr)
end

-- ----------------------------------------------------------------------

function conky_stats_rings()
	local function setup_rings(cr,pt)
		local str=''
		local value=0

		str=string.format('${%s %s}',pt['name'],pt['arg'])
		str=conky_parse(str)

		value=tonumber(str)
		pct=value/pt['max']

		draw_ring(cr,pct,pt)
	end
	-- Check that Conky has been running for at least 5s
	if conky_window==nil then return end
	local w,h=conky_window.width,conky_window.height
	local cs=cairo_xlib_surface_create(conky_window.display,conky_window.drawable,conky_window.visual, w, h)

	local cr=cairo_create(cs)

	local updates=conky_parse('${updates}')
	update_num=tonumber(updates)
	if update_num>5 then
		for i in pairs(rings_settings) do
			setup_rings(cr,rings_settings[i])
		end
	end
end

			--[[ END RING WIDGET ]]
-- ----------------------------------------------------------------------
			--[[ CIRCLTEXT WIDGET ]]

function draw_text(cr,pt)
	local xt,yt,text_r,text_w,ast,aet,let_pos=pt['x'],pt['y'],pt['radius'],pt['fontsize'],pt['angle_start'],pt['angle_end'],pt['letterposition']
	local fgc, fga=pt['fg_colour'],pt['fg_alpha']

	function addzero100(num)
		if tonumber(num) == nil then return end

			if tonumber(num) < 10 then
				return "  " .. num
			elseif tonumber(num) <100 then
				return " " .. num
		else
			return num
		end
	end

	function string:split(delimiter)

		local result = { }
		local from  = 1
		local delim_from, delim_to = string.find( self, delimiter, from  )
		while delim_from do
			table.insert( result, string.sub( self, from , delim_from-1 ) )
			from  = delim_to + 1
			delim_from, delim_to = string.find( self, delimiter, from  )
		end
		table.insert( result, string.sub( self, from  ) )
			return result
	end

	str = string.format('${%s %s}', name, arg)
	str = conky_parse(str)
	value = tonumber(str)

	if value == nil then
		text=(preffix .. str .. suffix) 
	else
		text=(preffix .. (addzero100(value)) .. suffix) 
	end

	local inum=string.len(text)
	range=ae
	deg=(aet-ast)/(inum-1)
	degrads=1*(math.pi/180)
	local textcut=string.gsub(text, ".", "%1@@@")
	texttable=string.split(textcut, "@@@")
	for i = 1,inum do
		ival=i
		interval=(degrads*(ast+(deg*(i-1))))+let_pos
		interval2=degrads*(ast+(deg*(i-1)))
		txs=0+text_r*(math.sin(interval))
		tys=0-text_r*(math.cos(interval))
		cairo_select_font_face (cr, font, CAIRO_FONT_SLANT_NORMAL, CAIRO_FONT_WEIGHT_NORMAL);
		cairo_set_font_size (cr, text_w);
		cairo_set_source_rgba(cr,rgb_to_r_g_b(fgc,fga))
		cairo_move_to (cr, txs+xt, tys+yt);
		cairo_rotate (cr, interval2)
		cairo_show_text (cr, (texttable[i]))
		cairo_rotate (cr, -interval2)
	end
end

-- -----------------------------------------------------------------------

function conky_textes_rings()
	
	if conky_window == nil then return end
	local w,h=conky_window.width,conky_window.height
	local cs=cairo_xlib_surface_create(conky_window.display,conky_window.drawable,conky_window.visual,w,h)

	local cr=cairo_create(cs)

	local updates=conky_parse('${updates}')
	update_num=tonumber(updates)
	if update_num>5 then
		for i in pairs(textes_settings) do
			--print ("i",i)
			draw_text(textes_settings[i])
		end
		--cairo_destroy(cr)
	end
end
			--[[ END CIRCLTEXT WIDGET ]]

#4 Re : -1 »  createur ubuntu personnalise iso/cle usb avec customisation graphique » Le 06/06/2010, à 23:59

GrindeR
Réponses : 488

Tout d'abbord Merci SMO pour ton travail!

je n'est pas encore été jusqu'au bout mais j'ai rencontré un problème:

lorsque j'arrive au menu pour choisir le type de customisation, je choisi le "vesa" puis au menu suivant qui propose les différentes custom possible dont " langue" que je choisi seul lorsque le script prépare le chroot pour FR il désinstalle bien tout les pack de LG pour remettre que le nécessaire, SAUF qu'il n'arrive pas à remettre les sélections FR.

surpris j'ai fermer le chroot graphique pour le relancer en sélectionnant préparation de la langue.
et PAF! ça fonctionne ce coup ci. bien entendu la première partie de désinstallation des pack de langue n'amène à rien comme ça avait déjà était fait le coup d'avant.

Entre dans le chroot pour préparer votre système avec la langue "fr"
Lecture des listes de paquets...
Construction de l'arbre des dépendances...
Lecture des informations d'état...
Initialisation de l'état des paquets...
Écriture de l'information d'état étendu...
Les paquets suivants seront ENLEVÉS :
  aspell-en{p} language-pack-bn{p} language-pack-bn-base{p} 
  language-pack-de{p} language-pack-de-base{p} language-pack-en{p} 
  language-pack-en-base{p} language-pack-es{p} language-pack-es-base{p} 
  language-pack-fr{p} language-pack-fr-base{p} language-pack-gnome-bn{p} 
  language-pack-gnome-bn-base{p} language-pack-gnome-de{p} 
  language-pack-gnome-de-base{p} language-pack-gnome-en{p} 
  language-pack-gnome-en-base{p} language-pack-gnome-es{p} 
  language-pack-gnome-es-base{p} language-pack-gnome-fr{p} 
  language-pack-gnome-fr-base{p} language-pack-gnome-pt{p} 
  language-pack-gnome-pt-base{p} language-pack-gnome-xh{p} 
  language-pack-gnome-xh-base{p} language-pack-pt{p} 
  language-pack-pt-base{p} language-pack-xh{p} language-pack-xh-base{p} 
  language-support-en{p} language-support-writing-en{p} myspell-en-au{p} 
  myspell-en-gb{p} myspell-en-za{p} openoffice.org-help-en-us{p} 
0 paquets mis à jour, 0 nouvellement installés, 35 à enlever et 0 non mis à jour.
Il est nécessaire de télécharger 0o d'archives. Après dépaquetage, 240Mo seront libérés.
Écriture de l'information d'état étendu...
(Lecture de la base de données... 129797 fichiers et répertoires déjà installés.)
Suppression de aspell-en ...
Purge des fichiers de configuration de aspell-en ...
Suppression de language-support-en ...
Suppression de language-support-writing-en ...
Purge des fichiers de configuration de language-support-writing-en ...
Suppression de myspell-en-au ...
Suppression de myspell-en-za ...
Purge des fichiers de configuration de myspell-en-za ...
Suppression de myspell-en-gb ...
Purge des fichiers de configuration de myspell-en-gb ...
Suppression de openoffice.org-help-en-us ...
Suppression de language-pack-gnome-en-base ...
Purge des fichiers de configuration de language-pack-gnome-en-base ...
Suppression de language-pack-gnome-es-base ...
Purge des fichiers de configuration de language-pack-gnome-es-base ...
Suppression de language-pack-gnome-fr-base ...
Purge des fichiers de configuration de language-pack-gnome-fr-base ...
Suppression de language-pack-gnome-fr ...
Suppression de language-pack-fr-base ...
Purge des fichiers de configuration de language-pack-fr-base ...
Suppression de language-pack-gnome-pt-base ...
Purge des fichiers de configuration de language-pack-gnome-pt-base ...
Suppression de language-pack-gnome-xh-base ...
Purge des fichiers de configuration de language-pack-gnome-xh-base ...
Suppression de language-pack-gnome-bn-base ...
Purge des fichiers de configuration de language-pack-gnome-bn-base ...
Suppression de language-pack-gnome-de-base ...
Purge des fichiers de configuration de language-pack-gnome-de-base ...
Suppression de language-pack-gnome-de ...
Suppression de language-pack-de-base ...
Purge des fichiers de configuration de language-pack-de-base ...
Suppression de language-pack-gnome-en ...
Suppression de language-pack-en-base ...
Purge des fichiers de configuration de language-pack-en-base ...
Suppression de language-pack-gnome-es ...
Suppression de language-pack-es-base ...
Purge des fichiers de configuration de language-pack-es-base ...
Suppression de language-pack-fr ...
Suppression de language-pack-gnome-pt ...
Suppression de language-pack-gnome-xh ...
Suppression de language-pack-pt-base ...
Purge des fichiers de configuration de language-pack-pt-base ...
Suppression de language-pack-xh-base ...
Purge des fichiers de configuration de language-pack-xh-base ...
Suppression de language-pack-gnome-bn ...
Suppression de language-pack-bn-base ...
Purge des fichiers de configuration de language-pack-bn-base ...
Suppression de language-pack-de ...
Suppression de language-pack-en ...
Suppression de language-pack-es ...
Suppression de language-pack-pt ...
Suppression de language-pack-xh ...
Suppression de language-pack-bn ...
Traitement des actions différées (« triggers ») pour « python-gmenu »...
Rebuilding /usr/share/applications/desktop.fr_FR.utf8.cache...
Traitement des actions différées (« triggers ») pour « software-center »...
Lecture des listes de paquets...
Construction de l'arbre des dépendances...
Lecture des informations d'état...
Lecture de l'information d'état étendu...
Initialisation de l'état des paquets...
Écriture de l'information d'état étendu...
Reading package lists...
Building dependency tree...
Reading state information...
Reading extended state information...
Initializing package states...
Couldn't find any package whose name or description matched "language-pack-fr"
Couldn't find any package whose name or description matched "language-pack-fr-base"
Couldn't find any package whose name or description matched "aspell-fr"
Couldn't find any package whose name or description matched "gimp-help-fr"
No candidate version found for ifrench-gut
Couldn't find any package whose name or description matched "language-support-fr"
Couldn't find any package whose name or description matched "language-support-translations-fr"
Couldn't find any package whose name or description matched "language-support-writing-fr"
No candidate version found for myspell-fr-gut
No candidate version found for openoffice.org-help-fr
Couldn't find any package whose name or description matched "openoffice.org-l10n-fr"
Couldn't find any package whose name or description matched "thunderbird-locale-fr"
No candidate version found for wfrench
Couldn't find any package whose name or description matched "language-pack-gnome-fr"
Couldn't find any package whose name or description matched "language-pack-gnome-fr-base"
Couldn't find any package whose name or description matched "language-pack-fr"
Couldn't find any package whose name or description matched "language-pack-fr-base"
Couldn't find any package whose name or description matched "aspell-fr"
Couldn't find any package whose name or description matched "gimp-help-fr"
No candidate version found for ifrench-gut
Couldn't find any package whose name or description matched "language-support-fr"
Couldn't find any package whose name or description matched "language-support-translations-fr"
Couldn't find any package whose name or description matched "language-support-writing-fr"
No candidate version found for myspell-fr-gut
No candidate version found for openoffice.org-help-fr
Couldn't find any package whose name or description matched "openoffice.org-l10n-fr"
Couldn't find any package whose name or description matched "thunderbird-locale-fr"
No candidate version found for wfrench
Couldn't find any package whose name or description matched "language-pack-gnome-fr"
Couldn't find any package whose name or description matched "language-pack-gnome-fr-base"
No packages will be installed, upgraded, or removed.
0 packages upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 0B of archives. After unpacking 0B will be used.
Writing extended state information...
Nettoyage des fichiers locale et doc inutiles 

Adapte les fichiers de conf casper a la langue : fr 

Changement de la langue par defaut des consoles tty avec : fr 

Mise en place de la langue "fr" terminée 

Vérifie les mises à jour des addons du script...

Mise à jour détectée...

Copie les addons du script et vos addons perso pour votre distrib gnome 

Mise à jour des addons du script ok !

Resolution choisie : 1280x1024 

Dmarrage du chroot en mode safe ! 


#########################
## Variables du chroot ##
#########################

Type de session : gnome
Utilisateur session chroot : timothee
Utilisateur reel du live-cd : ubuntu
Locales : fr_FR.UTF-8
Langue : fr
Clavier: fr

Verification des sources, merci de patienter
Detection des dossiers Xdg (Bureau, Desktop...)

Dossier bureau : Desktop 

Reverifie l integritee du dossier /etc/skel (peut etre long...) 

Installation de xrespobe...


############
##  Xorg  ##
############
Pilote : vesa
Distribution: lucid
Id carte : PCI:0:0f:0
Resolution: "1600x1200" "1440x900" "1280x1024" "1280x800" "1024x768" "1024x600" "800x600" "640x480"
Layout clavier : fr

Installation de gnome-commander pour le partage des disques entre local et chroot 
Votre pc local sera mont sur /media/pc-local
Tout est pret, demarre X dans le chroot ! 

starter = gnome-session
Sortie du chroot ok, Nettoyage

Reverifie l integritee du dossier /etc/skel (peut etre long...) 

Verifie l'integritee des fichiers vmlinuz/initrd 

Nettoyage de dpkg 

Nettoyage des paquets apt, gain de place sur le live... 

Vérification des process restants... 

demonte l image 

Image demontee... ok 

Umount ok... 


Sortie du chroot ok, nettoyage terminé :) 

Préparation du chroot, merci de patienter... 

Entre dans le chroot pour préparer votre système avec la langue "fr"
Reading package lists...
Building dependency tree...
Reading state information...
Reading extended state information...
Initializing package states...
Writing extended state information...
No packages will be installed, upgraded, or removed.
0 packages upgraded, 0 newly installed, 0 to remove and 127 not upgraded.
Need to get 0B of archives. After unpacking 0B will be used.
Writing extended state information...
Reading package lists...
Building dependency tree...
Reading state information...
Reading extended state information...
Initializing package states...
Reading package lists...
Building dependency tree...
Reading state information...
Reading extended state information...
Initializing package states...
No candidate version found for language-support-translations-fr
No candidate version found for language-support-translations-fr
The following packages are BROKEN:
  hunspell-fr 
The following NEW packages will be installed:
  aspell-fr gimp-help-common{a} gimp-help-en{a} gimp-help-fr ifrench-gut 
  ispell{a} language-pack-fr language-pack-fr-base language-pack-gnome-fr 
  language-pack-gnome-fr-base language-support-fr 
  language-support-writing-fr myspell-fr-gut openoffice.org-help-fr 
  openoffice.org-l10n-common{a} openoffice.org-l10n-fr thunderbird{a} 
  thunderbird-locale-fr wfrench 
0 packages upgraded, 20 newly installed, 0 to remove and 127 not upgraded.
Need to get 62.1MB of archives. After unpacking 160MB will be used.
The following packages have unmet dependencies:
  hunspell-fr: Conflicts: myspell-fr-gut but 1:1.0-27 is to be installed.
The following actions will resolve these dependencies:

.
ce qui me surprend, est que en début de journée lors de mon premier test de ton script je ne me souviens pas avoir vus ce problème passé, mais je n'est plus le log de la session pour appuyer si c'est vraiment le cas.

#5 -1 »  [projet] script sauvegardes multiple zenity » Le 23/06/2010, à 16:41

GrindeR
Réponses : 6

Bonjour à toutes et à tous,

Je ne suis pas expert en script, mais je m'aide beaucoup de http://abs.traduc.org/abs-fr/, ainsi que des recherches sur le forum.

j'ai déjà une bonne base (je pense) de mon projet,

mais je rencontre des difficultées sur un menu

ListMenu() {
BCK_CHOIX=`zenity --width=600 --height=355 --title="Profil de Sauvegarde" --text="quelle(s) sauvegarde(s) voulez-vous éffectuer?

<span color=\"red\">Description:</span>
Documents: sauvegarde vos documents das votre répertoire personne ${HOME}

Configurations: sauvegarde vos configurations (fichiers cachés) dans votre répertoire personnel ${HOME}

Ordinateur: sauvegarde les configurations de l'ordinateur dans ${PWD_HOST}" \
--list --checklist --multiple --column "Choix" --column "Profil" \
TRUE "Documents" \
TRUE "Configurations" \
TRUE "Ordinateur" \
`
case ${BCK_CHOIX} in
Documents) 
	cd ${PWD_DOC}
	ls -1X --file-type | grep -v 'lost+found' > ${PWD_LOG}/${LIST_DOC}					# documents du répertoire personnel de l'utilisateur courant
;;
Configurations)
	cd ${PWD_DOC}
	ls -1AX --file-type | grep -Ev '.cache|.gvfs|.thumbnails' | sed '/^\./!d' > ${PWD_LOG}/${LIST_CONF}	# fichiers/dossiers de configuration de la session de l'utilisateur
;;
Ordinateur)		
	cd ${PWD_HOST}
	ls -1AX --file-type > ${PWD_LOG}/${LIST_HOST}								# fichiers/dossiers de configuration de l'ordinateur
;;
*)
	zenity --error --text "<span color=\"red\">Vous n'avez choisi aucune sauvegarde à réaliser!!</span>"
	#exit 1
;;
esac	

cd ${PWD_LOG}
sed -i 's/[*|@]$//g' *												# suppression des caractères parasite générer par l'opt --file-type de ls
}

Vous me direz surement que rien en particulier ne cloche, MAIS si, ce qui me gêne c'est l'options de zenity

--multiple

que j'aimerais voir fonctionner car si je coche plus d'une case je reçois mon "zenity --error..." de fin de menu!!!

je ne comprend pas, j'ai raté quelque chose, ou bien il y a quelque chose en plus à faire.

toute suggestions est la bienvenue

edit modo : voilà, c'est déplacé. La prochaine fois tu pourras utiliser la fonction signaler juste ici ↓

#6 Re : -1 »  [projet] script sauvegardes multiple zenity » Le 24/06/2010, à 20:30

GrindeR
Réponses : 6

j'ai pris compte de vos remarques,
et du coup ça fonctionne nikel!
Merci à vous beware et Hizoka

ainsi je vais bientôt pouvoir proposer un v 0.1

#7 Re : -1 »  [projet] script sauvegardes multiple zenity » Le 25/06/2010, à 11:27

GrindeR
Réponses : 6

Oui, je suis déjà allé faire un tour sur ton post sur ton programme "zenitor" avec le lien sur ta signature avant de commencer mon projet et je l'utilise un peu du coup.

Tu dis que tu maitrise pas trop mal , je dirais plutôt comme un chef!

#8 -1 »  [REPONSE à tester]raid & mbr » Le 29/04/2010, à 17:59

GrindeR
Réponses : 3

bonjour a tous,
pour commencer je tiens a remercier la communauté http://www.ubuntu-fr.org pour tout ce qu'elle apporte en connaissance.
ceci seras mon premier post sur ce forum, car jusqu'à présent j'ai toujours trouver une solution dans les précédents topic.(et j'espère ne pas faire de doublon, dans quel cas je m'en excuse roll)
c'était la petite intro...:cool:

#_situation
je suis en stage actuellement, avec pour projet de mettre en place un hyperviseur Xen avec un domU pour héberger un serveur FTP qui feras office de TFTP (PXE)
comme tout serveur, le principe de haute disponibilité est recommandé (si ce n'est pas nécessaire).
donc j'ai réalisé l'installation de base comme suis:

* 2 disque dur de 40GB
     1e partition primaire de 200MB au début de chaque disk marqué bootable
     2e partition primaire avec le reste de l'espace sur chaque disk

     ¤ raid1 logiciel avec chacune des 2 partition identique
          * md0 200MB destiné a accueillir le /boot
          * md1 LVM
     ¤ dans ce LVM sur le 2e raid1
          * 1 vg (normal)
             - un lv de 3GB pour la racine /
             - un lv de 1GB pour le swap

(je ne sais pas si c'est une pratique courante, toujours est-il que mon maître de stage pratique à peut près de cette manière)

avec cela l'installation ce passe sans problème

#_Problème
bien que a la fin de l'installation je puisse installer GRUB (et non LILO comme j'ai peut avoir a mon premier essais et qui ne fonctionne pas avec Xen), par défaut sur le MBR du 1er disk,
tant que le 1er disk fonctionne bien tout roule mais si le 1er disk venait a faillir et lacher, lors du redémarrage
je n'aurais plus de secteur d'amorçage!
donc pas vraiment de haute-disponibilité  mad

#_interrogation
ce qui m'interroge, c'est que si j'ai marqué bootable les 2 partition pour le raid qui accueil le /boot,
je devrais pouvoir amorcer mon système sans le 1er disk!
(sans le 2eme est inutile car c'est le premier qui a son MBR inscrit) (testé)
donc j'ai tenté (sans vraiment savoir)
$ grub-install /boot/grub2 hd2
qui dans ce que j'en est compris a marqué le MBR du 2e disk
SAUF QUE bas je n'as plus de grub finalement ( bouh le pas beau prompt de grub au boot)

#_finalité
est-je bien fait le grub install?
y as t-il une meilleure manière de procéder?
est-ce irréalisable? ( caca prout )


merci de vos réponses
PS: j'espère n'avoir pas fait trop de fautes, auquel cas désolé

#10 Re : -1 »  [REPONSE à tester]raid & mbr » Le 30/04/2010, à 17:48

GrindeR
Réponses : 3

je ne testerais pas de suite (modération du tuteur),
mais merci pour ta réponse! big_smile:D