Awesome Wm ;) ¿como agrego un widget? 4


Escapando un poco de la comodidad de Gnome y de el mencionado Mono … comencé a probar Awesome wm

¿que es Awesome?

lo que me a gustado es que es muy con figurable y los resultados pueden ser awesome XD … pero el único contra para todo principiante  (como yo) …  es  integrar por primera vez un widget … ya que awesome solo trae por defecto una barra con 9 escritorios la fecha/hora y un menú con las funciones para abrir una terminal, reiniciar y salir (en Debian trae un menú al algunos programas).

en realidad con la terminal tenemos todo… pero nunca esta de mas tener un indicador de bataria si es que poseemos un notebook o un gestor de redes wifi y algo para regular el sonido XD …

lo bueno es que para agregar todo lo anterior hay que editar solo un archivo “rc.lua ” (escrito en lenguaje LUA) , en este archivo escribimos nuestros widgets y listo … suena fácil no ? XD

Instalar awesome ArchLinux / Parabola

$pacman -S awesome

Instalar Awesome en Ubuntu / Trisquel

$sudo apt-get install awesome

la pregunta del año!

¿Como agrego un Widget?

la verdad es que puedes escribir tus propias funciones para crear tus widgets o puedes utilizar algunas que ya esta echas como lo son Vicious o Obvious

a continuación dare 2 ejemplos de como crear un widget en awesome usando Vicious

1ª- descargar  Vicious (yo descargue el  2.0.0 si hay uno más reciente descarga ese)

2º-descomprime la carpeta contenida en el tar.gz con el nombre de “vicious”  en /usr/share/awesome/lib/

como root:

copiamos el archivo descargado a nuestro destino…

$cp vicious-2.0.0.tar.gz /usr/share/awesome/lib/

$cp vicious-2.0.0.tar.gz /etc/xdg/awesome/

$cd /usr/share/awesome/lib/

$cd /etc/xdg/awesome/

descomprimimos la carpeta

$tar xzvf vicious-2.0.0.tar.gz

(opcional) borramos el archivo.tar.gz

$rm vicious-2.0.0.tar.gz

re nombramos la carpeta con el nombre “vicious”

$mv vicious-2.0.0 vicious

acá podemos leer el README de Vicious el cual nos explica como agregar un widget y al final salen ejemplos de widget que se pueden integrar en el rc.lua

$cd vicious

$nano README

por ejemplo el widget que nos indica el lvl de procesos de nuestra cpu (sale como ejemplo en el README):

para colocar nuestro widget debemos como ya mencione editar el archivo rc.lua:

$nano /etc/xdg/awesome/rc.lua

al inicio del archivo colocar:

–Vicious
require(“vicious”)

y más abajo colocar nuestro widget (yo lo e puesto abajo del textclock widget)

–CPU usage widget
cpuwidget = awful.widget.graph({ align = “right” })
cpuwidget:set_width(50)
cpuwidget:set_background_color(“#494B4F”)
cpuwidget:set_color(“#FF5656″)
cpuwidget:set_gradient_colors({ “#FF5656″, “#88A175″, “#AECF96″ })
vicious.register(cpuwidget, vicious.widgets.cpu, “$1″, 3)

ahora devemos agragar nuestro widget a nuestra barra de tareas donde dice “Add widgets to the wibox” y nos quedaría algo así:

noten  que se agrego el widget debajo de mytextclock y con el nombre definido en el widget puesto anteriormente (cpuwidget)

– Add widgets to the wibox – order matters
mywibox[s].widgets = {
{
mylauncher,
mytaglist[s],
mypromptbox[s],
layout = awful.widget.layout.horizontal.leftright
},
mylayoutbox[s],
mytextclock,
cpuwidget,
s == 1 and mysystray or nil,
mytasklist[s],
layout = awful.widget.layout.horizontal.rightleft
}

y listo nuestro primer widget en Awesome :) .. ahora solo queda reiniciar Awesome y nuestro widget aparecerá ….

ahora vamos con otro ejemplo  donde integremos un widget con iconos … por ejemplo el volumen (acá se necesita tener  instalado gnome-volume-control) este widget esta personalizado a mi pinta .. pero si tienes  otro programa para controlar el volumen puedes borrar las lineas del volicon:buttons y funcionara de forma similar (ver iconos)

– {{{ Volume state

–Iconos para volicon widget
beautiful.vol1 = “/home/leo/awesome/iconos/vol-low.png”
beautiful.vol2 = “/home/leo/awesome/iconos/vol-med.png”
beautiful.vol3 = “/home/leo/awesome/iconos/vol-hi.png”
beautiful.mute = “/home/leo/awesome/iconos/vol-mute.png”

– Widget
volicon = widget({ type = “imagebox”, name = “volicon” })
— Register widget
vicious.register(volicon, vicious.widgets.volume,
function (widget, args)
if args[1] == 0 then
volicon.image=image(beautiful.mute)
elseif args[1] > 66 then
volicon.image=image(beautiful.vol3)
elseif args[1] > 33 and args[1] <= 66 then
volicon.image=image(beautiful.vol2)
else
volicon.image=image(beautiful.vol1)
end
end,

2, “Master”)

volicon:buttons({
button({ }, 1, function () awful.util.spawn(terminal …. ” -e gnome-volume-control”) end),
})
— }}}

la idea del widget es que cambie la imagen del icono sonido a medida que se valla regulando el volumen …  el volicon:buttons es para que cuando se apreté el icono de sonido se abra el programa que regula el sonido … en este caso es el que posee gnome … se puede hacer de otras formas mas ortodoxas pero es la que tengo por ahora… XD.

ahora debemos agaragar nuestro widget  en “mywibox[s].widgets” … y nos quedara algo así:

– Add widgets to the wibox – order matters
mywibox[s].widgets = {
{
mylauncher,
mytaglist[s],
mypromptbox[s],
layout = awful.widget.layout.horizontal.leftright
},
mylayoutbox[s],

mytextclock,

cpuwidget,

volicon,
s == 1 and mysystray or nil,
mytasklist[s],
layout = awful.widget.layout.horizontal.rightleft
}

y reiniciamos Awesome y nuestro widget de volumen aparecerá :)

espera que les ayude en algo

salu2!

Algunas Imagenes para alentar :)

    • http://sweet.encyclomundi.org Sweet

      wow, deberias de escribir algo al respecto, sobre, como se crean las secciones en el desktop y eso :3. para enlazarlo con mi blog x3

    • http://www.xn--tckl6en1rbc8120i6j1c.com/tag/%e3%83%ad%e3%83%ac%e3%83%83%e3%82%af%e3%82%b9%e3%82%b3%e3%83%94%e3%83%bc%e6%99%82%e8%a8%88/ ?????????

      ????????????????????????????

    • http://www.statick.me Statick

      Me gustaria saber donde agregas
      – Add widgets to the wibox – order matters
      mywibox[s].widgets = {
      {
      mylauncher,
      mytaglist[s],
      mypromptbox[s],
      layout = awful.widget.layout.horizontal.leftright
      },
      mylayoutbox[s],
      mytextclock,
      cpuwidget,
      s == 1 and mysystray or nil,
      mytasklist[s],
      layout = awful.widget.layout.horizontal.rightleft
      }

    • l30n4rd0

      Hola, mira puedes descargar el rc.lua desde otros post que tengo :
      1 )http://www.leobravo.cl/?p=638
      2) http://www.leobravo.cl/?p=460

      Allí puedes ver en detalle la configuración y donde pongo el widget

      Saludos