Last modified 8 years ago Last modified on 08/27/07 20:43:20

pungi Documentation

What is it?

An anaconda based installation spin tool

This project is aimed at making a public / free tool to spin installation trees/isos of Fedora. It is written in python.

What does it do?

We'll need to do five basic tasks:

1) Gather packages from repos into a directory tree
2) Run anaconda tools (buildinstall) on said directory tree
3) Split tree into CD iso size chunks
4) Create isos of the chunks
5) Sanity check the tree

Gathering Packages

See PungiDocs/GatherDocs

Running Anaconda Tools

See PungiDocs/PungiDocs

Split Tree Into CD Size Chunks

See PungiDocs/PungiDocs

Create Isos of the Chunks

See PungiDocs/PungiDocs

Sanity Check the Tree

This could/should be an ever growing set of post-tree build sanity checks. Hopefully it'll cut down on brown paperbag trees sneaking out.

What parts are involved?

pypungi/ is the python package that holds our modules is the base module for gather and pungi objects. Logging and such is setup here. is the module for repoclosing and downloading a set of packages. is the module for running anaconda tools against a set of packages and creating isos

/user/share/pungi is directory holds Kickstart config files that are used to create distributions.

/var/cache/pungi is the directory where package downloads are cached to be reused in later composes.

pungi is the python script that makes use of the above.

How can I help?

Currently development discussion happens at fedora-buildsys-list@…. There is a TRAC page at The source is held via mercurial:
anon -
auth - ssh://

How can I use it?

See PungiDocs/RunningPungi