Update Website documentation

This commit is contained in:
this.ven 2024-02-06 22:44:27 +01:00
parent 5b82d1944c
commit 70354f1c28
4 changed files with 50 additions and 10 deletions

View file

@ -0,0 +1,15 @@
---
title: 'Infrastructure'
date: 2024-02-06T22:25:56+01:00
draft: true
---
[Self-hosting](https://en.wikipedia.org/wiki/Self-hosting_(web_services)) is a
great way for decentralization, autonomy and privacy. As I'm trying to be a good
role model I share my knowledge by documenting the whole infrastructure setup.
{{< cards >}}
{{< card link="forgejo/" title="Forgejo"
image="https://forgejo.org/images/forgejo-wordmark.svg"
subtitle="Using Forgejo for version control" >}}
{{< /cards >}}

View file

@ -5,14 +5,11 @@ draft: true
---
Find information on how I build this site. [Uberspace](https://uberspace.de/) is
used for hosting and enables to also setup and maintain the infrastructure for
[build automation](https://en.wikipedia.org/wiki/Build_automation) by myself.
used for hosting and enables running [infrastructure](/docs/infrastructure/) by
myself, too.
{{< cards >}}
{{< card link="hugo/" title="Hugo"
image="https://gohugo.io/images/hugo-logo-wide.svg"
subtitle="Website building using Hugo, a static site generator" >}}
{{< card link="forgejo/" title="Forgejo"
image="https://forgejo.org/images/forgejo-wordmark.svg"
subtitle="Using Forgejo for version control" >}}
{{< /cards >}}

View file

@ -42,20 +42,32 @@ the wheel and existing content can be migrated pretty easily. Some of themes
provide a demo and in the end [Hextra](https://themes.gohugo.io/themes/hextra/)
appeals to me.
### Step 3: Configuring a site
### Step 3: Setting up a repo
I use [Forgejo](/docs/infrastructure/forgejo/) for automatically generating the
`LICENSE`, `README.md`, and `.gitignore` files while [creating a repository](https://forgejo.org/docs/latest/user/first-repository/#creating-a-repository)
and clone the remote repository to proceed with it locally.
```bash
git clone https://dri.ven.uber.space/thisven/Website
```
### Step 4: Configuring a site
Though the Hextra theme documentation recommends installing it as a Hugo module
I prefer a [Git submodule](https://git-scm.com/book/en/v2/Git-Tools-Submodules)
setup in [getting started](https://imfing.github.io/hextra/docs/getting-started/#setup-hextra-as-git-submodule):
```bash
hugo new site Website --format=yaml
hugo new site --force Website --format=yaml
cd Website
git init
git submodule add https://github.com/imfing/hextra.git themes/hextra
echo "theme: hextra" >> hugo.yaml
```
**Remark:** The `--force` Option of the `hugo new site` command is required to
use the already initialized directory cloned from the remote origin before.
### Step 4: Creating content
I create a home and docs content page:
@ -72,10 +84,26 @@ text editor to write the page bodys:
hugo server --buildDrafts
```
A preview of the rendered sites is served at:
The development server listens on port 1313 and the site can be previewed at:
[http://localhost:1313](http://localhost:1313)
### Step 5: Customizing the site
### Step 5: Committing changes
Though there are adaptions necessary, it may be the time to commit my first
efforts and push them to the remote origin to get usd to frequent committing.
```bash
git add .
git commit -m "Initialize new hugo site"
git push
```
{{< callout type="warning" >}}
Remember to frequently use these commands after applying changes to keep the
remote repository up to date and in sync with your local copy.
{{< /callout >}}
### Step 6: Customizing the site
The [guide](https://imfing.github.io/hextra/docs/guide/) in the documentation of
the Hextra theme expands on several features. Below are some configurations and