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

Bug#497304: general: packages cannot be partially installed



On Sun, 2008-08-31 at 19:08 +0100, Mark Hobley wrote:
> Package: general
> Severity: wishlist
> 
> 
> There is an annoying flaw in the design of the Debian package management 
> system, which means that packages cannot be partially installed. 

Umm, yes they can actually. Emdebian uses this functionality all the
time. You have a choice of unpacking and running the preinst maintainer
scripts or you can extract the package to a local directory or you can
view the contents of the package with dpkg -c, dpkg -I or deb-gview,
there are quite a few methods.

> For any particular package, the full set of binary components, optional
> documentation, and unused foreign language support files will be installed
> by the package management system.

This is dpkg filtering which is also being implemented - I looked at a
version at DebConf7 due to needs within Emdebian and it has since been
enhanced and being implemented in dpkg.

> This flaw also means that components of bundled packages, such as the 
> coreutils suite cannot be individually selected or omitted. This is 
> particularly annoying if the system installer wants to replace one of 
> the components with a customized version.

Filtering would support that too.

> A fix would be to make it possible to select individual files for 
> installation from within a package.
> 
> Other work includes splitting packages into daughter packages, the 
> parent package being dependent on all daughters, but allowing the option 
> of just selecting individual daughter packages,

Currently, that means rebuilding the packages - Emdebian is doing that
too.

> Each stand alone binary file should be individually packaged, rather 
> than bundled with other stand alone binary files.

Umm, we have 20,000 packages - that could push us to 2 million
overnight. I don't think ftp-master would accept that.

> It is policy that internationalized (non-english) components are 
> packaged separately to the core package. For example, a package foobar, 
> would have its french documentation in a separate foobar-fr package.

TDebs will implement this - support is planned in the infrastructure for
Lenny+1 and in packages for Lenny+2

> Packages should not install cruft on the system. This means that a 
> package should not install a foreign language file, unless the system 
> has been explicitly configured to support that foreign language.

A combination of dpkg filtering, an Emdebian TDeb utility to be merged
into apt and other infrastructure support is already planned for this
scenario.


-- 


Neil Williams
=============
http://www.data-freedom.org/
http://www.nosoftwarepatents.com/
http://www.linux.codehelp.co.uk/


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


Reply to: