Roberto Colistete Jr.

Blog sobre computação física, científica e móvel : (Micro)Python, CUDA, smartphones, Linux, etc

Archive for the ‘Tablets’ Category

Tablets

Escolhendo smartphone ou tablet com Sailfish OS no final de 2015

Posted by robertocolistete em 14/11/2015

O Sailfish 2.0 está disponível oficialmente desde 3 Novembro de 2015, é aproximadamente a 15a atualização do Saifish OS, cuja versão 1.0 foi lançada em 27/11/2013. Realmente é um mobile OS bem diferente da maioria atual (Android, iOS, etc) que vale à pena ao menos experimentar.

De final 2013 para cá tivemos à venda com Sailfish OS :
* smartphone Jolla, inicialmente a EUR399 em Novembro de 2013. Teve algumas promoções, ultimamente custava EUR249 na loja da Jolla, ainda à venda;
* tablet Jolla, lançado em 19/11/2014 via campanha Indiegogo, custava a partir de US$189 até US$269 (dependendo do lote e de ter 32/64GB de armazenamento). Foram vendidos uns 10 mil, estão sendo entregues entre Outubro e final de 2015. Não está mais à venda.

De imediato, o melhor hardware atual à venda e em pronta entrega é o smartphone Jolla, que está em promoção por EUR169 (R$700 hoje, 14/11/2015) via loja oficial da Jolla. Não vende diretamente no Brasil, mas há voluntários na comunidade Maemo.org que recebem na Europa e enviam para o Brasil, basta postar nessa seção do Talk.Maemo.org. Obviamente há as taxas de importação para o Brasil, bem como custo de transporte. Já comprei e importei um smartphone Jolla assim, em final de 2014.

Para o futuro, temos promessas de novos smartphones com Sailfish OS :
* Intex a partir de início de 2016, fabricante indiano que venderá na Índia e depois em outros países, porém ainda sem especificar em quais países;
* FairPhone 2, smartphone modular a partir de 01/2016, terá suporte a Sailfish OS 2.0 pela comunidade, e talvez o Sailfish vire opção oficial.
* PuzzlePhone, outro smartphone modular a partir de 09/2016, que terá colaboração entre a Jolla e a fabricante para que o Sailfish OS seja disponível no PuzzlePhone em 2016;

Além disso, há adaptações do Sailfish OS feitas pela comunidade para vários smartphones e tablets, normalmente nem todos recursos funcionam, além de não ter suporte a programas Android (Alien Dalvik) e software Here Maps (mapas e navegação GPS). Por exemplo, para Nexus 4 e 5 o Sailfish funciona muito bem.

Posted in Mer Nemo Sailfish, Smartphones, Tablets | Leave a Comment »

Ubuntu Touch 13.10 : instalando e usando

Posted by robertocolistete em 06/10/2013

(19/10/13) Ubuntu Touch 13.10 estável foi lançado em 17/10/13 como esperado. Estamos a 11 dias do lançamento da versão Ubuntu Touch 13.10 estável, Com quase tudo já funcionando (WiFi, 3G, chamadas, etc), até lá nos últimos dias teve muitas correções de bugs e adição de alguns recursos (servidor gráfico Mir entrando no lugar de SurfaceFlinger em 7 ou 8 de Outubro, por exemplo). Veja nas notas de lançamento do Ubuntu 13.10 que certos recursos não estão disponíveis ou ainda temos bugs : sem vibração em chamadas e SMS, eventos no “Calendar” não podem ser editados, “Camera” não faz vídeos, “Clock” não tem alarmes totalmente funcionais, teclado virtual não funciona em modo horizontal no lado esquerdo, etc.

Como o artigo anterior “Ubuntu Touch no Nexus 4 : instalando e testando” ficou muito grande e com algumas informações desatualizadas devido à evolução do Ubuntu Touch, então vejamos o que mudou na instalação do Ubuntu Touch.

Instalação do Ubuntu Touch no Nexus 4

Os ítens (1) e (2) de “Instalação do Ubuntu Touch no Nexus 4” são mantidos. Mas a instalação do Ubuntu Touch mudou pois o comando “phablet-flash” agora tem mais opções, onde a flipped image agora se chama CDimage flipped image, logo para instalar devemos usar (PC com Ubuntu conectado ao Nexus 4 via cabo USB) :

$ sudo phablet-flash cdimage-touch -b

O “-b” é só na 1a vez para instalar o bootstrap no Nexus 4,, depois para atualizar o Ubuntu Touch usa-se o mesmo comando sem o “-b”. Tem um novo padrão de imagem Ubuntu Touch chamado Ubuntu System image, que torna mais fácil atualizar (via o próprio Ubuntu Touch), porém o sistema de arquivos para tanto fica só no modo leitura, impedindo de instalar programas via “apt-get”, “dpkg -i”, etc. Logo, se você quer experimentar bastante o Ubuntu Touch, eu recomendo a instalação de imagem “cdimage-touch”.

Usando o Ubuntu Touch no Nexus 4

Além de acesso ao terminal via conexão USB :

$ sudo adb root
$ sudo adb shell

em Setembro o ssh (openssh-server) passou a ser já instalado, porém desabilitado. Para habilitar a conexão via ssh, basta :

$ sudo rm /etc/init/ssh.override

Por enquanto, o ajuste de tempo para entrada no modo de economia de energia (com tela em branco e pausando até comandos via ssh !) está desabilitado em “System Settings -> Battery” e temos que digitar manualmente o comando :

$ sudo powerd-cli display on &

Ao final temos Ubuntu Touch 13.10 (quase final), as Core Apps já instaladas, 3G para dados funcionado, instalação de programas extras (formato click), etc.

Reinstalação do Android no Nexus 4

Siga os passos : fazer download da imagem do Android do Nexus 4, usar um PC com Ubuntu para extrair a imagem em um diretório, pressionar os 3 botões do Nexus 4 para entrar no modo bootloader e então digitar no PC com Ubuntu (dentro do diretório descompactado) :

$ sudo run adb reboot-bootloader
$ sudo ./flash-all.sh

Isso gasta uns 80-90s. Atenção que tudo é apagado no Ubuntu Touch.

Posted in Linux, Smartphones, Tablets | 5 Comments »

Ubuntu Touch no Nexus 4 : instalando e testando

Posted by robertocolistete em 26/05/2013

Vamos ver nessa matéria o Ubuntu Touch 13.04 na prática, com instalação, testes e usos no smartphone Google (LG) Nexus 4. Focando em mostrar o que não é visto em outras matérias.

(06/10/2013) Para instalação do Ubuntu Touch 13.10 recente,  vide novo artigo.

Ubuntu Touch roda no smartphone Nexus 4 com suporte oficial da Canonical, que chegou no mercado brasileiro no final de Março por R$1.699, mas em Maio tem tido uma ou outra promoção por aprox. R$1,3 mil. Segundo algumas matérias, o Nexus 4 é o melhor smartphone para rodar Ubuntu Touch, inclusive supera o Nexus 7 que tem problemas de desempenho e instabilidade.

No início de 2013 foi anunciado o Ubuntu for Phone / Ubuntu Touch para smartphones e tablets, vide matéria anterior Ubuntu Phone OS : ponto de vista de usuário e programador.

Instalação do Ubuntu Touch no Nexus 4

É muito simples instalar o Ubuntu Touch no Nexus 4, basicamente se segue o guia “Ubuntu Touch – Install” da Canonical. Vide também essa matéria “How To Install The Ubuntu Touch Preview On Your Nexus Android Device” com fotos dos passos abaixo.  Há 3 etapas :

1) Instalar o software “Touch Developer Preview Tools” em um computador com Ubuntu 12.04/12.10/13.04 via comandos (no X Terminal, em conta de usuário com permissão administrativa) :

$ sudo add-apt-repository ppa:phablet-team/tools
$ sudo apt-get update
$ sudo apt-get install phablet-tools android-tools-adb android-tools-fastboot

2) Desbloquear o bootloader do Nexus 4. Isso apaga todo o conteúdo prévio do Nexus 4, zerando o Android 4.2.2 que vem nele, logo faça backup. Ligue o Nexus 4 com os 3 botões físicos pressionados ao mesmo tempo, aí entra na tela de bootloader (com um robozinho verde deitado). Conecte o cabo microUSB-USB entre o computador e o Nexus 4, digite no computador :

$ sudo fastboot oem unlock

