Frsoares' Dump

A repository of useless information

Mudando JRE default no Mac OS X

Hoje tive um problema, e resolvi relatar a solução, dado que não consegui achar uma resposta direta a isso quanto pesquisei.

Bem, atualmente, no meu Macbook, estou utilizando o Mac OS X 10.5 (codinome: Leopard). Esta versão já veio com uma instância do Java 1.5 (Tiger), utilizada por default em qualquer comando que se digitasse “java” ou “javac” na linha de comando, ou mesmo de qualquer outra forma padrão de inicialização de aplicativo Java. Até aí tudo bem, mesmo eu já havendo instalado atualizações que me permitiriam compatibilidade com Java 1.6, nunca precisei realmente da versão mais recente. Até hoje.

Acontece que, da noite para o dia (literalmente, de madrugada), um projeto que eu estava estudando passou a requisitar Java 6 para executar. Tudo graças a uma nova versão. Após muito quebrar a cabeça para descobrir o que estava acontecendo de errado (tirando o fato de eu insistir em usar a nova versão), descobri esse problema da JRE, e após algum tempo a mais, a solução.

Não se preocupe com alterações em links de diretórios através de linha de comando, nem com remoção de arquivos e renomeação de arquivos novos (sério, essa última então, caso feita sem cautela, pode dar muita dor de cabeça). Tudo que você precisa é digitar na linha de comando:

$ open "/Applications/Utilities/Java Preferences.app"

ou navegar pelo Finder entrando na pasta “Applications”, depois em “Utilities”, e abrindo o aplicativo “Java Preferences”. E voilá! Esta figura abaixo aparece, e você pode selecionar a ordem de preferência de escolha que deseje tanto para aplicações locais, quanto para os navegadores.

Aplicativo Java Preferences, no Mac OS X

Visão do Java Preferences (clique para tamanho natural)

Só posso agradecer ao local com a idéia mais próxima do que eu precisava, este aqui: http://blog.diogosantos.com/2009/09/java-5-no-macos-x-snow-leopard/

Superusuário vs. Autorun

Desde que surgiu aquele vírus no autorun dos pen-drives – para Windows, claro – tenho tido poucos problemas quanto a isso. Raramente utilizo máquinas Windows, então mesmo quando algum desses contamina meu pen-drive, não chega a me incomodar – portanto nunca cheguei a criar uma pasta chamada “autorun.inf”, ou esses outros truques. Mas acontece de às vezes precisar passar para uma máquina Windows um arquivo grande, e se torna desconfortável essa contaminação.

Um procedimento fácil, para quem tem uma máquina Linux por perto, é usar isto na linha de comando (dentro da pasta do pen-drive):

sudo rm -r autorun.inf RECYCLER/

ou

su
rm -r autorun.inf RECYCLER/

o que dá conta de eliminar os problemas no pen-drive, e já me permitiu ajudar vários amigos Windows-users também. =) É o único que utilizo.

Como adendo, nunca consegui fazer isso corretamente no Mac, mesmo seu modo superusuário dá problemas de permissão. Nesse ponto minha VM Linux entra em ação, e problema resolvido.

Zica da semana

Não, não é dica. É zica mesmo.

Interrogação piscante!

Interrogação piscante!

Ligando o macbook esta semana, fui confrontado primeiro com uma tela preta. Desliguei-o e liguei-o novamente. E lá me veio uma interrogação misteriosa piscando na tela, e nada do sistema carregar.

Conferindo o manual do Mac, descobri se tratar de um caso onde o sistema não foi encontrado. Segui os passos sugeridos pra resolver o problema:

  1. reiniciar o computador pressionando a tecla “Option”;
  2. inserir o CD de instalação do Mac OS X, reiniciá-lo com a tecla ‘C’ pressionada, e, com o CD em execução, ir no menu Utilities -> Disk Utilities (se não me engano), onde eu veria se poderia restaurar a partição (a qual não foi encontrada); e finalmente
  3. tentar reinstalar o Mac OS X, o qual não reconheceu nenhum HD para fazer instalação.

Ótimo, constatei que meu HD devia ter quebrado.

Comprei um HD SATA novo no outro dia, com mais espaço mas com o mesmo número de RPMs, da Samsung. Instalei-o na própria loja, e logo levei mais uns 2 dias para instalar tudo que precisava e voltar à pesquisa. E o PC da casa quebra 1 dia depois.

Lições aprendidas:

  1. não dormir com o notebook funcionando em um lugar sem ventilação (vide: tapete);
  2. HDs são realmente fáceis de se trocar no Macbook (ver este link da Apple); e
  3. o que é aquela interrogaçãozinha piscante.

