       #########################################################
       # 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 Feb 25 22:28 arlatex
-rw-r--r-- 1 pakin users  7714 Feb 25 22:29 arlatex.1
-rw-r--r-- 1 pakin users 32842 Feb 25 22:29 arlatex.pdf
-rwxr-xr-x 1 pakin users 31262 Feb 25 22:24 bundledoc
-rw-r--r-- 1 pakin users 20632 Feb 25 22:26 bundledoc.1
-rw-r--r-- 1 pakin users 49080 Feb 25 22:26 bundledoc.pdf
-rw-r--r-- 1 pakin users   342 Jan 22  2014 miktex.cfg
-rw-r--r-- 1 pakin users  4476 Feb 25 22:29 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 (https://www.ctan.org/) and
included in most TeX distributions.  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-2025 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".
