Unindo o melhor dos mundos com as locales pt_BR e en_US

No ubuntu as locales, variáveis que começam com LC_ e LANG/LANGUAGE, determinam em quais idiomas iremos interagir com o desktop.

Nós brasileiros podemos utilizar pt_BR para ter menus, mensagens, formatos: data, hora, monetário, separador de milhares no nosso formato nativo, ou então utilizar o padrão en_US. O problema ao se utilizar o pt_BR, é que quando nos deparamos com mensagens de erro e googlamos por elas, não conseguimos encontrar a solução. Portanto o ideal é: mensagens de erro (e também opções de menu, ajuda, etc.) em inglês e os formatos na localidade brasileira.

Para tanto, é preciso adicionar as seguintes linhas em /etc/environment e /etc/default/locale (na minha experiência deixando LANG em pt_BR continuou com mensagens em en_US):


LANG=pt_BR.utf8
LANGUAGE=en_US.UTF-8
LC_CTYPE=pt_BR.UTF-8
LC_NUMERIC=pt_BR.UTF-8
LC_TIME=pt_BR.UTF-8
LC_COLLATE=pt_BR.UTF-8
LC_MONETARY=pt_BR.UTF-8
LC_MESSAGES=en_US.UTF-8
LC_PAPER=en_US.UTF-8
LC_NAME=en_US.UTF-8
LC_ADDRESS=en_US.UTF-8
LC_TELEPHONE=en_US.UTF-8
LC_MEASUREMENT=pt_BR.UTF-8
LC_IDENTIFICATION=en_US.UTF-8
LC_ALL=

e seja feliz.

Drag’n’Drop, Hashes MD5 no Ubuntu!

