Compare commits

..

No commits in common. "main" and "fix/minimal_html_size" have entirely different histories.

7 changed files with 26 additions and 126 deletions

View File

@ -1,61 +0,0 @@
---
kind: pipeline
type: docker
name: amd64-main
platform:
os: linux
arch: amd64
trigger:
branch:
- main
event:
- push
- pull_request
steps:
- name: submodules
image: alpine
environment:
SSH_KEY:
from_secret: SSH_KEY
commands:
- apk add openssh git
- mkdir -p /root/.ssh
- echo "$SSH_KEY" > /root/.ssh/id_rsa
- chmod 600 /root/.ssh/id_rsa
- echo "git.wtf-eg.de ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEjyrSgFgb+/ubyFDl3zvWSIfX+MLzRQUEtjdq1yeTd9" >> /root/.ssh/known_hosts
- chmod 600 /root/.ssh/known_hosts
- git submodule update --init --recursive
- name: build
image: sphinxdoc/sphinx-latexpdf:5.0.2
commands:
- apt-get update
- apt-get -y install texlive-lang-german rsync git
- pip install -r requirements.txt
- export SPHINXOPTS="-D version=$(git -C source/handbuch describe --tags --abbrev=0) -D release=$(git -C source/handbuch describe --tags)"
- make -j4 bundle
- name: upload
image: alpine
environment:
NC_USER:
from_secret: nextcloud_user
NC_PASSWORD:
from_secret: nextcloud_password
commands:
- apk add curl
- curl -X PUT -u $NC_USER:$NC_PASSWORD https://work.wtf-eg.de/remote.php/dav/files/$NC_USER/Dokumentation/Das%20Handbuch%20zur%20WTF%20eG.pdf -T bundle/rtfm-dashandbuchzurwtfeg.pdf
- curl -X PUT -u $NC_USER:$NC_PASSWORD https://work.wtf-eg.de/remote.php/dav/files/$NC_USER/Dokumentation/Das%20Handbuch%20zur%20WTF%20eG.epub -T bundle/RTFM-DasHandbuchzurWTFeG.epub
when:
branch:
- main
event:
- push
---
kind: signature
hmac: 797e2df88805ae1dee84d60ec024034965dcf41fc2ef86d5667adfdfe10b2719
...

2
.gitmodules vendored
View File

@ -1,3 +1,3 @@
[submodule "handbuch"]
path = source/handbuch
url = gitea@git.wtf-eg.de:wtf-eg/handbuch.git
url = https://git.wtf-eg.de/wtf-eg/handbuch.git

View File

@ -31,7 +31,7 @@ sphinx:
rm build/singlehtml/_static/css/badge_only.css
rm build/singlehtml/_static/epub_cover.png
rm build/singlehtml/_static/german-stemmer.js
rm build/singlehtml/_static/jquery-3.6.0.js
rm build/singlehtml/_static/jquery-3.5.1.js
rm build/singlehtml/_static/language_data.js
rm build/singlehtml/_static/searchtools.js
rm build/singlehtml/_static/underscore-1.13.1.js

View File

