Show HN: Ressuscitando o navegador Dillo
Um esforço para revitalizar o navegador Dillo, ultraleve, atraiu grande interesse de usuários que valorizam navegação rápida e minimalista em hardware antigo ou com poucos recursos. Os comentaristas destacam a pequena pegada de memória do Dillo, sua extensibilidade baseada em plugins e a ausência deliberada de JavaScript como tanto uma vantagem de segurança quanto uma grande limitação na web atual, pesada em JS. O mantenedor foca em manter o Dillo vivo nas distribuições Linux e BSD, melhorar o suporte a padrões dentro do alvo HTML4/CSS2 e possivelmente modernizar o sistema de build, preservando seu nicho como uma alternativa simples e eficiente aos navegadores mainstream.
Reação geral
- Muitos comentaristas expressam forte nostalgia e gratidão; vários ainda usam o Dillo diariamente, especialmente em máquinas muito antigas ou com poucos recursos e em conexões lentas.
- O Dillo é elogiado pelo consumo minúsculo de memória, pela velocidade e por dar aos usuários uma sensação de controle total por meio de configurações e alternâncias simples.
Desempenho e compatibilidade
- Funciona bem para sites com muito texto e pouco CSS (documentação, Wikipedia, HN, páginas da “small web”). Muitas vezes se assemelha ao “reader mode”.
- A renderização de sites modernos é fraca: falha no Acid2, tem como alvo HTML 4.1 e CSS 2.1, oferece apenas suporte parcial a CSS, não tem recursos de HTML5 e os layouts frequentemente quebram.
- Não há engine de JavaScript; muitos sites pesados em JS ou no estilo SPA simplesmente não carregam conteúdo. Alguns sites servem versões mais simples se o user agent for definido como um perfil antigo/embarcado (por exemplo, PSP).
- Alguns recursos legados, como frames, estão ausentes, o que limita seu uso para certos documentos.
Segurança e JavaScript
- A ausência de JS é vista por muitos como uma grande vantagem de segurança e desempenho, especialmente para abrir links suspeitos.
- Outros argumentam que isso é enganoso: o Dillo é código C/C++ sem sandbox que ainda assim analisa formatos complexos e, idealmente, deveria rodar em um contêiner (por exemplo, bubblewrap).
- A adição de JS por meio de uma engine leve (por exemplo, QuickJS) é discutida; mantenedores e vários comentaristas veem isso como contrário aos objetivos do Dillo e como uma grande carga de segurança/complexidade, embora alguns observem que JS pode rodar de forma aceitável em hardware antigo.
Sistema de plugins e extensões (DPI)
- O DPI é amplamente elogiado por ser simples e poderoso: muitos recursos centrais (favoritos, downloads, cookies, alguns protocolos) são plugins que se comunicam por stdin/stdout.
- Plugins externos adicionam protocolos como Gopher, Gemini, git, man:, etc.; forks/ports (por exemplo, Dillo+ e outros) estendem isso com mais protocolos.
- A UX do plugin Gemini em torno de fixação de certificado está sendo discutida e aprimorada ativamente.
Build, portabilidade e manutenção
- A nova manutenção busca manter o Dillo nas distros, adicionar suítes de teste/fuzzing e, eventualmente, modernizar o sistema de build (CMake/Meson versus manter make/autotools).
- CI multiplataforma e trade-offs de hospedagem são debatidos: o GitHub é usado por visibilidade e CI, embora alguns prefiram forges auto-hospedadas ou federadas.
- Problemas de SSL/TLS com OpenSSL/LibreSSL foram relatados e corrigidos rapidamente; macOS e várias arquiteturas de nicho (m68k, VAX, Atari, netbooks, Raspberry Pi Zero) são alvos ativos.
Casos de uso e alternativas
- Uso típico: navegação leve em hardware antigo, documentação local, conteúdo no estilo smolweb e como visualizador “seguro” para URLs não confiáveis.
- Comparações colocam o Dillo em um espectro que vai dos navegadores em modo texto (lynx/elinks/w3m) passando por Dillo/Netsurf até navegadores completos (Firefox/Chromium).
- Alternativas mencionadas para diferentes nichos: Netsurf, Pale Moon, K-Meleon, Otter, clientes em modo texto e vários substitutos leves para Electron; o consenso é que o Dillo está entre os mais leves, mas também entre os menos compatíveis.