e confirme no Nexus 4 que quer desbloquear (unlock). Então aperte o botão direito de desligar. Habilite então no Android do Nexus 4 o modo de depuração USB (USB debugging) via “Settings (Configurações) > About (Sobre)”, tocando 7 vezes no número da versão de build number (último ítem, abaixo da versão do kernel) tal que aparece um aviso de que entrou no modo “developer” (desenvolvedor). Vá em “Settings (Configurações) > Developer options (Opções do  desenvolvedor)” e habilite a opção “USB debugging / Depuração USB”. Por fim, digite no computador :

$ sudo adb kill-server
$ sudo adb start-server

Após tal comando, conecte novamente o cabo USB entre o computador e o Nexus 4, e confirme no Nexus 4 que aceita a chave de segurança (host key).

3) (06/10/13, ultrapassado, vide novo artigo) Instalar o Ubuntu Touch no Nexus 4. Digite no computador, com o cabo USB conectado entre com o Nexus 4 :

$ sudo phablet-flash -b

Android 4.2.2 do Nexus 4 se despedindo enquanto que o Ubuntu Touch está sendo gravado


Android 4.2.2 do Nexus 4 se despedindo enquanto que o Ubuntu Touch está sendo gravado

Tela de entrada (boas-vindas) do Ubuntu Touch no Nexus 4


Tela de entrada (boas-vindas) do Ubuntu Touch no Nexus 4

Essa fase é mais demorada, com downloads de alguns arquivos (de aprox. uns 500 MB), descompactação em “~/Downloads/phablet-flash/” no computador, cópia para o Nexus 4 e por fim instalação no Nexus 4. Comigo gastou uns 20 minutos.

Pronto, agora o Nexus reinicializará e mostrará em uns 30s a tela de entrada do Ubuntu Touch.

Usando o Ubuntu Touch no Nexus 4

Deslize da direita para esquerda para destravar a tela de entrada, embora o círculo mostrando eventos sugira fazer um movimento circular, etc. Não vou abordar aqui como usar a GUI (Graphical User Interface) do Ubuntu Touch, várias matérias falam sobre isso, por exemplo essa da ArsTechnica.

Até agora (26/05/2013), a GUI está bem limitada, com poucos softwares funcionando, várias partes da GUI ainda estão sem interação, etc. Tal que na prática atualmente é necessário acessar a interface de comando-de-linha (CLI – Command Line Interface) para por exemplo  instalar mais programas, via acesso (USB ou rede WiFi) a partir de um computador ou Terminal instalado no Ubuntu Touch.

Os softwares abertos no Ubuntu Touch são mostrados em miniaturas, porém sem animação


Os softwares abertos no Ubuntu Touch são mostrados em miniaturas, porém sem animação.

Um toque demorado sobre uma miniatura mostra o X para fechar os softwares abertos


Um toque demorado sobre uma miniatura mostra o X para fechar os softwares abertos.

Conectando o Ubuntu Touch do Nexus 4 a um computador

O 1o passo é conectar o computador ao Nexus 4 via USB e fazer a comunicação via adb (Android Debug Bridge). No computador digite :

$ sudo adb root
$ sudo adb shell

(13/07/2013) Para ‘flipped images’, agora “adb shell” cai diretamente no Ubuntu, não sendo mais necessário rodar chroot. Se quiser usar “legacy” images, com Android e chroot, então o último comando mostra o prompt dentro do Android do Nexus 4, “root@android:/ #”. Para entrar no Ubuntu Touch (que é um chroot em cima de um Android simplificado, sem Dalvik, etc), digite então no Nexus 4 :

$ ubuntu_chroot shell

Pronto, agora você tem o prompt de root no Ubuntu Touch : “root@ubuntu-phablet:/#” ! Caso queira mudar para o usuário default “phablet”, digite “su – phablet”, a senha também é “phablet”.

(06/10/13, ssh já vem instalado, vide novo artigo) Agora sim podemos instalar o servidor ssh no Nexus 4 para termos acesso via WiFi (sem precisar de conexão USB). Em “Networks” (deslize de cima para baixo no símbolo de sinal de antena), escolha a rede WiFi a que você tem acesso. Digite como usuário ‘root’ ou ‘phablet’ no Nexus 4 :

$ sudo apt-get install openssh-server

Eu recomendo configurar o roteador WiFi para atribuir um IP fixo ao Nexus 4, facilitando colocar atalhos nas conexões ssh/sftp no computador para o Nexus 4. Mas caso não tenha IP fixo, obtenha o IP do Nexus 4 via comando “$ ip addr show wlan0”. Então no computador, basta digitar o  comando “ssh phablet@<número IP>” para conectar via WiFi com o número IP obtido antes.

Testando o Ubuntu Touch

Para tirar a dúvida se é Ubuntu 12.10 ou 13.04 após o instalar o Ubuntu Touch em 25/05/2013, nada melhor que o comando ‘lsb_release’ :

phablet@ubuntu-phablet:~$ lsb_release -a
No LSB modules are available.
Distributor ID:    Ubuntu
Description:    Ubuntu 13.04
Release:    13.04
Codename:    raring

Ou seja, já é a versão 13.04 Raring Ringtail em versão ARM (armhf) com kernel Linux v3.4.0 :

phablet@ubuntu-phablet:~$ uname -a
Linux ubuntu-phablet 3.4.0-1-mako #7-Ubuntu SMP PREEMPT Wed May 15 19:53:54 UTC 2013 armv7l armv7l armv7l GNU/Linux

Ubuntu Touch versão 13.04 armhf (ARM hard-float)


Ubuntu Touch versão 13.04 armhf (ARM hard-float).


Python 2.7.4 já vem instalado e IPython 0.13.2 é disponível no Ubuntu Touch 13.04.

O Ubuntu Touch não usa servidor gráfico X11, mas sim SurfaceFlinger do Android (e futuramente Mir). E toda a GUI tem que ser feita em Qt5 ou HTML5. Por isso há poucos softwares com GUI até agora. Alguns que comporão o conjunto básico de softwares do Ubuntu Touch estão sendo desenvolvidos, são as Core Apps, com previsão para versão estável em Outubro de 2013 (Ubuntu Touch 13.10).

(06/10/13, Core Apps já vem instaladas, vide novo artigo) Para instalar Core Apps que ainda não estão inclusas no Ubuntu Touch atual :

$ sudo apt-get install ubuntu-terminal-app ubuntu-filemanager-app ubuntu-docviewer-app
$ sudo apt-get install ubuntu-clock-app ubuntu-emailclient-app ubuntu-rssreader-app
$ sudo apt-get install ubuntu-youtube-app ubuntu-facebook-app ubuntu-music-app

Use o “Search” (topo esquerdo superior da tela) para encontrá-las e rodá-las. Recomendo o Terminal e File Manager, tal que se possa usar sozinho o Nexus 4 com Ubuntu Touch, quando necessário.

Porém é nos softwares que não precisam de GUI que o Ubuntu é hoje muito forte, com dezenas de milhares de pacotes de instalação disponíveis, muitos são softwares de PC desktop e que usualmente não estão disponíveis (completos) para sistema operacionais móveis (Android, BlackBerry OS, iOS, Symbian, etc). Por exemplo linguagens de programação e softwares científicos : gcc/g++/gfortran (4.7.3), compilador TeX/LaTeX, CAS Maxima (5.29.1), módulos e ferramentas Python como IPython (0.13.2), MPMath, NumPy (1.7.1), MatPlotLib (1.2.1), SciPy (0.11.0), SymPy (0.7.2), etc. Basta instalar via “sudo apt-get install <nome-do-pacote>”.

IPython Notebook 0.13.2 rodando SymPy 0.7.2


IPython Notebook 0.13.2 rodando SymPy 0.7.2 com renderização MathJax/TeX das expressões matemáticas.

IPython Notebook 0.13.2 rodando os novos gráficos do SymPy 0.7.2


IPython Notebook 0.13.2 mostrando os novos gráficos do SymPy 0.7.2, embutidos no Notebook.

O IPython 0.13.2 roda inclusive com a interface de Notebook, vide fotos acima. No modo servidor e parcialmente no modo cliente. Parcialmente devido ao estágio de desenvolvimento atual do navegador web do Ubuntu Touch. IPython Notebook cliente funciona com DashBoard, abertura de IPython Notebooks já existentes, renderização MathJax e gráficos PyLab embutidos, cálculos, etc. Mas IPython Notebook não permite criar “New Notebook” (acho que falta poder criar aba ou nova janela no navegador web atual), longos Notebooks não são exibidos totalmente (o rolamento pára) e alguns botões não têm o toque preciso.

