Re: Debian vs. Ubuntu source control file

2010-01-06 Thread Reinhard Tartler
On Mi, Jan 06, 2010 at 08:32:45 (CET), Russ Allbery wrote:

 I am personally not horribly fond of a package building differently on
 Debian or Ubuntu via only this mechanism, though.  I think it violates a
 very important invariant:  the same package with the same version number
 will have the same contents.

AFAIUI, this invariant is not valid since the very first releasse of
ubuntu.

 It's normally possible to freely mix Debian and Ubuntu packages
 provided that the dependencies are met, but if the Debian and Ubuntu
 packages have different contents despite being indistinguishable from
 the perspective of the package manager, that makes it extremely
 difficult to do that.  Now, every system must be exclusively Debian or
 Ubuntu or risk getting inconsistent packages that can't be
 distinguished from each other.

I would phrase it: It's often possible to freely mix Debian and Ubuntu
packages, but this may or may not bring unexpected, surprising results.

Seriously, even in debian the package contents of packages with the same
version number can vary (but here only across architectures). The
contents of a package depend on:

 - the mechanics of debian/rules
 - the presence or absence of build-dependencies
 - the presence or absence of specific library versions

the last point is often the case when the soname of some dependent
library has its SONAME bumped and that the current package encodes that
SONAME in some path. I don't have concrete examples in mind, but I'm
sure that something like this is easily implementable with
e.g. pkg-config.

 Maybe there's some way that could also be addressed, such as by having the
 source package build binary packages with a different version number
 depending on what platform on which they're built?  Add ubuntu to the
 end of the source version number to form the binary version number if
 built on Ubuntu, for instance?

What problem does this solve? Binary packages are already
distinguishable by looking at the Maintainer field.

-- 
Gruesse/greetings,
Reinhard Tartler, KeyID 945348A4


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Debian vs. Ubuntu source control file

2010-01-06 Thread Frans Pop
Lucas Nussbaum wrote:
 Anyway, to avoid modifying debian/control directly, it's easy to add an
 additional substvar (ubuntu:Browser?):
 debian/control:
 Depends: [...], iceweasel | ${ubuntu:Browser}

Doesn't that leave a dangling | if you're building for Debian?

I'd suggest in debian/control something like:
   Depends: [...], ${browsers}

And then in debian/rules:
   ifneq ($(DEB_VENDOR),ubuntu)
   BROWSERS = iceweasel
   else
   BROWSERS = iceweasel | abrowser
   endif

   [...]

   dh_gencontrol -- -Vbrowsers=$(BROWSERS)

Cheers,
FJP


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Debian vs. Ubuntu source control file

2010-01-06 Thread Lucas Nussbaum
On 07/01/10 at 03:08 +0100, Frans Pop wrote:
 Lucas Nussbaum wrote:
  Anyway, to avoid modifying debian/control directly, it's easy to add an
  additional substvar (ubuntu:Browser?):
  debian/control:
  Depends: [...], iceweasel | ${ubuntu:Browser}
 
 Doesn't that leave a dangling | if you're building for Debian?

No: it seems that dpkg-gencontrol removes it.
-- 
| Lucas Nussbaum
| lu...@lucas-nussbaum.net   http://www.lucas-nussbaum.net/ |
| jabber: lu...@nussbaum.fr GPG: 1024D/023B3F4F |


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Debian vs. Ubuntu source control file

2010-01-05 Thread Xavier Roche
[ Don't hesitate to redirect me to an already discussed 
solution/thread/FAQ/anything if necessary, but I didn't find anything 
related in recent (months) debian-devel. ]


Hi folks (and happy new year to all DD),

A minor issue (reported by Nick Ellery) with debian vs. ubuntu package 
is that the two package namespaces are not necessarily identical. An 
example is my httrack package, which on Ubuntu depends alternatively on 
abrowser, which is NOT in debian.


See BUG 530031 :
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=530031

I could depend on abrowser on Debian, but the package doesn't exist, and 
lintian may be a bit annoyed. Besides, we may package in the future 
something called abrowser, which wouldn't be the same package (is that 
possible ? do we enforce two different packages on debian/ubuntu should 
not have the same name -- sorry if I am beating a dead horse)