Mais sorte da próxima vez!

Quake Live funcionando no Mac Também!

Instalando Quake

Instalando Quake


Após fazer uma atualização do Firefox no Mac OS X ontem, e logo em seguida atualizado o Flash Player, resolvi testar instalar o Quake Live no Mac novamente. Dessa vez, o site não apresentou incompatibilidade. Baixei o .dmg, copiei o plugin para a pasta de plugins do firefox seguindo a instrução de fechar a janela (ver imagem), e o processo seguiu como no Linux. Atualizações foram baixadas e já consegui me logar.

Agora, voltarei a jogar. =)

Humor automático

Ao ler um dos blogs do Bennett, vi ele mencionar um site para produção automática de tirinhas – sem precisar desenhar, só ser roteirista. O site? WittyComics. Fiz umas 3 tirinhas até agora, que ilustram este post.

Jokes

Jokes


Dynamic

Dynamic


Finally!

Finally!

Jogando QuakeLive no Linux!

Recentemente saiu a notícia no BR-Linux: estava disponível para jogar Quake Live com a pequena instalação de um plugin no Firefox. Entro no site do quakelive e tento instalar no meu Firefox ou no Safari do Mac OS X. O resultado foi o mesmo, a tela abaixo.

Incompatibilidade de plugin

Incompatibilidade de plugin


Estranho e abro a máquina virtual no Virtual Box. Consigo me cadastrar sem a telinha impedindo (rodando a mesma versão de Firefox, porém no Ubuntu). Começo a baixar o plugin e o instalo, como mostram as telas abaixo.
Instalando o plugin

Instalando o plugin

Plugin instalado

Plugin instalado

Prossigo com o processo de instalação, ele demora um pouquinho baixando atualizações (ok, minha banda de conexão não é muito larga), mas finalmente consigo começar o jogo. Como estou jogando na VM, com recursos escassos para vídeo e conexão lenta, o jogo ficou bastante lento, porém mesmo assim dá pra sentir que o jogo está bom e é empolgante ter essa portabilidade para GNU/Linux através do Firefox. Resta agora conseguir isso para o Mac OS. =)

Carregando jogo

Carregando jogo

Tela de boas vindas

Tela de boas vindas


Começando a jogar

Começando a jogar

Jogando em tela inteira

Jogando em tela inteira

“Cannot connect to VM”

Uma coisa estranha aconteceu hoje, e por isto estou fazendo uma pausa na preguiça de escrever algo.

Eclipse IDE

Eclipse IDE

Durante um dia normal de pesquisa, em uma reunião onde tentávamos entender o código de um projeto open source, o Eclipse Ganymede que ele utilizava no Linux estava com um problema para executar o Debug. Toda vez que tentava executá-lo, aparecia um dialog informando:

“Cannot connect to VM”.

Estranhamos. Olhando nas configurações de JRE utilizadas, estava tudo ok, e o problema apresentava-se somente no Debug, e não na compilação/execução de programas. Apresentava também, na área “Problems”, um problema com um getthisbyname(). Estranhei. Não estaria resolvendo o nome de que, se ao testarmos só estava tentando rodar um “Hello World”? A única máquina que estaria tentando alcançar seria ela mesma: localhost. Resolvemos olhar o arquivo /etc/hosts (que guarda algumas pré-configurações de hosts em UNIX):

#127.0.0.1   localhost
127.0.0.1   xxx-notebook
#outras configurações de hosts

Para os desavisados, em arquivos de configuração UNIX é comumente utilizado o # como símbolo para comentário de linha. Logo, aparentemente devido ao fato de estar comentado, o Eclipse (ou a função getthisbyname() de Java) não conseguia resolver o nome localhost para 127.0.0.1. Removido o comentário, o Debug do Ganymede passou a funcionar perfeitamente.

Interessante, não?

Uma pitada de UML – círculo-cruz

Visão de módulos usando o círculo-cruz

Visão de módulos usando o círculo-cruz

Para quem possa se deparar com isso: a UML possui um símbolo especial para mostrar que um pacote está dentro de outro, o círculo-cruz.

A idéia do post veio lendo o “Utilizando UML e padrões” do Larman. A primeira vez que eu vi isso, fiquei uns 20 minutos sem entender o que era, e olhe que a explicação estava não muito distante no texto do livro. É apenas uma forma mais incomum de se mostrar isso, embora bastante limpa, mas infelizmente não está presente em várias ferramentas CASE. Só cuidado para outros não ficarem sem entender os diagramas!

VirtualBox – testando (2): instalando Windows e adicionais de convidado

VirtualBox

VirtualBox

Recentemente levei mais à frente o teste do VirtualBox. Decidi, para poder jogar jogos somente disponíveis para Window$, instalá-lo no VirtualBox. Mais como uma maneira de testar o desempenho dele, pois poderia ter instalado softwares como Wine, etc, e testado neles também.
Criada uma imagem de tamanho dinâmico, coloquei o CD do Windows XP e comecei a instalação normalmente. O VirtualBox fez seu papel direitinho, e funcionou exatamente como deveria funcionar em uma máquina comum.
Instalando windows

Instalando windows


Abro um espaço para deixar claro que a simulação não pode ser comparada com as outras (Debian, Ubuntu, Fedora). Como essa máquina seria pra testar jogos, configurei seus recursos para que fossem abundantes: 1512MB de RAM, 96MB de vídeo(o limite era 128), e 63GB de HD. Sem querer ser tendencioso e puxar a sardinha para o lado de um S.O. preferido – embora seja inerente à natureza humana fazê-lo -, mesmo com toda essa riqueza de recursos as distribuições Linux tiveram desempenho melhor, em minha opinião. Não houve medição nenhuma, essa afirmação é de caráter subjetivo, a partir somente de minha observação. Minha VM preferida ainda é um Debian instalado com XFCE =).
Começando os adicionais

Começando os adicionais


A instalação foi concluída com sucesso, e em seguida optei pela instalação dos Adicionais para Convidados. Fazem bastante diferença: sem instalá-los o sistema não reconhecia a placa de vídeo, não conseguia fazer Full Screen real, e antes precisava de algum esforço para o controle do mouse entre S.O. convidado e S.O. hospedeiro, o que não precisava mais. A captura era automática. Houve, entretanto, um pequeno aviso na instalação dos adicionais, se não me engano para dois dispositivos (mouse e algum outro).
Warning nos adicionais

Warning nos adicionais

Muito bem. Em seguida, comecei a instalação de um jogo no windows, o qual requeria aceleração gráfica e bom desempenho. Depois de umas tentativas de instalação (umas 2 delas com a instalação interrompida por uma falha na USB, pois eu estava instalando em um HD externo), consegui instalar, mas um erro me impedia de jogar, apesar de eu ter habilitado aceleração 3D. Infelizmente, percebi que não conseguiria jogar na máquina virtual, precisaria bi-particionar (o que pode vir em outro post).

Mas a experiência me permitiu perceber umas coisas: a tal integração dos S.O.’s hospedeiros e convidados, até a versão 2.2.2, não funciona tãããão bem. É possível acessar dispositivos? É – consegui acessar USB por ele, pelo menos, mas não tentei fazer funcionar a câmera ainda. Mas para dispositivos como placa aceleradora 3D, que precisa de um tempo minimizado de latência de processamento, o VirtualBox ainda não faz o serviço. Um ponto negativo para instalação de adicionais para distros GNU/Linux é a necessidade de atualização de componentes do sistema (se não me engano alguns módulos do kernel) e de fazer o download, para distribuições que não vem já com isso, de ferramentas de build. Para mim não foi incômodo pois já iria instalá-las, mas um usuário um pouco mais leigo pode reclamar e preferir não usar. Outra coisa, em instalações de Ubuntu e Windows com a integração, nenhuma conseguia desligar corretamente. Aparentemente a integração não funciona tão bem com o S.O. convidado, levando a toda tentativa de desligamento abortar o sistema, e não desligá-lo. Não encontrei problemas religando-os até agora, mas creio que possam haver aplicações que venham a ser prejudicadas. Todas as observações foram feitas em uma instalação do VirtualBox com o OS X como S.O. hospedeiro.

WCGA 2009

SBRC 2009

SBRC 2009

Um dos motivos pelos quais demoro muito a postar aqui, principalmente nas últimas semanas: WCGA 2009 – Workshop de Computação em Grade e Aplicações. Ocorreu aqui em Recife, dia 29 de maio, onde apresentei o artigo “Um Serviço Escalável e Robusto para Gerenciamento de Membros em Grades Computacionais de Grande Escala”, disponível por este link (anais do congresso).

O Workshop e o Simpósio Brasileiro de Redes de Computadores e Sistemas Distribuídos, onde ele é alocado, foram muito bons. Encontrei poucas pessoas que eu já conhecesse, e conheci muita gente legal da área. Impossível sair de um evento desses sem idéias de muita coisa pra fazer no futuro. =)

Links do WCGA, do SBRC, e de minha apresentação.

Seguir

Obtenha todo post novo entregue na sua caixa de entrada.