EDOS Dose 2: OCaml libs for managing packages and their dependencies
====================================================================

Dose 2 is a framework made of several OCaml libraries for managing
distribution packages and their dependencies.

Though not tied to any particular distribution, Dose 2 forms a background of
libraries which enable injecting packages coming for various distribution.
Companion libraries (e.g. ceve) and tools (e.g.  pkglab) rely on Dose 2 to
manage packages coming from various distributions, e.g. Debian and Red Hat.

Besides basic functionalities for querying and setting package properties, Dose
2 also implements algorithms for solving more complex problems (monitoring
package evolutions, correct and complete dependency resolution, repository-wide
uninstallability checks).

Dose 2 libraries
----------------

Here is a brief summary of the components of Dose 2, it also forms a
gentle introduction to the code base:

- conduit:	channel-like abstraction for pretty printing facilities
- dosebase:	package database, equipped with lifetime information
- io:		input/output of structured data
- lifetime:	life timelines, with support for disappearance/reappearance
- mmap:		bindings to mmap
- napkin:	abstract, distro-independent representation of package info
- ocamldeb:	parsing of Debian package descriptions into napkins
- ocamlpkgsrc:	parsing of NetBSD's pkgsrc packages into napkins
- ocamlrpm:	parsing of RPM package descriptions into napkins
- packetology:	core queries over repositories: (co-)installability, ...
- progress:	textual progress bar widget
- rapids:	data structure for storing historical metadata about napkins
- satsolver:	SAT solving
- util:		miscellaneous helpers


LICENSE
-------
Copyright (C) 2005-2008 Berke DURAK, INRIA Rocquencourt and Jaap BOENDER
Funded by the EDOS and MANCOOSI projects.

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.
