PackageManagementRoadmap

Revision 18 as of 2005-04-29 01:40:41

Clear message

Status

Introduction

Define what road we want to take for our package managment tools.

Rationale

The package managment tools needs to be updated to work with the new requirements that the distro imposes on them.

Scope and Use Cases

Both apt, aptitude, dpkg and synaptic needs updates in various areas.

Implementation Plan

1. dpkg should not depend on dselect anymore (dpkg-1.13 does no longer)

2. support logging:

  • dpkg-1.13 support logging for states now (needs to log
    • answers for conf file questions
  • log the output of dpkgs maintainer scripts in synaptic
    • (because we don't get debconf questions there)

3. "automated package suggestions":

  • mime-type of packages should be used: find a application
    • to work with that mime type and install it Use-case:
      • download a file with unknown mime-type and firefox
        • tells us that it does not support it
      • have a non-supported file openend with nautilus and
        • it should ask for software to be installed

4. FeatureDependencies: http://www.dpkg.org/FeatureDependencies

5. Future source package format: http://www.dpkg.org/NewSourceFormat

  • support for bz2 sources files will go in for breezy

6. network sources stuff:

  • synaptic: ask network manager if we are online or not
  • apt,aptitude should test for network by forking a application
    • that speaks dbus and tries to talk to network-manager

7. libapt should support apt-get update in a single library call

8. aptitdue dist-upgrade <-> apt-get dist-upgrade why they are

  • different and if we can merge that changes

9. probably move libapt-pkg and libapt-inst into one library

10. Deb should be extended to support:

  • bwlimit (debian #146877, a prototype patch is in BTS)
  • Package Index Diff support (debian #128818, prototype patch in BTS)
  • i18n for Package Descriptions (debian #265009, prototype patch in BTS)
  • python-apt debcache/commit/update/progress (part of that exist in michael.vogt@ubuntu.com--2005/python-apt--mvo--0) interface

  • ClickInstall (FindingPackages)

  • Aptitude like AutoTracking for dependencies (PackageDependencyManagment)

  • evalute smart
  • #225947: apt-utils: please support architecture-specific extra overrides
  • consider using the https patches from progeny (debian bug #213465)

11. plan: make apt-woa (working-overloaded-apt) and publish it on http://people.ubuntu.com/~mvo/ it will contain all the patches that we feel are ready and need testing from real users.

Data Preservation and Migration

The packages tools must work as before, for the automatic handling of dependencies a script should be provided that converts the markings into the new format.

Packages Affected

Apt, aptitude, dpkg and synaptic.

User Interface Requirements

The automatic dependency feature needs updates to the apt and synaptic GUI.

Outstanding Issues

Most of the work is not done yet, some prototype patches exists.

UDU BOF Agenda

  • Logging of package management activity
  • Automated package suggestions
    • Support packages for hardware devices
    • Applications necessary to open file formats
  • Supporting changes to enable network sources by default during installation ([https://bugzilla.ubuntu.com/show_bug.cgi?id=6390 Bug#6390])