Purpose
The build system serves several key objectives:Consistency
Generate uniform, professionally formatted PDFs across all course materials
Automation
Reduce manual work by automating the conversion from Markdown to PDF
Distribution
Produce ready-to-distribute materials for students via Moodle or other platforms
Version Control
Keep source materials in Markdown for easy tracking and collaboration in Git
Architecture
The build system consists of three main components:1. Source Files
Markdown files organized by didactic unit:2. LaTeX Templates
Custom templates that define the appearance of generated PDFs:temas-tpl.latex: Template for theory materials (Teoria)tareas-tpl.latex: Template for practical tasks (Tareas)anexos-tpl.latex: Template for supplementary annexes (Anexos)
3. Build Script
Themd-to-pdf.sh bash script orchestrates the entire conversion process.
Workflow
./bin/md-to-pdf.sh 01 # Build UD01 materials
./bin/md-to-pdf.sh 05 # Build UD05 materials
./bin/md-to-pdf.sh all # Build all units
pandoc --template temas-tpl.latex \
-V fontsize=12pt \
-V mainfont="Ubuntu" \
--pdf-engine=xelatex \
-o UD01_Teoria.pdf \
Teoria_*.md
# For each Tarea_*.md file:
pandoc --template tareas-tpl.latex \
-V fontsize=12pt \
-V mainfont="Ubuntu" \
--pdf-engine=xelatex \
-o UD01_Tarea_1_TiposDeAplicaciones.pdf \
Tarea_01_TiposDeAplicaciones.md
Generated Outputs
The build system produces three types of PDF documents from the source materials.
Theory PDFs
- File pattern:
UD[NN]_Teoria.pdf - Content: Combined theory materials for the entire unit
- Template:
temas-tpl.latex - Example:
UD01_Teoria.pdf
Task PDFs
- File pattern:
UD[NN]_Tarea_[N]_[Name].pdf - Content: Individual practical assignments
- Template:
tareas-tpl.latex - Example:
UD01_Tarea_1_TiposDeAplicaciones.pdf
Annex PDFs
- File pattern:
UD[NN]_Anexo_[N]_[Name].pdf - Content: Supplementary materials and references
- Template:
anexos-tpl.latex - Example:
UD02_Anexo_1_ConfiguracionVirtualBox.pdf
Didactic Units
The ASIR-ISO course comprises 12 didactic units:View All Didactic Units
View All Didactic Units
- UD01: Introducción a los Sistemas Operativos
- UD02: Sistemas de Virtualización
- UD03: Instalación y Arranque
- UD04: Administración de procesos y red
- UD05: Usuarios, Grupos y Permisos
- UD06: Sistemas de Ficheros
- UD07: Software y Actualizaciones
- UD08: Seguridad
- UD09: Administración del Dominio
- UD10: Acceso al Dominio
- UD11: Rendimiento y auditorias
- UD12: Resolución de incidencias y asistencia técnica
Installation Guides
Certain units include installation guides for operating systems and tools:- Ubuntu Bionic (UD02)
- Xubuntu Bionic (UD02)
- Windows 10 (UD03)
- Windows Server 2019 (UD03)
- OpenMediaVault (UD08)
GuiasInstalacionSO/ and processed alongside their respective units.
Build Status Indicators
The script provides colored output to indicate success or failure:Next Steps
To get started with the build system:- Install dependencies - Set up pandoc, texlive, and required fonts
- Learn the scripts - Understand the md-to-pdf.sh script in detail
- Review the Style Guide - Follow formatting conventions for source files