Criando página em hugo e hospedando no Codeberg
Se deseja aprender em público e/ou criar um jardim digital e/ou ter um espaço para sua contribuição para o movimento slow web, e que seja livre de anúncios, usando markdown e sem utilizar javascripts bizarros, veio ao lugar certo.
Introdução
Ao ler e por em prática esta publicação, você terá seu espaço na internet gastando pouco (ou nada).
Meu incentivo maior para escrever esta publicação foi o pedido de um amigo que, mais a frente, irei perguntar se posso informar quem é, o link e o propósito da página dele.
Propósito
Entre vários propósitos que possam ser escolhidos ou definidos, mesmo que eu não explique ou defina aqui, saiba que seu uso não é errado (desde que não seja nada ilegal, imoral ou anti-ético).
Aprenda em público
Li uma matéria que fala sobre aprender em público e os benefícios dessa atitude para si e para os outros. Recomendo a leitura.
Jardim digital
Se você não faz ideia do que seja um jardim digital, entenda bem o que é nessa publicação, em inglês, de Maggie Appleton, nessa publicação do Manual do Usuário e nessa publicação do contraforma.
Devagar web (slow web)
A ‘devagar web’ ou ‘internet devagar devagarinho’ (termos usados de forma jocosa por Jacqueline Lafloufa) é relacionado ao movimento slow web e que pode ser melhor compreendido nessa publicação do Manual do Usuário.
Visão geral
Ao seguir os passos desta postagem você fará o seguinte:
- Aprender markdown (ou ter referência)
- Utilizar uma conta para sincronização via git no Codeberg
- Configurar página via Codeberg
- Instalar o hugo e o git
- Criar página hugo
- Baixar o tema hugo
- Publicar
Passos
Vamos ao que interessa…
Aprender markdown
Guarde para ler depois ou leia logo o seguinte link: Markdown
Utilizar uma conta para sincronização via git no Codeberg
O Codeberg é amigável no sentido de que não coleta e nem vende seus dados. Tem nota A no tosdr! Veja aqui.
- O primeiro passo é criar sua conta, se não tiver, em codeberg.org.
- Configure o acesso com uma chave SSH (é mais prático para fazer os commits no repositório). Clique no ícone de seu usuário, depois em configurações e, na página que abre, escolha a aba Chaves SSH/GPG. Nesta seção já há links informativos de como fazer sua chave ssh.
- Crie um repositório para seu site (segundo aqui, seu repositório precisa ser
pages
) - Siga para os próximos passos para configurar sua página Hugo e para fazê-la sincronizar com seu repositório no Codeberg
Configurar página via Codeberg
Instalar o hugo e o git
Para instalar o hugo, recomendo pegar o binário, da versão extended, compatível com seu sistema operacional: AQUI (tem que estar escrito hugo_extended no início do nome do binário).
Para instalar o Git, caso não o tenha, basta instalá-lo com seu repositório ou seguindo as instruções daqui
Criar página hugo
No terminal/prompt, vá na pasta onde você deseja guardar sua página hugo e execute:
|
|
Será criada uma pasta com o nome meu-site-hugo
e, dentro da pasta, estará toda a estrutura do seu site hugo.
A estrutura inicial da pasta é a seguinte:
|
|
Agora chegou a parte de baixar e instalar o tema.
Baixar o tema hugo
Será usado o tema hugo-classic, para mais detalhes e outras informações, clique aqui.
Ainda dentro da pasta do site meu-site-hugo
, execute:
|
|
Depois edite o arquivo config.toml
com as seguintes informações (mudando com seus dados):
|
|
Crie a pasta css
dentro de static
com o comando:
|
|
Edite o arquivo static/css/theme-override.css
com o seguinte conteúdo para ter o tema dark:
|
|
Página inicial
Na pasta content
, acrescentei uma imagem chamada foto01.webp
e editei o arquivo _index.md
com o seguinte conteúdo:
|
|
Escrevendo
Para fazer uma nova postagem/publicação, você pode escolher entre escrever apenas um arquivo .md dentro de content/post
ou você pode criar uma pasta dentro de content/post
com o arquivo index.md
.
Ex1.: Para organizar cada conteúdo da postagem em sua própria pasta, crie a nova publicação/postagem com o seguinte comando em exemplo:
|
|
Coloco uma imagem foto01.webp
na mesma pasta e no arquivo index.md
, coloquei o seguinte conteúdo:
|
|
Ex2.: Para criar uma postagem/publicação apenas com texto e que não há interesse de organizar em uma pasta, execute o seguinte comando:
|
|
Obs.: No exemplo 2 ainda é possível usar conteúdos externos, ou na pasta static, ou na mesma pasta que está o arquivo, ou etc. Gohugo é bastante flexível quanto a isso.
Publicar
Depois de terminar as configurações ou terminar de escrever sua publicação, abra seu terminal/prompt, vá na pasta raiz de meu-site-hugo
e execute os seguintes comandos:
- Apague a pasta
public
para evitar qualquer informação desnecessária ou a mais
|
|
- Rode o comando a seguir para gerar, novamente, o conteúdo
|
|
Será gerada, numa velocidade absurda, toda sua página numa nova pasta chamada public
.
Ao terminar, hora de enviar para seu repositório git (famoso commit). Execute:
Agora é a parte que você configura o git em sua pasta para sincronizar com o Codeberg.
- Entre na pasta
public
, depois execute os comandos:
|
|
Mantendo sua página
Depois de tudo feito, sempre que for criado uma nova postagem/publicação, basta executar o comando hugo
na pasta raiz, acessar a pasta public
e executar os comandos para commit das modificações:
|
|
Fim!
Conclusão
- Esta rotina pode ser feita com outros temas, desde que leve em consideração as variações de configurações baseados no tema escolhido
- Agora você terá uma página estática, hospedada no Codeberg e poderá colocar um domínio próprio apontando para o endereço do codeberg
Obs.: Se achar qualquer coisa estranha ou algum erro, favor me informar que melhoro ou modifico este how-to!
Até mais!