Compare commits

..

9 Commits

Author SHA1 Message Date
Stephan
898876984b fix: removed anything but woff and woff2 from fontawesome 2021-10-02 15:25:34 +02:00
Stephan
c19cacccf3 fix: removed wtf_coop theme 2021-10-02 15:18:57 +02:00
Stephan
6e778c48d6 fix: removed dependency on wtf_coop theme 2021-10-02 15:18:29 +02:00
Stephan
87afa4541e fix: migrated settings from wtf_coop to custom_sphinx_rtd_theme 2021-10-02 15:07:17 +02:00
Stephan
5d62b0f9f0 fix: replaced Robot Slab with Noto Serif Bold for headings 2021-10-02 15:03:38 +02:00
Stephan
e10bb49f68 fix: removed (hopefully) unnecessary fonts folder 2021-10-02 14:54:29 +02:00
Stephan
17e9225ac4 fix: copied sphinx_rtd_theme to further shrink filesize 2021-10-02 14:46:13 +02:00
Stephan
2da8a18e36 fix: syntax 2021-10-02 14:41:36 +02:00
Stephan
0bde0ae0e3 fix: reduced wtf_coop fonts, only use woff and woff2
there's much more in the parent theme
2021-10-02 14:19:50 +02:00
14 changed files with 43 additions and 143 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"] [submodule "handbuch"]
path = source/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

@ -26,16 +26,6 @@ clean:
sphinx: sphinx:
$(MAKE) singlehtml epub latexpdf $(MAKE) singlehtml epub latexpdf
rm build/singlehtml/_static/base-stemmer.js
rm build/singlehtml/_static/basic.css
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/language_data.js
rm build/singlehtml/_static/searchtools.js
rm build/singlehtml/_static/underscore-1.13.1.js
rm build/singlehtml/_static/wtf_coop_header.png
bundle: sphinx bundle: sphinx
-mkdir bundle -mkdir bundle

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 # 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 # 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```
``` For generating the images from plantuml-sources it needs also [Plantuml](https://plantuml.com/).
git submodule update --init --recursive For pdf output the latex builder is used, so it needs also an installed latex and pdflatex.
```
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.
### Running the document generation via make ### 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 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 information -----------------------------------------------------
project = 'RTFM - Das Handbuch zur WTF eG' project = 'RTFM - Das Handbuch zur WTF eG'
copyright = '2021-2023, diverse' copyright = '2021, diverse'
author = 'Autorenkollektiv' author = 'Autorenkollektiv'
# The full version, including alpha/beta/rc tags # The full version, including alpha/beta/rc tags
release = '0.0.0' release = '0.0.5'
# The major project version, without alpha/beta/rc tags
version = '0.0.0'
# -- General configuration --------------------------------------------------- # -- General configuration ---------------------------------------------------
@ -54,8 +51,6 @@ language = 'de'
# This pattern also affects html_static_path and html_extra_path. # This pattern also affects html_static_path and html_extra_path.
exclude_patterns = [] exclude_patterns = []
myst_url_schemes = ['http', 'https', 'mailto', 'ftp', 'mumble']
# -- Options for HTML output ------------------------------------------------- # -- Options for HTML output -------------------------------------------------

@ -1 +1 @@
Subproject commit 1b1c4bffef881b4eb80956a2755578c17dc615ec Subproject commit 8fecdc582275a86883a7ca4307e78ae69b835b74

View File

