## XBPS The X Binary Package System (in short XBPS) is a new binary package system **designed and implemented from scratch**. Its goal is to be fast, easy to use, bug-free, featureful and portable as much as possible. The XBPS code is totally compatible with POSIX/SUSv2/C99 standards, and released with a **Simplified BSD license (2 clause)**. There is a well documented API provided by the XBPS Library that is the basis for its frontends to handle binary packages and repositories. Some highlights: * Supports multiple local and remote repositories (FTP/HTTP/HTTPS). * SHA256 hashes for package metadata, files and binary packages. * Supports package states (ala dpkg) to mitigate broken package installs/updates. * Ability to resume partial package install/updates. * Ability to unpack only files that have been modified in package updates. * Ability to use virtual packages. * Ability to replace packages. * Ability to put packages on hold (to never update them. NEW in 0.16). * Ability to preserve/update configuration files. * Ability to force reinstallation of any installed package. * Ability to downgrade any installed package. * Ability to execute pre/post install/remove/update scriptlets. * Ability to check package integrity: missing files, hashes, missing or unresolved (reverse)dependencies, dangling or modified symlinks, etc. * Low memory footprint. * Fast dependency resolver and sorting algorithms. The latest stable version **0.24** was released on **May 2nd, 2013**. ### Build requirements To build this you'll need: - GNU make - pkg-config - zlib - openssl - libarchive[0] >= 3.0.2 - confuse[1] >= 2.7 and optionally: - graphviz and doxygen (--with-api-docs) to build API documentation. - atf >= 0.15 (--with-tests) to build the Kyua test suite [2]. ### Build instructions Standard configure script (not generated by GNU autoconf). ``` ./configure --prefix=/blah make -jX make install ``` By default PREFIX is set `/usr/local` and may be changed by setting `--prefix` in the `configure` script. The `DESTDIR` variable is also supported at the install stage. There are some more options that can be tweaked, see them with `./configure --help'. Good luck! [0] http://www.libarchive.org [1] http://www.nongnu.org/confuse [2] http://code.google.com/p/kyua
Description
Languages
C
77.4%
Shell
17.2%
Roff
4.4%
Makefile
1%