Re: Deprecating the wiki-based Packaging Guide

2012-12-18 Thread Daniel Holbach
Hello,

On 18.12.2012 01:52, Scott Kitterman wrote:
 UDD is not mature or reliable enough to be presented to new users as the 
 way to do packaging for Ubuntu.  I think the current guide is fatally flawed 
 as is.
 
 As soon as a branch is out of date, new users are lost.

while out-of-date branches and other bits and pieces around UDD are a
problem, can we please make them a separate discussion?

We can certainly have a discussion about our Development Guide and what
we recommend in which way. The reality and motivation of the current
discussion is that two guides are simply confusing and that the Wiki
documentation hasn't been touched or updated in any meaningful way in ages.

I'd suggest we agree on one guide and then figure out what we recommend,
rewrite or improve in there. This shouldn't be a blocker for obsoleting
one of the guides.

Have a great day,
 Daniel

-- 
Get involved in Ubuntu development! developer.ubuntu.com/packaging
And follow @ubuntudev on identi.ca/twitter.com/facebook.com/gplus.to

-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Deprecating the wiki-based Packaging Guide

2012-12-18 Thread Micah Gersten
On 12/18/2012 09:23 AM, Daniel Holbach wrote:
 Hello,

 On 18.12.2012 01:52, Scott Kitterman wrote:
 UDD is not mature or reliable enough to be presented to new users as the 
 way to do packaging for Ubuntu.  I think the current guide is fatally flawed 
 as is.

 As soon as a branch is out of date, new users are lost.
 while out-of-date branches and other bits and pieces around UDD are a
 problem, can we please make them a separate discussion?

 We can certainly have a discussion about our Development Guide and what
 we recommend in which way. The reality and motivation of the current
 discussion is that two guides are simply confusing and that the Wiki
 documentation hasn't been touched or updated in any meaningful way in ages.

 I'd suggest we agree on one guide and then figure out what we recommend,
 rewrite or improve in there. This shouldn't be a blocker for obsoleting
 one of the guides.

 Have a great day,
  Daniel

I think the point is that the new guide would have to include the
pull-lp-source/debdiff/attach to bug route as well before some of us are
comfortable deleting that information from the Wiki.  It's not so much
where it lives as that it's available as a fallback.
Thanks,
Micah

-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Deprecating the wiki-based Packaging Guide

2012-12-18 Thread Daniel Holbach
Hello,

On 18.12.2012 16:35, Micah Gersten wrote:
 I think the point is that the new guide would have to include the
 pull-lp-source/debdiff/attach to bug route as well before some of us are
 comfortable deleting that information from the Wiki.  It's not so much
 where it lives as that it's available as a fallback.

It does:
http://developer.ubuntu.com/packaging/html/traditional-packaging.html

Have a great day,
 Daniel

-- 
Get involved in Ubuntu development! developer.ubuntu.com/packaging
And follow @ubuntudev on identi.ca/twitter.com/facebook.com/gplus.to

-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Styles of Packaging

2012-12-18 Thread Mike Carifio
On 12/18/2012 01:16 AM, Emmet Hikory wrote:
 Mike Carifio wrote:
 On 12/17/2012 08:11 PM, Emmet Hikory wrote:
 Where this is understandably annoying for the application developer
 is that the recommendation is subject to change over time, as newer
 tools are developed and adopted: we tend to select toolsets that
 provide the most automation while leaving us the facility to make
 local exceptions to standard processing as appropriate for specific
 packages, which may appear to require an application developer to
 relearn from scratch every so many years. In practice, the lifecycle
 of a toolset is typically much longer than the period during which it
 is the most popular for use, and it is rare for toolsets to be
 entirely retired (although in some cases the maintainer of the
 packaging toolset may declare they no longer intend to support it,
 and it will only live on if someone else is willing to update it to
 support current policy). As a result, once one learns some means of
 packaging, one may usually continue with that method for a fairly
 long time without need to change unless one is excited about new
 features of a newer toolset.

Emmet, thanks for your quick tutorial. It was useful.

I would opine that many application developers are more than annoyed,
they're lost. So presenting them with all the various variants and
then asking them to select the right one based on criteria they neither
appreciate nor care about pretty well assures that many will silently
walk away.
I know I'm saying the same thing a different way, but it bears repeating.

As I understand it, policy based packaging just means declarative
and declarative means I can state *what* I want and the toolchain
will figure out the *how*. I don't find that true in practice, however.
I find that I state the what in debian/control, then figure out the how in
debian/rules and then figure out why I didn't say it all properly. So I
google and find a thicket of various approaches and workflows which only
serve
to confuse me more.

I see packaging as something we want the app developer to do. They have
the most knowledge about their application. Given a
reasonable bar, I think they will actually do it. After all, they're
written the application and they want to see it used.
If/when Ubuntu's popularity grows, then the incentive to package will
grow. But let us never forget that this is a tax
they must bear to integrate into Ubuntu. If the tax is too high, they
just won't do it. So we may appreciate a policy-based approach,
the richness of many toolchains and so on. But *they* don't, unless it
makes their lives easier. Note that I'm not saying that
packaging is easy. I'm just saying it can't be a research project for
each rookie developer who wants to take a shot at it.




-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Styles of Packaging

2012-12-18 Thread Emmet Hikory
Mike Carifio wrote:
 I would opine that many application developers are more than annoyed,
 they're lost. So presenting them with all the various variants and
 then asking them to select the right one based on criteria they neither
 appreciate nor care about pretty well assures that many will silently
 walk away.
 I know I'm saying the same thing a different way, but it bears repeating.

