Go to file
Michael Schroeder f721a4c9fc
Transaction ordering: Allow more uninst->uninst edges
Only skip uninst->uninst edges if both elements are build to
inst elements.
2025-06-02 11:33:29 +02:00
.github/workflows [ci] Update actions/checkout to version 4 2025-01-21 00:52:06 +01:00
bindings Allow to link the tools/bindings against the static version of the libraries 2025-03-20 11:06:01 +01:00
cmake/modules Fix typo that broke restoration of CMAKE_FIND_LIBRARY_SUFFIXES 2025-04-02 16:01:15 +02:00
doc Add apk2solv man page 2025-04-15 13:13:27 +02:00
examples luasolv: delete debug line 2024-03-27 14:05:11 +01:00
ext add missing headers 2025-04-14 15:11:35 +02:00
package Add changes, bump version to 0.7.32 2025-04-03 13:10:26 +02:00
src Transaction ordering: Allow more uninst->uninst edges 2025-06-02 11:33:29 +02:00
test Add regression test for last commit 2025-04-15 12:53:25 +02:00
tools Add includes for getopt() and strcasecmp() 2025-05-13 19:34:04 +02:00
win32 Update long usage in regex polyfill 2021-03-18 08:22:44 -05:00
.appveyor.yml Add MSVC compilation support with musl, enable OS X testing 2019-04-11 16:26:35 +02:00
.emacs-dirvars make it easier for me not to screw up the indenting 2008-02-22 10:08:27 +00:00
.gitignore update bindings documentation 2013-05-17 16:39:06 +02:00
CMakeLists.txt Allow to link the tools/bindings against the static version of the libraries 2025-03-20 11:06:01 +01:00
CREDITS Add credits for the win32 port 2019-04-12 13:54:37 +02:00
INSTALL - minor text fixes and tweaks 2011-05-24 17:05:41 +02:00
LICENSE.BSD - add a license 2007-11-08 11:37:00 +00:00
NEWS Add changes, bump version to 0.7.32 2025-04-03 13:10:26 +02:00
README Remove CMAKE_MAJOR_VERSION comparison 2025-03-19 15:26:20 +01:00
TODO_1.0 Add a TODO entry 2019-08-02 11:43:28 +02:00
VERSION.cmake Add changes, bump version to 0.7.32 2025-04-03 13:10:26 +02:00
libsolv.pc.in build: use GNUInstallDirs 2019-03-30 18:08:22 +01:00
libsolvext.pc.in build: use GNUInstallDirs 2019-03-30 18:08:22 +01:00

README

Libsolv
=======

This is libsolv, a free package dependency solver using a satisfiability
algorithm.

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.

 2. Using satisfiability, a well known and researched topic, for
    resolving package dependencies.

The sat-solver code has been written to aim for the newest packages,
record the decision tree to provide introspection, and also provides
the user with suggestions on how to deal with unsolvable
problems. It also takes advantage of repository storage to
minimize memory usage.

Supported package formats:

  - rpm/rpm5
  - deb
  - arch linux
  - haiku
  - apk 

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
  - apk 

Build instructions
==================

Requires: cmake 3.5 or later

    mkdir build
    cd build
    cmake ..
    make

////
vim: syntax=asciidoc
////