######################################################### # Bundle all the files needed to build a LaTeX document # # By Scott Pakin, scott+bdoc@pakin.org # ######################################################### Description ----------- bundledoc is a post-processor for the snapshot package that bundles together all the classes, packages, and files needed to build a given LaTeX document. It reads the .dep file that snapshot produces, finds each of the files mentioned therein, and archives them into a single .tar.gz (or .zip, or whatever) file, suitable for moving across systems, transmitting to a colleague, etc. As an added bonus, this distribution includes a small script called arlatex. arlatex is a LaTeX-specific archiving program that combines a bunch of files into a single .tex file. When the .tex file is run through latex, all of the original files are recreated and the LaTeX document is built. bundledoc can be easily configured to use arlatex as its archiver in place of tar, zip, etc. Files ----- -rwxr-xr-x 1 pakin users 9850 Oct 3 21:24 arlatex -rw-r--r-- 1 pakin users 10187 Oct 3 21:24 arlatex.1 -rw-r--r-- 1 pakin users 32073 Oct 3 21:24 arlatex.pdf -rwxr-xr-x 1 pakin users 31263 Sep 7 2019 bundledoc -rw-r--r-- 1 pakin users 23351 Sep 7 2019 bundledoc.1 -rw-r--r-- 1 pakin users 49713 Sep 7 2019 bundledoc.pdf -rw-r--r-- 1 pakin users 342 Jan 22 2014 miktex.cfg -rw-r--r-- 1 pakin users 4435 Oct 3 21:27 README -rw-r--r-- 1 pakin users 248 Aug 24 2014 texlive-unix-arlatex.cfg -rw-r--r-- 1 pakin users 230 Apr 9 2010 texlive-unix.cfg Requirements ------------ bundledoc and arlatex are both Perl scripts, so you naturally need Perl installed on your system. bundledoc relies on the snapshot package, which is available from CTAN (http://www.ctan.org). Before running bundledoc, you must have used snapshot to produce a dependency list for your document. Finally, bundledoc requires that you have some program for archiving a bunch of files into a single file (e.g. tar, shar, zip, or arlatex) and some program that can search your TeX tree(s) for a given file (e.g., kpsewhich or initexmf). Installation ------------ Installation is fairly flexible. The bundledoc and arlatex scripts should be put somewhere in your executable search path (e.g., /usr/local/bin on a typical Unix-like system). The Unix man pages, bundledoc.1 and arlatex.1, should be put in the corresponding man directory (e.g., /usr/local/man/man1) -- or discarded, if you're not on a Unix-like system and therefore have no interest in having a man page. The *.cfg files can go anywhere -- just don't forget where you put them. ;-) I guess I'd recommend .../texmf/tex/latex/bundledoc (where "..." is /usr/share or wherever your TeX tree is rooted), assuming your TeX distribution follows the TDS directory structure (meaning, it *has* a .../texmf/tex/latex directory). bundledoc.pdf and arlatex.pdf are pretty-printed PDF versions of bundledoc.1 and arlatex.1 and can also go anywhere. If you want printed documentation, these PDF files will give the nicest results. Just note that they're formatted for U.S. Letter-sized paper, so you may need to scale them slightly to print on A4 paper. Note that it's possible to produce documentation in other formats. The bundledoc and arlatex scripts contain documentation in POD format. You can therefore extract the documentation into your favorite format -- LaTeX, HTML, plain text, etc. -- using the various pod2*** tools that come with Perl. Copyright and license --------------------- bundledoc Copyright (C) 2018-2019 Scott Pakin This program may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3c of this license or (at your option) any later version. The latest version of this license is in: http://www.latex-project.org/lppl.txt and version 1.3c or later is part of all distributions of LaTeX version 2008/05/04 or later. This program consists of the file bundledoc and all the files listed in the Files section of the associated README file. The license basically says that you can do whatever you want with bundledoc, as long as you give me credit for writing it. Also, if you modify any of the files, you have to call your modified version something other than "bundledoc".