blob: 2990dffebece09779d35cc110770730d5c12185a (plain
/* vim: set ft=cpp tw=80 sw=4 et : */
\section overview Overview
This is the documentation for Paludis, the other package manager. It is available as part of Paludis via <code>make doxygen</code>, or on the web at <a href="http://paludis.berlios.de/">the Paludis project page</a>.
\warning Do not file bugs related to Paludis on Gentoo Bugzilla. Do not discuss
Paludis on Gentoo mailing lists or forums. Do not pester Gentoo developers
about Paludis. Read the \link KnownIssues known issues \endlink list.
\section userdocs For End Users
Paludis is still undergoing heavy development. It is not a mature solution, and
still has quite a few missing features. You <b>will</b> run into bugs if you use
Paludis (some of which may leave your system unusable). Most ebuild authors do
not test their code with both package managers.
If you find this acceptable, read \link BootstrapHowto the Bootstrap HOWTO
\endlink for how to set up a chroot or make a stage, or \link MigrationHowto the
Migration HOWTO \endlink for how to migrate an existing install (this is less
reliable). You may also like to read about \link PortageDifferences some of the
differences between Paludis and Portage \endlink.
We have a <a href="https://developer.berlios.de/bugs/?group_id=6360">bug
tracker</a> and some
<a href="https://developer.berlios.de/mail/?group_id=6360">mailing lists</a>, but
you shouldn't try to use these until after you've discussed your problem in our
IRC channel. Read the howto for more details.
\section developerdocs For Developers
Start by getting a
checkout</a> of <code>trunk/</code>, and reading the \link PortageDifferences Paludis and Portage
differences \endlink document.
It's best to start by skimming over the main program to get a feel for how
everything fits together. The interface code is kept in the src/ directory,
and library code is in paludis/ .
The following classes are good places to begin:
- paludis::DefaultEnvironment provides a representation of the default
- paludis::PackageDatabase provides routines for querying packages. An
instance can be obtained via paludis::DefaultEnvironment.
- paludis::DepList can be used for making dependency lists.
- paludis::Repository is subclassed to do querying, installing,
uninstalling, syncing and the like.
The <a href="modules.html">Modules</a> link in the header bar will probably
be of more use than any of the full class lists.
You should also read \link CodingStandards the Coding Standards \endlink