Mostrando postagens com marcador slackware 13. Mostrar todas as postagens
Mostrando postagens com marcador slackware 13. Mostrar todas as postagens

sábado, 1 de janeiro de 2011

Compilação do Chromium

Eu tinha um problema com o meu chrome ( fechava quando tentava acessar uma pasta com imagens durante uma operação de upload - parece ter algo a ver com a libjpeg6/7).

Enfim, decidi compilar o Chromium (de novo, já tinha feito isso antes).

Não foi tão dificil, só tive que instalar dependências que eu não tinha na minha máquina (gnome-keyring e libtasn) e seguir as instruções do site. Também tive que atualizar minha instalação do nss/nspr para a versão + recente.

Rodei o Chromium e não tenho mais o problema com os uploads de imagem. Bom!

Queria também habilitar os recursos de WebGL. Mas para isso teria que subir a versão mais recente do Mesa (7.9 - Com suporte a libGLES2).

Não sei por que o Mesa 7.9 fica mais lento que a versão atual que tenho (7.5). Mesmo configurando com parâmetros iguais...

Enfim, o que eu queria a principio fiz, que era o Chromium.

sábado, 30 de janeiro de 2010

Resumo do sábado => Avatar 3D / Instalação do kdebluetooth4 no Slack13

Enfim consegui assistir o Avatar 3D!

Sem sombra de dúvidas o ambiente 3D fez o filme ter uma classificação maior do que teria se fosse uma simples animação de computação gráfica. Não que o filme seja ruim sem isso, muito pelo contrário: O enredo é bacana. Mas com certeza ele não bateria o recorde de bilheteria.

O ambiente 3D é demais! Quando algo é atirado na direção da tela, é como se o objeto tivesse passado raspando por você. Um ator empunhando uma arma e girando 360 graus faz parecer que o cano dela está a apenas alguns centímetros da sua cabeça!

Valeu a pena. Mesmo o valor do ingresso sendo salgado ( 20 reais aqui em Santos para uma sessão de sábado a tarde no CineMark) valeu a pena.

Agora mudando de assunto: Vou falar do kdebluetooth4. Foi um parto fazer funcionar no Slackware 13. Mas funcionou!

Para quem não sabe, o kdebluetooth é um agente que roda em background e habilita o KDE a fazer troca de arquivos com outros dispositivos Bluetooth (Celulares, Smartphones, etc). Ele depende do BlueZ, um conjunto de bibliotecas e utilitários para gerenciar os dispositivos e conexões Bluetooth. Tem também duas versões: Uma para o KDE 3 e outra para o KDE4 (essa última a que eu instalei).

A principio parecia ser tarefa simples (sempre parece a primeira vista, mas o fato é que 80% das coisas que fiz no Linux até hoje deram certa dor de cabeça até funcionar). Bastava baixar uma versão disponível no linuxpackages.net, instalar e fim de papo.

Não haviam versões do kdebluetooth4 já empacotadas. O jeito era compilar a partir dos fontes. Se eu já tivesse todas as dependências, seria apenas o trivial: ./configure, make e make install. Então baixo a versão 0.3 do link abaixo:


Mas, como na narrativa de Joseph Climber "a vida é uma caixinha de surpresas"... Apesar de ter todas as dependências (incluindo o BlueZ 4.58, que substituiu a versão 3.36 que vem no Slack) davam erros na compilação. Coisas como a mensagem abaixo:

class Solid::Control::BluetoothInterface’ has no member named ‘findBluetoothRemoteDeviceUBI

Depois de pesquisar na net, descobri que o problema é que foram usados recursos implementados a partir do KDE 4.3 (um tal de solid Bluetooth). Instalar uma nova versão do KDE não estava nos meus planos, mas havia uma outra solução: O desenvolvedor do kdebluetooth (Tom Patzig) criou patches que podem ser aplicados ao KDE 4.1 e ao 4.2, permitindo que o kdebluetooth possa ser compilado e utilizado nessas versões.

Fui em busca dos fontes do kdebase-workspace no DVD do Slack13. Fica no diretório source/kde/kdebase-workspace/. Como há dependências entre vários módulos do KDE, copiei todo o conteúdo do diretório "source/kde" para o HD:

