quarta-feira, 10 de novembro de 2010

Módulo tclock no E17 do Debian Sid

Não faz muito tempo que utilizo o Enlightenment (e17) como Desktop Environment. A versão disponível nos repositórios do Debian não contém um relógio digital, apenas um bom e velho relógio analógico (aquele com ponteiros =).

Pesquisando na Internet encontrei o módulo TClock. Um relógio digital que inclui a data atual. Neste pequeno artigo, descrevo o processo de instalação deste módulo. Eu acredito que você já tem o e17 instalado apartir dos repositórios do Debian.

A primeira coisa a fazer é obter os fontes deste módulo:
$ svn co http://svn.enlightenment.org/svn/e/trunk/E-MODULES-EXTRA/tclock/

Instale o pacote e17-dev, necessário para construir o módulo:
# aptitude install e17-dev

Acesse o diretório obtido, chamado tclock e execute o script autogen.sh:
# cd tclock
# sh autogen.sh

Execute o configure, make e make install:
# sh configure
# make
# make install

Se tudo der certo o módulo já estará disponível.

Para habilitá-lo acesse o menu principal do e17, Settings, Modules. Procure pelo módulo TClock e clique em Load.

Para adicionar o módulo no Desktop ou no menu basta acessar o menu principal do e17, Settings, Gadgets. Clique no TClock e depois em Add Gadget.

Solução de problemas

Se você obter o seguinte erro:
e_mod_main.c: In function ‘_tclock_cb_mouse_down’:
e_mod_main.c:190: warning: passing argument 3 of ‘e_gadcon_client_util_menu_items_append’ makes integer from pointer without a cast
/usr/include/enlightenment/e_gadcon.h:292: note: expected ‘int’ but argument is of type ‘struct E_Menu *’
e_mod_main.c:190: error: too many arguments to function ‘e_gadcon_client_util_menu_items_append’
make[2]: *** [e_mod_main.lo] Error 1
make[2]: Leaving directory `/usr/src/tclock/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/src/tclock'
make: *** [all] Error 2


Acesse o diretório do módulo, depois o diretório src (no meu caso /usr/src/tclock). Abra o arquivo e_mod_main.c e altere a linha (atualmente é a linha 190):
e_gadcon_client_util_menu_items_append(inst->gcc, ma, mg, 0);

para:
e_gadcon_client_util_menu_items_append(inst->gcc, ma, 0);

e execute o make novamente.

Este problema já foi reportado (bug #626).

Nenhum comentário: