Time for a Python "distribution" ? was:Not enough Python library development

Bruce Sass bsass at freenet.edmonton.ab.ca
Sat Jul 7 23:23:57 CEST 2001

On 6 Jul 2001, Andrew Kuchling wrote:
> Bruce Sass's suggestion of using the Debian package manager is a good
> one, because apt really provides exactly what we need.  Unfortunately
> porting it to Windows or Mac is probably hard, so we could just steal
> its interface (which seems similar to pyppm's) and reimplement it in
> pure Python.


For anyone wondering what apt-get is, what it does, and why it could
ever be considered...

from the man page:
apt - Advanced Package Tool
APT is a management system for software packages.

[Note: It is not for .deb-s or Debian, but for "packages".
 If a task can be broken up into Debian specific and general parts,
 that is how they will do it.]

apt-get ultimately depends on:

what apt-get needs externally to work:
- URL to an archive
- a get "method" (it comes with: cdrom, copy, file, ftp, gzip,
  http, rsh, and ssh, as separate executables)
- a package manager

apt-get does not (but you may have expected it to):
- present a list of available packages
- display stats of installed packages
- know anything about where files are stored on the fs
- actually fetch packages via some protocol
- actually install or remove packages from the system

apt-get handles:
- dependency calculations (real and virtual packages, which may have
  Pre-Depends, Depends, Provides, Recommends, Suggests, and Conflicts
  attributes as required)
- managing the fetching and installation of package(s) (which archive
  to use, which verion to get, what order to do it in)
- some utility functions (print URIs only, download but don't install,
  only fetch part of a source packages, stick with a specific
  version or distribution, etc.)
- third-party additions (e.g., apt-localepurge, to automatically
  remove all those foreign language files you never use)

I do not see anything that says, "Linux only".

The package manager would need to be a wrapper around whatever is
native to the system (that would be totally new code); and if Debian's
archive structure (a pool of packages, with named distributions being
a subset of the pool) is OK... it may be an uneventful port...
but, hey, what do I know I've never ported an app.

You can start to determine the feasibility yourself by looking at...


...including links to the source and dependencies
(and their sources, etc.).

You can see what apt-related stuff has already been developed by using
one of the forms at packages.debian.org and searching on "apt".

- Bruce

More information about the Python-list mailing list