Atualização de 01/06/2013 do Ubuntu Touch

Em 1o de Junho foi lançada uma atualização relevante para o Ubuntu Touch, com novos recursos facilitando o uso do smartphone (Google Nexus e Nexus 4) para voz, SMS, 3G com dados, mais estabilidade, etc. O 3G para dados por enquanto tem configuração manual, mas para Junho está prometido que isso será feito via uma interface gráfica.

Para atualizar para essa nova versão do Ubuntu Touch é muito simples, via cabo USB ligando o PC com Ubuntu ao Nexus 4, digite no terminal do PC com Ubuntu :

$ sudo phablet-flash

Veja que é o mesmo comando para instalar o Ubuntu Touch na 1a vez, porém sem o “-b”. Depois o Nexus 4 reinicializa e pronto, temos o Ubuntu Touch atualizado. O diretório home (“/home/phablet/”) é preservado, mas todo o Ubuntu Touch é reinstalado, logo se você tinha instalado programas extras, então tem que reinstalar, vide exemplos mais acima.

Ainda usando a versão de 01/06/2013, testei fazer e receber chamadas de voz e enviar SMS, tudo funcionou 100%, sem ressalvas.

Flipped Ubuntu Touch images (03/07/2013)

Em 03/07/2013 foi anunciado que o Ubuntu Touch usaria a partir de então imagens ‘flipped’ (vide matérias de  ILoveUbuntu e Liliputing) como padrão, i.e., em que o Android está dentro do Ubuntu (via LXC container), ao contrário de antes em que o Ubuntu estava dentro do Android (via chroot). Logo, para abrir um terminal dentro do Ubuntu Touch via cabo USB de um PC,  só é necessário “sudo adb root” e depois “sudo adb shell”.

A atualização para tal Flipped Ubuntu Touch images é como antes (vide acima), via “sudo phablet-flash”. Caso queira usar a versão com chroot, então atualize via “sudo phablet-flash –legacy” (com 2 ‘-‘), mas não vi razões práticas para manter a versão legacy.

Principais novidades encontradas na versão de 06/07/2013 (versão diária que eu instalei) em relação a versão de Junho de 2013 : Ubuntu Touch 13.10 (ao invés de 13.04), Linux kernel 3.4.0-3 (no lugar de 3.4.0-1), vários softwares já vem incluídos (File Manager, Terminal, System Settings, etc), softwares em versões mais completas e com menos bugs (Terminal, File Manager, System Settings, Music, etc), screenshot disponível (vide abaixo), Python 2.7.5 (versus 2.7.4), gcc/g++ 4.8.1 (ao invés de 4.7.3), etc.

No Ubuntu Touch de Julho de 2013 há mais softwares pré-instalados


No Ubuntu Touch de Julho de 2013 há mais softwares pré-instalados, incluindo File Manager, System Settins e Terminal.

System Settings é uma novidade do Ubuntu Touch de Julho de 2013


System Settings é uma novidade do Ubuntu Touch de Julho de 2013.

Para fazer screenshot agora tem uma forma oficial, vide “Getting a screenshot” em “Ubuntu Touch Dogfooding”, aqui criando uma imagem ‘screenshot.png’ no diretório ‘/tmp/’ e copiando para o PC via cabo USB :

$ sudo adb root
$ sudo adb shell /system/bin/screencap -p /tmp/screenshot.png
$ sudo adb pull /tmp/screenshot.png ./screenshot.png

A forma mais completa para atualizar o Ubuntu Touch é  via “sudo phablet-flash” em um PC (com Ubuntu) com USB conectado ao Nexus 4. Atualizações via “sudo apt-get upgrade” (no Nexus 4) não atualizam todos os softwares do Ubuntu Software, p.e., System Settings, etc.

Opinião sobre Ubuntu Touch no Nexus 4

Pontos positivos atuais, na minha opinião :

  • instalação muito fácil no Nexus 4;
  • a interface do Ubuntu Touch roda suavemente no Nexus 4, tendo controles swipe (deslizar do dedo) para tudo, sem precisar de botões, à la MeeGo Harmattan 1.2 do Nokia N9;
  • Ubuntu Touch tem multi-tarefa de verdade, em que o usuário controla realmente se e quando o software é mantido aberto ou fechado, ao contrário de Android, iOS, Windows Phone, etc. As miniaturas não são animadas que nem no Maemo 5 (Nokia N900), MeeGo Harmattan 1.2 (Nokia N9) e BlackBerry OS, sendo semelhantes às do Symbian;
  • toda herança de milhares de pacotes Linux de desktop desenvolvidos nas últimas décadas à disposição de smartphones e tablets, desde que não tenham GUI. Assim temos servidores Internet, ferramentas diversas, dezenas de linguagens de programação, softwares científicos avançados, etc. Vários desses softwares não tem equivalentes em sistemas operacionais móveis (exceto Maemo, MeeGo e Mer/Nemo/Sailfish que são Linux móveis) ou somente têm versões simplificadas;
  • via testes de desempenho que eu fiz com alguns programas de cálculos (assunto de futura matéria) que mostram que o Ubuntu Touch é bem mais eficiente em uso de CPU que o Android no mesmo hardware (Nexus 4, etc) em termos de cálculos em C/C++ e Python, inclusive permitindo o uso fácil de múltiplos núcleos nos cálculos (OpenMP, etc).

