libzypp je výkonná C++ knihovna pro správu softwaru, která implementuje pokročilý algoritmus pro řešení závislostí (dependency resolver). Na rozdíl od mnoha jiných správců balíčků využívá libzypp tzv. SAT solver (Boolean satisfiability solver), který zaručuje matematicky nejpřesnější řešení konfliktů mezi balíčky.
Knihovna libzypp není jen o instalaci souborů; obsahuje komplexní logiku pro údržbu celého operačního systému:
—
Libzypp funguje jako motor (backend), na který se napojují různé uživatelské nástroje (frontendy):
—
Díky silnému solveru v libzypp je openSUSE (zejména verze Tumbleweed) schopno provádět kompletní upgrady systému mezi verzemi za běhu s minimálním rizikem poškození závislostí.
Zajímavou vlastností libzypp je „přilnavost k dodavateli“. Pokud nainstalujete balíček z konkrétního repozitáře, libzypp se jej snaží neupgradovat z jiného zdroje, pokud mu to výslovně nepovolíte. To zabraňuje nechtěnému míchání balíčků z různých komunitních zdrojů.
—
| Vlastnost | libzypp (Zypper) | libdnf (DNF) | APT |
|---|---|---|---|
| Distribuce | openSUSE, SLE | Fedora, RHEL | Debian, Ubuntu |
| Formát | RPM | RPM | DEB |
| Solver | SAT Solver | libsolv (sdílený s libzypp) | Heuristický |
| Rychlost | Velmi vysoká | Vysoká | Střední |
—
.repo v adresáři /etc/zypp/repos.d/./etc/zypp/zypp.conf./var/cache/zypp/.Související články:
Tagy: linux opensuse suse zypper dev programming cpp package-management