E sono passato a Hugo
E sono passato a Hugo da Pelican perchè Pelican non mi soddisfa. Dopo un po’ di utilizzo di Pelican ho deciso di prendere e fare due cose a modo mio perchè non mi piacciono o non supportate: una risistema al tema che è vermente una mostrosità di codice e la gestione delle categorie
Problemi personali
Perchè ho deciso di cambiare? Perchè ci sono due cose che sento strette:
- La strutturazione del layout, che sento stretta e strutturata in modo “sbagliato”
- L’impossibilità di avere multiple category per un singolo post senza implementare io stesso un plugin
A questi si aggiunge che non sono mai riuscito a far funzionare correttamente la configurazione che obbliga a renderizzare solo i post “passati” e non “futuri” am credo che questo sia un problema mio.
La scelta
Ho scelto Hugo rispetto a Jekyll in quanto non ho interesse a lavorare in Ruby ma, invece, sono incuriosito a lavorare in GoLang (linguaggio in cui è interamente scritto Hugo) e me ne hanno parlato molto bene.
Leggendo anche in giro non mi è sembrava particolarmente difficile la conversione Pelican -> Hugo per cui ho dato una occhiata a come eseguirla.
Per avere un blog di Hugo devi avere:
- Una “installazione” aggiornata di Hugo
- Uno spazio web dove poterti connettere
- Un tema per Hugo
Realizzazione
Scelto il generatore statico di siti è stata la volta di implementareil resto del sito.
Installazione
L’installazione di Hugo è la cosa più semplice. Scarichi dal sito e segui le istruzioni per installarlo nel sistema operativo che si possiede.
Una volta installato è stato possibile utilizzare comandi di Hugo da terminale costruendo così lo scheletro del tema e della struttura del blog.
Contenuto
Bisogna convertire tutto il contenuto in un formato conpatibile con Hugo. Per mia fortuna il formato è sempre un Markdown per i contenuti mentre uso il formato Toml per i metadata. Hugo supporta anche altri formati per i metadata ma quello in cui mi trovo meglio è il Toml e di conseguenza ho modificato (a mano) tutti i post e le pagine per farli funzionare col nuovo sistema.
Tema
Per il porting del sito è stato necessario fare il porting del tema in Hugo da Pelican o usare uno dei temi disponibili online. Ho quindi deciso di prendere i css e i js del tema pelican e riscriverlo per Hugo. E’ stato retalivamente facile una volta capito il sistema di temi di GoLang che risulta diverso da Jinja , che è il sistema utilizzato da Pelican.
Publicazione
Fatto questo ho portato tutto su GitLab dove ho configurato il settaggio per la compilazione automatica in modo da porter pushare i file e lui pensa a ricompilare tutti il sito.
image: publysher/hugo
pages:
script:
- hugo
artifacts:
paths:
- public
only:
- source
Con questa configurazione ogni qual volta viene pushato un commit del branch source lui esegue l’elaborazione del sito nella cartella public che viene a sua volta visualizzata da GitLab come root del sito internet e distribuita online a chiunque richieda la pagina.
HTTPS
Ho utilizzato Let’s Encrypt per generare un certificato per il dominio associato al sito e lo ho caricato su static/.well-known come indicato dal servizio ottenendo così una connessione https configurata per il mio dominio
This post is part of the Pelican for My Site series
Comments
To reply to this post, you can send a Webmention or you can toot me at [email protected]