2. Why jigdo?

2.1. How Does One Get A Debian ISO Image Set?

If you want your own set of Debian CDs there are many ways of getting them. One way is to buy them from vendors who sell Debian CDs. This definitely has merit since some of the vendors donate money back to the Debian project. Your donations help make sure that Debian is around for a long time.

Another way of getting a set of Debian CDs is to burn your own set. This first entails obtaining an ISO image and then burning that ISO image to a blank CD. Before jigdo, there were two ways of creating Debian CDs:

  1. Downloading the entire ISO

  2. Using the pseudo-image kit (PIK)

This document is about the newer and better way of obtaining Debian ISO images, using a tool called jigdo. In fact, the PIK is now officially dead and all further references to it have been removed from this document. The canonical method of getting Debian ISO images is with jigdo.

2.2. Why Not Download The Whole ISO Image?

There are mirrors which offer http and ftp downloads of Debian ISOs. The problem is that there are very few mirror sites, and their bandwidth can't support everyone who wants Debian ISOs. For example, fsn.hu has reportedly saturated the connection of its provider. The outgoing traffic reaches a few terabytes per month!

In addition, Debian testing and unstable get updated often. Your ISOs may become outdated the same day you download them unless you find some sneaky way of updating them like mounting the ISO on a loopback device and using rsync (which is what the PIK did). So if you want up-to-date ISO images, you must download a new set of ISO images every day. Clearly, this is not the way you want to obtain Debian ISOs!

Even if you want to download the stable ISO images, they still get updated every few months. Downloading the ISO images will give you up-to-date images for a few months, but every time a new revision of Debian stable is released, you'll need to go through the painful process of downloading the entire ISO set from scratch. This is not a good use of your time and the mirror's resources.

2.3. What Is Jigdo?

Jigdo (which stands for "Jigsaw Download") was written by Richard Atterer and is released under the GNU GPL. It's a tool that allows efficient downloading and updating of an ISO image. Any ISO image. Jigdo is not Debian specific, however Debian has chosen it to be the official method of downloading ISO images.

A common misconception is that jigdo creates ISO images; it doesn't. Let's discuss the overall process of how jigdo allows you to obtain an ISO image. Let Adam be the person offering the ISO image (perhaps he's the Debian release manager). Let Betty be the person who wants to download the ISO image (perhaps she's a Debian user).

  1. The first step is that Adam creates an ISO image suitable for burning a CD. He might use a utility like mkisofs or debian-cd to create the ISO image. He also creates two files associated with his newly created ISO image: a .jigdo file and a .template file. He makes these two files available for download to anyone who wants to obtain his ISO image.

  2. The second step is that Betty downloads the .jigdo and .template files. She then uses jigdo-lite along with these two files to download Adam's ISO image.

The jigdo tool comes with two utilities: jigdo-file and jigdo-lite. Jigdo-file is used by Adam to create the .template and .jigdo files from the ISO image he wants to offer. Jigdo-lite is used by Betty to download the image using the .jigdo and .template files. If all you want to do is download Debian ISOs, you'll only be using jigdo-lite. You can forget that jigdo-file even exists.   :-)

Jigdo addresses all the problems with the other methods of obtaining Debian ISO images:

Clearly, jigdo is the best method of obtaining Debian ISO images.