2 pontos por GN⁺ 2025-09-04 | 1 comentários | Compartilhar no WhatsApp
  • Este blog roda em um Google Pixel 5 reciclado
  • Usa ferramentas como Termux para criar um ambiente de servidor em um dispositivo móvel e operar o blog
  • O blog funciona de forma totalmente off-grid com a combinação de um painel solar de 100W e uma power station Jackery 160W
  • O blog é baseado em Hugo e oferece suporte simples para instalação de pacotes, automação da operação e backup/gerenciamento de arquivos com ssh, rsync, cron etc.
  • Mesmo em um smartphone Android, alcança operação estável e rápida, além de consumo de energia eficiente, como um servidor Linux comum

Introdução e motivação

  • Este blog é operado apenas com um Google Pixel 5 e energia renovável (solar)
  • A inspiração veio de vários usuários do Mastodon que hospedam diretamente seus sites com hardwares criativos, como ESP32, dispositivos Android e roteadores
  • Pensando em baixo consumo de energia, o autor iniciou por conta própria um experimento para dar novo uso a hardware usado

Hardware e ambiente de rede

  • Entre vários dispositivos guardados, foi escolhido o Google Pixel 5 por permitir Ethernet com conexão direta (suporte a USB-OTG e dock) e ainda receber atualizações de segurança recentes
  • Por causa do bloqueio da Verizon, não foi possível instalar uma custom ROM, então o ambiente Android original foi mantido
  • Foi considerado essencial usar uma rede Ethernet física cabeada, e não conexão sem fio (Wi‑Fi)

Blog off-grid com energia solar

  • A energia é fornecida por um painel solar monocristalino de 100W da Harbor Freight Tools e uma power station Jackery 160W
  • Esse setup permitiu acumular experiência prática com permacomputing (computação permanentemente sustentável) e experimentos com energia renovável
  • Também confirmou a viabilidade de operar um site independente e off-grid usando apenas peças de segunda mão

Construção do site: Termux e Hugo

  • Embora tenha considerado montar um ambiente Linux convencional, o autor aproveitou o Termux, um emulador de terminal para Android, junto com seu próprio sistema de pacotes
  • Pacotes essenciais como ssh, git, hugo já existem há muito tempo no repositório do Termux
  • Após instalar o Hugo diretamente no Termux, o blog existente baseado em Hugo foi migrado

Experiência de operação

  • O site apresentou desempenho mais rápido e confiável do que o esperado
  • No início, houve alguns pequenos problemas, como diferenças de versão do Hugo e gerenciamento da bateria solar
  • Foi criado um ambiente tão bem acabado que é difícil para os visitantes perceberem que ele roda em um smartphone Android

Configuração e gerenciamento simples

  • É possível montar rapidamente o servidor apenas instalando git, screen, um editor de texto e hugo
  • O upload de arquivos e novas postagens pode ser feito com o pacote dufs (servidor de arquivos estáticos baseado em navegador) ou com scp
  • O dufs também pode ser instalado facilmente a partir do repositório do Termux

Lista básica de pacotes utilitários

  • rsync, openssh, git, wget, curl, fish shell, cronie, termux-services, iperf3, speedtest-go, screen, helix, hugo

Automação de serviços e acesso por SSH

  • Dentro do Termux, sshd e cronie são iniciados por unidade de serviço (sv-enable)
  • Com base na documentação oficial, é preciso atenção ao registro da chave pública SSH, à porta fixa (8022) e ao nome de usuário gerado automaticamente

Automação da operação do blog com Hugo

  • O comando de execução do hugo serve é registrado como um alias do fish shell para facilitar o gerenciamento
  • Um script de automação (~/scripts/blog_reload.sh) foi criado para encerrar a sessão anterior do screen, limpar o cache e criar uma nova sessão
  • Um trabalho cron via cronie (*/5 * * * * ...) cuida do reinício e recarregamento periódico do blog