cp -R /media/SlackDVD/source/kde ~/

Criei um diretório temporário e descompactei o conteúdo do arquivo "source/kde/src/kdebase-workspace-4.2.4.tar.xz":

mkdir -p ~/kde/temporario
cd ~/kde/temporario
tar xvf ~/kde/src/kdebase-workspace-4.2.4.tar.xz


. Baixei o patch e copiei para esse diretório também. O patch para o KDE 4.2 (solid-bluetoothTrunkTo42.diff) foi baixado do endereço abaixo (fica no fim da página):


Antes de aplicar o patch, tive que edita-lo para acertar os caminhos para que ele pudesse encontrar os arquivos. Talvez não fosse necessário, mas só consegui aplicá-lo depois de ter feito o seguinte:

# De:
--- bluez-bluetoothinterface.cpp (.../branches/KDE/4.2/kdebase/workspace/solid/bluez) (revision 912529)
+++ solid/bluez/bluez-bluetoothinterface.cpp (.../trunk/KDE/kdebase/workspace/solid/bluez) (revision 912529)

# Para:
--- ./solid/bluez/bluez-bluetoothinterface.cpp (.../branches/KDE/4.2/kdebase/workspace/solid/bluez) (revision 912529)
+++ ./solid/bluez/bluez-bluetoothinterface.cpp (.../trunk/KDE/kdebase/workspace/solid/bluez) (revision 912529)

Fiz isso em todos os pontos do patch (aqueles com um --- e um +++ no começo da linha). Dai pude aplicá-lo com o comando abaixo:

cd ~/kde/temporario
patch -p1 <>

Feito isso, reempacotei o fontes alterados:

cd ~/kde/temporario
tar cvf kdebase-workspace-4.2.4.tar.xz *
cp kdebase-workspace-4.2.4.tar.xz ~/kde/src/kdebase-workspace-4.2.4.tar.xz

E sobrepus pelo original que copiei junto dos demais fontes para o meu HD.

Depois disso foi a hora da compilação: Entrei no diretório ~/kde/kdebase-workspace e executei o script kdebase-workspace.SlackBuild:

cd ~/kde/kdebase-workspace
./kdebase-workspace.SlackBuild

Após mais de uma hora de compilação terminou. O novo pacote foi gerado em /tmp/kdebase-workspace-4.2.4-i486-1.txz, e o atualizei com os comandos abaixo:

upgradepkg --install-new --reinstall /tmp/kdebase-workspace-4.2.4-i486-1.txz
/usr/bin/update-mime-database /usr/share/mime 1> /dev/null 2> /dev/null &

Beleza! Voltei a tentar compilar o kdebluetooth4 (versão 0.3) e... passou!

Ao rodá-lo, ele começava a subir e parava com uma mensagem de erro: Estava faltando instalar o obex-data-server que eu não tinha. Baixei-o do caminho abaixo, compilei, instalei e ai deu tudo certo:


Apesar de já existir a versão 0.4.5, ela estava dando erros de compilação. A versão 0.4.4 compilou sem problemas.

Pelo menos até agora ta tudo redondinho. Transferi um arquivo do PALM para o PC via bluetooth e ele veio sem problemas

Bem era isso. Bom fim de sábado a todos!


domingo, 17 de janeiro de 2010

Acessando a internet no Palm Centro via rede Bluetooth Linux

Depois de muito bater a cabeça consegui fazer a tal da rede Bluetooth funcionar para compartilhar minha banda larga e acessá-la no palm!!!

Estou usando um desses adaptadores baratinhos que vendem por ai. O meu é esse aqui (saída do lsusb):

Bus 002 Device 003: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)

Eu utilizo o Slackware 13. Bem, abaixo segue basicamente o que fiz:

1) Após plugar o adaptador, ele foi reconhecido e carregou os módulos necessários (Santo udev / hal).

2) Editei o arquivo /etc/bluetooth/hcid.conf e editei o valor dos parâmetros abaixo:

