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

Re: pdebuild-cross fixes in wook-shed branch



+++ Neil Williams [2010-09-25 13:34 +0100]:
> On Tue, 14 Sep 2010 02:28:12 +0100
> Wookey <wookey@wookware.org> wrote:
> 
> > I found some bugs in xapt yesterday and have fixed them. I've put them
> > in a 'wook-shed' branch of emdebian-crush as I've diverged a fair way
> > from trunk.
> 
> Problems:
> 
> 0: i18n support
> 
> localised package with the changes in the branch. Migrate the current
> PO files to check.

I admit that I have not the fainest understanding of how all this
works. Anything I touched was the blindest of blundering about and is
no doubt completely wrong. I just fiddled till it built and the right
files were in the right packages. 

It would be best if I didn't touch any of that, although I'm very
happy to have it all explained to me sometime.
 
> 1: use feature "switch"
> 
> I'd much rather use simple if() {} elsif () {} else {} layout. It's
> easier to debug within perl. It's no slower. Unlike C, perl doesn't
> take longer to compare strings than it does to compare identifiers.

erm OK. You want me to change that? As a perl person who knows what
they want you'll probably get what you want better if you do it
yourself. I thought switch was actually part of perl in more recent
versions so there is no real reason to avoid it?

> 2: please commit the change to remove lsb-release

Done. It's not as reliable as the 'kosher' way, but probably works
well enough for our purposes. A bug has been filed:
https://bugs.launchpad.net/ubuntu/+source/lsb/+bug/646795
which as it says there should really be a Debian bug, as Ubuntu people
don't care.

This has also committed the other non ubuntu-specific changes that
have gone into emdebian-crush 2.2.4ubuntu3 (patch pending for upload).
That's probably what will end up in Ubuntu even if it is a bit
half-arsed as time is running out. But if I get time to change, test
and upload some of the stuff in this mail then tha'll be good.

> 3: force-yes - NO. Use the actual no-auth support in apt, not the
> --force-yes sledgehammer. (See the multistrap code for code to turn
> off SecureApt.) This is a complete deal breaker - I will not upload code
> using --force-yes merely to disable SecureApt.

I had to do it that way because apt >=0.8 didn't work with no-auth. It
still doesn't, although the failure has changed from the original:
https://bugs.launchpad.net/ubuntu/+source/apt/+bug/625042
to
https://bugs.launchpad.net/ubuntu/+source/apt/+bug/646499

Until we work out (or someone tells us) how to do authenticated
downloads into a chroot we have to use --force-yes or neither
multistrap nor pdebuild-cross actually work at all. I realise this is
pretty shoddy but it seemed a lot better than nothing.

> 4: update ? Added to the usageversion output but no internal support
> and I don't think there should be such support either. Please remove.
> (This has also been translated, so use (cd po; intltool-update -r) and
> then commit the modified PO files.)

Erm, I don't remember doing that. OK.

> 5: A00pbuilder-cross-hook
> system ("apt-get -y install apt-cross xapt
> libparse-debianchangelog-perl realpath");
> 
> That line means that pdebuild-cross will need a strict dependency on
> xapt to get the i18n support working OR we create another NEW package
> (now is the time to do it) of xapt-common which depends on nothing.
> This would prevent pdebuild-cross indirectly depending on dpkg-cross,
> it could just depend on xapt-common (= ${source:Version})

I've got rid of that hook in latest checkin as it just installs
apt-cross and pile of pabout 15 perl packages in _eery single_ build,
which is a terrbile waste of time, especially wehen using xapt, not
apt-cross (which we all want to make the default at least, if not the
only option). You need have have whichever cross-dependency tool you
want to use installed in the chroot, either manually or via
pdebuild-cross-create. My current multistrap configs do exactly this
(install xapt, but not apt-cross). but xapt does need to be a separate
package in order that 

> 6: lintian errors in changelog.
> (dch -a will always sort those out.)
> 
> 7: xapt could do with bash_completion support (pdebuild-cross too,
> actually).

True. I have no idea how to write such a thing.

> 8: temporary files in SVN:
> doc/pdebuild-cross/man/man1/pdebuild-cross-create.1

I have failed to grok what is made from which in all that i18n stuff
so I was conservative about binning things that _might_ have been
important. As I say please either explain it all or just correct it. I
am thoroughly confused.

> I've committed the PO files and adjusted to put the xapt.mo files into
> the xapt package but I think xapt-common could be a better idea (just
> tweak the Makefile install rule). I've also committed the changelog
> fixes and dependency version in control.
> 
> > * xapt uses --force-yes so that it works in the presence of
> > unauthenticated repositories. Without this it installs nothing. This
> > was previously not set when cross-installing. I don't understand why,
> > but there may be an issue here. 
> 
> There is - use the normal apt support for disabling SecureApt, not
> --force*. -o Apt::Get::AllowUnauthenticated=true

I would if it worked.

> > * xapt prints the apt commands it is going to execute so one can
> > debug effectively. 
> 
> Probably needs to be behind a --verbose option as it is only for debug.

Agreed.

Wookey
-- 
Principal hats:  Linaro, Emdebian, Wookware, Balloonboard, ARM
http://wookware.org/


Reply to: