ADB DV2200: cosa nasconde

Dopo quasi 4 anni ho disdetto il contratto che avevo con Fastweb e mi è stato detto che posso tenermi il router che loro mi avevano dato: l’ADB DV2200.

Si tratta di un router VDSL basato su piattaforma Broadcom con un firmware abbastanza configurabile, per esempio ho sempre tenuto gli OpenDNS al posto di quelli di Fastweb, ho aggiunto delle root statiche, etc. Tuttavia il router potrebbe sicuramente offrire di più con un firmware migliore, come OpenWRT/LEDE, anche perché il router ha 128MB di RAM. Tra gli altri aspetti negativi, invece, si annovera la presenza di sole porte Fast Ethernet e non Gigabit.

Su HWUpgrade, un utente aveva già fatto una breve analisi di questo router, ma non aveva scritto, per esempio, come fare per ottenere l’accesso in seriale, né allegato alcun tipo di log, ho deciso quindi di provarci io.

L’apertura non è tra le più difficili che io abbia riscontrato, ma neanche tra le più facili: ci sono solo due viti sul fondo, dopodiché bisogna fare un po’ di leva per rimuovere il pannello frontale, ovvero quello dove ci sono i led. Dopodiché bisogna svitare altre due viti e si ha libero acceso alla scheda del router. … [Leggi il resto]

OpenWRT/LEDE + extroot in F2FS? Ma anche no

Ho parlato più volte del mio TD-W8970 e ancora più volte di OpenWRT.

Sostanzialmente penso che siano un’accoppiata perfetta e una delle configurazioni dei miei vari dispositivi che mi diano meno da pensare, tuttavia di tanto in tanto ci faccio un po’ di manutenzione e di upgrade e così ho fatto anche di recente.

Negli anni il team di OpenWRT ha fatto un ottimo lavoro e adesso l’upgrade spesso riesce correttamente e ripristina senza problemi la configurazione, al più è necessario reinstallarsi i pacchetti aggiuntivi.

Io non ne uso molti: OpenVPN, DDNS e server UPnP, tuttavia ad un certo punto ho cominciato ad essere a corto di spazio, ho deciso quindi di passare ad una root su chiavetta USB. Anche questa è una cosa che mi piace fare, anche perché oggi le chiavette spesso le regalano come pubblicità; forse il TD-W8970 è stato proprio il primo dispositivo su cui ho fatto questo passaggio. Per questo motivo ho deciso di fare un’installazione pulita, con tanto di formattazione della chiavetta.

Guardando la guida ufficiale, mi sono ricordato di F2FS, quel filesystem creato da Samsung appositamente per le memorie flash e di cui mi ricordo tipicamente soltanto quando ho finito di installare un sistema, così ho colto la possibilità per provarlo. … [Leggi il resto]

Compara e unisci PDF

I PDF sono dei file molto comodi da leggere, ma possono diventare un inferno da modificare.

Avendo preso l’abitudine di prenderci appunti direttamente sopra, per me diventa un bel problema quando un documento viene aggiornato, così ho deciso di fare un’applicazione web che consenta di compararli visivamente e unirli.

È ancora un po’ un proof of concept. In pratica si basa sul noto PDF.js di Mozilla: lo usa per renderizzare le varie pagine in due canvas affiancati.

La navigazione è basata tutta su JavaScript vanilla, o meglio, su ES6, quindi con i browser moderni funziona, quindi, pur non avendo provato, sono sicuro che non vada su Internet Explorer.

Quindi questo progetto mi ha permesso di mettermi alla prova con JS, per vedere se riesco ancora a fare qualcosa senza jQuery, e mi ha dato modo di imparare un po’ a usare le API HTML5 per il Drag&Drop con i file.

Invece per il drag&drop dell’elenco di pagine che verranno unite mi sono affidato alla libreria html5sortable, che però non ha altre dipendenze. Avevo cominciato a implementare anche quello, però i risultati non erano buoni e la difficoltà parecchia. Quindi per questa cosa ha avuto senso usare una libreria, che peraltro non pesa molto.

Infine, per il lato client, ho usato Bootstrap 4, giusto per dare un po’ di classe al tutto.

Per il lato server ho usato una Servlet Java: pur non piacendomi molto come tecnologia, ha il vantaggio di poter chiamare direttamente l’ottima libreria iText, che è veramente potente e versatile.

L’unico svantaggio è la viralità della sua licenza: Afferro GPL. Mi vedo quindi costretto a rilasciare il lato server sotto questa licenza, invece il lato client, da solo, per quanto mi riguarda, se la Afferro lo concede, lo potete considerare sotto licenza MIT (non sono sicuro sia possibile, però).

Per il momento è ancora allo stato embrionale, soprattutto il codice lato server, quindi per motivazioni di sicurezza non ne faccio il deploy sul mio VPS, però vi lascio volentieri il codice per il download 😊 .

Boot USB su Raspberry Pi 3

Le Raspberry Pi tradizionalmente fanno il boot da schede di memoria, da SD standard con il primo modello, da MicroSD dal secondo modello in avanti.

Questo è uno dei loro peggiori difetti, a mio avviso. Non ho mai provato una grande simpatia per questo tipo di memorie, anzi, le trovo parecchio scomode, perché hanno bisogno di un lettore e talvolta anche di un adattatore, costano più delle chiavette USB, ma soprattutto mi hanno abbandonato, ormai già due volte.

La prima volta decisi di farmene una ragione e comprai un’altra microSD. Adesso, a distanza di un anno, è successo di nuovo, ma questa volta ho scoperto che su Raspberry Pi 3 esiste il boot USB nativo, un po’ come con la Orange Pi Zero.

La liberazione

Purtroppo, per poter abilitare questa funzionalità serve usare un’(ultima) volta una microSD, ma per mia esperienza posso dire che va bene praticamente qualsiasi scheda, anche molto vecchia, non HC e di qualsiasi classe. Infatti io ho usato una vecchia Kingston che sarà di classe -5 😊 . L’unico requesito è la campienza: almeno 2GB. … [Leggi il resto]

Filtri di FlatPress portati in Python

Da un bel po’ di tempo sto pensando di passare ad un sistema in Python per gestire il mio sito.

C’è solo una cosa che mi ferma: quando scrivo un articolo, la maggior parte è scritta in HTML puro, però ci sono anche alcuni tag speciali che usano dei plugin FlatPress ed in generale prima di mandare in output un post ci sono diversi filtri, ereditati da WordPress, che ne modificano il contenuto, abbellendone la tipografia (per esempio cambiando gli apici e le virgolette normali), bilanciando i tag se mi ero dimenticato di farlo etc.

Sono tanti anni che scrivo questo articoli su questo sito e ormai ne ho già accumulato un discreto numero, quindi passarli uno ad uno è un’opzione improponibile. Rimangono le due possibilità di prerenderizzare tutto e portare nel nuovo sistema un codice in puro HTML, oppure portare al nuovo sistema i vecchi filtri. Io ho scelto quest’ultima.

Alla fine FlatPress non ne usa così tanti: di default solo wpautop, wptexturize e conver_chars, che rispettivamente sistemano gli a capo, i break e i paragrafi, sistemano la tipografia e convertono alcune entities. Poi però ci sono anche alcuni plugin, in particolare il BBCode che aiuta davvero molto con l’inserimento delle immagini e la gesione di lightbox. … [Leggi il resto]