Configurando o monitor ST2220T Touch Screen da Dell no linux

Recebemos no hacklab 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

Posted in cinema, kernel, linux | Tagged , , , , , , , , , | Comments Off

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

 

Posted in linux, shell, sysadmin | Tagged , , , , , | Comments Off

Apresentando ALAC.js

O ALAC.js nada mais é do que uma biblioteca javascript que decodifica o formato Apple LossLess Codec, pra quem não entendeu, essa biblioteca decodifica um stream no formato Apple LossLess e toca nativamente direto no browser, sem a necessidade de ter nenhum codec instalado na máquina.

 

 

Com browers cada vez mais rápidos esse tipo de abordagem vai ser cada vez mais comum no futuro. Uma prova disso é que Já fizeram o JSmad, implementação JavaScript para a libmad que decodifica MP3 ehehhe

Confira

Posted in web | Tagged , , , , | Comments Off

Apresentando Razor Desktop

Razor é um desktop de baixo consumo (como o LXDE) feito com o QT, super completo e bonito, da até vontade de tirar o KDE daqui :P

Segue o look da criança:

Ele oferece gerenciamento de janelas, sessões e um painel, o código pode ser obtido aqui

Posted in linux | Tagged , , , | Comments Off

Segurança passando do IP para o conteúdo ?

Um grupo de pesquisadores, que conta com um brasileiro, está propondo uma nova forma de garantir a autoria do conteúdo na web, deixando de basear a segurança nos IPs dos hosts e baseando no conteúdo. Eles desenvolveram algoritmos eficientes para autenticar dados, assim independente de onde o dado for disponibilizado ele será seguro.

Mais sobre

Posted in web | Tagged , , | Comments Off

Let it snow, Let it snow, Let it snow …

Entrando no clima de natal, faça seu console nevar com esse código:


#!/bin/bash

LINES=$(tput lines)
COLUMNS=$(tput cols)

declare -A snowflakes
declare -A lastflakes

clear

