Configurando o monitor ST2220T Touch Screen da Dell no linux

Recebemos o desafio de desenvolver a parte técnica de uma cabine de cinema, nessa cabine você escolhe uma cena clássica do cinema e assiste dentro, sentado em uma confortável poltrona de cinema.

Para selecionar o filme é usada uma tela touchscreen, o modelo escolhido foi o ST2220T da Dell, principalmente por possuir um touch sensível (lembra muito o do ipad), e ter uma tela maravilhosa fullHD.  O lado ruim é que apesar de ter vários meses de estrada a Dell nunca liberou nenhum driver para o monitor, deixando a cargo da comunidade.

Ao ligar o monitor no PC o touchscreen ele pode até funcionar, mas é necessário usar os dois dedos para movimentar o cursor. Isso acontece pois o a tela é dual-touch, ou seja, reconhece até dois toques simultâneos.

O driver que corrige esse problema foi recentemente incluído no kernel 3.4 do linux, mas boa parte das distros ainda usam a versão 3.0, então segue um breve tutorial de como instalar os drivers no Ubuntu 12.04 (Funciona no Debian testing!).

Existem três formas de se obter os drivers, uma é aplicando este patch no fonte do kernel, compilando e instalando apropriadamente.

Outra forma, bem simples é baixando e instalando um kernel com o patch citado acima pré-aplicado, ou seja, pronto para usar. Nesse caso, basta baixar o kernel desse site:

http://people.canonical.com/~bradf/lp791833/

Instale com o comando:

dpkg -i linux-image-3.2.0-20-generic_3.2.0-20.33~lp791833_i386.deb
update-grub2

Após o reboot, o touch funcionará normalmente.

Uma outra forma mais genérica, é compilar o driver para o kernel que você já possui instatalado, para isso, faça:

apt-get install build-essential
git clone git://git.lii-enac.fr/linux-input/ubuntu-multitouch
cd ubuntu-multitouch

Use o comando git branch -a
, para listar os branchs disponíveis, escolha um e digite:

git checkout hid-multitouch-ubuntu-12.04
make
sudo make install
sudo depmode -a

Após esses passos, basta rebootar.

Para melhor funcionamento da tela, vale a pena instalar alguns pacotes com:

apt-get install xinput evtest xserver-xorg-input-evtouch

Existem vários outros detalhes técnicos dessa cabine que quero mostrar em breve 🙂

fontes: enac, launchpad, redhat

Acelerando o Entropy

Não é novidade pra ninguém, mas estou usando Sabayon em todas as minhas máquinas já faz um tempo 🙂  Pra quem não conhece, Sabayon é uma distro italiana derivada do gentoo, diferente do pai no sabayon os pacotes são entregues já compilados, mas o emerge tá lá presente para customizar e otimizar qualquer pacote, a distro vem pronta e com codecs, plugins e toda sorte de bibliotecas livres ou não, já vem com as baterias inclusas.

Por ser uma distro rolling release o Sabayon tem atualizações constantes, e assim como o Fedora os caras adotaram um esquema de deltas entre os pacotes, reduzindo o tamanho dos dados transmitidos durante os upgrades. Mas ainda assim tem vários pontos onde o gerenciamento de pacotes pode ser acelerado.

Usando os mirrors mais rápidos

Use o comando abaixo para ordenar os mirrors por ordem de velocidade:

equo repo mirrorsort sabayon-weekly

 Habilite o multifetch

O entropy esta preparado para fazer downloads paralelos, por padrão, ele faz 3 … mas se sua conexão é boa, pode aumentar pra 10 ou mais 🙂

Abra /etc/entropy/client.conf e altere:

multifetch = 10

Use deltas de pacotes

A cereja do bolo é a tecnologia de deltas, um delta é um diff entre dois arquivos binários, o sabayon oferece upgrades por delta de pacotes, oque reduz muito o tamanho dos updates, primeiro instale o bsdiff:

equo install bsdiff

E habilite packages-delta em /etc/entropy/client.conf:

packages-delta = enable

fonte