Pontos negativos e/ou que precisam ser resolvidos :

  • a interface do Ubuntu Touch ainda está preliminar, com algumas funcionalidades sendo por enquanto decorativas, sem funcionar realmente. Mas até Outubro de 2013 o Ubuntu Touch deverá estar completo e estável, segundo a Canonical;
  • ícones grandes na interface desperdiçam a tela HD do Nexus, com poucos ícones visíveis por vez, o ideal seria o tamanho dos ícones, espaçamento, etc, serem configuráveis;
  • o teclado virtual não tem tecla “Ctrl”, isso poderia ser resolvido com diferentes opções de teclado virtual;
  • (12/06/2013, 13/07/2013 : como fazer screenshot sem X11 no Ubuntu ? Como aumentar o tempo de economia de energia que apaga a tela ? RESOLVIDO, via Ubuntu Touch Manager para Ubuntu de PC, porém meio instável, ou via ‘adb shell /system/bin/screencap’ disponível na atualização de 07/2013 (vide abaixo);
  • (12/06/2013 : a estabilidade melhorou com a versão de 01/06/2013) em algumas horas de uso, experimentei o editor de notas fechando sozinho e forçando fechamento de outros 3 softwares que estavam abertos, bem como o navegador web ficar instável, fechando outros softwares e provocando reboot no Nexus 4;
  • (12/06/2013, 13/07/2013) Terminal não suporta rolamento via toque, modo paisagem (landscape) não funciona bem (gestos continuam em modo vertical, portrait), não consigo abrir 2 terminais, alguns botões dos painel tem texto abreviado (…) tamanho default do texto não mostra os caracteres direito enquanto digita logo é preciso aumentar;
  • navegador web não pode ser aberto mais de uma vez e não permite abas. Não tem por enquanto opções de configuração, bookmaks, etc;
  • a falta de interface gráfica X11 impede milhares de softwares Linux de funcionarem no Ubuntu Touch. O novo Qt5 (de 12/2012) é um pouco diferente do Qt4, logo há poucos softwares em Qt5 disponíveis atualmente, isso mudará somente a médio e longo prazos;
  • centenas de programas em Python com GUI precisam de PyQt e/ou PySide (feitos para Maemo 5, MeeGo, Mer/Nemo/Sailfish), mas ambos ainda não estão compatíveis para Qt5 (somente para Qt4). PyQt5 “development snapshots” foram lançados em início de Maio de 2013, logo em poucos meses PyQt5 deve estar disponível estável nos repositórios Ubuntu. Mas o projeto PySide ainda está atrasado em Qt5 por falta de colaboradores.

O que o Ubuntu Touch promete até lançamento oficial da v13.10 ? Bem : 3G de dados via interface gráfica, uso de Click como formato simplificado de arquivos de instalação (no lugar dos .deb, sem suporte a dependências, etc, vide artigos do site ILoveUbuntu, 1 e 2), servidor gráfico Mir (no lugar do SurfaceFlinger do Android), vários softwares funcionais ou com mais recursos (navegador web, etc), etc. Enfim, eu aposto no Ubuntu Touch e Sailfish OS em final de 2013 em diante, podendo mudar o panorama de sistemas operacionais móveis para algo bem diferente das limitações de Android, iOS, etc.

Futuras matérias abordarão benchmarks no Nexus 4, etc.

Posted in Linux, Python, Smartphones, SymPy, Tablets | 26 Comments »

Computação simbólica CAS (Computer Algebra System) em smartphones e tablets

Posted by robertocolistete em 27/12/2012

CAS (Computer Algebra System) são softwares que permitem computação simbólica, i.e., com símbolos literais que não tem valores atribuídos. Essa é a forma comum de se calcular boa parte dos problemas da área de exatas no ensino superior. Um CAS pode ser usado para se calcular quase tudo o que é pedido nas disciplinas de “Cálculo” (limite, derivadas, integrais, etc), por exemplo. Porém usualmente o CAS não fornece os passos intermediários do cálculo, só o resultado final do cálculo. CAS normalmente também têm recursos de computação numéricas e gráfica.

Devido à grande evolução de hardware e sistema operacional dos celulares, smartphones (celulares inteligentes) e tablets, hoje temos diversos CAS disponíveis. Esse artigo visa então listar a maioria dos CAS para celulares, smartphones e tablets, e assim motivar o uso de tais equipamentos no ensino superior e pesquisa.

Softwares de cálculos somente numéricos e gráficos foram excluídos, bem como calculadoras científicas, gráficas, tabelas de fórmulas matemáticas, etc. Embora esses softwares sejam maioria nas “lojas” de softwares para smartphones e tablets, eles não são CAS.

CAS online (via Internet e navegador web)

Temos CAS completos ou com alguns recursos disponíveis via Internet, funcionando dependendo do navegador web do celular/tablet. Ou seja, um celular de R$100 que tenha um navegador web bom (com JavaScript habilitado, etc) pode acessar alguns dos sites abaixo !

CAS completos, permitindo comandos em sequência, uso de variáveis, etc :

  • SymPy Live : escrito totalmente em Python, SymPy é um CAS que tem se desenvolvido muito via uma comunidade bem ativa, e SymPy Live tem uma interface com vários tipos de saída, documentação acessível, exemplos, ‘Tab’ completa comandos, histórico de comandos, etc. Tem versão SymPy Live Mobile para telas pequenas de celulares. Foi citado em artigo anterior do blog;
  • Mathics : é um CAS recente e muito completo, com interface de notebook online, documentação acessível, exemplos, gráficos 2D e 3D (que giram se WebGL funcionar no navegador web), notebooks que podem ser salvos e lidos (precisa criar uma conta/login gratuito), etc. Mathics é um CAS baseado em SymPy e Sage, porém com sintaxe do Mathematica da Wolfram Research. Não funciona em qualquer navegador web pois precisa de suporte a MathJax, sendo recomendado Firefox (para Android, Maemo, MeeGo), Chrome (Android, iOS) e Safari (iOS), sendo que o navegador web do Android também funciona. Em meus testes, a melhor experiência é usando Firefox (no MeeGo Harmattan e Android).

Mais comum é encontrar funções específicas de CAS acessíveis via Internet :

  • Wolfram Alpha : é uma mistura de Google com CAS (comercial Mathematica da Wolfram Research), permitindo fazer pesquisas com texto em inglês bem como cálculos usando sintaxe “solta”. Tem ampla documentação, saída em vários formatos, etc.
  • Wolfram Mathematica Online Integrator : calcula integrais indefinidas de uma variável (x) usando o CAS comercial Mathematica da Wolfram Research, um dos mais completos e melhores CAS;
  • SymPy Gamma : faz cálculos diversos, bem simples de usar, com vários exemplos, usa o SymPy (CAS em Python). Foi citado em artigo anterior do blog;
  • Integral Calculator : calcula integrais indefinidas ou definidas de uma variável, com entrada com sintaxe “solta” e saída em MathJax (clique com o botão direito do mouse sobre o resultado e veja a expressão em TeX ou MathML, podendo copiar), exemplos, opção de simplificar o resultado, etc. Usa o CAS gratuito e de código-fonte aberto Maxima, que é um dos mais completos dentre os gratuitos;
  • Derivative Calculator : calcula derivadas de 1a até 3a ordem de uma variável, com entrada com sintaxe “solta”, saída em MathJax (clique com o botão direito do mouse sobre o resultado e veja a expressão em TeX ou MathML, podendo copiar), exemplos, opção de simplificar o resultado, opção de mostrar os passos intermediários do cálculo, etc. Usa o CAS gratuito e de código-fonte aberto Maxima, que é um dos mais completos dentre os gratuitos.

CAS instalados localmente

Para celulares não-smartphones que rodam Java (J2ME) :

  • JaSymCA 2 (gratuito e de código-fonte aberto) : é um CAS leve e com recursos razoáveis, tendo documentação, programação (com variáveis, funções, if/else, while/for, etc), cálculos númericos (à la Octave/MatLab/SciLab, de vetores e matrizes, resolução de equações, etc), cálculos simbólicos à la Maxima (derivada ordinária, integral indefinida/definida em relação a uma variável, série de Taylor de uma variável, EDO (equação diferencial ordinária) simples, etc), gráficos 2D (de uma variável, paramétricos, coloridos, logarítmicos, etc). Vide mais detalhes em artigo “Usando softwares científicos em celulares (quase) smartphones”.

Listando agora os sistemas operacionais móveis (de tablets e smartphones) :

Para Android há várias opções de CAS, inclusive algumas que apareceram em 2012 :

  • Maxima on Android (gratuito e de código-fonte aberto) : lançado em 10/2012 para Android, o CAS gratuito e de código-fonte aberto Maxima é um dos mais completos dentre os gratuitos. A versão para Android tem saída tipografada, documentação completa, gráficos 2D/3D, salvar/restaurar sessão, etc. Vide site do projeto “Maxima on Android” para maiores detalhes;
  • MathScript Scientific Calc Trial (gratuito) : usa o CAS SymPy para os cálculos, com interface de fácil uso, saída tipografada, gráficos 2D, documentação, exemplos, salvar/abrir sessão (em arquivo), etc. Versão de final de 2012 corrigiu problemas anteriores de saída tipografada. Na versão gratuita aos poucos vai aparecendo mensagens de espera importunando;
  • MathScript Scientific Calc (US$5) : idem acima, porém sem mensagens de espera;
  • MathStudio (US$9,99) : é um CAS leve com cálculos numéricos, simbólicos (integrais em relação a uma variável, etc), saída tipografada, gráficos 2D e 3D com animações, documentação, salvar/abrir sessão (em arquivo), etc. Vide site do software para documentação, exemplos de sessões, galeria de gráficos, etc. Tem versão para iOS;
  • JaSymCa 3 para Android (gratuito) : semelhante ao JaSymCA 2 citado acima para celulares nã0-smartphones, porém com interface melhorada na versão para Android;
  • Python SL4A + SymPy (gratuito e de código-fonte aberto) : no Android a instalação é manual, não tem saída tipografada nem gráficos, com uso via execução de arquivos .py. SymPy é um CAS escrito totalmente em Python;
  • Sage Math beta (gratuito e de código-fonte aberto) : versão lançada em 2012, é cliente do Sage com cálculo remoto em servidor web (logo precisa de conexão Internet), tem saída tipografada, gráficos, notebooks, etc. É versão beta com parte dos recursos do Sage para PC desktop implementados. Sage é um CAS baseado em Python / SymPy com muitos recursos avançados;
  • MathSys Calculator Shell alpha (gratuito) : lançada no 2o semestre de 2012, é uma nova interface continuando o trabalho da equipe do MathScript Scientific Calc citado acima. Tem interface touch fácil de usar, saída tipografada, gráficos 2D e 3D. Está em testes ainda (versão alfa), só funcionando em alguns tablets e smartphones Android com bom desempenho e tela de alta resolução. Internamente usa Python e os módulos SymPy, NumPy e MatPlotLib, infelizmente NumPy e MatPlotLib não são acessíveis de fora do MathSys, p.e., no Python SL4A;
  • wxMaxima e Maxima (gratuitos e de código-fonte aberto) : (wx)Maxima é a melhor interface gráfica para o CAS Maxima, ambos podem ser instalados em Linux dentro do Android (desde que se possa “rootear”), vide artigo de blog “Usando Linux dentro do Android no Asus Transformer“, onde vemos que o wxMaxima gasta 1-4 s para abrir em um tablet típico de 2 núcleos Cortex A9. Para instalar no Ubuntu (dentro do Android) é simples, via comando “$ sudo apt-get install –no-install-recommends maxima wxmaxima maxima-share”;
  • SymPy & IPython Notebook (gratuitos e de código-fonte aberto) : a maior parte do ambiente Python científico de PC funciona no Linux dentro do Android (instalável se for possível “rootear” o Android) : IPython 0.12 com interface Notebook, NumPy & MatPlotLib, SymPy, etc. Mas PyGlet e gráficos via Plot no SymPy dificilmente funcionam. Para instalar no Ubuntu (dentro do Android) basta o comando “$ sudo apt-get install –no-install-recommends python-mpmath python-sympy python-numpy python-matplotlib ipython ipython-notebook”.

Para iOS, em 2012 tivemos basicamente atualizações dos softwares já existentes de CAS :

  • MathStudio (US$9,99) : é um CAS leve com cálculos numéricos, simbólicos (integrais em relação a uma variável, etc), saída tipografada, gráficos 2D e 3D com animações, documentação, etc. Vide site do MathStudio para documentação, exemplos de sessões, galeria de gráficos, etc. Tem versão para Android;
  • iCAS (US$14,99) : versão iOS do REDUCE (CAS que começou na década de 60), bem complexo, tem saída tipografada, gráficos 2D e 3D, arquivos com comandos, etc. Vide site do iCAS para mais exemplos, documentação, etc;
  • PocketCAS Pro (US$4,99): outro CAS leve com cálculos numéricos, simbólicos, saída tipografada, gráficos 2D e 3D, teclado matemático, editor de arquivos de comandos, documentação, etc. Vide site do PocketCAS for iOS para maiores detalhes, documentação, etc.
  • PocketCAS lite (gratuito): vide PocketCAS Pro acima, porém com algumas funções desabilitadas;
  • Python Math (gratuito) : basicamente Python que inclui o CAS SymPy, não tem saída tipografada nem gráficos, tem editor de arquivos de comandos (US$0,99), teclado optimizado para Python (US$0,99), documentação, etc. Vide site do software para maiores detalhes, assim como o artigo “SymPy for smartphones & tablets” com análise detalhada desse software;
  • Python for iOS (US$2,99) : basicamente Python que inclui o CAS SymPy, não tem saída tipografada nem gráficos, tem editor de arquivos de comandos, documentação, etc. Vide site do software para maiores detalhes, bem como o artigo “SymPy for smartphones & tablets” com análise detalhada desse software;
  • Calcul (US$1,99) : CAS bem simples para computação simbólica, com saída tipografada.

Para Maemo 5 (Nokia N900, um smartphone lançado em no final de 2009 e vendidas 1-2 milhões de unidades mundo afora), há algumas opções, todas gratuitas :

  • SymPy Interactive Shell (gratuito e de código-fonte aberto) : CAS SymPy de fácil instalação e completo, incluindo IPython 0.10.2, SymPy 0.7.1/0.7.2, ícone, saída bidimensional, gráficos 2D e 3D interativos (via instalação de PyGlet), uso interativo completo do IPython 0.10.2, etc. SymPy para Maemo 5 é o mais completo dentre todos smartphones e tablets, vide análise comparativa no artigo “SymPy for smartphones & tablets”. Para mais recursos em cálculos numéricos e gráficos, temos NumPy 1.4.0 e MatPlotLib 1.0.0 também facilmente instaláveis no Maemo 5, via “$apt-get install python-numpy python-matplotlib” com repositório extras-devel habilitado. O artigo “Python científico em computadores, tablets e smartphones” mostra que o Maemo 5 é um dos dois melhores sistemas operacionais móvel para uso de Python. “SymPy Interactive Shell” foi empacotado pelo autor desse blog, desde 10/2011 até hoje (28/12/2012) tem mais de 66 mil downloads (uns 40 mil downloads únicos excluindo atualizações) para Nokia N900;
  • Integral (gratuito e de código-fonte aberto) : interface de fácil uso para calcular integrais com muitos recursos : definidas ou definidas ou numéricas (precisão arbitrária), em relação a 1 a 3 variáveis, resultados em vários formatos (simples, bidimensional, LaTeX, MathML, C, Fortran), opções de simplificação do resultado, com recurso de histórico e completar linhas de entrada, etc. Usa Python e o CAS SymPy v0.7.1/0.7.2. Vide também o tópico sobre “Integral” no fórum Talk Maemo.org. Foi criado pelo autor desse blog, desde 08/2011 até hoje (28/12/2012) tem mais de 82 mil downloads (uns 65 mil downloads únicos excluindo atualizações) para Nokia N900;
  • Derivative (gratuito e de código-fonte aberto) : interface de fácil uso para calcular derivadas ordinárias ou parciais (até 3 variavéis), gradiente, divergente, rotacional e laplaciano em 3 dimensões (coordenadas cartesianas, cilíndricas e esféricas), solução numérica com precisão arbitrária, resultados em vários formatos (simples, bidimensional, LaTeX, MathML, C, Fortran), opções de simplificação do resultado, com recurso de histórico e completar linhas de entrada, etc. Usa Python e o CAS SymPy v0.7.1/0.7.2. Vide também o tópico sobre “Derivative” no fórum Talk Maemo.org. Foi criado pelo autor desse blog, desde 10/2011 até hoje (28/12/2012) tem mais de 64 mil downloads únicos para Nokia N900;
  • Limit (gratuito e de código-fonte aberto) : interface de fácil uso para calcular limites simbólicos ou numéricos (com precisão arbitrária), resultados em vários formatos (simples, bidimensional, LaTeX, MathML, C, Fortran), opções de simplificação do resultado, com recurso de histórico e completar linhas de entrada, etc. Usa Python e o CAS SymPy v0.7.1/0.7.2. Vide também o tópico sobre “Limit” no fórum Talk Maemo.org. Foi criado pelo autor desse blog, desde 11/2011 até hoje (28/12/2012) tem mais de 57 mil downloads únicos para Nokia N900;
  • wxMaxima e Maxima (gratuitos e de código-fonte aberto) : (wx)Maxima é um dos CAS mais completos e maduros, disponível no Maemo 5 via Easy Debian. É muito fácil instalar o Easy Debian dentro do Maemo 5, i.e., um Debian ARM via chroot, permitindo instalar quase 30 mil pacotes ARM. Dentro do Easy Debian, basta habilitar o repositório sid e instalar via “$ apt-get install –no-install-recommends maxima wxmaxima maxima-share”.

SymPy rodando dentro do IPython Notebook no Nokia N9


SymPy 0.7.2 rodando dentro do IPython Notebook 0.13.1 no Nokia N9

Para MeeGo Harmattan (Nokia N9, vendidas algumas poucas milhões de unidades desde meados de 2011), além de somente um software (SymPy) CAS nativo do MeeGo Harmattan, temos softwares CAS do Debian (via chroot de imagem) que funcionam muito bem no Nokia N9, vide artigo “Easy Debian Harmattan para Nokia N9 com teclado virtual transparente“. As imagens científicas do Debian acumularam quase 7 mil downloads entre Agosto e Dezembro de 2012, atestando a popularidade e facilidade de uso do Easy Debian Harmattan (do qual o autor desse blog é mantenedor).

Para Symbian, há poucos soluções CAS :

  • JaSymCA 2 (gratuito e de código-fonte aberto) : tal como citado acima para celulares não-smartphones, funciona também no Symbian;
  • Python + SymPy (gratuito e de código-fonte aberto) : no Symbian a instalação é manual, não tem saída tipografada nem gráficos, com uso interativo bem limitado ou via execução de arquivos de comandos Python. SymPy é um CAS escrito totalmente em Python.

Os sistemas operacionais BlackBerry OS e Windows Phone não têm CAS disponíveis atualmente.

Conclusões

Sobre considerações entre vantagens x desvantagens entre computadores, tablets e smartphones, bem como opções de compras de smartphones e tablets, vide final do artigo “Python científico em computadores, tablets e smartphones”.

Enfim, minha opinião :

  • mesmo celulares não-smartphones podem rodar CAS, instalado localmente ou acessando CAS online via navegador web;
  • há várias opções de CAS online completos ou só com funções específicas, acessíveis via navegador web;
  • a maioria dos sistemas operacionais móveis (de smartphones e tablets) pode rodar CAS instalado localmente;
  • SymPy (CAS totalmente escrito em Python) está em todos os sistemas operacionais móveis que rodam CAS e em alguns CAS online, atestando a portabilidade da linguagem Python;
  • os melhores CAS gratuitos, Maxima e SymPy, ambos rodam em Android, Maemo 5 e MeeGo Harmattan, tendo bom desempenho e boa funcionalidade;
  • o Nokia N9 com MeeGo Harmattan é o melhor smartphone atual para rodar CAS, pois tem versões de 2012 dos melhores CAS gratuitos : SymPy 0.7.2 + IPython Notebook 0.13.1 com gráficos embutidos e wxMaxima/Maxima (via Easy Debian Harmattan);
  • Android atualmente é o sistema operacional móvel que tem a maior variedade de hardware (i.e, smartphones, tablets e Mini-PC’s de diversos tamanhos, formatos, preços e fabricantes) combinada com um bom leque de softwares CAS.

(Atualização em 12/02/2013) : adicionada citações a SymPy 0.7.2 para Maemo 5/MeeGo Harmattan (07/01/2013), IPython 0.13.1 terminal, Notebook e Qt console para MeeGo Harmattan (22/01/2013), MatPlotLib 1.2.0 para MeeGo Harmattan (09/02/2013) e NumPy 1.7.0 para MeeGo Harmattan (11/02/2013).

(Atualização em 13/02/2013) : adicionadas screenshots do SymPy 0.7.2 rodando no IPython Notebook 0.13.1 no Nokia N9.

Posted in Android, CAS, iOS, Maemo, Maemo 5 Fremantle, Mathematica, MeeGo, Mini-PC, Nokia N9, Python, Smartphones, Symbian, SymPy, Tablets | 4 Comments »

Tablet Motorola Xoom Media Edition de 32GB por R$799

Posted by robertocolistete em 20/12/2012

Promoção bem interessante por R$799 em 12x para o tablet Motorola Xoom 2 Media Edition (tela de 8,2″ com 1280 x 800 pixels) com 32GB. Tem processador TI OMAP 4430 2 de dois núcleos Cortex A9 a 1,2 GHz, 1GB de RAM, WiFi, GPS, câmeras de 5 e 1.3 MPixels, microUSB, microHDMI, Bluetooth, 388 g, etc. Vem de fábrica com Android 3.2 porém desde Novembro começou no Brasil a atualização para Android 4.0 ICS.

Acho esse modelo interessante pelo tamanho de tela intermediário entre 7″ e 10″, mesmo assim é leve, tem 32GB (ao invés dos 16GB típicos para tablets abaixo de R$1 mil) e saída HDMI (via conector micro-HDMI) o que é meio raro em tablets. Tudo por por um preço que julgo bom para tablets.

Vide meu artigo anterior, Samsung Galaxy Tab 2 7″ com Android 4 a R$699 & programas científicos no Android, com dicas de softwares educacionais e científicos para Android.

Posted in Android, Tablets | Leave a Comment »

Jolla Sailfish OS : para smartphones, tablets, etc

Posted by robertocolistete em 23/11/2012

Ontem e hoje a Jolla apresentou oficialmente seu novo sistema operacional Sailfish (peixe-espada em inglês), destinado não só para smartphones como tablets, TV’s inteligentes, computadores automotivos, etc.

O que é fato até agora sobre a empresa Jolla e o Sailfish OS, com informações oficiais ? Vejamos :

  • Sailfish OS é um Linux móvel ! Mer + Qt + UI (User Interface) da Jolla;
  • Mer é continuação 100% código-livre do MeeGo do Nokia N9, que por sua vez é um Linux móvel completo : kernel Linux, glibc 100% compatível (ao contrário da Bionic do Android), X Windows, multi-tarefa real, dependências e pacotes, etc;
  • Qt é uma biblioteca gigantesca de programação multi-plataforma (Linux, Mac OS, Windows, Maemo, MeeGo, etc) para criar aplicativos e interfaces gráficas (UI), que permite programação em C/C++, QML, Python, etc. Qt também é um projeto gratuito e de código-livre (Free and Open Source Software – FOSS);
  • Jolla firmou parceria com a ST-Ericsson para a família de processadores NovaThor, que no mínimo têm 2 núcleos Cortex A9, GPU, etc;
  • foi divulgado que o primeiro smartphone da Jolla começará a vender antes de meados de 2013, possivelmente com processador ST-Ericsson NovaThor;
  • a UI do Sailfish OS ressalta controles com “swipe” (deslizar do dedo, i.e., sem botões, semelhante ao Nokia N9) na tela e a multi-tarefa (com vários programas rodando e controláveis mesmo que em miniatura), vide vídeos da matéria do “The Verge” e esse outro rodando em um Nokia N950.
  • terá compatibilidade com vários softwares Android via emulação fornecida pelo software Myriad Alien Dalvik, sendo a empresa Myriad parceira da Jolla;
  • nos vídeos aparece ícone do X Terminal no Sailfish OS, e no twitter a Jolla diz “The terminal is beautiful, the most beutiful terminal app in the world :)”;
  • no vídeo mostrando a equipe Jolla, aparecem vários aparelhos em que rodam Sailfish, alguns foram identificados : Nokia N9, Nokia N950, Raspiberry Pi, HP Touchpad, etc. São para uso interno da Jolla a fim de testar o Sailfish OS, mesmo que não sejam para o público usuário, mostram a versatilidade do Sailfish OS;
  • vídeo de 23/11/2012 explicita que : para fechar um software basta pressionar longamente e depois “X” de fechar, até 9 softwares abertos visíveis na UI, o swipe para voltar para a home screen pode ser feito de qualquer um dos 4 cantos da tela, por enquanto não há modo horizontal (landscape) mas isso será abordado pela Jolla.
  • mais um vídeo novo, de 23/11/2012, longo, só que em finlandês : mostra aos 4min20s como se fecha um software, bem como outros detalhes.
  • em 27/11/2012 : no Facebook oficial a Jolla afirma que não fornecerá imagens oficiais do Sailfish OS para Nokia N9/N950, mas que a comunidade poderá compilar código do Sailfish OS para esses e outros smartphones e tablets (vide final dessa matéria e resposta via twitter);
  • (19/01/2013) : interessante compilação de respostas da Jolla, “FAQ about Jolla & Sailfish OS”, confirmando Python/PySide com Qt 4.8, nada de sistema de segurança atrapalhando usuário e programador (tal como o Aegis no MeeGo Harmattan), suporte nativo a chroot (à la Maemo 5, permitindo Easy Debian, etc);
  • (17/02/2013) entrevista da PocketNow com a Jolla, bem interessante, indicando que o primeiro smartphone da Jolla deve ser exibido em breve (aposto até Março);
  • (26/02/2013) na MWC 2013 (25-27/02) em Barcelona, a Jolla apresentou o Sailfish SDK alpha, mas ainda não será mostrado o 1o smartphone Jolla mas que não deve demorar;
  • (26/02/2013) Site SailfishOS.org relançado em 25/02/2013 com tudo que você precisa para programar, incluindo Sailfish OS SDK Alpha fácil de instalar e usar.