- passkey: Senha de pareamento dos dispositivos que irão conectar no PC
- name: Nome que teoricamente deveria ser atribuído ao disposito. No meu caso, ele ficou com um nome bizarro ("D142189D7AD6417"). Não quis me preocupar com isso no momento.

3) Depois disso, iniciei o serviço do Bluetooth (estou usando o BlueZ 3.36, que veio na instalação do Slack13)

4) A saída do hciconfig resultou na saída abaixo:

hci0: Type: USB
BD Address: 00:18:E4:0B:C8:41 ACL MTU: 192:8 SCO MTU: 64:8
UP RUNNING PSCAN ISCAN
RX bytes:959 acl:0 sco:0 events:27 errors:0
TX bytes:364 acl:0 sco:0 commands:27 errors:0

5) No PALM Centro, ativei o Bluetooth e mandei listar dispositivos para adicionar como confiáveis. Meu PC era listado, mas eu não conseguia de jeito nenhum parear, pois ele sempre falhava após digitar a passkey definida (exibia a mensagem "Não foi possível adicionar D142189D7AD6417 a lista de dispositivos confiáveis".

6) Bati a cabeça com isso, não conseguia fazer parear de jeito nenhum. Resolvi então testar no Windows, para ver como ele se comportava. Instalei o driver e o programa "Bluesolei" que vem junto do CD de instalação (bem na verdade tive que baixar, pois o meu quebrou na entrega...)

La acontecia a mesma coisa: Eu conseguia detectar o PC no PALM (com aquele mesmo nome bizarro apesar de eu ter trocado o nome) mas na hora de autenticar... nada. Fuçando as opções, achei uma caixa de seleção chamada "Encrypt data". Marquei ela e tentei de novo e consegui parear (somente desabilitando aquele lance de bolinha e tracinho do PALM que ficam trocando o que você digitou por outros caracteres; Até então achei que fosse algum recurso de inibição de senha somente).

7) Vendo que funcionou assim, voltei ao Linux e vi que pelo comando hciconfig eu conseguia habilitar a criptografia assim como fiz no Windows. Então digitei o comando:

hciconfig hci0 encrypt

Ao lista novamente o dispositivo apareceram as informações "AUTH" e "ENCRYPT"

hci0: Type: USB
BD Address: 00:18:E4:0B:C8:41 ACL MTU: 192:8 SCO MTU: 64:8
UP RUNNING PSCAN ISCAN AUTH ENCRYPT
RX bytes:2868 acl:7 sco:0 events:89 errors:0
TX bytes:735 acl:8 sco:0 commands:53 errors:0

8) Tentei parear novamente a partir do PALM e consegui! O PC foi adicionado a lista de dispositivos confiáveis

9) O próximo passo foi configurar a rede bluetooth. Para isso, fiz o seguinte:

9.1) Editei o arquivo /etc/rc.d/rc.bluetooth.conf e troquei o valor dos seguintes parâmetros:

# Habilita as conexões ppp vindas do PALM
DUND_ENABLE=true

# Define as opções do pppoe.
DUND_OPTIONS="--listen --msdun --channel 1 192.168.0.104:192.168.0.105"

Note nesse último parâmetro há dois IPs separados por dois pontos. O primeiro é o IP que será atribuido a conexão ppp (no linux). O segundo é o que será atribuido ao PALM.

9.2) Reiniciei o serviço do Bluetooth

/etc/rc.d/rc.bluetooth restart

9.3) Ativei o forward (para que o PC repasse as requisições vindas do PALM)

echo '1' > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -A FORWARD -i ppp0 -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

10) Como resultado disso tudo, obtive o seguinte:

# Dispositivo ativo conforme saída do comando hciconfig
hci0: Type: USB
BD Address: 00:18:E4:0B:C8:41 ACL MTU: 192:8 SCO MTU: 64:8
UP RUNNING PSCAN ISCAN AUTH ENCRYPT
RX bytes:3487 acl:7 sco:0 events:105 errors:0
TX bytes:1061 acl:8 sco:0 commands:69 errors:0

