Organise MSc thesis project into one folder

This commit is contained in:
Cormac Shannon committed 2026-10-28 17:43:53 +00:00
commit 45f46ba3cf
17 files changed
+8059

No files matched your search

+59
View File
@@ -0,0 +1,59 @@
# CS6513 Paper — Introduction + Mini Literature Review
IEEE conference-format manuscript for CS6513. Source: `main.tex`.
## Build
```sh
./paper/build.sh # run from the repo root
```
`build.sh` auto-detects a TeX engine (and picks up MacTeX / TeX Live even if it
isn't on your `PATH`). It tries, in order: `latexmk` → `pdflatex` (two passes) →
`tectonic`. Output: `paper/main.pdf`.
### Toolchain
No system TeX install is needed if you use **tectonic** (what this repo was
built with):
```sh
brew install tectonic
```
Tectonic is a single self-contained binary (~20 MB) that downloads the exact TeX
packages the document needs from CTAN on first run and caches them.
Alternatives:
- **MacTeX** (full TeX Live, ~4 GB): `brew install --cask mactex-no-gui`
- **BasicTeX** (small, ~100 MB; may need `sudo tlmgr install ...` for extras)
- **Overleaf** (zero install): upload/clone this `paper/` folder and compile `main.tex`.
## Required LaTeX packages
All standard and bundled with a normal TeX distribution (and auto-fetched by
tectonic):
| Package | Why |
|---|---|
| `IEEEtran` (document class) | IEEE conference format — `IEEEtran.cls` is committed here so the repo is self-contained |
| `cite` | citation handling |
| `amsmath`, `amssymb`, `amsfonts` | math symbols (μ, ×, →, etc.) |
| `graphicx` | figures (none yet) |
| `textcomp` | text symbols |
| `xcolor` | colour |
| `url` | URLs in the bibliography |
## Notes learned while building
- **The first tectonic run needs a network connection** — it fetches packages
from CTAN. Later builds use the cache and are fast/offline.
- **Transient `HTTP 429 Too Many Requests`** from tectonic's package server can
interrupt that first build. It's not a document error — **just re-run
`build.sh`**; tectonic resumes from what it already cached.
- **`Underfull \hbox (badness ...)`** warnings are cosmetic — short lines (e.g.
bullet lists) that don't fill the justified column. Harmless, and they go away
as the draft becomes prose. There are currently no real errors.
- Build artifacts (`*.aux`, `*.log`, …) and the compiled `main.pdf` are
git-ignored. Commit the **final** submission PDF explicitly (`git add -f`) if
you want it tracked.