O que eu acho interessante na Jolla e no SailFish OS ?

  • Linux de verdade, só que móvel, sendo descendente do Maemo e MeeGo Harmattan;
  • multi-tarefa de verdade, tal como no Maemo e MeeGo Harmattan, onde o usuário se quiser pode deixar dezenas de softwares rodando durante dias, tendo total controle sobre que softwares deixa rodando, fecha, etc, bem diferente de Android, iOS e Windows Phone;
  • X Terminal já nativo, com ferramentas padrão Linux (shell, ssh, etc);
  • softwares feitos em Qt para MeeGo (incluindo Nokia N9) serão facilmente adaptáveis para o Sailfish OS (muda de pacote .deb para .rpm e eventual uso de poucas API’s diferentes no código-fonte);
  • (17/02/2013) Mer + Nemo Mobile está disponível para Nokia N900 e N9/N950 há mais de ano, e seus softwares vão rodar no Sailfish OS. Por exemplo, vide o tópico “Python (modules) on Mer/Nemo” com lista de softwares Python disponíveis, alguns com interface gráfica (KhtSimpleText, ModRana, etc);
  • (19/01/2013) confirmada a linguagem de programação Python inclusive com PySide (suporte a Qt 4.8), tal como no MeeeGo Harmattan (que usa Qt 4.7);
  • expectativa de smartphones, tablets, etc, rodando o SailFish OS, a partir de 2013;
  • grande chance de (parte do) Sailfish OS ser mais uma opção de sistema operacional no Nokia N9 via múltiplo boot (além do Android 4 e Mer/Nemo), segundo a Jolla via twitter/Facebook, basta alguém da comunidade ter a iniciativa.

