From 33bcaf0a7a96283653610cd023f1b24e60d9e991 Mon Sep 17 00:00:00 2001 From: Marco Otte-Witte Date: Wed, 2 Oct 2024 15:47:57 +0200 Subject: [PATCH] add cover and back to downloadable pdf --- .github/workflows/ci.yml | 8 ++++++-- book/assets/back.pdf | Bin 0 -> 9112 bytes book/assets/cover.pdf | Bin 0 -> 9203 bytes 3 files changed, 6 insertions(+), 2 deletions(-) create mode 100644 book/assets/back.pdf create mode 100644 book/assets/cover.pdf diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 48d315d..c80f76d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -31,11 +31,11 @@ jobs: run: cargo install --path helpers/mdbook-exercise-linker - name: Install link shortener plugin run: cargo install --path helpers/mdbook-link-shortener - - name: Install mdbook-pandoc, calibre and related dependencies + - name: Install mdbook-pandoc, calibre, pdftk and related dependencies run: | cargo install mdbook-pandoc --locked --version 0.7.1 sudo apt-get update - sudo apt-get install -y fonts-noto calibre + sudo apt-get install -y fonts-noto calibre pdftk export PANDOC_VERSION=3.3 curl -LsSf https://github.com/jgm/pandoc/releases/download/${PANDOC_VERSION}/pandoc-${PANDOC_VERSION}-linux-amd64.tar.gz | tar zxf - @@ -81,6 +81,10 @@ jobs: run: | cd book mdbook build + - name: Add cover and back to downloadable PDF + run: | + pdftk book/assets/cover.pdf book/book/pandoc/pdf/100-exercises-to-learn-rust.pdf book/assets/back.pdf cat output book/book/pandoc/pdf/100-exercises-to-learn-rust-with-cover.pdf + mv book/book/pandoc/pdf/100-exercises-to-learn-rust-with-cover.pdf book/book/pandoc/pdf/100-exercises-to-learn-rust.pdf - name: Convert HTML to ePUB run: | cd book/book/pandoc/html diff --git a/book/assets/back.pdf b/book/assets/back.pdf new file mode 100644 index 0000000000000000000000000000000000000000..e4e67dade60e51dba001e1e0a2ae70f599a3cd81 GIT binary patch literal 9112 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 literal 0 HcmV?d00001