Feedback Request for Prototype Package Tool

Chris Warburton chriswarbo at googlemail.com
Sun Aug 5 05:48:34 UTC 2007


Hello, I am working on a prototype program to help with package
management and I was after a little feedback and possibly assistance,
since at the moment the basic functionality is almost there (although I
feel it is very hacky) and I could do with some input about proper
package mangagement practices and such to make sure that I get rid of
the awkward bits and do things in an acceptable way.

The idea of the program is quite simple: At the moment if some complex
software (including a set of updates) is distributed for a distro like
Ubuntu it is either unpackaged or using a non-default packaging system
like Autopackage or Zeroinstall, which doesn't make use of the current
package database for dependancies and such, or it is put in a
third-party repository along with its dependancies, which ends up with a
slightly involved multi-stage installation procedure not to mention
annoying "Windows is so much easier" comments, or all of the software is
packaged into a single colossal package which causes all sorts of issues
like making it difficult to replace individual components of the mass (I
am thinking of Sun's LookingGlass packages here). My proposed solution
is to make repositories as transportable as packages, allowing them to
keep the structure and separation of their components but also letting
them be downloaded and moved about on media. This tool tries to do this
by creating a local repository out of given package names and then
dumping it in a folder along with a 'setup' package which installs the
included software as part of its installation scripts. I've currently
dubbed these collections "service packs" based on my inspiration on the
Wiki[1], and they should (eventually) be installable using nothing
outside a basic Ubuntu (or Debian) installation (apt-get, wget, Python,
bash, etc.)

Since this is my first attempt at making a useful Python program I
expect it to be very clunky, and the code to give a heart attack to many
a Debian Developer, but this is purely a prototype[2] and I really want
to see this become useful. I am mailing this here to see if any
knowledgable people can give me some advice on which direction to go in
getting it working and then improving it, and to point out any bad
mistakes I have made, and to get some feedback on the idea.

At the moment the tool uses PyGTK but a CLI version and perhaps QT, etc.
versions could be make pretty easily. In the background it uses apt
commands to find info about given packages, wget to download them,
reprepro to make the repository and dpkg commands to build its custom
packages (setup package and a metapackage to ease later management).
Postpone is also needed since it is used during service pack
installation (which doesn't quite work yet, since the scripts work
standalone but not when run from dpkg).

[1] Spec is on the Wiki at
https://wiki.ubuntu.com/TransparentServicePackMaker

[2] Almost working implementation here
http://www.freewebs.com/chriswarbo/Temporary/TransparentServicePackMaker.tar.bz2

Thanks for your time,
Chris Warburton





More information about the Ubuntu-devel-discuss mailing list