È stato presentato il rilascio del browser da console Offpunk 3.0, che supporta i protocolli HTTP/HTTPS, Gemini, Gopher e Spartan, oltre alla lettura dei feed di notizie nei formati RSS e Atom. Il programma è scritto in Python e distribuito sotto licenza AGPLv3.
Il browser è progettato per la visualizzazione di contenuti in modalità offline e consente di iscriversi a pagine o marcarle per una visione successiva, dopo di che le pagine sono automaticamente memorizzate nella cache e aggiornate se necessario. Offpunk offre la possibilità di conservare copie dei siti e delle pagine che vengono periodicamente sincronizzate, sempre disponibili per la visualizzazione locale. Le impostazioni di sincronizzazione possono essere regolate dall'utente, ad esempio, alcuni contenuti possono essere sincronizzati una volta al giorno, mentre altri una volta al mese.
La gestione avviene tramite un sistema di comandi e combinazioni di tasti. Supporta schede multilevel, sottoscrizioni e contenuti archiviabili. È possibile collegare i propri gestori per diversi tipi MIME. L'analisi e la visualizzazione delle pagine HTML avvengono utilizzando le librerie BeautifulSoup4 e Readability. Le immagini possono essere convertite in grafica ASCII tramite la libreria chafa.
Per automatizzare l'esecuzione delle azioni viene utilizzato un file RC che definisce la sequenza di comandi all'avvio. Ad esempio, tramite il file RC è possibile aprire automaticamente la homepage o caricare il contenuto di determinati siti per una visualizzazione successiva offline. Il contenuto scaricato viene salvato nella directory ~/ .cache/ offpunk/ in forma di gerarchia di file nei formati .gmi e .html, consentendo di modificare il contenuto, effettuare pulizie manuali o visualizzare pagine in altri programmi, se necessario.
Il progetto continua a sviluppare i client Gemini e Gopher AV-98 e VF-1, creati dall'autore del protocollo Gemini. Il protocollo Gemini è notevolmente più semplice dei protocolli utilizzati nel Web, ma offre più funzionalità rispetto a Gopher. La parte di rete di Gemini ricorda un HTTP semplificato su TLS (il traffico è sempre crittografato), e il markup delle pagine è più simile a Markdown piuttosto che a HTML. Il protocollo è adatto per la creazione di siti ipertestuali compatti e leggeri, privi delle complicazioni del moderno Web. Il protocollo Spartan è progettato per la trasmissione di documenti nel formato Gemini, ma si distingue nell'organizzazione dell'interazione di rete (non utilizza TLS) e amplia le funzionalità di Gemini con strumenti per lo scambio di file binari e supporta l'invio di dati. un server.
Tra le modifiche nella nuova versione:
- È stata implementata la possibilità di visualizzare i fumetti XKCD nel terminale. Per la visualizzazione dei fumetti è stata aggiunta una utility separata chiamata «xkcdpunk».

- È stata integrata la libreria «unmerdify», che consente di estrarre il contenuto principale da pagine HTML, utilizzando un insieme di regole «ftr-site-config» per filtrare il superfluo.
- Sono state aggiunte le operazioni «share» e «reply» per inviare l'URL della pagina via email e rispondere all'autore quando viene menzionato un indirizzo email nella pagina.
- È stata aggiunta la comando «cookies», tramite il quale è possibile importare un file di testo con i cookie che verranno inviati per il dominio specificato. In questo modo è possibile trasmettere i cookie di sessione per accedere al sito. Il file con i cookie può essere creato in un browser tradizionale (Firefox, Chromium) utilizzando l'estensione «cookie-txt», dopo di che deve essere importato con il comando «cookies import mycookie.txt https://domain».
- Per impostazione predefinita, la visualizzazione delle immagini è attivata nelle pagine aperte tramite Gemini. È stato aumentato il numero di immagini visualizzate nel terminale.

- È stata implementata la visualizzazione dei link nascosti (da tag ) per i feed RSS e Atom.
- È stato realizzato il marcatore rosso per i link bloccati. domini.

- È stata aggiunta la supporto per preset con più temi.
- È stata aggiunta la possibilità di tradurre l'interfaccia in diverse lingue.
Fonte: opennet.ru



