Go to file
2022-07-19 10:55:42 +02:00
.github/workflows Partially revert "fix the github pipeline" 2022-05-09 20:58:44 +02:00
build unbias 2022-06-20 22:35:32 +02:00
docker dockerfile 2020-06-22 12:51:31 +02:00
img add the nature faculty variant, redo the title typesetting 2021-06-08 13:16:54 +02:00
.gitignore update .gitignore to ignore latexmk stuff 2021-04-06 08:29:01 +02:00
.gitlab-ci.yml switch to mff-cuni-cz validator image 2022-05-09 18:15:51 +02:00
abstract-cz.tex Merge pull request #6 from jjonescz/abstract-page-nums 2022-05-08 20:09:20 +02:00
abstract-cz.xmpdata v1 2020-05-10 19:57:36 +02:00
abstract-en.tex disable page numbers on all abstract pages 2022-05-08 12:56:06 +02:00
abstract-en.xmpdata v1 2020-05-10 19:57:36 +02:00
bibliography.tex v1 2020-05-10 19:57:36 +02:00
ch1.tex d e t e r m i n e r s 2022-07-07 15:18:46 +02:00
ch2.tex add explanatory comments to the table formatting style 2021-07-20 11:38:35 +02:00
ch3.tex unbias 2022-06-20 22:35:32 +02:00
conclusion.tex improve generated abstracts, add a few biblatex hints 2020-07-29 21:51:14 +02:00
howto.tex more c++ 2020-05-10 20:10:26 +02:00
intro.tex v1 2020-05-10 19:57:36 +02:00
macros.tex reasonable formatting of algorithmic comments 2022-07-19 10:55:42 +02:00
Makefile Makefile: PDFs are no longer used 2022-05-08 13:33:41 +02:00
metadata.tex add the nature faculty variant, redo the title typesetting 2021-06-08 13:16:54 +02:00
pdfa.sh add a note to pdfa.sh 2021-07-20 12:20:22 +02:00
README.md Merge pull request #7 from exaexa/mk-container-ci 2022-05-08 20:27:34 +02:00
refs.bib what the L 2021-04-21 17:53:32 +02:00
thesis.tex enable microtype by default, some minor rewording 2021-08-18 14:58:23 +02:00
thesis.xmpdata v1 2020-05-10 19:57:36 +02:00
title.tex add the nature faculty variant, redo the title typesetting 2021-06-08 13:16:54 +02:00
todos.tex forgotten file 2020-05-10 20:03:23 +02:00

A slightly improved thesis template

What's new:

  • modern packages (biblatex, cleveref, better fonts)
  • less confusing directory structure
  • slightly more useful examples (figures, diagrams, tables, code listings), structure hints, some goodies
  • autobuilding of abstract PDF/A files from metadata
  • multiple variants of the front page
    • MFF with the new logo
    • "traditional" UK variant
    • Nature faculty & bioinformatics
  • Czech localization with nicely named references
  • Dockerized & CI build options

See the pre-built version for details

CI configuration

The repository contains valid configuration for both GitLab CI and the GitHub actions. No matter what GIT hosting you use, you can always download latest version of your thesis right from the artifacts!

How-to

  1. Type make, check that everything compiles. You should get a thesis.pdf that passes the PDF/A validation. If not, complain.
  2. Fill in metadata.tex and all xmpdata files.
  3. Look at the example code (there are several hints), remember it, erase it.
  4. Write the thesis.
  5. Submit and defend the thesis.

Installing LaTeX

LaTeX installation may be hard (especially on various substandard operating systems). On most BSD and GNU-style Linux distributions, it should be sufficient to install some random texlive-* packages (and add more if non-standard TeX functionality is required); see e.g. a complete list for Debian.

Optionally, you can use a Docker container with TeX. You can either build the image yourself from the supplied Dockerfile:

cd docker
docker build -t betterthesis/latex .

...or get some pre-built one (which is usually much faster: image size )

docker pull aergus/latex

After that, you should be able to compile the thesis using this command (change the container name to betterthesis/latex in case you built it yourself):

docker run -u $UID -ti --rm -v $PWD:/th -w /th aergus/latex make

PDF/A

With a bit of luck, you should get a valid PDF/A right out of LaTeX. If you are using GitHub actions or GitLab CI, the CI will run the PDF/A verifier automatically for you.

A PDF/A validator that can point out exact problems is available here: https://github.com/mff-cuni-cz/cuni-thesis-validator

Common PDF/A problems include:

Solutions:

  • use pdfa.sh to convert the imported picture PDFs to PDF/A-compatible form the "hard way" (although this does not retain the PDF/A metadata mark, see comments in the script)
  • read the commentary by Martin Mareš (that describes most of the common problems) here: https://mj.ucw.cz/vyuka/bc/pdfaq.html
  • as a last resort if everything other fails, use pdfa.sh for the whole thesis.pdf

Ideas/improvements/more examples?

Pull requests welcome.

License?

Parts of the code (esp. the title page) are based on the original template (available from the faculty website) by Martin Mareš, Arnošt Komárek, and Michal Kulich. Small and useful fixes were coded or pointed out by Vít Kabele, Jan Joneš, Gabriela Suchopárová, Evžen Wybitul, and many others. (Many thanks to everyone involved!)

University and faculty logos are a property of the respective universities and faculties.

Everything else in this repository is released into the public domain, not encumbered by any kind of copyright at all.