2022-04-13 21:06:24 +02:00
|
|
|
# Generating the website
|
|
|
|
|
|
|
|
## Prerequisites
|
|
|
|
|
|
|
|
You will need:
|
|
|
|
|
2024-11-13 10:00:38 +01:00
|
|
|
1. A recent version of doxygen; The currently used version is 1.9.8.
|
|
|
|
The `doxygen` binary needs to be in the $PATH.
|
|
|
|
1. The `m4` command, which can be installed with `sudo apt install m4`.
|
2022-04-13 21:06:24 +02:00
|
|
|
1. A recent version of Jekyll (see https://jekyllrb.com/), which will generate
|
2024-11-13 10:00:38 +01:00
|
|
|
the static html pages. The currently used jekyll version is 4.2.2.
|
|
|
|
Also a recent version of bundler is required; this can be installed with:
|
2022-04-13 21:06:24 +02:00
|
|
|
```
|
2024-11-13 10:00:38 +01:00
|
|
|
gem install jekyll:4.2.2
|
2022-04-13 21:06:24 +02:00
|
|
|
gem install bundler:2.1.4
|
|
|
|
```
|
2024-11-13 10:00:38 +01:00
|
|
|
1. Checkout the repo to generate the website via
|
|
|
|
`git clone git@github.com:peter-ha/qskinny-website.git`
|
|
|
|
1. Checkout the live website repository via
|
2022-04-13 21:06:24 +02:00
|
|
|
`git clone git@github.com:qskinny/qskinny.github.io.git`
|
|
|
|
|
2024-11-13 10:00:38 +01:00
|
|
|
|
2022-04-13 21:06:24 +02:00
|
|
|
## Generating the website
|
|
|
|
|
2024-11-13 10:00:38 +01:00
|
|
|
### Generating the API documentation with doxygen
|
|
|
|
```
|
|
|
|
cd ~/dev/qskinny/doc
|
|
|
|
export PATH=.:$PATH
|
|
|
|
doxygen
|
|
|
|
```
|
|
|
|
This will generate the documentation into the `api` folder.
|
|
|
|
|
|
|
|
### Testing and building the website locally
|
|
|
|
|
|
|
|
First copy the generated files from above to the website repo:
|
|
|
|
|
|
|
|
```
|
|
|
|
cp -r api ~/dev/qskinny-website/docs/
|
|
|
|
```
|
|
|
|
|
|
|
|
Then test the website locally:
|
|
|
|
|
|
|
|
```
|
|
|
|
cd ~/dev/qskinny-website
|
|
|
|
bundle exec jekyll serve --livereload
|
|
|
|
```
|
|
|
|
|
|
|
|
Then direct your browser to `http://127.0.0.1:4000/`.
|
|
|
|
|
|
|
|
If all looks good, generate the static HTML website:
|
|
|
|
|
|
|
|
```
|
|
|
|
bundle exec jekyll build
|
|
|
|
```
|
|
|
|
|
|
|
|
### Publishing the website
|
|
|
|
|
|
|
|
Just copy over the generated HTML files to the public website repo and push a
|
|
|
|
new version of the homepage:
|
|
|
|
|
|
|
|
```
|
|
|
|
cp -r _site/* ~/dev/qskinny.github.io/
|
|
|
|
cd ~/dev/qskinny.github.io/
|
|
|
|
git commit -a -m "new version" # you might want to add new files
|
|
|
|
gith push
|
|
|
|
```
|
|
|
|
|
|
|
|
That's it, the new website is now published at https://qskinny.github.io/ .
|