Como e onde eu pretendo colaborar no Sailfish OS ? Continuando a programar em Python e Qt/Qt Quick (sou autor ou mantenedor de alguns softwares) para MeeGo 1.2 Harmattan do Nokia N9, pois tudo ou quase tudo poderá ser portado facilmente para Sailfish OS. Tentando instalar o Nokia N9 para testar o Sailfish OS, se e quando ficar disponível para o mesmo. Colaborando com eventual “Easy Debian” para Sailfish OS. E outros projetos que só a cultura FOSS permite criar.

No mais, algumas matérias recomendadas sobre Jolla e Sailfish OS :

Posted in Linux, MeeGo, Nokia N9, Smartphones, Tablets | 4 Comments »

Tablet de 7″ BlackBerry PlayBook a R$615

Posted by robertocolistete em 19/10/2012

Promoção muito boa do tablet BlackBerry PlayBook 16GB a R$615 em 12x com frete gratuito.

(28/10/2012) Melhor ainda, agora por R$599,99 em 12x, com frete gratuito para vários destinos.

(17/02/2013) PlayBook 32GB em promoção por R$629 em 12x, com frete gratuito.

Sobre tal tablet, vide matéria minha anterior.

Esse tablet hoje é o único da BlackBerry, porém em poucos meses ela estará lançando o BlackBerry 10 OS e outros tablets (e smartphones). Inclusive o tablet Playbook rodará o BlackBerry 10 OS quando for lançado (confirmado em 31/01/2013) . Até lá, quem quiser pode experimentar o BlackBerry OS 10 alfa no PlayBook.

