-SAT-Solver
+This is libsolv, a free package dependency solver using a satisfiability
+algorithm.
-Using a Satisfyability Solver to compute package dependencies.
+This code is based on two major, but independent, blocks:
-See http://idea.opensuse.org/content/ideas/fast-installation-tool
-for the motivation.
+ 1. Using a dictionary approach to store and retrieve package
+ and dependency information.
+ 2. Using satisfiability, a well known and researched topic, for
+ resolving package dependencies.
-This code is based on two major, but independent, blocks
+The sat-solver code has been written to aim for the newest packages,
+record the decison 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.
-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.
+Supported package formats:
+ - rpm/rpm5
+ - deb
+ - arch linux
+ - haiku
-
-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.
-
-Some research papers are in doc/pdf.
-
-Everything else is below doc.
-
-Please subscribe to zypp-devel@opensuse.org for any questions.
-
-* How to build
+Supported repository formats:
+ - rpmmd (primary, filelists, comps, deltainfo/presto, updateinfo)
+ - susetags, suse product formats
+ - mandriva/mageia (synthesis, info, files)
+ - arch linux
+ - red carpet helix format
+ - haiku
Requires: cmake 2.4.x
cmake ..
make
-To install ruby bindings:
-make install
-
-To create a package
+To create a package:
make srcpackage
see package/