This is a template for the SPDX specifications in the markdown format and will generate the PDF version as well as the HTML version of the specifications with cover-page, header, footer and the table of contents.
-
git clone https://github.com/spdx/spdx-spec.git
and
get the template file from this repository.
-
Latex:
-
Debian/Ubuntu:
apt-get install texlive
-
Windows: The "Basic MiKTeX Installer" is used to set up a standard TeX/LaTeX system and can be downloaded from here.
-
Mac : The current distribution is MacTeX-2019 This distribution requires Mac OS 10.12, Sierra, or higher and runs on Intel processors and can be downloaded from here.
-
-
Pandoc:
-
Windows: Just use pandoc installer for windows from here.
-
Mac: You can install pandoc using Homebrew:
brew install pandoc
To include pandoc’s citation parser:
brew install pandoc-citeproc
-
Linux:
Download the binary package for amd64 architecuture from here.
-
To install the deb:
sudo dpkg -i $DEB
where $DEB is the path to the downloaded deb. This will install the pandoc and pandoc-citeproc executables and man pages.
On any distro, you may install from the tarball into $DEST (say, /usr/local/ or $HOME/.local) by doing
tar xvzf $TGZ --strip-components 1 -C $DEST
where $TGZ is the path to the downloaded zipped tarball. For Pandoc versions before 2.0, which don’t provide a tarball, try instead
ar p $DEB data.tar.gz | tar xvz --strip-components 2 -C $DEST
-
Default location of the folder, if not present create one:
-
Unix, Linux, macOS: $XDG_DATA_HOME/pandoc/templates or ~/.pandoc/templates/
-
Windows Vista or later: C:\Users\USERNAME\AppData\Roaming\pandoc\templates
To include titlepage, header footers you must provide the YAML metadata block at the very starting of the md file content which you are going to convert.
---
title: "Software Package Data Exchange® (SPDX®) Specifications"
titlepage: true
titlepage-text-color: "123F66"
titlepage-rule-color: "213E4C"
titlepage-rule-height: 2
header-left: "Here comes header"
footer-left: "Here comes footer"
logo: "logo.pdf"
logo-width: 220
...
-
When all the steps are done, run the following command:
pandoc example.md -o example.pdf --from markdown --template spdx-pdf-template --table-of-contents --listings --pdf-engine=xelatex
OR
-
To make a single pdf of all the markdown files serially, run :
pandoc index.md 1-rationale.md 2-document-creation-information.md 3-package-information.md 4-file-information.md 5-snippet-information.md 6-other-licensing-information-detected.md 7-relationships-between-SPDX-elements.md 8-annotations.md 9-review-information-deprecated.md appendix-I-SPDX-license-list.md appendix-II-license-matching-guidelines-and-templates.md appendix-III-RDF-data-model-implementation-and-identifier-syntax.md appendix-IV-SPDX-license-expressions.md appendix-V-using-SPDX-short-identifiers-in-source-files.md appendix-VI-external-repository-identifiers.md appendix-VII-creative-commons-attribution-license-3.0-unported.md -o example.pdf --from markdown --template spdx-pdf-template --table-of-contents --listings --pdf-engine=xelatex --file-scope
NOTE: Move the spdx-html-template into pandoc templates folder same as the latex template.
- To generate the HTML run:
pandoc -s index.md 1-rationale.md 2-document-creation-information.md 3-package-information.md 4-file-information.md 5-snippet-information.md 6-other-licensing-information-detected.md 7-relationships-between-SPDX-elements.md 8-annotations.md 9-review-information-deprecated.md appendix-I-SPDX-license-list.md appendix-II-license-matching-guidelines-and-templates.md appendix-III-RDF-data-model-implementation-and-identifier-syntax.md appendix-IV-SPDX-license-expressions.md appendix-V-using-SPDX-short-identifiers-in-source-files.md appendix-VI-external-repository-identifiers.md appendix-VII-creative-commons-attribution-license-3.0-unported.md -o example.html --from markdown --file-scope --toc --toc-depth=1 --template=spdx-html-template