Posted in Tablets | Leave a Comment »

Usando Linux dentro do Android no Asus Transformer

Posted by robertocolistete em 17/09/2012

Muita gente não sabe que é sim possível instalar e usar distribuições Linux completas dentro do Android, usando chroot de imagens Linux. Para tanto o Android precisa estar rooteado (ter feito “root”, i.e., ter destravado um pouco o Android), vide artigo anterior meu para o Asus Transformer.

Quais vantagens de rodar Linux dentro do Android ? A principal é ter acesso aos mesmos softwares Linux encontrados em PC desktops/notebooks, como OpenOffice/LibreOffice, FireFox, Thunderbird, GIMP, TeXMaker/TeX/LaTeX, compiladores C/C++ (gcc/g++), Python completo (com centenas de módulos diversos), etc. Enfim, dezenas de milhares de softwares Linux (p.e., uns 29 mil na distribuição Debian) rodam em processadores com arquitetura ARM.

Anteriormente rodar Linux via chroot no Android era um procedimento bem longo e manual, mas nos últimos meses temos softwares que automatizaram a instalação e uso de Linux no Android.

Vou mostrar um caminho simples e testado para se ter Linux rodando no Asus Transformer, que tem atualmente Android 4.0.3 ICS. As instruções abaixo são para uso da distribuição Ubuntu 10.10 Maverick :

  1. instale os softwares gratuitos “Complete Linux Installer“, “Android Terminal Emulator” e “AndroidVNC Viewer“, todos no Google Play Store;
  2. vá no site do projeto LinuxOnAndroid (dos autores do software “Complete Linux Installer”), seção de downloads e escolha uma imagem. Porém, eu acho melhor o Ubuntu 10.10, um pouco mais antigo (Outubro de 2010) porém com a maioria dos softwares funcionando no Asus Transformer, ao contrário do Ubuntu 12.04. Por isso eu recomento o download da imagem UbuntuV5-image.zip (com 1,7 GB compactados) e o script ubuntuV6-1-scrip.zip, ambos para Ubuntu 10.10 Maverick;
  3. descompacte a imagem (com 3,5 GB) e o script em um computador PC. Copie então para o Asus Transformer (recomendo via cabo USB ou via cartão microSD por ser mais rápido e confiável), colocando tais arquivos (“ubuntu.img” e “ubuntu.sh”) em um novo diretório “ubuntu” dentro do “/sdcard” (“Armazenamento interno” do “Gerenciador de Arquivos”);
  4. clique no “Complete Linux Installer” no seu Android, depois em “Launch”, selecione “Ubuntu”, depois clique em “Start Linux”.
  5. um terminal será aberto com letrinhas pequenas em fundo azul (mude isso em “Preferências” do “Android Terminal Emulator”, eu coloquei fonte em 14pt e texto verde em preto). Vai pedir a resolução da tela da interface gráfica, digite “1280×752” (reservando 48 pixels para a barra inferior do Android ICS). Depois escolha “1 – LXDE” ou “2 – Gnome”, aí é sua preferência, LXDE é um pouco mais rápido. Após alguns segundos você terá o prompt de terminal Linux após “root@localhost:/#” esperando por algum comando seu, por exemplo “df -h /” (para ver espaço ocupado e livre na imagem), “ls -l”, etc. Se gosta de CLI (Command-Line-Interface), bem, então aproveite;
  6. clique no “androidVNC” e use uma nova conexão, com nickname “Ubuntu 10.10” (ou outro nome), password “ubuntu”, address “localhost”, port “5900”, color format “24-bit color”. Clique em “Connect” e… voilá, você agora vê o LXDE ou Gnome do Ubuntu 10.10 ! No “androidVNC” as melhores opções de “Input Mode” são a 1a (“Touch Mouse Pan and Zoom”) e a antepenúltima (“Mouse Pointer Control Mode”), dependendo do uso e gosto. Para aparecer o teclado virtual, use a 1a opção, dê um toque prolongado na tela, clique na grade na parte inferior (entre duas lupas). Para uso da Asus Eee Dock, eu prefiro a outra opção;
  7. para fechar o Linux, escolha “Disconnect” no “androidVNC”, depois no terminal digite “exit” (ou pressione Ctrl+d) para sair do chroot e desmontar a imagem.

Ubuntu 10.10 Maverick com LXDE rodando no Asus Transformer via chroot

Bem, cada vez que quiser usar, repita os passos 4 a 7. Dicas e informações diversas :

  • como o Android não tem X Windows, é preciso abrir um cliente VNC para ver a interface gráfica do Linux, por isso a necessidade de abrir o “androidVNC”. No Linux chroot roda um servidor VNC automaticamente. Essa camada extra de VNC servidor/cliente torna a interface gráfica do Linux mais lenta, às vezes dá para ver partes da tela sendo repintadas. Isso não é culpa do Linux, e sim do Android por não ter X Windows implementado;
  • para ficar mais fácil de usar toque na tela, aumente o tamanho das letras configurando em “System->Appearance” ou equivalente;
  • essa imagem Ubuntu 10.10 é bem completa, já tendo instalado OpenOffice 3.2.1, Firefox  3.6.13 (com Flash da comunidade), Thunderbird  3.1.17, GIMP, TeXMaker/TeXLive, Python 2.6.6, gcc/g++ 4.4.4, Leafpad, gedit, GNU Emacs 23, Evince, gv, Calculator, Xarchiver, PCManFM e Nautilus file managers, Gnome Terminal, LXTerminal, ImageMagic, Trasmission, Music Player, Synaptic, etc;
  • não atualize o Firefox e nem todos os softwares (via “apt-get upgrade”) da image, senão o Firefox pára de funcionar;
  • eu recomendo instalar softwares via terminal, com comando “sudo apt-get install –no-install-recommends <nome-do-pacote>”, pois evita instalação de pacotes recomendados, aproveitando o espaço limitado da imagem. Sugestões de pacotes : htop, abiword, gnumeric, icedtea6-plugin (Java 1.6.0 para o Firefox), maxima/wxmaxima/maxima-share, ipython, python-numpy, python-scipy python-matplotlib, python-mpmath, python-pyglet, python-sympy;
  • os diretórios “/external_sd” e “/sdcard” e apontam para o microSD externa e a memória flash interna, respectivamente, permitindo transferir arquivos entre Android e Linux chroot;
  • se fizer alterações na imagem (adicionando softwares, guardando arquivos pessoais, etc), então, com a imagem desmontada, faça cópias de segurança da imagem, pois elas não são robustas e se corrompem com facilidade (ao desligar o Android com a imagem montada, etc).

