Skip to content

Latest commit

 

History

History
38 lines (23 loc) · 1.99 KB

README.md

File metadata and controls

38 lines (23 loc) · 1.99 KB

iste422book

This repository contains the files needed to create book.pdf, as well as that file itself, the Study Guide for ISTE422, Application Development Practices, a course taught at Rochester Institute of Technology, Golisano College of Computing and Information Sciences.

The content of this book is in the enclosed Markdown files. I gratefully accept improvements to these files.

Building book using Docker

The pdf can also be created with a docker image that has all required libraries built in

Requirements:

  • Clone this repository
  • Install Docker version 20+ (Docker Desktop 3.x)

Quickest method: from a command line with make installed run make docker-all. This will build the Docker image and then run pandoc and xelatex to generate a pdf from the md files.

The Docker image can be generated by running the target (or commands in) docker-build target.

The book can be generated by running the target (or commands in) docker-run target. The command docker run --rm -it --volume $(pwd):/data iste-book:latest --entrypoint /bin/sh will get a command shell in the docker image. The build can be run manually with make all or executing individual targets/commands.

The image name can be changed by setting DOCKER_IMAGE, e.g. make DOCKER_IMAGE=myuserid/iste-book:latest docker-all

The image only needs to be built the first time (and if the Dockerfile is changed) but is quick if the image is already built. If the image has already been built, this step can be skipped by running make docker-run.

Building book using class VM image

You can create the pdf by cloning this repository and typing make at the command line in the target directory. This assumes that you have

  • a full TexLive installation with local files expected in the directory pointed to by texdir in the Makefile, and
  • copy of Pandoc that expects configuration files in the directory pointed to by pandir in the Makefile.

If either condition is not met, you must modify the Makefile accordingly.