return 1;
Dicas & How To
Ubuntu 10.04 + Acer Aspire 1410
Apr 28th
Recentemente comprei um Notebook Aspire 1410 de 11.6″, e depois de instalar o Ubuntu 10.04 eu vinha experimentando problemas de performance, e recorrentes problemas de IO do HD, sempre tinha que reinstalar o sistema, pois corrompia o raiz(/) do sistema, até que resolvi estudar os comentários sobre esse notebook e achei a origem dos problemas. Acabou que descobri que existe um bug na BIOS, no módulo AHCI, que é uma funcionalidade de SATA 2, então resolvi atualizar a BIOS, porém lendo mais fórums sobre a instalação nesse notebook e sobre essa tecnologia AHCI, ela somente dá suporte a hot swapping e NCQ, o hot swapping é a possibilidade de desconectar o hd com a placa ligada(o que eu não vou fazer) e NCQ é uma tecnologia de acesso a disco mais eficaz em ambientes de intensa leitura e gravação de dados no HD, suporta cache e etc, o que também não é o meu caso. Portanto eu não preciso dessa tecnologia AHCI, e na BIOS o SATA MODE estava configurado para AHCI, troquei para IDE MODE e pronto. Os problemas pararam de ocorrer e a máquina ficou mais rápida e o boot já não leva 5 minutos.
Com o Ubuntu 9.10 eu instalei e funcionou corretamente, mas de vez em quando aparecia uns erros estranhos envolvendo HD no /var/log/syslog. O que não me deixava feliz e me deixava preocupado.
Portanto fica a dica, se você tiver um computador igual ao meu Aspire 1410 (11″6), desabilite o modo AHCI que muito provavelmente você não vai utilizar os recursos e poupará dores de cabeça e depois instale o seu Ubuntu 10.04.
Tirando esse problema, esse notebook é show de bola, tenho usado ele para trabalhar também e ele segura o trabalho sem frescuras, as vezes ele se esquenta ;-) , mas agente acaba se entendendo. Cheguei até a me arrepender de ter comprado ele, mas já pedi desculpa dele e estamos felizes.
Só queria deixar registrado a dica!
:wq!
__hg_ps1 – Nome da branche na linha de comando do bash
Nov 4th
Pra quem já usou git, sabe que existe o __git_ps1 que você pode usar para colocar na linha de comando do bash para lhe mostrar qual a branch atual de trabalho. Sem essa funcionalidade fica difícil trabalhar com as branches sem se perder de vez em quando. Procurando por algo similar no mercurial, achei o __hg_ps1.
Muito simples de instalar:
- baixe o tarball
- instale como qualquer aplicação python ( python setup.py install )
- configure PS1 no ~/.bashrc
wget -c http://bitbucket.org/krbullock/hg_ps1/get/tip.tar.gz
tar xvf tip.tar.gz
cd hg_ps1/
sudo python setup.py install
Coloque no ~/.bashrc o seguinte:
1 | PS1='${debian_chroot:+($debian_chroot)}\[\033[01;31m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[01;33m\] $(A=`__hg_ps1` && echo "[$A]" ) \[\033[0m\] \[\033[00m\]$ ' |
Se você tiver também o git instalado, coloque este abaixo:
1 | PS1='${debian_chroot:+($debian_chroot)}\[\033[01;31m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[01;33m\]$(__git_ps1 " [%s]") $(A=`__hg_ps1` && echo "[$A]" ) \[\033[0m\] \[\033[00m\]$ ' |
Como pode ser visto no comando acima, tem também o __git_ps1, se você entrar em algum repositório git, também funciona, a melhor configuração para manter os dois foi essa acima. Isso é muito útil.
Debian Day 09 – Amazonas
Aug 18th

