[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[APT2] Initial public push

Today, I am opening the source code for APT2. APT2 is a LGPL-2.1+
licensed, multi-distribution[1], package management solution consisting
of a library (apt-2.0) and a command-line frontend (capt); both
implemented in C.

The Advanced Package Tool library is a library for package manager
development in C. Building upon GLib; it features a GVariant-based cache
that provides fast access to all information needed to perform common
package management operations, parsers for Debian control files,
abstraction of system-specific parts, and more.

The capt tool is the command-line front-end to the library. It is an
all-in-one tool similar to capt.

For now, only basic things are available such as parsers for control
files and configuration, pinning, the cache, version comparison, and a
few other things. For pinning; APT2 supports by-source-package pins,
expressions (regular and glob()-like) in all fields (except for
Pin-Priority, of course); all in all, the same superset cupt has.

Missing things includes downloaders, solvers, package management
(APT<->dpkg bridge), source package in the cache, bindings, graphical
frontend (gapt; most probably written in Vala), and dburrow's wishlist
(configuration writing, multi-layered configuration). And multi-arch
handling is not finalized, either.

You should not confuse this APT2 with the previous attempt last year.
Last year's attempt was written in Vala and used an SQLite 3 database
and was considered to be too slow. Furthermore, it required gobject-2.0
which is not very speedy either.

Things on the near, easy TODO list:
      * Converting Apt*Iter to array-like objects; much better from a
        multi-threaded point of view.
      * Group dependencies into OR-groups
      * Only allow a single thread (of all threads in the system) to
        lock AptSystem (currently it's per-process)

Getting it:
    git clone git://git.debian.org/git/users/jak/apt2.git

API reference:

    #apt2 on OFTC

Special thanks for ideas and concept reviews:
      * Daniel Burrows <dburrows@debian.org>
      * Luca Bruno <lethalman88@gmail.com>

     1. multi-distribution: In theory; in practice, only a Debian system

Julian Andres Klode  - Debian Developer, Ubuntu Member

See http://wiki.debian.org/JulianAndresKlode and http://jak-linux.org/.

Attachment: signature.asc
Description: This is a digitally signed message part

Reply to: