TeXbld

/

/0.4/

Projects

Images

Resources

Sha256


Projects


TeXbld projects are scaffolded and built from TeXbld images.

Scaffolding


In order to scaffold a project into a currently non-existent directory $PROJECT_DIR (replace this with the directory you want to scaffold into), run texbld generate project (image) $PROJECT_DIR.

After scaffolding is complete, you will see that $PROJECT_DIR contains a texbld.toml file and other files specified by image configurations.

Image


TeXbld only accepts Resource Schemes for passing an image.

Specifying another configuration file


This option has been moved to Resource Schemes.

Building an Image


Change your working directory to $PROJECT_DIR and run texbld build. This will build out the corresponding docker image.

Running Commands


Check the commands table of your texbld.toml file and execute the appropriate alias.

For example, if your configuration has the following lines

[commands]
compile = "pandoc -o main.pdf main.md"

Running texbld run compile will run pandoc -o main.pdf main.md in a docker container specified by your project's image. If you run texbld run nonexistent, TeXbld will throw an error.

Validation


Run texbld validate project .. This checks that the texbld project located in your current working directory is valid. If no errors are thrown, you're all set.

Other Options


name (string) - REQUIRED


This specifies the name of your project and is included for future use cases.

version (string) - REQUIRED


For this version of TeXbld, the only permitted version is "1". This option was proactively made in order to allow new configurations in the future.

image (table) - REQUIRED


The value of this specifies either a Docker image, a GitHub image, or a LocalImage.

Below are a set of mutually exclusive examples:

  1. github = {owner = "texbld", repository = "templates", revision = "(revision sha)", sha256 = "(tarball sha256)", config = "md.toml" }
  2. local = {name = "template", config = "image.toml"}
  3. docker = "alpine"

You may notice that the GitHub and local image hashes have an extra (and optional) "config" key. The default is always "image.toml", but this value allows authors to share multiple different configurations stored in a single repository. For example, an image might have a template for a vanilla assignment in the image.toml file, while having a template for biology papers with specific dependencies in the bio.toml file.

commands (table) - REQUIRED


See above.

© 2022-2022 Juni C. Kim