bachelor-thesis/README.md

83 lines
3.5 KiB
Markdown
Raw Normal View History

2020-05-10 10:03:14 +00:00
2020-05-11 19:43:55 +00:00
# A slightly improved thesis template
2020-05-10 10:03:14 +00:00
2020-05-11 19:43:55 +00:00
What's new:
2020-05-11 20:22:44 +00:00
- modern packages (biblatex, cleveref, better fonts)
2020-05-10 10:03:14 +00:00
- less confusing directory structure
2020-05-12 19:08:51 +00:00
- slightly more useful examples (figures, diagrams, tables, code listings), structure hints, some goodies
2021-04-06 06:31:17 +00:00
- autobuilding of abstract PDF/A files from metadata
- multiple variants of the front page (nature faculty&bioinformatics!)
2020-05-11 19:43:55 +00:00
- Czech localization with nicely named references
2021-04-06 06:31:17 +00:00
- Dockerized & CI build options
2020-05-10 10:03:14 +00:00
See the [pre-built version](build/thesis.pdf) for details
2021-04-05 21:01:40 +00:00
## 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!
2020-05-10 10:03:14 +00:00
## How-to
2020-05-11 19:43:55 +00:00
1. Type `make`, check that everything compiles. You should get a `thesis.pdf` that passes the PDF/A validation. If not, complain.
2020-05-10 10:03:14 +00:00
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.
2020-06-22 11:07:06 +00:00
### 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](docker/Dockerfile).
- For a single-user distribution on unix, use the provided [installation script](https://www.tug.org/texlive/quickinstall.html).
- On windows, use [MiKTeX](https://www.tug.org/texlive/windows.html).
- On Mac, use any suitable variant of [MacTeX](https://www.tug.org/mactex/).
Optionally, you can use a Docker container with TeX. You can either build the image yourself from the supplied `Dockerfile`:
```sh
cd docker
2021-04-06 06:27:58 +00:00
docker build -t betterthesis/latex .
2020-06-22 11:07:06 +00:00
```
2021-04-06 06:27:58 +00:00
...or get some pre-built one (which is usually much faster:
![image size](https://img.shields.io/docker/image-size/aergus/latex)
2020-06-22 11:07:06 +00:00
)
```sh
2021-04-06 06:27:58 +00:00
docker pull aergus/latex
2020-06-22 11:07:06 +00:00
```
2021-04-06 06:27:58 +00:00
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):
2020-06-22 11:07:06 +00:00
```sh
2021-04-06 06:27:58 +00:00
docker run -u $UID -ti --rm -v $PWD:/th -w /th aergus/latex make
2020-06-22 11:07:06 +00:00
```
2020-05-10 20:54:11 +00:00
## PDF/A
2020-06-22 11:07:06 +00:00
With a bit of luck, you should get a valid PDF/A right out of LaTeX.
2020-05-10 20:54:11 +00:00
2020-06-22 11:07:06 +00:00
A PDF/A validator that can point out exact problems is available here: https://github.com/mff-cuni-cz/cuni-thesis-validator
2020-05-10 20:54:11 +00:00
Common PDF/A problems include:
- imported PDF pictures that are not PDF/A.
- the used font does not support PDF/A (including the fonts in imported pictures). See https://martin.hoppenheit.info/blog/2018/pdfa-validation-and-inconsistent-glyph-width-information/ for a very ugly case.
Solutions:
- use `pdfa.sh` to convert 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
- use `pdfa.sh` as a last resort for `thesis.pdf` if everything other fails
2020-05-10 10:03:14 +00:00
## 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. (Thanks!)
2020-05-12 19:01:29 +00:00
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.