This is the only reason why a patch is needed for all releases on 
ubuntu. The patch (http://patches.ubuntu.com/h/httrack/) is basically 
a one-liner in the control file (plus changelog and friends):


-Depends: ${shlibs:Depends}, webhttrack-common, iceape-browser | 
iceweasel | mozilla | firefox | mozilla-firefox | www-browser
+Depends: ${shlibs:Depends}, webhttrack-common, iceape-browser | 
iceweasel | mozilla | firefox | abrowser | mozilla-firefox | www-browser


What do you, folks, think of this case ?

(1) Not a very common case, which can be left as is (ie. patch all 
further control files)


(2) We may want to have a namespaced control fields, such as:

Depends: ${shlibs:Depends}, webhttrack-common, iceape-browser | 
iceweasel | mozilla | firefox | mozilla-firefox | www-browser
Ubuntu:Depends: ${shlibs:Depends}, webhttrack-common, iceape-browser | 
iceweasel | mozilla | firefox | abrowser | mozilla-firefox | www-browser


-and/or-

Debian:Depends: ${shlibs:Depends}, webhttrack-common, iceape-browser | 
iceweasel | mozilla | firefox | mozilla-firefox | www-browser
Ubuntu:Depends: ${shlibs:Depends}, webhttrack-common, iceape-browser | 
iceweasel | mozilla | firefox | abrowser | mozilla-firefox | www-browser


We could namespace all possible fields in the control file, introducing 
ubuntu-specific fields that would be ignored by the debian side.


(3) Namespace specific packages ?

Ubuntu:Depends: ${shlibs:Depends}, webhttrack-common, iceape-browser | 
iceweasel | mozilla | firefox | ubuntu:abrowser | mozilla-firefox | 
www-browser


(the dependency checker on our side would then ignore all non-debian 
namespaces)


(4) Ubuntu-specific optional control file ?

ie. an optional ubuntu/control file

(5) Something totally obvious I did not notice yet


Regards,
Xavier



--
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Debian vs. Ubuntu source control file

2010-01-05 Thread David Paleino
Xavier Roche wrote:

 [..]
 
 (1) Not a very common case, which can be left as is (ie. patch all
 further control files)
 
 (2) We may want to have a namespaced control fields, such as:
 
 (3) Namespace specific packages ?
 
 (4) Ubuntu-specific optional control file ?
 
 (5) Something totally obvious I did not notice yet

I remember, some time ago, there has been some discussion about treating 
ubuntu as a pseudo-arch, so that we could do something like:

Depends: foo | bar [ubuntu]

I also remember this proposal was rejected, or hostaged to say the least, 
because in this case we should provide pseudo-arches for every Debian 
derivative -- Ubuntu is a big one, but not the only one out there.

This is my opinion, and not the official position of the project as a whole.

Kindly,
David

-- 
 . ''`.   Debian developer | http://wiki.debian.org/DavidPaleino
 : :'  : Linuxer #334216 --|-- http://www.hanskalabs.net/
 `. `'`  GPG: 1392B174 | http://snipr.com/qa_page
   `-   2BAB C625 4E66 E7B8 450A C3E1 E6AA 9017 1392 B174


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Debian vs. Ubuntu source control file

2010-01-05 Thread Roger Leigh
On Tue, Jan 05, 2010 at 10:36:33AM +0100, Xavier Roche wrote:
 This is the only reason why a patch is needed for all releases on  
 ubuntu. The patch (http://patches.ubuntu.com/h/httrack/) is basically  
 a one-liner in the control file (plus changelog and friends):

 -Depends: ${shlibs:Depends}, webhttrack-common, iceape-browser |  
 iceweasel | mozilla | firefox | mozilla-firefox | www-browser
 +Depends: ${shlibs:Depends}, webhttrack-common, iceape-browser |  
 iceweasel | mozilla | firefox | abrowser | mozilla-firefox | www-browser

 What do you, folks, think of this case ?

I think this is a specific case of a more general problem: we
don't have a mechanism to provide a distribution-wide default
for a virtual package.  The result is that you end to with
dependencies such as this hard-coded into individual packages
(which is ugly, unmaintainable and inconsistent):

  iceape-browser | iceweasel | mozilla | firefox | abrowser | mozilla-firefox | 
www-browser

rather than this:

  www-browser
or this
  default-www-browser

(where default-www-browser is a dependency on e.g. iceweasel|www-browser)

We solved this for mail-transport-agent with default-mta, but it's
a more general (and unsolved) problem for *all* virtual packages.
I did propose (and implement) a virtual-defaults package some four
years back which created such a set of metapackage dependencies, but
this wasn't adopted.  However, we do need some system to handle this.
NB: http://people.debian.org/~rleigh/virtual-policy_1.dsc

ajt (IIRC) said work was going on in dpkg to implement a cleaner
solution than the above, but AFAIK this never materialised, and I've
never seen anything more about it.  It would be trivial to update
the above to fold default-mta into it and provide defaults for all
key virtual packages.  This *single* package could then be customised
by derived distributions to provide specific defaults.


Regards,
Roger

-- 
  .''`.  Roger Leigh
 : :' :  Debian GNU/Linux http://people.debian.org/~rleigh/
 `. `'   Printing on GNU/Linux?   http://gutenprint.sourceforge.net/
   `-GPG Public Key: 0x25BFB848   Please GPG sign your mail.


signature.asc
Description: Digital signature


Re: Debian vs. Ubuntu source control file

2010-01-05 Thread Daniel Leidert
Am Dienstag, den 05.01.2010, 10:36 +0100 schrieb Xavier Roche:
 [ Don't hesitate to redirect me to an already discussed 
 solution/thread/FAQ/anything if necessary, but I didn't find anything 
 related in recent (months) debian-devel. ]
 
 Hi folks (and happy new year to all DD),
 
 A minor issue (reported by Nick Ellery) with debian vs. ubuntu package 
 is that the two package namespaces are not necessarily identical. An 
 example is my httrack package, which on Ubuntu depends alternatively on 
 abrowser, which is NOT in debian.
 
 See BUG 530031 :
 http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=530031
 
 I could depend on abrowser on Debian, but the package doesn't exist, and 
 lintian may be a bit annoyed. Besides, we may package in the future 
 something called abrowser, which wouldn't be the same package (is that 
 possible ? do we enforce two different packages on debian/ubuntu should 
 not have the same name -- sorry if I am beating a dead horse)
 
 This is the only reason why a patch is needed for all releases on 
 ubuntu. The patch (http://patches.ubuntu.com/h/httrack/) is basically 
 a one-liner in the control file (plus changelog and friends):
 
 -Depends: ${shlibs:Depends}, webhttrack-common, iceape-browser | 
 iceweasel | mozilla | firefox | mozilla-firefox | www-browser
 +Depends: ${shlibs:Depends}, webhttrack-common, iceape-browser | 
 iceweasel | mozilla | firefox | abrowser | mozilla-firefox | www-browser
 
 What do you, folks, think of this case ?

I have the same issue with e.g. gnome-chemistry-utils. Further Ubuntu
applies a few patches related to their build system in e.g. gnupg or for
their design decisions (gelemental dbg package).

On one side I think: Well, they decided to do things their own way, so
they have carry about fixing my packaging files for their build and
package environment. On the other side it would be of course easier, if
such changes, which will always be applied to Ubuntu only, could be
marked/added somehow to the Debian package. I hope, they time savings
are then spent into *fixing bugs reported to launchpad and reporting
fixes back to us* (my dear Ubuntu developers!!111).

[snip the possible solutions]
I was thinking about similar things.

Maybe the source format v3 is the solution if we can mark changes as
patch-in-debian and patch-in-ubuntu only?

Regards, Daniel


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Debian vs. Ubuntu source control file

2010-01-05 Thread Fabian Greffrath
AFAIUI this is the reason why virtual packages have been introduced. 
You cannot - and definitely should not - alternatively depend on each 
and every webbrowser in Debian (or ubuntu), but every webbrowser 
should do Provides: x-www-browser. So all you have to do is depend 
on the default webbrowser and on the virtual package alternatively, 
e.g. Depends: iceweasel | x-www-browser or even Depends: iceweasel 
| abrowser | x-www-browser to also cover the ubuntu case.


Cheers,
Fabian

--
Dipl.-Phys. Fabian Greffrath

Ruhr-Universität Bochum
Lehrstuhl für Energieanlagen und Energieprozesstechnik (LEAT)
Universitätsstr. 150, IB 3/134
D-44780 Bochum

Telefon: +49 (0)234 / 32-26334
Fax: +49 (0)234 / 32-14227
E-Mail:  greffr...@leat.ruhr-uni-bochum.de


--
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Debian vs. Ubuntu source control file

2010-01-05 Thread Raphael Hertzog
Hi,

On Tue, 05 Jan 2010, Xavier Roche wrote:
 This is the only reason why a patch is needed for all releases on
 ubuntu. The patch (http://patches.ubuntu.com/h/httrack/) is
 basically a one-liner in the control file (plus changelog and
 friends):
 
 -Depends: ${shlibs:Depends}, webhttrack-common, iceape-browser |
 iceweasel | mozilla | firefox | mozilla-firefox | www-browser
 +Depends: ${shlibs:Depends}, webhttrack-common, iceape-browser |
 iceweasel | mozilla | firefox | abrowser | mozilla-firefox |
 www-browser
 
 What do you, folks, think of this case ?

I would merge the change even if the package doesn't exist.

 (2) We may want to have a namespaced control fields, such as:

Please no. We have proper support for generating different dependencies
depending on the distribution, it's a combination of substvars and
dpkg-vendor.

On Tue, 05 Jan 2010, Daniel Leidert wrote:
 Maybe the source format v3 is the solution if we can mark changes as
 patch-in-debian and patch-in-ubuntu only?

You can have debian/patches/ubuntu.series and
debian/patches/debian.series in the same source package and the right one
is picked depending on /etc/dpkg/origin/default.

But patches are not allowed to modify the debian directory so that only
works for upstream changes.

Cheers,
-- 
Raphaël Hertzog


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Debian vs. Ubuntu source control file

2010-01-05 Thread Xavier Roche

Raphael Hertzog a écrit :

What do you, folks, think of this case ?

I would merge the change even if the package doesn't exist.


What about lintian crying in the rain ? More seriously, can we assume 
that we'll never have package name collisions (ie. foo, if exist on 
two distributions, are guaranteed to be the same package) ?



--
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Debian vs. Ubuntu source control file

2010-01-05 Thread Mike Hommey
On Tue, Jan 05, 2010 at 02:00:46PM +0100, Xavier Roche wrote:
 Raphael Hertzog a écrit :
 What do you, folks, think of this case ?
 I would merge the change even if the package doesn't exist.
 
 What about lintian crying in the rain ? More seriously, can we
 assume that we'll never have package name collisions (ie. foo, if
 exist on two distributions, are guaranteed to be the same package) ?

Well, for abrowser, i doubt we'll ever see something called abrowser
that is not abrowser. OTOH, abrowser being quite similar to
iceweasel (unbranded firefox), I don't even see why abrowser would end
up in Debian.

Mike

PS: I don't even understand why there is abrowser in Ubuntu,
especially considering it depends on firefox and not the other way
around...


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Debian vs. Ubuntu source control file

2010-01-05 Thread Raphael Hertzog
On Tue, 05 Jan 2010, Xavier Roche wrote:
 Raphael Hertzog a écrit :
 What do you, folks, think of this case ?
 I would merge the change even if the package doesn't exist.
 
 What about lintian crying in the rain ?

What tag does it generate?

AFAIK lintian has no knowledge of what package exist or not. And even if
it does, you can override the tag justifying that it exists in ubuntu.
It would be legitimate for me given that it has no negative impact for
Debian.

 More seriously, can we
 assume that we'll never have package name collisions (ie. foo, if
 exist on two distributions, are guaranteed to be the same package) ?

There's nothing to guarantee this but you can generally assume it
nevertheless IMO.

Cheers,
-- 
Raphaël Hertzog


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Debian vs. Ubuntu source control file

2010-01-05 Thread Paul Wise
On Tue, Jan 5, 2010 at 9:12 PM, Raphael Hertzog hert...@debian.org wrote:
 On Tue, 05 Jan 2010, Xavier Roche wrote:
 Raphael Hertzog a écrit :
 What do you, folks, think of this case ?
 I would merge the change even if the package doesn't exist.

 What about lintian crying in the rain ?

 What tag does it generate?

 AFAIK lintian has no knowledge of what package exist or not.

Presumably he was thinking of debcheck:

http://qa.debian.org/debcheck.php

-- 
bye,
pabs

http://wiki.debian.org/PaulWise


--
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Debian vs. Ubuntu source control file

2010-01-05 Thread Lucas Nussbaum
On 05/01/10 at 13:56 +0100, Raphael Hertzog wrote:
 But patches are not allowed to modify the debian directory so that only
 works for upstream changes.

That's only true with the v3 format. If you stick with v1, you can
patch debian/control at unpack time.

And in both cases, you are free to modify it manually during the build.
-- 
| Lucas Nussbaum
| lu...@lucas-nussbaum.net   http://www.lucas-nussbaum.net/ |
| jabber: lu...@nussbaum.fr GPG: 1024D/023B3F4F |


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Debian vs. Ubuntu source control file

2010-01-05 Thread Raphael Hertzog
On Tue, 05 Jan 2010, Lucas Nussbaum wrote:
 On 05/01/10 at 13:56 +0100, Raphael Hertzog wrote:
  But patches are not allowed to modify the debian directory so that only
  works for upstream changes.
 
 That's only true with the v3 format. If you stick with v1, you can
 patch debian/control at unpack time.

Well, with v1 debian/control is entirely created by the debian diff
(unless upstream provides it) so there's usually no further patching involved.

With v3, it's provided by debian.tar.gz (and any upstream debian directory
is scratched away) and patching it by debian/patches/* means that you
don't get the same debian directory after unpack than what
is contained in debian.tar.gz and this will lead to problems during
creation of the automatic patch (which is created by diffing an unpacked
copy of the upstream sources with the same debian directory injected and
with patches applied — the patch that modifies the debian dir will fail to
apply on that copy because the change is already applied).

 And in both cases, you are free to modify it manually during the build.

Indeed.

Cheers,
-- 
Raphaël Hertzog


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Debian vs. Ubuntu source control file

2010-01-05 Thread Russ Allbery
Raphael Hertzog hert...@debian.org writes:
 On Tue, 05 Jan 2010, Xavier Roche wrote:

 What about lintian crying in the rain ?

 What tag does it generate?

 AFAIK lintian has no knowledge of what package exist or not. And even if
 it does, you can override the tag justifying that it exists in ubuntu.
 It would be legitimate for me given that it has no negative impact for
 Debian.

I'm pretty sure Lintian doesn't care.

-- 
Russ Allbery (r...@debian.org)   http://www.eyrie.org/~eagle/


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Debian vs. Ubuntu source control file

2010-01-05 Thread Xavier Roche

Russ Allbery wrote :

I'm pretty sure Lintian doesn't care.


Yep, but not debcheck (as Paul Wise corrected), which would produce 
another warning



--
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Debian vs. Ubuntu source control file

2010-01-05 Thread Joerg Jaspert

 What do you, folks, think of this case ?
 I would merge the change even if the package doesn't exist.
 What about lintian crying in the rain ? More seriously, can we assume
 that we'll never have package name collisions (ie. foo, if exist on
 two distributions, are guaranteed to be the same package) ?

It would be wrong to depend on abrowser in Debian, imo.
And no, there is no guarantee that this package might not ever be
something different.

-- 
bye, Joerg
 What would you do if you wanted to retire from the project?
This is far easier than to get in! ;)


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Debian vs. Ubuntu source control file

2010-01-05 Thread Joerg Jaspert

 That's only true with the v3 format. If you stick with v1, you can
 patch debian/control at unpack time.

 And in both cases, you are free to modify it manually during the build.

Err, what? debian/control modified during build? Sure not.

-- 
bye, Joerg
mechanix anyone from the MIA team around? tbm?
Ganneff sounds nice. how long do you have to be MIA to get into that team? :)
mhp you need to have a pgp key, I suppose. and no gpg one, and only a bo box
Np237 yes, but it must be expired


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Debian vs. Ubuntu source control file

2010-01-05 Thread Lucas Nussbaum
On 05/01/10 at 21:39 +0100, Joerg Jaspert wrote:
 
  That's only true with the v3 format. If you stick with v1, you can
  patch debian/control at unpack time.
 
  And in both cases, you are free to modify it manually during the build.
 
 Err, what? debian/control modified during build? Sure not.

What is preventing it from being modified during the build?

L.


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Debian vs. Ubuntu source control file

2010-01-05 Thread Russ Allbery
Xavier Roche ro...@httrack.com writes:
 Russ Allbery wrote :

 I'm pretty sure Lintian doesn't care.

 Yep, but not debcheck (as Paul Wise corrected), which would produce
 another warning

Yeah, but debcheck produces warnings about lots of things that aren't
really problems, just things it doesn't understand.  I wouldn't worry too
much about that.

-- 
Russ Allbery (r...@debian.org)   http://www.eyrie.org/~eagle/


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Debian vs. Ubuntu source control file

2010-01-05 Thread Don Armstrong
On Tue, 05 Jan 2010, Lucas Nussbaum wrote:
 On 05/01/10 at 21:39 +0100, Joerg Jaspert wrote:
  
   That's only true with the v3 format. If you stick with v1, you can
   patch debian/control at unpack time.
  
   And in both cases, you are free to modify it manually during the build.
  
  Err, what? debian/control modified during build? Sure not.
 
 What is preventing it from being modified during the build?

Nothing besides seriously affecting mine and other's sanity if we ever
glance at such packages. DEBIAN/control is an entirely different
matter.


Don Armstrong

-- 
Il semble que la perfection soit atteinte non quand il n'y a plus rien
a ajouter, mais quand il n'y a plus rien a retrancher.
(Perfection is apparently not achieved when nothing more can be added,
but when nothing else can be removed.)
 -- Antoine de Saint-Exupe'ry, Terres des Hommes

http://www.donarmstrong.com  http://rzlab.ucr.edu


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Debian vs. Ubuntu source control file

2010-01-05 Thread Steve Langasek
On Tue, Jan 05, 2010 at 03:52:46PM -0800, Don Armstrong wrote:
 On Tue, 05 Jan 2010, Lucas Nussbaum wrote:
  On 05/01/10 at 21:39 +0100, Joerg Jaspert wrote:
   
That's only true with the v3 format. If you stick with v1, you can
patch debian/control at unpack time.
   
And in both cases, you are free to modify it manually during the build.
   
   Err, what? debian/control modified during build? Sure not.

  What is preventing it from being modified during the build?

 Nothing besides seriously affecting mine and other's sanity if we ever
 glance at such packages. DEBIAN/control is an entirely different
 matter.

No, it also breaks assumptions about debian/control that the buildds, the
archive, and various supplementary checker tools (e.g., lintian.debian.org)
rely on.

-- 
Steve Langasek   Give me a lever long enough and a Free OS
Debian Developer   to set it on, and I can move the world.
Ubuntu Developerhttp://www.debian.org/
slanga...@ubuntu.com vor...@debian.org


signature.asc
Description: Digital signature


Re: Debian vs. Ubuntu source control file

2010-01-05 Thread Steve Langasek
On Tue, Jan 05, 2010 at 12:39:40PM +0100, David Paleino wrote:
 I remember, some time ago, there has been some discussion about treating 
 ubuntu as a pseudo-arch, so that we could do something like:

 Depends: foo | bar [ubuntu]

 I also remember this proposal was rejected, or hostaged to say the least, 
 because in this case we should provide pseudo-arches for every Debian 
 derivative -- Ubuntu is a big one, but not the only one out there.

More to the point, this causes unpleasant namespacing issues for the [] arch
specifiers.  We shouldn't mash this into the architecture specifier just
because it's there; there are other ways to accomplish this already
(e.g., substvars as mentioned up-thread).

-- 
Steve Langasek   Give me a lever long enough and a Free OS
Debian Developer   to set it on, and I can move the world.
Ubuntu Developerhttp://www.debian.org/
slanga...@ubuntu.com vor...@debian.org


signature.asc
Description: Digital signature


Re: Debian vs. Ubuntu source control file

2010-01-05 Thread Lucas Nussbaum
On 05/01/10 at 16:31 -0800, Steve Langasek wrote:
 On Tue, Jan 05, 2010 at 03:52:46PM -0800, Don Armstrong wrote:
  On Tue, 05 Jan 2010, Lucas Nussbaum wrote:
   On 05/01/10 at 21:39 +0100, Joerg Jaspert wrote:

 That's only true with the v3 format. If you stick with v1, you can
 patch debian/control at unpack time.

 And in both cases, you are free to modify it manually during the 
 build.

Err, what? debian/control modified during build? Sure not.
 
   What is preventing it from being modified during the build?
 
  Nothing besides seriously affecting mine and other's sanity if we ever
  glance at such packages. DEBIAN/control is an entirely different
  matter.
 
 No, it also breaks assumptions about debian/control that the buildds, the
 archive, and various supplementary checker tools (e.g., lintian.debian.org)
 rely on.

Modifying the source stanza is debian/control is clearly a bad idea. But
for binary stanzas, debian/control is only a template from which
DEBIAN/control is generated. If tools get information about binary
packages using debian/control, then it's probably a bug (lintian is a
different case, because it analyzes the build process itself, and makes
assumptions about what the maintainer is doing. However, misleading
lintian into thinking something about your package is not a serious
issue).

Anyway, to avoid modifying debian/control directly, it's easy to add an
additional substvar (ubuntu:Browser?):
debian/control:
Depends: [...], iceweasel | ${ubuntu:Browser}

debian/rules:
 if dpkg-vendor --is ubuntu; then \
   echo ubuntu:Browser=abrowser  debian/feed2imap.substvars ;\
 fi
-- 
| Lucas Nussbaum
| lu...@lucas-nussbaum.net   http://www.lucas-nussbaum.net/ |
| jabber: lu...@nussbaum.fr GPG: 1024D/023B3F4F |


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Debian vs. Ubuntu source control file

2010-01-05 Thread Russ Allbery
Lucas Nussbaum lu...@lucas-nussbaum.net writes:

 Modifying the source stanza is debian/control is clearly a bad idea. But
 for binary stanzas, debian/control is only a template from which
 DEBIAN/control is generated. If tools get information about binary
 packages using debian/control, then it's probably a bug (lintian is a
 different case, because it analyzes the build process itself, and makes
 assumptions about what the maintainer is doing. However, misleading
 lintian into thinking something about your package is not a serious
 issue).

Lintian tries to keep its analysis of debian/control to only those things
that it can't figure out for one reason or another from the generated
*.dsc or debian/CONTROL files precisely because doing that parsing and
drawing inferences from it are tricky.

 Anyway, to avoid modifying debian/control directly, it's easy to add an
 additional substvar (ubuntu:Browser?):
 debian/control:
 Depends: [...], iceweasel | ${ubuntu:Browser}

 debian/rules:
  if dpkg-vendor --is ubuntu; then \
echo ubuntu:Browser=abrowser  debian/feed2imap.substvars ;\
  fi

Yeah, that's what I was thinking of suggesting.

I am personally not horribly fond of a package building differently on
Debian or Ubuntu via only this mechanism, though.  I think it violates a
very important invariant:  the same package with the same version number
will have the same contents.  It's normally possible to freely mix Debian
and Ubuntu packages provided that the dependencies are met, but if the
Debian and Ubuntu packages have different contents despite being
indistinguishable from the perspective of the package manager, that makes
it extremely difficult to do that.  Now, every system must be exclusively
Debian or Ubuntu or risk getting inconsistent packages that can't be
distinguished from each other.

Maybe there's some way that could also be addressed, such as by having the
source package build binary packages with a different version number
depending on what platform on which they're built?  Add ubuntu to the
end of the source version number to form the binary version number if
built on Ubuntu, for instance?

-- 
Russ Allbery (r...@debian.org)   http://www.eyrie.org/~eagle/


-- 
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org