function move_flake() {
i=”$1″

if [ "${snowflakes[$i]}” = “” ] || [ "${snowflakes[$i]}” = “$LINES” ]; then
snowflakes[$i]=0
else
if [ "${lastflakes[$i]}” != “” ]; then
printf “\033[%s;%sH \033[0;0H " ${lastflakes[$i]} $i
fi
fi

printf “\033[%s;%sH*\033[0;0H" ${snowflakes[$i]} $i

lastflakes[$i]=${snowflakes[$i]}
snowflakes[$i]=$((${snowflakes[$i]}+1))
}

while :
do
i=$(($RANDOM % $COLUMNS))

move_flake $i

for x in “${!lastflakes[@]}”
do
move_flake “$x”
done

sleep 0.1
done

fonte: sontek

Posted in shell, Uncategorized | Tagged , , | Comments Off

Como tirei minha habilitação de moto

Pronto, passei no exame prático de moto, mas levou 1 ano desde que pisei na auto escola gostaria de compartilhar minha experiência com vocês.

Meu pai tinha um consorcio de uma mirage EFI com 15 prestações pagas, sem condições de pagar, passou pra mim por um precin camarada, e então fui a auto escola, paguei 350 dilmas pela habilitacao categoria A.

Informei que num passado remoto já tinha começado um processo mas não tive tempo de concluir pois fui contratado para trabalhar em 3 capitais ao mesmo tempo, e passei 1 ano vivendo 1 semana em cada capital.

A auto escola me tranquilizou, disseram que pegariam minha ficha na auto escola antiga e em no máximo 15 dias limpariam meu cadastro antigo do sistema do Detran.

15 dias depois, o dono da auto escola disse que era eu quem deveria pegar a ficha na auto escola antiga. No dia seguinte fui lá e entreguei a ficha na auto escola nova e me pediram mais 15 dias.

Mais 15 dias depois, o dono da auto escola disse que eu estava devendo a ficha, apontei pra ele a gaveta onde minha ficha estava, então ele falou que eu deveria cancelar o processo no detran, perguntei: “como ?”. Ele me pediu para voltar no dia seguinte.

No dia seguinte, ele falou que estava tudo ok, e marcou o pré cadastro. 10 dias depois, estava eu no detran de são paulo portando meus documentos, e após ficar em pé por quase uma hora numa fila (isso pq tinha hora agendada), uma gentil senhora recusou meu RG por estar com o plastiquinho descolado na pontinha do documento. Tive que pagar mais algumas Dilmas de taxa de re-agendamento, para 20 dias depois. Além de pagar por um novo RG.

Sem surpresas finalmente consegui provar pro detran que eu existo, e que sou eu mesmo :) E fui marcar o exame médico. Paguei 112 Dilmas, mas na hora de cadastrar meus dados o sistema do detran tinha meu processo de 2006 ativo… e o mais curioso, é que apesar de todos os dados estarem corretos, meu nome foi trocado por Katiana Araújo Reis, ou algo do tipo.

Voltei na auto escola, e me disseram que era um vírus no sistema do Detran, que eles tinham outros alunos com o mesmo problema. A auto escola só levou 4 meses para resolver o problema… nesse meio tempo, fui contemplado pelo consórcio :)

Era hora de fazer o CFC, o dono da auto escola me perguntou onde eu queria fazer, eu disse que em um lugar bom que tivesse aulas de sábado, me deu o telefone de uma na Vila Mariana que custava 120 Dilmas. Mas quem disse que eles tinham aulas de sábado ? Busquei na net e achei uma super famosa no bairro de pinheiros, com aulas aos sábados, custando 180… Foram longos 1 mês e meio, quase todos os sábados e domingos… só não foram mais longos pq o CFC fraudava o esquema das digitais mudando a hora do relógio do PC, e nos dispensando com 1h30 de aula teórica.

Quando fui na auto escola pra marcar o exame teórico, surpresa ! Tinha uma taxa de rematricula de 250 que eu deveria acertar, já que já estava a 6 meses matriculado… Expliquei o lance da Katiana, o dono da auto escola sumiu, e fiquei isolado por um monte de funcionários sem autonomia pra resolver os problemas.

Sem grana pra continuar tive que esperar 1 mês, até o salário cair, paguei a rematricula, e fiz o exame teórico… Yes! Acertei a placa da alfândega!!! Passei, sem novidades.

Chegou o grande momento, as aulas práticas no ibira, mas a atendente me avisou que o esquema funcionava da seguinte forma, eu tinha que botar a digital na auto escola, pegar um busão que levava 30 minutos até o parque, fazer minhas aulas e terminar 30 minutos antes pra colocar a digital novamente.

Ou seja, em 1 hora de aula eu passaria 1 hora no transito e 0 minutos na pista treinando…

Em uma aula de 2 horas passaria 1 hora no transito e 1 hora na pista. Conclusão, só valia a pena fazer aulas de 3 horas, já que teria 2 horas de aula na pista.

Lindo, mas pra auto escola era muito dificil marcar 3 aulas nos horarios que eu podiar faze-las… então levei meses pra cumprir todas as aulas obrigatórias.

Depois de agendar tudo me mandaram procurar o paulinho … e quem disse que ele tava lá ? Minha aula era as 8h00, cheguei lá as 8h30 e o paulinho chegou 9h30 pq teve um problema na sua loja de acessórios para motos. Ele me perguntou se eu já tinha andado de moto, se sabia andar de bike, me mostrou pra que servia os manetes e pedais e nunca mais vi paulinho …

Desse dia em diante, estava por conta, chegava na pista, alguém aleatório me dava uma moto e um capacete, e eu ficava no circuitinho.. quando faltava 30 minutos pra acabar a aula eles me avisavam pra pegar o busão.

Nunca ninguém me explicou nada, quando eu questionava falavam pra achar paulinho … por onde andava paulinho?

Terminei as aulas diurnas, e fui marcar as noturnas, que me disseram que seria num estacionamento na rua de baixo. Tcharam ! Não existiam as aulas…. quando questionei o dono da auto escola ele me disse que elas eram ministradas no parque do ibirapuera a noite… aham … A funcionaria me jogou a real, falou que era só botar a digital nos horários marcados e já era, e que eu poderia fazer essas aulas na pista durante o dia.

Enfim marquei meu exame, e olha quem eu encontrei ! paulinho ! Ele chegou me cobrando uma taxa de 20 reais, disse que a gente só tinha que se preocupar com 3 coisas, viseira, capacete amarrado e farol.

Na hora do exame, peguei uma moto super dificil de domar, ela se recusava a andar devagar e tinha uma embreagem bem sensivel, dei uns trancos no labirinto mas fui perfeito, não queimei linhas, não chutei cones, não deixei a moto morrer, nada disso, até na prancha mantive as rodas em cima da linha. E fui reprovado, na prancha… no dia não entendi.

Esperei passar o trauma e cair o salário do mês, todos os amigos, amigas e parentes me recomendaram pagar o quebra … na real sofri pressão pra pagar o quebra ehhehe. Fui na auto escola 15 dias depois do tempo mínimo estipulado para remarcação da prova, paguei 315 reais pela remarcação mais aulas extras, e fui avisado que em breve teria que pagar uma nova rematricula, outros 250 reais.

Estava tudo muito claro pra mim, eu era uma máquina de dinheiro pro detran e pra auto escola… ainda mais agora, faltando 15 dias pra rematricula e 45 dias do vencimento do exame médico. Fui lá e marquei o meu segundo último exame, não toparia pagar uma nova rematricula naquele lixo de auto escola.

Mentalizei o exame que falhei por semanas, tentando entender o que diabos tinha saído errado naquele exame ridiculo que nao tem que dar seta ou trocar de marcha… não vi nada. Como tinha marcado 3 aulas na vespera da prova, corri pra pista, e quando cheguei lá na verdade era um exame do Detran, e que a auto escola tinha marcado minha aula no horario errado…

Já que estava lá, fiquei perto dos alunos e instrutores de escolas sérias até que ouvi um deles dizer: “Na prancha voces devem acelerar, e nao devem jamais balancar o guidao isso pro examinador significa desequilibrio por mais que vc nao saia da linha”. Matou a charada, foi exatamente o que eu fiz no exame que bombei, fui devagar tentando ao maximo nao deixar a moto sair da linha. Com essa info ganhei meu dia, pratiquei como andar na prancha do jeito certo graças ao professor anonimo.

No dia seguinte, rolou exame, adivinha quem apareceu ? Paulinho ! Cobrou os 20 contos pelos 3 toques de sabedoria (viseira, farol etc…) me deixou treinar na pista antes da prova (da outra vez ele só cobrou, safado), me parabenizou pela prancha perfeita que me viu executar (mas que nao me ensinou a fazer) e sumiu novamente.

No exame deu tudo certo, peguei uma moto mais dócil, fiz o circuito e a prancha sem nenhum erro e fui aprovado, graças ao instrutor de uma outra auto escola. Fui um autodidata, não tive nenhum apoio da auto escola mesmo pagando uma fortuna pelas aulas e rematriculas.

Tá tudo errado, o Detran tá viajando, suas provas não condizem com a realidade do transito, as moto escolas se escoram na inabilidade do Detran se organizar e montaram um esquema onde um unico instrutor pega alunos de mais de 30 auto escolas diferentes e nao tem tempo de ensinar o minimo pra ninguem.
As auto escolas do grupo f*%sh, entregam aos alunos motos com problemas (já pequei uma que o freio falhou repentinamente), e capacetes sem condições de uso.

Pra quem tá começando a tirar carta de moto em SP, recomendo:

1 – compre seu próprio capacete
2 – se o paulinho for seu instrutor, grude nos intrutores de outras moto escolas sérias.
3 – evite aulas aos sábados, é muito cheio, vc leva 15 minutos na fila pra ficar 2 na pista.
4 – coma bem, durma bem, mentalize a pista e seus obstaculos antes das provas.
5 – prepare o bolso meu amigo.

Posted in vida | Tagged , , , , | Comments Off

Como fazer um keylogger/mouse no linux ?

É bem simples, mais do que qualquer um pode imaginar… existe um comando chamado xinput, ele testa e configura dispositivos de entrada conectados ao Xorg, pois bem, para listar os devices conectados:

 

 

 

[liquuid@catalina ~]$ xinput list
⎡ Virtual core pointer                    	id=2	[master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer              	id=4	[slave  pointer  (2)]
⎜   ↳ Microsoft  Microsoft Basic Optical Mouse v2.0 	id=10	[slave  pointer  (2)]
⎣ Virtual core keyboard                   	id=3	[master keyboard (2)]
    ↳ Virtual core XTEST keyboard             	id=5	[slave  keyboard (3)]
    ↳ Power Button                            	id=6	[slave  keyboard (3)]
    ↳ Power Button                            	id=7	[slave  keyboard (3)]
    ↳   USB Keyboard                          	id=8	[slave  keyboard (3)]
    ↳   USB Keyboard                          	id=9	[slave  keyboard (3)]
    ↳ cx88 IR (Prolink Pixelview MPEG         	id=11	[slave  keyboard (3)]

 

 

 

Isso mostra o ID do meu teclado, no caso o número 8, então o comando abaixo é suficiente para capturar tudo que eu digitar:

 

 

[liquuid@catalina ~]$ xinput  test 8
key release 36
key press   54
ckey release 54
key press   52
zkey press   53
xkey release 52
key release 53
key press   56
bkey release 56
key press   25
wkey release 25

 

 

Basta então deixar isso rodando em background e processar as teclas digitadas com mais calma depois.

Um exemplo de código para o keylogger pode ser encontrado aqui.

 

Para nossa felicidade da pra gravar o mouse também, basta usar :

[liquuid@catalina ~]$ xinput  test 10
motion a[0]=1046 a[1]=270
motion a[0]=1055 a[1]=269
motion a[0]=1063 a[1]=266
motion a[0]=1068 a[1]=264
motion a[0]=1070 a[1]=264
motion a[0]=1071 a[1]=263
motion a[0]=1072 a[1]=262
motion a[0]=1073 a[1]=261
motion a[0]=1074 a[1]=260
motion a[0]=1075 a[1]=259
motion a[0]=1075 a[1]=258
motion a[0]=1076 a[1]=257
motion a[0]=1077 a[1]=256
motion a[0]=1076 a[1]=256
motion a[0]=1075 a[1]=255
motion a[0]=1074 a[1]=255
motion a[0]=1073 a[1]=255
motion a[0]=1072 a[1]=255
motion a[0]=1071 a[1]=255
motion a[0]=1070 a[1]=255
motion a[0]=1069 a[1]=254
motion a[0]=1068 a[1]=253
button press   1
motion a[0]=1069 a[1]=252
motion a[0]=1071 a[1]=252
motion a[0]=1072 a[1]=252
motion a[0]=1073 a[1]=252
motion a[0]=1074 a[1]=253
motion a[0]=1076 a[1]=254
motion a[0]=1077 a[1]=254
motion a[0]=1078 a[1]=254
motion a[0]=1079 a[1]=254
motion a[0]=1080 a[1]=255
motion a[0]=1081 a[1]=256
motion a[0]=1083 a[1]=257
motion a[0]=1085 a[1]=258
motion a[0]=1086 a[1]=259
motion a[0]=1088 a[1]=260
motion a[0]=1089 a[1]=260
motion a[0]=1091 a[1]=262
motion a[0]=1092 a[1]=263
motion a[0]=1093 a[1]=264
motion a[0]=1094 a[1]=265
motion a[0]=1095 a[1]=265
motion a[0]=1096 a[1]=266
motion a[0]=1097 a[1]=267
motion a[0]=1098 a[1]=268
motion a[0]=1099 a[1]=269
motion a[0]=1100 a[1]=270
motion a[0]=1101 a[1]=271
motion a[0]=1102 a[1]=272
motion a[0]=1103 a[1]=272
motion a[0]=1105 a[1]=273
motion a[0]=1106 a[1]=274

 

Alguns encaram o xinput como uma mega falha de segurança e você caro leitor ?

Posted in linux | Tagged , , | 4 Comments

Kids Today Are So Lazy…



Posted in humor | Tagged , | Comments Off

史上最牛的菜市场

Demais, por isso amo os asiáticos, dê a eles um trilho de trem e alguns vegetais e eles fazem uma feira !

Posted in vida | Tagged , , , | Comments Off