18 Commits

Author SHA1 Message Date
233498ef5e Deploy build files to a Nextcloud folder 2022-09-06 22:01:21 +02:00
fd9f84d868 Clone submodule via SSH 2022-08-17 17:36:35 +02:00
6dfb7152d4 Initial build config for Drone 2022-08-17 17:30:16 +02:00
9ed563e8fa updated submodule with handbuch sources 2022-08-01 23:50:39 +02:00
0a3d80f03a handbuch sources updated to 0.3.0 2022-04-14 17:34:58 +02:00
c63c7a7288 handbuch module and version information updated to v0.2.0 2021-12-04 17:58:16 +01:00
63c08521ac updated handbuch module 2021-12-04 17:50:45 +01:00
d9ce62fbf9 Final corrections in README 2021-11-17 22:57:32 +01:00
9d888fa501 Fix link 2021-11-17 22:57:32 +01:00
c47e3f4612 Fixing the Markdown link syntax (ouch) 2021-11-17 22:57:32 +01:00
204abce3b4 Changed heading levels back to original, added some more info and cross references 2021-11-17 22:57:32 +01:00
bef5199114 Update README 2021-11-17 22:57:32 +01:00
fdd6b6adee Change README section with dependencies 2021-11-17 22:57:32 +01:00
3aec12d210 Add tiny comments to explain Python's venv module 2021-11-17 22:57:32 +01:00
af1449c5f4 Add info how to checkout this repo properly 2021-11-17 22:57:32 +01:00
5b8a1feb73 added drone status badge to README.md 2021-11-08 15:03:00 +01:00
24a7a58811 Updated handbuch submodule 2021-11-08 15:02:34 +01:00
037235b0f5 fix: got rid of woff fonts to create minmal size build 2021-10-13 08:48:05 +02:00
13 changed files with 96 additions and 32 deletions

60
.drone.yml Normal file
View File

@ -0,0 +1,60 @@
---
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
- pip install -r requirements.txt
- 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/Member-Handbuch/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/Member-Handbuch/Das%20Handbuch%20zur%20WTF%20eG.epub -T bundle/RTFM-DasHandbuchzurWTFeG.epub
when:
branch:
- main
event:
- push
---
kind: signature
hmac: 84db7299d18047e70a324c4b059f8a2cdd13b497ac439264e4430a37e443c610
...

2
.gitmodules vendored
View File

@ -1,3 +1,3 @@
[submodule "handbuch"] [submodule "handbuch"]
path = source/handbuch path = source/handbuch
url = https://git.wtf-eg.de/wtf-eg/handbuch.git url = gitea@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/css/badge_only.css
rm build/singlehtml/_static/epub_cover.png rm build/singlehtml/_static/epub_cover.png
rm build/singlehtml/_static/german-stemmer.js rm build/singlehtml/_static/german-stemmer.js
rm build/singlehtml/_static/jquery-3.5.1.js rm build/singlehtml/_static/jquery-3.6.0.js
rm build/singlehtml/_static/language_data.js rm build/singlehtml/_static/language_data.js
rm build/singlehtml/_static/searchtools.js rm build/singlehtml/_static/searchtools.js
rm build/singlehtml/_static/underscore-1.13.1.js rm build/singlehtml/_static/underscore-1.13.1.js

View File

@ -1,34 +1,44 @@
[![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 repo contains the sphinx configuration and the wtf theme for sphinx for the generation of the WTF handbook. 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 project is an experiment of how to generate html, epub and pdf 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).
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
### python based - sphinx ### Checkout with submodules
First create a Python 3 virtual environment using the venv module included with Python 3. This repository accesses the required WTF handbook's content as a git submodule. Therefore, make sure to check out this repository including its submodule:
```
git clone --recurse-submodules https://git.wtf-eg.de/wtf-eg/handbuch-gen.git
```
1. Create a virtual Python environment: ```python3 -m venv venv``` ### Python based dependencies
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/). In order to generate the documentation, first create a Python 3 virtual environment using the `venv` module included in Python 3:
For pdf output the latex builder is used, so it needs also an installed latex and pdflatex.
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.
### Running the document generation via make ### Running the document generation via make
The top level directory contains a Makefile, The top level directory contains a Makefile, for generation with all output formats use
for generation with all output formats use
````` `````
make bundle make bundle
````` `````
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.

View File

@ -24,7 +24,7 @@ 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.1.0' release = '0.2.0'
# -- General configuration --------------------------------------------------- # -- General configuration ---------------------------------------------------

View File

@ -4,16 +4,14 @@
*/ */
@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
@ -21,8 +19,7 @@
@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
@ -30,8 +27,7 @@
@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
@ -39,8 +35,7 @@
@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
@ -49,8 +44,7 @@
/* 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'), /* Super Modern Browsers */ src: url('fonts/noto-serif-v9-latin-700.woff2') format('woff2'); /* 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;
} }