Em “LinuxOnAndroid downloads“, “Ubuntu 12.04 full” tem interface gráfica Unity que não funciona no Asus Transformer (devido ao processador Tegra 2), “Debian V4” não permite instalar novos programas e usa um XFCE bem feioso, “Backtrack” eu não testei. “Ubuntu 12.04 small” funciona, usando LXDE, mas vários softwares não funcionam (direito) : Chromium, Firefox, Thunderbird, Synaptic, etc. Recomendo instalar nesse “Ubuntu 12.04 small” : abiword, gnumeric, libreoffice, midori (navegador web leve), browser-plugin-gnash (Flash da comunidade), openjdk-6-jre e icedtea6-plugin (Java da comunidade).

Parte das instruções acima a priori funcionam para qualquer Android rooteado e smartphone/tablet. Basta mudar, por exemplo, no ítem 5 a resolução da janela VNC, tirando 42 pixels da dimensão vertical da resolução da tela do seu smartphone/tablet.

O Asus Transformer é um tablet bom para usar Linux via chroot, pois tem ótima tela com resolução de 1280×800 pixels, Tegra 2 rápido e bastante memória flash interna (mais de 10GB livres no “/sdcard”). Melhor ainda com a Asus Dock, adicionando ótimo teclado, bom touchpad e possibilidade de conectar mouse via USB.

Tabela de desempenho de alguns softwares rodando em Ubuntu em notebooks e no Asus Transformer. Formato : tempo em segundos para abrir pela 1a vez / na 2a vez (versão do software).

Software XPS 15 A1215B TF101-U10.10 TF101-U12.04
Open/LibreOffice Writer 6s / 1s (LO 3.5.4) 7s / 2s (LO 3.5.4) 21s / 5s (OO 3.2.1) 15s / 5s (LO 3.5.4)
Abiword 5s / 1s (2.9.2) 7s / 3s (2.9.2) 9s / 2s (2.8.6) 10s / 3s (2.9.2)
Gnumeric 3s / 1s (1.10.17) 3s / 1s (1.10.17) 5s / 2s (1.10.8) 4s / 2s (1.10.17)
Firefox 4s / 1s (14.0.1) 4s / 2s (14.0.1) 11s / 4s (3.6.13) Não abre (11.0)
TeXMaker 5s / 1s (3.2) 5s / 1s (3.2) 9s / 2s (2.0) GUI com erros
wxMaxima 2s / 1s (11.08) 2s / 1s (11.08) 3s / 1s (0.8.5) 4s / 1s (11.08)

Em azul temos os melhores tempos, em vermelhos os piores. Onde :

  1. XPS 15 : notebook Dell XPS 15 L502X com Ubuntu 12.04 64 bits, Core i7 2670QM 4 núcleos @ 2,2-3,1 GHz, 1+6 MB cache L2/L3, 8GB RAM DDR3 1.333 MHz, 1TB 5.400 RPM SATA hard drive;
  2. A1215B : notebook Asus 1215B com Ubuntu 12.04 64 bits, AMD C-50 2 núcleos @ 1,0GHz, 1 MB cache L2, 2GB RAM DDR3 1.066 MHz, 320 GB 5.400 RPM SATA hard drive;
  3. TF101-U10.10 : Asus Transformer TF-101 com Ubuntu 10.10, Tegra 2 (2 Cortex A9 @ 1000 MHz), 1 GB RAM LPDDR2 a 600 MHz, 1MB cache L2, ULP GeForce com 8 núcleos @ 333 MHz.
  4. TF101-U12.04 : Asus Transformer TF-101 com Ubuntu 12.04, idem.

Observações. No Ubuntu 12.04 rodando no Asus Transformer : o FireFox não abre, mas tem o navegador web Midori 0.4.3 que abre em 8s/3s, funcionando com Flash e Java; a alternativa ao TeXMaker é o Winefish; wxMaxima dá erro em cálculo, aí a alternativa é por exemplo o xMaxima.

Vemos que o Ubuntu no Asus Transformer é não muito mais lento ou mesmo igual em termos de velocidade que netbooks, notebooks baratos e mesmo notebooks topo-de-linha. Mas se os notebooks tivessem memória SSD (flash), os tempos seriam no máximo 1-2 s e mais rápidos que os do Asus Transformer.

Posted in Android, CAS, Linux, Python, SymPy, Tablets | 29 Comments »

Tablet Sony de 9,4″ com Android 4.0 por R$999

Posted by robertocolistete em 16/09/2012

Interessante tablet da Sony por R$999 em 10x, com tela de 9,4″ (1280×800 pixels), processador Tegra 2 de dois núcleos a 1 GHz, WiFi, 1GB de RAM, 32GB de memória flash, câmeras de 5/0.3 MPixels, microUSB, entrada de cartão microSD, Bluetooth, GPS, 598 g, etc. Ah, sim, vem com Android 4.0 ICS já instalado, raridade no Brasil. Mais detalhes no site da Sony.

Eu tenho um Asus Transformer TF101 com configuração semelhante, por isso recomendo esse tablet da Sony, o ponto forte além do preço é ter 32GB, qualidade Sony e já vir com Android 4.0.

Vide meu artigo anterior, Samsung Galaxy Tab 2 7″ com Android 4 a R$699 & programas científicos no Android, com dicas de softwares educacionais e científicos para Android.

Espero que os preços de tablets no Brasil cheguem nesse patamar : R$900-1.000 para os de tela de 9-10″ e R$600-700 para os de 7″.

Posted in Android, Tablets | Leave a Comment »

Root no Asus Transformer TF101 de forma fácil

Posted by robertocolistete em 14/09/2012

O Asus Transformer atualmente tem o Android 4.0.3, vindo de fábrica não rooteado. Um Android rooteado permite fazer adicionalmente : rodar chroot em imagens diversas (com Linux, etc), overclocking (dependendo do kernel), softwares extras (Titanium Backup, firewall como o DroidWall, etc), acessar todo o sistema de arquivos do Android (/data, etc), etc.

Recentemente o procedimento de root para Asus Eee Pad Transformer TF101, Transformer Prime TF201, Transformer TF300, Slide SL101 ficou bem mais fácil, usando o “1 Click Transformer Root”. Ou seja, basta :

  • fazer download do arquivo “1-Click Transformer Root_1.1.7z”, descompactar e copiar para um computador rodando Windows;
  • habilitar no Asus Transformer o modo de depuração USB, vá em “Configurações -> { } Opções do desenvolvedor -> Depuração USB” e marque tal opção;
  • fazer backup dos dados importantes no seu Asus Transformer;
  • carregar a bateria do Asus Transformer para pelo menos 50% da capacidade;
  • instalar o driver que está no sub-diretório “Source/adb-drivers/”, “dpinst_x64.exe” para Windows 64 bits ou “dpinst_x86.exe” para Windows 32 bits;
  • conectar o Asus Transformer (sem a dock station) via cabo USB ao PC com Windows;
  • rodar o arquivo “1-Click Transformer Root.bat”;
  • confirmar as perguntas e esperar pelos 3 reboots que ocorrerão.

Ao final o Asus Transformer estará rooteado. Para confirmar isso, instale o “Root Check Basic” no Google Play Store (era Android Market). Procure por “root” no Google Play Store para ver a diversidade de softwares que só são possíveis de instalar com Android com root. No Asus Transformer TF101, overclocking (de 1,0 para 1,3-1,5 GHz) precisa também de instalar kernel modificado, o que é algo mais complexo e arriscado.

Para quem gosta de usar comando-de-linha, instale o Terminal IDE ou o Android Terminal Emulator, abra um terminal e digite “su” para entrar no modo super-usuário (root).

Em outro artigo, mostrarei a experiência de instalar Linux via chroot no Asus Transformer rooteado, com servidor VNC rodando no Linux e cliente VNC no Android permitindo acessar também interface gráfica (LXDE, XFCE, Gnome) do Linux (Debian, Ubuntu, etc).

Posted in Android, Smartphones, Tablets | 37 Comments »