Description
Affected component(s) or functionality (if applicable)
Documentation
Brief summary
Documentation currently doesn't reflect the state of the project. Many aspects are outdated, important things are omitted and technical details irrelevant to regular users are named in a way that suggests they are part of entry-level instructions (e.g. Running). Website has broken formatting, there is no clear division of responsibilities between website and documentation repository. In addition to that, some documentation is spread throughout other repositories, not always in the most fitting places.
Version
N/A
Additional context
Rough list of tasks to be done to improve the documentation, divided by source:
Website
- Reorder entries in the documentation to represent suggested order of reading.
- Split the documentation into more categories (currently have
Documentation
andBlueprints
). - Remove outdated and irrelevant to user entries:
- CI
- Jobs descriptions
- GitlabCI configuration
- Running (very misleading title...)
- Do a validity check of remaining pages:
- Check links across the site (e.g. using https://github.com/lycheeverse/lychee)
- Some links redirect to something else than expected (e.g. AMD APM) without returning an error. Setting max redirection number to 0 and manually checking links that do redirect may be inevitable.
- Architecture
- Contributing
- Introduction to Late Launch
- Use Cases
- AMD GRUB
- AMD LZ (renamed to SKL, outdated build options)
- Measured Secure Boot
- TXT GRUB
- Check links across the site (e.g. using https://github.com/lycheeverse/lychee)
- Do a full rework:
- Developers guide
- Linux
- FAQ
- README in repo - add instructions for local preview
- Add:
- Names created for and used by TrenchBoot to the glossary
- Cross-links to publications mentioning TrenchBoot
- User level documentation
- Link to it on home page
- Requirements
- Linux installation guide
- Qubes OS installation guide
- Troubleshooting
- High-level overview of all components and their interactions - blueprints?
- SLRT - blueprints?
- Xen (Qubes OS) - blueprints?
- Update events page.
- Do a spell/grammar/formatting check of all pages.
- Add precommit (or other mechanism) to check if new changes can break the formatting.
Documentation repository
- Deduplicate information available on website.
- Add HCL.
- Review, update and merge open pull requests.
- Roadmap - decide what to do with it (update? remove? change format?)
- Bump versions of documents in
references
.- Do we want to keep older revisions as well? Intel removed all references to TPM1.2 in later revisions, but it is still available in the wild.
- Check if
QUICKSTART.md
is still valid, update if not.- Recheck it again after all other tasks are completed, in case it gets updated in the meantime.
- Deduplicate
presentations/README.md
with website, save copy of presentations from linked events (if available). - Move everything to the website, add deprecation note with link to website, archive the repo.
trenchboot-sdk
- Remove (or move elsewhere) instructions for building firmware for OptiPlex - it has nothing to do with this SDK.
- Add instructions for building Linux.
- Update Dockerfile if needed.
- Add instructions for building for UEFI.
- Update Dockerfile if needed.
Relevant documentation you've consulted
- https://trenchboot.org/ (https://github.com/TrenchBoot/TrenchBoot.github.io)
- https://github.com/TrenchBoot/documentation
- https://github.com/TrenchBoot/trenchboot-sdk
Related, non-duplicate issues