Go to file
2013-07-07 09:59:25 +02:00
bin xbps-query: fix regression in -R, also print repository string object. 2013-07-07 09:59:25 +02:00
data data/libxbps.pc.in: no need to link to proplib anymore. 2013-06-20 12:33:23 +02:00
doc Update API docs. 2012-12-19 01:01:27 +01:00
etc etc/xbps.conf: improve PackagesOnHold description. 2013-03-08 09:58:32 +01:00
include include/xbps.h.in: xbps_api.h -> xbps.h 2013-06-29 06:46:46 +02:00
lib rpool: no need to add repository object; it's already set by the repo code. 2013-07-07 09:58:30 +02:00
mk mk/test.mk: no need to link to proplib anymore. 2013-06-20 11:34:49 +02:00
tests xbps_api.h -> xbps.h 2013-06-20 12:31:02 +02:00
.gitignore .gitignore: ignore generated xbps.h 2013-06-27 17:17:47 +02:00
3RDPARTY Merge portable proplib 0.6.3. 2013-03-09 16:41:40 +01:00
configure Post release version bump to 0.26. 2013-07-05 08:08:52 +02:00
COPYING
Makefile
NEWS Check if an update for conflicting pkg is in the transaction for revdeps in vpkgs. 2013-07-05 10:09:32 +02:00
README.md README.md: update for 0.25. 2013-07-05 08:08:34 +02:00
TODO

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.25 was released on July 5th, 2013.

Build requirements

To build this you'll need:

and optionally:

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!