-SAT-Solver
+Libsolv
+=======
-Using a Satisfyability Solver to compute package dependencies.
+This is libsolv, a free package dependency solver using a satisfiability
+algorithm.
-See http://idea.opensuse.org/content/ideas/fast-installation-tool
-for the motivation.
+The code is based on two major, but independent, blocks:
+ 1. Using a dictionary approach to store and retrieve package and
+ dependency information in a fast and space efficient manner.
-This code is based on two major, but independent, blocks
+ 2. Using satisfiability, a well known and researched topic, for
+ resolving package dependencies.
-1. Using a dictionary approach to store and retrieve package
- and dependency information.
-
-2. Using satisfiability, a well known and researched topic, for
- computing package dependencies.
+The sat-solver code has been written to aim for the newest packages,
+record the decision tree to provide introspection, and also allows to
+provide the user with suggestions on how to deal with unsolvable
+problems. It also takes advantage of the repository storage to
+minimize memory usage.
+Supported package formats:
-Google for 'sat solver' to get links to the theory behind it.
-http://del.icio.us/kkaempf/solver gives a collection of bookmarks
-related to this topic.
+ - rpm/rpm5
+ - deb
+ - arch linux
+ - haiku
-Some research papers are in doc/pdf.
+Supported repository formats:
-Everything else is below doc.
+ - rpmmd (primary, filelists, comps, deltainfo/presto, updateinfo)
+ - susetags, suse product formats
+ - mandriva/mageia (synthesis, info, files)
+ - arch linux
+ - red carpet helix format
+ - haiku
-Please subscribe to zypp-devel@opensuse.org for any questions.
-
-* How to build
+Build instructions
+==================
Requires: cmake 2.4.x
-mkdir build
-cd build
-cmake ..
-make
-
-To install ruby bindings:
-make install
+ mkdir build
+ cd build
+ cmake ..
+ make
-To createe a package
-make srcpackage
-see package/
+////
+vim: syntax=asciidoc
+////