Oh, indeed.  There should be a simple default method presented for the
ease of this audience.  My fear is only that if we push too far, we lose the
ability to handle exceptions, or fall into painful bikeshedding about the
one true way when in practice the judgement should be on the end, rather
than the means.

 As I understand it, policy based packaging just means declarative
 and declarative means I can state *what* I want and the toolchain
 will figure out the *how*. I don't find that true in practice, however.
 I find that I state the what in debian/control, then figure out the how in
 debian/rules and then figure out why I didn't say it all properly. So I
 google and find a thicket of various approaches and workflows which only
 serve to confuse me more.

Your understanding matches mine.  For purposes of how, I currently
believe that the use of /usr/share/doc/debhelper/examples/rules.tiny should
be complete from the perspective of application developers: nearly anything
else may well indicate issues with the underlying build system.  That said,
from the perspective of distribution developers, I think it's important to
understand debian/rules as something supporting an API for package creation
and interaction to support uncooperative, abandoned, or strongly opinionated
upstream developers when others are handling the packaging.  Ensuring that we
can support both audiences from the same documentation is tricky, but it should
be our goal.

 I see packaging as something we want the app developer to do. They have
 the most knowledge about their application. Given a
 reasonable bar, I think they will actually do it. After all, they're
 written the application and they want to see it used.
 If/when Ubuntu's popularity grows, then the incentive to package will
 grow. But let us never forget that this is a tax
 they must bear to integrate into Ubuntu. If the tax is too high, they
 just won't do it. So we may appreciate a policy-based approach,
 the richness of many toolchains and so on. But *they* don't, unless it
 makes their lives easier. Note that I'm not saying that
 packaging is easy. I'm just saying it can't be a research project for
 each rookie developer who wants to take a shot at it.

There have been many discussions in the past about generating documentation
targeted to recommended procedures for build systems and release procedures for
application developers to support the ease of packaging.  Ideally, it should be
possible to generate distribution artifacts that support near automated 
packaging
for a variety of distributions (for debian-format distributions, this reduces to
a need to write the Description and review if multiple binary packages are 
needed
from a source artifact).  This goes well beyond packaging and much is unlikely 
to
be specific to an individual distribution, but is likely worth constructing, if
there are sufficient members of the class of application developers willing to
help define the nature of the issue (I'm not convinced it's something that
distribution developers can see well enough to write well).

Examples of things to address here might be handling init systems, writing
man pages, use of .desktop or .service files, ensuring build systems allow for
varied build and installation paths, documenting copyright and licensing
assertions, modular configuration file handling, and similar issues.

In my opinion, it would be best to have this also be a policy-based model,
rather than an implementation-based model, but I suspect a simple set of
recommendations can be constructed for common toolchains (e.g. If you're
writing a desktop GUI in ruby, here's what you want to do to make it easily
distributable.  If you wrote it in python, you likely want to use this entirely
different toolchain to do the same thing.), and that such documentation of best
practices for application developers would reduce impression of integration tax,
as the volume of effort to package something for a given target is significantly
reduced.

-- 
Emmet HIKORY

-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Styles of Packaging

2012-12-18 Thread Chow Loong Jin
On 19/12/2012 00:30, Barry Warsaw wrote:
 I'm positive I'm not typical, but I personally find Ubuntu development so much
 more pleasant than Debian development that I'll use the Debian branches on
 Launchpad for 90% of my on Debian work.  It's only at the last mile that
 I'll switch over to e.g. DPMT's or PAPT's svn repo, or file a patch on a BTS
^
That's the issue, you see. Anything's better than svn. I personally use the
git-buildpackage suite of things for development locally. For packages not
maintained in git, I typically use git import-dsc(s) on downloaded .dsc files
before starting work. Debian makes this even nicer by having git import-dscs
--debsnap which pulls everything from snapshots.debian.org.

I used to maintain some packages in DPMT/PAPT back before I became a DD, but it
was such a pain to use SVN that I just moved everything to collab-maint.

 issue (generated, of course with `bzr diff`).
 
 Heck, I'd even accept using git gulp! if Debian had anything as comfortable
 as UDD for me.

There was some talk on debian-devel about having everything on Debian imported
into Git repositories, which would probably allow for a somewhat UDD-like
workflow for Debian. Unfortunately, I think the usual debian-devel flames cut it
short.

-- 
Kind regards,
Loong Jin




signature.asc
Description: OpenPGP digital signature
-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Styles of Packaging (was: Deprecating the wiki-based Packaging Guide)