@ -1,22 +1,27 @@
.. wtf handdbook documentation master file, created by .. KoLe documentation master file, created by
sphinx-quickstart on Thu Apr 29 23:32:19 2021. sphinx-quickstart on Thu Apr 29 23:32:19 2021.
You can adapt this file completely to your liking, but it should at least You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive. contain the root `toctree` directive.
RTFM - Das Handbuch zur WTF Kooperative eG RTFM - Das Handbuch zur wtf Kooperative eG
=========================================== ===========================================
.. toctree:: .. toctree::
:maxdepth: 2 :maxdepth: 2
:caption: Inhaltsverzeichnis :caption: Contents:
handbuch/impressum.md
handbuch/intro.md handbuch/intro.md
handbuch/organisation.md handbuch/organisation.md
handbuch/Aufnahmeprozess.md handbuch/Aufnahmeprozess.md
handbuch/Wegweiser.md handbuch/Wegweiser.md
handbuch/Business/index.rst
handbuch/Einkaufen-beim-Großhandel.md
handbuch/RaaS.md handbuch/RaaS.md
handbuch/Auszahlung.md handbuch/Auszahlung.md
handbuch/FAQ.md handbuch/FAQ.md
Indices and tables
==================
* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`

View File

@ -4,14 +4,16 @@
*/ */
@font-face { @font-face {
font-family: FontAwesome; font-family: FontAwesome;
src: url(fonts/fontawesome-webfont.woff2?af7ae505a9eed503f8b8e6982036873e) format("woff2"); src: url(fonts/fontawesome-webfont.woff2?af7ae505a9eed503f8b8e6982036873e) format("woff2"),
url(fonts/fontawesome-webfont.woff?fee66e712a8a08eef5805a46892932ad) format("woff");
font-weight: 400; font-weight: 400;
font-style: normal font-style: normal
} }
@font-face { @font-face {
font-family: Lato; font-family: Lato;
src: url(fonts/lato-normal.woff2?bd03a2cc277bbbc338d464e679fe9942) format("woff2"); src: url(fonts/lato-normal.woff2?bd03a2cc277bbbc338d464e679fe9942) format("woff2"),
url(fonts/lato-normal.woff?27bd77b9162d388cb8d4c4217c7c5e2a) format("woff");
font-weight: 400; font-weight: 400;
font-style: normal; font-style: normal;
font-display: block font-display: block
@ -19,7 +21,8 @@
@font-face { @font-face {
font-family: Lato; font-family: Lato;
src: url(fonts/lato-bold.woff2?cccb897485813c7c256901dbca54ecf2) format("woff2"); src: url(fonts/lato-bold.woff2?cccb897485813c7c256901dbca54ecf2) format("woff2"),
url(fonts/lato-bold.woff?d878b6c29b10beca227e9eef4246111b) format("woff");
font-weight: 700; font-weight: 700;
font-style: normal; font-style: normal;
font-display: block font-display: block
@ -27,7 +30,8 @@
@font-face { @font-face {
font-family: Lato; font-family: Lato;
src: url(fonts/lato-bold-italic.woff2?0b6bb6725576b072c5d0b02ecdd1900d) format("woff2"); src: url(fonts/lato-bold-italic.woff2?0b6bb6725576b072c5d0b02ecdd1900d) format("woff2"),
url(fonts/lato-bold-italic.woff?9c7e4e9eb485b4a121c760e61bc3707c) format("woff");
font-weight: 700; font-weight: 700;
font-style: italic; font-style: italic;
font-display: block font-display: block
@ -35,7 +39,8 @@
@font-face { @font-face {
font-family: Lato; font-family: Lato;
src: url(fonts/lato-normal-italic.woff2?4eb103b4d12be57cb1d040ed5e162e9d) format("woff2"); src: url(fonts/lato-normal-italic.woff2?4eb103b4d12be57cb1d040ed5e162e9d) format("woff2"),
url(fonts/lato-normal-italic.woff?f28f2d6482446544ef1ea1ccc6dd5892) format("woff");
font-weight: 400; font-weight: 400;
font-style: italic; font-style: italic;
font-display: block font-display: block
@ -44,7 +49,8 @@
/* noto-serif-700 - latin */ /* noto-serif-700 - latin */
@font-face { @font-face {
font-family: 'Noto Serif Bold'; font-family: 'Noto Serif Bold';
src: url('fonts/noto-serif-v9-latin-700.woff2') format('woff2'); /* Modern Browsers */ src: url('fonts/noto-serif-v9-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
url('fonts/noto-serif-v9-latin-700.woff') format('woff'); /* Modern Browsers */
font-style: normal; font-style: normal;
font-weight: 700; font-weight: 700;
} }