1 de maio de 2015
Como esse blog é gerado?
Olá, depois de tantos anos de tanto pospôr, finalmente aqui estou eu para fazer com que esse site tenha o sentido do qual foi criado. Aliás, essa não é a primeira tentativa minha de ter um site onde expressar meus registos, porém estou convencido que essa vez vai vingar, já que o processo de gerar o blog não é chato como as formas tradicionais.
Nesse post explico como gero esse blog, e dou dicas de como você pode fazer o mesmo. Então, vamos embora!
Quando se trata de blogs, provavelmente se pensaria em sistemas de gestão de conteúdo como o Wordpress, ou em serviços como o Blogger, ou outras das excelentes alternativas prontas para o uso que se pode encontrar pela internet. Não obstante, outra alternativa que tem ganhado alguns adeptos (ex: eu) é a geração de blogs com páginas estática. Essa abordagem se difere das outras, no sentido de que todas páginas a serem hospedadas são geralmente ficheiros de tipo .html prontos para serem acessados por um navegador, enquanto que em sites dinâmicos se necessita de um servidor especializado e base de dados, por exemplo, wordpress necessita PHP e MySQL. Os sites estáticos são seguros, rápidos e fáceis de manejar.
Esse blog é gerado em forma de páginas estáticas utilizando Hakyll. O site é hospedado pelo Github pages, e se aproveita o uso de git para manter o controle das versões.
Hakyll é uma biblioteca de Haskell que serve para compilar sites estáticos. Agora mesmo não vou entrar em detalhes sobre a linguagem Haskell (pode estar seguro que futuramente o farei) já que para utilizar o Hakyll não é necessario conhecer detalhes de Haskell. Mas para utilizar o Hakyll tem que ter um ecossistema para Hasekell instalado (i.e.: compilador, etc.)
Se pode baixar e instalar a última versão de Haskell a partir das instruções em https://www.haskell.org/downloads, de acordo com o seu sistema operativo.
Uma vez instalada a plataforma para Haskell, a instalação de Hakyll é trivial: na linha de comandos (ou terminal, ou consola) executar (nota que este passo requer uma conexão de internet):
cabal install hakyll
Depois, já estamos preparados para criar nosso blog:
mkdir meublog
cd meublog
hakyll-init .
Com isso se criarão os ficheiros necessários para gerar as páginas estáticas. Todos os ficheiros estão na pasta meublog
, onde por exemplo podes inserir um novo artigo criando um ficheiro na pasta /posts
, seguindo o padrão dos ficheiros de exemplo que aí se encontram. Por exemplo, criar /posts/2015-05-01-ola-universo.markdown
e colocar o seguinte conteúdo:
---
title: Olá Universo!
---
## Olá universo.
Esse é o **meu** primeiro post com hakyll.
Isso é um [link](http://lemol.github.io).
*Chau* Universo.
Finalmente, para gerar o conteúdo estático:
ghc --make site.hs
./site build
Aqui, o primeiro comando compila o código em haskell que está em site.hs
e o segundo executa o resultado para gerar o site. As páginas estáticas resultantes estarão na pasta _site
. Já pode abri-los com o seu navegador preferido.
Bem, era isso para hoje :), posteriormente entrarei em mais detalhes sobre o Hakyll, e sobre como hospedá-lo em Github Pages. Por enquanto, para saber mais sobre o Hakyll visite a página oficial dele.