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

Re: (low priority) udeb naming



Jeremie Koenig <sprite@sprite.fr.eu.org> writes:

> On Sun, Nov 23, 2003 at 05:43:19PM -0500, Joey Hess wrote:
> > But there are obviously other ways to guard against that if it is a
> > problem. For example, udebs could depend on broken-system, and then dpkg
> > would be pretty clear about what happens if you install them. :-)
> 
> While I could live with it, having every udeb depend on something
> inexistant just to keep it away from real systems is a bit dirty, IMHO.
> 
> >  - Calling things di-foo.udeb, foo-udeb.udeb, foo-di.udeb, is inconsistent
> >    and ugly. (...)
> >  - We cannot have a libc6.udeb (...)
> 
> True.
> 
> > I think that this naming requirement was a bad idea, and we should
> > open up the archive for debs and udebs with different names.
> 
> I only partially agree. Having a udeb and a deb with the same name poses
> some problems. How will the BTS and other things which rely on the
> package name as unique identifier continue to work properly ? I don't
> think debian-installer can be considered as having a fully separated
> package namespace.

Reportbug could ask if its a d-i problem and add the d-i tag. That
would help some. By the way, does the docs about making an
install-report mention to add Tag: d-i?

> I also think being able to install udebs on a real system could be a
> feature sometimes (if you really know what you are doing, obviously.)

The exclusion feature for dpkg thats wanted by many would better cover
that I think, e.g. exlude /usr/share/doc from getting installed.

> The clean way, IMHO, would be to only allow (and probably recommand) a
> udeb and a deb to have the same name when the udeb is the fat-free
> equivalent for the real package. After all, they're more or less two
> flavours of the same package. This could be tested automatically by
> allowing only name collisions within the same the same source package.

The same name is "needed" for any udeb that should appear in the
${shlibs} magic.

For libraries there can be two cases:

1. the library udeb is has the identical lib but less cruft
  -> same name
2. the library udeb has a different lib
  -> seperate name
  -> extra deb and -dev.deb
  -> Package must Build-depend on the extra -dev.deb

The extra deb and the udeb would fall under point 1 again then.
I suggest using package-di for the extra deb and udeb in such cases.

The reason for the extra deb/-dev.deb is that a differently compiled
library will most likely have a different ABI. To detect such things at
build time (instead of some pooor user seeing a run-time error) the
library from the udeb has to be used when linking. Its the same reason
that -dev packages should allways have a (=version) depends.


For any other udeb I suggest the same rules. If the udeb has just less
cruft the same name can be used. But a -di (or a different marker, but
same for all udebs) should be allowed. Its easier to package deb and
udeb with different name.

MfG
        Goswin



Reply to: