Firefox OS

Hoje vou escrever sobre o firefox OS. Há mais de 6 meses tento me acertar com esse aparelho/sistema operacional.

Novos horizontes

Gentoo

Depois de muito tempo procurando tempo pra fazer, encontrei. Uma instalação limpa de suporte a emulação e pacotes 32 bits no meu bom e velho Gentoo amd64. Desde o uso do profile amd64-nomultilib à desabilitação do suporte a libs x86 no kernel. Agora um sistema puro de 64 bits. Motivação: Aprendizado.

Todavia, um pequeno efeito colateral: sem skype e sem flash player da Adobe. Para o skype, encontrei uma alternativa viável, gratuita e leve. O cliente web IM+ pode suprir parcialmente essa deficiência. Já quanto ao flash player, estou optando por usar o gnash, flash player open source.

Infelizmente durou pouco. Atualizado, logo abaixo :(

Programação

No último 14 de Outubro iniciei no meu primeiro emprego diretamente como programador. Trabalhei 9 anos e 10 meses com rotinas operacionais administrativas e não via essa hora chegar. Agora faço bom uso do aprendizado da faculdade (guardado no armário cerebral por bons 3 anos).

Estou trabalhando com Java (telas gráficas usando JFrame), banco de dados Pervasive e volta e meia, COBOL. Sim, Cobol, por incrível que pareça. E mais incrível ainda é o fato de ser muito interessante trabalhar com COBOL.

A fim de aproveitar meu envolvimento com java, meu ínfimo conhecimento em C++, e expandir ambos, estou trabalhando numa importante tarefa do LibreOffice: conversão dos JUnitTests para C++. Com isso, acredito que o tempo de compilação deve ser sensivelmente reduzido, hoje algo em torno de 8 horas dividido pelo número de núcleos do processador que vai compilar, e também vai deixar o projeto mais homogêneo. Já comecei uma conversão, mas ainda não terminei. Quando o fizer, e sendo aprovada, pretendo deixar um bom post sobre os passos, ainda não está tão claro todo o processo sobre esta tarefa.

Horizontes Não Tão Novos

Hoje (2 de Jan de 2014), estou concluindo este post. Comecei a escrevê-lo em meados de novembro de 2013. Infelizmente já abandonei minha instalação nomultilib, refazendo do início um profile multilib :(((

Tudo devido ao skype. Passei a utilizar mais do que nunca, na empresa e em casa. A versão web (IM+) ainda não é usável satisfatoriamente.

Novos Hobbies

Pois é.. Quanta novidade..

Decidi me aventurar pelas veredas da astronomia. Ou devo dizer imensidão? Que seja. Como eu ia dizendo, pretendo me dedicar também a essa atividade a partir de 2014. Como disse o noob do Yporti: Por que não ser noob em mais uma área também? E por falar em 2014, feliz ano novo! Que vocês alcancem tudo aquilo que buscam e tenha tudo que mereça! Até a próxima.

:P

Gentoo Lilo e Ubuntu

Recentemente estive buscando a solução para o problema de usar o lilo (bootloader) para gerenciar o boot do Gentoo e do Ubuntu. Pelo que encontrei, existem três maneiras de fazer funcionar.

A primeira forma, a qual considero menos elegante, se resume em instalar o grub na partição que o Ubuntu está instalado, e na configuração do lilo (/etc/lilo.conf) da partição do Gentoo (neste caso), especificar a partição do Ubuntu da mesma maneira que se configura um boot para windows:

other=/dev/sda3 (por exemplo)
  label=Ubuntu

Assim o lilo apenas chama o bootloader que está na partição do Ubuntu, e não faz o boot propriamente.

A segunda forma, um pouco mais elegante (a qual estou utilizando no momento que escrevo este post), é copiar os arquivos do boot do Ubuntu (vmlinuz e initrd.img) para a partição que fará o boot, no meu caso, do Gentoo. E então, adicionar uma seção no arquivo de configuração do lilo como uma entrada normal:

image=/boot/vmlinuz
  initrd=/boot/initrd
  label=Ubuntu
  read-only
  root=/dev/sda3
  append="root=/dev/sda3 ro"

É vital ressaltar a necessidade de informar qual é a partição root e também que é somente leitura na linha do kernel, append, (e opcionalmente, o splash e outras opções), pois se não, o Ubuntu não conseguirá montar a raiz, motivo deste post.

E a terceira e última forma, mais organizada e recomendada, é a criação de uma partição de boot. Isso elimina o trabalho extra e facilita a configuração. Uma vez que todas as distribuições linux instaladas estarão na mesma pasta /boot, visível em qualquer partição.

Qualquer dúvida, comente!

Fontes:

Script shell: pre-install.sh

Hoje vou falar do script shell pre-install.sh. É um script escrito para facilitar o processo de obtenção dos pacotes necessários para compilação e também obtenção do código fonte do LibreOffice.

Atualmente suporta as distribuições Debian, Ubuntu, Mint, Fedora e OpenSUSE, e seu uso é muito simples.

Você pode executá-lo passando como parâmetro opcões como pasta de destino do código fonte do LibreOffice (--dir), apenas obter o fonte (--just-clone), apenas obter os pacotes .deb (--just-download), não atualizar o repositório local (--no-update), apenas obter os pacotes deb (--no-clone), obter pacotes para o ccache (--ccache), entre outras.

Alguns exemplos

  • Obter os pacotes para compilação, o código fonte, e informa o local de destino, mas sem atualizar seu repositório:

    $ bash pre-install.sh --dir /mnt/git/libreoffice --no-update
    
  • Obter apenas o código fonte (Obs 1: Se o local de destino não for informado, será criada uma pasta chamada libo no $HOME do usuário e o código fonte vai ser baixado lá. Obs 2: Para esta opcão, certifique-se de ter o git instalado):

    $ bash pre-install.sh --just-clone
    
  • Obter os pacotes para compilação, com ccache junto, mas não obter o fonte ainda:

    $ bash pre-install.sh --ccache --no-clone
    
  • Obter todas as opções possíveis:

    $ bash pre-install.sh --help
    

Em relação à distribuição, a escolha é feita de forma interativa. Você escolhe enquanto o programa estiver executando. E sobre a execução do script, você pode torná-lo excutável ($ chmod +x pre-install.sh) e executá-lo diretamente (./pre-install.sh).

Desta forma, você pode obter seu LibreOffice compilado de maneira mais rápida e prática. :-)

Dúvidas? Comente.

Download do script: https://raw.github.com/marcosps/lo_useful/master/pre-install.sh (Botão direito e salvar)

Código fonte do script: https://github.com/marcosps/lo_useful/blob/master/pre-install.sh

Um forte agradecimento aos principais colaboradores: Marcos, Vanz, Alexandre e Carlos.