@ -1,69 +1,34 @@
[![Build Status](https://drone.wtf-eg.de/api/badges/wtf-eg/handbuch-gen/status.svg)](https://drone.wtf-eg.de/wtf-eg/handbuch-gen)
# About
This project is an experiment of how to generate the WTF handbook in various output formats (HTML, epub and pdf) from the [git repository for the WTF handbook](https://git.wtf-eg.de/wtf-eg/handbuch). The handbuch sources are included as git submodule.
This repo contains the sphinx configuration and the wtf theme for sphinx for the generation of the WTF handbook.
This repository contains the [Sphinx](https://www.sphinx-doc.org/) configuration and a Sphinx theme adapted for the [corporate identity of WTF cooperation](https://git.wtf-eg.de/ag_kommunikation/wtf_propaganda).
this project is an experiment of how to generate html, epub and pdf
from the git repository for the WTF Handbook.
The handbuch sources are included as git submodule.
# sphinx html theme for wtf coop
the sphinx build uses an adapted sphinx theme for the wtf cooperatives CI.
# How to build
### Checkout with submodules
### python based - sphinx
This repository accesses the required WTF handbook's content as a git submodule. Therefore, make sure to check out this repository including its submodule:
First create a Python 3 virtual environment using the venv module included with Python 3.
```
git clone --recurse-submodules https://git.wtf-eg.de/wtf-eg/handbuch-gen.git
```
If you cloned this repository initially without submobules, you can always update the content of submodule directories with the git submodule update command. Execute the command from the main project directory:
1. Create a virtual Python environment: ```python3 -m venv venv```
2. Activate virtual Python environment: ```source venv/bin/activate```
3. install needed packages from ```requirements.txt```: ```pip install -r requirements.txt```
```
git submodule update --init --recursive
```
The --init flag initializes the submodules before the update. The --recursive option searches for nested submodules and ensures they are updated too.
### Python based dependencies
In order to generate the documentation, first create a Python 3 virtual environment using the `venv` module included in Python 3:
1. Create a virtual Python environment in the directory `venv`: ```python3 -m venv venv```
1. Activate the virtual Python environment: ```source venv/bin/activate```
1. Install the packages listed in [requirements.txt](./requirements.txt) using `pip`: ```pip install -r requirements.txt```
### Other dependencies
For generating the images from PlantUML sources (`*.plantuml`), [PlantUML](https://plantuml.com/) is required.
For pdf output the LaTeX builder is used, so `latex` and `pdflatex` need to be installed. On a clean (no Latex compilation yet) operating system like GNU/Debian, the following dependencies are required to make Latex compile the sources.
```
sudo apt install texlive-base texlive-latex-base texlive-latex-extra texlive-lang-german texlive-fonts-extra --no-install-recommends
```
For document generation `make` and `latexmk` is required.
For generating the images from plantuml-sources it needs also [Plantuml](https://plantuml.com/).
For pdf output the latex builder is used, so it needs also an installed latex and pdflatex.
### Running the document generation via make
The top level directory contains a Makefile, for generation with all output formats use
The top level directory contains a Makefile,
for generation with all output formats use
`````
make bundle
`````
In order to automatically determine the version string from the latest Git tag, execute the following command before calling `make`:
```
export SPHINXOPTS="-D version=$(git -C source/handbuch describe --tags --abbrev=0) -D release=$(git -C source/handbuch describe --tags)"
```
The output files of the final handbook can be found in the subfolder `./bundle`.
All generated intermediate artifacts and the final output files can be found in the `./build` subfolder.
### Clean up
1. Deactivate the virtual Python environment: ```deactivate```
2. Clean up the build sources: ```make clean``` and ```rm -r build bundle```

View File

@ -20,14 +20,11 @@ import sys
# -- Project information -----------------------------------------------------
project = 'RTFM - Das Handbuch zur WTF eG'
copyright = '2021-2023, diverse'
copyright = '2021, diverse'
author = 'Autorenkollektiv'
# The full version, including alpha/beta/rc tags
release = '0.0.0'
# The major project version, without alpha/beta/rc tags
version = '0.0.0'
release = '0.1.0'
# -- General configuration ---------------------------------------------------
@ -54,8 +51,6 @@ language = 'de'
# This pattern also affects html_static_path and html_extra_path.
exclude_patterns = []
myst_url_schemes = ['http', 'https', 'mailto', 'ftp', 'mumble']
# -- Options for HTML output -------------------------------------------------

@ -1 +1 @@
Subproject commit 1b1c4bffef881b4eb80956a2755578c17dc615ec
Subproject commit 2bb2f9dcc143df90bdc000f4a2041434af4c0c65

View File

@ -3,20 +3,21 @@
You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive.
RTFM - Das Handbuch zur WTF Kooperative eG
RTFM - Das Handbuch zur wtf Kooperative eG
===========================================
.. toctree::
:maxdepth: 2
:caption: Inhaltsverzeichnis
:caption: Contents:
handbuch/impressum.md
handbuch/intro.md
handbuch/organisation.md
handbuch/Aufnahmeprozess.md
handbuch/Wegweiser.md
handbuch/Business/index.rst
handbuch/Einkaufen-beim-Großhandel.md
handbuch/RaaS.md
handbuch/Auszahlung.md
handbuch/FAQ.md
Indices and tables
==================