2012-12-18 Thread Steve Langasek
On Tue, Dec 18, 2012 at 03:16:13PM +0900, Emmet Hikory wrote:

 While it may appear that way at first glance, this is very much an
 intentional consequence of policy-based packaging, which Ubuntu inherits
 from Debian.  By having packaging judged against policy, rather than
 against some arbitrary implementation, we are free to continuously
 innovate in our use of tools to improve our packaging.  Innovations that
 lead to interesting consequences frequently become policy, such that all
 other packaging toolchains in the archive are expected to support the
 expected results (or be retired).

 However, as this has been an ongoing process of competitive
 improvement of the several toolchains over more than 20 years, and as many
 packages have not been updated in some time (this may be by design: e.g. 
 mpi-specs, which likely won't be updated for many more years to come), and
 many how to package documents are floating around the internet, this
 means that every possible experimental means of packaging is documented
 somewhere (and may show up in your favorite search engine), and many of
 them are used for packages extant in the current archive.

 There is definitely a set of tools that are currently the most popular
 in the Debian archive, and these integrate well with a set of tools being
 developed under the Ubuntu Distributed Development moniker, which
 combination may well likely be that which is recommended by the Ubuntu
 Packaging Guide under development: as such, this recommendation [0] is
 what ought be followed by the class of developers for whom packaging is a
 means to an end (as they are often focused on a specific piece of
 software).  For folk who might focus on packaging as an end, preferring
 the role of distribution developer to that of application developer, there
 is a need for a greater understanding of the underlying policy and the
 massive variety of tools by which this policy may be implemented.

People who are aiming to contribute to Ubuntu as a distribution absolutely
need to master a different set of skills than those who just want to package
up their own software.  In terms of developer documentation, I think the
important goals are that:

 - We make sure everyone has a handle on the second category before they
   tackle the first category.
 - We avoid annoying or distracting developers who only care about the
   second category with information that's only relevant in the first
   category.
 - We ensure that developers who are looking to participate in Ubuntu
   development can find the information they need from the same entry point.
 - We ensure that the recommendations that we're giving developers for
   creating packages for their software aren't at odds with the consensus
   among experienced Ubuntu developers about how a package should look.

I think the current Ubuntu Packaging Guide is doing a reasonably good job of
walking this line.  Where it isn't, I'm sure bug reports are welcome.

 Where this is understandably annoying for the application developer is
 that the recommendation is subject to change over time, as newer tools are
 developed and adopted: we tend to select toolsets that provide the most
 automation while leaving us the facility to make local exceptions to
 standard processing as appropriate for specific packages, which may appear
 to require an application developer to relearn from scratch every so many
 years.  In practice, the lifecycle of a toolset is typically much longer
 than the period during which it is the most popular for use, and it is
 rare for toolsets to be entirely retired (although in some cases the
 maintainer of the packaging toolset may declare they no longer intend to
 support it, and it will only live on if someone else is willing to update
 it to support current policy).  As a result, once one learns some means of
 packaging, one may usually continue with that method for a fairly long
 time without need to change unless one is excited about new features of a
 newer toolset.

Where package tooling has changed recently, it has mostly been about
incremental improvements rather than revolutionary changes.  At the
packaging level, http://people.debian.org/~cjwatson/dhstats.png shows that
dh(1) has had dominant mindshare for over 3 years (shown by the constant
growth in usage), and if it doesn't quite yet represent the way the majority
of packages in the archive are done, this has more to do with the inertia of
existing packages than with any lack of consensus.  Prior to the advent of
dh(1), there *was* a distinct lack of consensus, with developers divided
roughly equally between cdbs and debhelper camps.  So I do think it's
important that any documentation that's teaching people how to package focus
on dh, and explicitly relegate non-dh packaging to the category of here's
what to do if you need to work on an existing package that doesn't follow
best practices.

UDD poses a different set of problems.  I'm not sure how 

Re: Deprecating the wiki-based Packaging Guide

2012-12-18 Thread Scott Kitterman
Mike Carifio cari...@usys.com wrote:

On 12/18/2012 05:48 PM, Scott Kitterman wrote:
 Barry Warsaw ba...@ubuntu.com wrote:

 On Dec 17, 2012, at 07:52 PM, Scott Kitterman wrote:

 UDD is not mature or reliable enough to be presented to new users
as
 the
 way to do packaging for Ubuntu.  I think the current guide is
fatally
 flawed
 as is.
 Yes, it's frustrating when you need to work on a package that has
 import
 failures, and yes, I wish we had more cycles to devote to fixing
this,
 but the
 majority of packages import just fine, and UDD (IMHO and YMMV) has
 enormous
 benefits which outweigh those frustrations.

 Of course, I'm not saying that traditional packaging shouldn't also
be
 described.

 -Barry
 It seems obvious to me that the standard approach ought to be the
reliable one.  Making the UDD based approach 'normal' ensures people
need to know two ways to do it and for introductory material, I think
that is clearly suboptimal.

 Also, I think the benefits primarily accrue to people that use UDD a
lot.  The benefits to people that don't use it quite regularly are
minimal.  This reinforces the idea it's not the right default to
present.

 Finally, it's a more complex toolset that raises the barrier to entry
for newcomers.  I don't think that's what we want.

 Scott K

I don't mean to be argumentative, but none of that seems obvious to me.
If UDD is a better workflow when it works, then fix it until it works.
Then describe it so it makes sense. Then use it consistently to improve
the ecosystem. That will make it the default. Right now, we seem to
have
to work with debian source packages so we can feed the build system but
work with a version control system to upstream changes in a
productive
way. That seems suboptimal too.

I'm the first person to admit that I probably don't get it yet or see
the obstacles to UDD utopia. But not using a
version control tool for a source code control problem doesn't make
sense either.

Downloading a Debian source package or even a source package and a Debian only 
bzr branch (as the Kubuntu team does) is much faster than downloading full 
source bzr branches.  Unless someone works with a specific package routinely, 
full source branches slow the process up significantly.

I find the interfaces to the UDD tools very confusing. Here's but one example 
(yes, I filed a bug, no I don't recall the number):

The basic dpkg-buildpackage command to build a source package that will include 
the upstream tarball in the upload is:

dpkg-buildpackage -S -sa

For the non-UDD dpkg-buildpackage wrapper debuild, one attaches 
dpkg-buildpackage options on the end and they are passed to dpkg-buildpackage:

debuild -S -sa

bzr-builddeb has this interface:

bzr-builddeb -S -- -sa

Go figure that one out (yes, I understand it and why, but I think it's a user 
hostile interface design).

The biggest benefit of UDD, IMO is that each upload is imported into a VCS so 
we have per upload history.  That happens no matter how the package is built or 
uploaded.  All the additional complexity of committing to the VCS and getting 
that merged has very minimal benefits for the average developer.

The people you see advocating that UDD has great advantage for them are ~all 
people who do this full time and can live in the UDD environment.  They aren't 
the target audience for the packaging guide.

I think the lack of reliability argument is sufficient for now to make the case 
that UDD should not be the 'normal' method taught to new people.  Even if that 
weren't the case though, I would still think the added leaving curve coupled 
with creating a barrier to collaboration with our primary upstream would mean 
it's still not a good idea.

Scott K


-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Styles of Packaging (was: Deprecating the wiki-based Packaging Guide)

2012-12-18 Thread Steve Langasek
On Tue, Dec 18, 2012 at 02:08:04AM -0500, Scott Kitterman wrote:
 1.  While there are sponsors that prefer branches over debdiffs/source
 packages uploaded somewhere, I don't know of any that will only sponsor
 branches.  The reverse is not true.  There are developers that don't do
 UDD sponsoring.  By pursuing this path, new packagers limit the potential
 candidates to sponsor packages.

If there is a consensus that new packagers should be using UDD, we shouldn't
let that consensus be held hostage by dissenters that refuse to use UDD.

But as per my previous message, I agree that UDD reliability here is a major
problem, and no one is well served by developer documentation describing a
non-existent utopia instead of the way things actually are.

-- 
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
-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Styles of Packaging (was: Deprecating the wiki-based Packaging Guide)

2012-12-18 Thread Scott Kitterman
Steve Langasek steve.langa...@ubuntu.com wrote:

On Tue, Dec 18, 2012 at 02:08:04AM -0500, Scott Kitterman wrote:
 1.  While there are sponsors that prefer branches over
debdiffs/source
 packages uploaded somewhere, I don't know of any that will only
sponsor
 branches.  The reverse is not true.  There are developers that don't
do
 UDD sponsoring.  By pursuing this path, new packagers limit the
potential
 candidates to sponsor packages.

If there is a consensus that new packagers should be using UDD, we
shouldn't
let that consensus be held hostage by dissenters that refuse to use
UDD.

But as per my previous message, I agree that UDD reliability here is a
major
problem, and no one is well served by developer documentation
describing a
non-existent utopia instead of the way things actually are.

I don't think such a consensus, outside of the small group of people that 
invested time in the packaging guide, exists.  The Kubuntu team does not use it 
and last I checked Ubuntu Desktop didn't either.  There are people the use UDD, 
of course, but also large numbers that don't.

Scott K


-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Deprecating the wiki-based Packaging Guide

2012-12-18 Thread Steve Langasek
On Tue, Dec 18, 2012 at 09:09:39PM -0500, Scott Kitterman wrote:

 I find the interfaces to the UDD tools very confusing. Here's but one
 example (yes, I filed a bug, no I don't recall the number):
 
 The basic dpkg-buildpackage command to build a source package that will
 include the upstream tarball in the upload is:
 
 dpkg-buildpackage -S -sa
 
 For the non-UDD dpkg-buildpackage wrapper debuild, one attaches
 dpkg-buildpackage options on the end and they are passed to
 dpkg-buildpackage:
 
 debuild -S -sa
 
 bzr-builddeb has this interface:
 
 bzr-builddeb -S -- -sa

'bzr bd -- -S -sa' works equally well, and could be the usage recommended in
the documentation for consistency.

 The biggest benefit of UDD, IMO is that each upload is imported into a VCS
 so we have per upload history.  That happens no matter how the package is
 built or uploaded.  All the additional complexity of committing to the VCS
 and getting that merged has very minimal benefits for the average
 developer.

One concrete example where UDD shines and the non-UDD workflow is inadequate
is for sponsoring of package merges.  If someone hands me a branch that
properly merges the new Debian version into the Ubuntu branch, I can review
that with the standard bzr diff tools and ascertain that the sponsoree has
done the merge correctly.  If someone hands me a debdiff for a Debian merge,
that's useless; I effectively have to do the merge myself as part of the
review, and no time is saved.

-- 
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
-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Styles of Packaging (was: Deprecating the wiki-based Packaging Guide)

2012-12-18 Thread Steve Langasek
On Tue, Dec 18, 2012 at 09:19:31PM -0500, Scott Kitterman wrote:
 Steve Langasek steve.langa...@ubuntu.com wrote:

 On Tue, Dec 18, 2012 at 02:08:04AM -0500, Scott Kitterman wrote:

  1.  While there are sponsors that prefer branches over debdiffs/source
  packages uploaded somewhere, I don't know of any that will only sponsor
  branches.  The reverse is not true.  There are developers that don't do
  UDD sponsoring.  By pursuing this path, new packagers limit the
  potential candidates to sponsor packages.

 If there is a consensus that new packagers should be using UDD, we
 shouldn't let that consensus be held hostage by dissenters that refuse to
 use UDD.
 
 But as per my previous message, I agree that UDD reliability here is a
 major problem, and no one is well served by developer documentation
 describing a non-existent utopia instead of the way things actually are.

 I don't think such a consensus, outside of the small group of people that
 invested time in the packaging guide, exists.

There may or may not be such a consensus.  But the consensus is what
matters, and the above argument is therefore irrelevant to whether UDD
should be the recommended workflow.

-- 
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
-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Deprecating the wiki-based Packaging Guide

2012-12-18 Thread Scott Kitterman
Steve Langasek steve.langa...@ubuntu.com wrote:

On Tue, Dec 18, 2012 at 09:09:39PM -0500, Scott Kitterman wrote:

 I find the interfaces to the UDD tools very confusing. Here's but one
 example (yes, I filed a bug, no I don't recall the number):
 
 The basic dpkg-buildpackage command to build a source package that
will
 include the upstream tarball in the upload is:
 
 dpkg-buildpackage -S -sa
 
 For the non-UDD dpkg-buildpackage wrapper debuild, one attaches
 dpkg-buildpackage options on the end and they are passed to
 dpkg-buildpackage:
 
 debuild -S -sa
 
 bzr-builddeb has this interface:
 
 bzr-builddeb -S -- -sa

'bzr bd -- -S -sa' works equally well, and could be the usage
recommended in
the documentation for consistency.

 The biggest benefit of UDD, IMO is that each upload is imported into
a VCS
 so we have per upload history.  That happens no matter how the
package is
 built or uploaded.  All the additional complexity of committing to
the VCS
 and getting that merged has very minimal benefits for the average
 developer.

One concrete example where UDD shines and the non-UDD workflow is
inadequate
is for sponsoring of package merges.  If someone hands me a branch that
properly merges the new Debian version into the Ubuntu branch, I can
review
that with the standard bzr diff tools and ascertain that the sponsoree
has
done the merge correctly.  If someone hands me a debdiff for a Debian
merge,
that's useless; I effectively have to do the merge myself as part of
the
review, and no time is saved.

It only works better if you are using UDD.  I agree that if your primary 
workflow is UDD based, then UDD branches are better.  If I get a branch it's as 
useless for me as a debdiff is for you.  When asked to sponsor things that have 
a branch, I generally decline or ask for a debdiff.

 Scott K


-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Deprecating the wiki-based Packaging Guide

2012-12-18 Thread Steve Langasek
On Tue, Dec 18, 2012 at 09:33:18PM -0500, Scott Kitterman wrote:

 One concrete example where UDD shines and the non-UDD workflow is
 inadequate is for sponsoring of package merges.  If someone hands me a
 branch that properly merges the new Debian version into the Ubuntu
 branch, I can review that with the standard bzr diff tools and ascertain
 that the sponsoree has done the merge correctly.  If someone hands me a
 debdiff for a Debian merge, that's useless; I effectively have to do the
 merge myself as part of the review, and no time is saved.

I should clarify here that I meant a merge of a new upstream version
packaged in Debian.  For packaging-only merges, debdiffs work fine.

 It only works better if you are using UDD.  I agree that if your primary
 workflow is UDD based, then UDD branches are better.  If I get a branch
 it's as useless for me as a debdiff is for you.  When asked to sponsor
 things that have a branch, I generally decline or ask for a debdiff.

Your decision to boycott UDD doesn't make a UDD branch useless.  A debdiff
for a merge of a new upstream package version actually *is* useless and is a
waste of the sponsoree's time, for the stated reason that the review of
such a debdiff involves re-doing the merge myself.

-- 
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
-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Deprecating the wiki-based Packaging Guide

2012-12-18 Thread Scott Kitterman
Steve Langasek steve.langa...@ubuntu.com wrote:

On Tue, Dec 18, 2012 at 09:33:18PM -0500, Scott Kitterman wrote:

 One concrete example where UDD shines and the non-UDD workflow is
 inadequate is for sponsoring of package merges.  If someone hands me
a
 branch that properly merges the new Debian version into the Ubuntu
 branch, I can review that with the standard bzr diff tools and
ascertain
 that the sponsoree has done the merge correctly.  If someone hands
me a
 debdiff for a Debian merge, that's useless; I effectively have to do
the
 merge myself as part of the review, and no time is saved.

I should clarify here that I meant a merge of a new upstream version
packaged in Debian.  For packaging-only merges, debdiffs work fine.

 It only works better if you are using UDD.  I agree that if your
primary
 workflow is UDD based, then UDD branches are better.  If I get a
branch
 it's as useless for me as a debdiff is for you.  When asked to
sponsor
 things that have a branch, I generally decline or ask for a debdiff.

Your decision to boycott UDD doesn't make a UDD branch useless.  A
debdiff
for a merge of a new upstream package version actually *is* useless and
is a
waste of the sponsoree's time, for the stated reason that the review
of
such a debdiff involves re-doing the merge myself.

Right.  What I really want (and what our docs asked for at one point) is a 
packaging diff (debian dir) and a pointer to the upstream tarball.  I said the 
branch would be useless to me, because I'd have to extract out the packaging 
diff and redo the merge to make sense of it.

BTW, I didn't come to my perspective on UDD without trying it.I gave it a real 
go, but it just didn't work for me.

Scott K



-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


UDD vs. non-UDD for merging (was: Deprecating the wiki-based Packaging Guide)

2012-12-18 Thread Emmet Hikory
Steve Langasek wrote:
 On Tue, Dec 18, 2012 at 09:33:18PM -0500, Scott Kitterman wrote:
  It only works better if you are using UDD.  I agree that if your primary
  workflow is UDD based, then UDD branches are better.  If I get a branch
  it's as useless for me as a debdiff is for you.  When asked to sponsor
  things that have a branch, I generally decline or ask for a debdiff.
 
 Your decision to boycott UDD doesn't make a UDD branch useless.  A debdiff
 for a merge of a new upstream package version actually *is* useless and is a
 waste of the sponsoree's time, for the stated reason that the review of
 such a debdiff involves re-doing the merge myself.

This exchange leaves me even further confused about how UDD works, but
reviewing merges for new upstream sources has always been a bit fussy, and
while interdiffs of diff.gz worked reasonably for format:1.0 packages, there
is no useful equivalent for format:3.0 packages.

 When I'm attempting to review someone else's merge, I generally want
them to send me enough information that I can produce their candidate
artifacts locally for upload, and generally want to do so in a way that
reduces the opportunity for them to submit files that don't match history
(either previously in Ubuntu or in Debian).  My review tends to consist of
looking at the prior Ubuntu-only changes, looking at the upstream changes,
looking at any changes beyond the new upstream version from Debian, and
ensuring that the resulting artifacts contain the best possible blend of
all of these (possibly combined with fixes for other outstanding bugs
found in Ubuntu).

With a non-UDD workflow, this involves getting the outstanding Ubuntu
diff (patches.ubuntu.com or merges.ubuntu.com have them if one doesn't want
to download source artifacts and run locally), getting the Debian diff
(also available from merges.ubuntu.com), and some artifact diff (which
could be that presented for sponsoring, although I tend to generate local
artifacts and regenerate the diff).  If I want to separate distribution
changes and upstream changes, filterdiff can help, or I can run diffs only
against contents of debian.tar.gz (or other selected artifacts).

With a UDD workflow, this involves getting the candidate branch,
reviewing the history to confirm it inherits from preexisting UDD branches,
and then using bzr to generate the same set of diffs, for the same level of
manual consideration.  There are no shortcut pre-generated diffs I can
download, but the bzr branch contains everything so there is no need to
pull from multiple sources: depending on one's local environment this
may be either good or bad in terms of total bandwidth and processing
requirements (and one can convince launchpad to generate the diffs, if
one is sufficiently motivated and lacks local processing facilities).

In either case, once I have a local artifact, unless I'm dealing with
a package that is handled by some team that doesn't like it, I can just
upload.  When I'm dealing with packages where teams want special things
done, regardless of which solution I choose above, I need to go fiddle
with their special VCS arrangements or get complained at later.

Now, it may be that in one of my summaries above, I've mischaracterised
one of the workflows, and if so I'd very much like to read an expansion of
both procedures by someone who has a very strong preference for one or another
workflow based on what they consider to be the user experience.  On the other
hand, if I've not mischaracterised it, how can *either* the branch or the
necessary diff to generate candidate artifacts be useless?  While I don't
personally see any benefit of one over the other except in terms of access
speed to review materials (which depends on sufficient local factors that
it isn't likely to be generally applicable), I don't understand how I would
have to redo the merge in either case, how I would be able to perform
the necessary level of scrutiny of the candidate without reviewing the same
set of diffs (ubuntu-to-common-ancestor, debian-to-common-ancestor,
candidate-to-debian, new-upstream-to-old-upstream), nor why I would need
to perform any file editing or reconcillation as part of this review.

Is it not the case that if one prefers UDD, one can just pull the
current Debian import from launchpad, apply the diff proposed by the
candidate, run debcommit, and end up with a branch with all the same
characteristics as if a branch had been submitted for merging?  Similarly,
is it not the case that if someone submits a branch, one can ask launchpad
to generate the diff, and use that as the merge artifact in a non-UDD
workflow?

-- 
Emmet HIKORY

-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: UDD vs. non-UDD for merging (was: Deprecating the wiki-based Packaging Guide)

2012-12-18 Thread Scott Kitterman
On Wednesday, December 19, 2012 01:02:21 PM Emmet Hikory wrote:
 Steve Langasek wrote:
  On Tue, Dec 18, 2012 at 09:33:18PM -0500, Scott Kitterman wrote:
   It only works better if you are using UDD.  I agree that if your primary
   workflow is UDD based, then UDD branches are better.  If I get a branch
   it's as useless for me as a debdiff is for you.  When asked to sponsor
   things that have a branch, I generally decline or ask for a debdiff.
  
  Your decision to boycott UDD doesn't make a UDD branch useless.  A
  debdiff for a merge of a new upstream package version actually *is*
  useless and is a waste of the sponsoree's time, for the stated reason
  that the review of such a debdiff involves re-doing the merge myself.
 
 This exchange leaves me even further confused about how UDD works, but
 reviewing merges for new upstream sources has always been a bit fussy, and
 while interdiffs of diff.gz worked reasonably for format:1.0 packages, there
 is no useful equivalent for format:3.0 packages.
 
  When I'm attempting to review someone else's merge, I generally want
 them to send me enough information that I can produce their candidate
 artifacts locally for upload, and generally want to do so in a way that
 reduces the opportunity for them to submit files that don't match history
 (either previously in Ubuntu or in Debian).  My review tends to consist of
 looking at the prior Ubuntu-only changes, looking at the upstream changes,
 looking at any changes beyond the new upstream version from Debian, and
 ensuring that the resulting artifacts contain the best possible blend of
 all of these (possibly combined with fixes for other outstanding bugs
 found in Ubuntu).
 
 With a non-UDD workflow, this involves getting the outstanding Ubuntu
 diff (patches.ubuntu.com or merges.ubuntu.com have them if one doesn't want
 to download source artifacts and run locally), getting the Debian diff
 (also available from merges.ubuntu.com), and some artifact diff (which
 could be that presented for sponsoring, although I tend to generate local
 artifacts and regenerate the diff).  If I want to separate distribution
 changes and upstream changes, filterdiff can help, or I can run diffs only
 against contents of debian.tar.gz (or other selected artifacts).
 
 With a UDD workflow, this involves getting the candidate branch,
 reviewing the history to confirm it inherits from preexisting UDD branches,
 and then using bzr to generate the same set of diffs, for the same level of
 manual consideration.  There are no shortcut pre-generated diffs I can
 download, but the bzr branch contains everything so there is no need to
 pull from multiple sources: depending on one's local environment this
 may be either good or bad in terms of total bandwidth and processing
 requirements (and one can convince launchpad to generate the diffs, if
 one is sufficiently motivated and lacks local processing facilities).
 
 In either case, once I have a local artifact, unless I'm dealing with
 a package that is handled by some team that doesn't like it, I can just
 upload.  When I'm dealing with packages where teams want special things
 done, regardless of which solution I choose above, I need to go fiddle
 with their special VCS arrangements or get complained at later.
 
 Now, it may be that in one of my summaries above, I've mischaracterised
 one of the workflows, and if so I'd very much like to read an expansion of
 both procedures by someone who has a very strong preference for one or
 another workflow based on what they consider to be the user experience.  On
 the other hand, if I've not mischaracterised it, how can *either* the
 branch or the necessary diff to generate candidate artifacts be useless? 
 While I don't personally see any benefit of one over the other except in
 terms of access speed to review materials (which depends on sufficient
 local factors that it isn't likely to be generally applicable), I don't
 understand how I would have to redo the merge in either case, how I would
 be able to perform the necessary level of scrutiny of the candidate without
 reviewing the same set of diffs (ubuntu-to-common-ancestor,
 debian-to-common-ancestor, candidate-to-debian,
 new-upstream-to-old-upstream), nor why I would need to perform any file
 editing or reconcillation as part of this review.
 
 Is it not the case that if one prefers UDD, one can just pull the
 current Debian import from launchpad, apply the diff proposed by the
 candidate, run debcommit, and end up with a branch with all the same
 characteristics as if a branch had been submitted for merging?  Similarly,
 is it not the case that if someone submits a branch, one can ask launchpad
 to generate the diff, and use that as the merge artifact in a non-UDD
 workflow?

With respect to the last point, similar to your description of your work flow, 
I want to see the packaging diff including the Debian - Debian packaging diff, 
the Ubuntu -- Ubuntu 

Re: UDD vs. non-UDD for merging (was: Deprecating the wiki-based Packaging Guide)

2012-12-18 Thread Emmet Hikory
Scott Kitterman wrote:
 On Wednesday, December 19, 2012 01:02:21 PM Emmet Hikory wrote:
  Is it not the case that if one prefers UDD, one can just pull the
  current Debian import from launchpad, apply the diff proposed by the
  candidate, run debcommit, and end up with a branch with all the same
  characteristics as if a branch had been submitted for merging?  Similarly,
  is it not the case that if someone submits a branch, one can ask launchpad
  to generate the diff, and use that as the merge artifact in a non-UDD
  workflow?
 
 With respect to the last point, similar to your description of your work 
 flow, 
 I want to see the packaging diff including the Debian - Debian packaging 
 diff, 
 the Ubuntu -- Ubuntu packaging diff and the Debian old/new -- Ubuntu old/new 
 packaging diffs to ensure no Ubuntu changes have been inadvertently lost, the 
 remaining changes are both needed and documents, and the changes from Debian 
 are correctly applied.  i end up needing then the old Debian and Ubuntu 
 packages as well as the new Debian package and the proposed merged.  There's 
 probably some reasonable way for me to extract all that from some relevant 
 branches somewhere, but to me it's far easier to use grab-merge and a debdiff.

Do the diffs launchpad produces from UDD merge branches not work as an
input diff with grab-merge?  I've never tried for this specific type of merge,
but in cases where it was just a patch being applied to an existing Ubuntu
package, I had success pulling diffs from LP to apply.

-- 
Emmet HIKORY

-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: UDD vs. non-UDD for merging (was: Deprecating the wiki-based Packaging Guide)

2012-12-18 Thread Scott Kitterman
On Wednesday, December 19, 2012 02:02:58 PM Emmet Hikory wrote:
 Scott Kitterman wrote:
  On Wednesday, December 19, 2012 01:02:21 PM Emmet Hikory wrote:
   Is it not the case that if one prefers UDD, one can just pull the
   
   current Debian import from launchpad, apply the diff proposed by the
   candidate, run debcommit, and end up with a branch with all the same
   characteristics as if a branch had been submitted for merging? 
   Similarly,
   is it not the case that if someone submits a branch, one can ask
   launchpad
   to generate the diff, and use that as the merge artifact in a non-UDD
   workflow?
  
  With respect to the last point, similar to your description of your work
  flow, I want to see the packaging diff including the Debian - Debian
  packaging diff, the Ubuntu -- Ubuntu packaging diff and the Debian
  old/new -- Ubuntu old/new packaging diffs to ensure no Ubuntu changes
  have been inadvertently lost, the remaining changes are both needed and
  documents, and the changes from Debian are correctly applied.  i end up
  needing then the old Debian and Ubuntu packages as well as the new Debian
  package and the proposed merged.  There's probably some reasonable way
  for me to extract all that from some relevant branches somewhere, but to
  me it's far easier to use grab-merge and a debdiff.
 Do the diffs launchpad produces from UDD merge branches not work as an
 input diff with grab-merge?  I've never tried for this specific type of
 merge, but in cases where it was just a patch being applied to an existing
 Ubuntu package, I had success pulling diffs from LP to apply.

It's been some time since I tried this, so i don't recall.  I don't see how it 
can beat grab-merge $PACKAGE and an appropriate packaging diff in a bug for 
simplicity.  When I use grab-merge there's everything I need sitting there is 
a directory ready for me to use.  No hunting for diffs or branches needed.

Scott K

-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Deprecating the wiki-based Packaging Guide

2012-12-18 Thread Martin Pitt
Steve Langasek [2012-12-18 18:40 -0800]:
 A debdiff for a merge of a new upstream package version actually
 *is* useless and is a waste of the sponsoree's time, for the stated
 reason that the review of such a debdiff involves re-doing the
 merge myself.

A debdiff between the current Debian and the merged Ubuntu package can
be compared directly to the current Ubuntu delta on MoM, and simply
calling debdiff against the current version in Ubuntun gives you the
U-U debdiff. I find neither operation significantly harder than the
two bzr diff commands, and bandwith-wise they are roughly comparable,
too.

So I disagree that they are useless. What I find useless rather are
trivial merges where Ubuntu's delta is just one line in
debian/control. Doing the merge yourself vs. sponsoring one take the
same time. (They still might be an opportunity to learn for new
contributors).  But if it's a complex merge and the merge actually
went through the effort of cleaning up and upstreaming patches etc., I
appreciate them a lot, and the D-U debdiff is the distillation of
that work.

Martin

-- 
Martin Pitt| http://www.piware.de
Ubuntu Developer (www.ubuntu.com)  | Debian Developer  (www.debian.org)


signature.asc
Description: Digital signature
-- 
ubuntu-devel mailing list
ubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel


Re: Misc problems with quantal

2012-12-18 Thread Tom H
On Mon, Dec 17, 2012 at 7:37 PM, Dale Amon a...@vnl.com wrote:

 Second, I am getting hit with a blinking screen even in
 virtual terminals on a quantal amd64 server build. Terminal
 is an ADI ProVista attached to a KVM.

 Eventually the screen seems to go to sleep and I cannot
 get it to ever come back.

 I have modified /etc/default/grub to get

 # Uncomment to disable graphical terminal (grub-pc only)
 GRUB_TERMINAL=console

 which I assumed would shut off any graphical silliness,
 but it seems to have had no affect.

Try GRUB_GFXPAYLOAD_LINUX=text.

-- 
Ubuntu-devel-discuss mailing list
Ubuntu-devel-discuss@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel-discuss


Re: Misc problems with quantal

2012-12-18 Thread Dale Amon
On Tue, Dec 18, 2012 at 12:53:46AM +, Dmitrijs Ledkovs wrote:
 On 18 December 2012 00:37, Dale Amon a...@vnl.com wrote:
  A couple broken items in quantal...
 
  First off, I also have been bit by the dselect
  problem discussed in
 
  https://bugs.launchpad.net/ubuntu/+source/dpkg/+bug/1066847
 
  I always use dselect unless I am only installing one or two
  packages. I just do not particularly like aptitude, etc.
 
 
 As noted in the bug report dselect does not work with multi-arch.
 
 Either write patches to dselect to make it support multi-arch, or
 disable multi-arch, or use a different package management tool.
 Each of these proposals has advantages  drawbacks. The first one is
 universally best, but requires significant technical work. The latter
 two, are compromises one way or another.

How and where do I disable multi-arch?

-- 
Ubuntu-devel-discuss mailing list
Ubuntu-devel-discuss@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel-discuss


Re: Misc problems with quantal

2012-12-18 Thread Dmitrijs Ledkovs
On 18 December 2012 20:18, Dale Amon a...@vnl.com wrote:
 On Tue, Dec 18, 2012 at 12:53:46AM +, Dmitrijs Ledkovs wrote:
 On 18 December 2012 00:37, Dale Amon a...@vnl.com wrote:
  A couple broken items in quantal...
 
  First off, I also have been bit by the dselect
  problem discussed in
 
  https://bugs.launchpad.net/ubuntu/+source/dpkg/+bug/1066847
 
  I always use dselect unless I am only installing one or two
  packages. I just do not particularly like aptitude, etc.
 

 As noted in the bug report dselect does not work with multi-arch.

 Either write patches to dselect to make it support multi-arch, or
 disable multi-arch, or use a different package management tool.
 Each of these proposals has advantages  drawbacks. The first one is
 universally best, but requires significant technical work. The latter
 two, are compromises one way or another.

 How and where do I disable multi-arch?

Depending on which release you are on, use either first or second answer:

http://askubuntu.com/questions/66875/how-to-disable-multiarch-support

Please use google first next time.

Regards,

Dmitrijs.

-- 
Ubuntu-devel-discuss mailing list
Ubuntu-devel-discuss@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel-discuss


Re: Misc problems with quantal

2012-12-18 Thread Dale Amon
On Tue, Dec 18, 2012 at 09:05:22PM +, Dmitrijs Ledkovs wrote:
 On 18 December 2012 20:18, Dale Amon a...@vnl.com wrote:
  How and where do I disable multi-arch?
 
 Depending on which release you are on, use either first or second answer:
 
 http://askubuntu.com/questions/66875/how-to-disable-multiarch-support

The file named in the first method did not exist; however the
second method worked nicely. 

# dpkg -l | grep i386
# dpkg --remove-architecture i386

There were no i386 files to remove.

Thank you for the link.

-- 
Ubuntu-devel-discuss mailing list
Ubuntu-devel-discuss@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel-discuss