Após muito pesquisar no Google, vi que estamos ainda, usuários do Ubuntu, relegados a abrir um terminal toda vez que queremos verificar a Hash MD5 de um arquivo (para comparar se dois são iguais, e também verificar autenticidade de arquivos baixados da internet). No Windows, beleza, tem o freeware Hash Tab que adiciona uma tab nas propriedades de arquivo para esta função. Mas para Ubuntu, em ambiente Gnome, ainda não passa de uma idéia (http://brainstorm.ubuntu.com/idea/2139/). Pois bem, em atenção ao princípio de que em software livre os usuários também devem colaborar se não a coisa não anda, resolvi publicar o script, que coloquei na área de trabalho como lançador (comando = “~/bin/gmd5sum %u” com argumento %u pois assim basta arrastar e soltar um arquivo para verificar sua checksum).

Como sabemos que os discos rígidos são a parte mais lenta de um computador, e para calcular uma hash MD5 de um arquivo com vários gigabytes pode levar muito tempo (pois ele tem que ler todo o arquivo) então coloquei um limite, de 4Gb = 4096 Megabytes, onde passando disso o script se recusa a executar. Isto pode ser configurado, alterando a linha, TOO_HIGH_SIZE=4096, para o valor desejado.

Dito isto, este é o script (basta copiar e colar num arquivo, torná-lo executável e criar um lançador pra ele na área de trabalho conforme explicado acima):

#!/bin/bash
#Configurar tamanhos altos e altos de mais (em Mb): alto, mostra mensagem informativa 
#e alto demais, emite mensagem de erro sem calcular checksum
HIGH_SIZE=100
TOO_HIGH_SIZE=4096
FILE="${@}"
if [ "x$1" = "x" ]; then
	xmessage "Erro: nenhum arquivo indicado para calcular md5 sum"
	exit 1
fi;
SIZE=$(ls -l "${FILE}"|awk '{print $5}')
SIZE_HUMAN=$((SIZE/1024/1024))
if [ $SIZE_HUMAN -gt $TOO_HIGH_SIZE ]; then
	xmessage "Erro: '$FILE': tamanho de arquivo muito grande ($SIZE_HUMAN > $TOO_HIGH_SIZE Mb)"
	exit 1
fi;  
if [ $SIZE_HUMAN -gt $HIGH_SIZE ]; then
	xmessage "Calculando checksum de arquivo com $SIZE_HUMAN Mb..." -nearmouse -timeout 5 -buttons Ok:0,Cancelar:1
	if [ $? -eq 1 ]; then
		xmessage -nearmouse -timeout 5 "Operacao cancelada pelo usuario..."
	        exit 1
	fi
fi

MD5="$(md5sum "${FILE}")"
xmessage "$MD5 ($SIZE bytes = $SIZE_HUMAN Mb)"

Dual boot Vista/Intrepid em RAID0 (nForce)

O Windows Vista reconhece automaticamente o RAID0 da NVIDIA. A nova versão, Seven, também provavelmente reconhecerá.
Com o Vista instalado em sua partição, partiremos para a parte mais difícil, a instalação do Ubuntu Intrepid X86_64
Estes são os passos seguidos (YMMV):

  1. Boot do Live CD
  2. Ativar a conteúdo comunidade (em Canais de software)
  3. Abrir  terminal:
    sudo apt-get install dmraid
    sudo modprobe dm-raid4-5
    sudo dmraid -ay
    ls  /dev/mapper # pra conferir se as partições aparecem.
    
  4. No meu caso:
    Coloquei os dois discos da arranjo nas portas SATA2 e SATA3, assim ficou
    nvidia_adegbbba
    nvidia_adegbbba2 Vista
    nvidia_adegbbba3 /home
    nvidia_adegbbba4 NTFS (armazenamento, na parte mais lenta do array)
    nvidia_adegbbba5 SWAP
    nvidia_adegbbba6 /
  5. Na primeira rodada do ubiquity, apenas configura-se o particionamento e reinicia. Na segunda rodada é que se faz a instalação após repetir passos 1-3. Atentar para no fim da instalação selecionar opção avançada->não instalar o grub.
  6. Continuando, comandos para o pós-instalação… Continuar lendo

Sincronização do Evolution com Scheduleworld no Ubuntu Hardy

  1. Adicionar a seguinte linha no /etc/apt/sources.list:
    deb http://www.estamos.de/download/apt stable main
  2. aptitude update
  3. aptitude install syncevolution (responda “Sim” ou “Yes” de acordo com o idioma utilizado etc.)
  4. (supondo cadastrado no scheduleworld.com com nome de usuário xx e senha yy)
  5. USER=xx PASSWORD=yy syncevolution --configure --sync-property "username=$USER"  --sync-property "password=$PASSWORD" scheduleworld
  6. Para sincronizar: syncevolution scheduleworld (dá pra criar um link na área de trabalho para agilizar no dia-dia)
  7. Em caso de falhas: less  /tmp/SyncEvolution-${USER}-scheduleworld/client.log (se der erro de evolution com lista de endereços abrir o evolution, anotar nome da lista principal – por exemplo, “Pessoal” – e corrigir configuração com  syncevolution --configure --source-property evolutionsource=Pesssoal scheduleworld addressbook)
  8. Os dados de calendário, lista de endereços, notas e tarefas estarão sincronizados no Scheduleworld, permitindo a fácil sincronização com celulares, PDAs, Outlook etc. Só o gmail parece que tem uns problemas no momento (toda vez que sincronizo recebo uma mensagem “Google autoSync failed”.

Como conectar o Motorola ROKR E2 com um Desktop Linux em rede

1. Configuração do celular

Entre em configurações, depois em conexões, e, em USB, selecione USB NET. Caso não apareça na lista (caso só a pareça as opções de memory card e usb modem), será necessário atualizar a firmware para uma versão mais nova, vide este site .

2. Configuração do computador

Vamos precisar dos módulos: usbnet, mii, cdc_ether e não podemos esquecer do cdc_subset (podem ser encontrados e drivers -> net -> usb no make menuconfig)

Ok, módulos carregados, basta conectar o cabo USB e configurar a rede com o comando:

ifconfig usb0 inet 192.168.1.1 up

Podemos testar com:

[root@localhost linux-2.6.22-0.ydl.rc4]# ping 192.168.1.2
PING 192.168.1.2 (192.168.1.2) 56(84) bytes of data.
64 bytes from 192.168.1.2: icmp_seq=1 ttl=64 time=6.20 ms
64 bytes from 192.168.1.2: icmp_seq=2 ttl=64 time=0.842 ms

Ou, melhor ainda…

[root@localhost linux-2.6.22-0.ydl.rc4]# telnet 192.168.1.2
Trying 192.168.1.2...

Continuar lendo

Arquivos copiados de partições Windows aparecem verdes? Eis aqui a solução.

Em qualquer migração para o sistema Linux, invariavelmente temos que mover/copiar os arquivos que usávamos no Windows, afinal de contas, trata-se de uma migração, e queremos ter acessos aos arquivos da mesma forma que no sistema anterior (bom, não exatamente na mesma forma, já que o OpenOffice não abre arquivos .docx, .xlsx e .xlsxm do Office 2007). Então, copiados os arquivos, eles aparecem verdes na listagem de diretórios do terminal. Como cenários parecidos com este de cópia de arquivos tem se tornado freqüentes, decidi automatizar o processo de “conserto” das permissões dos arquivos e diretório através do seguinte script bash, nomeado bin/unvfatize.sh
:

#!/bin/bash
#este script, corrije permissões de arquivos vindo de partições VFAT/NTFS
#Compatível com nomes de diretório contendo espaços (tm)

dir="$@"
if [ -z "$dir" ]; then
        echo No directory name given, using actual directory in 5 seconds, press ctrl-c to cancel...
        sec=5
        while [ $sec -ge 0 ]; do
                sleep 1
                echo -n "$sec "
                sec=$((sec-1))
        done
        dir=.
fi
echo -n "Analyzing directory infra-structure..."
mb=$(du -sm "${dir}"|awk '{print $1}')
echo "Will fix $mb MB of data"
echo Fixing Directory permissions...
find "${dir}" -type d -exec chmod 0755 \{} \;
echo Fixing File permissions...
find "${dir}" -type f -exec chmod 0644 \{} \;
echo Done.

Como transformar o Playstation 3 num super-computador

ALERTA: caso esteja jogando jogos no PS3, e deseje preservar o progresso já feito, e não ter que passar de fase de novo, é necessário fazer backup dos dados antes de formatar o HD. Para tanto, conecta-se um HD removível ou pen-drive USB e seleciona-se a opção adequada no menu. Geralmente em 10 minutos mais ou menos todo o conteúdo (incluindo jogos, demos, atualizações de jogos, vídeos, música etc) é salvo. 

Super-computador o Playstation 3 já é, falta apenas instalar o software. Segue procedimentos de instalação do ambiente de programação (versões 2.1 ou 3.0) no Linux (Yellow Dog, Fedora)

CELL SDK 2.1 –> Yellow Dog Linux 5.0.2
como: http://ftp.yellowdoglinux.com/pub/yellowdog/betas/Cell_SDK_2.1/INSTALL.txt
testado: sim

Bom, o processo foi relativamente simples, basicamente bastou baixar uns 184 Mb de rpm’s (cell sdk 2.1 + glibc 2.5) , e copiar e colar os comandos, e o principal: finalmente consegui rodar o programa Hello World, depois de ter tentato no Fedora 8 e Debian testing e nao conseguido. Pena que tive que formatar o disco para poder instalar o Yellow Dog, ja que nao consegui instalar dois linuxes ao mesmo tempo no PS3, como tinha planejado.

CELL SDK 3.0 -> Fedora 7
usando o kernel: 2.6.21-1.3194.fc7
testado: sim  Continuar lendo

Preparando MP3’s para o celular Motorola

O telefone celular Motorola E398 possui excelentes recursos de áudio, com caixas de som estéreo de 22Khz embutidas. Mas tem uns problemas, que não foram consertados nem no seu sucessor, o ROKR E2, segundo o Wikipedia: algumas músicas são “puladas” pelo tocador e jamais tocadas.

Para consertar este problema e de quebra conseguir mais espaço para colocar mais músicas no aparelho, reduz-se o bitrate dos arquivos de áudio para 64 kbps. Continuar lendo

Acesso à internet via Bluetooth no Linux

Bom, para receita, precisaremos dos seguintes ingredientes:

Distribuição utilizada: Ubuntu Feisty Fawn 64 bits, mas pode utilizar outra de acordo com o gosto (todos os módulos e softwares necessários vem instalados nesta distro por padrão, o único pacote que instalei foi o bluez-pin para ter uma interface de usuário na hora de colocar a senha do pareamento bluetooth).

Hardware: Computador de mesa/notebook com bluetooth e acesso à internet, handheld palmOne TUNGSTEN E2, mas deve ser possível utilizar qualquer outro que possua Bluetooth e softwares de conexão à internet.

Módulos do kernel:

  • hci_usb
  • rfcomm
  • e demais módulos encontrados na maioria dos kernels, relacionados a usb e NAT

Softwares Linux:

  • bluez (pacotes bluez-pin e bluez-utils além do bluez-pin)
  • ppp
  • modprobe, iptables, etc.

Primeira parte: Linux

  1. Carregue o módulo Continuar lendo

Lendo notícias RSS no Emacs/GNUS

Bom, primeiramente, é necessário obter o endereço do feed de RSS, então, dentro do buffer Group do GNUS (aquele em que aparecem os emails, grupos de Usenet e feeds RSS) pressiona-se a combinação de duas teclas G R, daí no buffer de baixo vai pedir o endereço do feed, aí é só colocar aquele endereço que foi obtido inicialmente (vai ser pedido um nome e descrição pro feed, basta pressionar enter para usar nome/descrição fornecidos pelo próprio feed em si).

GNUS

Para ver quantas notícias novas (ainda não lidas) tem neste feed, pressiona-se o comando g, daí o GNUS baixa todas as notícias/emails novos de todas as fontes, e aparece a quantidade antes do nome do feed.

Para acessar o feed, basta mover o cursor até a linha do feed, e pressionar Continuar lendo