# Daemons rfcomm, hcid e dund em execução:
ps -ef | egrep "(dund|hcid|rfco)" | grep -v grep
root 2719 2 0 10:54 ? 00:00:00 [krfcommd]
root 4279 1 0 14:59 ? 00:00:00 /usr/sbin/hcid -s -f /etc/bluetooth/hcid.conf
root 4283 1 0 14:59 ? 00:00:00 /usr/bin/dund --listen --msdun --channel 1 192.168.0.104:192.168.0.105

11) Parti para a configuração do PALM Centro. Primeiro criei uma nova conexão Bluetooth, conforme abaixo.

11.1) Acessei no menu "Pref" e dentro dele "Conexão" e criei uma nova, conforme abaixo:

11.1.1) Em "Nome" digitei "btooth" (apenas para identificação da conexão)

11.1.2) Em "Conectar a" escolhi "PC"

11.1.3) Em "Via" escolhi "Bluetooth"

11.1.4) Dei um toque em "Dispositivo: Toque para detectar" e selecionei o dispositivo listado relacionado ao meu PC (no meu caso aquele nome esquisito) e cliquei em OK, e novamente em OK na tela anterior.

11.1.5) Por fim, toquei em "Opções" e alterei a velocidade para "115.200 bps"

11.2)
Acessei no menu "Pref" e dentro dele "Rede" e criei uma nova, conforme abaixo:

11.2.1) Em "Serviço" digitei "rede_btooth"

11.2.2) Em "Conexão" escolhi "btooth" ( O nome que eu havia informado em 11.1.1)

11.2.3) Fui em "detalhes", depois em "avançado" e fiz o seguinte:

11.2.3.1) Deixei marcada a caixa "Endereço IP: Automático"

11.2.3.2) Desmarquei a caixa "Consultar DNS" e preenchi os campos "DNS primário" e DNS secundário" com os mesmos que uso no PC. Para saber quais eram, consultei o arquivo /etc/resolv.conf no linux.

11.2.4) Cliquei nos "oks" até voltar para tela com o nome do Serviço e da Conexão Utilizada. Dai cliquei em "Conectar". Surgiu um aviso que eu deveria me conectar a internet para concluir a solicitação (só para inglês ver - Ele não usa a rede GPRS/EDGE nesse ponto, até porquê nem créditos eu tinha :) ). Escolhi "Sim". Segundos de tensão e... conectado! :)

12) Agora era testar a conexão. Abri o Blazer e tentei abrir uma página. Ele me pediu para ligar o telefone. Fiz isso e conseguir navegar!!!

Obviamente que não cheguei a conclusão disso tudo sozinho. Consultei bastante na internet. Segue alguns links que me serviram de referência:

#

Internet Access via Bluetooth on Linux


# Conectando TREO 680 via Bluetooth na internet local do PC (Windows)

#
Configure a linux PC as a bluetooth access point for a palm

# Bluetooth in Slackware HOWTO

Agradeço as pessoas que tiveram a boa vontade de compartilhar as informações acima!

segunda-feira, 14 de setembro de 2009

Novo SO

Escrevo esse post com o Slackware 13, que instalei ontém.

Estou usando o KDE 4. É bem bonito, mas também é pesadão. Devem existir várias maneiras de customizar para ficar mais leve, mas ainda não explorei o suficiente.

Tudo que testei até agora está funcionando. A única coisa são permissões no usbfs que preciso descobrir onde alterar. Utilizo o Virtual Box e como estou usando uma imagem antiga de disco, só adicionar o usuário no grupo vboxusers não é suficiente (segundo a documentação).

Se eu me arrepender e quiser voltar para o 12, fiz um backup da partição. Mas acho que não será necessário.

domingo, 13 de setembro de 2009

Mais tempos de corrida e atualização de SO (Slackware 13)

Hoje fiz 49 minutos e 26 segundos nos 10080 metros. Contei 160 BPM.

Nesse momento estou fazendo um backup dos meus arquivos importantes (e também os sem importância) porque vou atualizar para a versão 13 do Slackware! Estou instando a versão 32 bits, porque minha máquina é 32 bits (um sempron 2400 - Que para o meu uso está ótimo).

Vamos ver no que que dá...