Debian Day é um evento realizado anualmente por vários grupos de Software Livre em todo o mundo. Também conhecido por Dia Debian e Dia D, este evento comemora o aniversário da distribuição GNU/Linux Debian, que neste ano (2009) completa 16 anos de existência.
Em Manaus, o Debian Day é realizado pelo Grupo de Usuários Debian do Amazonas, conhecido por Debian-AM, sendo patrocinado pela UniLaSalle e com o apoio do Projeto Zagaia, AIT Technologies e Gráfica Silva.
Neste ano, teremos um I Desafio DebianDay de Programação:
E também um convidado especial, o criador e mantenedor do site Viva o Linux (http://vivaolinux.com.br), Fábio Berbert de Paula.
Convidamos todos a participarem deste evento.
Data: 22 de Agosto de 2009.
Local: UniLaSalle, Dom Pedro I, em frente à praça de alimentação do Dom Pedro I.
Horário: 9h – 17:30h, credenciamento de 8h – 9h.
Entrada: 2Kg de alimentos não perecíveis, exceto sal.
Para saber como participar do desafio de programação, visite o site de evento.
Site: http://diadebian.org/am/2009
Compilação distribuída com ICECC no Debian/Ubuntu
Aug 12th
Para quem já compilou um projeto grande, ou seja, que possui uma quantidade considerável de código fonte sabe que demora bastante tempo para compilar, um exemplo disso é o Qt, que demora aproximadamente ~2 horas em uma máquina com 2 núcleos.
Optando pela dica de um amigo, consegui diminuir esse tempo de compilação para aproximadamente ~50 minutos usando 6 núcleos no total, 2 núcleos do meu notebook e mais 4 da minha estação de trabalho.
É algo bem simples de fazer, let’s do it
Primeiramente você precisa instalar o ICECC nos computadores que você irá compartilhar recursos para compilação e nada mais óbvio do que usar o apt-get ou aptitude:
~$ aptitude install icecc
Depois de instalado nas máquinas que você deseja utilizar os recursos é necessário configura-lás em um grupo para que elas possam se comunicar, em uma analogia equivalente seria como configurar um grupo de rede onde cada máquina consegue enxergar as outras porque estão no mesmo grupo. Para configurar essa rede é preciso editar o arquivo /etc/icecc/icecc.conf e colocar a seguinte diretiva apontando para o nome da rede:
ICECC_NETNAME=”nome_da_sua_rede“
onde tem nome_da_sua_rede substitua pelo o nome de sua preferência para a rede de compilação e configure essa diretiva com o nome que você definiu para cada máquina que você irá utilizar para a compilação e depois reinicie o daemon delas com:
sudo invoke-rc.d icecc restart
Nessa rede é preciso que ao menos uma das máquinas seja a responsável por distribuir os dados de compilação, pegar o retorno e juntar tudo. A essa máquina damos o nome de “Scheduler”, para configurar uma máquina como scheduler é preciso que o arquivo /etc/default/icecc esteja da seguinte forma:
# Defaults for icecc initscript
# sourced by /etc/init.d/icecc
START_ICECC=”true”
START_ICECC_SCHEDULER=”true”
E depois reiniciar o daemon com:
ICECC_NETNAME=”nome_da_sua_rede”
Dai em diante é só compilar algum código grande que você verá a diferença, também existe uma ferramenta para você monitar a compilação é o icecc-monitor, para instalar (nada mais óbvio):
sudo aptitude install icecc-monitor
Depois adicione o path do icecc ao seu $PATH, inserindo o seguinte comando no seu ~/.bashrc :
export PATH=/usr/lib/icecc/bin/:$PATH
source ~/.bashrc
E boa compilação, keep hacking!
Xubuntu 9.04 + Headphone + Toshiba Satellite A135
May 25th
Tenho um Toshiba Satellite A135 e acabei de instalar o Xubuntu 9.04. Quando eu plugo o headphone, o som dos speakers continua saindo e o som dos headphones não funcionam.
Para resolver isso, basta abrir o arquivo:
sudo nano /etc/modprobe.d/alsa-base.conf
e adicionar no final do arquivo a linha:
options snd-hda-intel position_fix=1 model=lenovo
Depois de reiniciar, usar o mixador (aplicativo do trayicon para ajustar o volume). Caso não aparece nenhum controle, usar o botão de “selecionar controles para adicionar. O que efetivamente controla o volume dos headphones é o controle “front”.
Lembrando que a placa de som do Toshiba Satellite A135 é Intel (pelo menos o meu é), logo, no combobox de placa de áudio, deverá estar selecionado “HDA Intel (Alsa mixer). A grande facilidade aqui é que a instalação do Xubuntu 9.04 já vem com os drivers do ALSA (Advanced Linux Sound Architecture). Nas versões anteriores do xubuntu, seria necessário fazer o download, compilar e configurar o ALSA.
Não testei, mas acredito que essa dica também funcione com o ubuntu 9.04, visto que a distribuição xubuntu é baseada no ubuntu.
Espero ter ajudado.
Escrito por Lúcio Ferreira.
Configurando nokia n810
Jan 21st
Configurar o nokia n810 no ubuntu é bem simples. Fiz um resumão..
Atualizando FirmWare
Eu tive que atualizar o firmware, para isso basta fazer o flashing. Faça o download do utilitário, depois faça o download do último firmware, recarrege a bateria do tablet, de preferência estando desligado. Após isso, se o tablet não estiver desligado, desligue-o e ligue o cabo usb e então basta executar:
./flasher-3.0 -F RX-44_DIABLO_5.2008.43-7_PR_COMBINED_MR0_ARM.bin -f -R
Dae, ele jogará na tela algumas mensages e a última será:
Suitable USB device not found, waiting
Dae você liga o tablet novamente e pronto ele irá atualizar o firmware. Para habilitar o R&D Mode,
basta fazer o mesmo processo só que ao invés de fazer o flashing da imagem basta fazer o seguinte:
./flasher-3.0 –enable-rd-mode
E então ligue o tablet para ele atualizar para o modo R&D. Depois reiniciei o tablet.
Conectividade usb
Você precisa instalar no tablet um pacote chamado maemo-pc-connectivity e após instalado o pacote, basta configura
o pc. Primeiro é preciso configurar o módulo responsável pela criação de interface de rede através da usb, o usbnet
sudo modprobe usbnet
Basta editar o arquivo “/etc/udev/rules.d/85-ifupdown.rules” e trocar:
SUBSYSTEM==”net”, DRIVERS==”?*”, TEST==”/var/run/network/initialized”, GOTO=”net_start”
por:
SUBSYSTEM==”net”, TEST==”/var/run/network/initialized”, GOTO=”net_start”
Depois acrescentar no /etc/network/interfaces:
auto usb0
allow-hotplug usb0
mapping hotplug
script grep
map usb0iface usb0 inet static
address 192.168.2.14
netmask 255.255.255.0
network 192.168.2.0
broadcast 192.168.2.255
up iptables -t nat -A POSTROUTING -s 192.168.2.15 -j MASQUERADE
up echo 1 > /proc/sys/net/ipv4/ip_forward
down iptables -t nat -D POSTROUTING -s 192.168.2.15 -j MASQUERADE
down echo 0 > /proc/sys/net/ipv4/ip_forward
Instalando o lazarus no ubuntu 8.10
Dec 30th
Instalando o lazarus no ubuntu 8.10
O lazarus é um IDE RAD Delphi-like cross platform…mas traduzindo para português não-técnico, é um ambiente de desenvolvimento, provendo ferramentas para desenvolvimento de aplicações de forma rápida, com características de uso semelhantes ao do Delphi, da Code Gear, onde o mesmo código feito no Windows pode ser compilado e executado no Linux e no Mac.
Ainda não entendeu? Dê uma volta no Google J
Você pode achá-lo no site http://www.lazarus.freepascal.org/
Por baixo do lázarus tem o FPC – free pascal compiler. É ele que faz a compilação do código que você monta pelo lazarus. Para que tudo funcione corretamente, é necessário baixar ambos separadamente.
Abaixo os passos para a instalação no Ubuntu 8.10 (Intrepid) e 9.04 (Jaunty):
# de praxe
$ sudo apt-get update
# instalando o free pascal compiler
$ sudo apt-get install fpc
# agora, o IDE
$ sudo apt-get install lazarus
Após tudo instalado, automagicamente é instalado o atalho no menu desenvolvimento, mas são necessários alguns ajustes no lázarus
Execute o lázarus.
Menu Environment -> environment options : guia files
Compiler path: /usr/lib/fpc/2.2.0/ppc386
FPC source directory: /usr/share/fpcsrc/2.2.0/
obs: os sources do FPC são necessários para compilação
Agora é só alegria. Tenham um bom divertimento.
Escrito por Lúcio Ferreira.
Estudando python EFL – edição especial :-P
Dec 16th
Bom, irei participar de um treinamento de python EFL onde o instrutor será o Gustavo Barbiery, tentarei fazer um resumo do curso até mesmo para que me sirva de referência futura e postarei aqui no blog, tenho conhecidos que trabalham e estudam também EFL e python e que ficaram tristes por não poderem participar do treinamento, infelizmente não é possível que todos participem. Mas como sou um cara legal e sempre gostei de compartilhar conhecimento
, além de fazer o resumo do curso que conterá muito código de exemplo. Irei também reportar a evolução do curso pelo meu Twitter em tempo real. Para isso instalei um widget no sidebar do wordpress, o qual vocês podem acompanhar ao seu lado direito da tela.
Para quem tem twitter, pode me seguir e fazer perguntas sobre a tecnologia em tempo real, para quem não tiver, pode deixar comentário no blog pois ficarei o tempo todo on line. Não atenderei todas as perguntas, irei filtrar as mais interessantes, portanto caprichem nas perguntas (se houver) que na primeira oportunidade que surgir perguntarei ao Gustavo e postarei no resumo do blog a resposta, sei que muitas das minhas dúvidas são as dúvidas de outros que começaram a trabalhar com EFL a pouco tempo, portanto muita coisa será respondida no resumo que farei do curso e não de forma imediata.
Qualquer coisa, seja sugestão ou crítica comenta ai.
Update: Posts só sairão, no final de semana. Tá cruel, muita coisa pra fazer/estudar.
Estudando python EFL – parte 2
Dec 13th
Continuando a série de post sobre a tecnologia EFL , a qual estou estudando e trabalhando.
Este post visa ser uma visão geral do que é e como funciona esta tecnologia e está respectivamente divido em duas seções: O que é ? e Como Funciona ?.
O que é ?
EFL é um conjunto de bibliotecas escrita em C para facilitar o desenvolvimento de um gerenciador de janelas baseado no X, o famoso Enlightenment, o qual possui muitos recursos eye candy sem precisar de gerenciadores de janela com suporte a aceleração através de OpenGL, ex: compiz. E sempre fez um ótimo trabalho sem esse tipo de recurso.
Segui alguns vídeos coletados no youtube do Enlightenment em ação.
E existem outros mais. É possível implementar funcionalidades muito parecidas com as do iphone, por exemplo:
E olha um teclado virtual feito com EFL baseado no teclado do iPhone, feito pelo Gustavo Barbiery, um dos geeks que trabalha com EFL aqui no Brasil e que por sinal próxima semana estará em Manaus para dar um treinamento de EFL na FPF¸após eu ter tido muitas conversas com o chefinho.
E como o EFL faz muito com pouco processamento, foi portado para outras arquiteturas como ARM, onde roda em dispositivos como o Internet Tablet N810 da Nokia e existem algumas aplicações rodando com EFL, mas a aplicação de referência de uso do EFL no Maemo é o Canola, que é um player para o maemo. Alguns vídeos do canola em ação:
E roda também em celulares, e já está sendo feito uma plataforma completa para dispositivos móveis, o Illumine, e um dos geeks é um dos criadores do EFL, o Rasterman (Carsten Haitzler) e olhem só sua gang que já roda illumine:

Rasterman Gang's
E tudo isso e muito mais foi desenvolvido primariamente com EFL, Ficou afim de entender melhor e começar a desenvolver ? Bom…. posso guiá-lo pelo caminho que percorri no estudo.
Como funciona ?
Já que na primeira parte instalamos as técnologias básicas(ecore, evas, edje), vamos dá uma olhada em seu funcionamento.
Bem, vamos começar pelo começo.
Arquitetura completa do EFL.

Concentre-se na parte azul da arquitetura, o core EFL.
Evas é o canvas onde tudo é renderizado e também gera sinais para aplicação.
Ecore é o responsável por capturar todos os eventos de uma janela originados do X11 e direcionar esses eventos para os devidos callbacks, possui também um mecanismo de MainLoop e uma série de ferramentas que auxiliam o trabalho com EFL e tarefas comuns de programação.
Alguns componentes do Ecore:
- Ecore_Con – Comunicação em rede
- Ecore_IPC – Comunicação entre processos
- Ecore_Config – Sistema de configuração
- e outros.
Edje é um meio de separar o código da aplicação do código da interface, basicamente é o responsável por te prover o mecanismo de manipulação de objetos da interface, ou seja, manipular o canvas(evas) de forma descritiva e orientada a estados. Apartir do momento que você faz essa separação ou dividi a aplicação em camadas, você imediatamente ganha vantagens, como por exemplo no Enlightenment e no canola a interface é feita com Edje e por isso possui um mecanismo de Temas(Themes) avançado e flexível de temas, ou seja, você pode mudar toda a interface sem mexer no código da aplicação.
Fazendo uma analogia a arquitetura de desenvolvimento web, seria mais ou menos assim, olhe a figura do MVC abaixo
Sabemos que no desenvolvimento web, o Model é responsável pela lógica de negócio da aplicação, o Controller é responsável por capturar as requisições que vem da View e processa-lás junto a Model e então devolver a resposta a View, a View é a camada de apresentação que no contexto web é o html/css/javascript.
Olhando essa arquitetura MVC podemos fazer a seguinte analogia, que o View é o Edje, o Controller é o Ecore. E o Evas é o browser onde tudo é renderizado.
Consegui explicar alguma coisa ? Se não, deixe um comentário.
Falei alguma besteira ? Se sim, deixe um comentário corrigindo e colocarei os devidos créditos.
Próximos posts (Aguardem):
Estudando python EFL – parte 3 (Ecore-Evas)
Estudando python EFL – parte 4 (Edje)
Ubuntu Theme para o Canola2
Oct 17th
o Marcelo Mendes(aka Hapadura) fez um tema legal para o canola baseado no Ubuntu.
Instalei e tirei fotos pra ver como ficou, segue abaixo as fotos:
Para instalar basta clickar no link apartir do browser do seu tablet e seguir os passos de instalação.
For the Hapadura and Ian, great work guys!









