diff --git a/README b/README index eac37f15..f971b7ee 100644 --- a/README +++ b/README @@ -1,17 +1,55 @@ -See http://code.google.com/p/xbps for information. +## 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. + - 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]. -Just run ./configure && make && make install. By default PREFIX is set -to `/usr/local', can be changed by setting --prefix. The DESTDIR variable -is also supported for package managers. +### 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'.