Desenvolvendo em um Chromebook

Minha experiência com desenvolvimento em um chromebook.

Observação: Vale ler atenciosamente as especificações na hora da compra, porque a arquitetura (ARM, AMD64) altera drasticamente a experiência.

ChromeOS:

Baseado em Linux e desenvolvido pelo Google, o sistema operacional oferecido nos chromebooks é voltado para aplicativos Web, Android e Chrome Apps. Veremos a seguir que ele é capaz de muito mais.

crouton:

Esse sim será nosso ambiente de trabalho, permitindo que utilizemos qualquer aplicação (ou quase isso) no ChromeOS. Disponível através do chroot, gerenciado pelo crouton.

Pré-requisitos:

  • sudo mkdir /media/removable/USB_DEVICE/chroots e sudo ln -s /media/removable/USB_DEVICE/chroots/ chroots(opcional, para chromebooks com discos pequenos, dessa forma, todos os chroots gerados pelo crouton serão salvos no dispositivo USB).
  • crouton e sua extensão do chrome

Começando:

Existem diversas maneiras de interagir com o chroot, eu prefiro utilizar a instalação básica das distros:

sh ~/Downloads/crouton -r trusty -t core,xiwi -n NOME_DO_CHROOT

  • trusty: versão LTS da distribuição Linux Ubuntu
  • core,xiwi: pacotes básicos de instalação do Linux

A instalação vai demorar uns minutos, hora de ir tomar um café, mas fique atento porque será necessário inserir usuário e senha para o seu chroot.

Tudo ok? Vamos lá:

sudo enter-chroot -n NOME_DO_CHROOT

Agora você tem um ambiente linux que dispõe dos recursos do seu ChromeOS.

xiwi:

xiwi (X11 in a Window) funciona criando uma janela no Chrome e canalizando um framebuffer X11 virtual para a mesma. Embora o crouton transfira o framebuffer relativamente de modo eficiente, não existe aceleração de GPU e existe um pouco de overhead, então não espere jogos e ambientes com gráficos pesados performem bem. Porém, para tarefas ligadas a produtividade funciona muito bem.

(traduzido de crouton/wiki)

Utilizaremos o xiwi para exportar o display do chroot para uma janela ou tab do Chrome:

xiwi atom -f ~/my-workspace/my-project

Se tudo estiver certo, logo seu Chrome irá abrir uma tab (-T) ou janela com o Atom.

Por hoje é só, na próxima, irei mostrar como desenvolver uma aplicação Android com o React Native, no ChromeOS.