Backup e gerenciamento de dados

  • É possível acessar remotamente via ssh no Termux e fazer backup do diretório inteiro com rsync
  • Também inclui automação integrada com cron para desktop e NAS
  • Backups adicionais também podem ser feitos em uma instância própria de git, e o uso de outros forges como o GitHub fica livre

Encerramento e mensagem final

  • O projeto demonstrou a viabilidade de operar um blog barato, eficiente e ecologicamente correto, combinando dispositivo móvel e energia renovável
  • Dúvidas e feedback são bem-vindos via Mastodon ou e-mail

1 comentários

 
GN⁺ 2025-09-04
Comentários no Hacker News
  • Gosto da ideia de reaproveitar smartphones antigos para usos de infraestrutura leve, por causa do baixo consumo de energia e do UPS embutido, embora obviamente também haja desvantagens e algumas delas possam ser mitigadas. Também tenho alguns dispositivos Android antigos e adoraria fazer alguns experimentos legais assim. Mesmo que eu possa adicionar facilmente funcionalidade com VMs ou contêineres na infraestrutura de homelab que já está rodando e o consumo extra de energia provavelmente seja quase zero, ainda acho esse tipo de tentativa muito bacana e quero experimentar também. Uma coisa que me pergunto é por que não usaram WiFi. Um dock -> Ethernet com fio parece um acessório extra desnecessário que só aumenta o consumo de energia. Não parece que seria preciso tanta largura de banda em um telefone antigo, então fiquei curioso sobre o motivo de o autor ter escolhido Ethernet com fio mesmo assim. De qualquer forma, acho que preciso adicionar um Pixel 5 ao inventário do homelab também. O layout do site e as informações também são muito legais
    • Eu também uso um Pixel 3 preso magneticamente à esquerda do teclado. Deixo aberta uma página web com uma grade de botões e, ao pressioná-los, ele faz várias coisas, como inserir um timestamp na posição do cursor, alternar o monitor entre ligado e desligado, iniciar aplicativos específicos etc. Originalmente eu queria comprar um Elgato Stream Deck, mas como eu tinha um celular sobrando, acabei usando assim
    • Eu adoraria ver um kit de "serverização" para dispositivos móveis antigos. Algo no estilo de um kit de consolização para Game Boy Advance como este [https://fingercramp.com/portfolio/…], extraindo a placa-mãe do telefone e expandindo com armazenamento externo, uma fonte de alimentação melhor, interfaces de rede físicas etc.
    • Sou o autor do blog, obrigado. Concordo que adicionar uma VM ou um contêiner a um homelab já em funcionamento não aumenta o consumo de energia. Comecei este projeto por diversão e também porque queria tentar alimentá-lo com energia solar. A ideia original era desligar o homelab à noite e deixar só o telefone rodando na bateria, mas o homelab virou uma infraestrutura essencial e agora precisa ficar sempre ligado. Preciso de Ethernet com fio por causa da largura de banda estável. Minha rede WiFi não tem um desempenho muito bom
    • O WiFi tem latência alta e inconsistente. O 1% mais lento das requisições que saem do servidor pode levar quase 1 segundo a mais. Se você vai rodar um blog em um telefone, acho que ele precisa responder muito rápido. Telefones Android antigos talvez não suportem os padrões de WiFi mais recentes e talvez também não consigam lidar com o tráfego de aparecer na home do HN
    • No smartphone, o WiFi costuma ter desempenho muito instável e alta latência para conexões externas inesperadas por causa dos recursos de economia de energia. Não sei se dá para desligar isso por parâmetros do kernel, mas, mesmo que dê, provavelmente exigiria root
  • A eficiência energética dos smartphones é realmente interessante. Os celulares de hoje são como servidores ARM otimizados para uso com bateria. Um Pixel 5 consome menos de 5W mesmo em carga total, enquanto um servidor x86 típico consome de 50 a 100W. Só para um blog pessoal, isso daria uma economia de 400 a 800kWh por ano. O impacto ambiental de reutilizar eletrônicos, em vez de só reciclá-los, é maior do que se imagina
    • Para um site estático, seria muito mais eficiente implantar no S3 ou no GitHub Pages. Quando não há requisições, o consumo de recursos é zero. Rodar um site estático em casa num servidor x86 é muito ineficiente
    • Também dá para ter uma configuração x86 de baixo consumo. Um sistema com n100 fica abaixo de 10W em idle e, em carga máxima, na faixa de 20 a 30W
    • A ideia de que uma CPU x86 gastaria 50 a 100W para fazer o que um telefone de 2020 consegue fazer é coisa de uns 10 anos atrás. Hoje em dia já não é comum queimar 75W só para hospedar alguns arquivos estáticos. No fim, usar um smartphone antigo que está sobrando em casa no lugar de um Pi de ultrabaixo consumo continua sendo uma boa ideia
    • Uma economia anual de 400 a 800kWh equivale, na tarifa média de eletricidade dos EUA (13,2 centavos por kWh), a no máximo 105,60 dólares, cerca de 8,8 dólares por mês. Isso não chega nem a 1% da linha de pobreza para uma pessoa sozinha (15.650 dólares em 2025). Eficiência energética é boa, mas macroeconomicamente não faz tanta diferença assim
  • Tecnicamente, é um Google Pixel 5 reutilizado, não reciclado. Ele não foi completamente desmontado e remanufaturado. A ordem Reduce, Reuse, Recycle também reflete o impacto ambiental, e reutilizar é um nível acima
    • Ainda assim, se no geral estamos falando de reutilização, "reciclar" também não é um termo incorreto. [https://en.wiktionary.org/wiki/recycle/…]
    • recycle também é uma expressão gramaticalmente correta. Não há tanta diferença de significado em relação a reuse
  • Mesmo comparando com tentativas de reaproveitar RPi ou outras placas, usar um Pixel 5 parece razoável. Pode até ter desempenho melhor, e só a tela já consome bastante energia. Imagino que haja problemas de aquecimento em tarefas de alta carga, então fiquei curioso sobre como a energia foi otimizada. O Hugo que o blog usa é um gerador de site estático desenvolvido em Go e parece adequado para servir conteúdo. Aliás, ultimamente tenho gostado de SSG e estou planejando fazer um editor de blog em Markdown com Tauri/Rust + React/MUI, integrado com git e implantado via Cloudflare, mas ainda não coloquei em prática. É uma pena que aquele editor de blog com GUI que a Microsoft fez no passado já não exista mais
  • A parte que mais me preocupa é como evitar o problema de “spicy pillow” (bateria estufada e risco de incêndio). Seria ótimo se desse para rodar só por USB, sem bateria
    • Hoje em dia alguns telefones oferecem a opção de limitar a carga a 80%. Se não tiver, uma alternativa é usar tomada inteligente com temporizador, ou IFTTT, para controlar a energia automaticamente com base no nível da bateria. Por exemplo, ligar abaixo de 40% e desligar acima de 60%
    • O mais irritante é que, mesmo se você remover a célula da bateria e alimentar o BMS diretamente, o Android pode desligar depois de um tempo dizendo que “a bateria acabou”. Isso só dá para impedir com root, e é bem trabalhoso. Se desse para injetar energia direto da tomada, esse problema também desapareceria
    • Eu deixo vários dispositivos Android antigos ligados a um carregador USB múltiplo, que por sua vez está conectado a um interruptor inteligente, e carrego só por algumas horas à noite. Depois de trocar a ROM e fazer root, configurei o app ACCA para limitar a carga a 80%. Um Samsung Note 5 lançado em 2015 estufou há cerca de meio ano, mas um Samsung S9 e um Nokia 6.1 seguem funcionando sem problemas há 6 anos com LineageOS
    • Você pode consultar algo como [https://www.instructables.com/Power-an-Android-Phone-Without-Battery/], e também é possível comprar baterias falsas específicas para cada modelo online
    • Outra opção é simplesmente deixar dentro de uma caixa à prova de fogo e, quando estragar, substituir por outro
  • Em algum lugar, algum executivo do Google provavelmente está se perguntando: “por que estamos deixando as pessoas reutilizarem dispositivos Google desse jeito, será que não existe alguma forma de colocar anúncios nisso?”
  • Estou enviando este comentário de um Pixel 5 que ainda está em ótimo estado. É o melhor telefone que já usei. O tamanho é ideal, o leitor de digitais na traseira também é ótimo, tudo nele é bom. Os telefones lançados depois simplesmente não me satisfizeram
    • Eu também uso um Pixel 5 recondicionado que comprei por cerca de 250 dólares. Também é o melhor telefone que já tive. O design de 2020 é simples e pragmático (por exemplo, sem recursos enfeitados como leitor biométrico sob a tela), então continua satisfatório por muito tempo. Espero continuar tendo bateria para 2 a 3 dias e uma qualidade de foto “boa o bastante” por mais algum tempo
    • Acho que meu Pixel 5 precisa de troca de bateria. Agora a bateria descarrega a ponto de eu precisar carregá-lo duas ou três vezes por dia
    • Comigo é parecido. Pretendo usar meu iPhone SE2 até o fim (mesmo ano, tamanho, peso, Touch ID etc.)
  • Fiquei curioso sobre como o DNS é tratado numa configuração dessas. Imagino que os ISPs normalmente não gostem muito que se rode um servidor em conexão residencial
    • O verdadeiro problema é NAT. Estou acompanhando esta issue do tailscale [https://github.com/tailscale/tailscale/issues/11563]. Outra opção é entrar em contato com o ISP diretamente (ou com a concorrência) e pagar uma pequena taxa (por exemplo, +5 euros/mês) para obter um IP estático. Como exemplo, isso também permite jogar Factorio multiplayer com amigos
    • A maioria dos ISPs na prática fornece IP “dinâmico”, mas ele quase nunca muda. No meu caso, muda aleatoriamente uma vez por ano, e eu atualizo o DNS manualmente quando isso acontece. Também daria para automatizar, mas como não acontece com frequência, acabo fazendo manualmente. Imagino que o ISP só vá se importar se o tráfego de upload ficar constantemente saturado, e vale lembrar que empresas como Comcast/XFinity têm uma assimetria bem forte entre upload e download
    • Existem várias soluções de DNS dinâmico. TP-Link e outras marcas permitem configurar facilmente pelo aplicativo
    • Eu tenho internet de 2,5 gigabits e mesmo assim não tenho IP fixo. Em vez disso, rodo um script no roteador para atualizar as configurações de DNS sempre que o IP muda. Se o provedor de DNS permitir alterar o TTL, dá para automatizar
  • Link relacionado: [https://fairphone.com/en/2024/…]
  • Hum, este é o meu blog. Sou só uma pessoa comum escrevendo algumas coisas aleatórias e sinto como se tivesse sido arremessado para fora da minha bolha. Criei minha conta no HN só hoje. Para responder às perguntas: 1) ainda estou rodando o blog no Pixel. Não vejo motivo para mudar 2) coloquei na internet de casa simplesmente porque achei que quase não teria tráfego 3) sou só alguém que faz experimentos em casa nas noites de dias úteis, não trabalho na área. Na verdade, sou dono de uma empresa de contratos de construção
    • Seu jeito de pensar é de engenheiro, então acho que você vai se dar bem por aqui. Também dei uma olhada em outros posts do seu blog, tem muita coisa interessante, e o layout é muito legível, então pretendo voltar. O post “I want to be left alone” também fez sucesso no HN
    • Foi uma leitura interessante. Fiquei com uma dúvida: em vez de rodar só com hugo serve, existe algum motivo para você não gerar os arquivos com hugo e depois usar um servidor web como nginx?